aboutsummaryrefslogtreecommitdiff
path: root/gas
diff options
context:
space:
mode:
authorIan Lance Taylor <ian@airs.com>1996-10-29 22:22:35 +0000
committerIan Lance Taylor <ian@airs.com>1996-10-29 22:22:35 +0000
commit3c02d99662c785bdfe4a5206a7352fa73f4e7d4a (patch)
treea77a1e546a7afc5b1981e9166a7a041c8e897a61 /gas
parentc0e8bfc01ccff5c9dc78d944a2790f72b5489e47 (diff)
downloadgdb-3c02d99662c785bdfe4a5206a7352fa73f4e7d4a.zip
gdb-3c02d99662c785bdfe4a5206a7352fa73f4e7d4a.tar.gz
gdb-3c02d99662c785bdfe4a5206a7352fa73f4e7d4a.tar.bz2
* gas/mips/*.d: Update for disassembler changes.
Diffstat (limited to 'gas')
-rw-r--r--gas/testsuite/ChangeLog11
-rw-r--r--gas/testsuite/gas/mips/div-ilocks.d116
-rw-r--r--gas/testsuite/gas/mips/jal-empic.d34
-rw-r--r--gas/testsuite/gas/mips/la-empic.d194
-rw-r--r--gas/testsuite/gas/mips/la-xgot.d618
-rw-r--r--gas/testsuite/gas/mips/lb-empic.d186
-rw-r--r--gas/testsuite/gas/mips/ld-empic.d354
-rw-r--r--gas/testsuite/gas/mips/lif-empic.d24
-rw-r--r--gas/testsuite/gas/mips/lif-xgot.d28
-rw-r--r--gas/testsuite/gas/mips/ulh-empic.d164
-rw-r--r--gas/testsuite/gas/mips/ulh-xgot.d154
11 files changed, 1405 insertions, 478 deletions
diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog
index 4d5f734..28cc82e 100644
--- a/gas/testsuite/ChangeLog
+++ b/gas/testsuite/ChangeLog
@@ -1,3 +1,14 @@
+Tue Oct 29 17:05:43 1996 Ian Lance Taylor <ian@cygnus.com>
+
+ * gas/mips/*.d: Update for disassembler changes.
+
+start-sanitize-v850
+Wed Oct 16 22:39:50 1996 Jeffrey A Law (law@cygnus.com)
+
+ * gas/v850/reloc.s: New tests.
+ * gas/v850/basic.exp: Run them.
+
+end-sanitize-v850
Mon Oct 14 13:52:55 1996 Ian Lance Taylor <ian@cygnus.com>
* gas/mips: Add symbols to several testsuites, since the ELF
diff --git a/gas/testsuite/gas/mips/div-ilocks.d b/gas/testsuite/gas/mips/div-ilocks.d
new file mode 100644
index 0000000..3d665fe
--- /dev/null
+++ b/gas/testsuite/gas/mips/div-ilocks.d
@@ -0,0 +1,116 @@
+#objdump: -dr --prefix-addresses
+#name: MIPS div
+#source: div.s
+
+# Test the div macro.
+
+.*: +file format .*mips.*
+
+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,0x8000
+0+0020 bne \$a0,\$at,0+002c
+...
+0+0028 break 0x6
+0+002c mflo \$a0
+0+0030 div \$zero,\$a1,\$a2
+0+0034 bnez \$a2,0+0040
+...
+0+003c break 0x7
+0+0040 li \$at,-1
+0+0044 bne \$a2,\$at,0+0058
+0+0048 lui \$at,0x8000
+0+004c bne \$a1,\$at,0+0058
+...
+0+0054 break 0x6
+0+0058 mflo \$a0
+0+005c move \$a0,\$a0
+0+0060 move \$a0,\$a1
+0+0064 neg \$a0,\$a0
+0+0068 neg \$a0,\$a1
+0+006c li \$at,2
+0+0070 div \$zero,\$a0,\$at
+0+0074 mflo \$a0
+0+0078 li \$at,2
+0+007c div \$zero,\$a1,\$at
+0+0080 mflo \$a0
+0+0084 li \$at,0x8000
+0+0088 div \$zero,\$a0,\$at
+0+008c mflo \$a0
+0+0090 li \$at,0x8000
+0+0094 div \$zero,\$a1,\$at
+0+0098 mflo \$a0
+0+009c li \$at,-32768
+0+00a0 div \$zero,\$a0,\$at
+0+00a4 mflo \$a0
+0+00a8 li \$at,-32768
+0+00ac div \$zero,\$a1,\$at
+0+00b0 mflo \$a0
+0+00b4 lui \$at,0x1
+0+00b8 div \$zero,\$a0,\$at
+0+00bc mflo \$a0
+0+00c0 lui \$at,0x1
+0+00c4 div \$zero,\$a1,\$at
+0+00c8 mflo \$a0
+0+00cc lui \$at,0x1
+0+00d0 ori \$at,\$at,0xa5a5
+0+00d4 div \$zero,\$a0,\$at
+0+00d8 mflo \$a0
+0+00dc lui \$at,0x1
+0+00e0 ori \$at,\$at,0xa5a5
+0+00e4 div \$zero,\$a1,\$at
+0+00e8 mflo \$a0
+0+00ec divu \$zero,\$a0,\$a1
+0+00f0 divu \$zero,\$a0,\$a1
+0+00f4 bnez \$a1,0+0100
+...
+0+00fc break 0x7
+0+0100 mflo \$a0
+0+0104 divu \$zero,\$a1,\$a2
+0+0108 bnez \$a2,0+0114
+...
+0+0110 break 0x7
+0+0114 mflo \$a0
+0+0118 move \$a0,\$a0
+0+011c div \$zero,\$a1,\$a2
+0+0120 bnez \$a2,0+012c
+...
+0+0128 break 0x7
+0+012c li \$at,-1
+0+0130 bne \$a2,\$at,0+0144
+0+0134 lui \$at,0x8000
+0+0138 bne \$a1,\$at,0+0144
+...
+0+0140 break 0x6
+0+0144 mfhi \$a0
+0+0148 li \$at,2
+0+014c divu \$zero,\$a1,\$at
+0+0150 mfhi \$a0
+0+0154 ddiv \$zero,\$a1,\$a2
+0+0158 bnez \$a2,0+0164
+...
+0+0160 break 0x7
+0+0164 daddiu \$at,\$zero,-1
+0+0168 bne \$a2,\$at,0+0180
+0+016c daddiu \$at,\$zero,1
+0+0170 dsll32 \$at,\$at,0x1f
+0+0174 bne \$a1,\$at,0+0180
+...
+0+017c break 0x6
+0+0180 mflo \$a0
+0+0184 li \$at,2
+0+0188 ddivu \$zero,\$a1,\$at
+0+018c mflo \$a0
+0+0190 li \$at,0x8000
+0+0194 ddiv \$zero,\$a1,\$at
+0+0198 mfhi \$a0
+0+019c li \$at,-32768
+0+01a0 ddivu \$zero,\$a1,\$at
+0+01a4 mfhi \$a0
+...
diff --git a/gas/testsuite/gas/mips/jal-empic.d b/gas/testsuite/gas/mips/jal-empic.d
index d82c15f..0b5587a 100644
--- a/gas/testsuite/gas/mips/jal-empic.d
+++ b/gas/testsuite/gas/mips/jal-empic.d
@@ -1,4 +1,4 @@
-#objdump: -dr
+#objdump: -dr --prefix-addresses
#name: MIPS jal-empic
#as: -mips1 -membedded-pic
#source: jal.s
@@ -8,19 +8,19 @@
.*: +file format .*mips.*
Disassembly of section .text:
-0+0000 <[^>]*> jalr \$t9
-...
-0+0008 <[^>]*> jalr \$a0,\$t9
-...
-0+0010 <[^>]*> bal 0+0000 <text_label>
-[ ]*RELOC: 0+0010 PCREL16 .text
-...
-0+0018 <[^>]*> bal 0+0018 <text_label\+18>
-[ ]*RELOC: 0+0018 PCREL16 external_text_label
-...
-0+0020 <[^>]*> b 0+0000 <text_label>
-[ ]*RELOC: 0+0020 PCREL16 .text
-...
-0+0028 <[^>]*> b 0+0028 <text_label\+28>
-[ ]*RELOC: 0+0028 PCREL16 external_text_label
-...
+0+0000 <[^>]*> jalr \$t9
+0+0004 <[^>]*> nop
+0+0008 <[^>]*> jalr \$a0,\$t9
+0+000c <[^>]*> nop
+0+0010 <[^>]*> bal 0+0000 <text_label>
+[ ]*10: PCREL16 .text
+0+0014 <[^>]*> nop
+0+0018 <[^>]*> bal 0+0018 <text_label\+18>
+[ ]*18: PCREL16 external_text_label
+0+001c <[^>]*> nop
+0+0020 <[^>]*> b 0+0000 <text_label>
+[ ]*20: PCREL16 .text
+0+0024 <[^>]*> nop
+0+0028 <[^>]*> b 0+0028 <text_label\+28>
+[ ]*28: PCREL16 external_text_label
+0+002c <[^>]*> nop
diff --git a/gas/testsuite/gas/mips/la-empic.d b/gas/testsuite/gas/mips/la-empic.d
index 228a946..85103da 100644
--- a/gas/testsuite/gas/mips/la-empic.d
+++ b/gas/testsuite/gas/mips/la-empic.d
@@ -1,4 +1,4 @@
-#objdump: -dr
+#objdump: -dr --prefix-addresses
#name: MIPS la-empic
#as: -mips1 -membedded-pic
@@ -7,99 +7,99 @@
.*: +file format .*mips.*
Disassembly of section .text:
-0+0000 <[^>]*> li \$a0,0
-0+0004 <[^>]*> li \$a0,1
-0+0008 <[^>]*> li \$a0,0x8000
-0+000c <[^>]*> li \$a0,-32768
-0+0010 <[^>]*> lui \$a0,0x1
-0+0014 <[^>]*> lui \$a0,0x1
-0+0018 <[^>]*> ori \$a0,\$a0,0xa5a5
-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,0x8000
-0+0030 <[^>]*> addu \$a0,\$a0,\$a1
-0+0034 <[^>]*> li \$a0,-32768
-0+0038 <[^>]*> addu \$a0,\$a0,\$a1
-0+003c <[^>]*> lui \$a0,0x1
-0+0040 <[^>]*> addu \$a0,\$a0,\$a1
-0+0044 <[^>]*> lui \$a0,0x1
-0+0048 <[^>]*> ori \$a0,\$a0,0xa5a5
-0+004c <[^>]*> addu \$a0,\$a0,\$a1
-0+0050 <[^>]*> addiu \$a0,\$gp,-16384
-[ ]*RELOC: 0+0050 [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.*
-0+0054 <[^>]*> addiu \$a0,\$gp,0
-[ ]*RELOC: 0+0054 [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label
-0+0058 <[^>]*> addiu \$a0,\$gp,0
-[ ]*RELOC: 0+0058 [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
-0+005c <[^>]*> addiu \$a0,\$gp,0
-[ ]*RELOC: 0+005c [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common
-0+0060 <[^>]*> addiu \$a0,\$gp,0
-[ ]*RELOC: 0+0060 [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
-0+0064 <[^>]*> addiu \$a0,\$gp,-16384
-[ ]*RELOC: 0+0064 [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+0068 <[^>]*> addiu \$a0,\$gp,-15384
-[ ]*RELOC: 0+0068 [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+006c <[^>]*> addiu \$a0,\$gp,-16383
-[ ]*RELOC: 0+006c [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.*
-0+0070 <[^>]*> addiu \$a0,\$gp,1
-[ ]*RELOC: 0+0070 [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label
-0+0074 <[^>]*> addiu \$a0,\$gp,1
-[ ]*RELOC: 0+0074 [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
-0+0078 <[^>]*> addiu \$a0,\$gp,1
-[ ]*RELOC: 0+0078 [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common
-0+007c <[^>]*> addiu \$a0,\$gp,1
-[ ]*RELOC: 0+007c [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
-0+0080 <[^>]*> addiu \$a0,\$gp,-16383
-[ ]*RELOC: 0+0080 [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+0084 <[^>]*> addiu \$a0,\$gp,-15383
-[ ]*RELOC: 0+0084 [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+0088 <[^>]*> addiu \$a0,\$gp,-16384
-[ ]*RELOC: 0+0088 [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.*
-0+008c <[^>]*> addu \$a0,\$a0,\$a1
-0+0090 <[^>]*> addiu \$a0,\$gp,0
-[ ]*RELOC: 0+0090 [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label
-0+0094 <[^>]*> addu \$a0,\$a0,\$a1
-0+0098 <[^>]*> addiu \$a0,\$gp,0
-[ ]*RELOC: 0+0098 [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
-0+009c <[^>]*> addu \$a0,\$a0,\$a1
-0+00a0 <[^>]*> addiu \$a0,\$gp,0
-[ ]*RELOC: 0+00a0 [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common
-0+00a4 <[^>]*> addu \$a0,\$a0,\$a1
-0+00a8 <[^>]*> addiu \$a0,\$gp,0
-[ ]*RELOC: 0+00a8 [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
-0+00ac <[^>]*> addu \$a0,\$a0,\$a1
-0+00b0 <[^>]*> addiu \$a0,\$gp,-16384
-[ ]*RELOC: 0+00b0 [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+00b4 <[^>]*> addu \$a0,\$a0,\$a1
-0+00b8 <[^>]*> addiu \$a0,\$gp,-15384
-[ ]*RELOC: 0+00b8 [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+00bc <[^>]*> addu \$a0,\$a0,\$a1
-0+00c0 <[^>]*> addiu \$a0,\$gp,-16383
-[ ]*RELOC: 0+00c0 [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.*
-0+00c4 <[^>]*> addu \$a0,\$a0,\$a1
-0+00c8 <[^>]*> addiu \$a0,\$gp,1
-[ ]*RELOC: 0+00c8 [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label
-0+00cc <[^>]*> addu \$a0,\$a0,\$a1
-0+00d0 <[^>]*> addiu \$a0,\$gp,1
-[ ]*RELOC: 0+00d0 [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
-0+00d4 <[^>]*> addu \$a0,\$a0,\$a1
-0+00d8 <[^>]*> addiu \$a0,\$gp,1
-[ ]*RELOC: 0+00d8 [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common
-0+00dc <[^>]*> addu \$a0,\$a0,\$a1
-0+00e0 <[^>]*> addiu \$a0,\$gp,1
-[ ]*RELOC: 0+00e0 [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
-0+00e4 <[^>]*> addu \$a0,\$a0,\$a1
-0+00e8 <[^>]*> addiu \$a0,\$gp,-16383
-[ ]*RELOC: 0+00e8 [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+00ec <[^>]*> addu \$a0,\$a0,\$a1
-0+00f0 <[^>]*> addiu \$a0,\$gp,-15383
-[ ]*RELOC: 0+00f0 [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+00f4 <[^>]*> addu \$a0,\$a0,\$a1
-0+00f8 <[^>]*> lui \$a0,0x0
-[ ]*RELOC: 0+00f8 RELHI external_text_label
-0+00fc <[^>]*> addiu \$a0,\$a0,252
-[ ]*RELOC: 0+00fc RELLO external_text_label
-0+0100 <[^>]*> li \$a0,248
-...
+0+0000 <[^>]*> li \$a0,0
+0+0004 <[^>]*> li \$a0,1
+0+0008 <[^>]*> li \$a0,0x8000
+0+000c <[^>]*> li \$a0,-32768
+0+0010 <[^>]*> lui \$a0,0x1
+0+0014 <[^>]*> lui \$a0,0x1
+0+0018 <[^>]*> ori \$a0,\$a0,0xa5a5
+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,0x8000
+0+0030 <[^>]*> addu \$a0,\$a0,\$a1
+0+0034 <[^>]*> li \$a0,-32768
+0+0038 <[^>]*> addu \$a0,\$a0,\$a1
+0+003c <[^>]*> lui \$a0,0x1
+0+0040 <[^>]*> addu \$a0,\$a0,\$a1
+0+0044 <[^>]*> lui \$a0,0x1
+0+0048 <[^>]*> ori \$a0,\$a0,0xa5a5
+0+004c <[^>]*> addu \$a0,\$a0,\$a1
+0+0050 <[^>]*> addiu \$a0,\$gp,-16384
+[ ]*50: [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.*
+0+0054 <[^>]*> addiu \$a0,\$gp,0
+[ ]*54: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label
+0+0058 <[^>]*> addiu \$a0,\$gp,0
+[ ]*58: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
+0+005c <[^>]*> addiu \$a0,\$gp,0
+[ ]*5c: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common
+0+0060 <[^>]*> addiu \$a0,\$gp,0
+[ ]*60: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
+0+0064 <[^>]*> addiu \$a0,\$gp,-16384
+[ ]*64: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
+0+0068 <[^>]*> addiu \$a0,\$gp,-15384
+[ ]*68: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
+0+006c <[^>]*> addiu \$a0,\$gp,-16383
+[ ]*6c: [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.*
+0+0070 <[^>]*> addiu \$a0,\$gp,1
+[ ]*70: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label
+0+0074 <[^>]*> addiu \$a0,\$gp,1
+[ ]*74: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
+0+0078 <[^>]*> addiu \$a0,\$gp,1
+[ ]*78: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common
+0+007c <[^>]*> addiu \$a0,\$gp,1
+[ ]*7c: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
+0+0080 <[^>]*> addiu \$a0,\$gp,-16383
+[ ]*80: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
+0+0084 <[^>]*> addiu \$a0,\$gp,-15383
+[ ]*84: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
+0+0088 <[^>]*> addiu \$a0,\$gp,-16384
+[ ]*88: [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.*
+0+008c <[^>]*> addu \$a0,\$a0,\$a1
+0+0090 <[^>]*> addiu \$a0,\$gp,0
+[ ]*90: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label
+0+0094 <[^>]*> addu \$a0,\$a0,\$a1
+0+0098 <[^>]*> addiu \$a0,\$gp,0
+[ ]*98: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
+0+009c <[^>]*> addu \$a0,\$a0,\$a1
+0+00a0 <[^>]*> addiu \$a0,\$gp,0
+[ ]*a0: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common
+0+00a4 <[^>]*> addu \$a0,\$a0,\$a1
+0+00a8 <[^>]*> addiu \$a0,\$gp,0
+[ ]*a8: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
+0+00ac <[^>]*> addu \$a0,\$a0,\$a1
+0+00b0 <[^>]*> addiu \$a0,\$gp,-16384
+[ ]*b0: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
+0+00b4 <[^>]*> addu \$a0,\$a0,\$a1
+0+00b8 <[^>]*> addiu \$a0,\$gp,-15384
+[ ]*b8: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
+0+00bc <[^>]*> addu \$a0,\$a0,\$a1
+0+00c0 <[^>]*> addiu \$a0,\$gp,-16383
+[ ]*c0: [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.*
+0+00c4 <[^>]*> addu \$a0,\$a0,\$a1
+0+00c8 <[^>]*> addiu \$a0,\$gp,1
+[ ]*c8: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label
+0+00cc <[^>]*> addu \$a0,\$a0,\$a1
+0+00d0 <[^>]*> addiu \$a0,\$gp,1
+[ ]*d0: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
+0+00d4 <[^>]*> addu \$a0,\$a0,\$a1
+0+00d8 <[^>]*> addiu \$a0,\$gp,1
+[ ]*d8: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common
+0+00dc <[^>]*> addu \$a0,\$a0,\$a1
+0+00e0 <[^>]*> addiu \$a0,\$gp,1
+[ ]*e0: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
+0+00e4 <[^>]*> addu \$a0,\$a0,\$a1
+0+00e8 <[^>]*> addiu \$a0,\$gp,-16383
+[ ]*e8: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
+0+00ec <[^>]*> addu \$a0,\$a0,\$a1
+0+00f0 <[^>]*> addiu \$a0,\$gp,-15383
+[ ]*f0: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
+0+00f4 <[^>]*> addu \$a0,\$a0,\$a1
+0+00f8 <[^>]*> lui \$a0,0x0
+[ ]*f8: RELHI external_text_label
+0+00fc <[^>]*> addiu \$a0,\$a0,252
+[ ]*fc: RELLO external_text_label
+0+0100 <[^>]*> li \$a0,248
+ ...
diff --git a/gas/testsuite/gas/mips/la-xgot.d b/gas/testsuite/gas/mips/la-xgot.d
new file mode 100644
index 0000000..8a91fcb
--- /dev/null
+++ b/gas/testsuite/gas/mips/la-xgot.d
@@ -0,0 +1,618 @@
+#objdump: -dr --prefix-addresses
+#name: MIPS la-xgot
+#as: -mips1 -KPIC -xgot
+#source: la.s
+
+# Test the la macro with -KPIC -xgot.
+
+.*: +file format .*mips.*
+
+Disassembly of section .text:
+0+0000 <[^>]*> li \$a0,0
+0+0004 <[^>]*> li \$a0,1
+0+0008 <[^>]*> li \$a0,0x8000
+0+000c <[^>]*> li \$a0,-32768
+0+0010 <[^>]*> lui \$a0,0x1
+0+0014 <[^>]*> lui \$a0,0x1
+0+0018 <[^>]*> ori \$a0,\$a0,0xa5a5
+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,0x8000
+0+0030 <[^>]*> addu \$a0,\$a0,\$a1
+0+0034 <[^>]*> li \$a0,-32768
+0+0038 <[^>]*> addu \$a0,\$a0,\$a1
+0+003c <[^>]*> lui \$a0,0x1
+0+0040 <[^>]*> addu \$a0,\$a0,\$a1
+0+0044 <[^>]*> lui \$a0,0x1
+0+0048 <[^>]*> ori \$a0,\$a0,0xa5a5
+0+004c <[^>]*> addu \$a0,\$a0,\$a1
+0+0050 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*50: R_MIPS_GOT16 .data
+0+0054 <[^>]*> nop
+0+0058 <[^>]*> addiu \$a0,\$a0,0
+[ ]*58: R_MIPS_LO16 .data
+0+005c <[^>]*> lui \$a0,0x0
+[ ]*5c: R_MIPS_GOT_HI16 big_external_data_label
+0+0060 <[^>]*> addu \$a0,\$a0,\$gp
+0+0064 <[^>]*> lw \$a0,0\(\$a0\)
+[ ]*64: R_MIPS_GOT_LO16 big_external_data_label
+0+0068 <[^>]*> lui \$a0,0x0
+[ ]*68: R_MIPS_GOT_HI16 small_external_data_label
+0+006c <[^>]*> addu \$a0,\$a0,\$gp
+0+0070 <[^>]*> lw \$a0,0\(\$a0\)
+[ ]*70: R_MIPS_GOT_LO16 small_external_data_label
+0+0074 <[^>]*> lui \$a0,0x0
+[ ]*74: R_MIPS_GOT_HI16 big_external_common
+0+0078 <[^>]*> addu \$a0,\$a0,\$gp
+0+007c <[^>]*> lw \$a0,0\(\$a0\)
+[ ]*7c: R_MIPS_GOT_LO16 big_external_common
+0+0080 <[^>]*> lui \$a0,0x0
+[ ]*80: R_MIPS_GOT_HI16 small_external_common
+0+0084 <[^>]*> addu \$a0,\$a0,\$gp
+0+0088 <[^>]*> lw \$a0,0\(\$a0\)
+[ ]*88: R_MIPS_GOT_LO16 small_external_common
+0+008c <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*8c: R_MIPS_GOT16 .bss
+0+0090 <[^>]*> nop
+0+0094 <[^>]*> addiu \$a0,\$a0,0
+[ ]*94: R_MIPS_LO16 .bss
+0+0098 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*98: R_MIPS_GOT16 .bss
+0+009c <[^>]*> nop
+0+00a0 <[^>]*> addiu \$a0,\$a0,1000
+[ ]*a0: R_MIPS_LO16 .bss
+0+00a4 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*a4: R_MIPS_GOT16 .data
+0+00a8 <[^>]*> nop
+0+00ac <[^>]*> addiu \$a0,\$a0,1
+[ ]*ac: R_MIPS_LO16 .data
+0+00b0 <[^>]*> lui \$a0,0x0
+[ ]*b0: R_MIPS_GOT_HI16 big_external_data_label
+0+00b4 <[^>]*> addu \$a0,\$a0,\$gp
+0+00b8 <[^>]*> lw \$a0,0\(\$a0\)
+[ ]*b8: R_MIPS_GOT_LO16 big_external_data_label
+0+00bc <[^>]*> nop
+0+00c0 <[^>]*> addiu \$a0,\$a0,1
+0+00c4 <[^>]*> lui \$a0,0x0
+[ ]*c4: R_MIPS_GOT_HI16 small_external_data_label
+0+00c8 <[^>]*> addu \$a0,\$a0,\$gp
+0+00cc <[^>]*> lw \$a0,0\(\$a0\)
+[ ]*cc: R_MIPS_GOT_LO16 small_external_data_label
+0+00d0 <[^>]*> nop
+0+00d4 <[^>]*> addiu \$a0,\$a0,1
+0+00d8 <[^>]*> lui \$a0,0x0
+[ ]*d8: R_MIPS_GOT_HI16 big_external_common
+0+00dc <[^>]*> addu \$a0,\$a0,\$gp
+0+00e0 <[^>]*> lw \$a0,0\(\$a0\)
+[ ]*e0: R_MIPS_GOT_LO16 big_external_common
+0+00e4 <[^>]*> nop
+0+00e8 <[^>]*> addiu \$a0,\$a0,1
+0+00ec <[^>]*> lui \$a0,0x0
+[ ]*ec: R_MIPS_GOT_HI16 small_external_common
+0+00f0 <[^>]*> addu \$a0,\$a0,\$gp
+0+00f4 <[^>]*> lw \$a0,0\(\$a0\)
+[ ]*f4: R_MIPS_GOT_LO16 small_external_common
+0+00f8 <[^>]*> nop
+0+00fc <[^>]*> addiu \$a0,\$a0,1
+0+0100 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*100: R_MIPS_GOT16 .bss
+0+0104 <[^>]*> nop
+0+0108 <[^>]*> addiu \$a0,\$a0,1
+[ ]*108: R_MIPS_LO16 .bss
+0+010c <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*10c: R_MIPS_GOT16 .bss
+0+0110 <[^>]*> nop
+0+0114 <[^>]*> addiu \$a0,\$a0,1001
+[ ]*114: R_MIPS_LO16 .bss
+0+0118 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*118: R_MIPS_GOT16 .data
+0+011c <[^>]*> lui \$at,0x1
+0+0120 <[^>]*> addiu \$at,\$at,-32768
+[ ]*120: R_MIPS_LO16 .data
+0+0124 <[^>]*> addu \$a0,\$a0,\$at
+0+0128 <[^>]*> lui \$a0,0x0
+[ ]*128: R_MIPS_GOT_HI16 big_external_data_label
+0+012c <[^>]*> addu \$a0,\$a0,\$gp
+0+0130 <[^>]*> lw \$a0,0\(\$a0\)
+[ ]*130: R_MIPS_GOT_LO16 big_external_data_label
+0+0134 <[^>]*> lui \$at,0x1
+0+0138 <[^>]*> addiu \$at,\$at,-32768
+0+013c <[^>]*> addu \$a0,\$a0,\$at
+0+0140 <[^>]*> lui \$a0,0x0
+[ ]*140: R_MIPS_GOT_HI16 small_external_data_label
+0+0144 <[^>]*> addu \$a0,\$a0,\$gp
+0+0148 <[^>]*> lw \$a0,0\(\$a0\)
+[ ]*148: R_MIPS_GOT_LO16 small_external_data_label
+0+014c <[^>]*> lui \$at,0x1
+0+0150 <[^>]*> addiu \$at,\$at,-32768
+0+0154 <[^>]*> addu \$a0,\$a0,\$at
+0+0158 <[^>]*> lui \$a0,0x0
+[ ]*158: R_MIPS_GOT_HI16 big_external_common
+0+015c <[^>]*> addu \$a0,\$a0,\$gp
+0+0160 <[^>]*> lw \$a0,0\(\$a0\)
+[ ]*160: R_MIPS_GOT_LO16 big_external_common
+0+0164 <[^>]*> lui \$at,0x1
+0+0168 <[^>]*> addiu \$at,\$at,-32768
+0+016c <[^>]*> addu \$a0,\$a0,\$at
+0+0170 <[^>]*> lui \$a0,0x0
+[ ]*170: R_MIPS_GOT_HI16 small_external_common
+0+0174 <[^>]*> addu \$a0,\$a0,\$gp
+0+0178 <[^>]*> lw \$a0,0\(\$a0\)
+[ ]*178: R_MIPS_GOT_LO16 small_external_common
+0+017c <[^>]*> lui \$at,0x1
+0+0180 <[^>]*> addiu \$at,\$at,-32768
+0+0184 <[^>]*> addu \$a0,\$a0,\$at
+0+0188 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*188: R_MIPS_GOT16 .bss
+0+018c <[^>]*> lui \$at,0x1
+0+0190 <[^>]*> addiu \$at,\$at,-32768
+[ ]*190: R_MIPS_LO16 .bss
+0+0194 <[^>]*> addu \$a0,\$a0,\$at
+0+0198 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*198: R_MIPS_GOT16 .bss
+0+019c <[^>]*> lui \$at,0x1
+0+01a0 <[^>]*> addiu \$at,\$at,-31768
+[ ]*1a0: R_MIPS_LO16 .bss
+0+01a4 <[^>]*> addu \$a0,\$a0,\$at
+0+01a8 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*1a8: R_MIPS_GOT16 .data
+0+01ac <[^>]*> nop
+0+01b0 <[^>]*> addiu \$a0,\$a0,-32768
+[ ]*1b0: R_MIPS_LO16 .data
+0+01b4 <[^>]*> lui \$a0,0x0
+[ ]*1b4: R_MIPS_GOT_HI16 big_external_data_label
+0+01b8 <[^>]*> addu \$a0,\$a0,\$gp
+0+01bc <[^>]*> lw \$a0,0\(\$a0\)
+[ ]*1bc: R_MIPS_GOT_LO16 big_external_data_label
+0+01c0 <[^>]*> nop
+0+01c4 <[^>]*> addiu \$a0,\$a0,-32768
+0+01c8 <[^>]*> lui \$a0,0x0
+[ ]*1c8: R_MIPS_GOT_HI16 small_external_data_label
+0+01cc <[^>]*> addu \$a0,\$a0,\$gp
+0+01d0 <[^>]*> lw \$a0,0\(\$a0\)
+[ ]*1d0: R_MIPS_GOT_LO16 small_external_data_label
+0+01d4 <[^>]*> nop
+0+01d8 <[^>]*> addiu \$a0,\$a0,-32768
+0+01dc <[^>]*> lui \$a0,0x0
+[ ]*1dc: R_MIPS_GOT_HI16 big_external_common
+0+01e0 <[^>]*> addu \$a0,\$a0,\$gp
+0+01e4 <[^>]*> lw \$a0,0\(\$a0\)
+[ ]*1e4: R_MIPS_GOT_LO16 big_external_common
+0+01e8 <[^>]*> nop
+0+01ec <[^>]*> addiu \$a0,\$a0,-32768
+0+01f0 <[^>]*> lui \$a0,0x0
+[ ]*1f0: R_MIPS_GOT_HI16 small_external_common
+0+01f4 <[^>]*> addu \$a0,\$a0,\$gp
+0+01f8 <[^>]*> lw \$a0,0\(\$a0\)
+[ ]*1f8: R_MIPS_GOT_LO16 small_external_common
+0+01fc <[^>]*> nop
+0+0200 <[^>]*> addiu \$a0,\$a0,-32768
+0+0204 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*204: R_MIPS_GOT16 .bss
+0+0208 <[^>]*> nop
+0+020c <[^>]*> addiu \$a0,\$a0,-32768
+[ ]*20c: R_MIPS_LO16 .bss
+0+0210 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*210: R_MIPS_GOT16 .bss
+0+0214 <[^>]*> nop
+0+0218 <[^>]*> addiu \$a0,\$a0,-31768
+[ ]*218: R_MIPS_LO16 .bss
+0+021c <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*21c: R_MIPS_GOT16 .data
+0+0220 <[^>]*> lui \$at,0x1
+0+0224 <[^>]*> addiu \$at,\$at,0
+[ ]*224: R_MIPS_LO16 .data
+0+0228 <[^>]*> addu \$a0,\$a0,\$at
+0+022c <[^>]*> lui \$a0,0x0
+[ ]*22c: R_MIPS_GOT_HI16 big_external_data_label
+0+0230 <[^>]*> addu \$a0,\$a0,\$gp
+0+0234 <[^>]*> lw \$a0,0\(\$a0\)
+[ ]*234: R_MIPS_GOT_LO16 big_external_data_label
+0+0238 <[^>]*> lui \$at,0x1
+0+023c <[^>]*> addiu \$at,\$at,0
+0+0240 <[^>]*> addu \$a0,\$a0,\$at
+0+0244 <[^>]*> lui \$a0,0x0
+[ ]*244: R_MIPS_GOT_HI16 small_external_data_label
+0+0248 <[^>]*> addu \$a0,\$a0,\$gp
+0+024c <[^>]*> lw \$a0,0\(\$a0\)
+[ ]*24c: R_MIPS_GOT_LO16 small_external_data_label
+0+0250 <[^>]*> lui \$at,0x1
+0+0254 <[^>]*> addiu \$at,\$at,0
+0+0258 <[^>]*> addu \$a0,\$a0,\$at
+0+025c <[^>]*> lui \$a0,0x0
+[ ]*25c: R_MIPS_GOT_HI16 big_external_common
+0+0260 <[^>]*> addu \$a0,\$a0,\$gp
+0+0264 <[^>]*> lw \$a0,0\(\$a0\)
+[ ]*264: R_MIPS_GOT_LO16 big_external_common
+0+0268 <[^>]*> lui \$at,0x1
+0+026c <[^>]*> addiu \$at,\$at,0
+0+0270 <[^>]*> addu \$a0,\$a0,\$at
+0+0274 <[^>]*> lui \$a0,0x0
+[ ]*274: R_MIPS_GOT_HI16 small_external_common
+0+0278 <[^>]*> addu \$a0,\$a0,\$gp
+0+027c <[^>]*> lw \$a0,0\(\$a0\)
+[ ]*27c: R_MIPS_GOT_LO16 small_external_common
+0+0280 <[^>]*> lui \$at,0x1
+0+0284 <[^>]*> addiu \$at,\$at,0
+0+0288 <[^>]*> addu \$a0,\$a0,\$at
+0+028c <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*28c: R_MIPS_GOT16 .bss
+0+0290 <[^>]*> lui \$at,0x1
+0+0294 <[^>]*> addiu \$at,\$at,0
+[ ]*294: R_MIPS_LO16 .bss
+0+0298 <[^>]*> addu \$a0,\$a0,\$at
+0+029c <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*29c: R_MIPS_GOT16 .bss
+0+02a0 <[^>]*> lui \$at,0x1
+0+02a4 <[^>]*> addiu \$at,\$at,1000
+[ ]*2a4: R_MIPS_LO16 .bss
+0+02a8 <[^>]*> addu \$a0,\$a0,\$at
+0+02ac <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*2ac: R_MIPS_GOT16 .data
+0+02b0 <[^>]*> lui \$at,0x2
+0+02b4 <[^>]*> addiu \$at,\$at,-23131
+[ ]*2b4: R_MIPS_LO16 .data
+0+02b8 <[^>]*> addu \$a0,\$a0,\$at
+0+02bc <[^>]*> lui \$a0,0x0
+[ ]*2bc: R_MIPS_GOT_HI16 big_external_data_label
+0+02c0 <[^>]*> addu \$a0,\$a0,\$gp
+0+02c4 <[^>]*> lw \$a0,0\(\$a0\)
+[ ]*2c4: R_MIPS_GOT_LO16 big_external_data_label
+0+02c8 <[^>]*> lui \$at,0x2
+0+02cc <[^>]*> addiu \$at,\$at,-23131
+0+02d0 <[^>]*> addu \$a0,\$a0,\$at
+0+02d4 <[^>]*> lui \$a0,0x0
+[ ]*2d4: R_MIPS_GOT_HI16 small_external_data_label
+0+02d8 <[^>]*> addu \$a0,\$a0,\$gp
+0+02dc <[^>]*> lw \$a0,0\(\$a0\)
+[ ]*2dc: R_MIPS_GOT_LO16 small_external_data_label
+0+02e0 <[^>]*> lui \$at,0x2
+0+02e4 <[^>]*> addiu \$at,\$at,-23131
+0+02e8 <[^>]*> addu \$a0,\$a0,\$at
+0+02ec <[^>]*> lui \$a0,0x0
+[ ]*2ec: R_MIPS_GOT_HI16 big_external_common
+0+02f0 <[^>]*> addu \$a0,\$a0,\$gp
+0+02f4 <[^>]*> lw \$a0,0\(\$a0\)
+[ ]*2f4: R_MIPS_GOT_LO16 big_external_common
+0+02f8 <[^>]*> lui \$at,0x2
+0+02fc <[^>]*> addiu \$at,\$at,-23131
+0+0300 <[^>]*> addu \$a0,\$a0,\$at
+0+0304 <[^>]*> lui \$a0,0x0
+[ ]*304: R_MIPS_GOT_HI16 small_external_common
+0+0308 <[^>]*> addu \$a0,\$a0,\$gp
+0+030c <[^>]*> lw \$a0,0\(\$a0\)
+[ ]*30c: R_MIPS_GOT_LO16 small_external_common
+0+0310 <[^>]*> lui \$at,0x2
+0+0314 <[^>]*> addiu \$at,\$at,-23131
+0+0318 <[^>]*> addu \$a0,\$a0,\$at
+0+031c <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*31c: R_MIPS_GOT16 .bss
+0+0320 <[^>]*> lui \$at,0x2
+0+0324 <[^>]*> addiu \$at,\$at,-23131
+[ ]*324: R_MIPS_LO16 .bss
+0+0328 <[^>]*> addu \$a0,\$a0,\$at
+0+032c <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*32c: R_MIPS_GOT16 .bss
+0+0330 <[^>]*> lui \$at,0x2
+0+0334 <[^>]*> addiu \$at,\$at,-22131
+[ ]*334: R_MIPS_LO16 .bss
+0+0338 <[^>]*> addu \$a0,\$a0,\$at
+0+033c <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*33c: R_MIPS_GOT16 .data
+0+0340 <[^>]*> nop
+0+0344 <[^>]*> addiu \$a0,\$a0,0
+[ ]*344: R_MIPS_LO16 .data
+0+0348 <[^>]*> addu \$a0,\$a0,\$a1
+0+034c <[^>]*> lui \$a0,0x0
+[ ]*34c: R_MIPS_GOT_HI16 big_external_data_label
+0+0350 <[^>]*> addu \$a0,\$a0,\$gp
+0+0354 <[^>]*> lw \$a0,0\(\$a0\)
+[ ]*354: R_MIPS_GOT_LO16 big_external_data_label
+0+0358 <[^>]*> nop
+0+035c <[^>]*> addu \$a0,\$a0,\$a1
+0+0360 <[^>]*> lui \$a0,0x0
+[ ]*360: R_MIPS_GOT_HI16 small_external_data_label
+0+0364 <[^>]*> addu \$a0,\$a0,\$gp
+0+0368 <[^>]*> lw \$a0,0\(\$a0\)
+[ ]*368: R_MIPS_GOT_LO16 small_external_data_label
+0+036c <[^>]*> nop
+0+0370 <[^>]*> addu \$a0,\$a0,\$a1
+0+0374 <[^>]*> lui \$a0,0x0
+[ ]*374: R_MIPS_GOT_HI16 big_external_common
+0+0378 <[^>]*> addu \$a0,\$a0,\$gp
+0+037c <[^>]*> lw \$a0,0\(\$a0\)
+[ ]*37c: R_MIPS_GOT_LO16 big_external_common
+0+0380 <[^>]*> nop
+0+0384 <[^>]*> addu \$a0,\$a0,\$a1
+0+0388 <[^>]*> lui \$a0,0x0
+[ ]*388: R_MIPS_GOT_HI16 small_external_common
+0+038c <[^>]*> addu \$a0,\$a0,\$gp
+0+0390 <[^>]*> lw \$a0,0\(\$a0\)
+[ ]*390: R_MIPS_GOT_LO16 small_external_common
+0+0394 <[^>]*> nop
+0+0398 <[^>]*> addu \$a0,\$a0,\$a1
+0+039c <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*39c: R_MIPS_GOT16 .bss
+0+03a0 <[^>]*> nop
+0+03a4 <[^>]*> addiu \$a0,\$a0,0
+[ ]*3a4: R_MIPS_LO16 .bss
+0+03a8 <[^>]*> addu \$a0,\$a0,\$a1
+0+03ac <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*3ac: R_MIPS_GOT16 .bss
+0+03b0 <[^>]*> nop
+0+03b4 <[^>]*> addiu \$a0,\$a0,1000
+[ ]*3b4: R_MIPS_LO16 .bss
+0+03b8 <[^>]*> addu \$a0,\$a0,\$a1
+0+03bc <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*3bc: R_MIPS_GOT16 .data
+0+03c0 <[^>]*> nop
+0+03c4 <[^>]*> addiu \$a0,\$a0,1
+[ ]*3c4: R_MIPS_LO16 .data
+0+03c8 <[^>]*> addu \$a0,\$a0,\$a1
+0+03cc <[^>]*> lui \$a0,0x0
+[ ]*3cc: R_MIPS_GOT_HI16 big_external_data_label
+0+03d0 <[^>]*> addu \$a0,\$a0,\$gp
+0+03d4 <[^>]*> lw \$a0,0\(\$a0\)
+[ ]*3d4: R_MIPS_GOT_LO16 big_external_data_label
+0+03d8 <[^>]*> nop
+0+03dc <[^>]*> addiu \$a0,\$a0,1
+0+03e0 <[^>]*> addu \$a0,\$a0,\$a1
+0+03e4 <[^>]*> lui \$a0,0x0
+[ ]*3e4: R_MIPS_GOT_HI16 small_external_data_label
+0+03e8 <[^>]*> addu \$a0,\$a0,\$gp
+0+03ec <[^>]*> lw \$a0,0\(\$a0\)
+[ ]*3ec: R_MIPS_GOT_LO16 small_external_data_label
+0+03f0 <[^>]*> nop
+0+03f4 <[^>]*> addiu \$a0,\$a0,1
+0+03f8 <[^>]*> addu \$a0,\$a0,\$a1
+0+03fc <[^>]*> lui \$a0,0x0
+[ ]*3fc: R_MIPS_GOT_HI16 big_external_common
+0+0400 <[^>]*> addu \$a0,\$a0,\$gp
+0+0404 <[^>]*> lw \$a0,0\(\$a0\)
+[ ]*404: R_MIPS_GOT_LO16 big_external_common
+0+0408 <[^>]*> nop
+0+040c <[^>]*> addiu \$a0,\$a0,1
+0+0410 <[^>]*> addu \$a0,\$a0,\$a1
+0+0414 <[^>]*> lui \$a0,0x0
+[ ]*414: R_MIPS_GOT_HI16 small_external_common
+0+0418 <[^>]*> addu \$a0,\$a0,\$gp
+0+041c <[^>]*> lw \$a0,0\(\$a0\)
+[ ]*41c: R_MIPS_GOT_LO16 small_external_common
+0+0420 <[^>]*> nop
+0+0424 <[^>]*> addiu \$a0,\$a0,1
+0+0428 <[^>]*> addu \$a0,\$a0,\$a1
+0+042c <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*42c: R_MIPS_GOT16 .bss
+0+0430 <[^>]*> nop
+0+0434 <[^>]*> addiu \$a0,\$a0,1
+[ ]*434: R_MIPS_LO16 .bss
+0+0438 <[^>]*> addu \$a0,\$a0,\$a1
+0+043c <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*43c: R_MIPS_GOT16 .bss
+0+0440 <[^>]*> nop
+0+0444 <[^>]*> addiu \$a0,\$a0,1001
+[ ]*444: R_MIPS_LO16 .bss
+0+0448 <[^>]*> addu \$a0,\$a0,\$a1
+0+044c <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*44c: R_MIPS_GOT16 .data
+0+0450 <[^>]*> lui \$at,0x1
+0+0454 <[^>]*> addiu \$at,\$at,-32768
+[ ]*454: R_MIPS_LO16 .data
+0+0458 <[^>]*> addu \$a0,\$a0,\$at
+0+045c <[^>]*> addu \$a0,\$a0,\$a1
+0+0460 <[^>]*> lui \$a0,0x0
+[ ]*460: R_MIPS_GOT_HI16 big_external_data_label
+0+0464 <[^>]*> addu \$a0,\$a0,\$gp
+0+0468 <[^>]*> lw \$a0,0\(\$a0\)
+[ ]*468: R_MIPS_GOT_LO16 big_external_data_label
+0+046c <[^>]*> lui \$at,0x1
+0+0470 <[^>]*> addiu \$at,\$at,-32768
+0+0474 <[^>]*> addu \$a0,\$a0,\$at
+0+0478 <[^>]*> addu \$a0,\$a0,\$a1
+0+047c <[^>]*> lui \$a0,0x0
+[ ]*47c: R_MIPS_GOT_HI16 small_external_data_label
+0+0480 <[^>]*> addu \$a0,\$a0,\$gp
+0+0484 <[^>]*> lw \$a0,0\(\$a0\)
+[ ]*484: R_MIPS_GOT_LO16 small_external_data_label
+0+0488 <[^>]*> lui \$at,0x1
+0+048c <[^>]*> addiu \$at,\$at,-32768
+0+0490 <[^>]*> addu \$a0,\$a0,\$at
+0+0494 <[^>]*> addu \$a0,\$a0,\$a1
+0+0498 <[^>]*> lui \$a0,0x0
+[ ]*498: R_MIPS_GOT_HI16 big_external_common
+0+049c <[^>]*> addu \$a0,\$a0,\$gp
+0+04a0 <[^>]*> lw \$a0,0\(\$a0\)
+[ ]*4a0: R_MIPS_GOT_LO16 big_external_common
+0+04a4 <[^>]*> lui \$at,0x1
+0+04a8 <[^>]*> addiu \$at,\$at,-32768
+0+04ac <[^>]*> addu \$a0,\$a0,\$at
+0+04b0 <[^>]*> addu \$a0,\$a0,\$a1
+0+04b4 <[^>]*> lui \$a0,0x0
+[ ]*4b4: R_MIPS_GOT_HI16 small_external_common
+0+04b8 <[^>]*> addu \$a0,\$a0,\$gp
+0+04bc <[^>]*> lw \$a0,0\(\$a0\)
+[ ]*4bc: R_MIPS_GOT_LO16 small_external_common
+0+04c0 <[^>]*> lui \$at,0x1
+0+04c4 <[^>]*> addiu \$at,\$at,-32768
+0+04c8 <[^>]*> addu \$a0,\$a0,\$at
+0+04cc <[^>]*> addu \$a0,\$a0,\$a1
+0+04d0 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*4d0: R_MIPS_GOT16 .bss
+0+04d4 <[^>]*> lui \$at,0x1
+0+04d8 <[^>]*> addiu \$at,\$at,-32768
+[ ]*4d8: R_MIPS_LO16 .bss
+0+04dc <[^>]*> addu \$a0,\$a0,\$at
+0+04e0 <[^>]*> addu \$a0,\$a0,\$a1
+0+04e4 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*4e4: R_MIPS_GOT16 .bss
+0+04e8 <[^>]*> lui \$at,0x1
+0+04ec <[^>]*> addiu \$at,\$at,-31768
+[ ]*4ec: R_MIPS_LO16 .bss
+0+04f0 <[^>]*> addu \$a0,\$a0,\$at
+0+04f4 <[^>]*> addu \$a0,\$a0,\$a1
+0+04f8 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*4f8: R_MIPS_GOT16 .data
+0+04fc <[^>]*> nop
+0+0500 <[^>]*> addiu \$a0,\$a0,-32768
+[ ]*500: R_MIPS_LO16 .data
+0+0504 <[^>]*> addu \$a0,\$a0,\$a1
+0+0508 <[^>]*> lui \$a0,0x0
+[ ]*508: R_MIPS_GOT_HI16 big_external_data_label
+0+050c <[^>]*> addu \$a0,\$a0,\$gp
+0+0510 <[^>]*> lw \$a0,0\(\$a0\)
+[ ]*510: R_MIPS_GOT_LO16 big_external_data_label
+0+0514 <[^>]*> nop
+0+0518 <[^>]*> addiu \$a0,\$a0,-32768
+0+051c <[^>]*> addu \$a0,\$a0,\$a1
+0+0520 <[^>]*> lui \$a0,0x0
+[ ]*520: R_MIPS_GOT_HI16 small_external_data_label
+0+0524 <[^>]*> addu \$a0,\$a0,\$gp
+0+0528 <[^>]*> lw \$a0,0\(\$a0\)
+[ ]*528: R_MIPS_GOT_LO16 small_external_data_label
+0+052c <[^>]*> nop
+0+0530 <[^>]*> addiu \$a0,\$a0,-32768
+0+0534 <[^>]*> addu \$a0,\$a0,\$a1
+0+0538 <[^>]*> lui \$a0,0x0
+[ ]*538: R_MIPS_GOT_HI16 big_external_common
+0+053c <[^>]*> addu \$a0,\$a0,\$gp
+0+0540 <[^>]*> lw \$a0,0\(\$a0\)
+[ ]*540: R_MIPS_GOT_LO16 big_external_common
+0+0544 <[^>]*> nop
+0+0548 <[^>]*> addiu \$a0,\$a0,-32768
+0+054c <[^>]*> addu \$a0,\$a0,\$a1
+0+0550 <[^>]*> lui \$a0,0x0
+[ ]*550: R_MIPS_GOT_HI16 small_external_common
+0+0554 <[^>]*> addu \$a0,\$a0,\$gp
+0+0558 <[^>]*> lw \$a0,0\(\$a0\)
+[ ]*558: R_MIPS_GOT_LO16 small_external_common
+0+055c <[^>]*> nop
+0+0560 <[^>]*> addiu \$a0,\$a0,-32768
+0+0564 <[^>]*> addu \$a0,\$a0,\$a1
+0+0568 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*568: R_MIPS_GOT16 .bss
+0+056c <[^>]*> nop
+0+0570 <[^>]*> addiu \$a0,\$a0,-32768
+[ ]*570: R_MIPS_LO16 .bss
+0+0574 <[^>]*> addu \$a0,\$a0,\$a1
+0+0578 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*578: R_MIPS_GOT16 .bss
+0+057c <[^>]*> nop
+0+0580 <[^>]*> addiu \$a0,\$a0,-31768
+[ ]*580: R_MIPS_LO16 .bss
+0+0584 <[^>]*> addu \$a0,\$a0,\$a1
+0+0588 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*588: R_MIPS_GOT16 .data
+0+058c <[^>]*> lui \$at,0x1
+0+0590 <[^>]*> addiu \$at,\$at,0
+[ ]*590: R_MIPS_LO16 .data
+0+0594 <[^>]*> addu \$a0,\$a0,\$at
+0+0598 <[^>]*> addu \$a0,\$a0,\$a1
+0+059c <[^>]*> lui \$a0,0x0
+[ ]*59c: R_MIPS_GOT_HI16 big_external_data_label
+0+05a0 <[^>]*> addu \$a0,\$a0,\$gp
+0+05a4 <[^>]*> lw \$a0,0\(\$a0\)
+[ ]*5a4: R_MIPS_GOT_LO16 big_external_data_label
+0+05a8 <[^>]*> lui \$at,0x1
+0+05ac <[^>]*> addiu \$at,\$at,0
+0+05b0 <[^>]*> addu \$a0,\$a0,\$at
+0+05b4 <[^>]*> addu \$a0,\$a0,\$a1
+0+05b8 <[^>]*> lui \$a0,0x0
+[ ]*5b8: R_MIPS_GOT_HI16 small_external_data_label
+0+05bc <[^>]*> addu \$a0,\$a0,\$gp
+0+05c0 <[^>]*> lw \$a0,0\(\$a0\)
+[ ]*5c0: R_MIPS_GOT_LO16 small_external_data_label
+0+05c4 <[^>]*> lui \$at,0x1
+0+05c8 <[^>]*> addiu \$at,\$at,0
+0+05cc <[^>]*> addu \$a0,\$a0,\$at
+0+05d0 <[^>]*> addu \$a0,\$a0,\$a1
+0+05d4 <[^>]*> lui \$a0,0x0
+[ ]*5d4: R_MIPS_GOT_HI16 big_external_common
+0+05d8 <[^>]*> addu \$a0,\$a0,\$gp
+0+05dc <[^>]*> lw \$a0,0\(\$a0\)
+[ ]*5dc: R_MIPS_GOT_LO16 big_external_common
+0+05e0 <[^>]*> lui \$at,0x1
+0+05e4 <[^>]*> addiu \$at,\$at,0
+0+05e8 <[^>]*> addu \$a0,\$a0,\$at
+0+05ec <[^>]*> addu \$a0,\$a0,\$a1
+0+05f0 <[^>]*> lui \$a0,0x0
+[ ]*5f0: R_MIPS_GOT_HI16 small_external_common
+0+05f4 <[^>]*> addu \$a0,\$a0,\$gp
+0+05f8 <[^>]*> lw \$a0,0\(\$a0\)
+[ ]*5f8: R_MIPS_GOT_LO16 small_external_common
+0+05fc <[^>]*> lui \$at,0x1
+0+0600 <[^>]*> addiu \$at,\$at,0
+0+0604 <[^>]*> addu \$a0,\$a0,\$at
+0+0608 <[^>]*> addu \$a0,\$a0,\$a1
+0+060c <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*60c: R_MIPS_GOT16 .bss
+0+0610 <[^>]*> lui \$at,0x1
+0+0614 <[^>]*> addiu \$at,\$at,0
+[ ]*614: R_MIPS_LO16 .bss
+0+0618 <[^>]*> addu \$a0,\$a0,\$at
+0+061c <[^>]*> addu \$a0,\$a0,\$a1
+0+0620 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*620: R_MIPS_GOT16 .bss
+0+0624 <[^>]*> lui \$at,0x1
+0+0628 <[^>]*> addiu \$at,\$at,1000
+[ ]*628: R_MIPS_LO16 .bss
+0+062c <[^>]*> addu \$a0,\$a0,\$at
+0+0630 <[^>]*> addu \$a0,\$a0,\$a1
+0+0634 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*634: R_MIPS_GOT16 .data
+0+0638 <[^>]*> lui \$at,0x2
+0+063c <[^>]*> addiu \$at,\$at,-23131
+[ ]*63c: R_MIPS_LO16 .data
+0+0640 <[^>]*> addu \$a0,\$a0,\$at
+0+0644 <[^>]*> addu \$a0,\$a0,\$a1
+0+0648 <[^>]*> lui \$a0,0x0
+[ ]*648: R_MIPS_GOT_HI16 big_external_data_label
+0+064c <[^>]*> addu \$a0,\$a0,\$gp
+0+0650 <[^>]*> lw \$a0,0\(\$a0\)
+[ ]*650: R_MIPS_GOT_LO16 big_external_data_label
+0+0654 <[^>]*> lui \$at,0x2
+0+0658 <[^>]*> addiu \$at,\$at,-23131
+0+065c <[^>]*> addu \$a0,\$a0,\$at
+0+0660 <[^>]*> addu \$a0,\$a0,\$a1
+0+0664 <[^>]*> lui \$a0,0x0
+[ ]*664: R_MIPS_GOT_HI16 small_external_data_label
+0+0668 <[^>]*> addu \$a0,\$a0,\$gp
+0+066c <[^>]*> lw \$a0,0\(\$a0\)
+[ ]*66c: R_MIPS_GOT_LO16 small_external_data_label
+0+0670 <[^>]*> lui \$at,0x2
+0+0674 <[^>]*> addiu \$at,\$at,-23131
+0+0678 <[^>]*> addu \$a0,\$a0,\$at
+0+067c <[^>]*> addu \$a0,\$a0,\$a1
+0+0680 <[^>]*> lui \$a0,0x0
+[ ]*680: R_MIPS_GOT_HI16 big_external_common
+0+0684 <[^>]*> addu \$a0,\$a0,\$gp
+0+0688 <[^>]*> lw \$a0,0\(\$a0\)
+[ ]*688: R_MIPS_GOT_LO16 big_external_common
+0+068c <[^>]*> lui \$at,0x2
+0+0690 <[^>]*> addiu \$at,\$at,-23131
+0+0694 <[^>]*> addu \$a0,\$a0,\$at
+0+0698 <[^>]*> addu \$a0,\$a0,\$a1
+0+069c <[^>]*> lui \$a0,0x0
+[ ]*69c: R_MIPS_GOT_HI16 small_external_common
+0+06a0 <[^>]*> addu \$a0,\$a0,\$gp
+0+06a4 <[^>]*> lw \$a0,0\(\$a0\)
+[ ]*6a4: R_MIPS_GOT_LO16 small_external_common
+0+06a8 <[^>]*> lui \$at,0x2
+0+06ac <[^>]*> addiu \$at,\$at,-23131
+0+06b0 <[^>]*> addu \$a0,\$a0,\$at
+0+06b4 <[^>]*> addu \$a0,\$a0,\$a1
+0+06b8 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*6b8: R_MIPS_GOT16 .bss
+0+06bc <[^>]*> lui \$at,0x2
+0+06c0 <[^>]*> addiu \$at,\$at,-23131
+[ ]*6c0: R_MIPS_LO16 .bss
+0+06c4 <[^>]*> addu \$a0,\$a0,\$at
+0+06c8 <[^>]*> addu \$a0,\$a0,\$a1
+0+06cc <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*6cc: R_MIPS_GOT16 .bss
+0+06d0 <[^>]*> lui \$at,0x2
+0+06d4 <[^>]*> addiu \$at,\$at,-22131
+[ ]*6d4: R_MIPS_LO16 .bss
+0+06d8 <[^>]*> addu \$a0,\$a0,\$at
+0+06dc <[^>]*> addu \$a0,\$a0,\$a1
diff --git a/gas/testsuite/gas/mips/lb-empic.d b/gas/testsuite/gas/mips/lb-empic.d
index 27b0465..c013a40 100644
--- a/gas/testsuite/gas/mips/lb-empic.d
+++ b/gas/testsuite/gas/mips/lb-empic.d
@@ -1,4 +1,4 @@
-#objdump: -dr
+#objdump: -dr --prefix-addresses
#name: MIPS lb-empic
#as: -mips1 -membedded-pic
#source: lb-pic.s
@@ -8,95 +8,95 @@
.*: +file format .*mips.*
Disassembly of section .text:
-0+0000 <[^>]*> lb \$a0,0\(\$zero\)
-0+0004 <[^>]*> lb \$a0,1\(\$zero\)
-0+0008 <[^>]*> lui \$a0,0x1
-0+000c <[^>]*> lb \$a0,-32768\(\$a0\)
-0+0010 <[^>]*> lb \$a0,-32768\(\$zero\)
-0+0014 <[^>]*> lui \$a0,0x1
-0+0018 <[^>]*> lb \$a0,0\(\$a0\)
-0+001c <[^>]*> lui \$a0,0x2
-0+0020 <[^>]*> lb \$a0,-23131\(\$a0\)
-0+0024 <[^>]*> lb \$a0,0\(\$a1\)
-0+0028 <[^>]*> lb \$a0,1\(\$a1\)
-0+002c <[^>]*> lui \$a0,0x1
-0+0030 <[^>]*> addu \$a0,\$a0,\$a1
-0+0034 <[^>]*> lb \$a0,-32768\(\$a0\)
-0+0038 <[^>]*> lb \$a0,-32768\(\$a1\)
-0+003c <[^>]*> lui \$a0,0x1
-0+0040 <[^>]*> addu \$a0,\$a0,\$a1
-0+0044 <[^>]*> lb \$a0,0\(\$a0\)
-0+0048 <[^>]*> lui \$a0,0x2
-0+004c <[^>]*> addu \$a0,\$a0,\$a1
-0+0050 <[^>]*> lb \$a0,-23131\(\$a0\)
-0+0054 <[^>]*> lb \$a0,-16384\(\$gp\)
-[ ]*RELOC: 0+0054 [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.*
-0+0058 <[^>]*> lb \$a0,0\(\$gp\)
-[ ]*RELOC: 0+0058 [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label
-0+005c <[^>]*> lb \$a0,0\(\$gp\)
-[ ]*RELOC: 0+005c [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
-0+0060 <[^>]*> lb \$a0,0\(\$gp\)
-[ ]*RELOC: 0+0060 [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common
-0+0064 <[^>]*> lb \$a0,0\(\$gp\)
-[ ]*RELOC: 0+0064 [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
-0+0068 <[^>]*> lb \$a0,-16384\(\$gp\)
-[ ]*RELOC: 0+0068 [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+006c <[^>]*> lb \$a0,-15384\(\$gp\)
-[ ]*RELOC: 0+006c [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+0070 <[^>]*> lb \$a0,-16383\(\$gp\)
-[ ]*RELOC: 0+0070 [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.*
-0+0074 <[^>]*> lb \$a0,1\(\$gp\)
-[ ]*RELOC: 0+0074 [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label
-0+0078 <[^>]*> lb \$a0,1\(\$gp\)
-[ ]*RELOC: 0+0078 [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
-0+007c <[^>]*> lb \$a0,1\(\$gp\)
-[ ]*RELOC: 0+007c [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common
-0+0080 <[^>]*> lb \$a0,1\(\$gp\)
-[ ]*RELOC: 0+0080 [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
-0+0084 <[^>]*> lb \$a0,-16383\(\$gp\)
-[ ]*RELOC: 0+0084 [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+0088 <[^>]*> lb \$a0,-15383\(\$gp\)
-[ ]*RELOC: 0+0088 [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+008c <[^>]*> addu \$a0,\$a1,\$gp
-0+0090 <[^>]*> lb \$a0,-16384\(\$a0\)
-[ ]*RELOC: 0+0090 [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.*
-0+0094 <[^>]*> addu \$a0,\$a1,\$gp
-0+0098 <[^>]*> lb \$a0,0\(\$a0\)
-[ ]*RELOC: 0+0098 [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label
-0+009c <[^>]*> addu \$a0,\$a1,\$gp
-0+00a0 <[^>]*> lb \$a0,0\(\$a0\)
-[ ]*RELOC: 0+00a0 [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
-0+00a4 <[^>]*> addu \$a0,\$a1,\$gp
-0+00a8 <[^>]*> lb \$a0,0\(\$a0\)
-[ ]*RELOC: 0+00a8 [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common
-0+00ac <[^>]*> addu \$a0,\$a1,\$gp
-0+00b0 <[^>]*> lb \$a0,0\(\$a0\)
-[ ]*RELOC: 0+00b0 [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
-0+00b4 <[^>]*> addu \$a0,\$a1,\$gp
-0+00b8 <[^>]*> lb \$a0,-16384\(\$a0\)
-[ ]*RELOC: 0+00b8 [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+00bc <[^>]*> addu \$a0,\$a1,\$gp
-0+00c0 <[^>]*> lb \$a0,-15384\(\$a0\)
-[ ]*RELOC: 0+00c0 [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+00c4 <[^>]*> addu \$a0,\$a1,\$gp
-0+00c8 <[^>]*> lb \$a0,-16383\(\$a0\)
-[ ]*RELOC: 0+00c8 [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.*
-0+00cc <[^>]*> addu \$a0,\$a1,\$gp
-0+00d0 <[^>]*> lb \$a0,1\(\$a0\)
-[ ]*RELOC: 0+00d0 [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label
-0+00d4 <[^>]*> addu \$a0,\$a1,\$gp
-0+00d8 <[^>]*> lb \$a0,1\(\$a0\)
-[ ]*RELOC: 0+00d8 [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
-0+00dc <[^>]*> addu \$a0,\$a1,\$gp
-0+00e0 <[^>]*> lb \$a0,1\(\$a0\)
-[ ]*RELOC: 0+00e0 [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common
-0+00e4 <[^>]*> addu \$a0,\$a1,\$gp
-0+00e8 <[^>]*> lb \$a0,1\(\$a0\)
-[ ]*RELOC: 0+00e8 [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
-0+00ec <[^>]*> addu \$a0,\$a1,\$gp
-0+00f0 <[^>]*> lb \$a0,-16383\(\$a0\)
-[ ]*RELOC: 0+00f0 [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+00f4 <[^>]*> addu \$a0,\$a1,\$gp
-0+00f8 <[^>]*> lb \$a0,-15383\(\$a0\)
-[ ]*RELOC: 0+00f8 [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-...
+0+0000 <[^>]*> lb \$a0,0\(\$zero\)
+0+0004 <[^>]*> lb \$a0,1\(\$zero\)
+0+0008 <[^>]*> lui \$a0,0x1
+0+000c <[^>]*> lb \$a0,-32768\(\$a0\)
+0+0010 <[^>]*> lb \$a0,-32768\(\$zero\)
+0+0014 <[^>]*> lui \$a0,0x1
+0+0018 <[^>]*> lb \$a0,0\(\$a0\)
+0+001c <[^>]*> lui \$a0,0x2
+0+0020 <[^>]*> lb \$a0,-23131\(\$a0\)
+0+0024 <[^>]*> lb \$a0,0\(\$a1\)
+0+0028 <[^>]*> lb \$a0,1\(\$a1\)
+0+002c <[^>]*> lui \$a0,0x1
+0+0030 <[^>]*> addu \$a0,\$a0,\$a1
+0+0034 <[^>]*> lb \$a0,-32768\(\$a0\)
+0+0038 <[^>]*> lb \$a0,-32768\(\$a1\)
+0+003c <[^>]*> lui \$a0,0x1
+0+0040 <[^>]*> addu \$a0,\$a0,\$a1
+0+0044 <[^>]*> lb \$a0,0\(\$a0\)
+0+0048 <[^>]*> lui \$a0,0x2
+0+004c <[^>]*> addu \$a0,\$a0,\$a1
+0+0050 <[^>]*> lb \$a0,-23131\(\$a0\)
+0+0054 <[^>]*> lb \$a0,-16384\(\$gp\)
+[ ]*54: [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.*
+0+0058 <[^>]*> lb \$a0,0\(\$gp\)
+[ ]*58: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label
+0+005c <[^>]*> lb \$a0,0\(\$gp\)
+[ ]*5c: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
+0+0060 <[^>]*> lb \$a0,0\(\$gp\)
+[ ]*60: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common
+0+0064 <[^>]*> lb \$a0,0\(\$gp\)
+[ ]*64: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
+0+0068 <[^>]*> lb \$a0,-16384\(\$gp\)
+[ ]*68: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
+0+006c <[^>]*> lb \$a0,-15384\(\$gp\)
+[ ]*6c: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
+0+0070 <[^>]*> lb \$a0,-16383\(\$gp\)
+[ ]*70: [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.*
+0+0074 <[^>]*> lb \$a0,1\(\$gp\)
+[ ]*74: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label
+0+0078 <[^>]*> lb \$a0,1\(\$gp\)
+[ ]*78: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
+0+007c <[^>]*> lb \$a0,1\(\$gp\)
+[ ]*7c: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common
+0+0080 <[^>]*> lb \$a0,1\(\$gp\)
+[ ]*80: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
+0+0084 <[^>]*> lb \$a0,-16383\(\$gp\)
+[ ]*84: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
+0+0088 <[^>]*> lb \$a0,-15383\(\$gp\)
+[ ]*88: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
+0+008c <[^>]*> addu \$a0,\$a1,\$gp
+0+0090 <[^>]*> lb \$a0,-16384\(\$a0\)
+[ ]*90: [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.*
+0+0094 <[^>]*> addu \$a0,\$a1,\$gp
+0+0098 <[^>]*> lb \$a0,0\(\$a0\)
+[ ]*98: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label
+0+009c <[^>]*> addu \$a0,\$a1,\$gp
+0+00a0 <[^>]*> lb \$a0,0\(\$a0\)
+[ ]*a0: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
+0+00a4 <[^>]*> addu \$a0,\$a1,\$gp
+0+00a8 <[^>]*> lb \$a0,0\(\$a0\)
+[ ]*a8: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common
+0+00ac <[^>]*> addu \$a0,\$a1,\$gp
+0+00b0 <[^>]*> lb \$a0,0\(\$a0\)
+[ ]*b0: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
+0+00b4 <[^>]*> addu \$a0,\$a1,\$gp
+0+00b8 <[^>]*> lb \$a0,-16384\(\$a0\)
+[ ]*b8: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
+0+00bc <[^>]*> addu \$a0,\$a1,\$gp
+0+00c0 <[^>]*> lb \$a0,-15384\(\$a0\)
+[ ]*c0: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
+0+00c4 <[^>]*> addu \$a0,\$a1,\$gp
+0+00c8 <[^>]*> lb \$a0,-16383\(\$a0\)
+[ ]*c8: [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.*
+0+00cc <[^>]*> addu \$a0,\$a1,\$gp
+0+00d0 <[^>]*> lb \$a0,1\(\$a0\)
+[ ]*d0: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label
+0+00d4 <[^>]*> addu \$a0,\$a1,\$gp
+0+00d8 <[^>]*> lb \$a0,1\(\$a0\)
+[ ]*d8: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
+0+00dc <[^>]*> addu \$a0,\$a1,\$gp
+0+00e0 <[^>]*> lb \$a0,1\(\$a0\)
+[ ]*e0: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common
+0+00e4 <[^>]*> addu \$a0,\$a1,\$gp
+0+00e8 <[^>]*> lb \$a0,1\(\$a0\)
+[ ]*e8: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
+0+00ec <[^>]*> addu \$a0,\$a1,\$gp
+0+00f0 <[^>]*> lb \$a0,-16383\(\$a0\)
+[ ]*f0: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
+0+00f4 <[^>]*> addu \$a0,\$a1,\$gp
+0+00f8 <[^>]*> lb \$a0,-15383\(\$a0\)
+[ ]*f8: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
+0+00fc <[^>]*> nop
diff --git a/gas/testsuite/gas/mips/ld-empic.d b/gas/testsuite/gas/mips/ld-empic.d
index 1f5a602..a28db9b 100644
--- a/gas/testsuite/gas/mips/ld-empic.d
+++ b/gas/testsuite/gas/mips/ld-empic.d
@@ -1,4 +1,4 @@
-#objdump: -dr
+#objdump: -dr --prefix-addresses
#name: MIPS ld-empic
#as: -mips1 -membedded-pic
#source: ld-pic.s
@@ -8,179 +8,179 @@
.*: +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,0x1
-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,0x1
-0+0028 <[^>]*> lw \$a0,0\(\$at\)
-0+002c <[^>]*> lw \$a1,4\(\$at\)
-0+0030 <[^>]*> lui \$at,0x2
-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,0x1
-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,0x1
-0+0074 <[^>]*> addu \$at,\$a1,\$at
-0+0078 <[^>]*> lw \$a0,0\(\$at\)
-0+007c <[^>]*> lw \$a1,4\(\$at\)
-0+0080 <[^>]*> lui \$at,0x2
-0+0084 <[^>]*> addu \$at,\$a1,\$at
-0+0088 <[^>]*> lw \$a0,-23131\(\$at\)
-0+008c <[^>]*> lw \$a1,-23127\(\$at\)
-0+0090 <[^>]*> lw \$a0,-16384\(\$gp\)
-[ ]*RELOC: 0+0090 [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.*
-0+0094 <[^>]*> lw \$a1,-16380\(\$gp\)
-[ ]*RELOC: 0+0094 [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.*
-0+0098 <[^>]*> lw \$a0,0\(\$gp\)
-[ ]*RELOC: 0+0098 [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label
-0+009c <[^>]*> lw \$a1,4\(\$gp\)
-[ ]*RELOC: 0+009c [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label
-0+00a0 <[^>]*> lw \$a0,0\(\$gp\)
-[ ]*RELOC: 0+00a0 [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
-0+00a4 <[^>]*> lw \$a1,4\(\$gp\)
-[ ]*RELOC: 0+00a4 [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
-0+00a8 <[^>]*> lw \$a0,0\(\$gp\)
-[ ]*RELOC: 0+00a8 [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common
-0+00ac <[^>]*> lw \$a1,4\(\$gp\)
-[ ]*RELOC: 0+00ac [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common
-0+00b0 <[^>]*> lw \$a0,0\(\$gp\)
-[ ]*RELOC: 0+00b0 [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
-0+00b4 <[^>]*> lw \$a1,4\(\$gp\)
-[ ]*RELOC: 0+00b4 [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
-0+00b8 <[^>]*> lw \$a0,-16384\(\$gp\)
-[ ]*RELOC: 0+00b8 [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+00bc <[^>]*> lw \$a1,-16380\(\$gp\)
-[ ]*RELOC: 0+00bc [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+00c0 <[^>]*> lw \$a0,-15384\(\$gp\)
-[ ]*RELOC: 0+00c0 [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+00c4 <[^>]*> lw \$a1,-15380\(\$gp\)
-[ ]*RELOC: 0+00c4 [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+00c8 <[^>]*> lw \$a0,-16383\(\$gp\)
-[ ]*RELOC: 0+00c8 [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.*
-0+00cc <[^>]*> lw \$a1,-16379\(\$gp\)
-[ ]*RELOC: 0+00cc [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.*
-0+00d0 <[^>]*> lw \$a0,1\(\$gp\)
-[ ]*RELOC: 0+00d0 [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label
-0+00d4 <[^>]*> lw \$a1,5\(\$gp\)
-[ ]*RELOC: 0+00d4 [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label
-0+00d8 <[^>]*> lw \$a0,1\(\$gp\)
-[ ]*RELOC: 0+00d8 [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
-0+00dc <[^>]*> lw \$a1,5\(\$gp\)
-[ ]*RELOC: 0+00dc [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
-0+00e0 <[^>]*> lw \$a0,1\(\$gp\)
-[ ]*RELOC: 0+00e0 [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common
-0+00e4 <[^>]*> lw \$a1,5\(\$gp\)
-[ ]*RELOC: 0+00e4 [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common
-0+00e8 <[^>]*> lw \$a0,1\(\$gp\)
-[ ]*RELOC: 0+00e8 [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
-0+00ec <[^>]*> lw \$a1,5\(\$gp\)
-[ ]*RELOC: 0+00ec [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
-0+00f0 <[^>]*> lw \$a0,-16383\(\$gp\)
-[ ]*RELOC: 0+00f0 [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+00f4 <[^>]*> lw \$a1,-16379\(\$gp\)
-[ ]*RELOC: 0+00f4 [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+00f8 <[^>]*> lw \$a0,-15383\(\$gp\)
-[ ]*RELOC: 0+00f8 [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+00fc <[^>]*> lw \$a1,-15379\(\$gp\)
-[ ]*RELOC: 0+00fc [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-...
-0+0104 <[^>]*> addu \$at,\$a1,\$gp
-0+0108 <[^>]*> lw \$a0,-16384\(\$at\)
-[ ]*RELOC: 0+0108 [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.*
-0+010c <[^>]*> lw \$a1,-16380\(\$at\)
-[ ]*RELOC: 0+010c [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.*
-...
-0+0114 <[^>]*> addu \$at,\$a1,\$gp
-0+0118 <[^>]*> lw \$a0,0\(\$at\)
-[ ]*RELOC: 0+0118 [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label
-0+011c <[^>]*> lw \$a1,4\(\$at\)
-[ ]*RELOC: 0+011c [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label
-...
-0+0124 <[^>]*> addu \$at,\$a1,\$gp
-0+0128 <[^>]*> lw \$a0,0\(\$at\)
-[ ]*RELOC: 0+0128 [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
-0+012c <[^>]*> lw \$a1,4\(\$at\)
-[ ]*RELOC: 0+012c [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
-...
-0+0134 <[^>]*> addu \$at,\$a1,\$gp
-0+0138 <[^>]*> lw \$a0,0\(\$at\)
-[ ]*RELOC: 0+0138 [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common
-0+013c <[^>]*> lw \$a1,4\(\$at\)
-[ ]*RELOC: 0+013c [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common
-...
-0+0144 <[^>]*> addu \$at,\$a1,\$gp
-0+0148 <[^>]*> lw \$a0,0\(\$at\)
-[ ]*RELOC: 0+0148 [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
-0+014c <[^>]*> lw \$a1,4\(\$at\)
-[ ]*RELOC: 0+014c [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
-...
-0+0154 <[^>]*> addu \$at,\$a1,\$gp
-0+0158 <[^>]*> lw \$a0,-16384\(\$at\)
-[ ]*RELOC: 0+0158 [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+015c <[^>]*> lw \$a1,-16380\(\$at\)
-[ ]*RELOC: 0+015c [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-...
-0+0164 <[^>]*> addu \$at,\$a1,\$gp
-0+0168 <[^>]*> lw \$a0,-15384\(\$at\)
-[ ]*RELOC: 0+0168 [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+016c <[^>]*> lw \$a1,-15380\(\$at\)
-[ ]*RELOC: 0+016c [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-...
-0+0174 <[^>]*> addu \$at,\$a1,\$gp
-0+0178 <[^>]*> lw \$a0,-16383\(\$at\)
-[ ]*RELOC: 0+0178 [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.*
-0+017c <[^>]*> lw \$a1,-16379\(\$at\)
-[ ]*RELOC: 0+017c [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.*
-...
-0+0184 <[^>]*> addu \$at,\$a1,\$gp
-0+0188 <[^>]*> lw \$a0,1\(\$at\)
-[ ]*RELOC: 0+0188 [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label
-0+018c <[^>]*> lw \$a1,5\(\$at\)
-[ ]*RELOC: 0+018c [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label
-...
-0+0194 <[^>]*> addu \$at,\$a1,\$gp
-0+0198 <[^>]*> lw \$a0,1\(\$at\)
-[ ]*RELOC: 0+0198 [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
-0+019c <[^>]*> lw \$a1,5\(\$at\)
-[ ]*RELOC: 0+019c [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
-...
-0+01a4 <[^>]*> addu \$at,\$a1,\$gp
-0+01a8 <[^>]*> lw \$a0,1\(\$at\)
-[ ]*RELOC: 0+01a8 [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common
-0+01ac <[^>]*> lw \$a1,5\(\$at\)
-[ ]*RELOC: 0+01ac [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common
-...
-0+01b4 <[^>]*> addu \$at,\$a1,\$gp
-0+01b8 <[^>]*> lw \$a0,1\(\$at\)
-[ ]*RELOC: 0+01b8 [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
-0+01bc <[^>]*> lw \$a1,5\(\$at\)
-[ ]*RELOC: 0+01bc [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
-...
-0+01c4 <[^>]*> addu \$at,\$a1,\$gp
-0+01c8 <[^>]*> lw \$a0,-16383\(\$at\)
-[ ]*RELOC: 0+01c8 [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+01cc <[^>]*> lw \$a1,-16379\(\$at\)
-[ ]*RELOC: 0+01cc [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-...
-0+01d4 <[^>]*> addu \$at,\$a1,\$gp
-0+01d8 <[^>]*> lw \$a0,-15383\(\$at\)
-[ ]*RELOC: 0+01d8 [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+01dc <[^>]*> lw \$a1,-15379\(\$at\)
-[ ]*RELOC: 0+01dc [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
+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,0x1
+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,0x1
+0+0028 <[^>]*> lw \$a0,0\(\$at\)
+0+002c <[^>]*> lw \$a1,4\(\$at\)
+0+0030 <[^>]*> lui \$at,0x2
+0+0034 <[^>]*> lw \$a0,-23131\(\$at\)
+0+0038 <[^>]*> lw \$a1,-23127\(\$at\)
+0+003c <[^>]*> nop
+0+0040 <[^>]*> lw \$a0,0\(\$a1\)
+0+0044 <[^>]*> lw \$a1,4\(\$a1\)
+0+0048 <[^>]*> nop
+0+004c <[^>]*> lw \$a0,1\(\$a1\)
+0+0050 <[^>]*> lw \$a1,5\(\$a1\)
+0+0054 <[^>]*> lui \$at,0x1
+0+0058 <[^>]*> addu \$at,\$a1,\$at
+0+005c <[^>]*> lw \$a0,-32768\(\$at\)
+0+0060 <[^>]*> lw \$a1,-32764\(\$at\)
+0+0064 <[^>]*> nop
+0+0068 <[^>]*> lw \$a0,-32768\(\$a1\)
+0+006c <[^>]*> lw \$a1,-32764\(\$a1\)
+0+0070 <[^>]*> lui \$at,0x1
+0+0074 <[^>]*> addu \$at,\$a1,\$at
+0+0078 <[^>]*> lw \$a0,0\(\$at\)
+0+007c <[^>]*> lw \$a1,4\(\$at\)
+0+0080 <[^>]*> lui \$at,0x2
+0+0084 <[^>]*> addu \$at,\$a1,\$at
+0+0088 <[^>]*> lw \$a0,-23131\(\$at\)
+0+008c <[^>]*> lw \$a1,-23127\(\$at\)
+0+0090 <[^>]*> lw \$a0,-16384\(\$gp\)
+[ ]*90: [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.*
+0+0094 <[^>]*> lw \$a1,-16380\(\$gp\)
+[ ]*94: [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.*
+0+0098 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*98: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label
+0+009c <[^>]*> lw \$a1,4\(\$gp\)
+[ ]*9c: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label
+0+00a0 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*a0: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
+0+00a4 <[^>]*> lw \$a1,4\(\$gp\)
+[ ]*a4: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
+0+00a8 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*a8: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common
+0+00ac <[^>]*> lw \$a1,4\(\$gp\)
+[ ]*ac: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common
+0+00b0 <[^>]*> lw \$a0,0\(\$gp\)
+[ ]*b0: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
+0+00b4 <[^>]*> lw \$a1,4\(\$gp\)
+[ ]*b4: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
+0+00b8 <[^>]*> lw \$a0,-16384\(\$gp\)
+[ ]*b8: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
+0+00bc <[^>]*> lw \$a1,-16380\(\$gp\)
+[ ]*bc: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
+0+00c0 <[^>]*> lw \$a0,-15384\(\$gp\)
+[ ]*c0: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
+0+00c4 <[^>]*> lw \$a1,-15380\(\$gp\)
+[ ]*c4: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
+0+00c8 <[^>]*> lw \$a0,-16383\(\$gp\)
+[ ]*c8: [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.*
+0+00cc <[^>]*> lw \$a1,-16379\(\$gp\)
+[ ]*cc: [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.*
+0+00d0 <[^>]*> lw \$a0,1\(\$gp\)
+[ ]*d0: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label
+0+00d4 <[^>]*> lw \$a1,5\(\$gp\)
+[ ]*d4: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label
+0+00d8 <[^>]*> lw \$a0,1\(\$gp\)
+[ ]*d8: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
+0+00dc <[^>]*> lw \$a1,5\(\$gp\)
+[ ]*dc: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
+0+00e0 <[^>]*> lw \$a0,1\(\$gp\)
+[ ]*e0: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common
+0+00e4 <[^>]*> lw \$a1,5\(\$gp\)
+[ ]*e4: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common
+0+00e8 <[^>]*> lw \$a0,1\(\$gp\)
+[ ]*e8: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
+0+00ec <[^>]*> lw \$a1,5\(\$gp\)
+[ ]*ec: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
+0+00f0 <[^>]*> lw \$a0,-16383\(\$gp\)
+[ ]*f0: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
+0+00f4 <[^>]*> lw \$a1,-16379\(\$gp\)
+[ ]*f4: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
+0+00f8 <[^>]*> lw \$a0,-15383\(\$gp\)
+[ ]*f8: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
+0+00fc <[^>]*> lw \$a1,-15379\(\$gp\)
+[ ]*fc: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
+0+0100 <[^>]*> nop
+0+0104 <[^>]*> addu \$at,\$a1,\$gp
+0+0108 <[^>]*> lw \$a0,-16384\(\$at\)
+[ ]*108: [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.*
+0+010c <[^>]*> lw \$a1,-16380\(\$at\)
+[ ]*10c: [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.*
+0+0110 <[^>]*> nop
+0+0114 <[^>]*> addu \$at,\$a1,\$gp
+0+0118 <[^>]*> lw \$a0,0\(\$at\)
+[ ]*118: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label
+0+011c <[^>]*> lw \$a1,4\(\$at\)
+[ ]*11c: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label
+0+0120 <[^>]*> nop
+0+0124 <[^>]*> addu \$at,\$a1,\$gp
+0+0128 <[^>]*> lw \$a0,0\(\$at\)
+[ ]*128: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
+0+012c <[^>]*> lw \$a1,4\(\$at\)
+[ ]*12c: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
+0+0130 <[^>]*> nop
+0+0134 <[^>]*> addu \$at,\$a1,\$gp
+0+0138 <[^>]*> lw \$a0,0\(\$at\)
+[ ]*138: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common
+0+013c <[^>]*> lw \$a1,4\(\$at\)
+[ ]*13c: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common
+0+0140 <[^>]*> nop
+0+0144 <[^>]*> addu \$at,\$a1,\$gp
+0+0148 <[^>]*> lw \$a0,0\(\$at\)
+[ ]*148: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
+0+014c <[^>]*> lw \$a1,4\(\$at\)
+[ ]*14c: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
+0+0150 <[^>]*> nop
+0+0154 <[^>]*> addu \$at,\$a1,\$gp
+0+0158 <[^>]*> lw \$a0,-16384\(\$at\)
+[ ]*158: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
+0+015c <[^>]*> lw \$a1,-16380\(\$at\)
+[ ]*15c: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
+0+0160 <[^>]*> nop
+0+0164 <[^>]*> addu \$at,\$a1,\$gp
+0+0168 <[^>]*> lw \$a0,-15384\(\$at\)
+[ ]*168: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
+0+016c <[^>]*> lw \$a1,-15380\(\$at\)
+[ ]*16c: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
+0+0170 <[^>]*> nop
+0+0174 <[^>]*> addu \$at,\$a1,\$gp
+0+0178 <[^>]*> lw \$a0,-16383\(\$at\)
+[ ]*178: [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.*
+0+017c <[^>]*> lw \$a1,-16379\(\$at\)
+[ ]*17c: [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.*
+0+0180 <[^>]*> nop
+0+0184 <[^>]*> addu \$at,\$a1,\$gp
+0+0188 <[^>]*> lw \$a0,1\(\$at\)
+[ ]*188: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label
+0+018c <[^>]*> lw \$a1,5\(\$at\)
+[ ]*18c: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label
+0+0190 <[^>]*> nop
+0+0194 <[^>]*> addu \$at,\$a1,\$gp
+0+0198 <[^>]*> lw \$a0,1\(\$at\)
+[ ]*198: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
+0+019c <[^>]*> lw \$a1,5\(\$at\)
+[ ]*19c: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
+0+01a0 <[^>]*> nop
+0+01a4 <[^>]*> addu \$at,\$a1,\$gp
+0+01a8 <[^>]*> lw \$a0,1\(\$at\)
+[ ]*1a8: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common
+0+01ac <[^>]*> lw \$a1,5\(\$at\)
+[ ]*1ac: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common
+0+01b0 <[^>]*> nop
+0+01b4 <[^>]*> addu \$at,\$a1,\$gp
+0+01b8 <[^>]*> lw \$a0,1\(\$at\)
+[ ]*1b8: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
+0+01bc <[^>]*> lw \$a1,5\(\$at\)
+[ ]*1bc: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
+0+01c0 <[^>]*> nop
+0+01c4 <[^>]*> addu \$at,\$a1,\$gp
+0+01c8 <[^>]*> lw \$a0,-16383\(\$at\)
+[ ]*1c8: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
+0+01cc <[^>]*> lw \$a1,-16379\(\$at\)
+[ ]*1cc: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
+0+01d0 <[^>]*> nop
+0+01d4 <[^>]*> addu \$at,\$a1,\$gp
+0+01d8 <[^>]*> lw \$a0,-15383\(\$at\)
+[ ]*1d8: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
+0+01dc <[^>]*> lw \$a1,-15379\(\$at\)
+[ ]*1dc: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
diff --git a/gas/testsuite/gas/mips/lif-empic.d b/gas/testsuite/gas/mips/lif-empic.d
index 6ce3b2d..8184d1a 100644
--- a/gas/testsuite/gas/mips/lif-empic.d
+++ b/gas/testsuite/gas/mips/lif-empic.d
@@ -1,4 +1,4 @@
-#objdump: -dr
+#objdump: -dr --prefix-addresses
#name: MIPS lifloat-empic
#as: -mips1 -membedded-pic
#source: lifloat.s
@@ -8,14 +8,14 @@
.*: +file format .*mips.*
Disassembly of section .text:
-0+0000 <[^>]*> addiu \$at,\$gp,-16384
-[ ]*RELOC: 0+0000 [A-Z0-9_]*GPREL[A-Z0-9_]* .rdata.*
-0+0004 <[^>]*> lw \$a0,0\(\$at\)
-0+0008 <[^>]*> lw \$a1,4\(\$at\)
-0+000c <[^>]*> lwc1 \$f[45],-16368\(\$gp\)
-[ ]*RELOC: 0+000c [A-Z0-9_]*LITERAL[A-Z0-9_]* .lit8.*
-0+0010 <[^>]*> lwc1 \$f[45],-16364\(\$gp\)
-[ ]*RELOC: 0+0010 [A-Z0-9_]*LITERAL[A-Z0-9_]* .lit8.*
-0+0014 <[^>]*> lui \$a0,0x3f80
-0+0018 <[^>]*> lui \$at,0x3f80
-0+001c <[^>]*> mtc1 \$at,\$f4
+0+0000 <[^>]*> addiu \$at,\$gp,-16384
+[ ]*0: [A-Z0-9_]*GPREL[A-Z0-9_]* .rdata.*
+0+0004 <[^>]*> lw \$a0,0\(\$at\)
+0+0008 <[^>]*> lw \$a1,4\(\$at\)
+0+000c <[^>]*> lwc1 \$f[45],-16368\(\$gp\)
+[ ]*c: [A-Z0-9_]*LITERAL[A-Z0-9_]* .lit8.*
+0+0010 <[^>]*> lwc1 \$f[45],-16364\(\$gp\)
+[ ]*10: [A-Z0-9_]*LITERAL[A-Z0-9_]* .lit8.*
+0+0014 <[^>]*> lui \$a0,0x3f80
+0+0018 <[^>]*> lui \$at,0x3f80
+0+001c <[^>]*> mtc1 \$at,\$f4
diff --git a/gas/testsuite/gas/mips/lif-xgot.d b/gas/testsuite/gas/mips/lif-xgot.d
new file mode 100644
index 0000000..1c2f8e5
--- /dev/null
+++ b/gas/testsuite/gas/mips/lif-xgot.d
@@ -0,0 +1,28 @@
+#objdump: -dr --prefix-addresses
+#name: MIPS lifloat-xgot
+#as: -mips1 -KPIC -xgot
+#source: lifloat.s
+
+# Test the li.d and li.s macros with -KPIC -xgot.
+
+.*: +file format .*mips.*
+
+Disassembly of section .text:
+0+0000 <[^>]*> lw \$at,0\(\$gp\)
+[ ]*0: R_MIPS_GOT16 .rodata
+0+0004 <[^>]*> nop
+0+0008 <[^>]*> lw \$a0,0\(\$at\)
+[ ]*8: R_MIPS_LO16 .rodata
+0+000c <[^>]*> lw \$a1,4\(\$at\)
+[ ]*c: R_MIPS_LO16 .rodata
+0+0010 <[^>]*> lw \$at,0\(\$gp\)
+[ ]*10: R_MIPS_GOT16 .rodata
+0+0014 <[^>]*> nop
+0+0018 <[^>]*> lwc1 \$f5,8\(\$at\)
+[ ]*18: R_MIPS_LO16 .rodata
+0+001c <[^>]*> lwc1 \$f4,12\(\$at\)
+[ ]*1c: R_MIPS_LO16 .rodata
+0+0020 <[^>]*> lui \$a0,0x3f80
+0+0024 <[^>]*> lui \$at,0x3f80
+0+0028 <[^>]*> mtc1 \$at,\$f4
+0+002c <[^>]*> nop
diff --git a/gas/testsuite/gas/mips/ulh-empic.d b/gas/testsuite/gas/mips/ulh-empic.d
index ee236df..0a371b3 100644
--- a/gas/testsuite/gas/mips/ulh-empic.d
+++ b/gas/testsuite/gas/mips/ulh-empic.d
@@ -1,4 +1,4 @@
-#objdump: -dr
+#objdump: -dr --prefix-addresses
#name: MIPS ulh-empic
#as: -mips1 -membedded-pic
#source: ulh-pic.s
@@ -8,84 +8,84 @@
.*: +file format .*mips.*
Disassembly of section .text:
-0+0000 <[^>]*> addiu \$at,\$gp,-16384
-[ ]*RELOC: 0+0000 [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.*
-0+0004 <[^>]*> lb \$a0,[01]\(\$at\)
-0+0008 <[^>]*> lbu \$at,[01]\(\$at\)
-0+000c <[^>]*> sll \$a0,\$a0,0x8
-0+0010 <[^>]*> or \$a0,\$a0,\$at
-0+0014 <[^>]*> addiu \$at,\$gp,0
-[ ]*RELOC: 0+0014 [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label
-0+0018 <[^>]*> lbu \$a0,[01]\(\$at\)
-0+001c <[^>]*> lbu \$at,[01]\(\$at\)
-0+0020 <[^>]*> sll \$a0,\$a0,0x8
-0+0024 <[^>]*> or \$a0,\$a0,\$at
-0+0028 <[^>]*> addiu \$at,\$gp,0
-[ ]*RELOC: 0+0028 [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
-0+002c <[^>]*> lwl \$a0,[03]\(\$at\)
-0+0030 <[^>]*> lwr \$a0,[03]\(\$at\)
-0+0034 <[^>]*> addiu \$at,\$gp,0
-[ ]*RELOC: 0+0034 [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common
-0+0038 <[^>]*> sb \$a0,[01]\(\$at\)
-0+003c <[^>]*> srl \$a0,\$a0,0x8
-0+0040 <[^>]*> sb \$a0,[01]\(\$at\)
-0+0044 <[^>]*> lbu \$at,[01]\(\$at\)
-0+0048 <[^>]*> sll \$a0,\$a0,0x8
-0+004c <[^>]*> or \$a0,\$a0,\$at
-0+0050 <[^>]*> addiu \$at,\$gp,0
-[ ]*RELOC: 0+0050 [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
-0+0054 <[^>]*> swl \$a0,[03]\(\$at\)
-0+0058 <[^>]*> swr \$a0,[03]\(\$at\)
-0+005c <[^>]*> addiu \$at,\$gp,-16384
-[ ]*RELOC: 0+005c [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+0060 <[^>]*> lb \$a0,[01]\(\$at\)
-0+0064 <[^>]*> lbu \$at,[01]\(\$at\)
-0+0068 <[^>]*> sll \$a0,\$a0,0x8
-0+006c <[^>]*> or \$a0,\$a0,\$at
-0+0070 <[^>]*> addiu \$at,\$gp,-15384
-[ ]*RELOC: 0+0070 [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+0074 <[^>]*> lbu \$a0,[01]\(\$at\)
-0+0078 <[^>]*> lbu \$at,[01]\(\$at\)
-0+007c <[^>]*> sll \$a0,\$a0,0x8
-0+0080 <[^>]*> or \$a0,\$a0,\$at
-0+0084 <[^>]*> addiu \$at,\$gp,-16383
-[ ]*RELOC: 0+0084 [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.*
-0+0088 <[^>]*> lwl \$a0,[03]\(\$at\)
-0+008c <[^>]*> lwr \$a0,[03]\(\$at\)
-0+0090 <[^>]*> addiu \$at,\$gp,1
-[ ]*RELOC: 0+0090 [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label
-0+0094 <[^>]*> sb \$a0,[01]\(\$at\)
-0+0098 <[^>]*> srl \$a0,\$a0,0x8
-0+009c <[^>]*> sb \$a0,[01]\(\$at\)
-0+00a0 <[^>]*> lbu \$at,[01]\(\$at\)
-0+00a4 <[^>]*> sll \$a0,\$a0,0x8
-0+00a8 <[^>]*> or \$a0,\$a0,\$at
-0+00ac <[^>]*> addiu \$at,\$gp,1
-[ ]*RELOC: 0+00ac [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
-0+00b0 <[^>]*> swl \$a0,[03]\(\$at\)
-0+00b4 <[^>]*> swr \$a0,[03]\(\$at\)
-0+00b8 <[^>]*> addiu \$at,\$gp,1
-[ ]*RELOC: 0+00b8 [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common
-0+00bc <[^>]*> lb \$a0,[01]\(\$at\)
-0+00c0 <[^>]*> lbu \$at,[01]\(\$at\)
-0+00c4 <[^>]*> sll \$a0,\$a0,0x8
-0+00c8 <[^>]*> or \$a0,\$a0,\$at
-0+00cc <[^>]*> addiu \$at,\$gp,1
-[ ]*RELOC: 0+00cc [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
-0+00d0 <[^>]*> lbu \$a0,[01]\(\$at\)
-0+00d4 <[^>]*> lbu \$at,[01]\(\$at\)
-0+00d8 <[^>]*> sll \$a0,\$a0,0x8
-0+00dc <[^>]*> or \$a0,\$a0,\$at
-0+00e0 <[^>]*> addiu \$at,\$gp,-16383
-[ ]*RELOC: 0+00e0 [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+00e4 <[^>]*> lwl \$a0,[03]\(\$at\)
-0+00e8 <[^>]*> lwr \$a0,[03]\(\$at\)
-0+00ec <[^>]*> addiu \$at,\$gp,-15383
-[ ]*RELOC: 0+00ec [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
-0+00f0 <[^>]*> sb \$a0,[01]\(\$at\)
-0+00f4 <[^>]*> srl \$a0,\$a0,0x8
-0+00f8 <[^>]*> sb \$a0,[01]\(\$at\)
-0+00fc <[^>]*> lbu \$at,[01]\(\$at\)
-0+0100 <[^>]*> sll \$a0,\$a0,0x8
-0+0104 <[^>]*> or \$a0,\$a0,\$at
-...
+0+0000 <[^>]*> addiu \$at,\$gp,-16384
+[ ]*0: [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.*
+0+0004 <[^>]*> lb \$a0,[01]\(\$at\)
+0+0008 <[^>]*> lbu \$at,[01]\(\$at\)
+0+000c <[^>]*> sll \$a0,\$a0,0x8
+0+0010 <[^>]*> or \$a0,\$a0,\$at
+0+0014 <[^>]*> addiu \$at,\$gp,0
+[ ]*14: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label
+0+0018 <[^>]*> lbu \$a0,[01]\(\$at\)
+0+001c <[^>]*> lbu \$at,[01]\(\$at\)
+0+0020 <[^>]*> sll \$a0,\$a0,0x8
+0+0024 <[^>]*> or \$a0,\$a0,\$at
+0+0028 <[^>]*> addiu \$at,\$gp,0
+[ ]*28: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
+0+002c <[^>]*> lwl \$a0,[03]\(\$at\)
+0+0030 <[^>]*> lwr \$a0,[03]\(\$at\)
+0+0034 <[^>]*> addiu \$at,\$gp,0
+[ ]*34: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common
+0+0038 <[^>]*> sb \$a0,[01]\(\$at\)
+0+003c <[^>]*> srl \$a0,\$a0,0x8
+0+0040 <[^>]*> sb \$a0,[01]\(\$at\)
+0+0044 <[^>]*> lbu \$at,[01]\(\$at\)
+0+0048 <[^>]*> sll \$a0,\$a0,0x8
+0+004c <[^>]*> or \$a0,\$a0,\$at
+0+0050 <[^>]*> addiu \$at,\$gp,0
+[ ]*50: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
+0+0054 <[^>]*> swl \$a0,[03]\(\$at\)
+0+0058 <[^>]*> swr \$a0,[03]\(\$at\)
+0+005c <[^>]*> addiu \$at,\$gp,-16384
+[ ]*5c: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
+0+0060 <[^>]*> lb \$a0,[01]\(\$at\)
+0+0064 <[^>]*> lbu \$at,[01]\(\$at\)
+0+0068 <[^>]*> sll \$a0,\$a0,0x8
+0+006c <[^>]*> or \$a0,\$a0,\$at
+0+0070 <[^>]*> addiu \$at,\$gp,-15384
+[ ]*70: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
+0+0074 <[^>]*> lbu \$a0,[01]\(\$at\)
+0+0078 <[^>]*> lbu \$at,[01]\(\$at\)
+0+007c <[^>]*> sll \$a0,\$a0,0x8
+0+0080 <[^>]*> or \$a0,\$a0,\$at
+0+0084 <[^>]*> addiu \$at,\$gp,-16383
+[ ]*84: [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.*
+0+0088 <[^>]*> lwl \$a0,[03]\(\$at\)
+0+008c <[^>]*> lwr \$a0,[03]\(\$at\)
+0+0090 <[^>]*> addiu \$at,\$gp,1
+[ ]*90: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label
+0+0094 <[^>]*> sb \$a0,[01]\(\$at\)
+0+0098 <[^>]*> srl \$a0,\$a0,0x8
+0+009c <[^>]*> sb \$a0,[01]\(\$at\)
+0+00a0 <[^>]*> lbu \$at,[01]\(\$at\)
+0+00a4 <[^>]*> sll \$a0,\$a0,0x8
+0+00a8 <[^>]*> or \$a0,\$a0,\$at
+0+00ac <[^>]*> addiu \$at,\$gp,1
+[ ]*ac: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label
+0+00b0 <[^>]*> swl \$a0,[03]\(\$at\)
+0+00b4 <[^>]*> swr \$a0,[03]\(\$at\)
+0+00b8 <[^>]*> addiu \$at,\$gp,1
+[ ]*b8: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common
+0+00bc <[^>]*> lb \$a0,[01]\(\$at\)
+0+00c0 <[^>]*> lbu \$at,[01]\(\$at\)
+0+00c4 <[^>]*> sll \$a0,\$a0,0x8
+0+00c8 <[^>]*> or \$a0,\$a0,\$at
+0+00cc <[^>]*> addiu \$at,\$gp,1
+[ ]*cc: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common
+0+00d0 <[^>]*> lbu \$a0,[01]\(\$at\)
+0+00d4 <[^>]*> lbu \$at,[01]\(\$at\)
+0+00d8 <[^>]*> sll \$a0,\$a0,0x8
+0+00dc <[^>]*> or \$a0,\$a0,\$at
+0+00e0 <[^>]*> addiu \$at,\$gp,-16383
+[ ]*e0: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
+0+00e4 <[^>]*> lwl \$a0,[03]\(\$at\)
+0+00e8 <[^>]*> lwr \$a0,[03]\(\$at\)
+0+00ec <[^>]*> addiu \$at,\$gp,-15383
+[ ]*ec: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.*
+0+00f0 <[^>]*> sb \$a0,[01]\(\$at\)
+0+00f4 <[^>]*> srl \$a0,\$a0,0x8
+0+00f8 <[^>]*> sb \$a0,[01]\(\$at\)
+0+00fc <[^>]*> lbu \$at,[01]\(\$at\)
+0+0100 <[^>]*> sll \$a0,\$a0,0x8
+0+0104 <[^>]*> or \$a0,\$a0,\$at
+ ...
diff --git a/gas/testsuite/gas/mips/ulh-xgot.d b/gas/testsuite/gas/mips/ulh-xgot.d
new file mode 100644
index 0000000..a2666e9
--- /dev/null
+++ b/gas/testsuite/gas/mips/ulh-xgot.d
@@ -0,0 +1,154 @@
+#objdump: -dr --prefix-addresses
+#name: MIPS ulh-xgot
+#as: -mips1 -KPIC -xgot
+#source: ulh-pic.s
+
+# Test the unaligned load and store macros with -KPIC -xgot.
+
+.*: +file format .*mips.*
+
+Disassembly of section .text:
+0+0000 <[^>]*> lw \$at,0\(\$gp\)
+[ ]*0: R_MIPS_GOT16 .data
+0+0004 <[^>]*> nop
+0+0008 <[^>]*> addiu \$at,\$at,0
+[ ]*8: R_MIPS_LO16 .data
+0+000c <[^>]*> nop
+0+0010 <[^>]*> lb \$a0,0\(\$at\)
+0+0014 <[^>]*> lbu \$at,1\(\$at\)
+0+0018 <[^>]*> sll \$a0,\$a0,0x8
+0+001c <[^>]*> or \$a0,\$a0,\$at
+0+0020 <[^>]*> lui \$at,0x0
+[ ]*20: R_MIPS_GOT_HI16 big_external_data_label
+0+0024 <[^>]*> addu \$at,\$at,\$gp
+0+0028 <[^>]*> lw \$at,0\(\$at\)
+[ ]*28: R_MIPS_GOT_LO16 big_external_data_label
+0+002c <[^>]*> nop
+0+0030 <[^>]*> lbu \$a0,0\(\$at\)
+0+0034 <[^>]*> lbu \$at,1\(\$at\)
+0+0038 <[^>]*> sll \$a0,\$a0,0x8
+0+003c <[^>]*> or \$a0,\$a0,\$at
+0+0040 <[^>]*> lui \$at,0x0
+[ ]*40: R_MIPS_GOT_HI16 small_external_data_label
+0+0044 <[^>]*> addu \$at,\$at,\$gp
+0+0048 <[^>]*> lw \$at,0\(\$at\)
+[ ]*48: R_MIPS_GOT_LO16 small_external_data_label
+0+004c <[^>]*> nop
+0+0050 <[^>]*> lwl \$a0,0\(\$at\)
+0+0054 <[^>]*> lwr \$a0,3\(\$at\)
+0+0058 <[^>]*> lui \$at,0x0
+[ ]*58: R_MIPS_GOT_HI16 big_external_common
+0+005c <[^>]*> addu \$at,\$at,\$gp
+0+0060 <[^>]*> lw \$at,0\(\$at\)
+[ ]*60: R_MIPS_GOT_LO16 big_external_common
+0+0064 <[^>]*> nop
+0+0068 <[^>]*> sb \$a0,1\(\$at\)
+0+006c <[^>]*> srl \$a0,\$a0,0x8
+0+0070 <[^>]*> sb \$a0,0\(\$at\)
+0+0074 <[^>]*> lbu \$at,1\(\$at\)
+0+0078 <[^>]*> sll \$a0,\$a0,0x8
+0+007c <[^>]*> or \$a0,\$a0,\$at
+0+0080 <[^>]*> lui \$at,0x0
+[ ]*80: R_MIPS_GOT_HI16 small_external_common
+0+0084 <[^>]*> addu \$at,\$at,\$gp
+0+0088 <[^>]*> lw \$at,0\(\$at\)
+[ ]*88: R_MIPS_GOT_LO16 small_external_common
+0+008c <[^>]*> nop
+0+0090 <[^>]*> swl \$a0,0\(\$at\)
+0+0094 <[^>]*> swr \$a0,3\(\$at\)
+0+0098 <[^>]*> lw \$at,0\(\$gp\)
+[ ]*98: R_MIPS_GOT16 .bss
+0+009c <[^>]*> nop
+0+00a0 <[^>]*> addiu \$at,\$at,0
+[ ]*a0: R_MIPS_LO16 .bss
+0+00a4 <[^>]*> nop
+0+00a8 <[^>]*> lb \$a0,0\(\$at\)
+0+00ac <[^>]*> lbu \$at,1\(\$at\)
+0+00b0 <[^>]*> sll \$a0,\$a0,0x8
+0+00b4 <[^>]*> or \$a0,\$a0,\$at
+0+00b8 <[^>]*> lw \$at,0\(\$gp\)
+[ ]*b8: R_MIPS_GOT16 .bss
+0+00bc <[^>]*> nop
+0+00c0 <[^>]*> addiu \$at,\$at,1000
+[ ]*c0: R_MIPS_LO16 .bss
+0+00c4 <[^>]*> nop
+0+00c8 <[^>]*> lbu \$a0,0\(\$at\)
+0+00cc <[^>]*> lbu \$at,1\(\$at\)
+0+00d0 <[^>]*> sll \$a0,\$a0,0x8
+0+00d4 <[^>]*> or \$a0,\$a0,\$at
+0+00d8 <[^>]*> lw \$at,0\(\$gp\)
+[ ]*d8: R_MIPS_GOT16 .data
+0+00dc <[^>]*> nop
+0+00e0 <[^>]*> addiu \$at,\$at,0
+[ ]*e0: R_MIPS_LO16 .data
+0+00e4 <[^>]*> nop
+0+00e8 <[^>]*> addiu \$at,\$at,1
+0+00ec <[^>]*> lwl \$a0,0\(\$at\)
+0+00f0 <[^>]*> lwr \$a0,3\(\$at\)
+0+00f4 <[^>]*> lui \$at,0x0
+[ ]*f4: R_MIPS_GOT_HI16 big_external_data_label
+0+00f8 <[^>]*> addu \$at,\$at,\$gp
+0+00fc <[^>]*> lw \$at,0\(\$at\)
+[ ]*fc: R_MIPS_GOT_LO16 big_external_data_label
+0+0100 <[^>]*> nop
+0+0104 <[^>]*> addiu \$at,\$at,1
+0+0108 <[^>]*> sb \$a0,1\(\$at\)
+0+010c <[^>]*> srl \$a0,\$a0,0x8
+0+0110 <[^>]*> sb \$a0,0\(\$at\)
+0+0114 <[^>]*> lbu \$at,1\(\$at\)
+0+0118 <[^>]*> sll \$a0,\$a0,0x8
+0+011c <[^>]*> or \$a0,\$a0,\$at
+0+0120 <[^>]*> lui \$at,0x0
+[ ]*120: R_MIPS_GOT_HI16 small_external_data_label
+0+0124 <[^>]*> addu \$at,\$at,\$gp
+0+0128 <[^>]*> lw \$at,0\(\$at\)
+[ ]*128: R_MIPS_GOT_LO16 small_external_data_label
+0+012c <[^>]*> nop
+0+0130 <[^>]*> addiu \$at,\$at,1
+0+0134 <[^>]*> swl \$a0,0\(\$at\)
+0+0138 <[^>]*> swr \$a0,3\(\$at\)
+0+013c <[^>]*> lui \$at,0x0
+[ ]*13c: R_MIPS_GOT_HI16 big_external_common
+0+0140 <[^>]*> addu \$at,\$at,\$gp
+0+0144 <[^>]*> lw \$at,0\(\$at\)
+[ ]*144: R_MIPS_GOT_LO16 big_external_common
+0+0148 <[^>]*> nop
+0+014c <[^>]*> addiu \$at,\$at,1
+0+0150 <[^>]*> lb \$a0,0\(\$at\)
+0+0154 <[^>]*> lbu \$at,1\(\$at\)
+0+0158 <[^>]*> sll \$a0,\$a0,0x8
+0+015c <[^>]*> or \$a0,\$a0,\$at
+0+0160 <[^>]*> lui \$at,0x0
+[ ]*160: R_MIPS_GOT_HI16 small_external_common
+0+0164 <[^>]*> addu \$at,\$at,\$gp
+0+0168 <[^>]*> lw \$at,0\(\$at\)
+[ ]*168: R_MIPS_GOT_LO16 small_external_common
+0+016c <[^>]*> nop
+0+0170 <[^>]*> addiu \$at,\$at,1
+0+0174 <[^>]*> lbu \$a0,0\(\$at\)
+0+0178 <[^>]*> lbu \$at,1\(\$at\)
+0+017c <[^>]*> sll \$a0,\$a0,0x8
+0+0180 <[^>]*> or \$a0,\$a0,\$at
+0+0184 <[^>]*> lw \$at,0\(\$gp\)
+[ ]*184: R_MIPS_GOT16 .bss
+0+0188 <[^>]*> nop
+0+018c <[^>]*> addiu \$at,\$at,0
+[ ]*18c: R_MIPS_LO16 .bss
+0+0190 <[^>]*> nop
+0+0194 <[^>]*> addiu \$at,\$at,1
+0+0198 <[^>]*> lwl \$a0,0\(\$at\)
+0+019c <[^>]*> lwr \$a0,3\(\$at\)
+0+01a0 <[^>]*> lw \$at,0\(\$gp\)
+[ ]*1a0: R_MIPS_GOT16 .bss
+0+01a4 <[^>]*> nop
+0+01a8 <[^>]*> addiu \$at,\$at,1000
+[ ]*1a8: R_MIPS_LO16 .bss
+0+01ac <[^>]*> nop
+0+01b0 <[^>]*> addiu \$at,\$at,1
+0+01b4 <[^>]*> sb \$a0,1\(\$at\)
+0+01b8 <[^>]*> srl \$a0,\$a0,0x8
+0+01bc <[^>]*> sb \$a0,0\(\$at\)
+0+01c0 <[^>]*> lbu \$at,1\(\$at\)
+0+01c4 <[^>]*> sll \$a0,\$a0,0x8
+0+01c8 <[^>]*> or \$a0,\$a0,\$at
+0+01cc <[^>]*> nop