From f27c5390b2fcff06b1e2199a4f051d543670aa03 Mon Sep 17 00:00:00 2001 From: Nick Clifton Date: Fri, 4 Dec 2015 15:07:10 +0000 Subject: [PATCH] Fix GAS testsuite failures for COFF/PE based ARM targets. PR gas/19276 gas * config/tc-arm.h (SUB_SEGMENT_ALIGN): Do not define for COFF/PE targets. testsuite * gas/arm/align64.d: Skip for COFF/PE targets. * gas/arm/bundle-lock.d: Adjust for COFF/PE targets. --- gas/ChangeLog | 6 ++++++ gas/config/tc-arm.h | 5 ++++- gas/testsuite/ChangeLog | 6 ++++++ gas/testsuite/gas/arm/align64.d | 1 + gas/testsuite/gas/arm/bundle-lock.d | 2 -- 5 files changed, 17 insertions(+), 3 deletions(-) diff --git a/gas/ChangeLog b/gas/ChangeLog index 25e2bc9f71..a676b7116c 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,9 @@ +2015-12-04 Nick Clifton + + PR gas/19276 + * config/tc-arm.h (SUB_SEGMENT_ALIGN): Do not define for COFF/PE + targets. + 2015-12-04 Claudiu Zissulescu * config/tc-arc.c (arc_option): Sets all internal gas options when diff --git a/gas/config/tc-arm.h b/gas/config/tc-arm.h index 42f2d90d4e..a38b8e1a39 100644 --- a/gas/config/tc-arm.h +++ b/gas/config/tc-arm.h @@ -249,9 +249,12 @@ arm_min (int am_p1, int am_p2) #define TC_FRAG_INIT(fragp) arm_init_frag (fragp, max_chars) #define TC_ALIGN_ZERO_IS_DEFAULT 1 #define HANDLE_ALIGN(fragp) arm_handle_align (fragp) -#define SUB_SEGMENT_ALIGN(SEG, FRCHAIN) \ +/* PR gas/19276: COFF/PE segment alignment is already handled in coff_frob_section(). */ +#ifndef TE_PE +#define SUB_SEGMENT_ALIGN(SEG, FRCHAIN) \ ((!(FRCHAIN)->frch_next && subseg_text_p (SEG)) \ ? arm_min (2, get_recorded_alignment (SEG)) : 0) +#endif #define md_do_align(N, FILL, LEN, MAX, LABEL) \ if (FILL == NULL && (N) != 0 && ! need_pass_2 && subseg_text_p (now_seg)) \ diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog index eb2b4d74f6..c514be7bb5 100644 --- a/gas/testsuite/ChangeLog +++ b/gas/testsuite/ChangeLog @@ -1,3 +1,9 @@ +2015-12-04 Nick Clifton + + PR gas/19276 + * gas/arm/align64.d: Skip for COFF/PE targets. + * gas/arm/bundle-lock.d: Adjust for COFF/PE targets. + 2015-12-04 Claudiu Zissulescu * gas/arc/bic.d: Update test. diff --git a/gas/testsuite/gas/arm/align64.d b/gas/testsuite/gas/arm/align64.d index ee67c820b8..8c99ab7ff2 100644 --- a/gas/testsuite/gas/arm/align64.d +++ b/gas/testsuite/gas/arm/align64.d @@ -1,5 +1,6 @@ # name: 64 Bytes alignment test # objdump: -dr --prefix-addresses --show-raw-insn +#skip: *-*-*coff *-*-pe *-*-wince .*: +file format .*arm.* diff --git a/gas/testsuite/gas/arm/bundle-lock.d b/gas/testsuite/gas/arm/bundle-lock.d index d335833ae6..31e3be2411 100644 --- a/gas/testsuite/gas/arm/bundle-lock.d +++ b/gas/testsuite/gas/arm/bundle-lock.d @@ -243,5 +243,3 @@ Disassembly of section \.text: #... *710:\s+(be00\s+bkpt|1840\s+adds)\s+.+ #... - *720:\s+e1200070\s+bkpt\s+.+ -#... -- 2.34.1