From 659f032c0a57467e19a1d81aba7cf6df36ae689a Mon Sep 17 00:00:00 2001 From: Thomas Preud'homme Date: Tue, 17 May 2016 16:35:12 +0100 Subject: [PATCH] Make ARMv8-M GAS tests pass on non ELF targets 2016-05-17 Thomas Preud'homme gas/ * testsuite/gas/arm/archv8m-cmse-msr-base.d: Force Thumb when disassembling and stop skipping targets. * testsuite/gas/arm/archv8m-cmse-msr-main.d: Likewise. * testsuite/gas/arm/archv8m-main-dsp-4.d: Likewise. * testsuite/gas/arm/archv8m-base.d: Also allow nops after the last instruction for targets that have stronger alignment requirement. * testsuite/gas/arm/archv8m-cmse-base.d: Likewise. * testsuite/gas/arm/archv8m-cmse-main-1.d: Likewise. * testsuite/gas/arm/archv8m-cmse-main-2.d: Likewise. * testsuite/gas/arm/archv8m-main-dsp-1.d: Likewise. * testsuite/gas/arm/archv8m-main-dsp-2.d: Likewise. * testsuite/gas/arm/archv8m-main-dsp-3.d: Likewise. * testsuite/gas/arm/archv8m-main.d: Likewise. * testsuite/gas/arm/archv8m.s: Add label. * testsuite/gas/arm/archv8m-cmse.s: Likewise. * testsuite/gas/arm/archv8m-cmse-msr.s: Likewise. * testsuite/gas/arm/archv8m-cmse-main.s: Likewise. --- gas/ChangeLog | 20 +++++++++++++++++++ gas/testsuite/gas/arm/archv8m-base.d | 4 ++-- gas/testsuite/gas/arm/archv8m-cmse-base.d | 4 ++-- gas/testsuite/gas/arm/archv8m-cmse-main-1.d | 4 ++-- gas/testsuite/gas/arm/archv8m-cmse-main-2.d | 4 ++-- gas/testsuite/gas/arm/archv8m-cmse-main.s | 1 + gas/testsuite/gas/arm/archv8m-cmse-msr-base.d | 3 +-- gas/testsuite/gas/arm/archv8m-cmse-msr-main.d | 3 +-- gas/testsuite/gas/arm/archv8m-cmse-msr.s | 1 + gas/testsuite/gas/arm/archv8m-cmse.s | 1 + gas/testsuite/gas/arm/archv8m-main-dsp-1.d | 4 ++-- gas/testsuite/gas/arm/archv8m-main-dsp-2.d | 4 ++-- gas/testsuite/gas/arm/archv8m-main-dsp-3.d | 4 ++-- gas/testsuite/gas/arm/archv8m-main-dsp-4.d | 3 +-- gas/testsuite/gas/arm/archv8m-main.d | 4 ++-- gas/testsuite/gas/arm/archv8m.s | 1 + 16 files changed, 43 insertions(+), 22 deletions(-) diff --git a/gas/ChangeLog b/gas/ChangeLog index eea0f8bfa2a..745c13c492f 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,23 @@ +2016-05-17 Thomas Preud'homme + + * testsuite/gas/arm/archv8m-cmse-msr-base.d: Force Thumb when + disassembling and stop skipping targets. + * testsuite/gas/arm/archv8m-cmse-msr-main.d: Likewise. + * testsuite/gas/arm/archv8m-main-dsp-4.d: Likewise. + * testsuite/gas/arm/archv8m-base.d: Also allow nops after the last + instruction for targets that have stronger alignment requirement. + * testsuite/gas/arm/archv8m-cmse-base.d: Likewise. + * testsuite/gas/arm/archv8m-cmse-main-1.d: Likewise. + * testsuite/gas/arm/archv8m-cmse-main-2.d: Likewise. + * testsuite/gas/arm/archv8m-main-dsp-1.d: Likewise. + * testsuite/gas/arm/archv8m-main-dsp-2.d: Likewise. + * testsuite/gas/arm/archv8m-main-dsp-3.d: Likewise. + * testsuite/gas/arm/archv8m-main.d: Likewise. + * testsuite/gas/arm/archv8m.s: Add label. + * testsuite/gas/arm/archv8m-cmse.s: Likewise. + * testsuite/gas/arm/archv8m-cmse-msr.s: Likewise. + * testsuite/gas/arm/archv8m-cmse-main.s: Likewise. + 2016-05-16 Trevor Saunders * config/tc-m32r.c (mach_table): Make static and const. diff --git a/gas/testsuite/gas/arm/archv8m-base.d b/gas/testsuite/gas/arm/archv8m-base.d index 60df240008b..6a2ee87f3b6 100644 --- a/gas/testsuite/gas/arm/archv8m-base.d +++ b/gas/testsuite/gas/arm/archv8m-base.d @@ -1,8 +1,7 @@ #name: ARM V8-M baseline instructions #source: archv8m.s #as: -march=armv8-m.base -#objdump: -dr --prefix-addresses --show-raw-insn -#skip: *-*-pe *-wince-* *-*-coff +#objdump: -dr --prefix-addresses --show-raw-insn -M force-thumb .*: +file format .*arm.* @@ -46,3 +45,4 @@ Disassembly of section .text: 0+.* <[^>]*> e8c2 1fe0 stlex r0, r1, \[r2\] 0+.* <[^>]*> e8c2 1fc0 stlexb r0, r1, \[r2\] 0+.* <[^>]*> e8c2 1fd0 stlexh r0, r1, \[r2\] +#... diff --git a/gas/testsuite/gas/arm/archv8m-cmse-base.d b/gas/testsuite/gas/arm/archv8m-cmse-base.d index ba6ff3ac9b9..23576376a23 100644 --- a/gas/testsuite/gas/arm/archv8m-cmse-base.d +++ b/gas/testsuite/gas/arm/archv8m-cmse-base.d @@ -1,8 +1,7 @@ #name: ARMv8-M Baseline Security Extensions instructions #source: archv8m-cmse.s #as: -march=armv8-m.base -#objdump: -dr --prefix-addresses --show-raw-insn -#skip: *-*-*coff *-*-pe *-*-wince *-*-*aout* *-*-netbsd *-*-riscix* +#objdump: -dr --prefix-addresses --show-raw-insn -M force-thumb .*: +file format .*arm.* @@ -16,3 +15,4 @@ Disassembly of section .text: 0+.* <[^>]*> e849 f880 tta r8, r9 0+.* <[^>]*> e841 f0c0 ttat r0, r1 0+.* <[^>]*> e849 f8c0 ttat r8, r9 +#... diff --git a/gas/testsuite/gas/arm/archv8m-cmse-main-1.d b/gas/testsuite/gas/arm/archv8m-cmse-main-1.d index f4937df3186..edb39822279 100644 --- a/gas/testsuite/gas/arm/archv8m-cmse-main-1.d +++ b/gas/testsuite/gas/arm/archv8m-cmse-main-1.d @@ -1,8 +1,7 @@ #name: ARMv8-M Mainline Security Extensions instructions (1) #source: archv8m-cmse.s #as: -march=armv8-m.main -#objdump: -dr --prefix-addresses --show-raw-insn -#skip: *-*-*coff *-*-pe *-*-wince *-*-*aout* *-*-netbsd *-*-riscix* +#objdump: -dr --prefix-addresses --show-raw-insn -M force-thumb .*: +file format .*arm.* @@ -16,3 +15,4 @@ Disassembly of section .text: 0+.* <[^>]*> e849 f880 tta r8, r9 0+.* <[^>]*> e841 f0c0 ttat r0, r1 0+.* <[^>]*> e849 f8c0 ttat r8, r9 +#... diff --git a/gas/testsuite/gas/arm/archv8m-cmse-main-2.d b/gas/testsuite/gas/arm/archv8m-cmse-main-2.d index 0aa67e44220..bf37ecc6e4f 100644 --- a/gas/testsuite/gas/arm/archv8m-cmse-main-2.d +++ b/gas/testsuite/gas/arm/archv8m-cmse-main-2.d @@ -1,11 +1,11 @@ #name: ARMv8-M Mainline Security Extensions instructions (2) #source: archv8m-cmse-main.s #as: -march=armv8-m.main -#objdump: -dr --prefix-addresses --show-raw-insn -#skip: *-*-*coff *-*-pe *-*-wince *-*-*aout* *-*-netbsd *-*-riscix* +#objdump: -dr --prefix-addresses --show-raw-insn -M force-thumb .*: +file format .*arm.* Disassembly of section .text: 0+.* <[^>]*> ec31 0a00 vlldm r1 0+.* <[^>]*> ec22 0a00 vlstm r2 +#... diff --git a/gas/testsuite/gas/arm/archv8m-cmse-main.s b/gas/testsuite/gas/arm/archv8m-cmse-main.s index 069cad6b22a..871414fd19f 100644 --- a/gas/testsuite/gas/arm/archv8m-cmse-main.s +++ b/gas/testsuite/gas/arm/archv8m-cmse-main.s @@ -1,5 +1,6 @@ .thumb .syntax unified +T: vlldm r1 vlstm r2 diff --git a/gas/testsuite/gas/arm/archv8m-cmse-msr-base.d b/gas/testsuite/gas/arm/archv8m-cmse-msr-base.d index ded24ef19db..4bbb82d79b2 100644 --- a/gas/testsuite/gas/arm/archv8m-cmse-msr-base.d +++ b/gas/testsuite/gas/arm/archv8m-cmse-msr-base.d @@ -1,8 +1,7 @@ #name: ARMv8-M Baseline Security Extensions MSR/MRS instructions #source: archv8m-cmse-msr.s #as: -march=armv8-m.base -#objdump: -dr --prefix-addresses --show-raw-insn -#skip: *-*-*coff *-*-pe *-*-wince *-*-*aout* *-*-netbsd *-*-riscix* +#objdump: -dr --prefix-addresses --show-raw-insn -M force-thumb .*: +file format .*arm.* diff --git a/gas/testsuite/gas/arm/archv8m-cmse-msr-main.d b/gas/testsuite/gas/arm/archv8m-cmse-msr-main.d index df531509bd4..30a3361c374 100644 --- a/gas/testsuite/gas/arm/archv8m-cmse-msr-main.d +++ b/gas/testsuite/gas/arm/archv8m-cmse-msr-main.d @@ -1,8 +1,7 @@ #name: ARMv8-M Mainline Security Extensions MSR/MRS instructions #source: archv8m-cmse-msr.s #as: -march=armv8-m.main -#objdump: -dr --prefix-addresses --show-raw-insn -#skip: *-*-*coff *-*-pe *-*-wince *-*-*aout* *-*-netbsd *-*-riscix* +#objdump: -dr --prefix-addresses --show-raw-insn -M force-thumb .*: +file format .*arm.* diff --git a/gas/testsuite/gas/arm/archv8m-cmse-msr.s b/gas/testsuite/gas/arm/archv8m-cmse-msr.s index 4a617610139..897be1a9256 100644 --- a/gas/testsuite/gas/arm/archv8m-cmse-msr.s +++ b/gas/testsuite/gas/arm/archv8m-cmse-msr.s @@ -1,3 +1,4 @@ +T: msr MSP, r0 msr MSP_S, r0 msr MSP_NS, r0 diff --git a/gas/testsuite/gas/arm/archv8m-cmse.s b/gas/testsuite/gas/arm/archv8m-cmse.s index 520550c8709..cac82c5fcbf 100644 --- a/gas/testsuite/gas/arm/archv8m-cmse.s +++ b/gas/testsuite/gas/arm/archv8m-cmse.s @@ -1,6 +1,7 @@ .thumb .syntax unified +T: sg blxns r4 blxns r9 diff --git a/gas/testsuite/gas/arm/archv8m-main-dsp-1.d b/gas/testsuite/gas/arm/archv8m-main-dsp-1.d index 17714b8ac3c..c8f9d7b81bf 100644 --- a/gas/testsuite/gas/arm/archv8m-main-dsp-1.d +++ b/gas/testsuite/gas/arm/archv8m-main-dsp-1.d @@ -1,8 +1,7 @@ #name: ARMv8-M Mainline with DSP instructions (base) #source: archv8m.s #as: -march=armv8-m.main+dsp -#objdump: -dr --prefix-addresses --show-raw-insn -#skip: *-*-*coff *-*-pe *-*-wince *-*-*aout* *-*-netbsd *-*-riscix* +#objdump: -dr --prefix-addresses --show-raw-insn -M force-thumb .*: +file format .*arm.* @@ -46,3 +45,4 @@ Disassembly of section .text: 0+.* <[^>]*> e8c2 1fe0 stlex r0, r1, \[r2\] 0+.* <[^>]*> e8c2 1fc0 stlexb r0, r1, \[r2\] 0+.* <[^>]*> e8c2 1fd0 stlexh r0, r1, \[r2\] +#... diff --git a/gas/testsuite/gas/arm/archv8m-main-dsp-2.d b/gas/testsuite/gas/arm/archv8m-main-dsp-2.d index 7730a032bcc..59b860ae3cb 100644 --- a/gas/testsuite/gas/arm/archv8m-main-dsp-2.d +++ b/gas/testsuite/gas/arm/archv8m-main-dsp-2.d @@ -1,8 +1,7 @@ #name: ARMv8-M Mainline with DSP instructions (Security Extensions 1) #source: archv8m-cmse.s #as: -march=armv8-m.main+dsp -#objdump: -dr --prefix-addresses --show-raw-insn -#skip: *-*-*coff *-*-pe *-*-wince *-*-*aout* *-*-netbsd *-*-riscix* +#objdump: -dr --prefix-addresses --show-raw-insn -M force-thumb .*: +file format .*arm.* @@ -16,3 +15,4 @@ Disassembly of section .text: 0+.* <[^>]*> e849 f880 tta r8, r9 0+.* <[^>]*> e841 f0c0 ttat r0, r1 0+.* <[^>]*> e849 f8c0 ttat r8, r9 +#... diff --git a/gas/testsuite/gas/arm/archv8m-main-dsp-3.d b/gas/testsuite/gas/arm/archv8m-main-dsp-3.d index fdd9c780252..5ac1ddfdf79 100644 --- a/gas/testsuite/gas/arm/archv8m-main-dsp-3.d +++ b/gas/testsuite/gas/arm/archv8m-main-dsp-3.d @@ -1,11 +1,11 @@ #name: ARMv8-M Mainline with DSP instructions (Security Extensions 2) #source: archv8m-cmse-main.s #as: -march=armv8-m.main+dsp -#objdump: -dr --prefix-addresses --show-raw-insn -#skip: *-*-*coff *-*-pe *-*-wince *-*-*aout* *-*-netbsd *-*-riscix* +#objdump: -dr --prefix-addresses --show-raw-insn -M force-thumb .*: +file format .*arm.* Disassembly of section .text: 0+.* <[^>]*> ec31 0a00 vlldm r1 0+.* <[^>]*> ec22 0a00 vlstm r2 +#... diff --git a/gas/testsuite/gas/arm/archv8m-main-dsp-4.d b/gas/testsuite/gas/arm/archv8m-main-dsp-4.d index 1bb19ea8f35..248f75e00af 100644 --- a/gas/testsuite/gas/arm/archv8m-main-dsp-4.d +++ b/gas/testsuite/gas/arm/archv8m-main-dsp-4.d @@ -1,8 +1,7 @@ #name: ARMv8-M Mainline with DSP instructions (Security Extensions 3) #source: archv8m-cmse-msr.s #as: -march=armv8-m.main+dsp -#objdump: -dr --prefix-addresses --show-raw-insn -#skip: *-*-*coff *-*-pe *-*-wince *-*-*aout* *-*-netbsd *-*-riscix* +#objdump: -dr --prefix-addresses --show-raw-insn -M force-thumb .*: +file format .*arm.* diff --git a/gas/testsuite/gas/arm/archv8m-main.d b/gas/testsuite/gas/arm/archv8m-main.d index 055721a0339..a0c40e99c89 100644 --- a/gas/testsuite/gas/arm/archv8m-main.d +++ b/gas/testsuite/gas/arm/archv8m-main.d @@ -1,8 +1,7 @@ #name: ARM V8-M mainline instructions #source: archv8m.s #as: -march=armv8-m.main -#objdump: -dr --prefix-addresses --show-raw-insn -#skip: *-*-pe *-wince-* *-*-coff +#objdump: -dr --prefix-addresses --show-raw-insn -M force-thumb .*: +file format .*arm.* @@ -46,3 +45,4 @@ Disassembly of section .text: 0+.* <[^>]*> e8c2 1fe0 stlex r0, r1, \[r2\] 0+.* <[^>]*> e8c2 1fc0 stlexb r0, r1, \[r2\] 0+.* <[^>]*> e8c2 1fd0 stlexh r0, r1, \[r2\] +#... diff --git a/gas/testsuite/gas/arm/archv8m.s b/gas/testsuite/gas/arm/archv8m.s index 8aca8bae50c..5f8aafed487 100644 --- a/gas/testsuite/gas/arm/archv8m.s +++ b/gas/testsuite/gas/arm/archv8m.s @@ -1,6 +1,7 @@ .thumb .syntax unified +T: blx r4 blx r9 bx r4 -- 2.30.2