From ef75f0145e5e0255be469edad543db0bacf338af Mon Sep 17 00:00:00 2001 From: Thiemo Seufer Date: Fri, 5 May 2006 16:38:09 +0000 Subject: [PATCH] * gas/mips/noreorder.s, gas/mips/noreorder.d: New test for reorder/noreorder corner case. * gas/mips/mips.exp: Run new test. ------------------------------------------------------------------- --- gas/testsuite/ChangeLog | 6 ++++++ gas/testsuite/gas/mips/mips.exp | 2 ++ gas/testsuite/gas/mips/noreorder.d | 23 +++++++++++++++++++++++ gas/testsuite/gas/mips/noreorder.s | 25 +++++++++++++++++++++++++ 4 files changed, 56 insertions(+) create mode 100644 gas/testsuite/gas/mips/noreorder.d create mode 100644 gas/testsuite/gas/mips/noreorder.s diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog index dbed5162e8f..1cbea61ed4b 100644 --- a/gas/testsuite/ChangeLog +++ b/gas/testsuite/ChangeLog @@ -1,3 +1,9 @@ +2006-05-05 Nigel Stephens + + * gas/mips/noreorder.s, gas/mips/noreorder.d: New test for + reorder/noreorder corner case. + * gas/mips/mips.exp: Run new test. + 2006-05-04 Kazu Hirata * gas/arm/armv1.d (error-output): New. diff --git a/gas/testsuite/gas/mips/mips.exp b/gas/testsuite/gas/mips/mips.exp index 382ff95f5c7..6c2a9f46847 100644 --- a/gas/testsuite/gas/mips/mips.exp +++ b/gas/testsuite/gas/mips/mips.exp @@ -781,4 +781,6 @@ if { [istarget mips*-*-vxworks*] } { } run_dump_test "vxworks1" run_dump_test "vxworks1-xgot" + + run_dump_test "noreorder" } diff --git a/gas/testsuite/gas/mips/noreorder.d b/gas/testsuite/gas/mips/noreorder.d new file mode 100644 index 00000000000..0866ca01831 --- /dev/null +++ b/gas/testsuite/gas/mips/noreorder.d @@ -0,0 +1,23 @@ +#objdump: -dr --disassemble-zeroes +#as: -march=mips2 -mabi=32 +#name: noreorder test + +.*: +file format .*mips.* + +Disassembly of section .text: + +00000000 : + 0: 00000000 nop + 4: 00000000 nop + 8: 0c000000 jal 0 + 8: R_MIPS_26 cpu_cache_init + c: 00000000 nop + 10: 8fbf0010 lw ra,16\(sp\) + 14: 08000000 j 0 + 14: R_MIPS_26 tlb_init + 18: 27bd0018 addiu sp,sp,24 + 1c: 00000000 nop + 20: 00000000 nop + 24: 1000fff6 b 0 + 28: 00000000 nop + 2c: 00000000 nop diff --git a/gas/testsuite/gas/mips/noreorder.s b/gas/testsuite/gas/mips/noreorder.s new file mode 100644 index 00000000000..71e92efacf2 --- /dev/null +++ b/gas/testsuite/gas/mips/noreorder.s @@ -0,0 +1,25 @@ + .text + .globl per_cpu_trap_init + .ent per_cpu_trap_init + .type per_cpu_trap_init, @function +per_cpu_trap_init: +$L807: + nop + nop + # Removing this .align make the code assemble correctly + .align 3 + jal cpu_cache_init + lw $31,16($sp) + .set noreorder + j tlb_init + addiu $sp,$sp,24 + # Replacing this .word with a nop causes the code to be assembled corrrectly + .word 0 + # Removing this nop causes the code to be compiled correctly + nop + .set reorder + + b $L807 + .end per_cpu_trap_init + + .p2align 4 -- 2.30.2