aboutsummaryrefslogtreecommitdiff
path: root/gas/testsuite
diff options
context:
space:
mode:
authorIan Lance Taylor <ian@airs.com>1995-08-16 16:28:00 +0000
committerIan Lance Taylor <ian@airs.com>1995-08-16 16:28:00 +0000
commit983be6687c780680e99831f567f595baa98e43be (patch)
treed5d4d3897dff1d9e56c763615434cb6cc58f532f /gas/testsuite
parent9b2221905454ee28dec5ba7b3e1fef762f05f131 (diff)
downloadgdb-983be6687c780680e99831f567f595baa98e43be.zip
gdb-983be6687c780680e99831f567f595baa98e43be.tar.gz
gdb-983be6687c780680e99831f567f595baa98e43be.tar.bz2
* gas/mips/*.d: Change all test names to say MIPS.
Diffstat (limited to 'gas/testsuite')
-rw-r--r--gas/testsuite/gas/mips/add.d21
-rw-r--r--gas/testsuite/gas/mips/and.d35
-rw-r--r--gas/testsuite/gas/mips/bge.d53
-rw-r--r--gas/testsuite/gas/mips/bgeu.d47
-rw-r--r--gas/testsuite/gas/mips/blt.d53
-rw-r--r--gas/testsuite/gas/mips/bltu.d47
-rw-r--r--gas/testsuite/gas/mips/div.d132
-rw-r--r--gas/testsuite/gas/mips/jal-empic.d2
-rw-r--r--gas/testsuite/gas/mips/la-empic.d2
-rw-r--r--gas/testsuite/gas/mips/la-svr4pic.d474
-rw-r--r--gas/testsuite/gas/mips/la.d395
-rw-r--r--gas/testsuite/gas/mips/lb-empic.d2
-rw-r--r--gas/testsuite/gas/mips/lb-svr4pic.d182
-rw-r--r--gas/testsuite/gas/mips/lb.d407
-rw-r--r--gas/testsuite/gas/mips/ld-empic.d2
-rw-r--r--gas/testsuite/gas/mips/ld-svr4pic.d225
-rw-r--r--gas/testsuite/gas/mips/li.d17
-rw-r--r--gas/testsuite/gas/mips/lif-empic.d2
-rw-r--r--gas/testsuite/gas/mips/lif-svr4pic.d28
-rw-r--r--gas/testsuite/gas/mips/sb.d407
-rw-r--r--gas/testsuite/gas/mips/trunc.d30
-rw-r--r--gas/testsuite/gas/mips/uld.d276
-rw-r--r--gas/testsuite/gas/mips/ulh-empic.d2
-rw-r--r--gas/testsuite/gas/mips/ulh-svr4pic.d117
-rw-r--r--gas/testsuite/gas/mips/usd.d276
25 files changed, 3228 insertions, 6 deletions
diff --git a/gas/testsuite/gas/mips/add.d b/gas/testsuite/gas/mips/add.d
new file mode 100644
index 0000000..1bd3b89
--- /dev/null
+++ b/gas/testsuite/gas/mips/add.d
@@ -0,0 +1,21 @@
+#objdump: -dr
+#name: MIPS add
+
+# Test the add macro.
+
+.*: +file format .*mips.*
+
+No symbols in .*
+Disassembly of section .text:
+0+0000 addi \$a0,\$a0,0
+0+0004 addi \$a0,\$a0,1
+0+0008 li \$at,32768
+0+000c add \$a0,\$a0,\$at
+0+0010 addi \$a0,\$a0,-32768
+0+0014 lui \$at,1
+0+0018 add \$a0,\$a0,\$at
+0+001c lui \$at,1
+0+0020 ori \$at,\$at,42405
+0+0024 add \$a0,\$a0,\$at
+0+0028 addiu \$a0,\$a0,1
+...
diff --git a/gas/testsuite/gas/mips/and.d b/gas/testsuite/gas/mips/and.d
new file mode 100644
index 0000000..449adfe
--- /dev/null
+++ b/gas/testsuite/gas/mips/and.d
@@ -0,0 +1,35 @@
+#objdump: -dr
+#name: MIPS and
+
+# Test the and macro.
+
+.*: +file format .*mips.*
+
+No symbols in .*
+Disassembly of section .text:
+0+0000 andi \$a0,\$a0,0
+0+0004 andi \$a0,\$a0,1
+0+0008 andi \$a0,\$a0,32768
+0+000c li \$at,-32768
+0+0010 and \$a0,\$a0,\$at
+0+0014 lui \$at,1
+0+0018 and \$a0,\$a0,\$at
+0+001c lui \$at,1
+0+0020 ori \$at,\$at,42405
+0+0024 and \$a0,\$a0,\$at
+0+0028 ori \$a0,\$a1,0
+0+002c nor \$a0,\$a0,\$zero
+0+0030 ori \$a0,\$a1,1
+0+0034 nor \$a0,\$a0,\$zero
+0+0038 ori \$a0,\$a1,32768
+0+003c nor \$a0,\$a0,\$zero
+0+0040 li \$at,-32768
+0+0044 nor \$a0,\$a1,\$at
+0+0048 lui \$at,1
+0+004c nor \$a0,\$a1,\$at
+0+0050 lui \$at,1
+0+0054 ori \$at,\$at,42405
+0+0058 nor \$a0,\$a1,\$at
+0+005c ori \$a0,\$a1,0
+0+0060 xori \$a0,\$a1,0
+...
diff --git a/gas/testsuite/gas/mips/bge.d b/gas/testsuite/gas/mips/bge.d
new file mode 100644
index 0000000..7b89d39
--- /dev/null
+++ b/gas/testsuite/gas/mips/bge.d
@@ -0,0 +1,53 @@
+#objdump: -dr
+#name: MIPS bge
+
+# Test the bge macro.
+
+.*: +file format .*mips.*
+
+Disassembly of section .text:
+0+0000 <[^>]*> slt \$at,\$a0,\$a1
+0+0004 <[^>]*> beqz \$at,0+0000 <text_label>
+...
+0+000c <[^>]*> bgez \$a0,0+0000 <text_label>
+...
+0+0014 <[^>]*> blez \$a1,0+0000 <text_label>
+...
+0+001c <[^>]*> bgez \$a0,0+0000 <text_label>
+...
+0+0024 <[^>]*> bgtz \$a0,0+0000 <text_label>
+...
+0+002c <[^>]*> slti \$at,\$a0,2
+0+0030 <[^>]*> beqz \$at,0+0000 <text_label>
+...
+0+0038 <[^>]*> li \$at,32768
+0+003c <[^>]*> slt \$at,\$a0,\$at
+0+0040 <[^>]*> beqz \$at,0+0000 <text_label>
+...
+0+0048 <[^>]*> slti \$at,\$a0,-32768
+0+004c <[^>]*> beqz \$at,0+0000 <text_label>
+...
+0+0054 <[^>]*> lui \$at,1
+0+0058 <[^>]*> slt \$at,\$a0,\$at
+0+005c <[^>]*> beqz \$at,0+0000 <text_label>
+...
+0+0064 <[^>]*> lui \$at,1
+0+0068 <[^>]*> ori \$at,\$at,42405
+0+006c <[^>]*> slt \$at,\$a0,\$at
+0+0070 <[^>]*> beqz \$at,0+0000 <text_label>
+...
+0+0078 <[^>]*> slt \$at,\$a1,\$a0
+0+007c <[^>]*> bnez \$at,0+0000 <text_label>
+...
+0+0084 <[^>]*> bgtz \$a0,0+0000 <text_label>
+...
+0+008c <[^>]*> bltz \$a1,0+0000 <text_label>
+...
+0+0094 <[^>]*> bgtz \$a0,0+0000 <text_label>
+...
+0+009c <[^>]*> slt \$at,\$a0,\$a1
+0+00a0 <[^>]*> beqzl \$at,0+0000 <text_label>
+...
+0+00a8 <[^>]*> slt \$at,\$a1,\$a0
+0+00ac <[^>]*> bnezl \$at,0+0000 <text_label>
+...
diff --git a/gas/testsuite/gas/mips/bgeu.d b/gas/testsuite/gas/mips/bgeu.d
new file mode 100644
index 0000000..796d27c
--- /dev/null
+++ b/gas/testsuite/gas/mips/bgeu.d
@@ -0,0 +1,47 @@
+#objdump: -dr
+#name: MIPS bgeu
+
+# Test the bgeu macro.
+
+.*: +file format .*mips.*
+
+Disassembly of section .text:
+0+0000 <[^>]*> sltu \$at,\$a0,\$a1
+0+0004 <[^>]*> beqz \$at,0+0000 <text_label>
+...
+0+000c <[^>]*> beq \$zero,\$a1,0+0000 <text_label>
+...
+0+0014 <[^>]*> bnez \$a0,0+0000 <text_label>
+...
+0+001c <[^>]*> sltiu \$at,\$a0,2
+0+0020 <[^>]*> beqz \$at,0+0000 <text_label>
+...
+0+0028 <[^>]*> li \$at,32768
+0+002c <[^>]*> sltu \$at,\$a0,\$at
+0+0030 <[^>]*> beqz \$at,0+0000 <text_label>
+...
+0+0038 <[^>]*> sltiu \$at,\$a0,-32768
+0+003c <[^>]*> beqz \$at,0+0000 <text_label>
+...
+0+0044 <[^>]*> lui \$at,1
+0+0048 <[^>]*> sltu \$at,\$a0,\$at
+0+004c <[^>]*> beqz \$at,0+0000 <text_label>
+...
+0+0054 <[^>]*> lui \$at,1
+0+0058 <[^>]*> ori \$at,\$at,42405
+0+005c <[^>]*> sltu \$at,\$a0,\$at
+0+0060 <[^>]*> beqz \$at,0+0000 <text_label>
+...
+0+0068 <[^>]*> sltu \$at,\$a1,\$a0
+0+006c <[^>]*> bnez \$at,0+0000 <text_label>
+...
+0+0074 <[^>]*> bnez \$a0,0+0000 <text_label>
+...
+0+007c <[^>]*> bnez \$a0,0+0000 <text_label>
+...
+0+0084 <[^>]*> sltu \$at,\$a0,\$a1
+0+0088 <[^>]*> beqzl \$at,0+0000 <text_label>
+...
+0+0090 <[^>]*> sltu \$at,\$a1,\$a0
+0+0094 <[^>]*> bnezl \$at,0+0000 <text_label>
+...
diff --git a/gas/testsuite/gas/mips/blt.d b/gas/testsuite/gas/mips/blt.d
new file mode 100644
index 0000000..b0924e4
--- /dev/null
+++ b/gas/testsuite/gas/mips/blt.d
@@ -0,0 +1,53 @@
+#objdump: -dr
+#name: MIPS blt
+
+# Test the blt macro.
+
+.*: +file format .*mips.*
+
+Disassembly of section .text:
+0+0000 <[^>]*> slt \$at,\$a0,\$a1
+0+0004 <[^>]*> bnez \$at,0+0000 <text_label>
+...
+0+000c <[^>]*> bltz \$a0,0+0000 <text_label>
+...
+0+0014 <[^>]*> bgtz \$a1,0+0000 <text_label>
+...
+0+001c <[^>]*> bltz \$a0,0+0000 <text_label>
+...
+0+0024 <[^>]*> blez \$a0,0+0000 <text_label>
+...
+0+002c <[^>]*> slti \$at,\$a0,2
+0+0030 <[^>]*> bnez \$at,0+0000 <text_label>
+...
+0+0038 <[^>]*> li \$at,32768
+0+003c <[^>]*> slt \$at,\$a0,\$at
+0+0040 <[^>]*> bnez \$at,0+0000 <text_label>
+...
+0+0048 <[^>]*> slti \$at,\$a0,-32768
+0+004c <[^>]*> bnez \$at,0+0000 <text_label>
+...
+0+0054 <[^>]*> lui \$at,1
+0+0058 <[^>]*> slt \$at,\$a0,\$at
+0+005c <[^>]*> bnez \$at,0+0000 <text_label>
+...
+0+0064 <[^>]*> lui \$at,1
+0+0068 <[^>]*> ori \$at,\$at,42405
+0+006c <[^>]*> slt \$at,\$a0,\$at
+0+0070 <[^>]*> bnez \$at,0+0000 <text_label>
+...
+0+0078 <[^>]*> slt \$at,\$a1,\$a0
+0+007c <[^>]*> beqz \$at,0+0000 <text_label>
+...
+0+0084 <[^>]*> blez \$a0,0+0000 <text_label>
+...
+0+008c <[^>]*> bgez \$a1,0+0000 <text_label>
+...
+0+0094 <[^>]*> blez \$a0,0+0000 <text_label>
+...
+0+009c <[^>]*> slt \$at,\$a0,\$a1
+0+00a0 <[^>]*> bnezl \$at,0+0000 <text_label>
+...
+0+00a8 <[^>]*> slt \$at,\$a1,\$a0
+0+00ac <[^>]*> beqzl \$at,0+0000 <text_label>
+...
diff --git a/gas/testsuite/gas/mips/bltu.d b/gas/testsuite/gas/mips/bltu.d
new file mode 100644
index 0000000..0a1b778
--- /dev/null
+++ b/gas/testsuite/gas/mips/bltu.d
@@ -0,0 +1,47 @@
+#objdump: -dr
+#name: MIPS bltu
+
+# Test the bltu macro.
+
+.*: +file format .*mips.*
+
+Disassembly of section .text:
+0+0000 <[^>]*> sltu \$at,\$a0,\$a1
+0+0004 <[^>]*> bnez \$at,0+0000 <text_label>
+...
+0+000c <[^>]*> bne \$zero,\$a1,0+0000 <text_label>
+...
+0+0014 <[^>]*> beqz \$a0,0+0000 <text_label>
+...
+0+001c <[^>]*> sltiu \$at,\$a0,2
+0+0020 <[^>]*> bnez \$at,0+0000 <text_label>
+...
+0+0028 <[^>]*> li \$at,32768
+0+002c <[^>]*> sltu \$at,\$a0,\$at
+0+0030 <[^>]*> bnez \$at,0+0000 <text_label>
+...
+0+0038 <[^>]*> sltiu \$at,\$a0,-32768
+0+003c <[^>]*> bnez \$at,0+0000 <text_label>
+...
+0+0044 <[^>]*> lui \$at,1
+0+0048 <[^>]*> sltu \$at,\$a0,\$at
+0+004c <[^>]*> bnez \$at,0+0000 <text_label>
+...
+0+0054 <[^>]*> lui \$at,1
+0+0058 <[^>]*> ori \$at,\$at,42405
+0+005c <[^>]*> sltu \$at,\$a0,\$at
+0+0060 <[^>]*> bnez \$at,0+0000 <text_label>
+...
+0+0068 <[^>]*> sltu \$at,\$a1,\$a0
+0+006c <[^>]*> beqz \$at,0+0000 <text_label>
+...
+0+0074 <[^>]*> beqz \$a0,0+0000 <text_label>
+...
+0+007c <[^>]*> beqz \$a0,0+0000 <text_label>
+...
+0+0084 <[^>]*> sltu \$at,\$a0,\$a1
+0+0088 <[^>]*> bnezl \$at,0+0000 <text_label>
+...
+0+0090 <[^>]*> sltu \$at,\$a1,\$a0
+0+0094 <[^>]*> beqzl \$at,0+0000 <text_label>
+...
diff --git a/gas/testsuite/gas/mips/div.d b/gas/testsuite/gas/mips/div.d
new file mode 100644
index 0000000..d8eb482
--- /dev/null
+++ b/gas/testsuite/gas/mips/div.d
@@ -0,0 +1,132 @@
+#objdump: -dr
+#name: MIPS div
+
+# Test the div macro.
+
+.*: +file format .*mips.*
+
+No symbols in .*
+Disassembly of section .text:
+0+0000 div \$zero,\$a0,\$a1
+0+0004 div \$zero,\$a0,\$a1
+0+0008 bnez \$a1,0+0014
+...
+0+0010 break 0x7
+0+0014 li \$at,-1
+0+0018 bne \$a1,\$at,0+002c
+0+001c lui \$at,32768
+0+0020 bne \$a0,\$at,0+002c
+...
+0+0028 break 0x6
+0+002c mflo \$a0
+...
+0+0038 div \$zero,\$a1,\$a2
+0+003c bnez \$a2,0+0048
+...
+0+0044 break 0x7
+0+0048 li \$at,-1
+0+004c bne \$a2,\$at,0+0060
+0+0050 lui \$at,32768
+0+0054 bne \$a1,\$at,0+0060
+...
+0+005c break 0x6
+0+0060 mflo \$a0
+0+0064 move \$a0,\$a0
+0+0068 move \$a0,\$a1
+0+006c neg \$a0,\$a0
+0+0070 neg \$a0,\$a1
+0+0074 li \$at,2
+0+0078 div \$zero,\$a0,\$at
+0+007c mflo \$a0
+0+0080 li \$at,2
+...
+0+0088 div \$zero,\$a1,\$at
+0+008c mflo \$a0
+0+0090 li \$at,32768
+...
+0+0098 div \$zero,\$a0,\$at
+0+009c mflo \$a0
+0+00a0 li \$at,32768
+...
+0+00a8 div \$zero,\$a1,\$at
+0+00ac mflo \$a0
+0+00b0 li \$at,-32768
+...
+0+00b8 div \$zero,\$a0,\$at
+0+00bc mflo \$a0
+0+00c0 li \$at,-32768
+...
+0+00c8 div \$zero,\$a1,\$at
+0+00cc mflo \$a0
+0+00d0 lui \$at,1
+...
+0+00d8 div \$zero,\$a0,\$at
+0+00dc mflo \$a0
+0+00e0 lui \$at,1
+...
+0+00e8 div \$zero,\$a1,\$at
+0+00ec mflo \$a0
+0+00f0 lui \$at,1
+0+00f4 ori \$at,\$at,42405
+0+00f8 div \$zero,\$a0,\$at
+0+00fc mflo \$a0
+0+0100 lui \$at,1
+0+0104 ori \$at,\$at,42405
+0+0108 div \$zero,\$a1,\$at
+0+010c mflo \$a0
+...
+0+0118 divu \$zero,\$a0,\$a1
+0+011c divu \$zero,\$a0,\$a1
+0+0120 bnez \$a1,0+012c
+...
+0+0128 break 0x7
+0+012c mflo \$a0
+...
+0+0138 divu \$zero,\$a1,\$a2
+0+013c bnez \$a2,0+0148
+...
+0+0144 break 0x7
+0+0148 mflo \$a0
+0+014c move \$a0,\$a0
+...
+0+0154 div \$zero,\$a1,\$a2
+0+0158 bnez \$a2,0+0164
+...
+0+0160 break 0x7
+0+0164 li \$at,-1
+0+0168 bne \$a2,\$at,0+017c
+0+016c lui \$at,32768
+0+0170 bne \$a1,\$at,0+017c
+...
+0+0178 break 0x6
+0+017c mfhi \$a0
+0+0180 li \$at,2
+...
+0+0188 divu \$zero,\$a1,\$at
+0+018c mfhi \$a0
+...
+0+0198 ddiv \$zero,\$a1,\$a2
+0+019c bnez \$a2,0+01a8
+...
+0+01a4 break 0x7
+0+01a8 daddiu \$at,\$zero,-1
+0+01ac bne \$a2,\$at,0+01c4
+0+01b0 daddiu \$at,\$zero,1
+0+01b4 dsll32 \$at,\$at,0x1f
+0+01b8 bne \$a1,\$at,0+01c4
+...
+0+01c0 break 0x6
+0+01c4 mflo \$a0
+0+01c8 li \$at,2
+...
+0+01d0 ddivu \$zero,\$a1,\$at
+0+01d4 mflo \$a0
+0+01d8 li \$at,32768
+...
+0+01e0 ddiv \$zero,\$a1,\$at
+0+01e4 mfhi \$a0
+0+01e8 li \$at,-32768
+...
+0+01f0 ddivu \$zero,\$a1,\$at
+0+01f4 mfhi \$a0
+...
diff --git a/gas/testsuite/gas/mips/jal-empic.d b/gas/testsuite/gas/mips/jal-empic.d
index 808be95..d82c15f 100644
--- a/gas/testsuite/gas/mips/jal-empic.d
+++ b/gas/testsuite/gas/mips/jal-empic.d
@@ -1,5 +1,5 @@
#objdump: -dr
-#name: jal-empic
+#name: MIPS jal-empic
#as: -mips1 -membedded-pic
#source: jal.s
diff --git a/gas/testsuite/gas/mips/la-empic.d b/gas/testsuite/gas/mips/la-empic.d
index ceae655..f7bb3e4 100644
--- a/gas/testsuite/gas/mips/la-empic.d
+++ b/gas/testsuite/gas/mips/la-empic.d
@@ -1,5 +1,5 @@
#objdump: -dr
-#name: la-empic
+#name: MIPS la-empic
#as: -mips1 -membedded-pic
# Test the la macro with -membedded-pic.
diff --git a/gas/testsuite/gas/mips/la-svr4pic.d b/gas/testsuite/gas/mips/la-svr4pic.d
new file mode 100644
index 0000000..f17c355
--- /dev/null
+++ b/gas/testsuite/gas/mips/la-svr4pic.d
@@ -0,0 +1,474 @@
+#objdump: -dr
+#name: MIPS la-svr4pic
+#as: -mips1 -KPIC
+#source: la.s
+
+# Test the la macro with -KPIC.
+
+.*: +file format .*mips.*
+
+Disassembly of section .text:
+0+0000 <[^>]*> li \$a0,0
+0+0004 <[^>]*> li \$a0,1
+0+0008 <[^>]*> li \$a0,32768
+0+000c <[^>]*> li \$a0,-32768
+0+0010 <[^>]*> lui \$a0,1
+0+0014 <[^>]*> lui \$a0,1
+0+0018 <[^>]*> ori \$a0,\$a0,42405
+0+001c <[^>]*> li \$a0,0
+0+0020 <[^>]*> addu \$a0,\$a0,\$a1
+0+0024 <[^>]*> li \$a0,1
+0+0028 <[^>]*> addu \$a0,\$a0,\$a1
+0+002c <[^>]*> li \$a0,32768
+0+0030 <[^>]*> addu \$a0,\$a0,\$a1
+0+0034 <[^>]*> li \$a0,-32768
+0+0038 <[^>]*> addu \$a0,\$a0,\$a1
+0+003c <[^>]*> lui \$a0,1
+0+0040 <[^>]*> addu \$a0,\$a0,\$a1
+0+0044 <[^>]*> lui \$a0,1
+0+0048 <[^>]*> ori \$a0,\$a0,42405
+0+004c <[^>]*> addu \$a0,\$a0,\$a1
+0+0050 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+0050 R_MIPS_GOT16 .data
+...
+0+0058 <[^>]*> addiu \$a0,\$a0,0
+[ ]*RELOC: 0+0058 R_MIPS_LO16 .data
+0+005c <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+005c R_MIPS_GOT16 big_external_data_label
+0+0060 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+0060 R_MIPS_GOT16 small_external_data_label
+0+0064 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+0064 R_MIPS_GOT16 big_external_common
+0+0068 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+0068 R_MIPS_GOT16 small_external_common
+0+006c <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+006c R_MIPS_GOT16 .bss
+...
+0+0074 <[^>]*> addiu \$a0,\$a0,0
+[ ]*RELOC: 0+0074 R_MIPS_LO16 .bss
+0+0078 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+0078 R_MIPS_GOT16 .bss
+...
+0+0080 <[^>]*> addiu \$a0,\$a0,1000
+[ ]*RELOC: 0+0080 R_MIPS_LO16 .bss
+0+0084 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+0084 R_MIPS_GOT16 .data
+...
+0+008c <[^>]*> addiu \$a0,\$a0,1
+[ ]*RELOC: 0+008c R_MIPS_LO16 .data
+0+0090 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+0090 R_MIPS_GOT16 big_external_data_label
+...
+0+0098 <[^>]*> addiu \$a0,\$a0,1
+0+009c <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+009c R_MIPS_GOT16 small_external_data_label
+...
+0+00a4 <[^>]*> addiu \$a0,\$a0,1
+0+00a8 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+00a8 R_MIPS_GOT16 big_external_common
+...
+0+00b0 <[^>]*> addiu \$a0,\$a0,1
+0+00b4 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+00b4 R_MIPS_GOT16 small_external_common
+...
+0+00bc <[^>]*> addiu \$a0,\$a0,1
+0+00c0 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+00c0 R_MIPS_GOT16 .bss
+...
+0+00c8 <[^>]*> addiu \$a0,\$a0,1
+[ ]*RELOC: 0+00c8 R_MIPS_LO16 .bss
+0+00cc <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+00cc R_MIPS_GOT16 .bss
+...
+0+00d4 <[^>]*> addiu \$a0,\$a0,1001
+[ ]*RELOC: 0+00d4 R_MIPS_LO16 .bss
+0+00d8 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+00d8 R_MIPS_GOT16 .data
+0+00dc <[^>]*> lui \$at,1
+0+00e0 <[^>]*> addiu \$at,\$at,-32768
+[ ]*RELOC: 0+00e0 R_MIPS_LO16 .data
+0+00e4 <[^>]*> addu \$a0,\$a0,\$at
+0+00e8 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+00e8 R_MIPS_GOT16 big_external_data_label
+0+00ec <[^>]*> lui \$at,1
+0+00f0 <[^>]*> addiu \$at,\$at,-32768
+0+00f4 <[^>]*> addu \$a0,\$a0,\$at
+0+00f8 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+00f8 R_MIPS_GOT16 small_external_data_label
+0+00fc <[^>]*> lui \$at,1
+0+0100 <[^>]*> addiu \$at,\$at,-32768
+0+0104 <[^>]*> addu \$a0,\$a0,\$at
+0+0108 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+0108 R_MIPS_GOT16 big_external_common
+0+010c <[^>]*> lui \$at,1
+0+0110 <[^>]*> addiu \$at,\$at,-32768
+0+0114 <[^>]*> addu \$a0,\$a0,\$at
+0+0118 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+0118 R_MIPS_GOT16 small_external_common
+0+011c <[^>]*> lui \$at,1
+0+0120 <[^>]*> addiu \$at,\$at,-32768
+0+0124 <[^>]*> addu \$a0,\$a0,\$at
+0+0128 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+0128 R_MIPS_GOT16 .bss
+0+012c <[^>]*> lui \$at,1
+0+0130 <[^>]*> addiu \$at,\$at,-32768
+[ ]*RELOC: 0+0130 R_MIPS_LO16 .bss
+0+0134 <[^>]*> addu \$a0,\$a0,\$at
+0+0138 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+0138 R_MIPS_GOT16 .bss
+0+013c <[^>]*> lui \$at,1
+0+0140 <[^>]*> addiu \$at,\$at,-31768
+[ ]*RELOC: 0+0140 R_MIPS_LO16 .bss
+0+0144 <[^>]*> addu \$a0,\$a0,\$at
+0+0148 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+0148 R_MIPS_GOT16 .data
+...
+0+0150 <[^>]*> addiu \$a0,\$a0,-32768
+[ ]*RELOC: 0+0150 R_MIPS_LO16 .data
+0+0154 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+0154 R_MIPS_GOT16 big_external_data_label
+...
+0+015c <[^>]*> addiu \$a0,\$a0,-32768
+0+0160 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+0160 R_MIPS_GOT16 small_external_data_label
+...
+0+0168 <[^>]*> addiu \$a0,\$a0,-32768
+0+016c <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+016c R_MIPS_GOT16 big_external_common
+...
+0+0174 <[^>]*> addiu \$a0,\$a0,-32768
+0+0178 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+0178 R_MIPS_GOT16 small_external_common
+...
+0+0180 <[^>]*> addiu \$a0,\$a0,-32768
+0+0184 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+0184 R_MIPS_GOT16 .bss
+...
+0+018c <[^>]*> addiu \$a0,\$a0,-32768
+[ ]*RELOC: 0+018c R_MIPS_LO16 .bss
+0+0190 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+0190 R_MIPS_GOT16 .bss
+...
+0+0198 <[^>]*> addiu \$a0,\$a0,-31768
+[ ]*RELOC: 0+0198 R_MIPS_LO16 .bss
+0+019c <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+019c R_MIPS_GOT16 .data
+0+01a0 <[^>]*> lui \$at,1
+0+01a4 <[^>]*> addiu \$at,\$at,0
+[ ]*RELOC: 0+01a4 R_MIPS_LO16 .data
+0+01a8 <[^>]*> addu \$a0,\$a0,\$at
+0+01ac <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+01ac R_MIPS_GOT16 big_external_data_label
+0+01b0 <[^>]*> lui \$at,1
+0+01b4 <[^>]*> addiu \$at,\$at,0
+0+01b8 <[^>]*> addu \$a0,\$a0,\$at
+0+01bc <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+01bc R_MIPS_GOT16 small_external_data_label
+0+01c0 <[^>]*> lui \$at,1
+0+01c4 <[^>]*> addiu \$at,\$at,0
+0+01c8 <[^>]*> addu \$a0,\$a0,\$at
+0+01cc <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+01cc R_MIPS_GOT16 big_external_common
+0+01d0 <[^>]*> lui \$at,1
+0+01d4 <[^>]*> addiu \$at,\$at,0
+0+01d8 <[^>]*> addu \$a0,\$a0,\$at
+0+01dc <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+01dc R_MIPS_GOT16 small_external_common
+0+01e0 <[^>]*> lui \$at,1
+0+01e4 <[^>]*> addiu \$at,\$at,0
+0+01e8 <[^>]*> addu \$a0,\$a0,\$at
+0+01ec <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+01ec R_MIPS_GOT16 .bss
+0+01f0 <[^>]*> lui \$at,1
+0+01f4 <[^>]*> addiu \$at,\$at,0
+[ ]*RELOC: 0+01f4 R_MIPS_LO16 .bss
+0+01f8 <[^>]*> addu \$a0,\$a0,\$at
+0+01fc <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+01fc R_MIPS_GOT16 .bss
+0+0200 <[^>]*> lui \$at,1
+0+0204 <[^>]*> addiu \$at,\$at,1000
+[ ]*RELOC: 0+0204 R_MIPS_LO16 .bss
+0+0208 <[^>]*> addu \$a0,\$a0,\$at
+0+020c <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+020c R_MIPS_GOT16 .data
+0+0210 <[^>]*> lui \$at,2
+0+0214 <[^>]*> addiu \$at,\$at,-23131
+[ ]*RELOC: 0+0214 R_MIPS_LO16 .data
+0+0218 <[^>]*> addu \$a0,\$a0,\$at
+0+021c <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+021c R_MIPS_GOT16 big_external_data_label
+0+0220 <[^>]*> lui \$at,2
+0+0224 <[^>]*> addiu \$at,\$at,-23131
+0+0228 <[^>]*> addu \$a0,\$a0,\$at
+0+022c <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+022c R_MIPS_GOT16 small_external_data_label
+0+0230 <[^>]*> lui \$at,2
+0+0234 <[^>]*> addiu \$at,\$at,-23131
+0+0238 <[^>]*> addu \$a0,\$a0,\$at
+0+023c <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+023c R_MIPS_GOT16 big_external_common
+0+0240 <[^>]*> lui \$at,2
+0+0244 <[^>]*> addiu \$at,\$at,-23131
+0+0248 <[^>]*> addu \$a0,\$a0,\$at
+0+024c <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+024c R_MIPS_GOT16 small_external_common
+0+0250 <[^>]*> lui \$at,2
+0+0254 <[^>]*> addiu \$at,\$at,-23131
+0+0258 <[^>]*> addu \$a0,\$a0,\$at
+0+025c <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+025c R_MIPS_GOT16 .bss
+0+0260 <[^>]*> lui \$at,2
+0+0264 <[^>]*> addiu \$at,\$at,-23131
+[ ]*RELOC: 0+0264 R_MIPS_LO16 .bss
+0+0268 <[^>]*> addu \$a0,\$a0,\$at
+0+026c <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+026c R_MIPS_GOT16 .bss
+0+0270 <[^>]*> lui \$at,2
+0+0274 <[^>]*> addiu \$at,\$at,-22131
+[ ]*RELOC: 0+0274 R_MIPS_LO16 .bss
+0+0278 <[^>]*> addu \$a0,\$a0,\$at
+0+027c <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+027c R_MIPS_GOT16 .data
+...
+0+0284 <[^>]*> addiu \$a0,\$a0,0
+[ ]*RELOC: 0+0284 R_MIPS_LO16 .data
+0+0288 <[^>]*> addu \$a0,\$a0,\$a1
+0+028c <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+028c R_MIPS_GOT16 big_external_data_label
+...
+0+0294 <[^>]*> addu \$a0,\$a0,\$a1
+0+0298 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+0298 R_MIPS_GOT16 small_external_data_label
+...
+0+02a0 <[^>]*> addu \$a0,\$a0,\$a1
+0+02a4 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+02a4 R_MIPS_GOT16 big_external_common
+...
+0+02ac <[^>]*> addu \$a0,\$a0,\$a1
+0+02b0 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+02b0 R_MIPS_GOT16 small_external_common
+...
+0+02b8 <[^>]*> addu \$a0,\$a0,\$a1
+0+02bc <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+02bc R_MIPS_GOT16 .bss
+...
+0+02c4 <[^>]*> addiu \$a0,\$a0,0
+[ ]*RELOC: 0+02c4 R_MIPS_LO16 .bss
+0+02c8 <[^>]*> addu \$a0,\$a0,\$a1
+0+02cc <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+02cc R_MIPS_GOT16 .bss
+...
+0+02d4 <[^>]*> addiu \$a0,\$a0,1000
+[ ]*RELOC: 0+02d4 R_MIPS_LO16 .bss
+0+02d8 <[^>]*> addu \$a0,\$a0,\$a1
+0+02dc <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+02dc R_MIPS_GOT16 .data
+...
+0+02e4 <[^>]*> addiu \$a0,\$a0,1
+[ ]*RELOC: 0+02e4 R_MIPS_LO16 .data
+0+02e8 <[^>]*> addu \$a0,\$a0,\$a1
+0+02ec <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+02ec R_MIPS_GOT16 big_external_data_label
+...
+0+02f4 <[^>]*> addiu \$a0,\$a0,1
+0+02f8 <[^>]*> addu \$a0,\$a0,\$a1
+0+02fc <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+02fc R_MIPS_GOT16 small_external_data_label
+...
+0+0304 <[^>]*> addiu \$a0,\$a0,1
+0+0308 <[^>]*> addu \$a0,\$a0,\$a1
+0+030c <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+030c R_MIPS_GOT16 big_external_common
+...
+0+0314 <[^>]*> addiu \$a0,\$a0,1
+0+0318 <[^>]*> addu \$a0,\$a0,\$a1
+0+031c <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+031c R_MIPS_GOT16 small_external_common
+...
+0+0324 <[^>]*> addiu \$a0,\$a0,1
+0+0328 <[^>]*> addu \$a0,\$a0,\$a1
+0+032c <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+032c R_MIPS_GOT16 .bss
+...
+0+0334 <[^>]*> addiu \$a0,\$a0,1
+[ ]*RELOC: 0+0334 R_MIPS_LO16 .bss
+0+0338 <[^>]*> addu \$a0,\$a0,\$a1
+0+033c <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+033c R_MIPS_GOT16 .bss
+...
+0+0344 <[^>]*> addiu \$a0,\$a0,1001
+[ ]*RELOC: 0+0344 R_MIPS_LO16 .bss
+0+0348 <[^>]*> addu \$a0,\$a0,\$a1
+0+034c <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+034c R_MIPS_GOT16 .data
+0+0350 <[^>]*> lui \$at,1
+0+0354 <[^>]*> addiu \$at,\$at,-32768
+[ ]*RELOC: 0+0354 R_MIPS_LO16 .data
+0+0358 <[^>]*> addu \$a0,\$a0,\$at
+0+035c <[^>]*> addu \$a0,\$a0,\$a1
+0+0360 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+0360 R_MIPS_GOT16 big_external_data_label
+0+0364 <[^>]*> lui \$at,1
+0+0368 <[^>]*> addiu \$at,\$at,-32768
+0+036c <[^>]*> addu \$a0,\$a0,\$at
+0+0370 <[^>]*> addu \$a0,\$a0,\$a1
+0+0374 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+0374 R_MIPS_GOT16 small_external_data_label
+0+0378 <[^>]*> lui \$at,1
+0+037c <[^>]*> addiu \$at,\$at,-32768
+0+0380 <[^>]*> addu \$a0,\$a0,\$at
+0+0384 <[^>]*> addu \$a0,\$a0,\$a1
+0+0388 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+0388 R_MIPS_GOT16 big_external_common
+0+038c <[^>]*> lui \$at,1
+0+0390 <[^>]*> addiu \$at,\$at,-32768
+0+0394 <[^>]*> addu \$a0,\$a0,\$at
+0+0398 <[^>]*> addu \$a0,\$a0,\$a1
+0+039c <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+039c R_MIPS_GOT16 small_external_common
+0+03a0 <[^>]*> lui \$at,1
+0+03a4 <[^>]*> addiu \$at,\$at,-32768
+0+03a8 <[^>]*> addu \$a0,\$a0,\$at
+0+03ac <[^>]*> addu \$a0,\$a0,\$a1
+0+03b0 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+03b0 R_MIPS_GOT16 .bss
+0+03b4 <[^>]*> lui \$at,1
+0+03b8 <[^>]*> addiu \$at,\$at,-32768
+[ ]*RELOC: 0+03b8 R_MIPS_LO16 .bss
+0+03bc <[^>]*> addu \$a0,\$a0,\$at
+0+03c0 <[^>]*> addu \$a0,\$a0,\$a1
+0+03c4 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+03c4 R_MIPS_GOT16 .bss
+0+03c8 <[^>]*> lui \$at,1
+0+03cc <[^>]*> addiu \$at,\$at,-31768
+[ ]*RELOC: 0+03cc R_MIPS_LO16 .bss
+0+03d0 <[^>]*> addu \$a0,\$a0,\$at
+0+03d4 <[^>]*> addu \$a0,\$a0,\$a1
+0+03d8 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+03d8 R_MIPS_GOT16 .data
+...
+0+03e0 <[^>]*> addiu \$a0,\$a0,-32768
+[ ]*RELOC: 0+03e0 R_MIPS_LO16 .data
+0+03e4 <[^>]*> addu \$a0,\$a0,\$a1
+0+03e8 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+03e8 R_MIPS_GOT16 big_external_data_label
+...
+0+03f0 <[^>]*> addiu \$a0,\$a0,-32768
+0+03f4 <[^>]*> addu \$a0,\$a0,\$a1
+0+03f8 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+03f8 R_MIPS_GOT16 small_external_data_label
+...
+0+0400 <[^>]*> addiu \$a0,\$a0,-32768
+0+0404 <[^>]*> addu \$a0,\$a0,\$a1
+0+0408 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+0408 R_MIPS_GOT16 big_external_common
+...
+0+0410 <[^>]*> addiu \$a0,\$a0,-32768
+0+0414 <[^>]*> addu \$a0,\$a0,\$a1
+0+0418 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+0418 R_MIPS_GOT16 small_external_common
+...
+0+0420 <[^>]*> addiu \$a0,\$a0,-32768
+0+0424 <[^>]*> addu \$a0,\$a0,\$a1
+0+0428 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+0428 R_MIPS_GOT16 .bss
+...
+0+0430 <[^>]*> addiu \$a0,\$a0,-32768
+[ ]*RELOC: 0+0430 R_MIPS_LO16 .bss
+0+0434 <[^>]*> addu \$a0,\$a0,\$a1
+0+0438 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+0438 R_MIPS_GOT16 .bss
+...
+0+0440 <[^>]*> addiu \$a0,\$a0,-31768
+[ ]*RELOC: 0+0440 R_MIPS_LO16 .bss
+0+0444 <[^>]*> addu \$a0,\$a0,\$a1
+0+0448 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+0448 R_MIPS_GOT16 .data
+0+044c <[^>]*> lui \$at,1
+0+0450 <[^>]*> addiu \$at,\$at,0
+[ ]*RELOC: 0+0450 R_MIPS_LO16 .data
+0+0454 <[^>]*> addu \$a0,\$a0,\$at
+0+0458 <[^>]*> addu \$a0,\$a0,\$a1
+0+045c <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+045c R_MIPS_GOT16 big_external_data_label
+0+0460 <[^>]*> lui \$at,1
+0+0464 <[^>]*> addiu \$at,\$at,0
+0+0468 <[^>]*> addu \$a0,\$a0,\$at
+0+046c <[^>]*> addu \$a0,\$a0,\$a1
+0+0470 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+0470 R_MIPS_GOT16 small_external_data_label
+0+0474 <[^>]*> lui \$at,1
+0+0478 <[^>]*> addiu \$at,\$at,0
+0+047c <[^>]*> addu \$a0,\$a0,\$at
+0+0480 <[^>]*> addu \$a0,\$a0,\$a1
+0+0484 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+0484 R_MIPS_GOT16 big_external_common
+0+0488 <[^>]*> lui \$at,1
+0+048c <[^>]*> addiu \$at,\$at,0
+0+0490 <[^>]*> addu \$a0,\$a0,\$at
+0+0494 <[^>]*> addu \$a0,\$a0,\$a1
+0+0498 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+0498 R_MIPS_GOT16 small_external_common
+0+049c <[^>]*> lui \$at,1
+0+04a0 <[^>]*> addiu \$at,\$at,0
+0+04a4 <[^>]*> addu \$a0,\$a0,\$at
+0+04a8 <[^>]*> addu \$a0,\$a0,\$a1
+0+04ac <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+04ac R_MIPS_GOT16 .bss
+0+04b0 <[^>]*> lui \$at,1
+0+04b4 <[^>]*> addiu \$at,\$at,0
+[ ]*RELOC: 0+04b4 R_MIPS_LO16 .bss
+0+04b8 <[^>]*> addu \$a0,\$a0,\$at
+0+04bc <[^>]*> addu \$a0,\$a0,\$a1
+0+04c0 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+04c0 R_MIPS_GOT16 .bss
+0+04c4 <[^>]*> lui \$at,1
+0+04c8 <[^>]*> addiu \$at,\$at,1000
+[ ]*RELOC: 0+04c8 R_MIPS_LO16 .bss
+0+04cc <[^>]*> addu \$a0,\$a0,\$at
+0+04d0 <[^>]*> addu \$a0,\$a0,\$a1
+0+04d4 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+04d4 R_MIPS_GOT16 .data
+0+04d8 <[^>]*> lui \$at,2
+0+04dc <[^>]*> addiu \$at,\$at,-23131
+[ ]*RELOC: 0+04dc R_MIPS_LO16 .data
+0+04e0 <[^>]*> addu \$a0,\$a0,\$at
+0+04e4 <[^>]*> addu \$a0,\$a0,\$a1
+0+04e8 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+04e8 R_MIPS_GOT16 big_external_data_label
+0+04ec <[^>]*> lui \$at,2
+0+04f0 <[^>]*> addiu \$at,\$at,-23131
+0+04f4 <[^>]*> addu \$a0,\$a0,\$at
+0+04f8 <[^>]*> addu \$a0,\$a0,\$a1
+0+04fc <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+04fc R_MIPS_GOT16 small_external_data_label
+0+0500 <[^>]*> lui \$at,2
+0+0504 <[^>]*> addiu \$at,\$at,-23131
+0+0508 <[^>]*> addu \$a0,\$a0,\$at
+0+050c <[^>]*> addu \$a0,\$a0,\$a1
+0+0510 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+0510 R_MIPS_GOT16 big_external_common
+0+0514 <[^>]*> lui \$at,2
+0+0518 <[^>]*> addiu \$at,\$at,-23131
+0+051c <[^>]*> addu \$a0,\$a0,\$at
+0+0520 <[^>]*> addu \$a0,\$a0,\$a1
+0+0524 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+0524 R_MIPS_GOT16 small_external_common
+0+0528 <[^>]*> lui \$at,2
+0+052c <[^>]*> addiu \$at,\$at,-23131
+0+0530 <[^>]*> addu \$a0,\$a0,\$at
+0+0534 <[^>]*> addu \$a0,\$a0,\$a1
+0+0538 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+0538 R_MIPS_GOT16 .bss
+0+053c <[^>]*> lui \$at,2
+0+0540 <[^>]*> addiu \$at,\$at,-23131
+[ ]*RELOC: 0+0540 R_MIPS_LO16 .bss
+0+0544 <[^>]*> addu \$a0,\$a0,\$at
+0+0548 <[^>]*> addu \$a0,\$a0,\$a1
+0+054c <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+054c R_MIPS_GOT16 .bss
+0+0550 <[^>]*> lui \$at,2
+0+0554 <[^>]*> addiu \$at,\$at,-22131
+[ ]*RELOC: 0+0554 R_MIPS_LO16 .bss
+0+0558 <[^>]*> addu \$a0,\$a0,\$at
+0+055c <[^>]*> addu \$a0,\$a0,\$a1
diff --git a/gas/testsuite/gas/mips/la.d b/gas/testsuite/gas/mips/la.d
new file mode 100644
index 0000000..218fa6e
--- /dev/null
+++ b/gas/testsuite/gas/mips/la.d
@@ -0,0 +1,395 @@
+#objdump: -dr
+#name: MIPS la
+#as: -mips1
+
+# Test the la macro.
+
+.*: +file format .*mips.*
+
+Disassembly of section .text:
+0+0000 <[^>]*> li \$a0,0
+0+0004 <[^>]*> li \$a0,1
+0+0008 <[^>]*> li \$a0,32768
+0+000c <[^>]*> li \$a0,-32768
+0+0010 <[^>]*> lui \$a0,1
+0+0014 <[^>]*> lui \$a0,1
+0+0018 <[^>]*> ori \$a0,\$a0,42405
+0+001c <[^>]*> li \$a0,0
+0+0020 <[^>]*> addu \$a0,\$a0,\$a1
+0+0024 <[^>]*> li \$a0,1
+0+0028 <[^>]*> addu \$a0,\$a0,\$a1
+0+002c <[^>]*> li \$a0,32768
+0+0030 <[^>]*> addu \$a0,\$a0,\$a1
+0+0034 <[^>]*> li \$a0,-32768
+0+0038 <[^>]*> addu \$a0,\$a0,\$a1
+0+003c <[^>]*> lui \$a0,1
+0+0040 <[^>]*> addu \$a0,\$a0,\$a1
+0+0044 <[^>]*> lui \$a0,1
+0+0048 <[^>]*> ori \$a0,\$a0,42405
+0+004c <[^>]*> addu \$a0,\$a0,\$a1
+0+0050 <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+0050 [A-Z0-9_]*HI[A-Z0-9_]* .data.*
+0+0054 <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+0054 [A-Z0-9_]*LO[A-Z0-9_]* .data.*
+0+0058 <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+0058 [A-Z0-9_]*HI[A-Z0-9_]* big_external_data_label
+0+005c <[^>]*> addiu \$a0,\$a0,0
+[ ]*RELOC: 0+005c [A-Z0-9_]*LO[A-Z0-9_]* big_external_data_label
+0+0060 <[^>]*> addiu \$a0,\$gp,0
+[ ]*RELOC: 0+0060 [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
+0+0064 <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+0064 [A-Z0-9_]*HI[A-Z0-9_]* big_external_common
+0+0068 <[^>]*> addiu \$a0,\$a0,0
+[ ]*RELOC: 0+0068 [A-Z0-9_]*LO[A-Z0-9_]* big_external_common
+0+006c <[^>]*> addiu \$a0,\$gp,0
+[ ]*RELOC: 0+006c [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
+0+0070 <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+0070 [A-Z0-9_]*HI[A-Z0-9_]* .bss.*
+0+0074 <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+0074 [A-Z0-9_]*LO[A-Z0-9_]* .bss.*
+0+0078 <[^>]*> addiu \$a0,\$gp,[-0-9]+
+[ ]*RELOC: 0+0078 [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
+0+007c <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+007c [A-Z0-9_]*HI[A-Z0-9_]* .data.*
+0+0080 <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+0080 [A-Z0-9_]*LO[A-Z0-9_]* .data.*
+0+0084 <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+0084 [A-Z0-9_]*HI[A-Z0-9_]* big_external_data_label
+0+0088 <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+0088 [A-Z0-9_]*LO[A-Z0-9_]* big_external_data_label
+0+008c <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+008c [A-Z0-9_]*HI[A-Z0-9_]* small_external_data_label
+0+0090 <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+0090 [A-Z0-9_]*LO[A-Z0-9_]* small_external_data_label
+0+0094 <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+0094 [A-Z0-9_]*HI[A-Z0-9_]* big_external_common
+0+0098 <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+0098 [A-Z0-9_]*LO[A-Z0-9_]* big_external_common
+0+009c <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+009c [A-Z0-9_]*HI[A-Z0-9_]* small_external_common
+0+00a0 <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+00a0 [A-Z0-9_]*LO[A-Z0-9_]* small_external_common
+0+00a4 <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+00a4 [A-Z0-9_]*HI[A-Z0-9_]* .bss.*
+0+00a8 <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+00a8 [A-Z0-9_]*LO[A-Z0-9_]* .bss.*
+0+00ac <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+00ac [A-Z0-9_]*HI[A-Z0-9_]* .sbss.*
+0+00b0 <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+00b0 [A-Z0-9_]*LO[A-Z0-9_]* .sbss.*
+0+00b4 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+00b4 [A-Z0-9_]*HI[A-Z0-9_]* .data.*
+0+00b8 <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+00b8 [A-Z0-9_]*LO[A-Z0-9_]* .data.*
+0+00bc <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+00bc [A-Z0-9_]*HI[A-Z0-9_]* big_external_data_label
+0+00c0 <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+00c0 [A-Z0-9_]*LO[A-Z0-9_]* big_external_data_label
+0+00c4 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+00c4 [A-Z0-9_]*HI[A-Z0-9_]* small_external_data_label
+0+00c8 <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+00c8 [A-Z0-9_]*LO[A-Z0-9_]* small_external_data_label
+0+00cc <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+00cc [A-Z0-9_]*HI[A-Z0-9_]* big_external_common
+0+00d0 <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+00d0 [A-Z0-9_]*LO[A-Z0-9_]* big_external_common
+0+00d4 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+00d4 [A-Z0-9_]*HI[A-Z0-9_]* small_external_common
+0+00d8 <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+00d8 [A-Z0-9_]*LO[A-Z0-9_]* small_external_common
+0+00dc <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+00dc [A-Z0-9_]*HI[A-Z0-9_]* .bss.*
+0+00e0 <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+00e0 [A-Z0-9_]*LO[A-Z0-9_]* .bss.*
+0+00e4 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+00e4 [A-Z0-9_]*HI[A-Z0-9_]* .sbss.*
+0+00e8 <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+00e8 [A-Z0-9_]*LO[A-Z0-9_]* .sbss.*
+0+00ec <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+00ec [A-Z0-9_]*HI[A-Z0-9_]* .data.*
+0+00f0 <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+00f0 [A-Z0-9_]*LO[A-Z0-9_]* .data.*
+0+00f4 <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+00f4 [A-Z0-9_]*HI[A-Z0-9_]* big_external_data_label
+0+00f8 <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+00f8 [A-Z0-9_]*LO[A-Z0-9_]* big_external_data_label
+0+00fc <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+00fc [A-Z0-9_]*HI[A-Z0-9_]* small_external_data_label
+0+0100 <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+0100 [A-Z0-9_]*LO[A-Z0-9_]* small_external_data_label
+0+0104 <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+0104 [A-Z0-9_]*HI[A-Z0-9_]* big_external_common
+0+0108 <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+0108 [A-Z0-9_]*LO[A-Z0-9_]* big_external_common
+0+010c <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+010c [A-Z0-9_]*HI[A-Z0-9_]* small_external_common
+0+0110 <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+0110 [A-Z0-9_]*LO[A-Z0-9_]* small_external_common
+0+0114 <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+0114 [A-Z0-9_]*HI[A-Z0-9_]* .bss.*
+0+0118 <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+0118 [A-Z0-9_]*LO[A-Z0-9_]* .bss.*
+0+011c <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+011c [A-Z0-9_]*HI[A-Z0-9_]* .sbss.*
+0+0120 <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+0120 [A-Z0-9_]*LO[A-Z0-9_]* .sbss.*
+0+0124 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+0124 [A-Z0-9_]*HI[A-Z0-9_]* .data.*
+0+0128 <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+0128 [A-Z0-9_]*LO[A-Z0-9_]* .data.*
+0+012c <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+012c [A-Z0-9_]*HI[A-Z0-9_]* big_external_data_label
+0+0130 <[^>]*> addiu \$a0,\$a0,0
+[ ]*RELOC: 0+0130 [A-Z0-9_]*LO[A-Z0-9_]* big_external_data_label
+0+0134 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+0134 [A-Z0-9_]*HI[A-Z0-9_]* small_external_data_label
+0+0138 <[^>]*> addiu \$a0,\$a0,0
+[ ]*RELOC: 0+0138 [A-Z0-9_]*LO[A-Z0-9_]* small_external_data_label
+0+013c <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+013c [A-Z0-9_]*HI[A-Z0-9_]* big_external_common
+0+0140 <[^>]*> addiu \$a0,\$a0,0
+[ ]*RELOC: 0+0140 [A-Z0-9_]*LO[A-Z0-9_]* big_external_common
+0+0144 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+0144 [A-Z0-9_]*HI[A-Z0-9_]* small_external_common
+0+0148 <[^>]*> addiu \$a0,\$a0,0
+[ ]*RELOC: 0+0148 [A-Z0-9_]*LO[A-Z0-9_]* small_external_common
+0+014c <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+014c [A-Z0-9_]*HI[A-Z0-9_]* .bss.*
+0+0150 <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+0150 [A-Z0-9_]*LO[A-Z0-9_]* .bss.*
+0+0154 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+0154 [A-Z0-9_]*HI[A-Z0-9_]* .sbss.*
+0+0158 <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+0158 [A-Z0-9_]*LO[A-Z0-9_]* .sbss.*
+0+015c <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+015c [A-Z0-9_]*HI[A-Z0-9_]* .data.*
+0+0160 <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+0160 [A-Z0-9_]*LO[A-Z0-9_]* .data.*
+0+0164 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+0164 [A-Z0-9_]*HI[A-Z0-9_]* big_external_data_label
+0+0168 <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+0168 [A-Z0-9_]*LO[A-Z0-9_]* big_external_data_label
+0+016c <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+016c [A-Z0-9_]*HI[A-Z0-9_]* small_external_data_label
+0+0170 <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+0170 [A-Z0-9_]*LO[A-Z0-9_]* small_external_data_label
+0+0174 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+0174 [A-Z0-9_]*HI[A-Z0-9_]* big_external_common
+0+0178 <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+0178 [A-Z0-9_]*LO[A-Z0-9_]* big_external_common
+0+017c <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+017c [A-Z0-9_]*HI[A-Z0-9_]* small_external_common
+0+0180 <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+0180 [A-Z0-9_]*LO[A-Z0-9_]* small_external_common
+0+0184 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+0184 [A-Z0-9_]*HI[A-Z0-9_]* .bss.*
+0+0188 <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+0188 [A-Z0-9_]*LO[A-Z0-9_]* .bss.*
+0+018c <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+018c [A-Z0-9_]*HI[A-Z0-9_]* .sbss.*
+0+0190 <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+0190 [A-Z0-9_]*LO[A-Z0-9_]* .sbss.*
+0+0194 <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+0194 [A-Z0-9_]*HI[A-Z0-9_]* .data.*
+0+0198 <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+0198 [A-Z0-9_]*LO[A-Z0-9_]* .data.*
+0+019c <[^>]*> addu \$a0,\$a0,\$a1
+0+01a0 <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+01a0 [A-Z0-9_]*HI[A-Z0-9_]* big_external_data_label
+0+01a4 <[^>]*> addiu \$a0,\$a0,0
+[ ]*RELOC: 0+01a4 [A-Z0-9_]*LO[A-Z0-9_]* big_external_data_label
+0+01a8 <[^>]*> addu \$a0,\$a0,\$a1
+0+01ac <[^>]*> addiu \$a0,\$gp,0
+[ ]*RELOC: 0+01ac [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
+0+01b0 <[^>]*> addu \$a0,\$a0,\$a1
+0+01b4 <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+01b4 [A-Z0-9_]*HI[A-Z0-9_]* big_external_common
+0+01b8 <[^>]*> addiu \$a0,\$a0,0
+[ ]*RELOC: 0+01b8 [A-Z0-9_]*LO[A-Z0-9_]* big_external_common
+0+01bc <[^>]*> addu \$a0,\$a0,\$a1
+0+01c0 <[^>]*> addiu \$a0,\$gp,0
+[ ]*RELOC: 0+01c0 [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
+0+01c4 <[^>]*> addu \$a0,\$a0,\$a1
+0+01c8 <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+01c8 [A-Z0-9_]*HI[A-Z0-9_]* .bss.*
+0+01cc <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+01cc [A-Z0-9_]*LO[A-Z0-9_]* .bss.*
+0+01d0 <[^>]*> addu \$a0,\$a0,\$a1
+0+01d4 <[^>]*> addiu \$a0,\$gp,[-0-9]+
+[ ]*RELOC: 0+01d4 [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
+0+01d8 <[^>]*> addu \$a0,\$a0,\$a1
+0+01dc <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+01dc [A-Z0-9_]*HI[A-Z0-9_]* .data.*
+0+01e0 <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+01e0 [A-Z0-9_]*LO[A-Z0-9_]* .data.*
+0+01e4 <[^>]*> addu \$a0,\$a0,\$a1
+0+01e8 <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+01e8 [A-Z0-9_]*HI[A-Z0-9_]* big_external_data_label
+0+01ec <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+01ec [A-Z0-9_]*LO[A-Z0-9_]* big_external_data_label
+0+01f0 <[^>]*> addu \$a0,\$a0,\$a1
+0+01f4 <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+01f4 [A-Z0-9_]*HI[A-Z0-9_]* small_external_data_label
+0+01f8 <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+01f8 [A-Z0-9_]*LO[A-Z0-9_]* small_external_data_label
+0+01fc <[^>]*> addu \$a0,\$a0,\$a1
+0+0200 <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+0200 [A-Z0-9_]*HI[A-Z0-9_]* big_external_common
+0+0204 <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+0204 [A-Z0-9_]*LO[A-Z0-9_]* big_external_common
+0+0208 <[^>]*> addu \$a0,\$a0,\$a1
+0+020c <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+020c [A-Z0-9_]*HI[A-Z0-9_]* small_external_common
+0+0210 <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+0210 [A-Z0-9_]*LO[A-Z0-9_]* small_external_common
+0+0214 <[^>]*> addu \$a0,\$a0,\$a1
+0+0218 <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+0218 [A-Z0-9_]*HI[A-Z0-9_]* .bss.*
+0+021c <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+021c [A-Z0-9_]*LO[A-Z0-9_]* .bss.*
+0+0220 <[^>]*> addu \$a0,\$a0,\$a1
+0+0224 <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+0224 [A-Z0-9_]*HI[A-Z0-9_]* .sbss.*
+0+0228 <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+0228 [A-Z0-9_]*LO[A-Z0-9_]* .sbss.*
+0+022c <[^>]*> addu \$a0,\$a0,\$a1
+0+0230 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+0230 [A-Z0-9_]*HI[A-Z0-9_]* .data.*
+0+0234 <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+0234 [A-Z0-9_]*LO[A-Z0-9_]* .data.*
+0+0238 <[^>]*> addu \$a0,\$a0,\$a1
+0+023c <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+023c [A-Z0-9_]*HI[A-Z0-9_]* big_external_data_label
+0+0240 <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+0240 [A-Z0-9_]*LO[A-Z0-9_]* big_external_data_label
+0+0244 <[^>]*> addu \$a0,\$a0,\$a1
+0+0248 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+0248 [A-Z0-9_]*HI[A-Z0-9_]* small_external_data_label
+0+024c <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+024c [A-Z0-9_]*LO[A-Z0-9_]* small_external_data_label
+0+0250 <[^>]*> addu \$a0,\$a0,\$a1
+0+0254 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+0254 [A-Z0-9_]*HI[A-Z0-9_]* big_external_common
+0+0258 <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+0258 [A-Z0-9_]*LO[A-Z0-9_]* big_external_common
+0+025c <[^>]*> addu \$a0,\$a0,\$a1
+0+0260 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+0260 [A-Z0-9_]*HI[A-Z0-9_]* small_external_common
+0+0264 <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+0264 [A-Z0-9_]*LO[A-Z0-9_]* small_external_common
+0+0268 <[^>]*> addu \$a0,\$a0,\$a1
+0+026c <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+026c [A-Z0-9_]*HI[A-Z0-9_]* .bss.*
+0+0270 <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+0270 [A-Z0-9_]*LO[A-Z0-9_]* .bss.*
+0+0274 <[^>]*> addu \$a0,\$a0,\$a1
+0+0278 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+0278 [A-Z0-9_]*HI[A-Z0-9_]* .sbss.*
+0+027c <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+027c [A-Z0-9_]*LO[A-Z0-9_]* .sbss.*
+0+0280 <[^>]*> addu \$a0,\$a0,\$a1
+0+0284 <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+0284 [A-Z0-9_]*HI[A-Z0-9_]* .data.*
+0+0288 <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+0288 [A-Z0-9_]*LO[A-Z0-9_]* .data.*
+0+028c <[^>]*> addu \$a0,\$a0,\$a1
+0+0290 <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+0290 [A-Z0-9_]*HI[A-Z0-9_]* big_external_data_label
+0+0294 <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+0294 [A-Z0-9_]*LO[A-Z0-9_]* big_external_data_label
+0+0298 <[^>]*> addu \$a0,\$a0,\$a1
+0+029c <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+029c [A-Z0-9_]*HI[A-Z0-9_]* small_external_data_label
+0+02a0 <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+02a0 [A-Z0-9_]*LO[A-Z0-9_]* small_external_data_label
+0+02a4 <[^>]*> addu \$a0,\$a0,\$a1
+0+02a8 <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+02a8 [A-Z0-9_]*HI[A-Z0-9_]* big_external_common
+0+02ac <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+02ac [A-Z0-9_]*LO[A-Z0-9_]* big_external_common
+0+02b0 <[^>]*> addu \$a0,\$a0,\$a1
+0+02b4 <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+02b4 [A-Z0-9_]*HI[A-Z0-9_]* small_external_common
+0+02b8 <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+02b8 [A-Z0-9_]*LO[A-Z0-9_]* small_external_common
+0+02bc <[^>]*> addu \$a0,\$a0,\$a1
+0+02c0 <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+02c0 [A-Z0-9_]*HI[A-Z0-9_]* .bss.*
+0+02c4 <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+02c4 [A-Z0-9_]*LO[A-Z0-9_]* .bss.*
+0+02c8 <[^>]*> addu \$a0,\$a0,\$a1
+0+02cc <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+02cc [A-Z0-9_]*HI[A-Z0-9_]* .sbss.*
+0+02d0 <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+02d0 [A-Z0-9_]*LO[A-Z0-9_]* .sbss.*
+0+02d4 <[^>]*> addu \$a0,\$a0,\$a1
+0+02d8 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+02d8 [A-Z0-9_]*HI[A-Z0-9_]* .data.*
+0+02dc <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+02dc [A-Z0-9_]*LO[A-Z0-9_]* .data.*
+0+02e0 <[^>]*> addu \$a0,\$a0,\$a1
+0+02e4 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+02e4 [A-Z0-9_]*HI[A-Z0-9_]* big_external_data_label
+0+02e8 <[^>]*> addiu \$a0,\$a0,0
+[ ]*RELOC: 0+02e8 [A-Z0-9_]*LO[A-Z0-9_]* big_external_data_label
+0+02ec <[^>]*> addu \$a0,\$a0,\$a1
+0+02f0 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+02f0 [A-Z0-9_]*HI[A-Z0-9_]* small_external_data_label
+0+02f4 <[^>]*> addiu \$a0,\$a0,0
+[ ]*RELOC: 0+02f4 [A-Z0-9_]*LO[A-Z0-9_]* small_external_data_label
+0+02f8 <[^>]*> addu \$a0,\$a0,\$a1
+0+02fc <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+02fc [A-Z0-9_]*HI[A-Z0-9_]* big_external_common
+0+0300 <[^>]*> addiu \$a0,\$a0,0
+[ ]*RELOC: 0+0300 [A-Z0-9_]*LO[A-Z0-9_]* big_external_common
+0+0304 <[^>]*> addu \$a0,\$a0,\$a1
+0+0308 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+0308 [A-Z0-9_]*HI[A-Z0-9_]* small_external_common
+0+030c <[^>]*> addiu \$a0,\$a0,0
+[ ]*RELOC: 0+030c [A-Z0-9_]*LO[A-Z0-9_]* small_external_common
+0+0310 <[^>]*> addu \$a0,\$a0,\$a1
+0+0314 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+0314 [A-Z0-9_]*HI[A-Z0-9_]* .bss.*
+0+0318 <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+0318 [A-Z0-9_]*LO[A-Z0-9_]* .bss.*
+0+031c <[^>]*> addu \$a0,\$a0,\$a1
+0+0320 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+0320 [A-Z0-9_]*HI[A-Z0-9_]* .sbss.*
+0+0324 <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+0324 [A-Z0-9_]*LO[A-Z0-9_]* .sbss.*
+0+0328 <[^>]*> addu \$a0,\$a0,\$a1
+0+032c <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+032c [A-Z0-9_]*HI[A-Z0-9_]* .data.*
+0+0330 <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+0330 [A-Z0-9_]*LO[A-Z0-9_]* .data.*
+0+0334 <[^>]*> addu \$a0,\$a0,\$a1
+0+0338 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+0338 [A-Z0-9_]*HI[A-Z0-9_]* big_external_data_label
+0+033c <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+033c [A-Z0-9_]*LO[A-Z0-9_]* big_external_data_label
+0+0340 <[^>]*> addu \$a0,\$a0,\$a1
+0+0344 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+0344 [A-Z0-9_]*HI[A-Z0-9_]* small_external_data_label
+0+0348 <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+0348 [A-Z0-9_]*LO[A-Z0-9_]* small_external_data_label
+0+034c <[^>]*> addu \$a0,\$a0,\$a1
+0+0350 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+0350 [A-Z0-9_]*HI[A-Z0-9_]* big_external_common
+0+0354 <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+0354 [A-Z0-9_]*LO[A-Z0-9_]* big_external_common
+0+0358 <[^>]*> addu \$a0,\$a0,\$a1
+0+035c <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+035c [A-Z0-9_]*HI[A-Z0-9_]* small_external_common
+0+0360 <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+0360 [A-Z0-9_]*LO[A-Z0-9_]* small_external_common
+0+0364 <[^>]*> addu \$a0,\$a0,\$a1
+0+0368 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+0368 [A-Z0-9_]*HI[A-Z0-9_]* .bss.*
+0+036c <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+036c [A-Z0-9_]*LO[A-Z0-9_]* .bss.*
+0+0370 <[^>]*> addu \$a0,\$a0,\$a1
+0+0374 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+0374 [A-Z0-9_]*HI[A-Z0-9_]* .sbss.*
+0+0378 <[^>]*> addiu \$a0,\$a0,[-0-9]+
+[ ]*RELOC: 0+0378 [A-Z0-9_]*LO[A-Z0-9_]* .sbss.*
+0+037c <[^>]*> addu \$a0,\$a0,\$a1
diff --git a/gas/testsuite/gas/mips/lb-empic.d b/gas/testsuite/gas/mips/lb-empic.d
index db4127f..a1c2e87 100644
--- a/gas/testsuite/gas/mips/lb-empic.d
+++ b/gas/testsuite/gas/mips/lb-empic.d
@@ -1,5 +1,5 @@
#objdump: -dr
-#name: lb-empic
+#name: MIPS lb-empic
#as: -mips1 -membedded-pic
#source: lb-pic.s
diff --git a/gas/testsuite/gas/mips/lb-svr4pic.d b/gas/testsuite/gas/mips/lb-svr4pic.d
new file mode 100644
index 0000000..590626d
--- /dev/null
+++ b/gas/testsuite/gas/mips/lb-svr4pic.d
@@ -0,0 +1,182 @@
+#objdump: -dr
+#name: MIPS lb-svr4pic
+#as: -mips1 -KPIC
+#source: lb-pic.s
+
+# Test the lb macro with -KPIC.
+
+.*: +file format .*mips.*
+
+Disassembly of section .text:
+0+0000 <[^>]*> lb \$a0,0\(\$zero\)
+0+0004 <[^>]*> lb \$a0,1\(\$zero\)
+0+0008 <[^>]*> lui \$a0,1
+0+000c <[^>]*> lb \$a0,-32768\(\$a0\)
+0+0010 <[^>]*> lb \$a0,-32768\(\$zero\)
+0+0014 <[^>]*> lui \$a0,1
+0+0018 <[^>]*> lb \$a0,0\(\$a0\)
+0+001c <[^>]*> lui \$a0,2
+0+0020 <[^>]*> lb \$a0,-23131\(\$a0\)
+0+0024 <[^>]*> lb \$a0,0\(\$a1\)
+0+0028 <[^>]*> lb \$a0,1\(\$a1\)
+0+002c <[^>]*> lui \$a0,1
+0+0030 <[^>]*> addu \$a0,\$a0,\$a1
+0+0034 <[^>]*> lb \$a0,-32768\(\$a0\)
+0+0038 <[^>]*> lb \$a0,-32768\(\$a1\)
+0+003c <[^>]*> lui \$a0,1
+0+0040 <[^>]*> addu \$a0,\$a0,\$a1
+0+0044 <[^>]*> lb \$a0,0\(\$a0\)
+0+0048 <[^>]*> lui \$a0,2
+0+004c <[^>]*> addu \$a0,\$a0,\$a1
+0+0050 <[^>]*> lb \$a0,-23131\(\$a0\)
+0+0054 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+0054 R_MIPS_GOT16 .data
+...
+0+005c <[^>]*> addiu \$a0,\$a0,0
+[ ]*RELOC: 0+005c R_MIPS_LO16 .data
+0+0060 <[^>]*> lb \$a0,0\(\$a0\)
+0+0064 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+0064 R_MIPS_GOT16 big_external_data_label
+...
+0+006c <[^>]*> lb \$a0,0\(\$a0\)
+0+0070 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+0070 R_MIPS_GOT16 small_external_data_label
+...
+0+0078 <[^>]*> lb \$a0,0\(\$a0\)
+0+007c <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+007c R_MIPS_GOT16 big_external_common
+...
+0+0084 <[^>]*> lb \$a0,0\(\$a0\)
+0+0088 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+0088 R_MIPS_GOT16 small_external_common
+...
+0+0090 <[^>]*> lb \$a0,0\(\$a0\)
+0+0094 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+0094 R_MIPS_GOT16 .bss
+...
+0+009c <[^>]*> addiu \$a0,\$a0,0
+[ ]*RELOC: 0+009c R_MIPS_LO16 .bss
+0+00a0 <[^>]*> lb \$a0,0\(\$a0\)
+0+00a4 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+00a4 R_MIPS_GOT16 .bss
+...
+0+00ac <[^>]*> addiu \$a0,\$a0,1000
+[ ]*RELOC: 0+00ac R_MIPS_LO16 .bss
+0+00b0 <[^>]*> lb \$a0,0\(\$a0\)
+0+00b4 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+00b4 R_MIPS_GOT16 .data
+...
+0+00bc <[^>]*> addiu \$a0,\$a0,0
+[ ]*RELOC: 0+00bc R_MIPS_LO16 .data
+0+00c0 <[^>]*> lb \$a0,1\(\$a0\)
+0+00c4 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+00c4 R_MIPS_GOT16 big_external_data_label
+...
+0+00cc <[^>]*> lb \$a0,1\(\$a0\)
+0+00d0 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+00d0 R_MIPS_GOT16 small_external_data_label
+...
+0+00d8 <[^>]*> lb \$a0,1\(\$a0\)
+0+00dc <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+00dc R_MIPS_GOT16 big_external_common
+...
+0+00e4 <[^>]*> lb \$a0,1\(\$a0\)
+0+00e8 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+00e8 R_MIPS_GOT16 small_external_common
+...
+0+00f0 <[^>]*> lb \$a0,1\(\$a0\)
+0+00f4 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+00f4 R_MIPS_GOT16 .bss
+...
+0+00fc <[^>]*> addiu \$a0,\$a0,0
+[ ]*RELOC: 0+00fc R_MIPS_LO16 .bss
+0+0100 <[^>]*> lb \$a0,1\(\$a0\)
+0+0104 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+0104 R_MIPS_GOT16 .bss
+...
+0+010c <[^>]*> addiu \$a0,\$a0,1000
+[ ]*RELOC: 0+010c R_MIPS_LO16 .bss
+0+0110 <[^>]*> lb \$a0,1\(\$a0\)
+0+0114 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+0114 R_MIPS_GOT16 .data
+...
+0+011c <[^>]*> addiu \$a0,\$a0,0
+[ ]*RELOC: 0+011c R_MIPS_LO16 .data
+0+0120 <[^>]*> addu \$a0,\$a0,\$a1
+0+0124 <[^>]*> lb \$a0,0\(\$a0\)
+0+0128 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+0128 R_MIPS_GOT16 big_external_data_label
+...
+0+0130 <[^>]*> addu \$a0,\$a0,\$a1
+0+0134 <[^>]*> lb \$a0,0\(\$a0\)
+0+0138 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+0138 R_MIPS_GOT16 small_external_data_label
+...
+0+0140 <[^>]*> addu \$a0,\$a0,\$a1
+0+0144 <[^>]*> lb \$a0,0\(\$a0\)
+0+0148 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+0148 R_MIPS_GOT16 big_external_common
+...
+0+0150 <[^>]*> addu \$a0,\$a0,\$a1
+0+0154 <[^>]*> lb \$a0,0\(\$a0\)
+0+0158 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+0158 R_MIPS_GOT16 small_external_common
+...
+0+0160 <[^>]*> addu \$a0,\$a0,\$a1
+0+0164 <[^>]*> lb \$a0,0\(\$a0\)
+0+0168 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+0168 R_MIPS_GOT16 .bss
+...
+0+0170 <[^>]*> addiu \$a0,\$a0,0
+[ ]*RELOC: 0+0170 R_MIPS_LO16 .bss
+0+0174 <[^>]*> addu \$a0,\$a0,\$a1
+0+0178 <[^>]*> lb \$a0,0\(\$a0\)
+0+017c <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+017c R_MIPS_GOT16 .bss
+...
+0+0184 <[^>]*> addiu \$a0,\$a0,1000
+[ ]*RELOC: 0+0184 R_MIPS_LO16 .bss
+0+0188 <[^>]*> addu \$a0,\$a0,\$a1
+0+018c <[^>]*> lb \$a0,0\(\$a0\)
+0+0190 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+0190 R_MIPS_GOT16 .data
+...
+0+0198 <[^>]*> addiu \$a0,\$a0,0
+[ ]*RELOC: 0+0198 R_MIPS_LO16 .data
+0+019c <[^>]*> addu \$a0,\$a0,\$a1
+0+01a0 <[^>]*> lb \$a0,1\(\$a0\)
+0+01a4 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+01a4 R_MIPS_GOT16 big_external_data_label
+...
+0+01ac <[^>]*> addu \$a0,\$a0,\$a1
+0+01b0 <[^>]*> lb \$a0,1\(\$a0\)
+0+01b4 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+01b4 R_MIPS_GOT16 small_external_data_label
+...
+0+01bc <[^>]*> addu \$a0,\$a0,\$a1
+0+01c0 <[^>]*> lb \$a0,1\(\$a0\)
+0+01c4 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+01c4 R_MIPS_GOT16 big_external_common
+...
+0+01cc <[^>]*> addu \$a0,\$a0,\$a1
+0+01d0 <[^>]*> lb \$a0,1\(\$a0\)
+0+01d4 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+01d4 R_MIPS_GOT16 small_external_common
+...
+0+01dc <[^>]*> addu \$a0,\$a0,\$a1
+0+01e0 <[^>]*> lb \$a0,1\(\$a0\)
+0+01e4 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+01e4 R_MIPS_GOT16 .bss
+...
+0+01ec <[^>]*> addiu \$a0,\$a0,0
+[ ]*RELOC: 0+01ec R_MIPS_LO16 .bss
+0+01f0 <[^>]*> addu \$a0,\$a0,\$a1
+0+01f4 <[^>]*> lb \$a0,1\(\$a0\)
+0+01f8 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*RELOC: 0+01f8 R_MIPS_GOT16 .bss
+...
+0+0200 <[^>]*> addiu \$a0,\$a0,1000
+[ ]*RELOC: 0+0200 R_MIPS_LO16 .bss
+0+0204 <[^>]*> addu \$a0,\$a0,\$a1
+0+0208 <[^>]*> lb \$a0,1\(\$a0\)
+...
diff --git a/gas/testsuite/gas/mips/lb.d b/gas/testsuite/gas/mips/lb.d
new file mode 100644
index 0000000..9a9061e
--- /dev/null
+++ b/gas/testsuite/gas/mips/lb.d
@@ -0,0 +1,407 @@
+#objdump: -dr
+#name: MIPS lb
+#as: -mips1
+
+# Test the lb macro.
+
+.*: +file format .*mips.*
+
+Disassembly of section .text:
+0+0000 <[^>]*> lb \$a0,0\(\$zero\)
+0+0004 <[^>]*> lb \$a0,1\(\$zero\)
+0+0008 <[^>]*> lui \$a0,1
+0+000c <[^>]*> lb \$a0,-32768\(\$a0\)
+0+0010 <[^>]*> lb \$a0,-32768\(\$zero\)
+0+0014 <[^>]*> lui \$a0,1
+0+0018 <[^>]*> lb \$a0,0\(\$a0\)
+0+001c <[^>]*> lui \$a0,2
+0+0020 <[^>]*> lb \$a0,-23131\(\$a0\)
+0+0024 <[^>]*> lb \$a0,0\(\$a1\)
+0+0028 <[^>]*> lb \$a0,1\(\$a1\)
+0+002c <[^>]*> lui \$a0,1
+0+0030 <[^>]*> addu \$a0,\$a0,\$a1
+0+0034 <[^>]*> lb \$a0,-32768\(\$a0\)
+0+0038 <[^>]*> lb \$a0,-32768\(\$a1\)
+0+003c <[^>]*> lui \$a0,1
+0+0040 <[^>]*> addu \$a0,\$a0,\$a1
+0+0044 <[^>]*> lb \$a0,0\(\$a0\)
+0+0048 <[^>]*> lui \$a0,2
+0+004c <[^>]*> addu \$a0,\$a0,\$a1
+0+0050 <[^>]*> lb \$a0,-23131\(\$a0\)
+0+0054 <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+0054 [A-Z0-9_]*HI[A-Z0-9_]* .data.*
+0+0058 <[^>]*> lb \$a0,[0-9]+\(\$a0\)
+[ ]*RELOC: 0+0058 [A-Z0-9_]*LO[A-Z0-9_]* .data.*
+0+005c <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+005c [A-Z0-9_]*HI[A-Z0-9_]* big_external_data_label
+0+0060 <[^>]*> lb \$a0,0\(\$a0\)
+[ ]*RELOC: 0+0060 [A-Z0-9_]*LO[A-Z0-9_]* big_external_data_label
+0+0064 <[^>]*> lb \$a0,0\(\$gp\)
+[ ]*RELOC: 0+0064 [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
+0+0068 <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+0068 [A-Z0-9_]*HI[A-Z0-9_]* big_external_common
+0+006c <[^>]*> lb \$a0,0\(\$a0\)
+[ ]*RELOC: 0+006c [A-Z0-9_]*LO[A-Z0-9_]* big_external_common
+0+0070 <[^>]*> lb \$a0,0\(\$gp\)
+[ ]*RELOC: 0+0070 [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
+0+0074 <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+0074 [A-Z0-9_]*HI[A-Z0-9_]* .bss.*
+0+0078 <[^>]*> lb \$a0,[0-9]+\(\$a0\)
+[ ]*RELOC: 0+0078 [A-Z0-9_]*LO[A-Z0-9_]* .bss.*
+0+007c <[^>]*> lb \$a0,-16384\(\$gp\)
+[ ]*RELOC: 0+007c [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
+0+0080 <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+0080 [A-Z0-9_]*HI[A-Z0-9_]* .data.*
+0+0084 <[^>]*> lb \$a0,[0-9]+\(\$a0\)
+[ ]*RELOC: 0+0084 [A-Z0-9_]*LO[A-Z0-9_]* .data.*
+0+0088 <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+0088 [A-Z0-9_]*HI[A-Z0-9_]* big_external_data_label
+0+008c <[^>]*> lb \$a0,1\(\$a0\)
+[ ]*RELOC: 0+008c [A-Z0-9_]*LO[A-Z0-9_]* big_external_data_label
+0+0090 <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+0090 [A-Z0-9_]*HI[A-Z0-9_]* small_external_data_label
+0+0094 <[^>]*> lb \$a0,1\(\$a0\)
+[ ]*RELOC: 0+0094 [A-Z0-9_]*LO[A-Z0-9_]* small_external_data_label
+0+0098 <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+0098 [A-Z0-9_]*HI[A-Z0-9_]* big_external_common
+0+009c <[^>]*> lb \$a0,1\(\$a0\)
+[ ]*RELOC: 0+009c [A-Z0-9_]*LO[A-Z0-9_]* big_external_common
+0+00a0 <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+00a0 [A-Z0-9_]*HI[A-Z0-9_]* small_external_common
+0+00a4 <[^>]*> lb \$a0,1\(\$a0\)
+[ ]*RELOC: 0+00a4 [A-Z0-9_]*LO[A-Z0-9_]* small_external_common
+0+00a8 <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+00a8 [A-Z0-9_]*HI[A-Z0-9_]* .bss.*
+0+00ac <[^>]*> lb \$a0,[0-9]+\(\$a0\)
+[ ]*RELOC: 0+00ac [A-Z0-9_]*LO[A-Z0-9_]* .bss.*
+0+00b0 <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+00b0 [A-Z0-9_]*HI[A-Z0-9_]* .sbss.*
+0+00b4 <[^>]*> lb \$a0,[0-9]+\(\$a0\)
+[ ]*RELOC: 0+00b4 [A-Z0-9_]*LO[A-Z0-9_]* .sbss.*
+0+00b8 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+00b8 [A-Z0-9_]*HI[A-Z0-9_]* .data.*
+0+00bc <[^>]*> lb \$a0,[-0-9]+\(\$a0\)
+[ ]*RELOC: 0+00bc [A-Z0-9_]*LO[A-Z0-9_]* .data.*
+0+00c0 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+00c0 [A-Z0-9_]*HI[A-Z0-9_]* big_external_data_label
+0+00c4 <[^>]*> lb \$a0,[-0-9]+\(\$a0\)
+[ ]*RELOC: 0+00c4 [A-Z0-9_]*LO[A-Z0-9_]* big_external_data_label
+0+00c8 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+00c8 [A-Z0-9_]*HI[A-Z0-9_]* small_external_data_label
+0+00cc <[^>]*> lb \$a0,[-0-9]+\(\$a0\)
+[ ]*RELOC: 0+00cc [A-Z0-9_]*LO[A-Z0-9_]* small_external_data_label
+0+00d0 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+00d0 [A-Z0-9_]*HI[A-Z0-9_]* big_external_common
+0+00d4 <[^>]*> lb \$a0,[-0-9]+\(\$a0\)
+[ ]*RELOC: 0+00d4 [A-Z0-9_]*LO[A-Z0-9_]* big_external_common
+0+00d8 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+00d8 [A-Z0-9_]*HI[A-Z0-9_]* small_external_common
+0+00dc <[^>]*> lb \$a0,[-0-9]+\(\$a0\)
+[ ]*RELOC: 0+00dc [A-Z0-9_]*LO[A-Z0-9_]* small_external_common
+0+00e0 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+00e0 [A-Z0-9_]*HI[A-Z0-9_]* .bss.*
+0+00e4 <[^>]*> lb \$a0,[-0-9]+\(\$a0\)
+[ ]*RELOC: 0+00e4 [A-Z0-9_]*LO[A-Z0-9_]* .bss.*
+0+00e8 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+00e8 [A-Z0-9_]*HI[A-Z0-9_]* .sbss.*
+0+00ec <[^>]*> lb \$a0,[-0-9]+\(\$a0\)
+[ ]*RELOC: 0+00ec [A-Z0-9_]*LO[A-Z0-9_]* .sbss.*
+0+00f0 <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+00f0 [A-Z0-9_]*HI[A-Z0-9_]* .data.*
+0+00f4 <[^>]*> lb \$a0,[-0-9]+\(\$a0\)
+[ ]*RELOC: 0+00f4 [A-Z0-9_]*LO[A-Z0-9_]* .data.*
+0+00f8 <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+00f8 [A-Z0-9_]*HI[A-Z0-9_]* big_external_data_label
+0+00fc <[^>]*> lb \$a0,[-0-9]+\(\$a0\)
+[ ]*RELOC: 0+00fc [A-Z0-9_]*LO[A-Z0-9_]* big_external_data_label
+0+0100 <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+0100 [A-Z0-9_]*HI[A-Z0-9_]* small_external_data_label
+0+0104 <[^>]*> lb \$a0,[-0-9]+\(\$a0\)
+[ ]*RELOC: 0+0104 [A-Z0-9_]*LO[A-Z0-9_]* small_external_data_label
+0+0108 <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+0108 [A-Z0-9_]*HI[A-Z0-9_]* big_external_common
+0+010c <[^>]*> lb \$a0,[-0-9]+\(\$a0\)
+[ ]*RELOC: 0+010c [A-Z0-9_]*LO[A-Z0-9_]* big_external_common
+0+0110 <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+0110 [A-Z0-9_]*HI[A-Z0-9_]* small_external_common
+0+0114 <[^>]*> lb \$a0,[-0-9]+\(\$a0\)
+[ ]*RELOC: 0+0114 [A-Z0-9_]*LO[A-Z0-9_]* small_external_common
+0+0118 <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+0118 [A-Z0-9_]*HI[A-Z0-9_]* .bss.*
+0+011c <[^>]*> lb \$a0,[-0-9]+\(\$a0\)
+[ ]*RELOC: 0+011c [A-Z0-9_]*LO[A-Z0-9_]* .bss.*
+0+0120 <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+0120 [A-Z0-9_]*HI[A-Z0-9_]* .sbss.*
+0+0124 <[^>]*> lb \$a0,[-0-9]+\(\$a0\)
+[ ]*RELOC: 0+0124 [A-Z0-9_]*LO[A-Z0-9_]* .sbss.*
+0+0128 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+0128 [A-Z0-9_]*HI[A-Z0-9_]* .data.*
+0+012c <[^>]*> lb \$a0,[0-9]+\(\$a0\)
+[ ]*RELOC: 0+012c [A-Z0-9_]*LO[A-Z0-9_]* .data.*
+0+0130 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+0130 [A-Z0-9_]*HI[A-Z0-9_]* big_external_data_label
+0+0134 <[^>]*> lb \$a0,0\(\$a0\)
+[ ]*RELOC: 0+0134 [A-Z0-9_]*LO[A-Z0-9_]* big_external_data_label
+0+0138 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+0138 [A-Z0-9_]*HI[A-Z0-9_]* small_external_data_label
+0+013c <[^>]*> lb \$a0,0\(\$a0\)
+[ ]*RELOC: 0+013c [A-Z0-9_]*LO[A-Z0-9_]* small_external_data_label
+0+0140 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+0140 [A-Z0-9_]*HI[A-Z0-9_]* big_external_common
+0+0144 <[^>]*> lb \$a0,0\(\$a0\)
+[ ]*RELOC: 0+0144 [A-Z0-9_]*LO[A-Z0-9_]* big_external_common
+0+0148 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+0148 [A-Z0-9_]*HI[A-Z0-9_]* small_external_common
+0+014c <[^>]*> lb \$a0,0\(\$a0\)
+[ ]*RELOC: 0+014c [A-Z0-9_]*LO[A-Z0-9_]* small_external_common
+0+0150 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+0150 [A-Z0-9_]*HI[A-Z0-9_]* .bss.*
+0+0154 <[^>]*> lb \$a0,[0-9]+\(\$a0\)
+[ ]*RELOC: 0+0154 [A-Z0-9_]*LO[A-Z0-9_]* .bss.*
+0+0158 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+0158 [A-Z0-9_]*HI[A-Z0-9_]* .sbss.*
+0+015c <[^>]*> lb \$a0,[-0-9]+\(\$a0\)
+[ ]*RELOC: 0+015c [A-Z0-9_]*LO[A-Z0-9_]* .sbss.*
+0+0160 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+0160 [A-Z0-9_]*HI[A-Z0-9_]* .data.*
+0+0164 <[^>]*> lb \$a0,[-0-9]+\(\$a0\)
+[ ]*RELOC: 0+0164 [A-Z0-9_]*LO[A-Z0-9_]* .data.*
+0+0168 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+0168 [A-Z0-9_]*HI[A-Z0-9_]* big_external_data_label
+0+016c <[^>]*> lb \$a0,[-0-9]+\(\$a0\)
+[ ]*RELOC: 0+016c [A-Z0-9_]*LO[A-Z0-9_]* big_external_data_label
+0+0170 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+0170 [A-Z0-9_]*HI[A-Z0-9_]* small_external_data_label
+0+0174 <[^>]*> lb \$a0,[-0-9]+\(\$a0\)
+[ ]*RELOC: 0+0174 [A-Z0-9_]*LO[A-Z0-9_]* small_external_data_label
+0+0178 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+0178 [A-Z0-9_]*HI[A-Z0-9_]* big_external_common
+0+017c <[^>]*> lb \$a0,[-0-9]+\(\$a0\)
+[ ]*RELOC: 0+017c [A-Z0-9_]*LO[A-Z0-9_]* big_external_common
+0+0180 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+0180 [A-Z0-9_]*HI[A-Z0-9_]* small_external_common
+0+0184 <[^>]*> lb \$a0,[-0-9]+\(\$a0\)
+[ ]*RELOC: 0+0184 [A-Z0-9_]*LO[A-Z0-9_]* small_external_common
+0+0188 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+0188 [A-Z0-9_]*HI[A-Z0-9_]* .bss.*
+0+018c <[^>]*> lb \$a0,[-0-9]+\(\$a0\)
+[ ]*RELOC: 0+018c [A-Z0-9_]*LO[A-Z0-9_]* .bss.*
+0+0190 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+0190 [A-Z0-9_]*HI[A-Z0-9_]* .sbss.*
+0+0194 <[^>]*> lb \$a0,[-0-9]+\(\$a0\)
+[ ]*RELOC: 0+0194 [A-Z0-9_]*LO[A-Z0-9_]* .sbss.*
+0+0198 <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+0198 [A-Z0-9_]*HI[A-Z0-9_]* .data.*
+0+019c <[^>]*> addu \$a0,\$a0,\$a1
+0+01a0 <[^>]*> lb \$a0,[0-9]+\(\$a0\)
+[ ]*RELOC: 0+01a0 [A-Z0-9_]*LO[A-Z0-9_]* .data.*
+0+01a4 <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+01a4 [A-Z0-9_]*HI[A-Z0-9_]* big_external_data_label
+0+01a8 <[^>]*> addu \$a0,\$a0,\$a1
+0+01ac <[^>]*> lb \$a0,0\(\$a0\)
+[ ]*RELOC: 0+01ac [A-Z0-9_]*LO[A-Z0-9_]* big_external_data_label
+0+01b0 <[^>]*> addu \$a0,\$a1,\$gp
+0+01b4 <[^>]*> lb \$a0,0\(\$a0\)
+[ ]*RELOC: 0+01b4 [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
+0+01b8 <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+01b8 [A-Z0-9_]*HI[A-Z0-9_]* big_external_common
+0+01bc <[^>]*> addu \$a0,\$a0,\$a1
+0+01c0 <[^>]*> lb \$a0,0\(\$a0\)
+[ ]*RELOC: 0+01c0 [A-Z0-9_]*LO[A-Z0-9_]* big_external_common
+0+01c4 <[^>]*> addu \$a0,\$a1,\$gp
+0+01c8 <[^>]*> lb \$a0,0\(\$a0\)
+[ ]*RELOC: 0+01c8 [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
+0+01cc <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+01cc [A-Z0-9_]*HI[A-Z0-9_]* .bss.*
+0+01d0 <[^>]*> addu \$a0,\$a0,\$a1
+0+01d4 <[^>]*> lb \$a0,[0-9]+\(\$a0\)
+[ ]*RELOC: 0+01d4 [A-Z0-9_]*LO[A-Z0-9_]* .bss.*
+0+01d8 <[^>]*> addu \$a0,\$a1,\$gp
+0+01dc <[^>]*> lb \$a0,[-0-9]+\(\$a0\)
+[ ]*RELOC: 0+01dc [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
+0+01e0 <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+01e0 [A-Z0-9_]*HI[A-Z0-9_]* .data.*
+0+01e4 <[^>]*> addu \$a0,\$a0,\$a1
+0+01e8 <[^>]*> lb \$a0,[0-9]+\(\$a0\)
+[ ]*RELOC: 0+01e8 [A-Z0-9_]*LO[A-Z0-9_]* .data.*
+0+01ec <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+01ec [A-Z0-9_]*HI[A-Z0-9_]* big_external_data_label
+0+01f0 <[^>]*> addu \$a0,\$a0,\$a1
+0+01f4 <[^>]*> lb \$a0,[-0-9]+\(\$a0\)
+[ ]*RELOC: 0+01f4 [A-Z0-9_]*LO[A-Z0-9_]* big_external_data_label
+0+01f8 <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+01f8 [A-Z0-9_]*HI[A-Z0-9_]* small_external_data_label
+0+01fc <[^>]*> addu \$a0,\$a0,\$a1
+0+0200 <[^>]*> lb \$a0,[-0-9]+\(\$a0\)
+[ ]*RELOC: 0+0200 [A-Z0-9_]*LO[A-Z0-9_]* small_external_data_label
+0+0204 <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+0204 [A-Z0-9_]*HI[A-Z0-9_]* big_external_common
+0+0208 <[^>]*> addu \$a0,\$a0,\$a1
+0+020c <[^>]*> lb \$a0,[-0-9]+\(\$a0\)
+[ ]*RELOC: 0+020c [A-Z0-9_]*LO[A-Z0-9_]* big_external_common
+0+0210 <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+0210 [A-Z0-9_]*HI[A-Z0-9_]* small_external_common
+0+0214 <[^>]*> addu \$a0,\$a0,\$a1
+0+0218 <[^>]*> lb \$a0,[-0-9]+\(\$a0\)
+[ ]*RELOC: 0+0218 [A-Z0-9_]*LO[A-Z0-9_]* small_external_common
+0+021c <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+021c [A-Z0-9_]*HI[A-Z0-9_]* .bss.*
+0+0220 <[^>]*> addu \$a0,\$a0,\$a1
+0+0224 <[^>]*> lb \$a0,[0-9]+\(\$a0\)
+[ ]*RELOC: 0+0224 [A-Z0-9_]*LO[A-Z0-9_]* .bss.*
+0+0228 <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+0228 [A-Z0-9_]*HI[A-Z0-9_]* .sbss.*
+0+022c <[^>]*> addu \$a0,\$a0,\$a1
+0+0230 <[^>]*> lb \$a0,[0-9]+\(\$a0\)
+[ ]*RELOC: 0+0230 [A-Z0-9_]*LO[A-Z0-9_]* .sbss.*
+0+0234 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+0234 [A-Z0-9_]*HI[A-Z0-9_]* .data.*
+0+0238 <[^>]*> addu \$a0,\$a0,\$a1
+0+023c <[^>]*> lb \$a0,[-0-9]+\(\$a0\)
+[ ]*RELOC: 0+023c [A-Z0-9_]*LO[A-Z0-9_]* .data.*
+0+0240 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+0240 [A-Z0-9_]*HI[A-Z0-9_]* big_external_data_label
+0+0244 <[^>]*> addu \$a0,\$a0,\$a1
+0+0248 <[^>]*> lb \$a0,[-0-9]+\(\$a0\)
+[ ]*RELOC: 0+0248 [A-Z0-9_]*LO[A-Z0-9_]* big_external_data_label
+0+024c <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+024c [A-Z0-9_]*HI[A-Z0-9_]* small_external_data_label
+0+0250 <[^>]*> addu \$a0,\$a0,\$a1
+0+0254 <[^>]*> lb \$a0,[-0-9]+\(\$a0\)
+[ ]*RELOC: 0+0254 [A-Z0-9_]*LO[A-Z0-9_]* small_external_data_label
+0+0258 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+0258 [A-Z0-9_]*HI[A-Z0-9_]* big_external_common
+0+025c <[^>]*> addu \$a0,\$a0,\$a1
+0+0260 <[^>]*> lb \$a0,[-0-9]+\(\$a0\)
+[ ]*RELOC: 0+0260 [A-Z0-9_]*LO[A-Z0-9_]* big_external_common
+0+0264 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+0264 [A-Z0-9_]*HI[A-Z0-9_]* small_external_common
+0+0268 <[^>]*> addu \$a0,\$a0,\$a1
+0+026c <[^>]*> lb \$a0,[-0-9]+\(\$a0\)
+[ ]*RELOC: 0+026c [A-Z0-9_]*LO[A-Z0-9_]* small_external_common
+0+0270 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+0270 [A-Z0-9_]*HI[A-Z0-9_]* .bss.*
+0+0274 <[^>]*> addu \$a0,\$a0,\$a1
+0+0278 <[^>]*> lb \$a0,[-0-9]+\(\$a0\)
+[ ]*RELOC: 0+0278 [A-Z0-9_]*LO[A-Z0-9_]* .bss.*
+0+027c <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+027c [A-Z0-9_]*HI[A-Z0-9_]* .sbss.*
+0+0280 <[^>]*> addu \$a0,\$a0,\$a1
+0+0284 <[^>]*> lb \$a0,[-0-9]+\(\$a0\)
+[ ]*RELOC: 0+0284 [A-Z0-9_]*LO[A-Z0-9_]* .sbss.*
+0+0288 <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+0288 [A-Z0-9_]*HI[A-Z0-9_]* .data.*
+0+028c <[^>]*> addu \$a0,\$a0,\$a1
+0+0290 <[^>]*> lb \$a0,[-0-9]+\(\$a0\)
+[ ]*RELOC: 0+0290 [A-Z0-9_]*LO[A-Z0-9_]* .data.*
+0+0294 <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+0294 [A-Z0-9_]*HI[A-Z0-9_]* big_external_data_label
+0+0298 <[^>]*> addu \$a0,\$a0,\$a1
+0+029c <[^>]*> lb \$a0,[-0-9]+\(\$a0\)
+[ ]*RELOC: 0+029c [A-Z0-9_]*LO[A-Z0-9_]* big_external_data_label
+0+02a0 <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+02a0 [A-Z0-9_]*HI[A-Z0-9_]* small_external_data_label
+0+02a4 <[^>]*> addu \$a0,\$a0,\$a1
+0+02a8 <[^>]*> lb \$a0,[-0-9]+\(\$a0\)
+[ ]*RELOC: 0+02a8 [A-Z0-9_]*LO[A-Z0-9_]* small_external_data_label
+0+02ac <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+02ac [A-Z0-9_]*HI[A-Z0-9_]* big_external_common
+0+02b0 <[^>]*> addu \$a0,\$a0,\$a1
+0+02b4 <[^>]*> lb \$a0,[-0-9]+\(\$a0\)
+[ ]*RELOC: 0+02b4 [A-Z0-9_]*LO[A-Z0-9_]* big_external_common
+0+02b8 <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+02b8 [A-Z0-9_]*HI[A-Z0-9_]* small_external_common
+0+02bc <[^>]*> addu \$a0,\$a0,\$a1
+0+02c0 <[^>]*> lb \$a0,[-0-9]+\(\$a0\)
+[ ]*RELOC: 0+02c0 [A-Z0-9_]*LO[A-Z0-9_]* small_external_common
+0+02c4 <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+02c4 [A-Z0-9_]*HI[A-Z0-9_]* .bss.*
+0+02c8 <[^>]*> addu \$a0,\$a0,\$a1
+0+02cc <[^>]*> lb \$a0,[-0-9]+\(\$a0\)
+[ ]*RELOC: 0+02cc [A-Z0-9_]*LO[A-Z0-9_]* .bss.*
+0+02d0 <[^>]*> lui \$a0,0
+[ ]*RELOC: 0+02d0 [A-Z0-9_]*HI[A-Z0-9_]* .sbss.*
+0+02d4 <[^>]*> addu \$a0,\$a0,\$a1
+0+02d8 <[^>]*> lb \$a0,[-0-9]+\(\$a0\)
+[ ]*RELOC: 0+02d8 [A-Z0-9_]*LO[A-Z0-9_]* .sbss.*
+0+02dc <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+02dc [A-Z0-9_]*HI[A-Z0-9_]* .data.*
+0+02e0 <[^>]*> addu \$a0,\$a0,\$a1
+0+02e4 <[^>]*> lb \$a0,[0-9]+\(\$a0\)
+[ ]*RELOC: 0+02e4 [A-Z0-9_]*LO[A-Z0-9_]* .data.*
+0+02e8 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+02e8 [A-Z0-9_]*HI[A-Z0-9_]* big_external_data_label
+0+02ec <[^>]*> addu \$a0,\$a0,\$a1
+0+02f0 <[^>]*> lb \$a0,0\(\$a0\)
+[ ]*RELOC: 0+02f0 [A-Z0-9_]*LO[A-Z0-9_]* big_external_data_label
+0+02f4 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+02f4 [A-Z0-9_]*HI[A-Z0-9_]* small_external_data_label
+0+02f8 <[^>]*> addu \$a0,\$a0,\$a1
+0+02fc <[^>]*> lb \$a0,0\(\$a0\)
+[ ]*RELOC: 0+02fc [A-Z0-9_]*LO[A-Z0-9_]* small_external_data_label
+0+0300 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+0300 [A-Z0-9_]*HI[A-Z0-9_]* big_external_common
+0+0304 <[^>]*> addu \$a0,\$a0,\$a1
+0+0308 <[^>]*> lb \$a0,0\(\$a0\)
+[ ]*RELOC: 0+0308 [A-Z0-9_]*LO[A-Z0-9_]* big_external_common
+0+030c <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+030c [A-Z0-9_]*HI[A-Z0-9_]* small_external_common
+0+0310 <[^>]*> addu \$a0,\$a0,\$a1
+0+0314 <[^>]*> lb \$a0,0\(\$a0\)
+[ ]*RELOC: 0+0314 [A-Z0-9_]*LO[A-Z0-9_]* small_external_common
+0+0318 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+0318 [A-Z0-9_]*HI[A-Z0-9_]* .bss.*
+0+031c <[^>]*> addu \$a0,\$a0,\$a1
+0+0320 <[^>]*> lb \$a0,[0-9]+\(\$a0\)
+[ ]*RELOC: 0+0320 [A-Z0-9_]*LO[A-Z0-9_]* .bss.*
+0+0324 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+0324 [A-Z0-9_]*HI[A-Z0-9_]* .sbss.*
+0+0328 <[^>]*> addu \$a0,\$a0,\$a1
+0+032c <[^>]*> lb \$a0,[-0-9]+\(\$a0\)
+[ ]*RELOC: 0+032c [A-Z0-9_]*LO[A-Z0-9_]* .sbss.*
+0+0330 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+0330 [A-Z0-9_]*HI[A-Z0-9_]* .data.*
+0+0334 <[^>]*> addu \$a0,\$a0,\$a1
+0+0338 <[^>]*> lb \$a0,[-0-9]+\(\$a0\)
+[ ]*RELOC: 0+0338 [A-Z0-9_]*LO[A-Z0-9_]* .data.*
+0+033c <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+033c [A-Z0-9_]*HI[A-Z0-9_]* big_external_data_label
+0+0340 <[^>]*> addu \$a0,\$a0,\$a1
+0+0344 <[^>]*> lb \$a0,[-0-9]+\(\$a0\)
+[ ]*RELOC: 0+0344 [A-Z0-9_]*LO[A-Z0-9_]* big_external_data_label
+0+0348 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+0348 [A-Z0-9_]*HI[A-Z0-9_]* small_external_data_label
+0+034c <[^>]*> addu \$a0,\$a0,\$a1
+0+0350 <[^>]*> lb \$a0,[-0-9]+\(\$a0\)
+[ ]*RELOC: 0+0350 [A-Z0-9_]*LO[A-Z0-9_]* small_external_data_label
+0+0354 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+0354 [A-Z0-9_]*HI[A-Z0-9_]* big_external_common
+0+0358 <[^>]*> addu \$a0,\$a0,\$a1
+0+035c <[^>]*> lb \$a0,[-0-9]+\(\$a0\)
+[ ]*RELOC: 0+035c [A-Z0-9_]*LO[A-Z0-9_]* big_external_common
+0+0360 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+0360 [A-Z0-9_]*HI[A-Z0-9_]* small_external_common
+0+0364 <[^>]*> addu \$a0,\$a0,\$a1
+0+0368 <[^>]*> lb \$a0,[-0-9]+\(\$a0\)
+[ ]*RELOC: 0+0368 [A-Z0-9_]*LO[A-Z0-9_]* small_external_common
+0+036c <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+036c [A-Z0-9_]*HI[A-Z0-9_]* .bss.*
+0+0370 <[^>]*> addu \$a0,\$a0,\$a1
+0+0374 <[^>]*> lb \$a0,[-0-9]+\(\$a0\)
+[ ]*RELOC: 0+0374 [A-Z0-9_]*LO[A-Z0-9_]* .bss.*
+0+0378 <[^>]*> lui \$a0,[-0-9]+
+[ ]*RELOC: 0+0378 [A-Z0-9_]*HI[A-Z0-9_]* .sbss.*
+0+037c <[^>]*> addu \$a0,\$a0,\$a1
+0+0380 <[^>]*> lb \$a0,[-0-9]+\(\$a0\)
+[ ]*RELOC: 0+0380 [A-Z0-9_]*LO[A-Z0-9_]* .sbss.*
+0+0384 <[^>]*> lbu \$a0,0\(\$zero\)
+0+0388 <[^>]*> lh \$a0,0\(\$zero\)
+0+038c <[^>]*> lhu \$a0,0\(\$zero\)
+0+0390 <[^>]*> lw \$a0,0\(\$zero\)
+0+0394 <[^>]*> lwl \$a0,0\(\$zero\)
+0+0398 <[^>]*> lwr \$a0,0\(\$zero\)
+0+039c <[^>]*> ll \$a0,0\(\$zero\)
+0+03a0 <[^>]*> lwc1 \$f4,0\(\$zero\)
+0+03a4 <[^>]*> lwc2 \$4,0\(\$zero\)
+0+03a8 <[^>]*> lwc3 \$4,0\(\$zero\)
+...
diff --git a/gas/testsuite/gas/mips/ld-empic.d b/gas/testsuite/gas/mips/ld-empic.d
index 7b49a0c..d9d3f6e 100644
--- a/gas/testsuite/gas/mips/ld-empic.d
+++ b/gas/testsuite/gas/mips/ld-empic.d
@@ -1,5 +1,5 @@
#objdump: -dr
-#name: ld-empic
+#name: MIPS ld-empic
#as: -mips1 -membedded-pic
#source: ld-pic.s
diff --git a/gas/testsuite/gas/mips/ld-svr4pic.d b/gas/testsuite/gas/mips/ld-svr4pic.d
new file mode 100644
index 0000000..d6c93ec
--- /dev/null
+++ b/gas/testsuite/gas/mips/ld-svr4pic.d
@@ -0,0 +1,225 @@
+#objdump: -dr
+#name: MIPS ld-svr4pic
+#as: -mips1 -KPIC
+#source: ld-pic.s
+
+# Test the ld macro with -KPIC.
+
+.*: +file format .*mips.*
+
+Disassembly of section .text:
+0+0000 <[^>]*> lw \$a0,0\(\$zero\)
+0+0004 <[^>]*> lw \$a1,4\(\$zero\)
+0+0008 <[^>]*> lw \$a0,1\(\$zero\)
+0+000c <[^>]*> lw \$a1,5\(\$zero\)
+0+0010 <[^>]*> lui \$at,1
+0+0014 <[^>]*> lw \$a0,-32768\(\$at\)
+0+0018 <[^>]*> lw \$a1,-32764\(\$at\)
+0+001c <[^>]*> lw \$a0,-32768\(\$zero\)
+0+0020 <[^>]*> lw \$a1,-32764\(\$zero\)
+0+0024 <[^>]*> lui \$at,1
+0+0028 <[^>]*> lw \$a0,0\(\$at\)
+0+002c <[^>]*> lw \$a1,4\(\$at\)
+0+0030 <[^>]*> lui \$at,2
+0+0034 <[^>]*> lw \$a0,-23131\(\$at\)
+0+0038 <[^>]*> lw \$a1,-23127\(\$at\)
+...
+0+0040 <[^>]*> lw \$a0,0\(\$a1\)
+0+0044 <[^>]*> lw \$a1,4\(\$a1\)
+...
+0+004c <[^>]*> lw \$a0,1\(\$a1\)
+0+0050 <[^>]*> lw \$a1,5\(\$a1\)
+0+0054 <[^>]*> lui \$at,1
+0+0058 <[^>]*> addu \$at,\$a1,\$at
+0+005c <[^>]*> lw \$a0,-32768\(\$at\)
+0+0060 <[^>]*> lw \$a1,-32764\(\$at\)
+...
+0+0068 <[^>]*> lw \$a0,-32768\(\$a1\)
+0+006c <[^>]*> lw \$a1,-32764\(\$a1\)
+0+0070 <[^>]*> lui \$at,1
+0+0074 <[^>]*> addu \$at,\$a1,\$at
+0+0078 <[^>]*> lw \$a0,0\(\$at\)
+0+007c <[^>]*> lw \$a1,4\(\$at\)
+0+0080 <[^>]*> lui \$at,2
+0+0084 <[^>]*> addu \$at,\$a1,\$at
+0+0088 <[^>]*> lw \$a0,-23131\(\$at\)
+0+008c <[^>]*> lw \$a1,-23127\(\$at\)
+0+0090 <[^>]*> lw \$at,0\(\$gp\)
+[ ]*RELOC: 0+0090 R_MIPS_GOT16 .data
+...
+0+0098 <[^>]*> lw \$a0,0\(\$at\)
+[ ]*RELOC: 0+0098 R_MIPS_LO16 .data
+0+009c <[^>]*> lw \$a1,4\(\$at\)
+[ ]*RELOC: 0+009c R_MIPS_LO16 .data
+0+00a0 <[^>]*> lw \$at,0\(\$gp\)
+[ ]*RELOC: 0+00a0 R_MIPS_GOT16 big_external_data_label
+...
+0+00a8 <[^>]*> lw \$a0,0\(\$at\)
+0+00ac <[^>]*> lw \$a1,4\(\$at\)
+0+00b0 <[^>]*> lw \$at,0\(\$gp\)
+[ ]*RELOC: 0+00b0 R_MIPS_GOT16 small_external_data_label
+...
+0+00b8 <[^>]*> lw \$a0,0\(\$at\)
+0+00bc <[^>]*> lw \$a1,4\(\$at\)
+0+00c0 <[^>]*> lw \$at,0\(\$gp\)
+[ ]*RELOC: 0+00c0 R_MIPS_GOT16 big_external_common
+...
+0+00c8 <[^>]*> lw \$a0,0\(\$at\)
+0+00cc <[^>]*> lw \$a1,4\(\$at\)
+0+00d0 <[^>]*> lw \$at,0\(\$gp\)
+[ ]*RELOC: 0+00d0 R_MIPS_GOT16 small_external_common
+...
+0+00d8 <[^>]*> lw \$a0,0\(\$at\)
+0+00dc <[^>]*> lw \$a1,4\(\$at\)
+0+00e0 <[^>]*> lw \$at,0\(\$gp\)
+[ ]*RELOC: 0+00e0 R_MIPS_GOT16 .bss
+...
+0+00e8 <[^>]*> lw \$a0,0\(\$at\)
+[ ]*RELOC: 0+00e8 R_MIPS_LO16 .bss
+0+00ec <[^>]*> lw \$a1,4\(\$at\)
+[ ]*RELOC: 0+00ec R_MIPS_LO16 .bss
+0+00f0 <[^>]*> lw \$at,0\(\$gp\)
+[ ]*RELOC: 0+00f0 R_MIPS_GOT16 .bss
+...
+0+00f8 <[^>]*> lw \$a0,1000\(\$at\)
+[ ]*RELOC: 0+00f8 R_MIPS_LO16 .bss
+0+00fc <[^>]*> lw \$a1,1004\(\$at\)
+[ ]*RELOC: 0+00fc R_MIPS_LO16 .bss
+0+0100 <[^>]*> lw \$at,0\(\$gp\)
+[ ]*RELOC: 0+0100 R_MIPS_GOT16 .data
+...
+0+0108 <[^>]*> lw \$a0,1\(\$at\)
+[ ]*RELOC: 0+0108 R_MIPS_LO16 .data
+0+010c <[^>]*> lw \$a1,5\(\$at\)
+[ ]*RELOC: 0+010c R_MIPS_LO16 .data
+0+0110 <[^>]*> lw \$at,0\(\$gp\)
+[ ]*RELOC: 0+0110 R_MIPS_GOT16 big_external_data_label
+...
+0+0118 <[^>]*> lw \$a0,1\(\$at\)
+0+011c <[^>]*> lw \$a1,5\(\$at\)
+0+0120 <[^>]*> lw \$at,0\(\$gp\)
+[ ]*RELOC: 0+0120 R_MIPS_GOT16 small_external_data_label
+...
+0+0128 <[^>]*> lw \$a0,1\(\$at\)
+0+012c <[^>]*> lw \$a1,5\(\$at\)
+0+0130 <[^>]*> lw \$at,0\(\$gp\)
+[ ]*RELOC: 0+0130 R_MIPS_GOT16 big_external_common
+...
+0+0138 <[^>]*> lw \$a0,1\(\$at\)
+0+013c <[^>]*> lw \$a1,5\(\$at\)
+0+0140 <[^>]*> lw \$at,0\(\$gp\)
+[ ]*RELOC: 0+0140 R_MIPS_GOT16 small_external_common
+...
+0+0148 <[^>]*> lw \$a0,1\(\$at\)
+0+014c <[^>]*> lw \$a1,5\(\$at\)
+0+0150 <[^>]*> lw \$at,0\(\$gp\)
+[ ]*RELOC: 0+0150 R_MIPS_GOT16 .bss
+...
+0+0158 <[^>]*> lw \$a0,1\(\$at\)
+[ ]*RELOC: 0+0158 R_MIPS_LO16 .bss
+0+015c <[^>]*> lw \$a1,5\(\$at\)
+[ ]*RELOC: 0+015c R_MIPS_LO16 .bss
+0+0160 <[^>]*> lw \$at,0\(\$gp\)
+[ ]*RELOC: 0+0160 R_MIPS_GOT16 .bss
+...
+0+0168 <[^>]*> lw \$a0,1001\(\$at\)
+[ ]*RELOC: 0+0168 R_MIPS_LO16 .bss
+0+016c <[^>]*> lw \$a1,1005\(\$at\)
+[ ]*RELOC: 0+016c R_MIPS_LO16 .bss
+0+0170 <[^>]*> lw \$at,0\(\$gp\)
+[ ]*RELOC: 0+0170 R_MIPS_GOT16 .data
+...
+0+0178 <[^>]*> addu \$at,\$a1,\$at
+0+017c <[^>]*> lw \$a0,0\(\$at\)
+[ ]*RELOC: 0+017c R_MIPS_LO16 .data
+0+0180 <[^>]*> lw \$a1,4\(\$at\)
+[ ]*RELOC: 0+0180 R_MIPS_LO16 .data
+0+0184 <[^>]*> lw \$at,0\(\$gp\)
+[ ]*RELOC: 0+0184 R_MIPS_GOT16 big_external_data_label
+...
+0+018c <[^>]*> addu \$at,\$a1,\$at
+0+0190 <[^>]*> lw \$a0,0\(\$at\)
+0+0194 <[^>]*> lw \$a1,4\(\$at\)
+0+0198 <[^>]*> lw \$at,0\(\$gp\)
+[ ]*RELOC: 0+0198 R_MIPS_GOT16 small_external_data_label
+...
+0+01a0 <[^>]*> addu \$at,\$a1,\$at
+0+01a4 <[^>]*> lw \$a0,0\(\$at\)
+0+01a8 <[^>]*> lw \$a1,4\(\$at\)
+0+01ac <[^>]*> lw \$at,0\(\$gp\)
+[ ]*RELOC: 0+01ac R_MIPS_GOT16 big_external_common
+...
+0+01b4 <[^>]*> addu \$at,\$a1,\$at
+0+01b8 <[^>]*> lw \$a0,0\(\$at\)
+0+01bc <[^>]*> lw \$a1,4\(\$at\)
+0+01c0 <[^>]*> lw \$at,0\(\$gp\)
+[ ]*RELOC: 0+01c0 R_MIPS_GOT16 small_external_common
+...
+0+01c8 <[^>]*> addu \$at,\$a1,\$at
+0+01cc <[^>]*> lw \$a0,0\(\$at\)
+0+01d0 <[^>]*> lw \$a1,4\(\$at\)
+0+01d4 <[^>]*> lw \$at,0\(\$gp\)
+[ ]*RELOC: 0+01d4 R_MIPS_GOT16 .bss
+...
+0+01dc <[^>]*> addu \$at,\$a1,\$at
+0+01e0 <[^>]*> lw \$a0,0\(\$at\)
+[ ]*RELOC: 0+01e0 R_MIPS_LO16 .bss
+0+01e4 <[^>]*> lw \$a1,4\(\$at\)
+[ ]*RELOC: 0+01e4 R_MIPS_LO16 .bss
+0+01e8 <[^>]*> lw \$at,0\(\$gp\)
+[ ]*RELOC: 0+01e8 R_MIPS_GOT16 .bss
+...
+0+01f0 <[^>]*> addu \$at,\$a1,\$at
+0+01f4 <[^>]*> lw \$a0,1000\(\$at\)
+[ ]*RELOC: 0+01f4 R_MIPS_LO16 .bss
+0+01f8 <[^>]*> lw \$a1,1004\(\$at\)
+[ ]*RELOC: 0+01f8 R_MIPS_LO16 .bss
+0+01fc <[^>]*> lw \$at,0\(\$gp\)
+[ ]*RELOC: 0+01fc R_MIPS_GOT16 .data
+...
+0+0204 <[^>]*> addu \$at,\$a1,\$at
+0+0208 <[^>]*> lw \$a0,1\(\$at\)
+[ ]*RELOC: 0+0208 R_MIPS_LO16 .data
+0+020c <[^>]*> lw \$a1,5\(\$at\)
+[ ]*RELOC: 0+020c R_MIPS_LO16 .data
+0+0210 <[^>]*> lw \$at,0\(\$gp\)
+[ ]*RELOC: 0+0210 R_MIPS_GOT16 big_external_data_label
+...
+0+0218 <[^>]*> addu \$at,\$a1,\$at
+0+021c <[^>]*> lw \$a0,1\(\$at\)
+0+0220 <[^>]*> lw \$a1,5\(\$at\)
+0+0224 <[^>]*> lw \$at,0\(\$gp\)
+[ ]*RELOC: 0+0224 R_MIPS_GOT16 small_external_data_label
+...
+0+022c <[^>]*> addu \$at,\$a1,\$at
+0+0230 <[^>]*> lw \$a0,1\(\$at\)
+0+0234 <[^>]*> lw \$a1,5\(\$at\)
+0+0238 <[^>]*> lw \$at,0\(\$gp\)
+[ ]*RELOC: 0+0238 R_MIPS_GOT16 big_external_common
+...
+0+0240 <[^>]*> addu \$at,\$a1,\$at
+0+0244 <[^>]*> lw \$a0,1\(\$at\)
+0+0248 <[^>]*> lw \$a1,5\(\$at\)
+0+024c <[^>]*> lw \$at,0\(\$gp\)
+[ ]*RELOC: 0+024c R_MIPS_GOT16 small_external_common
+...
+0+0254 <[^>]*> addu \$at,\$a1,\$at
+0+0258 <[^>]*> lw \$a0,1\(\$at\)
+0+025c <[^>]*> lw \$a1,5\(\$at\)
+0+0260 <[^>]*> lw \$at,0\(\$gp\)
+[ ]*RELOC: 0+0260 R_MIPS_GOT16 .bss
+...
+0+0268 <[^>]*> addu \$at,\$a1,\$at
+0+026c <[^>]*> lw \$a0,1\(\$at\)
+[ ]*RELOC: 0+026c R_MIPS_LO16 .bss
+0+0270 <[^>]*> lw \$a1,5\(\$at\)
+[ ]*RELOC: 0+0270 R_MIPS_LO16 .bss
+0+0274 <[^>]*> lw \$at,0\(\$gp\)
+[ ]*RELOC: 0+0274 R_MIPS_GOT16 .bss
+...
+0+027c <[^>]*> addu \$at,\$a1,\$at
+0+0280 <[^>]*> lw \$a0,1001\(\$at\)
+[ ]*RELOC: 0+0280 R_MIPS_LO16 .bss
+0+0284 <[^>]*> lw \$a1,1005\(\$at\)
+[ ]*RELOC: 0+0284 R_MIPS_LO16 .bss
+...
diff --git a/gas/testsuite/gas/mips/li.d b/gas/testsuite/gas/mips/li.d
new file mode 100644
index 0000000..7563521
--- /dev/null
+++ b/gas/testsuite/gas/mips/li.d
@@ -0,0 +1,17 @@
+#objdump: -dr
+#name: MIPS li
+
+# Test the li macro.
+
+.*: +file format .*mips.*
+
+No symbols in .*
+Disassembly of section .text:
+0+0000 li \$a0,0
+0+0004 li \$a0,1
+0+0008 li \$a0,32768
+0+000c li \$a0,-32768
+0+0010 lui \$a0,1
+0+0014 lui \$a0,1
+0+0018 ori \$a0,\$a0,42405
+...
diff --git a/gas/testsuite/gas/mips/lif-empic.d b/gas/testsuite/gas/mips/lif-empic.d
index 08de25d..622cbf5 100644
--- a/gas/testsuite/gas/mips/lif-empic.d
+++ b/gas/testsuite/gas/mips/lif-empic.d
@@ -1,5 +1,5 @@
#objdump: -dr
-#name: lifloat-empic
+#name: MIPS lifloat-empic
#as: -mips1 -membedded-pic
#source: lifloat.s
diff --git a/gas/testsuite/gas/mips/lif-svr4pic.d b/gas/testsuite/gas/mips/lif-svr4pic.d
new file mode 100644
index 0000000..5981e7a
--- /dev/null
+++ b/gas/testsuite/gas/mips/lif-svr4pic.d
@@ -0,0 +1,28 @@
+#objdump: -dr
+#name: MIPS lifloat-svr4pic
+#as: -mips1 -KPIC
+#source: lifloat.s
+
+# Test the li.d and li.s macros with -KPIC.
+
+.*: +file format .*mips.*
+
+Disassembly of section .text:
+0+0000 <[^>]*> lw \$at,0\(\$gp\)
+[ ]*RELOC: 0+0000 R_MIPS_GOT16 .rodata
+...
+0+0008 <[^>]*> lw \$a0,0\(\$at\)
+[ ]*RELOC: 0+0008 R_MIPS_LO16 .rodata
+0+000c <[^>]*> lw \$a1,4\(\$at\)
+[ ]*RELOC: 0+000c R_MIPS_LO16 .rodata
+0+0010 <[^>]*> lw \$at,0\(\$gp\)
+[ ]*RELOC: 0+0010 R_MIPS_GOT16 .rodata
+...
+0+0018 <[^>]*> lwc1 \$f5,8\(\$at\)
+[ ]*RELOC: 0+0018 R_MIPS_LO16 .rodata
+0+001c <[^>]*> lwc1 \$f4,12\(\$at\)
+[ ]*RELOC: 0+001c R_MIPS_LO16 .rodata
+0+0020 <[^>]*> lui \$a0,16256
+0+0024 <[^>]*> lui \$at,16256
+0+0028 <[^>]*> mtc1 \$at,\$f4
+...
diff --git a/gas/testsuite/gas/mips/sb.d b/gas/testsuite/gas/mips/sb.d
new file mode 100644
index 0000000..476805a
--- /dev/null
+++ b/gas/testsuite/gas/mips/sb.d
@@ -0,0 +1,407 @@
+#objdump: -dr
+#name: MIPS sb
+#as: -mips1
+
+# Test the sb macro.
+
+.*: +file format .*mips.*
+
+Disassembly of section .text:
+0+0000 <[^>]*> sb \$a0,0\(\$zero\)
+0+0004 <[^>]*> sb \$a0,1\(\$zero\)
+0+0008 <[^>]*> lui \$at,1
+0+000c <[^>]*> sb \$a0,-32768\(\$at\)
+0+0010 <[^>]*> sb \$a0,-32768\(\$zero\)
+0+0014 <[^>]*> lui \$at,1
+0+0018 <[^>]*> sb \$a0,0\(\$at\)
+0+001c <[^>]*> lui \$at,2
+0+0020 <[^>]*> sb \$a0,-23131\(\$at\)
+0+0024 <[^>]*> sb \$a0,0\(\$a1\)
+0+0028 <[^>]*> sb \$a0,1\(\$a1\)
+0+002c <[^>]*> lui \$at,1
+0+0030 <[^>]*> addu \$at,\$at,\$a1
+0+0034 <[^>]*> sb \$a0,-32768\(\$at\)
+0+0038 <[^>]*> sb \$a0,-32768\(\$a1\)
+0+003c <[^>]*> lui \$at,1
+0+0040 <[^>]*> addu \$at,\$at,\$a1
+0+0044 <[^>]*> sb \$a0,0\(\$at\)
+0+0048 <[^>]*> lui \$at,2
+0+004c <[^>]*> addu \$at,\$at,\$a1
+0+0050 <[^>]*> sb \$a0,-23131\(\$at\)
+0+0054 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+0054 [A-Z0-9_]*HI[A-Z0-9_]* .data.*
+0+0058 <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+0058 [A-Z0-9_]*LO[A-Z0-9_]* .data.*
+0+005c <[^>]*> lui \$at,0
+[ ]*RELOC: 0+005c [A-Z0-9_]*HI[A-Z0-9_]* big_external_data_label
+0+0060 <[^>]*> sb \$a0,0\(\$at\)
+[ ]*RELOC: 0+0060 [A-Z0-9_]*LO[A-Z0-9_]* big_external_data_label
+0+0064 <[^>]*> sb \$a0,0\(\$gp\)
+[ ]*RELOC: 0+0064 [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
+0+0068 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+0068 [A-Z0-9_]*HI[A-Z0-9_]* big_external_common
+0+006c <[^>]*> sb \$a0,0\(\$at\)
+[ ]*RELOC: 0+006c [A-Z0-9_]*LO[A-Z0-9_]* big_external_common
+0+0070 <[^>]*> sb \$a0,0\(\$gp\)
+[ ]*RELOC: 0+0070 [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
+0+0074 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+0074 [A-Z0-9_]*HI[A-Z0-9_]* .bss.*
+0+0078 <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+0078 [A-Z0-9_]*LO[A-Z0-9_]* .bss.*
+0+007c <[^>]*> sb \$a0,[-0-9]+\(\$gp\)
+[ ]*RELOC: 0+007c [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
+0+0080 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+0080 [A-Z0-9_]*HI[A-Z0-9_]* .data.*
+0+0084 <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+0084 [A-Z0-9_]*LO[A-Z0-9_]* .data.*
+0+0088 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+0088 [A-Z0-9_]*HI[A-Z0-9_]* big_external_data_label
+0+008c <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+008c [A-Z0-9_]*LO[A-Z0-9_]* big_external_data_label
+0+0090 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+0090 [A-Z0-9_]*HI[A-Z0-9_]* small_external_data_label
+0+0094 <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+0094 [A-Z0-9_]*LO[A-Z0-9_]* small_external_data_label
+0+0098 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+0098 [A-Z0-9_]*HI[A-Z0-9_]* big_external_common
+0+009c <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+009c [A-Z0-9_]*LO[A-Z0-9_]* big_external_common
+0+00a0 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+00a0 [A-Z0-9_]*HI[A-Z0-9_]* small_external_common
+0+00a4 <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+00a4 [A-Z0-9_]*LO[A-Z0-9_]* small_external_common
+0+00a8 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+00a8 [A-Z0-9_]*HI[A-Z0-9_]* .bss.*
+0+00ac <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+00ac [A-Z0-9_]*LO[A-Z0-9_]* .bss.*
+0+00b0 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+00b0 [A-Z0-9_]*HI[A-Z0-9_]* .sbss.*
+0+00b4 <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+00b4 [A-Z0-9_]*LO[A-Z0-9_]* .sbss.*
+0+00b8 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+00b8 [A-Z0-9_]*HI[A-Z0-9_]* .data.*
+0+00bc <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+00bc [A-Z0-9_]*LO[A-Z0-9_]* .data.*
+0+00c0 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+00c0 [A-Z0-9_]*HI[A-Z0-9_]* big_external_data_label
+0+00c4 <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+00c4 [A-Z0-9_]*LO[A-Z0-9_]* big_external_data_label
+0+00c8 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+00c8 [A-Z0-9_]*HI[A-Z0-9_]* small_external_data_label
+0+00cc <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+00cc [A-Z0-9_]*LO[A-Z0-9_]* small_external_data_label
+0+00d0 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+00d0 [A-Z0-9_]*HI[A-Z0-9_]* big_external_common
+0+00d4 <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+00d4 [A-Z0-9_]*LO[A-Z0-9_]* big_external_common
+0+00d8 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+00d8 [A-Z0-9_]*HI[A-Z0-9_]* small_external_common
+0+00dc <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+00dc [A-Z0-9_]*LO[A-Z0-9_]* small_external_common
+0+00e0 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+00e0 [A-Z0-9_]*HI[A-Z0-9_]* .bss.*
+0+00e4 <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+00e4 [A-Z0-9_]*LO[A-Z0-9_]* .bss.*
+0+00e8 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+00e8 [A-Z0-9_]*HI[A-Z0-9_]* .sbss.*
+0+00ec <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+00ec [A-Z0-9_]*LO[A-Z0-9_]* .sbss.*
+0+00f0 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+00f0 [A-Z0-9_]*HI[A-Z0-9_]* .data.*
+0+00f4 <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+00f4 [A-Z0-9_]*LO[A-Z0-9_]* .data.*
+0+00f8 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+00f8 [A-Z0-9_]*HI[A-Z0-9_]* big_external_data_label
+0+00fc <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+00fc [A-Z0-9_]*LO[A-Z0-9_]* big_external_data_label
+0+0100 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+0100 [A-Z0-9_]*HI[A-Z0-9_]* small_external_data_label
+0+0104 <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+0104 [A-Z0-9_]*LO[A-Z0-9_]* small_external_data_label
+0+0108 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+0108 [A-Z0-9_]*HI[A-Z0-9_]* big_external_common
+0+010c <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+010c [A-Z0-9_]*LO[A-Z0-9_]* big_external_common
+0+0110 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+0110 [A-Z0-9_]*HI[A-Z0-9_]* small_external_common
+0+0114 <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+0114 [A-Z0-9_]*LO[A-Z0-9_]* small_external_common
+0+0118 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+0118 [A-Z0-9_]*HI[A-Z0-9_]* .bss.*
+0+011c <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+011c [A-Z0-9_]*LO[A-Z0-9_]* .bss.*
+0+0120 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+0120 [A-Z0-9_]*HI[A-Z0-9_]* .sbss.*
+0+0124 <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+0124 [A-Z0-9_]*LO[A-Z0-9_]* .sbss.*
+0+0128 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0128 [A-Z0-9_]*HI[A-Z0-9_]* .data.*
+0+012c <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+012c [A-Z0-9_]*LO[A-Z0-9_]* .data.*
+0+0130 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0130 [A-Z0-9_]*HI[A-Z0-9_]* big_external_data_label
+0+0134 <[^>]*> sb \$a0,0\(\$at\)
+[ ]*RELOC: 0+0134 [A-Z0-9_]*LO[A-Z0-9_]* big_external_data_label
+0+0138 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0138 [A-Z0-9_]*HI[A-Z0-9_]* small_external_data_label
+0+013c <[^>]*> sb \$a0,0\(\$at\)
+[ ]*RELOC: 0+013c [A-Z0-9_]*LO[A-Z0-9_]* small_external_data_label
+0+0140 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0140 [A-Z0-9_]*HI[A-Z0-9_]* big_external_common
+0+0144 <[^>]*> sb \$a0,0\(\$at\)
+[ ]*RELOC: 0+0144 [A-Z0-9_]*LO[A-Z0-9_]* big_external_common
+0+0148 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0148 [A-Z0-9_]*HI[A-Z0-9_]* small_external_common
+0+014c <[^>]*> sb \$a0,0\(\$at\)
+[ ]*RELOC: 0+014c [A-Z0-9_]*LO[A-Z0-9_]* small_external_common
+0+0150 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0150 [A-Z0-9_]*HI[A-Z0-9_]* .bss.*
+0+0154 <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+0154 [A-Z0-9_]*LO[A-Z0-9_]* .bss.*
+0+0158 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0158 [A-Z0-9_]*HI[A-Z0-9_]* .sbss.*
+0+015c <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+015c [A-Z0-9_]*LO[A-Z0-9_]* .sbss.*
+0+0160 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0160 [A-Z0-9_]*HI[A-Z0-9_]* .data.*
+0+0164 <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+0164 [A-Z0-9_]*LO[A-Z0-9_]* .data.*
+0+0168 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0168 [A-Z0-9_]*HI[A-Z0-9_]* big_external_data_label
+0+016c <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+016c [A-Z0-9_]*LO[A-Z0-9_]* big_external_data_label
+0+0170 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0170 [A-Z0-9_]*HI[A-Z0-9_]* small_external_data_label
+0+0174 <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+0174 [A-Z0-9_]*LO[A-Z0-9_]* small_external_data_label
+0+0178 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0178 [A-Z0-9_]*HI[A-Z0-9_]* big_external_common
+0+017c <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+017c [A-Z0-9_]*LO[A-Z0-9_]* big_external_common
+0+0180 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0180 [A-Z0-9_]*HI[A-Z0-9_]* small_external_common
+0+0184 <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+0184 [A-Z0-9_]*LO[A-Z0-9_]* small_external_common
+0+0188 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0188 [A-Z0-9_]*HI[A-Z0-9_]* .bss.*
+0+018c <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+018c [A-Z0-9_]*LO[A-Z0-9_]* .bss.*
+0+0190 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0190 [A-Z0-9_]*HI[A-Z0-9_]* .sbss.*
+0+0194 <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+0194 [A-Z0-9_]*LO[A-Z0-9_]* .sbss.*
+0+0198 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+0198 [A-Z0-9_]*HI[A-Z0-9_]* .data.*
+0+019c <[^>]*> addu \$at,\$at,\$a1
+0+01a0 <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+01a0 [A-Z0-9_]*LO[A-Z0-9_]* .data.*
+0+01a4 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+01a4 [A-Z0-9_]*HI[A-Z0-9_]* big_external_data_label
+0+01a8 <[^>]*> addu \$at,\$at,\$a1
+0+01ac <[^>]*> sb \$a0,0\(\$at\)
+[ ]*RELOC: 0+01ac [A-Z0-9_]*LO[A-Z0-9_]* big_external_data_label
+0+01b0 <[^>]*> addu \$at,\$a1,\$gp
+0+01b4 <[^>]*> sb \$a0,0\(\$at\)
+[ ]*RELOC: 0+01b4 [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
+0+01b8 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+01b8 [A-Z0-9_]*HI[A-Z0-9_]* big_external_common
+0+01bc <[^>]*> addu \$at,\$at,\$a1
+0+01c0 <[^>]*> sb \$a0,0\(\$at\)
+[ ]*RELOC: 0+01c0 [A-Z0-9_]*LO[A-Z0-9_]* big_external_common
+0+01c4 <[^>]*> addu \$at,\$a1,\$gp
+0+01c8 <[^>]*> sb \$a0,0\(\$at\)
+[ ]*RELOC: 0+01c8 [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
+0+01cc <[^>]*> lui \$at,0
+[ ]*RELOC: 0+01cc [A-Z0-9_]*HI[A-Z0-9_]* .bss.*
+0+01d0 <[^>]*> addu \$at,\$at,\$a1
+0+01d4 <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+01d4 [A-Z0-9_]*LO[A-Z0-9_]* .bss.*
+0+01d8 <[^>]*> addu \$at,\$a1,\$gp
+0+01dc <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+01dc [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
+0+01e0 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+01e0 [A-Z0-9_]*HI[A-Z0-9_]* .data.*
+0+01e4 <[^>]*> addu \$at,\$at,\$a1
+0+01e8 <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+01e8 [A-Z0-9_]*LO[A-Z0-9_]* .data.*
+0+01ec <[^>]*> lui \$at,0
+[ ]*RELOC: 0+01ec [A-Z0-9_]*HI[A-Z0-9_]* big_external_data_label
+0+01f0 <[^>]*> addu \$at,\$at,\$a1
+0+01f4 <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+01f4 [A-Z0-9_]*LO[A-Z0-9_]* big_external_data_label
+0+01f8 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+01f8 [A-Z0-9_]*HI[A-Z0-9_]* small_external_data_label
+0+01fc <[^>]*> addu \$at,\$at,\$a1
+0+0200 <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+0200 [A-Z0-9_]*LO[A-Z0-9_]* small_external_data_label
+0+0204 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+0204 [A-Z0-9_]*HI[A-Z0-9_]* big_external_common
+0+0208 <[^>]*> addu \$at,\$at,\$a1
+0+020c <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+020c [A-Z0-9_]*LO[A-Z0-9_]* big_external_common
+0+0210 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+0210 [A-Z0-9_]*HI[A-Z0-9_]* small_external_common
+0+0214 <[^>]*> addu \$at,\$at,\$a1
+0+0218 <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+0218 [A-Z0-9_]*LO[A-Z0-9_]* small_external_common
+0+021c <[^>]*> lui \$at,0
+[ ]*RELOC: 0+021c [A-Z0-9_]*HI[A-Z0-9_]* .bss.*
+0+0220 <[^>]*> addu \$at,\$at,\$a1
+0+0224 <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+0224 [A-Z0-9_]*LO[A-Z0-9_]* .bss.*
+0+0228 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+0228 [A-Z0-9_]*HI[A-Z0-9_]* .sbss.*
+0+022c <[^>]*> addu \$at,\$at,\$a1
+0+0230 <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+0230 [A-Z0-9_]*LO[A-Z0-9_]* .sbss.*
+0+0234 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0234 [A-Z0-9_]*HI[A-Z0-9_]* .data.*
+0+0238 <[^>]*> addu \$at,\$at,\$a1
+0+023c <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+023c [A-Z0-9_]*LO[A-Z0-9_]* .data.*
+0+0240 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0240 [A-Z0-9_]*HI[A-Z0-9_]* big_external_data_label
+0+0244 <[^>]*> addu \$at,\$at,\$a1
+0+0248 <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+0248 [A-Z0-9_]*LO[A-Z0-9_]* big_external_data_label
+0+024c <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+024c [A-Z0-9_]*HI[A-Z0-9_]* small_external_data_label
+0+0250 <[^>]*> addu \$at,\$at,\$a1
+0+0254 <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+0254 [A-Z0-9_]*LO[A-Z0-9_]* small_external_data_label
+0+0258 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0258 [A-Z0-9_]*HI[A-Z0-9_]* big_external_common
+0+025c <[^>]*> addu \$at,\$at,\$a1
+0+0260 <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+0260 [A-Z0-9_]*LO[A-Z0-9_]* big_external_common
+0+0264 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0264 [A-Z0-9_]*HI[A-Z0-9_]* small_external_common
+0+0268 <[^>]*> addu \$at,\$at,\$a1
+0+026c <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+026c [A-Z0-9_]*LO[A-Z0-9_]* small_external_common
+0+0270 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0270 [A-Z0-9_]*HI[A-Z0-9_]* .bss.*
+0+0274 <[^>]*> addu \$at,\$at,\$a1
+0+0278 <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+0278 [A-Z0-9_]*LO[A-Z0-9_]* .bss.*
+0+027c <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+027c [A-Z0-9_]*HI[A-Z0-9_]* .sbss.*
+0+0280 <[^>]*> addu \$at,\$at,\$a1
+0+0284 <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+0284 [A-Z0-9_]*LO[A-Z0-9_]* .sbss.*
+0+0288 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+0288 [A-Z0-9_]*HI[A-Z0-9_]* .data.*
+0+028c <[^>]*> addu \$at,\$at,\$a1
+0+0290 <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+0290 [A-Z0-9_]*LO[A-Z0-9_]* .data.*
+0+0294 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+0294 [A-Z0-9_]*HI[A-Z0-9_]* big_external_data_label
+0+0298 <[^>]*> addu \$at,\$at,\$a1
+0+029c <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+029c [A-Z0-9_]*LO[A-Z0-9_]* big_external_data_label
+0+02a0 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+02a0 [A-Z0-9_]*HI[A-Z0-9_]* small_external_data_label
+0+02a4 <[^>]*> addu \$at,\$at,\$a1
+0+02a8 <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+02a8 [A-Z0-9_]*LO[A-Z0-9_]* small_external_data_label
+0+02ac <[^>]*> lui \$at,0
+[ ]*RELOC: 0+02ac [A-Z0-9_]*HI[A-Z0-9_]* big_external_common
+0+02b0 <[^>]*> addu \$at,\$at,\$a1
+0+02b4 <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+02b4 [A-Z0-9_]*LO[A-Z0-9_]* big_external_common
+0+02b8 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+02b8 [A-Z0-9_]*HI[A-Z0-9_]* small_external_common
+0+02bc <[^>]*> addu \$at,\$at,\$a1
+0+02c0 <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+02c0 [A-Z0-9_]*LO[A-Z0-9_]* small_external_common
+0+02c4 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+02c4 [A-Z0-9_]*HI[A-Z0-9_]* .bss.*
+0+02c8 <[^>]*> addu \$at,\$at,\$a1
+0+02cc <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+02cc [A-Z0-9_]*LO[A-Z0-9_]* .bss.*
+0+02d0 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+02d0 [A-Z0-9_]*HI[A-Z0-9_]* .sbss.*
+0+02d4 <[^>]*> addu \$at,\$at,\$a1
+0+02d8 <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+02d8 [A-Z0-9_]*LO[A-Z0-9_]* .sbss.*
+0+02dc <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+02dc [A-Z0-9_]*HI[A-Z0-9_]* .data.*
+0+02e0 <[^>]*> addu \$at,\$at,\$a1
+0+02e4 <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+02e4 [A-Z0-9_]*LO[A-Z0-9_]* .data.*
+0+02e8 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+02e8 [A-Z0-9_]*HI[A-Z0-9_]* big_external_data_label
+0+02ec <[^>]*> addu \$at,\$at,\$a1
+0+02f0 <[^>]*> sb \$a0,0\(\$at\)
+[ ]*RELOC: 0+02f0 [A-Z0-9_]*LO[A-Z0-9_]* big_external_data_label
+0+02f4 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+02f4 [A-Z0-9_]*HI[A-Z0-9_]* small_external_data_label
+0+02f8 <[^>]*> addu \$at,\$at,\$a1
+0+02fc <[^>]*> sb \$a0,0\(\$at\)
+[ ]*RELOC: 0+02fc [A-Z0-9_]*LO[A-Z0-9_]* small_external_data_label
+0+0300 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0300 [A-Z0-9_]*HI[A-Z0-9_]* big_external_common
+0+0304 <[^>]*> addu \$at,\$at,\$a1
+0+0308 <[^>]*> sb \$a0,0\(\$at\)
+[ ]*RELOC: 0+0308 [A-Z0-9_]*LO[A-Z0-9_]* big_external_common
+0+030c <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+030c [A-Z0-9_]*HI[A-Z0-9_]* small_external_common
+0+0310 <[^>]*> addu \$at,\$at,\$a1
+0+0314 <[^>]*> sb \$a0,0\(\$at\)
+[ ]*RELOC: 0+0314 [A-Z0-9_]*LO[A-Z0-9_]* small_external_common
+0+0318 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0318 [A-Z0-9_]*HI[A-Z0-9_]* .bss.*
+0+031c <[^>]*> addu \$at,\$at,\$a1
+0+0320 <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+0320 [A-Z0-9_]*LO[A-Z0-9_]* .bss.*
+0+0324 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0324 [A-Z0-9_]*HI[A-Z0-9_]* .sbss.*
+0+0328 <[^>]*> addu \$at,\$at,\$a1
+0+032c <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+032c [A-Z0-9_]*LO[A-Z0-9_]* .sbss.*
+0+0330 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0330 [A-Z0-9_]*HI[A-Z0-9_]* .data.*
+0+0334 <[^>]*> addu \$at,\$at,\$a1
+0+0338 <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+0338 [A-Z0-9_]*LO[A-Z0-9_]* .data.*
+0+033c <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+033c [A-Z0-9_]*HI[A-Z0-9_]* big_external_data_label
+0+0340 <[^>]*> addu \$at,\$at,\$a1
+0+0344 <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+0344 [A-Z0-9_]*LO[A-Z0-9_]* big_external_data_label
+0+0348 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0348 [A-Z0-9_]*HI[A-Z0-9_]* small_external_data_label
+0+034c <[^>]*> addu \$at,\$at,\$a1
+0+0350 <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+0350 [A-Z0-9_]*LO[A-Z0-9_]* small_external_data_label
+0+0354 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0354 [A-Z0-9_]*HI[A-Z0-9_]* big_external_common
+0+0358 <[^>]*> addu \$at,\$at,\$a1
+0+035c <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+035c [A-Z0-9_]*LO[A-Z0-9_]* big_external_common
+0+0360 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0360 [A-Z0-9_]*HI[A-Z0-9_]* small_external_common
+0+0364 <[^>]*> addu \$at,\$at,\$a1
+0+0368 <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+0368 [A-Z0-9_]*LO[A-Z0-9_]* small_external_common
+0+036c <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+036c [A-Z0-9_]*HI[A-Z0-9_]* .bss.*
+0+0370 <[^>]*> addu \$at,\$at,\$a1
+0+0374 <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+0374 [A-Z0-9_]*LO[A-Z0-9_]* .bss.*
+0+0378 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0378 [A-Z0-9_]*HI[A-Z0-9_]* .sbss.*
+0+037c <[^>]*> addu \$at,\$at,\$a1
+0+0380 <[^>]*> sb \$a0,[-0-9]+\(\$at\)
+[ ]*RELOC: 0+0380 [A-Z0-9_]*LO[A-Z0-9_]* .sbss.*
+0+0384 <[^>]*> sw \$a0,0\(\$zero\)
+0+0388 <[^>]*> sw \$a1,4\(\$zero\)
+0+038c <[^>]*> sh \$a0,0\(\$zero\)
+0+0390 <[^>]*> sw \$a0,0\(\$zero\)
+0+0394 <[^>]*> sc \$a0,0\(\$zero\)
+0+0398 <[^>]*> swc1 \$f4,0\(\$zero\)
+0+039c <[^>]*> swc2 \$4,0\(\$zero\)
+0+03a0 <[^>]*> swc3 \$4,0\(\$zero\)
+0+03a4 <[^>]*> swc1 \$f4,0\(\$zero\)
+0+03a8 <[^>]*> swl \$a0,0\(\$zero\)
+0+03ac <[^>]*> swr \$a0,0\(\$zero\)
diff --git a/gas/testsuite/gas/mips/trunc.d b/gas/testsuite/gas/mips/trunc.d
new file mode 100644
index 0000000..4404eb4
--- /dev/null
+++ b/gas/testsuite/gas/mips/trunc.d
@@ -0,0 +1,30 @@
+#objdump: -dr
+#name: MIPS trunc
+#as: -mips1
+
+# Test the trunc macros.
+
+.*: +file format .*mips.*
+
+No symbols in .*
+Disassembly of section .text:
+0+0000 cfc1 \$a0,\$31
+0+0004 cfc1 \$a0,\$31
+...
+0+000c ori \$at,\$a0,3
+0+0010 xori \$at,\$at,2
+0+0014 ctc1 \$at,\$31
+...
+0+001c cvt.w.d \$f4,\$f6
+0+0020 ctc1 \$a0,\$31
+...
+0+0028 cfc1 \$a0,\$31
+0+002c cfc1 \$a0,\$31
+...
+0+0034 ori \$at,\$a0,3
+0+0038 xori \$at,\$at,2
+0+003c ctc1 \$at,\$31
+...
+0+0044 cvt.w.s \$f4,\$f6
+0+0048 ctc1 \$a0,\$31
+...
diff --git a/gas/testsuite/gas/mips/uld.d b/gas/testsuite/gas/mips/uld.d
new file mode 100644
index 0000000..a3cf403
--- /dev/null
+++ b/gas/testsuite/gas/mips/uld.d
@@ -0,0 +1,276 @@
+#objdump: -dr
+#name: MIPS uld
+#as: -mips3
+
+# Test the uld macro.
+
+.*: +file format .*mips.*
+
+Disassembly of section .text:
+0+0000 <[^>]*> ldl \$a0,[07]\(\$zero\)
+0+0004 <[^>]*> ldr \$a0,[07]\(\$zero\)
+0+0008 <[^>]*> ldl \$a0,[18]\(\$zero\)
+0+000c <[^>]*> ldr \$a0,[18]\(\$zero\)
+0+0010 <[^>]*> li \$at,32768
+0+0014 <[^>]*> ldl \$a0,[07]\(\$at\)
+0+0018 <[^>]*> ldr \$a0,[07]\(\$at\)
+0+001c <[^>]*> ldl \$a0,-3276[18]\(\$zero\)
+0+0020 <[^>]*> ldr \$a0,-3276[18]\(\$zero\)
+0+0024 <[^>]*> lui \$at,1
+0+0028 <[^>]*> ldl \$a0,[07]\(\$at\)
+0+002c <[^>]*> ldr \$a0,[07]\(\$at\)
+0+0030 <[^>]*> lui \$at,1
+0+0034 <[^>]*> ori \$at,\$at,42405
+0+0038 <[^>]*> ldl \$a0,[07]\(\$at\)
+0+003c <[^>]*> ldr \$a0,[07]\(\$at\)
+0+0040 <[^>]*> ldl \$a0,[07]\(\$a1\)
+0+0044 <[^>]*> ldr \$a0,[07]\(\$a1\)
+0+0048 <[^>]*> ldl \$a0,[18]\(\$a1\)
+0+004c <[^>]*> ldr \$a0,[-0-9]+\(\$a1\)
+0+0050 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0050 [A-Z0-9_]*HI[A-Z0-9_]* .data.*
+0+0054 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+0054 [A-Z0-9_]*LO[A-Z0-9_]* .data.*
+0+0058 <[^>]*> ldl \$a0,[07]\(\$at\)
+0+005c <[^>]*> ldr \$a0,[07]\(\$at\)
+0+0060 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+0060 [A-Z0-9_]*HI[A-Z0-9_]* big_external_data_label
+0+0064 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+0064 [A-Z0-9_]*LO[A-Z0-9_]* big_external_data_label
+0+0068 <[^>]*> ldl \$a0,[07]\(\$at\)
+0+006c <[^>]*> ldr \$a0,[07]\(\$at\)
+0+0070 <[^>]*> daddiu \$at,\$gp,0
+[ ]*RELOC: 0+0070 [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
+0+0074 <[^>]*> ldl \$a0,[07]\(\$at\)
+0+0078 <[^>]*> ldr \$a0,[07]\(\$at\)
+0+007c <[^>]*> lui \$at,0
+[ ]*RELOC: 0+007c [A-Z0-9_]*HI[A-Z0-9_]* big_external_common
+0+0080 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+0080 [A-Z0-9_]*LO[A-Z0-9_]* big_external_common
+0+0084 <[^>]*> ldl \$a0,[07]\(\$at\)
+0+0088 <[^>]*> ldr \$a0,[07]\(\$at\)
+0+008c <[^>]*> daddiu \$at,\$gp,0
+[ ]*RELOC: 0+008c [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
+0+0090 <[^>]*> ldl \$a0,[07]\(\$at\)
+0+0094 <[^>]*> ldr \$a0,[07]\(\$at\)
+0+0098 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0098 [A-Z0-9_]*HI[A-Z0-9_]* .bss.*
+0+009c <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+009c [A-Z0-9_]*LO[A-Z0-9_]* .bss.*
+0+00a0 <[^>]*> ldl \$a0,[07]\(\$at\)
+0+00a4 <[^>]*> ldr \$a0,[07]\(\$at\)
+0+00a8 <[^>]*> daddiu \$at,\$gp,[-0-9]+
+[ ]*RELOC: 0+00a8 [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
+0+00ac <[^>]*> ldl \$a0,[07]\(\$at\)
+0+00b0 <[^>]*> ldr \$a0,[07]\(\$at\)
+0+00b4 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+00b4 [A-Z0-9_]*HI[A-Z0-9_]* .data.*
+0+00b8 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+00b8 [A-Z0-9_]*LO[A-Z0-9_]* .data.*
+0+00bc <[^>]*> ldl \$a0,[07]\(\$at\)
+0+00c0 <[^>]*> ldr \$a0,[07]\(\$at\)
+0+00c4 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+00c4 [A-Z0-9_]*HI[A-Z0-9_]* big_external_data_label
+0+00c8 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+00c8 [A-Z0-9_]*LO[A-Z0-9_]* big_external_data_label
+0+00cc <[^>]*> ldl \$a0,[07]\(\$at\)
+0+00d0 <[^>]*> ldr \$a0,[07]\(\$at\)
+0+00d4 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+00d4 [A-Z0-9_]*HI[A-Z0-9_]* small_external_data_label
+0+00d8 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+00d8 [A-Z0-9_]*LO[A-Z0-9_]* small_external_data_label
+0+00dc <[^>]*> ldl \$a0,[07]\(\$at\)
+0+00e0 <[^>]*> ldr \$a0,[07]\(\$at\)
+0+00e4 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+00e4 [A-Z0-9_]*HI[A-Z0-9_]* big_external_common
+0+00e8 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+00e8 [A-Z0-9_]*LO[A-Z0-9_]* big_external_common
+0+00ec <[^>]*> ldl \$a0,[07]\(\$at\)
+0+00f0 <[^>]*> ldr \$a0,[07]\(\$at\)
+0+00f4 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+00f4 [A-Z0-9_]*HI[A-Z0-9_]* small_external_common
+0+00f8 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+00f8 [A-Z0-9_]*LO[A-Z0-9_]* small_external_common
+0+00fc <[^>]*> ldl \$a0,[07]\(\$at\)
+0+0100 <[^>]*> ldr \$a0,[07]\(\$at\)
+0+0104 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+0104 [A-Z0-9_]*HI[A-Z0-9_]* .bss.*
+0+0108 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+0108 [A-Z0-9_]*LO[A-Z0-9_]* .bss.*
+0+010c <[^>]*> ldl \$a0,[07]\(\$at\)
+0+0110 <[^>]*> ldr \$a0,[07]\(\$at\)
+0+0114 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+0114 [A-Z0-9_]*HI[A-Z0-9_]* .sbss.*
+0+0118 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+0118 [A-Z0-9_]*LO[A-Z0-9_]* .sbss.*
+0+011c <[^>]*> ldl \$a0,[07]\(\$at\)
+0+0120 <[^>]*> ldr \$a0,[07]\(\$at\)
+0+0124 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0124 [A-Z0-9_]*HI[A-Z0-9_]* .data.*
+0+0128 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+0128 [A-Z0-9_]*LO[A-Z0-9_]* .data.*
+0+012c <[^>]*> ldl \$a0,[07]\(\$at\)
+0+0130 <[^>]*> ldr \$a0,[07]\(\$at\)
+0+0134 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0134 [A-Z0-9_]*HI[A-Z0-9_]* big_external_data_label
+0+0138 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+0138 [A-Z0-9_]*LO[A-Z0-9_]* big_external_data_label
+0+013c <[^>]*> ldl \$a0,[07]\(\$at\)
+0+0140 <[^>]*> ldr \$a0,[07]\(\$at\)
+0+0144 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0144 [A-Z0-9_]*HI[A-Z0-9_]* small_external_data_label
+0+0148 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+0148 [A-Z0-9_]*LO[A-Z0-9_]* small_external_data_label
+0+014c <[^>]*> ldl \$a0,[07]\(\$at\)
+0+0150 <[^>]*> ldr \$a0,[07]\(\$at\)
+0+0154 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0154 [A-Z0-9_]*HI[A-Z0-9_]* big_external_common
+0+0158 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+0158 [A-Z0-9_]*LO[A-Z0-9_]* big_external_common
+0+015c <[^>]*> ldl \$a0,[07]\(\$at\)
+0+0160 <[^>]*> ldr \$a0,[07]\(\$at\)
+0+0164 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0164 [A-Z0-9_]*HI[A-Z0-9_]* small_external_common
+0+0168 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+0168 [A-Z0-9_]*LO[A-Z0-9_]* small_external_common
+0+016c <[^>]*> ldl \$a0,[07]\(\$at\)
+0+0170 <[^>]*> ldr \$a0,[07]\(\$at\)
+0+0174 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0174 [A-Z0-9_]*HI[A-Z0-9_]* .bss.*
+0+0178 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+0178 [A-Z0-9_]*LO[A-Z0-9_]* .bss.*
+0+017c <[^>]*> ldl \$a0,[07]\(\$at\)
+0+0180 <[^>]*> ldr \$a0,[07]\(\$at\)
+0+0184 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0184 [A-Z0-9_]*HI[A-Z0-9_]* .sbss.*
+0+0188 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+0188 [A-Z0-9_]*LO[A-Z0-9_]* .sbss.*
+0+018c <[^>]*> ldl \$a0,[07]\(\$at\)
+0+0190 <[^>]*> ldr \$a0,[07]\(\$at\)
+0+0194 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+0194 [A-Z0-9_]*HI[A-Z0-9_]* .data.*
+0+0198 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+0198 [A-Z0-9_]*LO[A-Z0-9_]* .data.*
+0+019c <[^>]*> ldl \$a0,[07]\(\$at\)
+0+01a0 <[^>]*> ldr \$a0,[07]\(\$at\)
+0+01a4 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+01a4 [A-Z0-9_]*HI[A-Z0-9_]* big_external_data_label
+0+01a8 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+01a8 [A-Z0-9_]*LO[A-Z0-9_]* big_external_data_label
+0+01ac <[^>]*> ldl \$a0,[07]\(\$at\)
+0+01b0 <[^>]*> ldr \$a0,[07]\(\$at\)
+0+01b4 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+01b4 [A-Z0-9_]*HI[A-Z0-9_]* small_external_data_label
+0+01b8 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+01b8 [A-Z0-9_]*LO[A-Z0-9_]* small_external_data_label
+0+01bc <[^>]*> ldl \$a0,[07]\(\$at\)
+0+01c0 <[^>]*> ldr \$a0,[07]\(\$at\)
+0+01c4 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+01c4 [A-Z0-9_]*HI[A-Z0-9_]* big_external_common
+0+01c8 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+01c8 [A-Z0-9_]*LO[A-Z0-9_]* big_external_common
+0+01cc <[^>]*> ldl \$a0,[07]\(\$at\)
+0+01d0 <[^>]*> ldr \$a0,[07]\(\$at\)
+0+01d4 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+01d4 [A-Z0-9_]*HI[A-Z0-9_]* small_external_common
+0+01d8 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+01d8 [A-Z0-9_]*LO[A-Z0-9_]* small_external_common
+0+01dc <[^>]*> ldl \$a0,[07]\(\$at\)
+0+01e0 <[^>]*> ldr \$a0,[07]\(\$at\)
+0+01e4 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+01e4 [A-Z0-9_]*HI[A-Z0-9_]* .bss.*
+0+01e8 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+01e8 [A-Z0-9_]*LO[A-Z0-9_]* .bss.*
+0+01ec <[^>]*> ldl \$a0,[07]\(\$at\)
+0+01f0 <[^>]*> ldr \$a0,[07]\(\$at\)
+0+01f4 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+01f4 [A-Z0-9_]*HI[A-Z0-9_]* .sbss.*
+0+01f8 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+01f8 [A-Z0-9_]*LO[A-Z0-9_]* .sbss.*
+0+01fc <[^>]*> ldl \$a0,[07]\(\$at\)
+0+0200 <[^>]*> ldr \$a0,[07]\(\$at\)
+0+0204 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0204 [A-Z0-9_]*HI[A-Z0-9_]* .data.*
+0+0208 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+0208 [A-Z0-9_]*LO[A-Z0-9_]* .data.*
+0+020c <[^>]*> ldl \$a0,[07]\(\$at\)
+0+0210 <[^>]*> ldr \$a0,[07]\(\$at\)
+0+0214 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0214 [A-Z0-9_]*HI[A-Z0-9_]* big_external_data_label
+0+0218 <[^>]*> daddiu \$at,\$at,0
+[ ]*RELOC: 0+0218 [A-Z0-9_]*LO[A-Z0-9_]* big_external_data_label
+0+021c <[^>]*> ldl \$a0,[07]\(\$at\)
+0+0220 <[^>]*> ldr \$a0,[07]\(\$at\)
+0+0224 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0224 [A-Z0-9_]*HI[A-Z0-9_]* small_external_data_label
+0+0228 <[^>]*> daddiu \$at,\$at,0
+[ ]*RELOC: 0+0228 [A-Z0-9_]*LO[A-Z0-9_]* small_external_data_label
+0+022c <[^>]*> ldl \$a0,[07]\(\$at\)
+0+0230 <[^>]*> ldr \$a0,[07]\(\$at\)
+0+0234 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0234 [A-Z0-9_]*HI[A-Z0-9_]* big_external_common
+0+0238 <[^>]*> daddiu \$at,\$at,0
+[ ]*RELOC: 0+0238 [A-Z0-9_]*LO[A-Z0-9_]* big_external_common
+0+023c <[^>]*> ldl \$a0,[07]\(\$at\)
+0+0240 <[^>]*> ldr \$a0,[07]\(\$at\)
+0+0244 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0244 [A-Z0-9_]*HI[A-Z0-9_]* small_external_common
+0+0248 <[^>]*> daddiu \$at,\$at,0
+[ ]*RELOC: 0+0248 [A-Z0-9_]*LO[A-Z0-9_]* small_external_common
+0+024c <[^>]*> ldl \$a0,[07]\(\$at\)
+0+0250 <[^>]*> ldr \$a0,[07]\(\$at\)
+0+0254 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0254 [A-Z0-9_]*HI[A-Z0-9_]* .bss.*
+0+0258 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+0258 [A-Z0-9_]*LO[A-Z0-9_]* .bss.*
+0+025c <[^>]*> ldl \$a0,[07]\(\$at\)
+0+0260 <[^>]*> ldr \$a0,[07]\(\$at\)
+0+0264 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0264 [A-Z0-9_]*HI[A-Z0-9_]* .sbss.*
+0+0268 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+0268 [A-Z0-9_]*LO[A-Z0-9_]* .sbss.*
+0+026c <[^>]*> ldl \$a0,[07]\(\$at\)
+0+0270 <[^>]*> ldr \$a0,[07]\(\$at\)
+0+0274 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0274 [A-Z0-9_]*HI[A-Z0-9_]* .data.*
+0+0278 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+0278 [A-Z0-9_]*LO[A-Z0-9_]* .data.*
+0+027c <[^>]*> ldl \$a0,[07]\(\$at\)
+0+0280 <[^>]*> ldr \$a0,[07]\(\$at\)
+0+0284 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0284 [A-Z0-9_]*HI[A-Z0-9_]* big_external_data_label
+0+0288 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+0288 [A-Z0-9_]*LO[A-Z0-9_]* big_external_data_label
+0+028c <[^>]*> ldl \$a0,[07]\(\$at\)
+0+0290 <[^>]*> ldr \$a0,[07]\(\$at\)
+0+0294 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0294 [A-Z0-9_]*HI[A-Z0-9_]* small_external_data_label
+0+0298 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+0298 [A-Z0-9_]*LO[A-Z0-9_]* small_external_data_label
+0+029c <[^>]*> ldl \$a0,[07]\(\$at\)
+0+02a0 <[^>]*> ldr \$a0,[07]\(\$at\)
+0+02a4 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+02a4 [A-Z0-9_]*HI[A-Z0-9_]* big_external_common
+0+02a8 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+02a8 [A-Z0-9_]*LO[A-Z0-9_]* big_external_common
+0+02ac <[^>]*> ldl \$a0,[07]\(\$at\)
+0+02b0 <[^>]*> ldr \$a0,[07]\(\$at\)
+0+02b4 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+02b4 [A-Z0-9_]*HI[A-Z0-9_]* small_external_common
+0+02b8 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+02b8 [A-Z0-9_]*LO[A-Z0-9_]* small_external_common
+0+02bc <[^>]*> ldl \$a0,[07]\(\$at\)
+0+02c0 <[^>]*> ldr \$a0,[07]\(\$at\)
+0+02c4 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+02c4 [A-Z0-9_]*HI[A-Z0-9_]* .bss.*
+0+02c8 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+02c8 [A-Z0-9_]*LO[A-Z0-9_]* .bss.*
+0+02cc <[^>]*> ldl \$a0,[07]\(\$at\)
+0+02d0 <[^>]*> ldr \$a0,[07]\(\$at\)
+0+02d4 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+02d4 [A-Z0-9_]*HI[A-Z0-9_]* .sbss.*
+0+02d8 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+02d8 [A-Z0-9_]*LO[A-Z0-9_]* .sbss.*
+0+02dc <[^>]*> ldl \$a0,[07]\(\$at\)
+0+02e0 <[^>]*> ldr \$a0,[07]\(\$at\)
+...
diff --git a/gas/testsuite/gas/mips/ulh-empic.d b/gas/testsuite/gas/mips/ulh-empic.d
index b19f969..ee236df 100644
--- a/gas/testsuite/gas/mips/ulh-empic.d
+++ b/gas/testsuite/gas/mips/ulh-empic.d
@@ -1,5 +1,5 @@
#objdump: -dr
-#name: ulh-empic
+#name: MIPS ulh-empic
#as: -mips1 -membedded-pic
#source: ulh-pic.s
diff --git a/gas/testsuite/gas/mips/ulh-svr4pic.d b/gas/testsuite/gas/mips/ulh-svr4pic.d
new file mode 100644
index 0000000..45a27ff
--- /dev/null
+++ b/gas/testsuite/gas/mips/ulh-svr4pic.d
@@ -0,0 +1,117 @@
+#objdump: -dr
+#name: MIPS ulh-svr4pic
+#as: -mips1 -KPIC
+#source: ulh-pic.s
+
+# Test the unaligned load and store macros with -KPIC.
+
+.*: +file format .*mips.*
+
+Disassembly of section .text:
+0+0000 <[^>]*> lw \$at,0\(\$gp\)
+[ ]*RELOC: 0+0000 R_MIPS_GOT16 .data
+...
+0+0008 <[^>]*> addiu \$at,\$at,0
+[ ]*RELOC: 0+0008 R_MIPS_LO16 .data
+0+000c <[^>]*> lb \$a0,0\(\$at\)
+0+0010 <[^>]*> lbu \$at,1\(\$at\)
+0+0014 <[^>]*> sll \$a0,\$a0,0x8
+0+0018 <[^>]*> or \$a0,\$a0,\$at
+0+001c <[^>]*> lw \$at,0\(\$gp\)
+[ ]*RELOC: 0+001c R_MIPS_GOT16 big_external_data_label
+...
+0+0024 <[^>]*> lbu \$a0,0\(\$at\)
+0+0028 <[^>]*> lbu \$at,1\(\$at\)
+0+002c <[^>]*> sll \$a0,\$a0,0x8
+0+0030 <[^>]*> or \$a0,\$a0,\$at
+0+0034 <[^>]*> lw \$at,0\(\$gp\)
+[ ]*RELOC: 0+0034 R_MIPS_GOT16 small_external_data_label
+...
+0+003c <[^>]*> lwl \$a0,0\(\$at\)
+0+0040 <[^>]*> lwr \$a0,3\(\$at\)
+0+0044 <[^>]*> lw \$at,0\(\$gp\)
+[ ]*RELOC: 0+0044 R_MIPS_GOT16 big_external_common
+...
+0+004c <[^>]*> sb \$a0,1\(\$at\)
+0+0050 <[^>]*> srl \$a0,\$a0,0x8
+0+0054 <[^>]*> sb \$a0,0\(\$at\)
+0+0058 <[^>]*> lbu \$at,1\(\$at\)
+0+005c <[^>]*> sll \$a0,\$a0,0x8
+0+0060 <[^>]*> or \$a0,\$a0,\$at
+0+0064 <[^>]*> lw \$at,0\(\$gp\)
+[ ]*RELOC: 0+0064 R_MIPS_GOT16 small_external_common
+...
+0+006c <[^>]*> swl \$a0,0\(\$at\)
+0+0070 <[^>]*> swr \$a0,3\(\$at\)
+0+0074 <[^>]*> lw \$at,0\(\$gp\)
+[ ]*RELOC: 0+0074 R_MIPS_GOT16 .bss
+...
+0+007c <[^>]*> addiu \$at,\$at,0
+[ ]*RELOC: 0+007c R_MIPS_LO16 .bss
+0+0080 <[^>]*> lb \$a0,0\(\$at\)
+0+0084 <[^>]*> lbu \$at,1\(\$at\)
+0+0088 <[^>]*> sll \$a0,\$a0,0x8
+0+008c <[^>]*> or \$a0,\$a0,\$at
+0+0090 <[^>]*> lw \$at,0\(\$gp\)
+[ ]*RELOC: 0+0090 R_MIPS_GOT16 .bss
+...
+0+0098 <[^>]*> addiu \$at,\$at,1000
+[ ]*RELOC: 0+0098 R_MIPS_LO16 .bss
+0+009c <[^>]*> lbu \$a0,0\(\$at\)
+0+00a0 <[^>]*> lbu \$at,1\(\$at\)
+0+00a4 <[^>]*> sll \$a0,\$a0,0x8
+0+00a8 <[^>]*> or \$a0,\$a0,\$at
+0+00ac <[^>]*> lw \$at,0\(\$gp\)
+[ ]*RELOC: 0+00ac R_MIPS_GOT16 .data
+...
+0+00b4 <[^>]*> addiu \$at,\$at,1
+[ ]*RELOC: 0+00b4 R_MIPS_LO16 .data
+0+00b8 <[^>]*> lwl \$a0,0\(\$at\)
+0+00bc <[^>]*> lwr \$a0,3\(\$at\)
+0+00c0 <[^>]*> lw \$at,0\(\$gp\)
+[ ]*RELOC: 0+00c0 R_MIPS_GOT16 big_external_data_label
+...
+0+00c8 <[^>]*> sb \$a0,1\(\$at\)
+0+00cc <[^>]*> srl \$a0,\$a0,0x8
+0+00d0 <[^>]*> sb \$a0,0\(\$at\)
+0+00d4 <[^>]*> lbu \$at,1\(\$at\)
+0+00d8 <[^>]*> sll \$a0,\$a0,0x8
+0+00dc <[^>]*> or \$a0,\$a0,\$at
+0+00e0 <[^>]*> lw \$at,0\(\$gp\)
+[ ]*RELOC: 0+00e0 R_MIPS_GOT16 small_external_data_label
+...
+0+00e8 <[^>]*> swl \$a0,0\(\$at\)
+0+00ec <[^>]*> swr \$a0,3\(\$at\)
+0+00f0 <[^>]*> lw \$at,0\(\$gp\)
+[ ]*RELOC: 0+00f0 R_MIPS_GOT16 big_external_common
+...
+0+00f8 <[^>]*> lb \$a0,0\(\$at\)
+0+00fc <[^>]*> lbu \$at,1\(\$at\)
+0+0100 <[^>]*> sll \$a0,\$a0,0x8
+0+0104 <[^>]*> or \$a0,\$a0,\$at
+0+0108 <[^>]*> lw \$at,0\(\$gp\)
+[ ]*RELOC: 0+0108 R_MIPS_GOT16 small_external_common
+...
+0+0110 <[^>]*> lbu \$a0,0\(\$at\)
+0+0114 <[^>]*> lbu \$at,1\(\$at\)
+0+0118 <[^>]*> sll \$a0,\$a0,0x8
+0+011c <[^>]*> or \$a0,\$a0,\$at
+0+0120 <[^>]*> lw \$at,0\(\$gp\)
+[ ]*RELOC: 0+0120 R_MIPS_GOT16 .bss
+...
+0+0128 <[^>]*> addiu \$at,\$at,1
+[ ]*RELOC: 0+0128 R_MIPS_LO16 .bss
+0+012c <[^>]*> lwl \$a0,0\(\$at\)
+0+0130 <[^>]*> lwr \$a0,3\(\$at\)
+0+0134 <[^>]*> lw \$at,0\(\$gp\)
+[ ]*RELOC: 0+0134 R_MIPS_GOT16 .bss
+...
+0+013c <[^>]*> addiu \$at,\$at,1001
+[ ]*RELOC: 0+013c R_MIPS_LO16 .bss
+0+0140 <[^>]*> sb \$a0,1\(\$at\)
+0+0144 <[^>]*> srl \$a0,\$a0,0x8
+0+0148 <[^>]*> sb \$a0,0\(\$at\)
+0+014c <[^>]*> lbu \$at,1\(\$at\)
+0+0150 <[^>]*> sll \$a0,\$a0,0x8
+0+0154 <[^>]*> or \$a0,\$a0,\$at
+...
diff --git a/gas/testsuite/gas/mips/usd.d b/gas/testsuite/gas/mips/usd.d
new file mode 100644
index 0000000..908febc
--- /dev/null
+++ b/gas/testsuite/gas/mips/usd.d
@@ -0,0 +1,276 @@
+#objdump: -dr
+#name: MIPS usd
+#as: -mips3
+
+# Test the usd macro.
+
+.*: +file format .*mips.*
+
+Disassembly of section .text:
+0+0000 <[^>]*> sdl \$a0,[07]\(\$zero\)
+0+0004 <[^>]*> sdr \$a0,[07]\(\$zero\)
+0+0008 <[^>]*> sdl \$a0,[18]\(\$zero\)
+0+000c <[^>]*> sdr \$a0,[18]\(\$zero\)
+0+0010 <[^>]*> li \$at,32768
+0+0014 <[^>]*> sdl \$a0,[07]\(\$at\)
+0+0018 <[^>]*> sdr \$a0,[07]\(\$at\)
+0+001c <[^>]*> sdl \$a0,-3276[18]\(\$zero\)
+0+0020 <[^>]*> sdr \$a0,-3276[18]\(\$zero\)
+0+0024 <[^>]*> lui \$at,1
+0+0028 <[^>]*> sdl \$a0,[07]\(\$at\)
+0+002c <[^>]*> sdr \$a0,[07]\(\$at\)
+0+0030 <[^>]*> lui \$at,1
+0+0034 <[^>]*> ori \$at,\$at,42405
+0+0038 <[^>]*> sdl \$a0,[07]\(\$at\)
+0+003c <[^>]*> sdr \$a0,[07]\(\$at\)
+0+0040 <[^>]*> sdl \$a0,[07]\(\$a1\)
+0+0044 <[^>]*> sdr \$a0,[07]\(\$a1\)
+0+0048 <[^>]*> sdl \$a0,[18]\(\$a1\)
+0+004c <[^>]*> sdr \$a0,[-0-9]+\(\$a1\)
+0+0050 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0050 [A-Z0-9_]*HI[A-Z0-9_]* .data.*
+0+0054 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+0054 [A-Z0-9_]*LO[A-Z0-9_]* .data.*
+0+0058 <[^>]*> sdl \$a0,[07]\(\$at\)
+0+005c <[^>]*> sdr \$a0,[07]\(\$at\)
+0+0060 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0060 [A-Z0-9_]*HI[A-Z0-9_]* big_external_data_label
+0+0064 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+0064 [A-Z0-9_]*LO[A-Z0-9_]* big_external_data_label
+0+0068 <[^>]*> sdl \$a0,[07]\(\$at\)
+0+006c <[^>]*> sdr \$a0,[07]\(\$at\)
+0+0070 <[^>]*> daddiu \$at,\$gp,0
+[ ]*RELOC: 0+0070 [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
+0+0074 <[^>]*> sdl \$a0,[07]\(\$at\)
+0+0078 <[^>]*> sdr \$a0,[07]\(\$at\)
+0+007c <[^>]*> lui \$at,0
+[ ]*RELOC: 0+007c [A-Z0-9_]*HI[A-Z0-9_]* big_external_common
+0+0080 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+0080 [A-Z0-9_]*LO[A-Z0-9_]* big_external_common
+0+0084 <[^>]*> sdl \$a0,[07]\(\$at\)
+0+0088 <[^>]*> sdr \$a0,[07]\(\$at\)
+0+008c <[^>]*> daddiu \$at,\$gp,0
+[ ]*RELOC: 0+008c [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
+0+0090 <[^>]*> sdl \$a0,[07]\(\$at\)
+0+0094 <[^>]*> sdr \$a0,[07]\(\$at\)
+0+0098 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0098 [A-Z0-9_]*HI[A-Z0-9_]* .bss.*
+0+009c <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+009c [A-Z0-9_]*LO[A-Z0-9_]* .bss.*
+0+00a0 <[^>]*> sdl \$a0,[07]\(\$at\)
+0+00a4 <[^>]*> sdr \$a0,[07]\(\$at\)
+0+00a8 <[^>]*> daddiu \$at,\$gp,[-0-9]+
+[ ]*RELOC: 0+00a8 [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
+0+00ac <[^>]*> sdl \$a0,[07]\(\$at\)
+0+00b0 <[^>]*> sdr \$a0,[07]\(\$at\)
+0+00b4 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+00b4 [A-Z0-9_]*HI[A-Z0-9_]* .data.*
+0+00b8 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+00b8 [A-Z0-9_]*LO[A-Z0-9_]* .data.*
+0+00bc <[^>]*> sdl \$a0,[07]\(\$at\)
+0+00c0 <[^>]*> sdr \$a0,[07]\(\$at\)
+0+00c4 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+00c4 [A-Z0-9_]*HI[A-Z0-9_]* big_external_data_label
+0+00c8 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+00c8 [A-Z0-9_]*LO[A-Z0-9_]* big_external_data_label
+0+00cc <[^>]*> sdl \$a0,[07]\(\$at\)
+0+00d0 <[^>]*> sdr \$a0,[07]\(\$at\)
+0+00d4 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+00d4 [A-Z0-9_]*HI[A-Z0-9_]* small_external_data_label
+0+00d8 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+00d8 [A-Z0-9_]*LO[A-Z0-9_]* small_external_data_label
+0+00dc <[^>]*> sdl \$a0,[07]\(\$at\)
+0+00e0 <[^>]*> sdr \$a0,[07]\(\$at\)
+0+00e4 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+00e4 [A-Z0-9_]*HI[A-Z0-9_]* big_external_common
+0+00e8 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+00e8 [A-Z0-9_]*LO[A-Z0-9_]* big_external_common
+0+00ec <[^>]*> sdl \$a0,[07]\(\$at\)
+0+00f0 <[^>]*> sdr \$a0,[07]\(\$at\)
+0+00f4 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+00f4 [A-Z0-9_]*HI[A-Z0-9_]* small_external_common
+0+00f8 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+00f8 [A-Z0-9_]*LO[A-Z0-9_]* small_external_common
+0+00fc <[^>]*> sdl \$a0,[07]\(\$at\)
+0+0100 <[^>]*> sdr \$a0,[07]\(\$at\)
+0+0104 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+0104 [A-Z0-9_]*HI[A-Z0-9_]* .bss.*
+0+0108 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+0108 [A-Z0-9_]*LO[A-Z0-9_]* .bss.*
+0+010c <[^>]*> sdl \$a0,[07]\(\$at\)
+0+0110 <[^>]*> sdr \$a0,[07]\(\$at\)
+0+0114 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+0114 [A-Z0-9_]*HI[A-Z0-9_]* .sbss.*
+0+0118 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+0118 [A-Z0-9_]*LO[A-Z0-9_]* .sbss.*
+0+011c <[^>]*> sdl \$a0,[07]\(\$at\)
+0+0120 <[^>]*> sdr \$a0,[07]\(\$at\)
+0+0124 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0124 [A-Z0-9_]*HI[A-Z0-9_]* .data.*
+0+0128 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+0128 [A-Z0-9_]*LO[A-Z0-9_]* .data.*
+0+012c <[^>]*> sdl \$a0,[07]\(\$at\)
+0+0130 <[^>]*> sdr \$a0,[07]\(\$at\)
+0+0134 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0134 [A-Z0-9_]*HI[A-Z0-9_]* big_external_data_label
+0+0138 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+0138 [A-Z0-9_]*LO[A-Z0-9_]* big_external_data_label
+0+013c <[^>]*> sdl \$a0,[07]\(\$at\)
+0+0140 <[^>]*> sdr \$a0,[07]\(\$at\)
+0+0144 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0144 [A-Z0-9_]*HI[A-Z0-9_]* small_external_data_label
+0+0148 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+0148 [A-Z0-9_]*LO[A-Z0-9_]* small_external_data_label
+0+014c <[^>]*> sdl \$a0,[07]\(\$at\)
+0+0150 <[^>]*> sdr \$a0,[07]\(\$at\)
+0+0154 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0154 [A-Z0-9_]*HI[A-Z0-9_]* big_external_common
+0+0158 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+0158 [A-Z0-9_]*LO[A-Z0-9_]* big_external_common
+0+015c <[^>]*> sdl \$a0,[07]\(\$at\)
+0+0160 <[^>]*> sdr \$a0,[07]\(\$at\)
+0+0164 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0164 [A-Z0-9_]*HI[A-Z0-9_]* small_external_common
+0+0168 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+0168 [A-Z0-9_]*LO[A-Z0-9_]* small_external_common
+0+016c <[^>]*> sdl \$a0,[07]\(\$at\)
+0+0170 <[^>]*> sdr \$a0,[07]\(\$at\)
+0+0174 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0174 [A-Z0-9_]*HI[A-Z0-9_]* .bss.*
+0+0178 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+0178 [A-Z0-9_]*LO[A-Z0-9_]* .bss.*
+0+017c <[^>]*> sdl \$a0,[07]\(\$at\)
+0+0180 <[^>]*> sdr \$a0,[07]\(\$at\)
+0+0184 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0184 [A-Z0-9_]*HI[A-Z0-9_]* .sbss.*
+0+0188 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+0188 [A-Z0-9_]*LO[A-Z0-9_]* .sbss.*
+0+018c <[^>]*> sdl \$a0,[07]\(\$at\)
+0+0190 <[^>]*> sdr \$a0,[07]\(\$at\)
+0+0194 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+0194 [A-Z0-9_]*HI[A-Z0-9_]* .data.*
+0+0198 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+0198 [A-Z0-9_]*LO[A-Z0-9_]* .data.*
+0+019c <[^>]*> sdl \$a0,[07]\(\$at\)
+0+01a0 <[^>]*> sdr \$a0,[07]\(\$at\)
+0+01a4 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+01a4 [A-Z0-9_]*HI[A-Z0-9_]* big_external_data_label
+0+01a8 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+01a8 [A-Z0-9_]*LO[A-Z0-9_]* big_external_data_label
+0+01ac <[^>]*> sdl \$a0,[07]\(\$at\)
+0+01b0 <[^>]*> sdr \$a0,[07]\(\$at\)
+0+01b4 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+01b4 [A-Z0-9_]*HI[A-Z0-9_]* small_external_data_label
+0+01b8 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+01b8 [A-Z0-9_]*LO[A-Z0-9_]* small_external_data_label
+0+01bc <[^>]*> sdl \$a0,[07]\(\$at\)
+0+01c0 <[^>]*> sdr \$a0,[07]\(\$at\)
+0+01c4 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+01c4 [A-Z0-9_]*HI[A-Z0-9_]* big_external_common
+0+01c8 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+01c8 [A-Z0-9_]*LO[A-Z0-9_]* big_external_common
+0+01cc <[^>]*> sdl \$a0,[07]\(\$at\)
+0+01d0 <[^>]*> sdr \$a0,[07]\(\$at\)
+0+01d4 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+01d4 [A-Z0-9_]*HI[A-Z0-9_]* small_external_common
+0+01d8 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+01d8 [A-Z0-9_]*LO[A-Z0-9_]* small_external_common
+0+01dc <[^>]*> sdl \$a0,[07]\(\$at\)
+0+01e0 <[^>]*> sdr \$a0,[07]\(\$at\)
+0+01e4 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+01e4 [A-Z0-9_]*HI[A-Z0-9_]* .bss.*
+0+01e8 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+01e8 [A-Z0-9_]*LO[A-Z0-9_]* .bss.*
+0+01ec <[^>]*> sdl \$a0,[07]\(\$at\)
+0+01f0 <[^>]*> sdr \$a0,[07]\(\$at\)
+0+01f4 <[^>]*> lui \$at,0
+[ ]*RELOC: 0+01f4 [A-Z0-9_]*HI[A-Z0-9_]* .sbss.*
+0+01f8 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+01f8 [A-Z0-9_]*LO[A-Z0-9_]* .sbss.*
+0+01fc <[^>]*> sdl \$a0,[07]\(\$at\)
+0+0200 <[^>]*> sdr \$a0,[07]\(\$at\)
+0+0204 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0204 [A-Z0-9_]*HI[A-Z0-9_]* .data.*
+0+0208 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+0208 [A-Z0-9_]*LO[A-Z0-9_]* .data.*
+0+020c <[^>]*> sdl \$a0,[07]\(\$at\)
+0+0210 <[^>]*> sdr \$a0,[07]\(\$at\)
+0+0214 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0214 [A-Z0-9_]*HI[A-Z0-9_]* big_external_data_label
+0+0218 <[^>]*> daddiu \$at,\$at,0
+[ ]*RELOC: 0+0218 [A-Z0-9_]*LO[A-Z0-9_]* big_external_data_label
+0+021c <[^>]*> sdl \$a0,[07]\(\$at\)
+0+0220 <[^>]*> sdr \$a0,[07]\(\$at\)
+0+0224 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0224 [A-Z0-9_]*HI[A-Z0-9_]* small_external_data_label
+0+0228 <[^>]*> daddiu \$at,\$at,0
+[ ]*RELOC: 0+0228 [A-Z0-9_]*LO[A-Z0-9_]* small_external_data_label
+0+022c <[^>]*> sdl \$a0,[07]\(\$at\)
+0+0230 <[^>]*> sdr \$a0,[07]\(\$at\)
+0+0234 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0234 [A-Z0-9_]*HI[A-Z0-9_]* big_external_common
+0+0238 <[^>]*> daddiu \$at,\$at,0
+[ ]*RELOC: 0+0238 [A-Z0-9_]*LO[A-Z0-9_]* big_external_common
+0+023c <[^>]*> sdl \$a0,[07]\(\$at\)
+0+0240 <[^>]*> sdr \$a0,[07]\(\$at\)
+0+0244 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0244 [A-Z0-9_]*HI[A-Z0-9_]* small_external_common
+0+0248 <[^>]*> daddiu \$at,\$at,0
+[ ]*RELOC: 0+0248 [A-Z0-9_]*LO[A-Z0-9_]* small_external_common
+0+024c <[^>]*> sdl \$a0,[07]\(\$at\)
+0+0250 <[^>]*> sdr \$a0,[07]\(\$at\)
+0+0254 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0254 [A-Z0-9_]*HI[A-Z0-9_]* .bss.*
+0+0258 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+0258 [A-Z0-9_]*LO[A-Z0-9_]* .bss.*
+0+025c <[^>]*> sdl \$a0,[07]\(\$at\)
+0+0260 <[^>]*> sdr \$a0,[07]\(\$at\)
+0+0264 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0264 [A-Z0-9_]*HI[A-Z0-9_]* .sbss.*
+0+0268 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+0268 [A-Z0-9_]*LO[A-Z0-9_]* .sbss.*
+0+026c <[^>]*> sdl \$a0,[07]\(\$at\)
+0+0270 <[^>]*> sdr \$a0,[07]\(\$at\)
+0+0274 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0274 [A-Z0-9_]*HI[A-Z0-9_]* .data.*
+0+0278 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+0278 [A-Z0-9_]*LO[A-Z0-9_]* .data.*
+0+027c <[^>]*> sdl \$a0,[07]\(\$at\)
+0+0280 <[^>]*> sdr \$a0,[07]\(\$at\)
+0+0284 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0284 [A-Z0-9_]*HI[A-Z0-9_]* big_external_data_label
+0+0288 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+0288 [A-Z0-9_]*LO[A-Z0-9_]* big_external_data_label
+0+028c <[^>]*> sdl \$a0,[07]\(\$at\)
+0+0290 <[^>]*> sdr \$a0,[07]\(\$at\)
+0+0294 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+0294 [A-Z0-9_]*HI[A-Z0-9_]* small_external_data_label
+0+0298 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+0298 [A-Z0-9_]*LO[A-Z0-9_]* small_external_data_label
+0+029c <[^>]*> sdl \$a0,[07]\(\$at\)
+0+02a0 <[^>]*> sdr \$a0,[07]\(\$at\)
+0+02a4 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+02a4 [A-Z0-9_]*HI[A-Z0-9_]* big_external_common
+0+02a8 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+02a8 [A-Z0-9_]*LO[A-Z0-9_]* big_external_common
+0+02ac <[^>]*> sdl \$a0,[07]\(\$at\)
+0+02b0 <[^>]*> sdr \$a0,[07]\(\$at\)
+0+02b4 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+02b4 [A-Z0-9_]*HI[A-Z0-9_]* small_external_common
+0+02b8 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+02b8 [A-Z0-9_]*LO[A-Z0-9_]* small_external_common
+0+02bc <[^>]*> sdl \$a0,[07]\(\$at\)
+0+02c0 <[^>]*> sdr \$a0,[07]\(\$at\)
+0+02c4 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+02c4 [A-Z0-9_]*HI[A-Z0-9_]* .bss.*
+0+02c8 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+02c8 [A-Z0-9_]*LO[A-Z0-9_]* .bss.*
+0+02cc <[^>]*> sdl \$a0,[07]\(\$at\)
+0+02d0 <[^>]*> sdr \$a0,[07]\(\$at\)
+0+02d4 <[^>]*> lui \$at,[-0-9]+
+[ ]*RELOC: 0+02d4 [A-Z0-9_]*HI[A-Z0-9_]* .sbss.*
+0+02d8 <[^>]*> daddiu \$at,\$at,[-0-9]+
+[ ]*RELOC: 0+02d8 [A-Z0-9_]*LO[A-Z0-9_]* .sbss.*
+0+02dc <[^>]*> sdl \$a0,[07]\(\$at\)
+0+02e0 <[^>]*> sdr \$a0,[07]\(\$at\)
+...