This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
[PATCH] MIPS/GAS/test: New cases for the HI16/LO16 fixes
- From: "Maciej W. Rozycki" <macro at codesourcery dot com>
- To: <binutils at sourceware dot org>
- Cc: Richard Sandiford <rdsandiford at googlemail dot com>
- Date: Fri, 21 Sep 2012 22:52:20 +0100
- Subject: [PATCH] MIPS/GAS/test: New cases for the HI16/LO16 fixes
Hi,
This is the final change, adding several test cases built around the same
source, that covers the HI16/LO16 fixes proposed today across all the
ABIs, ISAs and both endiannesses; the latter to make sure the relocatable
field is handled correctly by the handcrafted code in md_apply_fix.
As a side effect (some backreferences) it covers the ISA bit problem as
well -- this is actually how I tripped over it in the first place.
OK to apply?
2012-09-21 Maciej W. Rozycki <macro@codesourcery.com>
gas/testsuite/
* gas/mips/hilo-diff-eb.d: New test.
* gas/mips/hilo-diff-eb-n32.d: New test.
* gas/mips/hilo-diff-eb-n64.d: New test.
* gas/mips/hilo-diff-el.d: New test.
* gas/mips/hilo-diff-el-n32.d: New test.
* gas/mips/hilo-diff-el-n64.d: New test.
* gas/mips/mips16@hilo-diff-eb.d: New test.
* gas/mips/mips16@hilo-diff-eb-n32.d: New test.
* gas/mips/mips16@hilo-diff-eb-n64.d: New test.
* gas/mips/mips16@hilo-diff-el.d: New test.
* gas/mips/mips16@hilo-diff-el-n32.d: New test.
* gas/mips/mips16@hilo-diff-el-n64.d: New test.
* gas/mips/micromips@hilo-diff-eb.d: New test.
* gas/mips/micromips@hilo-diff-eb-n32.d: New test.
* gas/mips/micromips@hilo-diff-eb-n64.d: New test.
* gas/mips/micromips@hilo-diff-el.d: New test.
* gas/mips/micromips@hilo-diff-el-n32.d: New test.
* gas/mips/micromips@hilo-diff-el-n64.d: New test.
* gas/mips/hilo-diff.s: New test source.
* gas/mips/mips.exp: Run the new tests.
Maciej
binutils-gas-test-mips-subsy.diff
Index: binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/hilo-diff.s
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/hilo-diff.s 2012-09-21 22:36:59.451853463 +0100
@@ -0,0 +1,90 @@
+# Source code used to test %hi/%lo operators with constants worked out
+# as a difference of local symbols, both previously defined and forward
+# references.
+
+ .text
+foo:
+ li $4, %hi(2f - 0f)
+ sll $4, 16
+ addiu $4, %lo(2f - 0f)
+ li $5, %hi(0f - 3f)
+ sll $5, 16
+ addiu $5, %lo(0f - 3f)
+0:
+ li $4, %hi(2f - 0b)
+ sll $4, 16
+ addiu $4, %lo(2f - 0b)
+ li $5, %hi(0b - 3f)
+ sll $5, 16
+ addiu $5, %lo(0b - 3f)
+1:
+ .insn
+ .fill 0x7ffc - (1b - 0b)
+2:
+ .insn
+ .fill 0x8000 - (2b - 0b)
+3:
+ li $4, %hi(2b - 0b)
+ sll $4, 16
+ addiu $4, %lo(2b - 0b)
+ li $5, %hi(0b - 3b)
+ sll $5, 16
+ addiu $5, %lo(0b - 3b)
+
+ li $4, %hi(2f - 0f)
+ sll $4, 16
+ addiu $4, %lo(2f - 0f)
+ li $5, %hi(0f - 3f)
+ sll $5, 16
+ addiu $5, %lo(0f - 3f)
+0:
+ li $4, %hi(2f - 0b)
+ sll $4, 16
+ addiu $4, %lo(2f - 0b)
+ li $5, %hi(0b - 3f)
+ sll $5, 16
+ addiu $5, %lo(0b - 3f)
+1:
+ .insn
+ .fill 0x8000 - (1b - 0b)
+2:
+ .insn
+ .fill 0x8004 - (2b - 0b)
+3:
+ li $4, %hi(2b - 0b)
+ sll $4, 16
+ addiu $4, %lo(2b - 0b)
+ li $5, %hi(0b - 3b)
+ sll $5, 16
+ addiu $5, %lo(0b - 3b)
+
+ li $4, %hi(2f - 0f)
+ sll $4, 16
+ addiu $4, %lo(2f - 0f)
+ li $5, %hi(0f - 3f)
+ sll $5, 16
+ addiu $5, %lo(0f - 3f)
+0:
+ li $4, %hi(2f - 0b)
+ sll $4, 16
+ addiu $4, %lo(2f - 0b)
+ li $5, %hi(0b - 3f)
+ sll $5, 16
+ addiu $5, %lo(0b - 3f)
+1:
+ .insn
+ .fill 0x11ffdc - (1b - 0b)
+2:
+ .insn
+ .fill 0
+3:
+ li $4, %hi(2b - 0b)
+ sll $4, 16
+ addiu $4, %lo(2b - 0b)
+ li $5, %hi(0b - 3b)
+ sll $5, 16
+ addiu $5, %lo(0b - 3b)
+
+# Force some (non-delay-slot) zero bytes, to make 'objdump' print ...
+ .align 4, 0
+ .space 16
Index: binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/mips.exp
===================================================================
--- binutils-fsf-trunk-quilt.orig/gas/testsuite/gas/mips/mips.exp 2012-09-21 20:32:01.000000000 +0100
+++ binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/mips.exp 2012-09-21 20:32:08.221821787 +0100
@@ -1114,4 +1114,12 @@ if { [istarget mips*-*-vxworks*] } {
run_dump_test_arches "mcu" [mips_arch_list_matching mips32r2 \
!octeon]
+ run_dump_test_arches "hilo-diff-eb" [mips_arch_list_all]
+ run_dump_test_arches "hilo-diff-el" [mips_arch_list_all]
+ if $has_newabi {
+ run_dump_test_arches "hilo-diff-eb-n32" [mips_arch_list_matching mips3]
+ run_dump_test_arches "hilo-diff-el-n32" [mips_arch_list_matching mips3]
+ run_dump_test_arches "hilo-diff-eb-n64" [mips_arch_list_matching mips3]
+ run_dump_test_arches "hilo-diff-el-n64" [mips_arch_list_matching mips3]
+ }
}
Index: binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/hilo-diff-eb-n32.d
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/hilo-diff-eb-n32.d 2012-09-21 20:32:08.221821787 +0100
@@ -0,0 +1,5 @@
+#objdump: -dr --prefix-addresses --show-raw-insn
+#name: MIPS hilo-diff n32/EB
+#as: -n32 -EB
+#source: hilo-diff.s
+#dump: hilo-diff-eb.d
Index: binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/hilo-diff-eb-n64.d
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/hilo-diff-eb-n64.d 2012-09-21 20:32:08.221821787 +0100
@@ -0,0 +1,5 @@
+#objdump: -dr --prefix-addresses --show-raw-insn
+#name: MIPS hilo-diff n64/EB
+#as: -64 -EB
+#source: hilo-diff.s
+#dump: hilo-diff-eb.d
Index: binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/hilo-diff-eb.d
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/hilo-diff-eb.d 2012-09-21 22:36:59.451853463 +0100
@@ -0,0 +1,66 @@
+#objdump: -dr --prefix-addresses --show-raw-insn
+#name: MIPS hilo-diff o32/EB
+#as: -32 -EB
+#source: hilo-diff.s
+
+.*: +file format .*mips.*
+
+Disassembly of section \.text:
+[0-9a-f]+ <[^>]*> 24040000 li a0,0
+[0-9a-f]+ <[^>]*> 00042400 sll a0,a0,0x10
+[0-9a-f]+ <[^>]*> 24847ffc addiu a0,a0,32764
+[0-9a-f]+ <[^>]*> 24050000 li a1,0
+[0-9a-f]+ <[^>]*> 00052c00 sll a1,a1,0x10
+[0-9a-f]+ <[^>]*> 24a58000 addiu a1,a1,-32768
+[0-9a-f]+ <[^>]*> 24040000 li a0,0
+[0-9a-f]+ <[^>]*> 00042400 sll a0,a0,0x10
+[0-9a-f]+ <[^>]*> 24847ffc addiu a0,a0,32764
+[0-9a-f]+ <[^>]*> 24050000 li a1,0
+[0-9a-f]+ <[^>]*> 00052c00 sll a1,a1,0x10
+[0-9a-f]+ <[^>]*> 24a58000 addiu a1,a1,-32768
+ \.\.\.
+[0-9a-f]+ <[^>]*> 24040000 li a0,0
+[0-9a-f]+ <[^>]*> 00042400 sll a0,a0,0x10
+[0-9a-f]+ <[^>]*> 24847ffc addiu a0,a0,32764
+[0-9a-f]+ <[^>]*> 24050000 li a1,0
+[0-9a-f]+ <[^>]*> 00052c00 sll a1,a1,0x10
+[0-9a-f]+ <[^>]*> 24a58000 addiu a1,a1,-32768
+[0-9a-f]+ <[^>]*> 24040001 li a0,1
+[0-9a-f]+ <[^>]*> 00042400 sll a0,a0,0x10
+[0-9a-f]+ <[^>]*> 24848000 addiu a0,a0,-32768
+[0-9a-f]+ <[^>]*> 2405ffff li a1,-1
+[0-9a-f]+ <[^>]*> 00052c00 sll a1,a1,0x10
+[0-9a-f]+ <[^>]*> 24a57ffc addiu a1,a1,32764
+[0-9a-f]+ <[^>]*> 24040001 li a0,1
+[0-9a-f]+ <[^>]*> 00042400 sll a0,a0,0x10
+[0-9a-f]+ <[^>]*> 24848000 addiu a0,a0,-32768
+[0-9a-f]+ <[^>]*> 2405ffff li a1,-1
+[0-9a-f]+ <[^>]*> 00052c00 sll a1,a1,0x10
+[0-9a-f]+ <[^>]*> 24a57ffc addiu a1,a1,32764
+ \.\.\.
+[0-9a-f]+ <[^>]*> 24040001 li a0,1
+[0-9a-f]+ <[^>]*> 00042400 sll a0,a0,0x10
+[0-9a-f]+ <[^>]*> 24848000 addiu a0,a0,-32768
+[0-9a-f]+ <[^>]*> 2405ffff li a1,-1
+[0-9a-f]+ <[^>]*> 00052c00 sll a1,a1,0x10
+[0-9a-f]+ <[^>]*> 24a57ffc addiu a1,a1,32764
+[0-9a-f]+ <[^>]*> 24040012 li a0,18
+[0-9a-f]+ <[^>]*> 00042400 sll a0,a0,0x10
+[0-9a-f]+ <[^>]*> 2484ffdc addiu a0,a0,-36
+[0-9a-f]+ <[^>]*> 2405ffee li a1,-18
+[0-9a-f]+ <[^>]*> 00052c00 sll a1,a1,0x10
+[0-9a-f]+ <[^>]*> 24a50024 addiu a1,a1,36
+[0-9a-f]+ <[^>]*> 24040012 li a0,18
+[0-9a-f]+ <[^>]*> 00042400 sll a0,a0,0x10
+[0-9a-f]+ <[^>]*> 2484ffdc addiu a0,a0,-36
+[0-9a-f]+ <[^>]*> 2405ffee li a1,-18
+[0-9a-f]+ <[^>]*> 00052c00 sll a1,a1,0x10
+[0-9a-f]+ <[^>]*> 24a50024 addiu a1,a1,36
+ \.\.\.
+[0-9a-f]+ <[^>]*> 24040012 li a0,18
+[0-9a-f]+ <[^>]*> 00042400 sll a0,a0,0x10
+[0-9a-f]+ <[^>]*> 2484ffdc addiu a0,a0,-36
+[0-9a-f]+ <[^>]*> 2405ffee li a1,-18
+[0-9a-f]+ <[^>]*> 00052c00 sll a1,a1,0x10
+[0-9a-f]+ <[^>]*> 24a50024 addiu a1,a1,36
+ \.\.\.
Index: binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/hilo-diff-el-n32.d
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/hilo-diff-el-n32.d 2012-09-21 20:32:08.221821787 +0100
@@ -0,0 +1,5 @@
+#objdump: -dr --prefix-addresses --show-raw-insn
+#name: MIPS hilo-diff n32/EL
+#as: -n32 -EL
+#source: hilo-diff.s
+#dump: hilo-diff-eb.d
Index: binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/hilo-diff-el-n64.d
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/hilo-diff-el-n64.d 2012-09-21 20:32:08.221821787 +0100
@@ -0,0 +1,5 @@
+#objdump: -dr --prefix-addresses --show-raw-insn
+#name: MIPS hilo-diff n64/EL
+#as: -64 -EL
+#source: hilo-diff.s
+#dump: hilo-diff-eb.d
Index: binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/hilo-diff-el.d
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/hilo-diff-el.d 2012-09-21 20:32:08.221821787 +0100
@@ -0,0 +1,5 @@
+#objdump: -dr --prefix-addresses --show-raw-insn
+#name: MIPS hilo-diff o32/EL
+#as: -32 -EL
+#source: hilo-diff.s
+#dump: hilo-diff-eb.d
Index: binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/micromips@hilo-diff-eb-n32.d
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/micromips@hilo-diff-eb-n32.d 2012-09-21 20:32:08.221821787 +0100
@@ -0,0 +1,5 @@
+#objdump: -dr --prefix-addresses --show-raw-insn
+#name: MIPS hilo-diff n32/EB
+#as: -n32 -EB
+#source: hilo-diff.s
+#dump: micromips@hilo-diff-eb.d
Index: binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/micromips@hilo-diff-eb-n64.d
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/micromips@hilo-diff-eb-n64.d 2012-09-21 20:32:08.221821787 +0100
@@ -0,0 +1,5 @@
+#objdump: -dr --prefix-addresses --show-raw-insn
+#name: MIPS hilo-diff n64/EB
+#as: -64 -EB
+#source: hilo-diff.s
+#dump: micromips@hilo-diff-eb.d
Index: binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/micromips@hilo-diff-eb.d
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/micromips@hilo-diff-eb.d 2012-09-21 22:36:59.461765033 +0100
@@ -0,0 +1,66 @@
+#objdump: -dr --prefix-addresses --show-raw-insn
+#name: MIPS hilo-diff o32/EB
+#as: -32 -EB
+#source: hilo-diff.s
+
+.*: +file format .*mips.*
+
+Disassembly of section \.text:
+[0-9a-f]+ <[^>]*> 3080 0000 li a0,0
+[0-9a-f]+ <[^>]*> 0084 8000 sll a0,a0,0x10
+[0-9a-f]+ <[^>]*> 3084 7ffc addiu a0,a0,32764
+[0-9a-f]+ <[^>]*> 30a0 0000 li a1,0
+[0-9a-f]+ <[^>]*> 00a5 8000 sll a1,a1,0x10
+[0-9a-f]+ <[^>]*> 30a5 8000 addiu a1,a1,-32768
+[0-9a-f]+ <[^>]*> 3080 0000 li a0,0
+[0-9a-f]+ <[^>]*> 0084 8000 sll a0,a0,0x10
+[0-9a-f]+ <[^>]*> 3084 7ffc addiu a0,a0,32764
+[0-9a-f]+ <[^>]*> 30a0 0000 li a1,0
+[0-9a-f]+ <[^>]*> 00a5 8000 sll a1,a1,0x10
+[0-9a-f]+ <[^>]*> 30a5 8000 addiu a1,a1,-32768
+ \.\.\.
+[0-9a-f]+ <[^>]*> 3080 0000 li a0,0
+[0-9a-f]+ <[^>]*> 0084 8000 sll a0,a0,0x10
+[0-9a-f]+ <[^>]*> 3084 7ffc addiu a0,a0,32764
+[0-9a-f]+ <[^>]*> 30a0 0000 li a1,0
+[0-9a-f]+ <[^>]*> 00a5 8000 sll a1,a1,0x10
+[0-9a-f]+ <[^>]*> 30a5 8000 addiu a1,a1,-32768
+[0-9a-f]+ <[^>]*> 3080 0001 li a0,1
+[0-9a-f]+ <[^>]*> 0084 8000 sll a0,a0,0x10
+[0-9a-f]+ <[^>]*> 3084 8000 addiu a0,a0,-32768
+[0-9a-f]+ <[^>]*> 30a0 ffff li a1,-1
+[0-9a-f]+ <[^>]*> 00a5 8000 sll a1,a1,0x10
+[0-9a-f]+ <[^>]*> 30a5 7ffc addiu a1,a1,32764
+[0-9a-f]+ <[^>]*> 3080 0001 li a0,1
+[0-9a-f]+ <[^>]*> 0084 8000 sll a0,a0,0x10
+[0-9a-f]+ <[^>]*> 3084 8000 addiu a0,a0,-32768
+[0-9a-f]+ <[^>]*> 30a0 ffff li a1,-1
+[0-9a-f]+ <[^>]*> 00a5 8000 sll a1,a1,0x10
+[0-9a-f]+ <[^>]*> 30a5 7ffc addiu a1,a1,32764
+ \.\.\.
+[0-9a-f]+ <[^>]*> 3080 0001 li a0,1
+[0-9a-f]+ <[^>]*> 0084 8000 sll a0,a0,0x10
+[0-9a-f]+ <[^>]*> 3084 8000 addiu a0,a0,-32768
+[0-9a-f]+ <[^>]*> 30a0 ffff li a1,-1
+[0-9a-f]+ <[^>]*> 00a5 8000 sll a1,a1,0x10
+[0-9a-f]+ <[^>]*> 30a5 7ffc addiu a1,a1,32764
+[0-9a-f]+ <[^>]*> 3080 0012 li a0,18
+[0-9a-f]+ <[^>]*> 0084 8000 sll a0,a0,0x10
+[0-9a-f]+ <[^>]*> 3084 ffdc addiu a0,a0,-36
+[0-9a-f]+ <[^>]*> 30a0 ffee li a1,-18
+[0-9a-f]+ <[^>]*> 00a5 8000 sll a1,a1,0x10
+[0-9a-f]+ <[^>]*> 30a5 0024 addiu a1,a1,36
+[0-9a-f]+ <[^>]*> 3080 0012 li a0,18
+[0-9a-f]+ <[^>]*> 0084 8000 sll a0,a0,0x10
+[0-9a-f]+ <[^>]*> 3084 ffdc addiu a0,a0,-36
+[0-9a-f]+ <[^>]*> 30a0 ffee li a1,-18
+[0-9a-f]+ <[^>]*> 00a5 8000 sll a1,a1,0x10
+[0-9a-f]+ <[^>]*> 30a5 0024 addiu a1,a1,36
+ \.\.\.
+[0-9a-f]+ <[^>]*> 3080 0012 li a0,18
+[0-9a-f]+ <[^>]*> 0084 8000 sll a0,a0,0x10
+[0-9a-f]+ <[^>]*> 3084 ffdc addiu a0,a0,-36
+[0-9a-f]+ <[^>]*> 30a0 ffee li a1,-18
+[0-9a-f]+ <[^>]*> 00a5 8000 sll a1,a1,0x10
+[0-9a-f]+ <[^>]*> 30a5 0024 addiu a1,a1,36
+ \.\.\.
Index: binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/micromips@hilo-diff-el-n32.d
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/micromips@hilo-diff-el-n32.d 2012-09-21 20:32:08.221821787 +0100
@@ -0,0 +1,5 @@
+#objdump: -dr --prefix-addresses --show-raw-insn
+#name: MIPS hilo-diff n32/EL
+#as: -n32 -EL
+#source: hilo-diff.s
+#dump: micromips@hilo-diff-eb.d
Index: binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/micromips@hilo-diff-el-n64.d
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/micromips@hilo-diff-el-n64.d 2012-09-21 20:32:08.231760474 +0100
@@ -0,0 +1,5 @@
+#objdump: -dr --prefix-addresses --show-raw-insn
+#name: MIPS hilo-diff n64/EL
+#as: -64 -EL
+#source: hilo-diff.s
+#dump: micromips@hilo-diff-eb.d
Index: binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/micromips@hilo-diff-el.d
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/micromips@hilo-diff-el.d 2012-09-21 20:32:08.231760474 +0100
@@ -0,0 +1,5 @@
+#objdump: -dr --prefix-addresses --show-raw-insn
+#name: MIPS hilo-diff o32/EL
+#as: -32 -EL
+#source: hilo-diff.s
+#dump: micromips@hilo-diff-eb.d
Index: binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/mips16@hilo-diff-eb-n32.d
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/mips16@hilo-diff-eb-n32.d 2012-09-21 20:32:08.231760474 +0100
@@ -0,0 +1,5 @@
+#objdump: -dr --prefix-addresses --show-raw-insn
+#name: MIPS hilo-diff n32/EB
+#as: -n32 -EB
+#source: hilo-diff.s
+#dump: mips16@hilo-diff-eb.d
Index: binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/mips16@hilo-diff-eb-n64.d
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/mips16@hilo-diff-eb-n64.d 2012-09-21 20:32:08.231760474 +0100
@@ -0,0 +1,5 @@
+#objdump: -dr --prefix-addresses --show-raw-insn
+#name: MIPS hilo-diff n64/EB
+#as: -64 -EB
+#source: hilo-diff.s
+#dump: mips16@hilo-diff-eb.d
Index: binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/mips16@hilo-diff-eb.d
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/mips16@hilo-diff-eb.d 2012-09-21 22:36:59.461765033 +0100
@@ -0,0 +1,66 @@
+#objdump: -dr --prefix-addresses --show-raw-insn
+#name: MIPS hilo-diff o32/EB
+#as: -32 -EB
+#source: hilo-diff.s
+
+.*: +file format .*mips.*
+
+Disassembly of section \.text:
+[0-9a-f]+ <[^>]*> f000 6c00 li a0,0
+[0-9a-f]+ <[^>]*> f400 3480 sll a0,16
+[0-9a-f]+ <[^>]*> f7ef 4c1c addiu a0,32764
+[0-9a-f]+ <[^>]*> f000 6d00 li a1,0
+[0-9a-f]+ <[^>]*> f400 35a0 sll a1,16
+[0-9a-f]+ <[^>]*> f010 4d00 addiu a1,-32768
+[0-9a-f]+ <[^>]*> f000 6c00 li a0,0
+[0-9a-f]+ <[^>]*> f400 3480 sll a0,16
+[0-9a-f]+ <[^>]*> f7ef 4c1c addiu a0,32764
+[0-9a-f]+ <[^>]*> f000 6d00 li a1,0
+[0-9a-f]+ <[^>]*> f400 35a0 sll a1,16
+[0-9a-f]+ <[^>]*> f010 4d00 addiu a1,-32768
+ \.\.\.
+[0-9a-f]+ <[^>]*> 6c00 li a0,0
+[0-9a-f]+ <[^>]*> f400 3480 sll a0,16
+[0-9a-f]+ <[^>]*> f7ef 4c1c addiu a0,32764
+[0-9a-f]+ <[^>]*> 6d00 li a1,0
+[0-9a-f]+ <[^>]*> f400 35a0 sll a1,16
+[0-9a-f]+ <[^>]*> f010 4d00 addiu a1,-32768
+[0-9a-f]+ <[^>]*> f000 6c01 li a0,1
+[0-9a-f]+ <[^>]*> f400 3480 sll a0,16
+[0-9a-f]+ <[^>]*> f010 4c00 addiu a0,-32768
+[0-9a-f]+ <[^>]*> f7ff 6d1f li a1,65535
+[0-9a-f]+ <[^>]*> f400 35a0 sll a1,16
+[0-9a-f]+ <[^>]*> f7ef 4d1c addiu a1,32764
+[0-9a-f]+ <[^>]*> f000 6c01 li a0,1
+[0-9a-f]+ <[^>]*> f400 3480 sll a0,16
+[0-9a-f]+ <[^>]*> f010 4c00 addiu a0,-32768
+[0-9a-f]+ <[^>]*> f7ff 6d1f li a1,65535
+[0-9a-f]+ <[^>]*> f400 35a0 sll a1,16
+[0-9a-f]+ <[^>]*> f7ef 4d1c addiu a1,32764
+ \.\.\.
+[0-9a-f]+ <[^>]*> 6c01 li a0,1
+[0-9a-f]+ <[^>]*> f400 3480 sll a0,16
+[0-9a-f]+ <[^>]*> f010 4c00 addiu a0,-32768
+[0-9a-f]+ <[^>]*> f7ff 6d1f li a1,65535
+[0-9a-f]+ <[^>]*> f400 35a0 sll a1,16
+[0-9a-f]+ <[^>]*> f7ef 4d1c addiu a1,32764
+[0-9a-f]+ <[^>]*> f000 6c12 li a0,18
+[0-9a-f]+ <[^>]*> f400 3480 sll a0,16
+[0-9a-f]+ <[^>]*> f7df 4c1c addiu a0,-36
+[0-9a-f]+ <[^>]*> f7ff 6d0e li a1,65518
+[0-9a-f]+ <[^>]*> f400 35a0 sll a1,16
+[0-9a-f]+ <[^>]*> f020 4d04 addiu a1,36
+[0-9a-f]+ <[^>]*> f000 6c12 li a0,18
+[0-9a-f]+ <[^>]*> f400 3480 sll a0,16
+[0-9a-f]+ <[^>]*> f7df 4c1c addiu a0,-36
+[0-9a-f]+ <[^>]*> f7ff 6d0e li a1,65518
+[0-9a-f]+ <[^>]*> f400 35a0 sll a1,16
+[0-9a-f]+ <[^>]*> f020 4d04 addiu a1,36
+ \.\.\.
+[0-9a-f]+ <[^>]*> 6c12 li a0,18
+[0-9a-f]+ <[^>]*> f400 3480 sll a0,16
+[0-9a-f]+ <[^>]*> 4cdc addiu a0,-36
+[0-9a-f]+ <[^>]*> f7ff 6d0e li a1,65518
+[0-9a-f]+ <[^>]*> f400 35a0 sll a1,16
+[0-9a-f]+ <[^>]*> 4d24 addiu a1,36
+ \.\.\.
Index: binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/mips16@hilo-diff-el-n32.d
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/mips16@hilo-diff-el-n32.d 2012-09-21 20:32:08.231760474 +0100
@@ -0,0 +1,5 @@
+#objdump: -dr --prefix-addresses --show-raw-insn
+#name: MIPS hilo-diff n32/EL
+#as: -n32 -EL
+#source: hilo-diff.s
+#dump: mips16@hilo-diff-eb.d
Index: binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/mips16@hilo-diff-el-n64.d
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/mips16@hilo-diff-el-n64.d 2012-09-21 20:32:08.231760474 +0100
@@ -0,0 +1,5 @@
+#objdump: -dr --prefix-addresses --show-raw-insn
+#name: MIPS hilo-diff n64/EL
+#as: -64 -EL
+#source: hilo-diff.s
+#dump: mips16@hilo-diff-eb.d
Index: binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/mips16@hilo-diff-el.d
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ binutils-fsf-trunk-quilt/gas/testsuite/gas/mips/mips16@hilo-diff-el.d 2012-09-21 20:32:08.231760474 +0100
@@ -0,0 +1,5 @@
+#objdump: -dr --prefix-addresses --show-raw-insn
+#name: MIPS hilo-diff o32/EL
+#as: -32 -EL
+#source: hilo-diff.s
+#dump: mips16@hilo-diff-eb.d