From: Nick Clifton Date: Thu, 22 Aug 2002 16:10:05 +0000 (+0000) Subject: Fix arm-aout failures X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=f598fd5e7ab8a762661a5af2ad89eb459c6a4586;p=binutils-gdb.git Fix arm-aout failures --- diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog index 5de9b6f0bdf..3c9a7c541bb 100644 --- a/gas/testsuite/ChangeLog +++ b/gas/testsuite/ChangeLog @@ -1,3 +1,20 @@ +2002-08-22 Nick Clifton + + * gas/arm/arch5tej.s: Add nops to align output. + * gas/arm/arch5tej.d: Expect nops. + * gas/arm/arm7t.s: Add nops, remove thumb instructions. + * gas/arm/arm7t.d: Expect nops. + * gas/arm/armv1.s: Add nops. + * gas/arm/armv1.d: Expect nops. + * gas/arm/fpa-mem.s: Add nops. + * gas/arm/fpa-mem.d: Expext nops. + * gas/arm/vfp1.s: Add nops. + * gas/arm/vfp1.d: Expect nops. + * gas/arm/xscale.s: Add nops. + * gas/arm/xscale.d: Expect nops. + * gas/arm/arm.exp: Do not run thumb tests for arm-aout + toolchain. + 2002-08-22 Alan Modra * gas/ppc/ppc.exp: Don't run e500 test on xcoff targets. diff --git a/gas/testsuite/gas/arm/arch5tej.d b/gas/testsuite/gas/arm/arch5tej.d index a4bcddeab14..9afdc6e12a1 100644 --- a/gas/testsuite/gas/arm/arch5tej.d +++ b/gas/testsuite/gas/arm/arch5tej.d @@ -13,3 +13,5 @@ Disassembly of section .text: 0+0c <[^>]*> 012fff20 ? bxjeq r0 0+10 <[^>]*> 412fff20 ? bxjmi r0 0+14 <[^>]*> 512fff27 ? bxjpl r7 +0+18 <[^>]*> e1a00000 ? nop[ ]+\(mov r0,r0\) +0+1c <[^>]*> e1a00000 ? nop[ ]+\(mov r0,r0\) diff --git a/gas/testsuite/gas/arm/arch5tej.s b/gas/testsuite/gas/arm/arch5tej.s index f4735ff3d3c..d4f95228a4e 100644 --- a/gas/testsuite/gas/arm/arch5tej.s +++ b/gas/testsuite/gas/arm/arch5tej.s @@ -7,3 +7,8 @@ label: bxjeq r0 bxjmi r0 bxjpl r7 + + # Add two nop instructions to ensure that the output + # is aligned as will automatically be done for arm-aout. + nop + nop diff --git a/gas/testsuite/gas/arm/arm.exp b/gas/testsuite/gas/arm/arm.exp index 3d0647871da..2bff85ffecc 100644 --- a/gas/testsuite/gas/arm/arm.exp +++ b/gas/testsuite/gas/arm/arm.exp @@ -31,7 +31,10 @@ if {[istarget *arm*-*-*] || [istarget "xscale-*-*"]} then { run_dump_test "arm7t" - gas_test "thumb.s" "-mcpu=arm7t" $stdoptlist "Thumb instructions" + if {! [istarget arm*-*-aout]} then { + # The arm-aout port does not support Thumb mode. + gas_test "thumb.s" "-mcpu=arm7t" $stdoptlist "Thumb instructions" + } gas_test "arch4t.s" "-march=armv4t" $stdoptlist "Arm architecture 4t instructions" diff --git a/gas/testsuite/gas/arm/arm7t.d b/gas/testsuite/gas/arm/arm7t.d index 857a9b57cf1..148e047765e 100644 --- a/gas/testsuite/gas/arm/arm7t.d +++ b/gas/testsuite/gas/arm/arm7t.d @@ -66,5 +66,5 @@ Disassembly of section .text: [ ]*dc:.*fred 0+e0 <[^>]*> 0000c0de ? .* 0+e4 <[^>]*> 0000dead ? .* -0+e8 <[^>]*> 3800 sub r0, #0 -0+ea <[^>]*> 3000 add r0, #0 +0+e8 <[^>]*> e1a00000 ? nop[ ]+\(mov r0,r0\) +0+ec <[^>]*> e1a00000 ? nop[ ]+\(mov r0,r0\) diff --git a/gas/testsuite/gas/arm/arm7t.s b/gas/testsuite/gas/arm/arm7t.s index f3251117d18..580c3f11a8e 100644 --- a/gas/testsuite/gas/arm/arm7t.s +++ b/gas/testsuite/gas/arm/arm7t.s @@ -74,9 +74,8 @@ misc: .word fred .ltorg - .thumb - .global thumb_tests - .thumb_func -thumb_tests: - sub r0, #0 - add r0, #0 + + # Add two nop instructions to ensure that the + # output is 32-byte aligned as required for arm-aout. + nop + nop diff --git a/gas/testsuite/gas/arm/armv1.d b/gas/testsuite/gas/arm/armv1.d index 443264079e8..f3b2c6b6c93 100644 --- a/gas/testsuite/gas/arm/armv1.d +++ b/gas/testsuite/gas/arm/armv1.d @@ -68,3 +68,6 @@ Disassembly of section .text: 0+e8 <[^>]*> e8100001 ? ldmda r0, {r0} 0+ec <[^>]*> e9100001 ? ldmdb r0, {r0} 0+f0 <[^>]*> e9900001 ? ldmib r0, {r0} +0+f4 <[^>]*> e1a00000 ? nop[ ]+\(mov r0,r0\) +0+f8 <[^>]*> e1a00000 ? nop[ ]+\(mov r0,r0\) +0+fc <[^>]*> e1a00000 ? nop[ ]+\(mov r0,r0\) diff --git a/gas/testsuite/gas/arm/armv1.s b/gas/testsuite/gas/arm/armv1.s index b4b7b5af3b7..bd83639dbbc 100644 --- a/gas/testsuite/gas/arm/armv1.s +++ b/gas/testsuite/gas/arm/armv1.s @@ -68,3 +68,9 @@ entry: ldmfa r0, {r0} ldmea r0, {r0} ldmed r0, {r0} + + # Add three nop instructions to ensure that the + # output is 32-byte aligned as required for arm-aout. + nop + nop + nop diff --git a/gas/testsuite/gas/arm/fpa-mem.d b/gas/testsuite/gas/arm/fpa-mem.d index 12ee5857084..b0f9e0df3db 100644 --- a/gas/testsuite/gas/arm/fpa-mem.d +++ b/gas/testsuite/gas/arm/fpa-mem.d @@ -30,3 +30,5 @@ Disassembly of section .text: 0+4c <[^>]*> ed800200 ? sfm f0, 4, \[r0\] 0+50 <[^>]*> ed00020c ? sfm f0, 4, \[r0, -#48\] 0+54 <[^>]*> ed800200 ? sfm f0, 4, \[r0\] +0+58 <[^>]*> e1a00000 ? nop[ ]+\(mov r0,r0\) +0+5c <[^>]*> e1a00000 ? nop[ ]+\(mov r0,r0\) diff --git a/gas/testsuite/gas/arm/fpa-mem.s b/gas/testsuite/gas/arm/fpa-mem.s index eb66fdb917d..dfc9b6564c4 100644 --- a/gas/testsuite/gas/arm/fpa-mem.s +++ b/gas/testsuite/gas/arm/fpa-mem.s @@ -24,3 +24,8 @@ F: sfm f0, 4, [r0] sfmfd f0, 4, [r0] sfmea f0, 4, [r0] + + # Add two nop instructions to ensure that the + # output is 32-byte aligned as required for arm-aout. + nop + nop diff --git a/gas/testsuite/gas/arm/vfp1.d b/gas/testsuite/gas/arm/vfp1.d index 0df8c54c9b2..ed4f3838ea6 100644 --- a/gas/testsuite/gas/arm/vfp1.d +++ b/gas/testsuite/gas/arm/vfp1.d @@ -188,3 +188,6 @@ Disassembly of section .text: 0+2c8 <[^>]*> 0e1f7b10 fmrdleq r7, d15 0+2cc <[^>]*> 0e21fb10 fmdhreq d1, pc 0+2d0 <[^>]*> 0e0f1b10 fmdlreq d15, r1 +0+2d4 <[^>]*> e1a00000 ? nop[ ]+\(mov r0,r0\) +0+2d8 <[^>]*> e1a00000 ? nop[ ]+\(mov r0,r0\) +0+2dc <[^>]*> e1a00000 ? nop[ ]+\(mov r0,r0\) diff --git a/gas/testsuite/gas/arm/vfp1.s b/gas/testsuite/gas/arm/vfp1.s index 9853baeede6..1a80877c622 100644 --- a/gas/testsuite/gas/arm/vfp1.s +++ b/gas/testsuite/gas/arm/vfp1.s @@ -276,3 +276,9 @@ F: fmdhreq d1, r15 fmdlreq d15, r1 + + # Add three nop instructions to ensure that the + # output is 32-byte aligned as required for arm-aout. + nop + nop + nop diff --git a/gas/testsuite/gas/arm/xscale.d b/gas/testsuite/gas/arm/xscale.d index bd4e06af09d..433c6c5b11a 100644 --- a/gas/testsuite/gas/arm/xscale.d +++ b/gas/testsuite/gas/arm/xscale.d @@ -33,3 +33,5 @@ Disassembly of section .text: 0+5c <[^>]*> e5910000 ldr r0, \[r1\] 0+60 <[^>]*> e5832000 str r2, \[r3\] 0+64 <[^>]*> e321f011 msr CPSR_c, #17 ; 0x11 +0+68 <[^>]*> e1a00000 ? nop[ ]+\(mov r0,r0\) +0+6c <[^>]*> e1a00000 ? nop[ ]+\(mov r0,r0\) diff --git a/gas/testsuite/gas/arm/xscale.s b/gas/testsuite/gas/arm/xscale.s index d78d9a74240..7b58c344cef 100644 --- a/gas/testsuite/gas/arm/xscale.s +++ b/gas/testsuite/gas/arm/xscale.s @@ -35,3 +35,8 @@ foo: str r2, [r3] msr cpsr_ctl, #0x11 + + # Add two nop instructions to ensure that the + # output is 32-byte aligned as required for arm-aout. + nop + nop