reorder/noreorder corner case.
* gas/mips/mips.exp: Run new test.
-------------------------------------------------------------------
+2006-05-05 Nigel Stephens <nigel@mips.com>
+
+ * 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 <kazu@codesourcery.com>
* gas/arm/armv1.d (error-output): New.
}
run_dump_test "vxworks1"
run_dump_test "vxworks1-xgot"
+
+ run_dump_test "noreorder"
}
--- /dev/null
+#objdump: -dr --disassemble-zeroes
+#as: -march=mips2 -mabi=32
+#name: noreorder test
+
+.*: +file format .*mips.*
+
+Disassembly of section .text:
+
+00000000 <per_cpu_trap_init>:
+ 0: 00000000 nop
+ 4: 00000000 nop
+ 8: 0c000000 jal 0 <per_cpu_trap_init>
+ 8: R_MIPS_26 cpu_cache_init
+ c: 00000000 nop
+ 10: 8fbf0010 lw ra,16\(sp\)
+ 14: 08000000 j 0 <per_cpu_trap_init>
+ 14: R_MIPS_26 tlb_init
+ 18: 27bd0018 addiu sp,sp,24
+ 1c: 00000000 nop
+ 20: 00000000 nop
+ 24: 1000fff6 b 0 <per_cpu_trap_init>
+ 28: 00000000 nop
+ 2c: 00000000 nop
--- /dev/null
+ .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