* [PATCH] [MIPS] Ensure that local GOT entries accessed via a 16-bit index come first
@ 2014-04-16 13:25 Kwok Cheung Yeung
2014-04-16 19:29 ` Richard Sandiford
0 siblings, 1 reply; 5+ messages in thread
From: Kwok Cheung Yeung @ 2014-04-16 13:25 UTC (permalink / raw)
To: binutils; +Cc: jack.carter, rdsandiford, hjl.tools, Maciej W. Rozycki
[-- Attachment #1: Type: text/plain, Size: 4049 bytes --]
Hello
> We have a "canadian_cross" build of LLVM and have been getting off and on link time errors from one of the input object files RecursiveASTVisitorTest.o. :
>
> (.text._ZN4llvm25SmallVectorTemplateCommonIN5clang19RecursiveASTVisitorINS1_11AttrVisitorEE10EnqueueJobEvE4backEv[_ZN4llvm25SmallVectorTemplateCommonIN5clang19RecursiveASTVisitorINS1_11AttrVisitorEE10EnqueueJobEvE4backEv]+0x64): relocation truncated to fit: R_MIPS_GOT16 against `no symbol'
>
> Basically building LLVM with a MIPS GCC. I noticed that the section count was way above 16 bits and seized on that as being the culprit.
>
>From the information you and H.J. have pointed me to, I need to dig further. Why I never knew about this trap door for section overflow is beyond me :-| Probably since I never hit the limit myself.
I have been investigating this issue with the LLVM Canadian Cross build
on MIPS. The problem arises mainly because of the way GCC constructs
calls to member functions of C++ classes in PIC code - each member
function of each class is placed in a different section (which, coupled
with the use of class templates, explains the huge number of sections in
the problematic object file). A call to a member function generates this
type of code (with -mxgot):
2c: 3c020000 lui v0,0x0
2c: R_MIPS_GOT_HI16
_ZN5clang33ParmVarDeclVisitorForImplicitCodeC1Ev
30: 005c1021 addu v0,v0,gp
34: 8c420000 lw v0,0(v0)
34: R_MIPS_GOT_LO16
_ZN5clang33ParmVarDeclVisitorForImplicitCodeC1Ev
38: 0040c821 move t9,v0
3c: 0320f809 jalr t9
3c: R_MIPS_JALR
_ZN5clang33ParmVarDeclVisitorForImplicitCodeC1Ev
40: 00000000 nop
meaning that each call to a member function may result in a new entry
being placed in the local section of the GOT (if the symbol is local or
mips_use_local_got_p() evaluates to true).
The other main type of local GOT entry is created by page+offset
references - e.g.:
50: 8f820000 lw v0,0(gp)
50: R_MIPS_GOT16 .rodata
54: 24450488 addiu a1,v0,1160
54: R_MIPS_LO16 .rodata
58: 3c020000 lui v0,0x0
The GOT entry for the page is always accessed using a 16-bit lookup even
with -mxgot - I believe the reasoning for this was because with each
page covering 64KB, the addressable 16K GOT page entries would be enough
to cover ~1GB of address space?
Unfortunately, since local GOT entries are allocated on-the-fly as they
are encountered in the code, this means that the initial 16K entries are
filled with a mixture of entries for member functions and pages (in this
case, mainly the former). This means that there is the possibility that
a page entry will be allocated outside of the addressable first 16K
entries, resulting in a reloc overflow. However, with -mxgot, there is
no problem calling member functions with entries after the first 16K
entries (without -mxgot, these would also eventually result in overflows).
I have created this patch to ensure that GOT page entries come before
the member function entries. The idea is to fill the local GOT space
from both ends at once, with entries accessed via 16-bit indexing being
added on the lower end, and those with 32-bit indexing on the upper end.
If the size of the local GOT is overestimated, this results in a gap in
the middle of the local GOT area that must be accounted for when
iterating over the local part of the GOT.
This patch has only been lightly tested. I can confirm that the reloc
overflow on building LLVM/Clang no longer occurs, and have tried running
some of the generated LLVM and Clang binaries on QEMU and a real MIPS
board. The ld testsuite has a couple of new failures due to the change
in the GOT layout, so the expected outputs need to be updated (included
in the patch).
Kwok Cheung Yeung
[-- Attachment #2: mips_reloc_overflow.patch --]
[-- Type: text/plain, Size: 107622 bytes --]
commit f0cfefc791115f00be6274c05c768fa2a4012bd9
Author: Kwok Cheung Yeung <kcy@codesourcery.com>
Date: Wed Apr 16 05:46:58 2014 -0700
bfd/
* elfxx-mips.c (struct mips_got_info): Delete assigned_gotno
field. Add assigned_low_gotno and assigned_high_gotno fields.
(mips_elf_create_local_got_entry): Update out-of-space condition.
Set index of new GOT entry to assigned_low_gotno if required by
the current relocation, else set it to assigned_high_gotno.
(mips_elf_set_global_gotidx): Replace uses of assigned_gotno
with assigned_low_gotno.
(mips_elf_multi_got): Initialize assigned_low_gotno and
assigned_high_gotno in secondary GOTs. Use assigned_low_gotno
in place of assigned_gotno when handling global GOT entries.
(mips_elf_lay_out_got): Initialize assigned_low_gotno and
assigned_high_gotno.
(_bfd_mips_elf_finish_dynamic_sections): Account for a possible
gap in the middle of local GOT space.
ld/testsuite/
* ld-mips-elf/elf-rel-xgot-n32.d: Update for new GOT layout.
* ld-mips-elf/elf-rel-xgot-n32-embed.d: Likewise.
* ld-mips-elf/elf-rel-xgot-n64.d: Likewise.
* ld-mips-elf/elf-rel-xgot-n64-embed.d: Likewise.
* ld-mips-elf/elf-rel-xgot-n64-linux.d: Likewise.
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index c9af9da..9fe0417 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,20 @@
+2014-04-16 Kwok Cheung Yeung <kcy@codesourcery.com>
+
+ * elfxx-mips.c (struct mips_got_info): Delete assigned_gotno
+ field. Add assigned_low_gotno and assigned_high_gotno fields.
+ (mips_elf_create_local_got_entry): Update out-of-space condition.
+ Set index of new GOT entry to assigned_low_gotno if required by
+ the current relocation, else set it to assigned_high_gotno.
+ (mips_elf_set_global_gotidx): Replace uses of assigned_gotno
+ with assigned_low_gotno.
+ (mips_elf_multi_got): Initialize assigned_low_gotno and
+ assigned_high_gotno in secondary GOTs. Use assigned_low_gotno
+ in place of assigned_gotno when handling global GOT entries.
+ (mips_elf_lay_out_got): Initialize assigned_low_gotno and
+ assigned_high_gotno.
+ (_bfd_mips_elf_finish_dynamic_sections): Account for a possible
+ gap in the middle of local GOT space.
+
2014-04-16 Tristan Gingold <gingold@adacore.com>
* mach-o-x86-64.c (bfd_mach_o_x86_64_mkobject): Adjust cpusubtype
diff --git a/bfd/elfxx-mips.c b/bfd/elfxx-mips.c
index b44fc21..d939444 100644
--- a/bfd/elfxx-mips.c
+++ b/bfd/elfxx-mips.c
@@ -168,8 +168,10 @@ struct mips_got_info
unsigned int page_gotno;
/* The number of relocations needed for the GOT entries. */
unsigned int relocs;
- /* The number of local .got entries we have used. */
- unsigned int assigned_gotno;
+ /* The first unused local .got entry. */
+ unsigned int assigned_low_gotno;
+ /* The last unused local .got entry. */
+ unsigned int assigned_high_gotno;
/* A hash table holding members of the got. */
struct htab *got_entries;
/* A hash table holding mips_got_page_ref structures. */
@@ -3635,7 +3637,7 @@ mips_elf_create_local_got_entry (bfd *abfd, struct bfd_link_info *info,
if (entry)
return entry;
- if (g->assigned_gotno >= g->local_gotno)
+ if (g->assigned_low_gotno > g->assigned_high_gotno)
{
/* We didn't allocate enough space in the GOT. */
(*_bfd_error_handler)
@@ -3648,7 +3650,14 @@ mips_elf_create_local_got_entry (bfd *abfd, struct bfd_link_info *info,
if (!entry)
return NULL;
- lookup.gotidx = MIPS_ELF_GOT_SIZE (abfd) * g->assigned_gotno++;
+ if (got16_reloc_p (r_type)
+ || call16_reloc_p (r_type)
+ || got_page_reloc_p (r_type)
+ || got_disp_reloc_p (r_type))
+ lookup.gotidx = MIPS_ELF_GOT_SIZE (abfd) * g->assigned_low_gotno++;
+ else
+ lookup.gotidx = MIPS_ELF_GOT_SIZE (abfd) * g->assigned_high_gotno--;
+
*entry = lookup;
*loc = entry;
@@ -4628,12 +4637,12 @@ mips_elf_set_global_gotidx (void **entryp, void *data)
&& entry->symndx == -1
&& entry->d.h->global_got_area != GGA_NONE)
{
- if (!mips_elf_set_gotidx (entryp, arg->value * arg->g->assigned_gotno))
+ if (!mips_elf_set_gotidx (entryp, arg->value * arg->g->assigned_low_gotno))
{
arg->g = NULL;
return 0;
}
- arg->g->assigned_gotno += 1;
+ arg->g->assigned_low_gotno += 1;
if (arg->info->shared
|| (elf_hash_table (arg->info)->dynamic_sections_created
@@ -4766,7 +4775,7 @@ mips_elf_multi_got (bfd *abfd, struct bfd_link_info *info,
htab_traverse (g->got_entries, mips_elf_set_global_got_area, &tga);
/* Now go through the GOTs assigning them offset ranges.
- [assigned_gotno, local_gotno[ will be set to the range of local
+ [assigned_low_gotno, local_gotno[ will be set to the range of local
entries in each GOT. We can then compute the end of a GOT by
adding local_gotno to global_gotno. We reverse the list and make
it circular since then we'll be able to quickly compute the
@@ -4789,9 +4798,10 @@ mips_elf_multi_got (bfd *abfd, struct bfd_link_info *info,
struct mips_got_info *gn;
assign += htab->reserved_gotno;
- g->assigned_gotno = assign;
+ g->assigned_low_gotno = assign;
g->local_gotno += assign;
g->local_gotno += (pages < g->page_gotno ? pages : g->page_gotno);
+ g->assigned_high_gotno = g->local_gotno - 1;
assign = g->local_gotno + g->global_gotno + g->tls_gotno;
/* Take g out of the direct list, and push it onto the reversed
@@ -4830,21 +4840,21 @@ mips_elf_multi_got (bfd *abfd, struct bfd_link_info *info,
/* Assign offsets to global GOT entries and count how many
relocations they need. */
- save_assign = g->assigned_gotno;
- g->assigned_gotno = g->local_gotno;
+ save_assign = g->assigned_low_gotno;
+ g->assigned_low_gotno = g->local_gotno;
tga.info = info;
tga.value = MIPS_ELF_GOT_SIZE (abfd);
tga.g = g;
htab_traverse (g->got_entries, mips_elf_set_global_gotidx, &tga);
if (!tga.g)
return FALSE;
- BFD_ASSERT (g->assigned_gotno == g->local_gotno + g->global_gotno);
- g->assigned_gotno = save_assign;
+ BFD_ASSERT (g->assigned_low_gotno == g->local_gotno + g->global_gotno);
+ g->assigned_low_gotno = save_assign;
if (info->shared)
{
- g->relocs += g->local_gotno - g->assigned_gotno;
- BFD_ASSERT (g->assigned_gotno == g->next->local_gotno
+ g->relocs += g->local_gotno - g->assigned_low_gotno;
+ BFD_ASSERT (g->assigned_low_gotno == g->next->local_gotno
+ g->next->global_gotno
+ g->next->tls_gotno
+ htab->reserved_gotno);
@@ -9064,13 +9074,13 @@ mips_elf_lay_out_got (bfd *output_bfd, struct bfd_link_info *info)
/* Allocate room for the reserved entries. VxWorks always reserves
3 entries; other objects only reserve 2 entries. */
- BFD_ASSERT (g->assigned_gotno == 0);
+ BFD_ASSERT (g->assigned_low_gotno == 0);
if (htab->is_vxworks)
htab->reserved_gotno = 3;
else
htab->reserved_gotno = 2;
g->local_gotno += htab->reserved_gotno;
- g->assigned_gotno = htab->reserved_gotno;
+ g->assigned_low_gotno = htab->reserved_gotno;
/* Decide which symbols need to go in the global part of the GOT and
count the number of reloc-only GOT symbols. */
@@ -9113,6 +9123,7 @@ mips_elf_lay_out_got (bfd *output_bfd, struct bfd_link_info *info)
page_gotno = g->page_gotno;
g->local_gotno += page_gotno;
+ g->assigned_high_gotno = g->local_gotno - 1;
s->size += g->local_gotno * MIPS_ELF_GOT_SIZE (output_bfd);
s->size += g->global_gotno * MIPS_ELF_GOT_SIZE (output_bfd);
@@ -11387,10 +11398,14 @@ _bfd_mips_elf_finish_dynamic_sections (bfd *output_bfd,
if (! info->shared)
continue;
- while (got_index < g->assigned_gotno)
+ for (; got_index < g->local_gotno; got_index++)
{
+ if (got_index >= g->assigned_low_gotno
+ && got_index <= g->assigned_high_gotno)
+ continue;
+
rel[0].r_offset = rel[1].r_offset = rel[2].r_offset
- = got_index++ * MIPS_ELF_GOT_SIZE (output_bfd);
+ = got_index * MIPS_ELF_GOT_SIZE (output_bfd);
if (!(mips_elf_create_dynamic_relocation
(output_bfd, info, rel, NULL,
bfd_abs_section_ptr,
diff --git a/ld/testsuite/ChangeLog b/ld/testsuite/ChangeLog
index ae0fa89..b3772c4 100644
--- a/ld/testsuite/ChangeLog
+++ b/ld/testsuite/ChangeLog
@@ -1,3 +1,11 @@
+2014-04-16 Kwok Cheung Yeung <kcy@codesourcery.com>
+
+ * ld-mips-elf/elf-rel-xgot-n32.d: Update for new GOT layout.
+ * ld-mips-elf/elf-rel-xgot-n32-embed.d: Likewise.
+ * ld-mips-elf/elf-rel-xgot-n64.d: Likewise.
+ * ld-mips-elf/elf-rel-xgot-n64-embed.d: Likewise.
+ * ld-mips-elf/elf-rel-xgot-n64-linux.d: Likewise.
+
2014-04-15 Marcus Shawcroft <marcus.shawcroft@arm.com>
* ld-aarch64/tls-relax-gdesc-ie.s (var): Adjust test case
diff --git a/ld/testsuite/ld-mips-elf/elf-rel-xgot-n32-embed.d b/ld/testsuite/ld-mips-elf/elf-rel-xgot-n32-embed.d
index 1d0c045..a0bef16 100644
--- a/ld/testsuite/ld-mips-elf/elf-rel-xgot-n32-embed.d
+++ b/ld/testsuite/ld-mips-elf/elf-rel-xgot-n32-embed.d
@@ -18,382 +18,382 @@ Disassembly of section \.text:
10000074 <fn>:
10000074: 3c050000 lui a1,0x0
10000078: 00bc2821 addu a1,a1,gp
-1000007c: 8ca58018 lw a1,-32744\(a1\)
+1000007c: 8ca58038 lw a1,-32712\(a1\)
10000080: 3c050000 lui a1,0x0
10000084: 00bc2821 addu a1,a1,gp
-10000088: 8ca58018 lw a1,-32744\(a1\)
+10000088: 8ca58038 lw a1,-32712\(a1\)
1000008c: 24a5000c addiu a1,a1,12
10000090: 3c050000 lui a1,0x0
10000094: 00bc2821 addu a1,a1,gp
-10000098: 8ca58018 lw a1,-32744\(a1\)
+10000098: 8ca58038 lw a1,-32712\(a1\)
1000009c: 3c010001 lui at,0x1
100000a0: 3421e240 ori at,at,0xe240
100000a4: 00a12821 addu a1,a1,at
100000a8: 3c050000 lui a1,0x0
100000ac: 00bc2821 addu a1,a1,gp
-100000b0: 8ca58018 lw a1,-32744\(a1\)
+100000b0: 8ca58038 lw a1,-32712\(a1\)
100000b4: 00b12821 addu a1,a1,s1
100000b8: 3c050000 lui a1,0x0
100000bc: 00bc2821 addu a1,a1,gp
-100000c0: 8ca58018 lw a1,-32744\(a1\)
+100000c0: 8ca58038 lw a1,-32712\(a1\)
100000c4: 24a5000c addiu a1,a1,12
100000c8: 00b12821 addu a1,a1,s1
100000cc: 3c050000 lui a1,0x0
100000d0: 00bc2821 addu a1,a1,gp
-100000d4: 8ca58018 lw a1,-32744\(a1\)
+100000d4: 8ca58038 lw a1,-32712\(a1\)
100000d8: 3c010001 lui at,0x1
100000dc: 3421e240 ori at,at,0xe240
100000e0: 00a12821 addu a1,a1,at
100000e4: 00b12821 addu a1,a1,s1
100000e8: 3c050000 lui a1,0x0
100000ec: 00bc2821 addu a1,a1,gp
-100000f0: 8ca58018 lw a1,-32744\(a1\)
+100000f0: 8ca58038 lw a1,-32712\(a1\)
100000f4: 8ca50000 lw a1,0\(a1\)
100000f8: 3c050000 lui a1,0x0
100000fc: 00bc2821 addu a1,a1,gp
-10000100: 8ca58018 lw a1,-32744\(a1\)
+10000100: 8ca58038 lw a1,-32712\(a1\)
10000104: 8ca5000c lw a1,12\(a1\)
10000108: 3c050000 lui a1,0x0
1000010c: 00bc2821 addu a1,a1,gp
-10000110: 8ca58018 lw a1,-32744\(a1\)
+10000110: 8ca58038 lw a1,-32712\(a1\)
10000114: 00b12821 addu a1,a1,s1
10000118: 8ca50000 lw a1,0\(a1\)
1000011c: 3c050000 lui a1,0x0
10000120: 00bc2821 addu a1,a1,gp
-10000124: 8ca58018 lw a1,-32744\(a1\)
+10000124: 8ca58038 lw a1,-32712\(a1\)
10000128: 00b12821 addu a1,a1,s1
1000012c: 8ca5000c lw a1,12\(a1\)
10000130: 3c010000 lui at,0x0
10000134: 003c0821 addu at,at,gp
-10000138: 8c218018 lw at,-32744\(at\)
+10000138: 8c218038 lw at,-32712\(at\)
1000013c: 00250821 addu at,at,a1
10000140: 8c250022 lw a1,34\(at\)
10000144: 3c010000 lui at,0x0
10000148: 003c0821 addu at,at,gp
-1000014c: 8c218018 lw at,-32744\(at\)
+1000014c: 8c218038 lw at,-32712\(at\)
10000150: 00250821 addu at,at,a1
10000154: ac250038 sw a1,56\(at\)
10000158: 3c010000 lui at,0x0
1000015c: 003c0821 addu at,at,gp
-10000160: 8c218018 lw at,-32744\(at\)
+10000160: 8c218038 lw at,-32712\(at\)
10000164: 88250000 lwl a1,0\(at\)
10000168: 98250003 lwr a1,3\(at\)
1000016c: 3c010000 lui at,0x0
10000170: 003c0821 addu at,at,gp
-10000174: 8c218018 lw at,-32744\(at\)
+10000174: 8c218038 lw at,-32712\(at\)
10000178: 2421000c addiu at,at,12
1000017c: 88250000 lwl a1,0\(at\)
10000180: 98250003 lwr a1,3\(at\)
10000184: 3c010000 lui at,0x0
10000188: 003c0821 addu at,at,gp
-1000018c: 8c218018 lw at,-32744\(at\)
+1000018c: 8c218038 lw at,-32712\(at\)
10000190: 00310821 addu at,at,s1
10000194: 88250000 lwl a1,0\(at\)
10000198: 98250003 lwr a1,3\(at\)
1000019c: 3c010000 lui at,0x0
100001a0: 003c0821 addu at,at,gp
-100001a4: 8c218018 lw at,-32744\(at\)
+100001a4: 8c218038 lw at,-32712\(at\)
100001a8: 2421000c addiu at,at,12
100001ac: 00310821 addu at,at,s1
100001b0: 88250000 lwl a1,0\(at\)
100001b4: 98250003 lwr a1,3\(at\)
100001b8: 3c010000 lui at,0x0
100001bc: 003c0821 addu at,at,gp
-100001c0: 8c218018 lw at,-32744\(at\)
+100001c0: 8c218038 lw at,-32712\(at\)
100001c4: 24210022 addiu at,at,34
100001c8: 00250821 addu at,at,a1
100001cc: 88250000 lwl a1,0\(at\)
100001d0: 98250003 lwr a1,3\(at\)
100001d4: 3c010000 lui at,0x0
100001d8: 003c0821 addu at,at,gp
-100001dc: 8c218018 lw at,-32744\(at\)
+100001dc: 8c218038 lw at,-32712\(at\)
100001e0: 24210038 addiu at,at,56
100001e4: 00250821 addu at,at,a1
100001e8: a8250000 swl a1,0\(at\)
100001ec: b8250003 swr a1,3\(at\)
-100001f0: 8f85801c lw a1,-32740\(gp\)
+100001f0: 8f858018 lw a1,-32744\(gp\)
100001f4: 24a506b8 addiu a1,a1,1720
-100001f8: 8f85801c lw a1,-32740\(gp\)
+100001f8: 8f858018 lw a1,-32744\(gp\)
100001fc: 24a506c4 addiu a1,a1,1732
-10000200: 8f858020 lw a1,-32736\(gp\)
+10000200: 8f85801c lw a1,-32740\(gp\)
10000204: 24a5e8f8 addiu a1,a1,-5896
-10000208: 8f85801c lw a1,-32740\(gp\)
+10000208: 8f858018 lw a1,-32744\(gp\)
1000020c: 24a506b8 addiu a1,a1,1720
10000210: 00b12821 addu a1,a1,s1
-10000214: 8f85801c lw a1,-32740\(gp\)
+10000214: 8f858018 lw a1,-32744\(gp\)
10000218: 24a506c4 addiu a1,a1,1732
1000021c: 00b12821 addu a1,a1,s1
-10000220: 8f858020 lw a1,-32736\(gp\)
+10000220: 8f85801c lw a1,-32740\(gp\)
10000224: 24a5e8f8 addiu a1,a1,-5896
10000228: 00b12821 addu a1,a1,s1
-1000022c: 8f85801c lw a1,-32740\(gp\)
+1000022c: 8f858018 lw a1,-32744\(gp\)
10000230: 8ca506b8 lw a1,1720\(a1\)
-10000234: 8f85801c lw a1,-32740\(gp\)
+10000234: 8f858018 lw a1,-32744\(gp\)
10000238: 8ca506c4 lw a1,1732\(a1\)
-1000023c: 8f85801c lw a1,-32740\(gp\)
+1000023c: 8f858018 lw a1,-32744\(gp\)
10000240: 00b12821 addu a1,a1,s1
10000244: 8ca506b8 lw a1,1720\(a1\)
-10000248: 8f85801c lw a1,-32740\(gp\)
+10000248: 8f858018 lw a1,-32744\(gp\)
1000024c: 00b12821 addu a1,a1,s1
10000250: 8ca506c4 lw a1,1732\(a1\)
-10000254: 8f81801c lw at,-32740\(gp\)
+10000254: 8f818018 lw at,-32744\(gp\)
10000258: 00250821 addu at,at,a1
1000025c: 8c2506da lw a1,1754\(at\)
-10000260: 8f81801c lw at,-32740\(gp\)
+10000260: 8f818018 lw at,-32744\(gp\)
10000264: 00250821 addu at,at,a1
10000268: ac2506f0 sw a1,1776\(at\)
-1000026c: 8f81801c lw at,-32740\(gp\)
+1000026c: 8f818018 lw at,-32744\(gp\)
10000270: 242106b8 addiu at,at,1720
10000274: 88250000 lwl a1,0\(at\)
10000278: 98250003 lwr a1,3\(at\)
-1000027c: 8f81801c lw at,-32740\(gp\)
+1000027c: 8f818018 lw at,-32744\(gp\)
10000280: 242106c4 addiu at,at,1732
10000284: 88250000 lwl a1,0\(at\)
10000288: 98250003 lwr a1,3\(at\)
-1000028c: 8f81801c lw at,-32740\(gp\)
+1000028c: 8f818018 lw at,-32744\(gp\)
10000290: 242106b8 addiu at,at,1720
10000294: 00310821 addu at,at,s1
10000298: 88250000 lwl a1,0\(at\)
1000029c: 98250003 lwr a1,3\(at\)
-100002a0: 8f81801c lw at,-32740\(gp\)
+100002a0: 8f818018 lw at,-32744\(gp\)
100002a4: 242106c4 addiu at,at,1732
100002a8: 00310821 addu at,at,s1
100002ac: 88250000 lwl a1,0\(at\)
100002b0: 98250003 lwr a1,3\(at\)
-100002b4: 8f81801c lw at,-32740\(gp\)
+100002b4: 8f818018 lw at,-32744\(gp\)
100002b8: 242106da addiu at,at,1754
100002bc: 00250821 addu at,at,a1
100002c0: 88250000 lwl a1,0\(at\)
100002c4: 98250003 lwr a1,3\(at\)
-100002c8: 8f81801c lw at,-32740\(gp\)
+100002c8: 8f818018 lw at,-32744\(gp\)
100002cc: 242106f0 addiu at,at,1776
100002d0: 00250821 addu at,at,a1
100002d4: a8250000 swl a1,0\(at\)
100002d8: b8250003 swr a1,3\(at\)
100002dc: 3c050000 lui a1,0x0
100002e0: 00bc2821 addu a1,a1,gp
-100002e4: 8ca58024 lw a1,-32732\(a1\)
-100002e8: 8f858028 lw a1,-32728\(gp\)
+100002e4: 8ca58034 lw a1,-32716\(a1\)
+100002e8: 8f858020 lw a1,-32736\(gp\)
100002ec: 24a50074 addiu a1,a1,116
100002f0: 3c190000 lui t9,0x0
100002f4: 033cc821 addu t9,t9,gp
-100002f8: 8f398024 lw t9,-32732\(t9\)
-100002fc: 8f998028 lw t9,-32728\(gp\)
+100002f8: 8f398034 lw t9,-32716\(t9\)
+100002fc: 8f998020 lw t9,-32736\(gp\)
10000300: 27390074 addiu t9,t9,116
10000304: 3c190000 lui t9,0x0
10000308: 033cc821 addu t9,t9,gp
-1000030c: 8f398024 lw t9,-32732\(t9\)
+1000030c: 8f398034 lw t9,-32716\(t9\)
10000310: 0411ff58 bal 10000074 <fn>
10000314: 00000000 nop
-10000318: 8f998028 lw t9,-32728\(gp\)
+10000318: 8f998020 lw t9,-32736\(gp\)
1000031c: 27390074 addiu t9,t9,116
10000320: 0411ff54 bal 10000074 <fn>
10000324: 00000000 nop
10000328: 3c050000 lui a1,0x0
1000032c: 00bc2821 addu a1,a1,gp
-10000330: 8ca5802c lw a1,-32724\(a1\)
+10000330: 8ca58030 lw a1,-32720\(a1\)
10000334: 3c050000 lui a1,0x0
10000338: 00bc2821 addu a1,a1,gp
-1000033c: 8ca5802c lw a1,-32724\(a1\)
+1000033c: 8ca58030 lw a1,-32720\(a1\)
10000340: 24a5000c addiu a1,a1,12
10000344: 3c050000 lui a1,0x0
10000348: 00bc2821 addu a1,a1,gp
-1000034c: 8ca5802c lw a1,-32724\(a1\)
+1000034c: 8ca58030 lw a1,-32720\(a1\)
10000350: 3c010001 lui at,0x1
10000354: 3421e240 ori at,at,0xe240
10000358: 00a12821 addu a1,a1,at
1000035c: 3c050000 lui a1,0x0
10000360: 00bc2821 addu a1,a1,gp
-10000364: 8ca5802c lw a1,-32724\(a1\)
+10000364: 8ca58030 lw a1,-32720\(a1\)
10000368: 00b12821 addu a1,a1,s1
1000036c: 3c050000 lui a1,0x0
10000370: 00bc2821 addu a1,a1,gp
-10000374: 8ca5802c lw a1,-32724\(a1\)
+10000374: 8ca58030 lw a1,-32720\(a1\)
10000378: 24a5000c addiu a1,a1,12
1000037c: 00b12821 addu a1,a1,s1
10000380: 3c050000 lui a1,0x0
10000384: 00bc2821 addu a1,a1,gp
-10000388: 8ca5802c lw a1,-32724\(a1\)
+10000388: 8ca58030 lw a1,-32720\(a1\)
1000038c: 3c010001 lui at,0x1
10000390: 3421e240 ori at,at,0xe240
10000394: 00a12821 addu a1,a1,at
10000398: 00b12821 addu a1,a1,s1
1000039c: 3c050000 lui a1,0x0
100003a0: 00bc2821 addu a1,a1,gp
-100003a4: 8ca5802c lw a1,-32724\(a1\)
+100003a4: 8ca58030 lw a1,-32720\(a1\)
100003a8: 8ca50000 lw a1,0\(a1\)
100003ac: 3c050000 lui a1,0x0
100003b0: 00bc2821 addu a1,a1,gp
-100003b4: 8ca5802c lw a1,-32724\(a1\)
+100003b4: 8ca58030 lw a1,-32720\(a1\)
100003b8: 8ca5000c lw a1,12\(a1\)
100003bc: 3c050000 lui a1,0x0
100003c0: 00bc2821 addu a1,a1,gp
-100003c4: 8ca5802c lw a1,-32724\(a1\)
+100003c4: 8ca58030 lw a1,-32720\(a1\)
100003c8: 00b12821 addu a1,a1,s1
100003cc: 8ca50000 lw a1,0\(a1\)
100003d0: 3c050000 lui a1,0x0
100003d4: 00bc2821 addu a1,a1,gp
-100003d8: 8ca5802c lw a1,-32724\(a1\)
+100003d8: 8ca58030 lw a1,-32720\(a1\)
100003dc: 00b12821 addu a1,a1,s1
100003e0: 8ca5000c lw a1,12\(a1\)
100003e4: 3c010000 lui at,0x0
100003e8: 003c0821 addu at,at,gp
-100003ec: 8c21802c lw at,-32724\(at\)
+100003ec: 8c218030 lw at,-32720\(at\)
100003f0: 00250821 addu at,at,a1
100003f4: 8c250022 lw a1,34\(at\)
100003f8: 3c010000 lui at,0x0
100003fc: 003c0821 addu at,at,gp
-10000400: 8c21802c lw at,-32724\(at\)
+10000400: 8c218030 lw at,-32720\(at\)
10000404: 00250821 addu at,at,a1
10000408: ac250038 sw a1,56\(at\)
1000040c: 3c010000 lui at,0x0
10000410: 003c0821 addu at,at,gp
-10000414: 8c21802c lw at,-32724\(at\)
+10000414: 8c218030 lw at,-32720\(at\)
10000418: 88250000 lwl a1,0\(at\)
1000041c: 98250003 lwr a1,3\(at\)
10000420: 3c010000 lui at,0x0
10000424: 003c0821 addu at,at,gp
-10000428: 8c21802c lw at,-32724\(at\)
+10000428: 8c218030 lw at,-32720\(at\)
1000042c: 2421000c addiu at,at,12
10000430: 88250000 lwl a1,0\(at\)
10000434: 98250003 lwr a1,3\(at\)
10000438: 3c010000 lui at,0x0
1000043c: 003c0821 addu at,at,gp
-10000440: 8c21802c lw at,-32724\(at\)
+10000440: 8c218030 lw at,-32720\(at\)
10000444: 00310821 addu at,at,s1
10000448: 88250000 lwl a1,0\(at\)
1000044c: 98250003 lwr a1,3\(at\)
10000450: 3c010000 lui at,0x0
10000454: 003c0821 addu at,at,gp
-10000458: 8c21802c lw at,-32724\(at\)
+10000458: 8c218030 lw at,-32720\(at\)
1000045c: 2421000c addiu at,at,12
10000460: 00310821 addu at,at,s1
10000464: 88250000 lwl a1,0\(at\)
10000468: 98250003 lwr a1,3\(at\)
1000046c: 3c010000 lui at,0x0
10000470: 003c0821 addu at,at,gp
-10000474: 8c21802c lw at,-32724\(at\)
+10000474: 8c218030 lw at,-32720\(at\)
10000478: 24210022 addiu at,at,34
1000047c: 00250821 addu at,at,a1
10000480: 88250000 lwl a1,0\(at\)
10000484: 98250003 lwr a1,3\(at\)
10000488: 3c010000 lui at,0x0
1000048c: 003c0821 addu at,at,gp
-10000490: 8c21802c lw at,-32724\(at\)
+10000490: 8c218030 lw at,-32720\(at\)
10000494: 24210038 addiu at,at,56
10000498: 00250821 addu at,at,a1
1000049c: a8250000 swl a1,0\(at\)
100004a0: b8250003 swr a1,3\(at\)
-100004a4: 8f85801c lw a1,-32740\(gp\)
+100004a4: 8f858018 lw a1,-32744\(gp\)
100004a8: 24a50730 addiu a1,a1,1840
-100004ac: 8f85801c lw a1,-32740\(gp\)
+100004ac: 8f858018 lw a1,-32744\(gp\)
100004b0: 24a5073c addiu a1,a1,1852
-100004b4: 8f858020 lw a1,-32736\(gp\)
+100004b4: 8f85801c lw a1,-32740\(gp\)
100004b8: 24a5e970 addiu a1,a1,-5776
-100004bc: 8f85801c lw a1,-32740\(gp\)
+100004bc: 8f858018 lw a1,-32744\(gp\)
100004c0: 24a50730 addiu a1,a1,1840
100004c4: 00b12821 addu a1,a1,s1
-100004c8: 8f85801c lw a1,-32740\(gp\)
+100004c8: 8f858018 lw a1,-32744\(gp\)
100004cc: 24a5073c addiu a1,a1,1852
100004d0: 00b12821 addu a1,a1,s1
-100004d4: 8f858020 lw a1,-32736\(gp\)
+100004d4: 8f85801c lw a1,-32740\(gp\)
100004d8: 24a5e970 addiu a1,a1,-5776
100004dc: 00b12821 addu a1,a1,s1
-100004e0: 8f85801c lw a1,-32740\(gp\)
+100004e0: 8f858018 lw a1,-32744\(gp\)
100004e4: 8ca50730 lw a1,1840\(a1\)
-100004e8: 8f85801c lw a1,-32740\(gp\)
+100004e8: 8f858018 lw a1,-32744\(gp\)
100004ec: 8ca5073c lw a1,1852\(a1\)
-100004f0: 8f85801c lw a1,-32740\(gp\)
+100004f0: 8f858018 lw a1,-32744\(gp\)
100004f4: 00b12821 addu a1,a1,s1
100004f8: 8ca50730 lw a1,1840\(a1\)
-100004fc: 8f85801c lw a1,-32740\(gp\)
+100004fc: 8f858018 lw a1,-32744\(gp\)
10000500: 00b12821 addu a1,a1,s1
10000504: 8ca5073c lw a1,1852\(a1\)
-10000508: 8f81801c lw at,-32740\(gp\)
+10000508: 8f818018 lw at,-32744\(gp\)
1000050c: 00250821 addu at,at,a1
10000510: 8c250752 lw a1,1874\(at\)
-10000514: 8f81801c lw at,-32740\(gp\)
+10000514: 8f818018 lw at,-32744\(gp\)
10000518: 00250821 addu at,at,a1
1000051c: ac250768 sw a1,1896\(at\)
-10000520: 8f81801c lw at,-32740\(gp\)
+10000520: 8f818018 lw at,-32744\(gp\)
10000524: 24210730 addiu at,at,1840
10000528: 88250000 lwl a1,0\(at\)
1000052c: 98250003 lwr a1,3\(at\)
-10000530: 8f81801c lw at,-32740\(gp\)
+10000530: 8f818018 lw at,-32744\(gp\)
10000534: 2421073c addiu at,at,1852
10000538: 88250000 lwl a1,0\(at\)
1000053c: 98250003 lwr a1,3\(at\)
-10000540: 8f81801c lw at,-32740\(gp\)
+10000540: 8f818018 lw at,-32744\(gp\)
10000544: 24210730 addiu at,at,1840
10000548: 00310821 addu at,at,s1
1000054c: 88250000 lwl a1,0\(at\)
10000550: 98250003 lwr a1,3\(at\)
-10000554: 8f81801c lw at,-32740\(gp\)
+10000554: 8f818018 lw at,-32744\(gp\)
10000558: 2421073c addiu at,at,1852
1000055c: 00310821 addu at,at,s1
10000560: 88250000 lwl a1,0\(at\)
10000564: 98250003 lwr a1,3\(at\)
-10000568: 8f81801c lw at,-32740\(gp\)
+10000568: 8f818018 lw at,-32744\(gp\)
1000056c: 24210752 addiu at,at,1874
10000570: 00250821 addu at,at,a1
10000574: 88250000 lwl a1,0\(at\)
10000578: 98250003 lwr a1,3\(at\)
-1000057c: 8f81801c lw at,-32740\(gp\)
+1000057c: 8f818018 lw at,-32744\(gp\)
10000580: 24210768 addiu at,at,1896
10000584: 00250821 addu at,at,a1
10000588: a8250000 swl a1,0\(at\)
1000058c: b8250003 swr a1,3\(at\)
10000590: 3c050000 lui a1,0x0
10000594: 00bc2821 addu a1,a1,gp
-10000598: 8ca58030 lw a1,-32720\(a1\)
-1000059c: 8f858028 lw a1,-32728\(gp\)
+10000598: 8ca5802c lw a1,-32724\(a1\)
+1000059c: 8f858020 lw a1,-32736\(gp\)
100005a0: 24a50674 addiu a1,a1,1652
100005a4: 3c190000 lui t9,0x0
100005a8: 033cc821 addu t9,t9,gp
-100005ac: 8f398030 lw t9,-32720\(t9\)
-100005b0: 8f998028 lw t9,-32728\(gp\)
+100005ac: 8f39802c lw t9,-32724\(t9\)
+100005b0: 8f998020 lw t9,-32736\(gp\)
100005b4: 27390674 addiu t9,t9,1652
100005b8: 3c190000 lui t9,0x0
100005bc: 033cc821 addu t9,t9,gp
-100005c0: 8f398030 lw t9,-32720\(t9\)
+100005c0: 8f39802c lw t9,-32724\(t9\)
100005c4: 0411002b bal 10000674 <fn2>
100005c8: 00000000 nop
-100005cc: 8f998028 lw t9,-32728\(gp\)
+100005cc: 8f998020 lw t9,-32736\(gp\)
100005d0: 27390674 addiu t9,t9,1652
100005d4: 04110027 bal 10000674 <fn2>
100005d8: 00000000 nop
100005dc: 3c050000 lui a1,0x0
100005e0: 00bc2821 addu a1,a1,gp
-100005e4: 8ca58018 lw a1,-32744\(a1\)
+100005e4: 8ca58038 lw a1,-32712\(a1\)
100005e8: 1000fea2 b 10000074 <fn>
100005ec: 00000000 nop
100005f0: 3c050000 lui a1,0x0
100005f4: 00bc2821 addu a1,a1,gp
-100005f8: 8ca5802c lw a1,-32724\(a1\)
+100005f8: 8ca58030 lw a1,-32720\(a1\)
100005fc: 8ca50000 lw a1,0\(a1\)
10000600: 1000001c b 10000674 <fn2>
10000604: 00000000 nop
-10000608: 8f85801c lw a1,-32740\(gp\)
+10000608: 8f858018 lw a1,-32744\(gp\)
1000060c: 24a506b8 addiu a1,a1,1720
10000610: 1000fe98 b 10000074 <fn>
10000614: 00000000 nop
-10000618: 8f85801c lw a1,-32740\(gp\)
+10000618: 8f858018 lw a1,-32744\(gp\)
1000061c: 24a5073c addiu a1,a1,1852
10000620: 10000014 b 10000674 <fn2>
10000624: 00000000 nop
-10000628: 8f858020 lw a1,-32736\(gp\)
+10000628: 8f85801c lw a1,-32740\(gp\)
1000062c: 24a5e8f8 addiu a1,a1,-5896
10000630: 1000fe90 b 10000074 <fn>
10000634: 00000000 nop
-10000638: 8f85801c lw a1,-32740\(gp\)
+10000638: 8f858018 lw a1,-32744\(gp\)
1000063c: 8ca50730 lw a1,1840\(a1\)
10000640: 1000000c b 10000674 <fn2>
10000644: 00000000 nop
-10000648: 8f85801c lw a1,-32740\(gp\)
+10000648: 8f858018 lw a1,-32744\(gp\)
1000064c: 8ca506c4 lw a1,1732\(a1\)
10000650: 1000fe88 b 10000074 <fn>
10000654: 00000000 nop
-10000658: 8f81801c lw at,-32740\(gp\)
+10000658: 8f818018 lw at,-32744\(gp\)
1000065c: 00250821 addu at,at,a1
10000660: 8c250752 lw a1,1874\(at\)
10000664: 10000003 b 10000674 <fn2>
@@ -422,13 +422,13 @@ Disassembly of section \.got:
10010770 <_GLOBAL_OFFSET_TABLE_>:
10010770: 00000000 .*
10010774: 80000000 .*
-10010778: 100106b8 .*
-1001077c: 10010000 .*
-10010780: 10030000 .*
-10010784: 10000074 .*
-10010788: 10000000 .*
-1001078c: 10010730 .*
-10010790: 10000674 .*
-10010794: 00000000 .*
-10010798: 00000000 .*
+10010778: 10010000 .*
+1001077c: 10030000 .*
+10010780: 10000000 .*
+10010784: 00000000 .*
+10010788: 00000000 .*
+1001078c: 10000674 .*
+10010790: 10010730 .*
+10010794: 10000074 .*
+10010798: 100106b8 .*
#pass
diff --git a/ld/testsuite/ld-mips-elf/elf-rel-xgot-n32.d b/ld/testsuite/ld-mips-elf/elf-rel-xgot-n32.d
index 4e105aa..a909aa9 100644
--- a/ld/testsuite/ld-mips-elf/elf-rel-xgot-n32.d
+++ b/ld/testsuite/ld-mips-elf/elf-rel-xgot-n32.d
@@ -18,382 +18,382 @@ Disassembly of section \.text:
100000b0 <fn>:
100000b0: 3c050000 lui a1,0x0
100000b4: 00bc2821 addu a1,a1,gp
-100000b8: 8ca58018 lw a1,-32744\(a1\)
+100000b8: 8ca58038 lw a1,-32712\(a1\)
100000bc: 3c050000 lui a1,0x0
100000c0: 00bc2821 addu a1,a1,gp
-100000c4: 8ca58018 lw a1,-32744\(a1\)
+100000c4: 8ca58038 lw a1,-32712\(a1\)
100000c8: 24a5000c addiu a1,a1,12
100000cc: 3c050000 lui a1,0x0
100000d0: 00bc2821 addu a1,a1,gp
-100000d4: 8ca58018 lw a1,-32744\(a1\)
+100000d4: 8ca58038 lw a1,-32712\(a1\)
100000d8: 3c010001 lui at,0x1
100000dc: 3421e240 ori at,at,0xe240
100000e0: 00a12821 addu a1,a1,at
100000e4: 3c050000 lui a1,0x0
100000e8: 00bc2821 addu a1,a1,gp
-100000ec: 8ca58018 lw a1,-32744\(a1\)
+100000ec: 8ca58038 lw a1,-32712\(a1\)
100000f0: 00b12821 addu a1,a1,s1
100000f4: 3c050000 lui a1,0x0
100000f8: 00bc2821 addu a1,a1,gp
-100000fc: 8ca58018 lw a1,-32744\(a1\)
+100000fc: 8ca58038 lw a1,-32712\(a1\)
10000100: 24a5000c addiu a1,a1,12
10000104: 00b12821 addu a1,a1,s1
10000108: 3c050000 lui a1,0x0
1000010c: 00bc2821 addu a1,a1,gp
-10000110: 8ca58018 lw a1,-32744\(a1\)
+10000110: 8ca58038 lw a1,-32712\(a1\)
10000114: 3c010001 lui at,0x1
10000118: 3421e240 ori at,at,0xe240
1000011c: 00a12821 addu a1,a1,at
10000120: 00b12821 addu a1,a1,s1
10000124: 3c050000 lui a1,0x0
10000128: 00bc2821 addu a1,a1,gp
-1000012c: 8ca58018 lw a1,-32744\(a1\)
+1000012c: 8ca58038 lw a1,-32712\(a1\)
10000130: 8ca50000 lw a1,0\(a1\)
10000134: 3c050000 lui a1,0x0
10000138: 00bc2821 addu a1,a1,gp
-1000013c: 8ca58018 lw a1,-32744\(a1\)
+1000013c: 8ca58038 lw a1,-32712\(a1\)
10000140: 8ca5000c lw a1,12\(a1\)
10000144: 3c050000 lui a1,0x0
10000148: 00bc2821 addu a1,a1,gp
-1000014c: 8ca58018 lw a1,-32744\(a1\)
+1000014c: 8ca58038 lw a1,-32712\(a1\)
10000150: 00b12821 addu a1,a1,s1
10000154: 8ca50000 lw a1,0\(a1\)
10000158: 3c050000 lui a1,0x0
1000015c: 00bc2821 addu a1,a1,gp
-10000160: 8ca58018 lw a1,-32744\(a1\)
+10000160: 8ca58038 lw a1,-32712\(a1\)
10000164: 00b12821 addu a1,a1,s1
10000168: 8ca5000c lw a1,12\(a1\)
1000016c: 3c010000 lui at,0x0
10000170: 003c0821 addu at,at,gp
-10000174: 8c218018 lw at,-32744\(at\)
+10000174: 8c218038 lw at,-32712\(at\)
10000178: 00250821 addu at,at,a1
1000017c: 8c250022 lw a1,34\(at\)
10000180: 3c010000 lui at,0x0
10000184: 003c0821 addu at,at,gp
-10000188: 8c218018 lw at,-32744\(at\)
+10000188: 8c218038 lw at,-32712\(at\)
1000018c: 00250821 addu at,at,a1
10000190: ac250038 sw a1,56\(at\)
10000194: 3c010000 lui at,0x0
10000198: 003c0821 addu at,at,gp
-1000019c: 8c218018 lw at,-32744\(at\)
+1000019c: 8c218038 lw at,-32712\(at\)
100001a0: 88250000 lwl a1,0\(at\)
100001a4: 98250003 lwr a1,3\(at\)
100001a8: 3c010000 lui at,0x0
100001ac: 003c0821 addu at,at,gp
-100001b0: 8c218018 lw at,-32744\(at\)
+100001b0: 8c218038 lw at,-32712\(at\)
100001b4: 2421000c addiu at,at,12
100001b8: 88250000 lwl a1,0\(at\)
100001bc: 98250003 lwr a1,3\(at\)
100001c0: 3c010000 lui at,0x0
100001c4: 003c0821 addu at,at,gp
-100001c8: 8c218018 lw at,-32744\(at\)
+100001c8: 8c218038 lw at,-32712\(at\)
100001cc: 00310821 addu at,at,s1
100001d0: 88250000 lwl a1,0\(at\)
100001d4: 98250003 lwr a1,3\(at\)
100001d8: 3c010000 lui at,0x0
100001dc: 003c0821 addu at,at,gp
-100001e0: 8c218018 lw at,-32744\(at\)
+100001e0: 8c218038 lw at,-32712\(at\)
100001e4: 2421000c addiu at,at,12
100001e8: 00310821 addu at,at,s1
100001ec: 88250000 lwl a1,0\(at\)
100001f0: 98250003 lwr a1,3\(at\)
100001f4: 3c010000 lui at,0x0
100001f8: 003c0821 addu at,at,gp
-100001fc: 8c218018 lw at,-32744\(at\)
+100001fc: 8c218038 lw at,-32712\(at\)
10000200: 24210022 addiu at,at,34
10000204: 00250821 addu at,at,a1
10000208: 88250000 lwl a1,0\(at\)
1000020c: 98250003 lwr a1,3\(at\)
10000210: 3c010000 lui at,0x0
10000214: 003c0821 addu at,at,gp
-10000218: 8c218018 lw at,-32744\(at\)
+10000218: 8c218038 lw at,-32712\(at\)
1000021c: 24210038 addiu at,at,56
10000220: 00250821 addu at,at,a1
10000224: a8250000 swl a1,0\(at\)
10000228: b8250003 swr a1,3\(at\)
-1000022c: 8f85801c lw a1,-32740\(gp\)
+1000022c: 8f858018 lw a1,-32744\(gp\)
10000230: 24a506fc addiu a1,a1,1788
-10000234: 8f85801c lw a1,-32740\(gp\)
+10000234: 8f858018 lw a1,-32744\(gp\)
10000238: 24a50708 addiu a1,a1,1800
-1000023c: 8f858020 lw a1,-32736\(gp\)
+1000023c: 8f85801c lw a1,-32740\(gp\)
10000240: 24a5e93c addiu a1,a1,-5828
-10000244: 8f85801c lw a1,-32740\(gp\)
+10000244: 8f858018 lw a1,-32744\(gp\)
10000248: 24a506fc addiu a1,a1,1788
1000024c: 00b12821 addu a1,a1,s1
-10000250: 8f85801c lw a1,-32740\(gp\)
+10000250: 8f858018 lw a1,-32744\(gp\)
10000254: 24a50708 addiu a1,a1,1800
10000258: 00b12821 addu a1,a1,s1
-1000025c: 8f858020 lw a1,-32736\(gp\)
+1000025c: 8f85801c lw a1,-32740\(gp\)
10000260: 24a5e93c addiu a1,a1,-5828
10000264: 00b12821 addu a1,a1,s1
-10000268: 8f85801c lw a1,-32740\(gp\)
+10000268: 8f858018 lw a1,-32744\(gp\)
1000026c: 8ca506fc lw a1,1788\(a1\)
-10000270: 8f85801c lw a1,-32740\(gp\)
+10000270: 8f858018 lw a1,-32744\(gp\)
10000274: 8ca50708 lw a1,1800\(a1\)
-10000278: 8f85801c lw a1,-32740\(gp\)
+10000278: 8f858018 lw a1,-32744\(gp\)
1000027c: 00b12821 addu a1,a1,s1
10000280: 8ca506fc lw a1,1788\(a1\)
-10000284: 8f85801c lw a1,-32740\(gp\)
+10000284: 8f858018 lw a1,-32744\(gp\)
10000288: 00b12821 addu a1,a1,s1
1000028c: 8ca50708 lw a1,1800\(a1\)
-10000290: 8f81801c lw at,-32740\(gp\)
+10000290: 8f818018 lw at,-32744\(gp\)
10000294: 00250821 addu at,at,a1
10000298: 8c25071e lw a1,1822\(at\)
-1000029c: 8f81801c lw at,-32740\(gp\)
+1000029c: 8f818018 lw at,-32744\(gp\)
100002a0: 00250821 addu at,at,a1
100002a4: ac250734 sw a1,1844\(at\)
-100002a8: 8f81801c lw at,-32740\(gp\)
+100002a8: 8f818018 lw at,-32744\(gp\)
100002ac: 242106fc addiu at,at,1788
100002b0: 88250000 lwl a1,0\(at\)
100002b4: 98250003 lwr a1,3\(at\)
-100002b8: 8f81801c lw at,-32740\(gp\)
+100002b8: 8f818018 lw at,-32744\(gp\)
100002bc: 24210708 addiu at,at,1800
100002c0: 88250000 lwl a1,0\(at\)
100002c4: 98250003 lwr a1,3\(at\)
-100002c8: 8f81801c lw at,-32740\(gp\)
+100002c8: 8f818018 lw at,-32744\(gp\)
100002cc: 242106fc addiu at,at,1788
100002d0: 00310821 addu at,at,s1
100002d4: 88250000 lwl a1,0\(at\)
100002d8: 98250003 lwr a1,3\(at\)
-100002dc: 8f81801c lw at,-32740\(gp\)
+100002dc: 8f818018 lw at,-32744\(gp\)
100002e0: 24210708 addiu at,at,1800
100002e4: 00310821 addu at,at,s1
100002e8: 88250000 lwl a1,0\(at\)
100002ec: 98250003 lwr a1,3\(at\)
-100002f0: 8f81801c lw at,-32740\(gp\)
+100002f0: 8f818018 lw at,-32744\(gp\)
100002f4: 2421071e addiu at,at,1822
100002f8: 00250821 addu at,at,a1
100002fc: 88250000 lwl a1,0\(at\)
10000300: 98250003 lwr a1,3\(at\)
-10000304: 8f81801c lw at,-32740\(gp\)
+10000304: 8f818018 lw at,-32744\(gp\)
10000308: 24210734 addiu at,at,1844
1000030c: 00250821 addu at,at,a1
10000310: a8250000 swl a1,0\(at\)
10000314: b8250003 swr a1,3\(at\)
10000318: 3c050000 lui a1,0x0
1000031c: 00bc2821 addu a1,a1,gp
-10000320: 8ca58024 lw a1,-32732\(a1\)
-10000324: 8f858028 lw a1,-32728\(gp\)
+10000320: 8ca58034 lw a1,-32716\(a1\)
+10000324: 8f858020 lw a1,-32736\(gp\)
10000328: 24a500b0 addiu a1,a1,176
1000032c: 3c190000 lui t9,0x0
10000330: 033cc821 addu t9,t9,gp
-10000334: 8f398024 lw t9,-32732\(t9\)
-10000338: 8f998028 lw t9,-32728\(gp\)
+10000334: 8f398034 lw t9,-32716\(t9\)
+10000338: 8f998020 lw t9,-32736\(gp\)
1000033c: 273900b0 addiu t9,t9,176
10000340: 3c190000 lui t9,0x0
10000344: 033cc821 addu t9,t9,gp
-10000348: 8f398024 lw t9,-32732\(t9\)
+10000348: 8f398034 lw t9,-32716\(t9\)
1000034c: 0411ff58 bal 100000b0 <fn>
10000350: 00000000 nop
-10000354: 8f998028 lw t9,-32728\(gp\)
+10000354: 8f998020 lw t9,-32736\(gp\)
10000358: 273900b0 addiu t9,t9,176
1000035c: 0411ff54 bal 100000b0 <fn>
10000360: 00000000 nop
10000364: 3c050000 lui a1,0x0
10000368: 00bc2821 addu a1,a1,gp
-1000036c: 8ca5802c lw a1,-32724\(a1\)
+1000036c: 8ca58030 lw a1,-32720\(a1\)
10000370: 3c050000 lui a1,0x0
10000374: 00bc2821 addu a1,a1,gp
-10000378: 8ca5802c lw a1,-32724\(a1\)
+10000378: 8ca58030 lw a1,-32720\(a1\)
1000037c: 24a5000c addiu a1,a1,12
10000380: 3c050000 lui a1,0x0
10000384: 00bc2821 addu a1,a1,gp
-10000388: 8ca5802c lw a1,-32724\(a1\)
+10000388: 8ca58030 lw a1,-32720\(a1\)
1000038c: 3c010001 lui at,0x1
10000390: 3421e240 ori at,at,0xe240
10000394: 00a12821 addu a1,a1,at
10000398: 3c050000 lui a1,0x0
1000039c: 00bc2821 addu a1,a1,gp
-100003a0: 8ca5802c lw a1,-32724\(a1\)
+100003a0: 8ca58030 lw a1,-32720\(a1\)
100003a4: 00b12821 addu a1,a1,s1
100003a8: 3c050000 lui a1,0x0
100003ac: 00bc2821 addu a1,a1,gp
-100003b0: 8ca5802c lw a1,-32724\(a1\)
+100003b0: 8ca58030 lw a1,-32720\(a1\)
100003b4: 24a5000c addiu a1,a1,12
100003b8: 00b12821 addu a1,a1,s1
100003bc: 3c050000 lui a1,0x0
100003c0: 00bc2821 addu a1,a1,gp
-100003c4: 8ca5802c lw a1,-32724\(a1\)
+100003c4: 8ca58030 lw a1,-32720\(a1\)
100003c8: 3c010001 lui at,0x1
100003cc: 3421e240 ori at,at,0xe240
100003d0: 00a12821 addu a1,a1,at
100003d4: 00b12821 addu a1,a1,s1
100003d8: 3c050000 lui a1,0x0
100003dc: 00bc2821 addu a1,a1,gp
-100003e0: 8ca5802c lw a1,-32724\(a1\)
+100003e0: 8ca58030 lw a1,-32720\(a1\)
100003e4: 8ca50000 lw a1,0\(a1\)
100003e8: 3c050000 lui a1,0x0
100003ec: 00bc2821 addu a1,a1,gp
-100003f0: 8ca5802c lw a1,-32724\(a1\)
+100003f0: 8ca58030 lw a1,-32720\(a1\)
100003f4: 8ca5000c lw a1,12\(a1\)
100003f8: 3c050000 lui a1,0x0
100003fc: 00bc2821 addu a1,a1,gp
-10000400: 8ca5802c lw a1,-32724\(a1\)
+10000400: 8ca58030 lw a1,-32720\(a1\)
10000404: 00b12821 addu a1,a1,s1
10000408: 8ca50000 lw a1,0\(a1\)
1000040c: 3c050000 lui a1,0x0
10000410: 00bc2821 addu a1,a1,gp
-10000414: 8ca5802c lw a1,-32724\(a1\)
+10000414: 8ca58030 lw a1,-32720\(a1\)
10000418: 00b12821 addu a1,a1,s1
1000041c: 8ca5000c lw a1,12\(a1\)
10000420: 3c010000 lui at,0x0
10000424: 003c0821 addu at,at,gp
-10000428: 8c21802c lw at,-32724\(at\)
+10000428: 8c218030 lw at,-32720\(at\)
1000042c: 00250821 addu at,at,a1
10000430: 8c250022 lw a1,34\(at\)
10000434: 3c010000 lui at,0x0
10000438: 003c0821 addu at,at,gp
-1000043c: 8c21802c lw at,-32724\(at\)
+1000043c: 8c218030 lw at,-32720\(at\)
10000440: 00250821 addu at,at,a1
10000444: ac250038 sw a1,56\(at\)
10000448: 3c010000 lui at,0x0
1000044c: 003c0821 addu at,at,gp
-10000450: 8c21802c lw at,-32724\(at\)
+10000450: 8c218030 lw at,-32720\(at\)
10000454: 88250000 lwl a1,0\(at\)
10000458: 98250003 lwr a1,3\(at\)
1000045c: 3c010000 lui at,0x0
10000460: 003c0821 addu at,at,gp
-10000464: 8c21802c lw at,-32724\(at\)
+10000464: 8c218030 lw at,-32720\(at\)
10000468: 2421000c addiu at,at,12
1000046c: 88250000 lwl a1,0\(at\)
10000470: 98250003 lwr a1,3\(at\)
10000474: 3c010000 lui at,0x0
10000478: 003c0821 addu at,at,gp
-1000047c: 8c21802c lw at,-32724\(at\)
+1000047c: 8c218030 lw at,-32720\(at\)
10000480: 00310821 addu at,at,s1
10000484: 88250000 lwl a1,0\(at\)
10000488: 98250003 lwr a1,3\(at\)
1000048c: 3c010000 lui at,0x0
10000490: 003c0821 addu at,at,gp
-10000494: 8c21802c lw at,-32724\(at\)
+10000494: 8c218030 lw at,-32720\(at\)
10000498: 2421000c addiu at,at,12
1000049c: 00310821 addu at,at,s1
100004a0: 88250000 lwl a1,0\(at\)
100004a4: 98250003 lwr a1,3\(at\)
100004a8: 3c010000 lui at,0x0
100004ac: 003c0821 addu at,at,gp
-100004b0: 8c21802c lw at,-32724\(at\)
+100004b0: 8c218030 lw at,-32720\(at\)
100004b4: 24210022 addiu at,at,34
100004b8: 00250821 addu at,at,a1
100004bc: 88250000 lwl a1,0\(at\)
100004c0: 98250003 lwr a1,3\(at\)
100004c4: 3c010000 lui at,0x0
100004c8: 003c0821 addu at,at,gp
-100004cc: 8c21802c lw at,-32724\(at\)
+100004cc: 8c218030 lw at,-32720\(at\)
100004d0: 24210038 addiu at,at,56
100004d4: 00250821 addu at,at,a1
100004d8: a8250000 swl a1,0\(at\)
100004dc: b8250003 swr a1,3\(at\)
-100004e0: 8f85801c lw a1,-32740\(gp\)
+100004e0: 8f858018 lw a1,-32744\(gp\)
100004e4: 24a50774 addiu a1,a1,1908
-100004e8: 8f85801c lw a1,-32740\(gp\)
+100004e8: 8f858018 lw a1,-32744\(gp\)
100004ec: 24a50780 addiu a1,a1,1920
-100004f0: 8f858020 lw a1,-32736\(gp\)
+100004f0: 8f85801c lw a1,-32740\(gp\)
100004f4: 24a5e9b4 addiu a1,a1,-5708
-100004f8: 8f85801c lw a1,-32740\(gp\)
+100004f8: 8f858018 lw a1,-32744\(gp\)
100004fc: 24a50774 addiu a1,a1,1908
10000500: 00b12821 addu a1,a1,s1
-10000504: 8f85801c lw a1,-32740\(gp\)
+10000504: 8f858018 lw a1,-32744\(gp\)
10000508: 24a50780 addiu a1,a1,1920
1000050c: 00b12821 addu a1,a1,s1
-10000510: 8f858020 lw a1,-32736\(gp\)
+10000510: 8f85801c lw a1,-32740\(gp\)
10000514: 24a5e9b4 addiu a1,a1,-5708
10000518: 00b12821 addu a1,a1,s1
-1000051c: 8f85801c lw a1,-32740\(gp\)
+1000051c: 8f858018 lw a1,-32744\(gp\)
10000520: 8ca50774 lw a1,1908\(a1\)
-10000524: 8f85801c lw a1,-32740\(gp\)
+10000524: 8f858018 lw a1,-32744\(gp\)
10000528: 8ca50780 lw a1,1920\(a1\)
-1000052c: 8f85801c lw a1,-32740\(gp\)
+1000052c: 8f858018 lw a1,-32744\(gp\)
10000530: 00b12821 addu a1,a1,s1
10000534: 8ca50774 lw a1,1908\(a1\)
-10000538: 8f85801c lw a1,-32740\(gp\)
+10000538: 8f858018 lw a1,-32744\(gp\)
1000053c: 00b12821 addu a1,a1,s1
10000540: 8ca50780 lw a1,1920\(a1\)
-10000544: 8f81801c lw at,-32740\(gp\)
+10000544: 8f818018 lw at,-32744\(gp\)
10000548: 00250821 addu at,at,a1
1000054c: 8c250796 lw a1,1942\(at\)
-10000550: 8f81801c lw at,-32740\(gp\)
+10000550: 8f818018 lw at,-32744\(gp\)
10000554: 00250821 addu at,at,a1
10000558: ac2507ac sw a1,1964\(at\)
-1000055c: 8f81801c lw at,-32740\(gp\)
+1000055c: 8f818018 lw at,-32744\(gp\)
10000560: 24210774 addiu at,at,1908
10000564: 88250000 lwl a1,0\(at\)
10000568: 98250003 lwr a1,3\(at\)
-1000056c: 8f81801c lw at,-32740\(gp\)
+1000056c: 8f818018 lw at,-32744\(gp\)
10000570: 24210780 addiu at,at,1920
10000574: 88250000 lwl a1,0\(at\)
10000578: 98250003 lwr a1,3\(at\)
-1000057c: 8f81801c lw at,-32740\(gp\)
+1000057c: 8f818018 lw at,-32744\(gp\)
10000580: 24210774 addiu at,at,1908
10000584: 00310821 addu at,at,s1
10000588: 88250000 lwl a1,0\(at\)
1000058c: 98250003 lwr a1,3\(at\)
-10000590: 8f81801c lw at,-32740\(gp\)
+10000590: 8f818018 lw at,-32744\(gp\)
10000594: 24210780 addiu at,at,1920
10000598: 00310821 addu at,at,s1
1000059c: 88250000 lwl a1,0\(at\)
100005a0: 98250003 lwr a1,3\(at\)
-100005a4: 8f81801c lw at,-32740\(gp\)
+100005a4: 8f818018 lw at,-32744\(gp\)
100005a8: 24210796 addiu at,at,1942
100005ac: 00250821 addu at,at,a1
100005b0: 88250000 lwl a1,0\(at\)
100005b4: 98250003 lwr a1,3\(at\)
-100005b8: 8f81801c lw at,-32740\(gp\)
+100005b8: 8f818018 lw at,-32744\(gp\)
100005bc: 242107ac addiu at,at,1964
100005c0: 00250821 addu at,at,a1
100005c4: a8250000 swl a1,0\(at\)
100005c8: b8250003 swr a1,3\(at\)
100005cc: 3c050000 lui a1,0x0
100005d0: 00bc2821 addu a1,a1,gp
-100005d4: 8ca58030 lw a1,-32720\(a1\)
-100005d8: 8f858028 lw a1,-32728\(gp\)
+100005d4: 8ca5802c lw a1,-32724\(a1\)
+100005d8: 8f858020 lw a1,-32736\(gp\)
100005dc: 24a506b0 addiu a1,a1,1712
100005e0: 3c190000 lui t9,0x0
100005e4: 033cc821 addu t9,t9,gp
-100005e8: 8f398030 lw t9,-32720\(t9\)
-100005ec: 8f998028 lw t9,-32728\(gp\)
+100005e8: 8f39802c lw t9,-32724\(t9\)
+100005ec: 8f998020 lw t9,-32736\(gp\)
100005f0: 273906b0 addiu t9,t9,1712
100005f4: 3c190000 lui t9,0x0
100005f8: 033cc821 addu t9,t9,gp
-100005fc: 8f398030 lw t9,-32720\(t9\)
+100005fc: 8f39802c lw t9,-32724\(t9\)
10000600: 0411002b bal 100006b0 <fn2>
10000604: 00000000 nop
-10000608: 8f998028 lw t9,-32728\(gp\)
+10000608: 8f998020 lw t9,-32736\(gp\)
1000060c: 273906b0 addiu t9,t9,1712
10000610: 04110027 bal 100006b0 <fn2>
10000614: 00000000 nop
10000618: 3c050000 lui a1,0x0
1000061c: 00bc2821 addu a1,a1,gp
-10000620: 8ca58018 lw a1,-32744\(a1\)
+10000620: 8ca58038 lw a1,-32712\(a1\)
10000624: 1000fea2 b 100000b0 <fn>
10000628: 00000000 nop
1000062c: 3c050000 lui a1,0x0
10000630: 00bc2821 addu a1,a1,gp
-10000634: 8ca5802c lw a1,-32724\(a1\)
+10000634: 8ca58030 lw a1,-32720\(a1\)
10000638: 8ca50000 lw a1,0\(a1\)
1000063c: 1000001c b 100006b0 <fn2>
10000640: 00000000 nop
-10000644: 8f85801c lw a1,-32740\(gp\)
+10000644: 8f858018 lw a1,-32744\(gp\)
10000648: 24a506fc addiu a1,a1,1788
1000064c: 1000fe98 b 100000b0 <fn>
10000650: 00000000 nop
-10000654: 8f85801c lw a1,-32740\(gp\)
+10000654: 8f858018 lw a1,-32744\(gp\)
10000658: 24a50780 addiu a1,a1,1920
1000065c: 10000014 b 100006b0 <fn2>
10000660: 00000000 nop
-10000664: 8f858020 lw a1,-32736\(gp\)
+10000664: 8f85801c lw a1,-32740\(gp\)
10000668: 24a5e93c addiu a1,a1,-5828
1000066c: 1000fe90 b 100000b0 <fn>
10000670: 00000000 nop
-10000674: 8f85801c lw a1,-32740\(gp\)
+10000674: 8f858018 lw a1,-32744\(gp\)
10000678: 8ca50774 lw a1,1908\(a1\)
1000067c: 1000000c b 100006b0 <fn2>
10000680: 00000000 nop
-10000684: 8f85801c lw a1,-32740\(gp\)
+10000684: 8f858018 lw a1,-32744\(gp\)
10000688: 8ca50708 lw a1,1800\(a1\)
1000068c: 1000fe88 b 100000b0 <fn>
10000690: 00000000 nop
-10000694: 8f81801c lw at,-32740\(gp\)
+10000694: 8f818018 lw at,-32744\(gp\)
10000698: 00250821 addu at,at,a1
1000069c: 8c250796 lw a1,1942\(at\)
100006a0: 10000003 b 100006b0 <fn2>
@@ -422,13 +422,13 @@ Disassembly of section \.got:
100107b0 <_GLOBAL_OFFSET_TABLE_>:
100107b0: 00000000 .*
100107b4: 80000000 .*
-100107b8: 100106fc .*
-100107bc: 10010000 .*
-100107c0: 10030000 .*
-100107c4: 100000b0 .*
-100107c8: 10000000 .*
-100107cc: 10010774 .*
-100107d0: 100006b0 .*
-100107d4: 00000000 .*
-100107d8: 00000000 .*
+100107b8: 10010000 .*
+100107bc: 10030000 .*
+100107c0: 10000000 .*
+100107c4: 00000000 .*
+100107c8: 00000000 .*
+100107cc: 100006b0 .*
+100107d0: 10010774 .*
+100107d4: 100000b0 .*
+100107d8: 100106fc .*
#pass
diff --git a/ld/testsuite/ld-mips-elf/elf-rel-xgot-n64-embed.d b/ld/testsuite/ld-mips-elf/elf-rel-xgot-n64-embed.d
index 6da691c..271257f 100644
--- a/ld/testsuite/ld-mips-elf/elf-rel-xgot-n64-embed.d
+++ b/ld/testsuite/ld-mips-elf/elf-rel-xgot-n64-embed.d
@@ -21,382 +21,382 @@ Disassembly of section \.text:
00000001200000b0 <fn>:
1200000b0: 3c050000 lui a1,0x0
1200000b4: 00bc282d daddu a1,a1,gp
- 1200000b8: dca58020 ld a1,-32736\(a1\)
+ 1200000b8: dca58060 ld a1,-32672\(a1\)
1200000bc: 3c050000 lui a1,0x0
1200000c0: 00bc282d daddu a1,a1,gp
- 1200000c4: dca58020 ld a1,-32736\(a1\)
+ 1200000c4: dca58060 ld a1,-32672\(a1\)
1200000c8: 64a5000c daddiu a1,a1,12
1200000cc: 3c050000 lui a1,0x0
1200000d0: 00bc282d daddu a1,a1,gp
- 1200000d4: dca58020 ld a1,-32736\(a1\)
+ 1200000d4: dca58060 ld a1,-32672\(a1\)
1200000d8: 3c010001 lui at,0x1
1200000dc: 3421e240 ori at,at,0xe240
1200000e0: 00a1282d daddu a1,a1,at
1200000e4: 3c050000 lui a1,0x0
1200000e8: 00bc282d daddu a1,a1,gp
- 1200000ec: dca58020 ld a1,-32736\(a1\)
+ 1200000ec: dca58060 ld a1,-32672\(a1\)
1200000f0: 00b1282d daddu a1,a1,s1
1200000f4: 3c050000 lui a1,0x0
1200000f8: 00bc282d daddu a1,a1,gp
- 1200000fc: dca58020 ld a1,-32736\(a1\)
+ 1200000fc: dca58060 ld a1,-32672\(a1\)
120000100: 64a5000c daddiu a1,a1,12
120000104: 00b1282d daddu a1,a1,s1
120000108: 3c050000 lui a1,0x0
12000010c: 00bc282d daddu a1,a1,gp
- 120000110: dca58020 ld a1,-32736\(a1\)
+ 120000110: dca58060 ld a1,-32672\(a1\)
120000114: 3c010001 lui at,0x1
120000118: 3421e240 ori at,at,0xe240
12000011c: 00a1282d daddu a1,a1,at
120000120: 00b1282d daddu a1,a1,s1
120000124: 3c050000 lui a1,0x0
120000128: 00bc282d daddu a1,a1,gp
- 12000012c: dca58020 ld a1,-32736\(a1\)
+ 12000012c: dca58060 ld a1,-32672\(a1\)
120000130: dca50000 ld a1,0\(a1\)
120000134: 3c050000 lui a1,0x0
120000138: 00bc282d daddu a1,a1,gp
- 12000013c: dca58020 ld a1,-32736\(a1\)
+ 12000013c: dca58060 ld a1,-32672\(a1\)
120000140: dca5000c ld a1,12\(a1\)
120000144: 3c050000 lui a1,0x0
120000148: 00bc282d daddu a1,a1,gp
- 12000014c: dca58020 ld a1,-32736\(a1\)
+ 12000014c: dca58060 ld a1,-32672\(a1\)
120000150: 00b1282d daddu a1,a1,s1
120000154: dca50000 ld a1,0\(a1\)
120000158: 3c050000 lui a1,0x0
12000015c: 00bc282d daddu a1,a1,gp
- 120000160: dca58020 ld a1,-32736\(a1\)
+ 120000160: dca58060 ld a1,-32672\(a1\)
120000164: 00b1282d daddu a1,a1,s1
120000168: dca5000c ld a1,12\(a1\)
12000016c: 3c010000 lui at,0x0
120000170: 003c082d daddu at,at,gp
- 120000174: dc218020 ld at,-32736\(at\)
+ 120000174: dc218060 ld at,-32672\(at\)
120000178: 0025082d daddu at,at,a1
12000017c: dc250022 ld a1,34\(at\)
120000180: 3c010000 lui at,0x0
120000184: 003c082d daddu at,at,gp
- 120000188: dc218020 ld at,-32736\(at\)
+ 120000188: dc218060 ld at,-32672\(at\)
12000018c: 0025082d daddu at,at,a1
120000190: fc250038 sd a1,56\(at\)
120000194: 3c010000 lui at,0x0
120000198: 003c082d daddu at,at,gp
- 12000019c: dc218020 ld at,-32736\(at\)
+ 12000019c: dc218060 ld at,-32672\(at\)
1200001a0: 88250000 lwl a1,0\(at\)
1200001a4: 98250003 lwr a1,3\(at\)
1200001a8: 3c010000 lui at,0x0
1200001ac: 003c082d daddu at,at,gp
- 1200001b0: dc218020 ld at,-32736\(at\)
+ 1200001b0: dc218060 ld at,-32672\(at\)
1200001b4: 6421000c daddiu at,at,12
1200001b8: 88250000 lwl a1,0\(at\)
1200001bc: 98250003 lwr a1,3\(at\)
1200001c0: 3c010000 lui at,0x0
1200001c4: 003c082d daddu at,at,gp
- 1200001c8: dc218020 ld at,-32736\(at\)
+ 1200001c8: dc218060 ld at,-32672\(at\)
1200001cc: 0031082d daddu at,at,s1
1200001d0: 88250000 lwl a1,0\(at\)
1200001d4: 98250003 lwr a1,3\(at\)
1200001d8: 3c010000 lui at,0x0
1200001dc: 003c082d daddu at,at,gp
- 1200001e0: dc218020 ld at,-32736\(at\)
+ 1200001e0: dc218060 ld at,-32672\(at\)
1200001e4: 6421000c daddiu at,at,12
1200001e8: 0031082d daddu at,at,s1
1200001ec: 88250000 lwl a1,0\(at\)
1200001f0: 98250003 lwr a1,3\(at\)
1200001f4: 3c010000 lui at,0x0
1200001f8: 003c082d daddu at,at,gp
- 1200001fc: dc218020 ld at,-32736\(at\)
+ 1200001fc: dc218060 ld at,-32672\(at\)
120000200: 64210022 daddiu at,at,34
120000204: 0025082d daddu at,at,a1
120000208: 88250000 lwl a1,0\(at\)
12000020c: 98250003 lwr a1,3\(at\)
120000210: 3c010000 lui at,0x0
120000214: 003c082d daddu at,at,gp
- 120000218: dc218020 ld at,-32736\(at\)
+ 120000218: dc218060 ld at,-32672\(at\)
12000021c: 64210038 daddiu at,at,56
120000220: 0025082d daddu at,at,a1
120000224: a8250000 swl a1,0\(at\)
120000228: b8250003 swr a1,3\(at\)
- 12000022c: df858028 ld a1,-32728\(gp\)
+ 12000022c: df858020 ld a1,-32736\(gp\)
120000230: 64a506f4 daddiu a1,a1,1780
- 120000234: df858028 ld a1,-32728\(gp\)
+ 120000234: df858020 ld a1,-32736\(gp\)
120000238: 64a50700 daddiu a1,a1,1792
- 12000023c: df858030 ld a1,-32720\(gp\)
+ 12000023c: df858028 ld a1,-32728\(gp\)
120000240: 64a5e934 daddiu a1,a1,-5836
- 120000244: df858028 ld a1,-32728\(gp\)
+ 120000244: df858020 ld a1,-32736\(gp\)
120000248: 64a506f4 daddiu a1,a1,1780
12000024c: 00b1282d daddu a1,a1,s1
- 120000250: df858028 ld a1,-32728\(gp\)
+ 120000250: df858020 ld a1,-32736\(gp\)
120000254: 64a50700 daddiu a1,a1,1792
120000258: 00b1282d daddu a1,a1,s1
- 12000025c: df858030 ld a1,-32720\(gp\)
+ 12000025c: df858028 ld a1,-32728\(gp\)
120000260: 64a5e934 daddiu a1,a1,-5836
120000264: 00b1282d daddu a1,a1,s1
- 120000268: df858028 ld a1,-32728\(gp\)
+ 120000268: df858020 ld a1,-32736\(gp\)
12000026c: dca506f4 ld a1,1780\(a1\)
- 120000270: df858028 ld a1,-32728\(gp\)
+ 120000270: df858020 ld a1,-32736\(gp\)
120000274: dca50700 ld a1,1792\(a1\)
- 120000278: df858028 ld a1,-32728\(gp\)
+ 120000278: df858020 ld a1,-32736\(gp\)
12000027c: 00b1282d daddu a1,a1,s1
120000280: dca506f4 ld a1,1780\(a1\)
- 120000284: df858028 ld a1,-32728\(gp\)
+ 120000284: df858020 ld a1,-32736\(gp\)
120000288: 00b1282d daddu a1,a1,s1
12000028c: dca50700 ld a1,1792\(a1\)
- 120000290: df818028 ld at,-32728\(gp\)
+ 120000290: df818020 ld at,-32736\(gp\)
120000294: 0025082d daddu at,at,a1
120000298: dc250716 ld a1,1814\(at\)
- 12000029c: df818028 ld at,-32728\(gp\)
+ 12000029c: df818020 ld at,-32736\(gp\)
1200002a0: 0025082d daddu at,at,a1
1200002a4: fc25072c sd a1,1836\(at\)
- 1200002a8: df818028 ld at,-32728\(gp\)
+ 1200002a8: df818020 ld at,-32736\(gp\)
1200002ac: 642106f4 daddiu at,at,1780
1200002b0: 88250000 lwl a1,0\(at\)
1200002b4: 98250003 lwr a1,3\(at\)
- 1200002b8: df818028 ld at,-32728\(gp\)
+ 1200002b8: df818020 ld at,-32736\(gp\)
1200002bc: 64210700 daddiu at,at,1792
1200002c0: 88250000 lwl a1,0\(at\)
1200002c4: 98250003 lwr a1,3\(at\)
- 1200002c8: df818028 ld at,-32728\(gp\)
+ 1200002c8: df818020 ld at,-32736\(gp\)
1200002cc: 642106f4 daddiu at,at,1780
1200002d0: 0031082d daddu at,at,s1
1200002d4: 88250000 lwl a1,0\(at\)
1200002d8: 98250003 lwr a1,3\(at\)
- 1200002dc: df818028 ld at,-32728\(gp\)
+ 1200002dc: df818020 ld at,-32736\(gp\)
1200002e0: 64210700 daddiu at,at,1792
1200002e4: 0031082d daddu at,at,s1
1200002e8: 88250000 lwl a1,0\(at\)
1200002ec: 98250003 lwr a1,3\(at\)
- 1200002f0: df818028 ld at,-32728\(gp\)
+ 1200002f0: df818020 ld at,-32736\(gp\)
1200002f4: 64210716 daddiu at,at,1814
1200002f8: 0025082d daddu at,at,a1
1200002fc: 88250000 lwl a1,0\(at\)
120000300: 98250003 lwr a1,3\(at\)
- 120000304: df818028 ld at,-32728\(gp\)
+ 120000304: df818020 ld at,-32736\(gp\)
120000308: 6421072c daddiu at,at,1836
12000030c: 0025082d daddu at,at,a1
120000310: a8250000 swl a1,0\(at\)
120000314: b8250003 swr a1,3\(at\)
120000318: 3c050000 lui a1,0x0
12000031c: 00bc282d daddu a1,a1,gp
- 120000320: dca58038 ld a1,-32712\(a1\)
- 120000324: df858040 ld a1,-32704\(gp\)
+ 120000320: dca58058 ld a1,-32680\(a1\)
+ 120000324: df858030 ld a1,-32720\(gp\)
120000328: 64a500b0 daddiu a1,a1,176
12000032c: 3c190000 lui t9,0x0
120000330: 033cc82d daddu t9,t9,gp
- 120000334: df398038 ld t9,-32712\(t9\)
- 120000338: df998040 ld t9,-32704\(gp\)
+ 120000334: df398058 ld t9,-32680\(t9\)
+ 120000338: df998030 ld t9,-32720\(gp\)
12000033c: 673900b0 daddiu t9,t9,176
120000340: 3c190000 lui t9,0x0
120000344: 033cc82d daddu t9,t9,gp
- 120000348: df398038 ld t9,-32712\(t9\)
+ 120000348: df398058 ld t9,-32680\(t9\)
12000034c: 0411ff58 bal 1200000b0 <fn>
120000350: 00000000 nop
- 120000354: df998040 ld t9,-32704\(gp\)
+ 120000354: df998030 ld t9,-32720\(gp\)
120000358: 673900b0 daddiu t9,t9,176
12000035c: 0411ff54 bal 1200000b0 <fn>
120000360: 00000000 nop
120000364: 3c050000 lui a1,0x0
120000368: 00bc282d daddu a1,a1,gp
- 12000036c: dca58048 ld a1,-32696\(a1\)
+ 12000036c: dca58050 ld a1,-32688\(a1\)
120000370: 3c050000 lui a1,0x0
120000374: 00bc282d daddu a1,a1,gp
- 120000378: dca58048 ld a1,-32696\(a1\)
+ 120000378: dca58050 ld a1,-32688\(a1\)
12000037c: 64a5000c daddiu a1,a1,12
120000380: 3c050000 lui a1,0x0
120000384: 00bc282d daddu a1,a1,gp
- 120000388: dca58048 ld a1,-32696\(a1\)
+ 120000388: dca58050 ld a1,-32688\(a1\)
12000038c: 3c010001 lui at,0x1
120000390: 3421e240 ori at,at,0xe240
120000394: 00a1282d daddu a1,a1,at
120000398: 3c050000 lui a1,0x0
12000039c: 00bc282d daddu a1,a1,gp
- 1200003a0: dca58048 ld a1,-32696\(a1\)
+ 1200003a0: dca58050 ld a1,-32688\(a1\)
1200003a4: 00b1282d daddu a1,a1,s1
1200003a8: 3c050000 lui a1,0x0
1200003ac: 00bc282d daddu a1,a1,gp
- 1200003b0: dca58048 ld a1,-32696\(a1\)
+ 1200003b0: dca58050 ld a1,-32688\(a1\)
1200003b4: 64a5000c daddiu a1,a1,12
1200003b8: 00b1282d daddu a1,a1,s1
1200003bc: 3c050000 lui a1,0x0
1200003c0: 00bc282d daddu a1,a1,gp
- 1200003c4: dca58048 ld a1,-32696\(a1\)
+ 1200003c4: dca58050 ld a1,-32688\(a1\)
1200003c8: 3c010001 lui at,0x1
1200003cc: 3421e240 ori at,at,0xe240
1200003d0: 00a1282d daddu a1,a1,at
1200003d4: 00b1282d daddu a1,a1,s1
1200003d8: 3c050000 lui a1,0x0
1200003dc: 00bc282d daddu a1,a1,gp
- 1200003e0: dca58048 ld a1,-32696\(a1\)
+ 1200003e0: dca58050 ld a1,-32688\(a1\)
1200003e4: dca50000 ld a1,0\(a1\)
1200003e8: 3c050000 lui a1,0x0
1200003ec: 00bc282d daddu a1,a1,gp
- 1200003f0: dca58048 ld a1,-32696\(a1\)
+ 1200003f0: dca58050 ld a1,-32688\(a1\)
1200003f4: dca5000c ld a1,12\(a1\)
1200003f8: 3c050000 lui a1,0x0
1200003fc: 00bc282d daddu a1,a1,gp
- 120000400: dca58048 ld a1,-32696\(a1\)
+ 120000400: dca58050 ld a1,-32688\(a1\)
120000404: 00b1282d daddu a1,a1,s1
120000408: dca50000 ld a1,0\(a1\)
12000040c: 3c050000 lui a1,0x0
120000410: 00bc282d daddu a1,a1,gp
- 120000414: dca58048 ld a1,-32696\(a1\)
+ 120000414: dca58050 ld a1,-32688\(a1\)
120000418: 00b1282d daddu a1,a1,s1
12000041c: dca5000c ld a1,12\(a1\)
120000420: 3c010000 lui at,0x0
120000424: 003c082d daddu at,at,gp
- 120000428: dc218048 ld at,-32696\(at\)
+ 120000428: dc218050 ld at,-32688\(at\)
12000042c: 0025082d daddu at,at,a1
120000430: dc250022 ld a1,34\(at\)
120000434: 3c010000 lui at,0x0
120000438: 003c082d daddu at,at,gp
- 12000043c: dc218048 ld at,-32696\(at\)
+ 12000043c: dc218050 ld at,-32688\(at\)
120000440: 0025082d daddu at,at,a1
120000444: fc250038 sd a1,56\(at\)
120000448: 3c010000 lui at,0x0
12000044c: 003c082d daddu at,at,gp
- 120000450: dc218048 ld at,-32696\(at\)
+ 120000450: dc218050 ld at,-32688\(at\)
120000454: 88250000 lwl a1,0\(at\)
120000458: 98250003 lwr a1,3\(at\)
12000045c: 3c010000 lui at,0x0
120000460: 003c082d daddu at,at,gp
- 120000464: dc218048 ld at,-32696\(at\)
+ 120000464: dc218050 ld at,-32688\(at\)
120000468: 6421000c daddiu at,at,12
12000046c: 88250000 lwl a1,0\(at\)
120000470: 98250003 lwr a1,3\(at\)
120000474: 3c010000 lui at,0x0
120000478: 003c082d daddu at,at,gp
- 12000047c: dc218048 ld at,-32696\(at\)
+ 12000047c: dc218050 ld at,-32688\(at\)
120000480: 0031082d daddu at,at,s1
120000484: 88250000 lwl a1,0\(at\)
120000488: 98250003 lwr a1,3\(at\)
12000048c: 3c010000 lui at,0x0
120000490: 003c082d daddu at,at,gp
- 120000494: dc218048 ld at,-32696\(at\)
+ 120000494: dc218050 ld at,-32688\(at\)
120000498: 6421000c daddiu at,at,12
12000049c: 0031082d daddu at,at,s1
1200004a0: 88250000 lwl a1,0\(at\)
1200004a4: 98250003 lwr a1,3\(at\)
1200004a8: 3c010000 lui at,0x0
1200004ac: 003c082d daddu at,at,gp
- 1200004b0: dc218048 ld at,-32696\(at\)
+ 1200004b0: dc218050 ld at,-32688\(at\)
1200004b4: 64210022 daddiu at,at,34
1200004b8: 0025082d daddu at,at,a1
1200004bc: 88250000 lwl a1,0\(at\)
1200004c0: 98250003 lwr a1,3\(at\)
1200004c4: 3c010000 lui at,0x0
1200004c8: 003c082d daddu at,at,gp
- 1200004cc: dc218048 ld at,-32696\(at\)
+ 1200004cc: dc218050 ld at,-32688\(at\)
1200004d0: 64210038 daddiu at,at,56
1200004d4: 0025082d daddu at,at,a1
1200004d8: a8250000 swl a1,0\(at\)
1200004dc: b8250003 swr a1,3\(at\)
- 1200004e0: df858028 ld a1,-32728\(gp\)
+ 1200004e0: df858020 ld a1,-32736\(gp\)
1200004e4: 64a5076c daddiu a1,a1,1900
- 1200004e8: df858028 ld a1,-32728\(gp\)
+ 1200004e8: df858020 ld a1,-32736\(gp\)
1200004ec: 64a50778 daddiu a1,a1,1912
- 1200004f0: df858030 ld a1,-32720\(gp\)
+ 1200004f0: df858028 ld a1,-32728\(gp\)
1200004f4: 64a5e9ac daddiu a1,a1,-5716
- 1200004f8: df858028 ld a1,-32728\(gp\)
+ 1200004f8: df858020 ld a1,-32736\(gp\)
1200004fc: 64a5076c daddiu a1,a1,1900
120000500: 00b1282d daddu a1,a1,s1
- 120000504: df858028 ld a1,-32728\(gp\)
+ 120000504: df858020 ld a1,-32736\(gp\)
120000508: 64a50778 daddiu a1,a1,1912
12000050c: 00b1282d daddu a1,a1,s1
- 120000510: df858030 ld a1,-32720\(gp\)
+ 120000510: df858028 ld a1,-32728\(gp\)
120000514: 64a5e9ac daddiu a1,a1,-5716
120000518: 00b1282d daddu a1,a1,s1
- 12000051c: df858028 ld a1,-32728\(gp\)
+ 12000051c: df858020 ld a1,-32736\(gp\)
120000520: dca5076c ld a1,1900\(a1\)
- 120000524: df858028 ld a1,-32728\(gp\)
+ 120000524: df858020 ld a1,-32736\(gp\)
120000528: dca50778 ld a1,1912\(a1\)
- 12000052c: df858028 ld a1,-32728\(gp\)
+ 12000052c: df858020 ld a1,-32736\(gp\)
120000530: 00b1282d daddu a1,a1,s1
120000534: dca5076c ld a1,1900\(a1\)
- 120000538: df858028 ld a1,-32728\(gp\)
+ 120000538: df858020 ld a1,-32736\(gp\)
12000053c: 00b1282d daddu a1,a1,s1
120000540: dca50778 ld a1,1912\(a1\)
- 120000544: df818028 ld at,-32728\(gp\)
+ 120000544: df818020 ld at,-32736\(gp\)
120000548: 0025082d daddu at,at,a1
12000054c: dc25078e ld a1,1934\(at\)
- 120000550: df818028 ld at,-32728\(gp\)
+ 120000550: df818020 ld at,-32736\(gp\)
120000554: 0025082d daddu at,at,a1
120000558: fc2507a4 sd a1,1956\(at\)
- 12000055c: df818028 ld at,-32728\(gp\)
+ 12000055c: df818020 ld at,-32736\(gp\)
120000560: 6421076c daddiu at,at,1900
120000564: 88250000 lwl a1,0\(at\)
120000568: 98250003 lwr a1,3\(at\)
- 12000056c: df818028 ld at,-32728\(gp\)
+ 12000056c: df818020 ld at,-32736\(gp\)
120000570: 64210778 daddiu at,at,1912
120000574: 88250000 lwl a1,0\(at\)
120000578: 98250003 lwr a1,3\(at\)
- 12000057c: df818028 ld at,-32728\(gp\)
+ 12000057c: df818020 ld at,-32736\(gp\)
120000580: 6421076c daddiu at,at,1900
120000584: 0031082d daddu at,at,s1
120000588: 88250000 lwl a1,0\(at\)
12000058c: 98250003 lwr a1,3\(at\)
- 120000590: df818028 ld at,-32728\(gp\)
+ 120000590: df818020 ld at,-32736\(gp\)
120000594: 64210778 daddiu at,at,1912
120000598: 0031082d daddu at,at,s1
12000059c: 88250000 lwl a1,0\(at\)
1200005a0: 98250003 lwr a1,3\(at\)
- 1200005a4: df818028 ld at,-32728\(gp\)
+ 1200005a4: df818020 ld at,-32736\(gp\)
1200005a8: 6421078e daddiu at,at,1934
1200005ac: 0025082d daddu at,at,a1
1200005b0: 88250000 lwl a1,0\(at\)
1200005b4: 98250003 lwr a1,3\(at\)
- 1200005b8: df818028 ld at,-32728\(gp\)
+ 1200005b8: df818020 ld at,-32736\(gp\)
1200005bc: 642107a4 daddiu at,at,1956
1200005c0: 0025082d daddu at,at,a1
1200005c4: a8250000 swl a1,0\(at\)
1200005c8: b8250003 swr a1,3\(at\)
1200005cc: 3c050000 lui a1,0x0
1200005d0: 00bc282d daddu a1,a1,gp
- 1200005d4: dca58050 ld a1,-32688\(a1\)
- 1200005d8: df858040 ld a1,-32704\(gp\)
+ 1200005d4: dca58048 ld a1,-32696\(a1\)
+ 1200005d8: df858030 ld a1,-32720\(gp\)
1200005dc: 64a506b0 daddiu a1,a1,1712
1200005e0: 3c190000 lui t9,0x0
1200005e4: 033cc82d daddu t9,t9,gp
- 1200005e8: df398050 ld t9,-32688\(t9\)
- 1200005ec: df998040 ld t9,-32704\(gp\)
+ 1200005e8: df398048 ld t9,-32696\(t9\)
+ 1200005ec: df998030 ld t9,-32720\(gp\)
1200005f0: 673906b0 daddiu t9,t9,1712
1200005f4: 3c190000 lui t9,0x0
1200005f8: 033cc82d daddu t9,t9,gp
- 1200005fc: df398050 ld t9,-32688\(t9\)
+ 1200005fc: df398048 ld t9,-32696\(t9\)
120000600: 0411002b bal 1200006b0 <fn2>
120000604: 00000000 nop
- 120000608: df998040 ld t9,-32704\(gp\)
+ 120000608: df998030 ld t9,-32720\(gp\)
12000060c: 673906b0 daddiu t9,t9,1712
120000610: 04110027 bal 1200006b0 <fn2>
120000614: 00000000 nop
120000618: 3c050000 lui a1,0x0
12000061c: 00bc282d daddu a1,a1,gp
- 120000620: dca58020 ld a1,-32736\(a1\)
+ 120000620: dca58060 ld a1,-32672\(a1\)
120000624: 1000fea2 b 1200000b0 <fn>
120000628: 00000000 nop
12000062c: 3c050000 lui a1,0x0
120000630: 00bc282d daddu a1,a1,gp
- 120000634: dca58048 ld a1,-32696\(a1\)
+ 120000634: dca58050 ld a1,-32688\(a1\)
120000638: dca50000 ld a1,0\(a1\)
12000063c: 1000001c b 1200006b0 <fn2>
120000640: 00000000 nop
- 120000644: df858028 ld a1,-32728\(gp\)
+ 120000644: df858020 ld a1,-32736\(gp\)
120000648: 64a506f4 daddiu a1,a1,1780
12000064c: 1000fe98 b 1200000b0 <fn>
120000650: 00000000 nop
- 120000654: df858028 ld a1,-32728\(gp\)
+ 120000654: df858020 ld a1,-32736\(gp\)
120000658: 64a50778 daddiu a1,a1,1912
12000065c: 10000014 b 1200006b0 <fn2>
120000660: 00000000 nop
- 120000664: df858030 ld a1,-32720\(gp\)
+ 120000664: df858028 ld a1,-32728\(gp\)
120000668: 64a5e934 daddiu a1,a1,-5836
12000066c: 1000fe90 b 1200000b0 <fn>
120000670: 00000000 nop
- 120000674: df858028 ld a1,-32728\(gp\)
+ 120000674: df858020 ld a1,-32736\(gp\)
120000678: dca5076c ld a1,1900\(a1\)
12000067c: 1000000c b 1200006b0 <fn2>
120000680: 00000000 nop
- 120000684: df858028 ld a1,-32728\(gp\)
+ 120000684: df858020 ld a1,-32736\(gp\)
120000688: dca50700 ld a1,1792\(a1\)
12000068c: 1000fe88 b 1200000b0 <fn>
120000690: 00000000 nop
- 120000694: df818028 ld at,-32728\(gp\)
+ 120000694: df818020 ld at,-32736\(gp\)
120000698: 0025082d daddu at,at,a1
12000069c: dc25078e ld a1,1934\(at\)
1200006a0: 10000003 b 1200006b0 <fn2>
@@ -427,18 +427,18 @@ Disassembly of section \.got:
1200107b8: 80000000 .*
1200107bc: 00000000 .*
1200107c0: 00000001 .*
- 1200107c4: 200106f4 .*
+ 1200107c4: 20010000 .*
1200107c8: 00000001 .*
- 1200107cc: 20010000 .*
+ 1200107cc: 20030000 .*
1200107d0: 00000001 .*
- 1200107d4: 20030000 .*
- 1200107d8: 00000001 .*
- 1200107dc: 200000b0 .*
- 1200107e0: 00000001 .*
- 1200107e4: 20000000 .*
+ 1200107d4: 20000000 .*
+ \.\.\.
1200107e8: 00000001 .*
- 1200107ec: 2001076c .*
+ 1200107ec: 200006b0 .*
1200107f0: 00000001 .*
- 1200107f4: 200006b0 .*
- \.\.\.
+ 1200107f4: 2001076c .*
+ 1200107f8: 00000001 .*
+ 1200107fc: 200000b0 .*
+ 120010800: 00000001 .*
+ 120010804: 200106f4 .*
#pass
diff --git a/ld/testsuite/ld-mips-elf/elf-rel-xgot-n64-linux.d b/ld/testsuite/ld-mips-elf/elf-rel-xgot-n64-linux.d
index be446f0..4579700 100644
--- a/ld/testsuite/ld-mips-elf/elf-rel-xgot-n64-linux.d
+++ b/ld/testsuite/ld-mips-elf/elf-rel-xgot-n64-linux.d
@@ -21,382 +21,382 @@ Disassembly of section \.text:
00000001200000e0 <fn>:
1200000e0: 3c050000 lui a1,0x0
1200000e4: 00bc282d daddu a1,a1,gp
- 1200000e8: dca58020 ld a1,-32736\(a1\)
+ 1200000e8: dca58060 ld a1,-32672\(a1\)
1200000ec: 3c050000 lui a1,0x0
1200000f0: 00bc282d daddu a1,a1,gp
- 1200000f4: dca58020 ld a1,-32736\(a1\)
+ 1200000f4: dca58060 ld a1,-32672\(a1\)
1200000f8: 64a5000c daddiu a1,a1,12
1200000fc: 3c050000 lui a1,0x0
120000100: 00bc282d daddu a1,a1,gp
- 120000104: dca58020 ld a1,-32736\(a1\)
+ 120000104: dca58060 ld a1,-32672\(a1\)
120000108: 3c010001 lui at,0x1
12000010c: 3421e240 ori at,at,0xe240
120000110: 00a1282d daddu a1,a1,at
120000114: 3c050000 lui a1,0x0
120000118: 00bc282d daddu a1,a1,gp
- 12000011c: dca58020 ld a1,-32736\(a1\)
+ 12000011c: dca58060 ld a1,-32672\(a1\)
120000120: 00b1282d daddu a1,a1,s1
120000124: 3c050000 lui a1,0x0
120000128: 00bc282d daddu a1,a1,gp
- 12000012c: dca58020 ld a1,-32736\(a1\)
+ 12000012c: dca58060 ld a1,-32672\(a1\)
120000130: 64a5000c daddiu a1,a1,12
120000134: 00b1282d daddu a1,a1,s1
120000138: 3c050000 lui a1,0x0
12000013c: 00bc282d daddu a1,a1,gp
- 120000140: dca58020 ld a1,-32736\(a1\)
+ 120000140: dca58060 ld a1,-32672\(a1\)
120000144: 3c010001 lui at,0x1
120000148: 3421e240 ori at,at,0xe240
12000014c: 00a1282d daddu a1,a1,at
120000150: 00b1282d daddu a1,a1,s1
120000154: 3c050000 lui a1,0x0
120000158: 00bc282d daddu a1,a1,gp
- 12000015c: dca58020 ld a1,-32736\(a1\)
+ 12000015c: dca58060 ld a1,-32672\(a1\)
120000160: dca50000 ld a1,0\(a1\)
120000164: 3c050000 lui a1,0x0
120000168: 00bc282d daddu a1,a1,gp
- 12000016c: dca58020 ld a1,-32736\(a1\)
+ 12000016c: dca58060 ld a1,-32672\(a1\)
120000170: dca5000c ld a1,12\(a1\)
120000174: 3c050000 lui a1,0x0
120000178: 00bc282d daddu a1,a1,gp
- 12000017c: dca58020 ld a1,-32736\(a1\)
+ 12000017c: dca58060 ld a1,-32672\(a1\)
120000180: 00b1282d daddu a1,a1,s1
120000184: dca50000 ld a1,0\(a1\)
120000188: 3c050000 lui a1,0x0
12000018c: 00bc282d daddu a1,a1,gp
- 120000190: dca58020 ld a1,-32736\(a1\)
+ 120000190: dca58060 ld a1,-32672\(a1\)
120000194: 00b1282d daddu a1,a1,s1
120000198: dca5000c ld a1,12\(a1\)
12000019c: 3c010000 lui at,0x0
1200001a0: 003c082d daddu at,at,gp
- 1200001a4: dc218020 ld at,-32736\(at\)
+ 1200001a4: dc218060 ld at,-32672\(at\)
1200001a8: 0025082d daddu at,at,a1
1200001ac: dc250022 ld a1,34\(at\)
1200001b0: 3c010000 lui at,0x0
1200001b4: 003c082d daddu at,at,gp
- 1200001b8: dc218020 ld at,-32736\(at\)
+ 1200001b8: dc218060 ld at,-32672\(at\)
1200001bc: 0025082d daddu at,at,a1
1200001c0: fc250038 sd a1,56\(at\)
1200001c4: 3c010000 lui at,0x0
1200001c8: 003c082d daddu at,at,gp
- 1200001cc: dc218020 ld at,-32736\(at\)
+ 1200001cc: dc218060 ld at,-32672\(at\)
1200001d0: 88250000 lwl a1,0\(at\)
1200001d4: 98250003 lwr a1,3\(at\)
1200001d8: 3c010000 lui at,0x0
1200001dc: 003c082d daddu at,at,gp
- 1200001e0: dc218020 ld at,-32736\(at\)
+ 1200001e0: dc218060 ld at,-32672\(at\)
1200001e4: 6421000c daddiu at,at,12
1200001e8: 88250000 lwl a1,0\(at\)
1200001ec: 98250003 lwr a1,3\(at\)
1200001f0: 3c010000 lui at,0x0
1200001f4: 003c082d daddu at,at,gp
- 1200001f8: dc218020 ld at,-32736\(at\)
+ 1200001f8: dc218060 ld at,-32672\(at\)
1200001fc: 0031082d daddu at,at,s1
120000200: 88250000 lwl a1,0\(at\)
120000204: 98250003 lwr a1,3\(at\)
120000208: 3c010000 lui at,0x0
12000020c: 003c082d daddu at,at,gp
- 120000210: dc218020 ld at,-32736\(at\)
+ 120000210: dc218060 ld at,-32672\(at\)
120000214: 6421000c daddiu at,at,12
120000218: 0031082d daddu at,at,s1
12000021c: 88250000 lwl a1,0\(at\)
120000220: 98250003 lwr a1,3\(at\)
120000224: 3c010000 lui at,0x0
120000228: 003c082d daddu at,at,gp
- 12000022c: dc218020 ld at,-32736\(at\)
+ 12000022c: dc218060 ld at,-32672\(at\)
120000230: 64210022 daddiu at,at,34
120000234: 0025082d daddu at,at,a1
120000238: 88250000 lwl a1,0\(at\)
12000023c: 98250003 lwr a1,3\(at\)
120000240: 3c010000 lui at,0x0
120000244: 003c082d daddu at,at,gp
- 120000248: dc218020 ld at,-32736\(at\)
+ 120000248: dc218060 ld at,-32672\(at\)
12000024c: 64210038 daddiu at,at,56
120000250: 0025082d daddu at,at,a1
120000254: a8250000 swl a1,0\(at\)
120000258: b8250003 swr a1,3\(at\)
- 12000025c: df858028 ld a1,-32728\(gp\)
+ 12000025c: df858020 ld a1,-32736\(gp\)
120000260: 64a5072c daddiu a1,a1,1836
- 120000264: df858028 ld a1,-32728\(gp\)
+ 120000264: df858020 ld a1,-32736\(gp\)
120000268: 64a50738 daddiu a1,a1,1848
- 12000026c: df858030 ld a1,-32720\(gp\)
+ 12000026c: df858028 ld a1,-32728\(gp\)
120000270: 64a5e96c daddiu a1,a1,-5780
- 120000274: df858028 ld a1,-32728\(gp\)
+ 120000274: df858020 ld a1,-32736\(gp\)
120000278: 64a5072c daddiu a1,a1,1836
12000027c: 00b1282d daddu a1,a1,s1
- 120000280: df858028 ld a1,-32728\(gp\)
+ 120000280: df858020 ld a1,-32736\(gp\)
120000284: 64a50738 daddiu a1,a1,1848
120000288: 00b1282d daddu a1,a1,s1
- 12000028c: df858030 ld a1,-32720\(gp\)
+ 12000028c: df858028 ld a1,-32728\(gp\)
120000290: 64a5e96c daddiu a1,a1,-5780
120000294: 00b1282d daddu a1,a1,s1
- 120000298: df858028 ld a1,-32728\(gp\)
+ 120000298: df858020 ld a1,-32736\(gp\)
12000029c: dca5072c ld a1,1836\(a1\)
- 1200002a0: df858028 ld a1,-32728\(gp\)
+ 1200002a0: df858020 ld a1,-32736\(gp\)
1200002a4: dca50738 ld a1,1848\(a1\)
- 1200002a8: df858028 ld a1,-32728\(gp\)
+ 1200002a8: df858020 ld a1,-32736\(gp\)
1200002ac: 00b1282d daddu a1,a1,s1
1200002b0: dca5072c ld a1,1836\(a1\)
- 1200002b4: df858028 ld a1,-32728\(gp\)
+ 1200002b4: df858020 ld a1,-32736\(gp\)
1200002b8: 00b1282d daddu a1,a1,s1
1200002bc: dca50738 ld a1,1848\(a1\)
- 1200002c0: df818028 ld at,-32728\(gp\)
+ 1200002c0: df818020 ld at,-32736\(gp\)
1200002c4: 0025082d daddu at,at,a1
1200002c8: dc25074e ld a1,1870\(at\)
- 1200002cc: df818028 ld at,-32728\(gp\)
+ 1200002cc: df818020 ld at,-32736\(gp\)
1200002d0: 0025082d daddu at,at,a1
1200002d4: fc250764 sd a1,1892\(at\)
- 1200002d8: df818028 ld at,-32728\(gp\)
+ 1200002d8: df818020 ld at,-32736\(gp\)
1200002dc: 6421072c daddiu at,at,1836
1200002e0: 88250000 lwl a1,0\(at\)
1200002e4: 98250003 lwr a1,3\(at\)
- 1200002e8: df818028 ld at,-32728\(gp\)
+ 1200002e8: df818020 ld at,-32736\(gp\)
1200002ec: 64210738 daddiu at,at,1848
1200002f0: 88250000 lwl a1,0\(at\)
1200002f4: 98250003 lwr a1,3\(at\)
- 1200002f8: df818028 ld at,-32728\(gp\)
+ 1200002f8: df818020 ld at,-32736\(gp\)
1200002fc: 6421072c daddiu at,at,1836
120000300: 0031082d daddu at,at,s1
120000304: 88250000 lwl a1,0\(at\)
120000308: 98250003 lwr a1,3\(at\)
- 12000030c: df818028 ld at,-32728\(gp\)
+ 12000030c: df818020 ld at,-32736\(gp\)
120000310: 64210738 daddiu at,at,1848
120000314: 0031082d daddu at,at,s1
120000318: 88250000 lwl a1,0\(at\)
12000031c: 98250003 lwr a1,3\(at\)
- 120000320: df818028 ld at,-32728\(gp\)
+ 120000320: df818020 ld at,-32736\(gp\)
120000324: 6421074e daddiu at,at,1870
120000328: 0025082d daddu at,at,a1
12000032c: 88250000 lwl a1,0\(at\)
120000330: 98250003 lwr a1,3\(at\)
- 120000334: df818028 ld at,-32728\(gp\)
+ 120000334: df818020 ld at,-32736\(gp\)
120000338: 64210764 daddiu at,at,1892
12000033c: 0025082d daddu at,at,a1
120000340: a8250000 swl a1,0\(at\)
120000344: b8250003 swr a1,3\(at\)
120000348: 3c050000 lui a1,0x0
12000034c: 00bc282d daddu a1,a1,gp
- 120000350: dca58038 ld a1,-32712\(a1\)
- 120000354: df858040 ld a1,-32704\(gp\)
+ 120000350: dca58058 ld a1,-32680\(a1\)
+ 120000354: df858030 ld a1,-32720\(gp\)
120000358: 64a500e0 daddiu a1,a1,224
12000035c: 3c190000 lui t9,0x0
120000360: 033cc82d daddu t9,t9,gp
- 120000364: df398038 ld t9,-32712\(t9\)
- 120000368: df998040 ld t9,-32704\(gp\)
+ 120000364: df398058 ld t9,-32680\(t9\)
+ 120000368: df998030 ld t9,-32720\(gp\)
12000036c: 673900e0 daddiu t9,t9,224
120000370: 3c190000 lui t9,0x0
120000374: 033cc82d daddu t9,t9,gp
- 120000378: df398038 ld t9,-32712\(t9\)
+ 120000378: df398058 ld t9,-32680\(t9\)
12000037c: 0411ff58 bal 1200000e0 <fn>
120000380: 00000000 nop
- 120000384: df998040 ld t9,-32704\(gp\)
+ 120000384: df998030 ld t9,-32720\(gp\)
120000388: 673900e0 daddiu t9,t9,224
12000038c: 0411ff54 bal 1200000e0 <fn>
120000390: 00000000 nop
120000394: 3c050000 lui a1,0x0
120000398: 00bc282d daddu a1,a1,gp
- 12000039c: dca58048 ld a1,-32696\(a1\)
+ 12000039c: dca58050 ld a1,-32688\(a1\)
1200003a0: 3c050000 lui a1,0x0
1200003a4: 00bc282d daddu a1,a1,gp
- 1200003a8: dca58048 ld a1,-32696\(a1\)
+ 1200003a8: dca58050 ld a1,-32688\(a1\)
1200003ac: 64a5000c daddiu a1,a1,12
1200003b0: 3c050000 lui a1,0x0
1200003b4: 00bc282d daddu a1,a1,gp
- 1200003b8: dca58048 ld a1,-32696\(a1\)
+ 1200003b8: dca58050 ld a1,-32688\(a1\)
1200003bc: 3c010001 lui at,0x1
1200003c0: 3421e240 ori at,at,0xe240
1200003c4: 00a1282d daddu a1,a1,at
1200003c8: 3c050000 lui a1,0x0
1200003cc: 00bc282d daddu a1,a1,gp
- 1200003d0: dca58048 ld a1,-32696\(a1\)
+ 1200003d0: dca58050 ld a1,-32688\(a1\)
1200003d4: 00b1282d daddu a1,a1,s1
1200003d8: 3c050000 lui a1,0x0
1200003dc: 00bc282d daddu a1,a1,gp
- 1200003e0: dca58048 ld a1,-32696\(a1\)
+ 1200003e0: dca58050 ld a1,-32688\(a1\)
1200003e4: 64a5000c daddiu a1,a1,12
1200003e8: 00b1282d daddu a1,a1,s1
1200003ec: 3c050000 lui a1,0x0
1200003f0: 00bc282d daddu a1,a1,gp
- 1200003f4: dca58048 ld a1,-32696\(a1\)
+ 1200003f4: dca58050 ld a1,-32688\(a1\)
1200003f8: 3c010001 lui at,0x1
1200003fc: 3421e240 ori at,at,0xe240
120000400: 00a1282d daddu a1,a1,at
120000404: 00b1282d daddu a1,a1,s1
120000408: 3c050000 lui a1,0x0
12000040c: 00bc282d daddu a1,a1,gp
- 120000410: dca58048 ld a1,-32696\(a1\)
+ 120000410: dca58050 ld a1,-32688\(a1\)
120000414: dca50000 ld a1,0\(a1\)
120000418: 3c050000 lui a1,0x0
12000041c: 00bc282d daddu a1,a1,gp
- 120000420: dca58048 ld a1,-32696\(a1\)
+ 120000420: dca58050 ld a1,-32688\(a1\)
120000424: dca5000c ld a1,12\(a1\)
120000428: 3c050000 lui a1,0x0
12000042c: 00bc282d daddu a1,a1,gp
- 120000430: dca58048 ld a1,-32696\(a1\)
+ 120000430: dca58050 ld a1,-32688\(a1\)
120000434: 00b1282d daddu a1,a1,s1
120000438: dca50000 ld a1,0\(a1\)
12000043c: 3c050000 lui a1,0x0
120000440: 00bc282d daddu a1,a1,gp
- 120000444: dca58048 ld a1,-32696\(a1\)
+ 120000444: dca58050 ld a1,-32688\(a1\)
120000448: 00b1282d daddu a1,a1,s1
12000044c: dca5000c ld a1,12\(a1\)
120000450: 3c010000 lui at,0x0
120000454: 003c082d daddu at,at,gp
- 120000458: dc218048 ld at,-32696\(at\)
+ 120000458: dc218050 ld at,-32688\(at\)
12000045c: 0025082d daddu at,at,a1
120000460: dc250022 ld a1,34\(at\)
120000464: 3c010000 lui at,0x0
120000468: 003c082d daddu at,at,gp
- 12000046c: dc218048 ld at,-32696\(at\)
+ 12000046c: dc218050 ld at,-32688\(at\)
120000470: 0025082d daddu at,at,a1
120000474: fc250038 sd a1,56\(at\)
120000478: 3c010000 lui at,0x0
12000047c: 003c082d daddu at,at,gp
- 120000480: dc218048 ld at,-32696\(at\)
+ 120000480: dc218050 ld at,-32688\(at\)
120000484: 88250000 lwl a1,0\(at\)
120000488: 98250003 lwr a1,3\(at\)
12000048c: 3c010000 lui at,0x0
120000490: 003c082d daddu at,at,gp
- 120000494: dc218048 ld at,-32696\(at\)
+ 120000494: dc218050 ld at,-32688\(at\)
120000498: 6421000c daddiu at,at,12
12000049c: 88250000 lwl a1,0\(at\)
1200004a0: 98250003 lwr a1,3\(at\)
1200004a4: 3c010000 lui at,0x0
1200004a8: 003c082d daddu at,at,gp
- 1200004ac: dc218048 ld at,-32696\(at\)
+ 1200004ac: dc218050 ld at,-32688\(at\)
1200004b0: 0031082d daddu at,at,s1
1200004b4: 88250000 lwl a1,0\(at\)
1200004b8: 98250003 lwr a1,3\(at\)
1200004bc: 3c010000 lui at,0x0
1200004c0: 003c082d daddu at,at,gp
- 1200004c4: dc218048 ld at,-32696\(at\)
+ 1200004c4: dc218050 ld at,-32688\(at\)
1200004c8: 6421000c daddiu at,at,12
1200004cc: 0031082d daddu at,at,s1
1200004d0: 88250000 lwl a1,0\(at\)
1200004d4: 98250003 lwr a1,3\(at\)
1200004d8: 3c010000 lui at,0x0
1200004dc: 003c082d daddu at,at,gp
- 1200004e0: dc218048 ld at,-32696\(at\)
+ 1200004e0: dc218050 ld at,-32688\(at\)
1200004e4: 64210022 daddiu at,at,34
1200004e8: 0025082d daddu at,at,a1
1200004ec: 88250000 lwl a1,0\(at\)
1200004f0: 98250003 lwr a1,3\(at\)
1200004f4: 3c010000 lui at,0x0
1200004f8: 003c082d daddu at,at,gp
- 1200004fc: dc218048 ld at,-32696\(at\)
+ 1200004fc: dc218050 ld at,-32688\(at\)
120000500: 64210038 daddiu at,at,56
120000504: 0025082d daddu at,at,a1
120000508: a8250000 swl a1,0\(at\)
12000050c: b8250003 swr a1,3\(at\)
- 120000510: df858028 ld a1,-32728\(gp\)
+ 120000510: df858020 ld a1,-32736\(gp\)
120000514: 64a507a4 daddiu a1,a1,1956
- 120000518: df858028 ld a1,-32728\(gp\)
+ 120000518: df858020 ld a1,-32736\(gp\)
12000051c: 64a507b0 daddiu a1,a1,1968
- 120000520: df858030 ld a1,-32720\(gp\)
+ 120000520: df858028 ld a1,-32728\(gp\)
120000524: 64a5e9e4 daddiu a1,a1,-5660
- 120000528: df858028 ld a1,-32728\(gp\)
+ 120000528: df858020 ld a1,-32736\(gp\)
12000052c: 64a507a4 daddiu a1,a1,1956
120000530: 00b1282d daddu a1,a1,s1
- 120000534: df858028 ld a1,-32728\(gp\)
+ 120000534: df858020 ld a1,-32736\(gp\)
120000538: 64a507b0 daddiu a1,a1,1968
12000053c: 00b1282d daddu a1,a1,s1
- 120000540: df858030 ld a1,-32720\(gp\)
+ 120000540: df858028 ld a1,-32728\(gp\)
120000544: 64a5e9e4 daddiu a1,a1,-5660
120000548: 00b1282d daddu a1,a1,s1
- 12000054c: df858028 ld a1,-32728\(gp\)
+ 12000054c: df858020 ld a1,-32736\(gp\)
120000550: dca507a4 ld a1,1956\(a1\)
- 120000554: df858028 ld a1,-32728\(gp\)
+ 120000554: df858020 ld a1,-32736\(gp\)
120000558: dca507b0 ld a1,1968\(a1\)
- 12000055c: df858028 ld a1,-32728\(gp\)
+ 12000055c: df858020 ld a1,-32736\(gp\)
120000560: 00b1282d daddu a1,a1,s1
120000564: dca507a4 ld a1,1956\(a1\)
- 120000568: df858028 ld a1,-32728\(gp\)
+ 120000568: df858020 ld a1,-32736\(gp\)
12000056c: 00b1282d daddu a1,a1,s1
120000570: dca507b0 ld a1,1968\(a1\)
- 120000574: df818028 ld at,-32728\(gp\)
+ 120000574: df818020 ld at,-32736\(gp\)
120000578: 0025082d daddu at,at,a1
12000057c: dc2507c6 ld a1,1990\(at\)
- 120000580: df818028 ld at,-32728\(gp\)
+ 120000580: df818020 ld at,-32736\(gp\)
120000584: 0025082d daddu at,at,a1
120000588: fc2507dc sd a1,2012\(at\)
- 12000058c: df818028 ld at,-32728\(gp\)
+ 12000058c: df818020 ld at,-32736\(gp\)
120000590: 642107a4 daddiu at,at,1956
120000594: 88250000 lwl a1,0\(at\)
120000598: 98250003 lwr a1,3\(at\)
- 12000059c: df818028 ld at,-32728\(gp\)
+ 12000059c: df818020 ld at,-32736\(gp\)
1200005a0: 642107b0 daddiu at,at,1968
1200005a4: 88250000 lwl a1,0\(at\)
1200005a8: 98250003 lwr a1,3\(at\)
- 1200005ac: df818028 ld at,-32728\(gp\)
+ 1200005ac: df818020 ld at,-32736\(gp\)
1200005b0: 642107a4 daddiu at,at,1956
1200005b4: 0031082d daddu at,at,s1
1200005b8: 88250000 lwl a1,0\(at\)
1200005bc: 98250003 lwr a1,3\(at\)
- 1200005c0: df818028 ld at,-32728\(gp\)
+ 1200005c0: df818020 ld at,-32736\(gp\)
1200005c4: 642107b0 daddiu at,at,1968
1200005c8: 0031082d daddu at,at,s1
1200005cc: 88250000 lwl a1,0\(at\)
1200005d0: 98250003 lwr a1,3\(at\)
- 1200005d4: df818028 ld at,-32728\(gp\)
+ 1200005d4: df818020 ld at,-32736\(gp\)
1200005d8: 642107c6 daddiu at,at,1990
1200005dc: 0025082d daddu at,at,a1
1200005e0: 88250000 lwl a1,0\(at\)
1200005e4: 98250003 lwr a1,3\(at\)
- 1200005e8: df818028 ld at,-32728\(gp\)
+ 1200005e8: df818020 ld at,-32736\(gp\)
1200005ec: 642107dc daddiu at,at,2012
1200005f0: 0025082d daddu at,at,a1
1200005f4: a8250000 swl a1,0\(at\)
1200005f8: b8250003 swr a1,3\(at\)
1200005fc: 3c050000 lui a1,0x0
120000600: 00bc282d daddu a1,a1,gp
- 120000604: dca58050 ld a1,-32688\(a1\)
- 120000608: df858040 ld a1,-32704\(gp\)
+ 120000604: dca58048 ld a1,-32696\(a1\)
+ 120000608: df858030 ld a1,-32720\(gp\)
12000060c: 64a506e0 daddiu a1,a1,1760
120000610: 3c190000 lui t9,0x0
120000614: 033cc82d daddu t9,t9,gp
- 120000618: df398050 ld t9,-32688\(t9\)
- 12000061c: df998040 ld t9,-32704\(gp\)
+ 120000618: df398048 ld t9,-32696\(t9\)
+ 12000061c: df998030 ld t9,-32720\(gp\)
120000620: 673906e0 daddiu t9,t9,1760
120000624: 3c190000 lui t9,0x0
120000628: 033cc82d daddu t9,t9,gp
- 12000062c: df398050 ld t9,-32688\(t9\)
+ 12000062c: df398048 ld t9,-32696\(t9\)
120000630: 0411002b bal 1200006e0 <fn2>
120000634: 00000000 nop
- 120000638: df998040 ld t9,-32704\(gp\)
+ 120000638: df998030 ld t9,-32720\(gp\)
12000063c: 673906e0 daddiu t9,t9,1760
120000640: 04110027 bal 1200006e0 <fn2>
120000644: 00000000 nop
120000648: 3c050000 lui a1,0x0
12000064c: 00bc282d daddu a1,a1,gp
- 120000650: dca58020 ld a1,-32736\(a1\)
+ 120000650: dca58060 ld a1,-32672\(a1\)
120000654: 1000fea2 b 1200000e0 <fn>
120000658: 00000000 nop
12000065c: 3c050000 lui a1,0x0
120000660: 00bc282d daddu a1,a1,gp
- 120000664: dca58048 ld a1,-32696\(a1\)
+ 120000664: dca58050 ld a1,-32688\(a1\)
120000668: dca50000 ld a1,0\(a1\)
12000066c: 1000001c b 1200006e0 <fn2>
120000670: 00000000 nop
- 120000674: df858028 ld a1,-32728\(gp\)
+ 120000674: df858020 ld a1,-32736\(gp\)
120000678: 64a5072c daddiu a1,a1,1836
12000067c: 1000fe98 b 1200000e0 <fn>
120000680: 00000000 nop
- 120000684: df858028 ld a1,-32728\(gp\)
+ 120000684: df858020 ld a1,-32736\(gp\)
120000688: 64a507b0 daddiu a1,a1,1968
12000068c: 10000014 b 1200006e0 <fn2>
120000690: 00000000 nop
- 120000694: df858030 ld a1,-32720\(gp\)
+ 120000694: df858028 ld a1,-32728\(gp\)
120000698: 64a5e96c daddiu a1,a1,-5780
12000069c: 1000fe90 b 1200000e0 <fn>
1200006a0: 00000000 nop
- 1200006a4: df858028 ld a1,-32728\(gp\)
+ 1200006a4: df858020 ld a1,-32736\(gp\)
1200006a8: dca507a4 ld a1,1956\(a1\)
1200006ac: 1000000c b 1200006e0 <fn2>
1200006b0: 00000000 nop
- 1200006b4: df858028 ld a1,-32728\(gp\)
+ 1200006b4: df858020 ld a1,-32736\(gp\)
1200006b8: dca50738 ld a1,1848\(a1\)
1200006bc: 1000fe88 b 1200000e0 <fn>
1200006c0: 00000000 nop
- 1200006c4: df818028 ld at,-32728\(gp\)
+ 1200006c4: df818020 ld at,-32736\(gp\)
1200006c8: 0025082d daddu at,at,a1
1200006cc: dc2507c6 ld a1,1990\(at\)
1200006d0: 10000003 b 1200006e0 <fn2>
@@ -427,18 +427,18 @@ Disassembly of section \.got:
1200107e8: 80000000 .*
1200107ec: 00000000 .*
1200107f0: 00000001 .*
- 1200107f4: 2001072c .*
+ 1200107f4: 20010000 .*
1200107f8: 00000001 .*
- 1200107fc: 20010000 .*
+ 1200107fc: 20030000 .*
120010800: 00000001 .*
- 120010804: 20030000 .*
- 120010808: 00000001 .*
- 12001080c: 200000e0 .*
- 120010810: 00000001 .*
- 120010814: 20000000 .*
+ 120010804: 20000000 .*
+ \.\.\.
120010818: 00000001 .*
- 12001081c: 200107a4 .*
+ 12001081c: 200006e0 .*
120010820: 00000001 .*
- 120010824: 200006e0 .*
- \.\.\.
+ 120010824: 200107a4 .*
+ 120010828: 00000001 .*
+ 12001082c: 200000e0 .*
+ 120010830: 00000001 .*
+ 120010834: 2001072c .*
#pass
diff --git a/ld/testsuite/ld-mips-elf/elf-rel-xgot-n64.d b/ld/testsuite/ld-mips-elf/elf-rel-xgot-n64.d
index 6a9ea40..72ac666 100644
--- a/ld/testsuite/ld-mips-elf/elf-rel-xgot-n64.d
+++ b/ld/testsuite/ld-mips-elf/elf-rel-xgot-n64.d
@@ -19,382 +19,382 @@ Disassembly of section \.text:
0000000010000110 <fn>:
10000110: 3c050000 lui a1,0x0
10000114: 00bc282d daddu a1,a1,gp
- 10000118: dca58020 ld a1,-32736\(a1\)
+ 10000118: dca58060 ld a1,-32672\(a1\)
1000011c: 3c050000 lui a1,0x0
10000120: 00bc282d daddu a1,a1,gp
- 10000124: dca58020 ld a1,-32736\(a1\)
+ 10000124: dca58060 ld a1,-32672\(a1\)
10000128: 64a5000c daddiu a1,a1,12
1000012c: 3c050000 lui a1,0x0
10000130: 00bc282d daddu a1,a1,gp
- 10000134: dca58020 ld a1,-32736\(a1\)
+ 10000134: dca58060 ld a1,-32672\(a1\)
10000138: 3c010001 lui at,0x1
1000013c: 3421e240 ori at,at,0xe240
10000140: 00a1282d daddu a1,a1,at
10000144: 3c050000 lui a1,0x0
10000148: 00bc282d daddu a1,a1,gp
- 1000014c: dca58020 ld a1,-32736\(a1\)
+ 1000014c: dca58060 ld a1,-32672\(a1\)
10000150: 00b1282d daddu a1,a1,s1
10000154: 3c050000 lui a1,0x0
10000158: 00bc282d daddu a1,a1,gp
- 1000015c: dca58020 ld a1,-32736\(a1\)
+ 1000015c: dca58060 ld a1,-32672\(a1\)
10000160: 64a5000c daddiu a1,a1,12
10000164: 00b1282d daddu a1,a1,s1
10000168: 3c050000 lui a1,0x0
1000016c: 00bc282d daddu a1,a1,gp
- 10000170: dca58020 ld a1,-32736\(a1\)
+ 10000170: dca58060 ld a1,-32672\(a1\)
10000174: 3c010001 lui at,0x1
10000178: 3421e240 ori at,at,0xe240
1000017c: 00a1282d daddu a1,a1,at
10000180: 00b1282d daddu a1,a1,s1
10000184: 3c050000 lui a1,0x0
10000188: 00bc282d daddu a1,a1,gp
- 1000018c: dca58020 ld a1,-32736\(a1\)
+ 1000018c: dca58060 ld a1,-32672\(a1\)
10000190: dca50000 ld a1,0\(a1\)
10000194: 3c050000 lui a1,0x0
10000198: 00bc282d daddu a1,a1,gp
- 1000019c: dca58020 ld a1,-32736\(a1\)
+ 1000019c: dca58060 ld a1,-32672\(a1\)
100001a0: dca5000c ld a1,12\(a1\)
100001a4: 3c050000 lui a1,0x0
100001a8: 00bc282d daddu a1,a1,gp
- 100001ac: dca58020 ld a1,-32736\(a1\)
+ 100001ac: dca58060 ld a1,-32672\(a1\)
100001b0: 00b1282d daddu a1,a1,s1
100001b4: dca50000 ld a1,0\(a1\)
100001b8: 3c050000 lui a1,0x0
100001bc: 00bc282d daddu a1,a1,gp
- 100001c0: dca58020 ld a1,-32736\(a1\)
+ 100001c0: dca58060 ld a1,-32672\(a1\)
100001c4: 00b1282d daddu a1,a1,s1
100001c8: dca5000c ld a1,12\(a1\)
100001cc: 3c010000 lui at,0x0
100001d0: 003c082d daddu at,at,gp
- 100001d4: dc218020 ld at,-32736\(at\)
+ 100001d4: dc218060 ld at,-32672\(at\)
100001d8: 0025082d daddu at,at,a1
100001dc: dc250022 ld a1,34\(at\)
100001e0: 3c010000 lui at,0x0
100001e4: 003c082d daddu at,at,gp
- 100001e8: dc218020 ld at,-32736\(at\)
+ 100001e8: dc218060 ld at,-32672\(at\)
100001ec: 0025082d daddu at,at,a1
100001f0: fc250038 sd a1,56\(at\)
100001f4: 3c010000 lui at,0x0
100001f8: 003c082d daddu at,at,gp
- 100001fc: dc218020 ld at,-32736\(at\)
+ 100001fc: dc218060 ld at,-32672\(at\)
10000200: 88250000 lwl a1,0\(at\)
10000204: 98250003 lwr a1,3\(at\)
10000208: 3c010000 lui at,0x0
1000020c: 003c082d daddu at,at,gp
- 10000210: dc218020 ld at,-32736\(at\)
+ 10000210: dc218060 ld at,-32672\(at\)
10000214: 6421000c daddiu at,at,12
10000218: 88250000 lwl a1,0\(at\)
1000021c: 98250003 lwr a1,3\(at\)
10000220: 3c010000 lui at,0x0
10000224: 003c082d daddu at,at,gp
- 10000228: dc218020 ld at,-32736\(at\)
+ 10000228: dc218060 ld at,-32672\(at\)
1000022c: 0031082d daddu at,at,s1
10000230: 88250000 lwl a1,0\(at\)
10000234: 98250003 lwr a1,3\(at\)
10000238: 3c010000 lui at,0x0
1000023c: 003c082d daddu at,at,gp
- 10000240: dc218020 ld at,-32736\(at\)
+ 10000240: dc218060 ld at,-32672\(at\)
10000244: 6421000c daddiu at,at,12
10000248: 0031082d daddu at,at,s1
1000024c: 88250000 lwl a1,0\(at\)
10000250: 98250003 lwr a1,3\(at\)
10000254: 3c010000 lui at,0x0
10000258: 003c082d daddu at,at,gp
- 1000025c: dc218020 ld at,-32736\(at\)
+ 1000025c: dc218060 ld at,-32672\(at\)
10000260: 64210022 daddiu at,at,34
10000264: 0025082d daddu at,at,a1
10000268: 88250000 lwl a1,0\(at\)
1000026c: 98250003 lwr a1,3\(at\)
10000270: 3c010000 lui at,0x0
10000274: 003c082d daddu at,at,gp
- 10000278: dc218020 ld at,-32736\(at\)
+ 10000278: dc218060 ld at,-32672\(at\)
1000027c: 64210038 daddiu at,at,56
10000280: 0025082d daddu at,at,a1
10000284: a8250000 swl a1,0\(at\)
10000288: b8250003 swr a1,3\(at\)
- 1000028c: df858028 ld a1,-32728\(gp\)
+ 1000028c: df858020 ld a1,-32736\(gp\)
10000290: 64a5075c daddiu a1,a1,1884
- 10000294: df858028 ld a1,-32728\(gp\)
+ 10000294: df858020 ld a1,-32736\(gp\)
10000298: 64a50768 daddiu a1,a1,1896
- 1000029c: df858030 ld a1,-32720\(gp\)
+ 1000029c: df858028 ld a1,-32728\(gp\)
100002a0: 64a5e99c daddiu a1,a1,-5732
- 100002a4: df858028 ld a1,-32728\(gp\)
+ 100002a4: df858020 ld a1,-32736\(gp\)
100002a8: 64a5075c daddiu a1,a1,1884
100002ac: 00b1282d daddu a1,a1,s1
- 100002b0: df858028 ld a1,-32728\(gp\)
+ 100002b0: df858020 ld a1,-32736\(gp\)
100002b4: 64a50768 daddiu a1,a1,1896
100002b8: 00b1282d daddu a1,a1,s1
- 100002bc: df858030 ld a1,-32720\(gp\)
+ 100002bc: df858028 ld a1,-32728\(gp\)
100002c0: 64a5e99c daddiu a1,a1,-5732
100002c4: 00b1282d daddu a1,a1,s1
- 100002c8: df858028 ld a1,-32728\(gp\)
+ 100002c8: df858020 ld a1,-32736\(gp\)
100002cc: dca5075c ld a1,1884\(a1\)
- 100002d0: df858028 ld a1,-32728\(gp\)
+ 100002d0: df858020 ld a1,-32736\(gp\)
100002d4: dca50768 ld a1,1896\(a1\)
- 100002d8: df858028 ld a1,-32728\(gp\)
+ 100002d8: df858020 ld a1,-32736\(gp\)
100002dc: 00b1282d daddu a1,a1,s1
100002e0: dca5075c ld a1,1884\(a1\)
- 100002e4: df858028 ld a1,-32728\(gp\)
+ 100002e4: df858020 ld a1,-32736\(gp\)
100002e8: 00b1282d daddu a1,a1,s1
100002ec: dca50768 ld a1,1896\(a1\)
- 100002f0: df818028 ld at,-32728\(gp\)
+ 100002f0: df818020 ld at,-32736\(gp\)
100002f4: 0025082d daddu at,at,a1
100002f8: dc25077e ld a1,1918\(at\)
- 100002fc: df818028 ld at,-32728\(gp\)
+ 100002fc: df818020 ld at,-32736\(gp\)
10000300: 0025082d daddu at,at,a1
10000304: fc250794 sd a1,1940\(at\)
- 10000308: df818028 ld at,-32728\(gp\)
+ 10000308: df818020 ld at,-32736\(gp\)
1000030c: 6421075c daddiu at,at,1884
10000310: 88250000 lwl a1,0\(at\)
10000314: 98250003 lwr a1,3\(at\)
- 10000318: df818028 ld at,-32728\(gp\)
+ 10000318: df818020 ld at,-32736\(gp\)
1000031c: 64210768 daddiu at,at,1896
10000320: 88250000 lwl a1,0\(at\)
10000324: 98250003 lwr a1,3\(at\)
- 10000328: df818028 ld at,-32728\(gp\)
+ 10000328: df818020 ld at,-32736\(gp\)
1000032c: 6421075c daddiu at,at,1884
10000330: 0031082d daddu at,at,s1
10000334: 88250000 lwl a1,0\(at\)
10000338: 98250003 lwr a1,3\(at\)
- 1000033c: df818028 ld at,-32728\(gp\)
+ 1000033c: df818020 ld at,-32736\(gp\)
10000340: 64210768 daddiu at,at,1896
10000344: 0031082d daddu at,at,s1
10000348: 88250000 lwl a1,0\(at\)
1000034c: 98250003 lwr a1,3\(at\)
- 10000350: df818028 ld at,-32728\(gp\)
+ 10000350: df818020 ld at,-32736\(gp\)
10000354: 6421077e daddiu at,at,1918
10000358: 0025082d daddu at,at,a1
1000035c: 88250000 lwl a1,0\(at\)
10000360: 98250003 lwr a1,3\(at\)
- 10000364: df818028 ld at,-32728\(gp\)
+ 10000364: df818020 ld at,-32736\(gp\)
10000368: 64210794 daddiu at,at,1940
1000036c: 0025082d daddu at,at,a1
10000370: a8250000 swl a1,0\(at\)
10000374: b8250003 swr a1,3\(at\)
10000378: 3c050000 lui a1,0x0
1000037c: 00bc282d daddu a1,a1,gp
- 10000380: dca58038 ld a1,-32712\(a1\)
- 10000384: df858040 ld a1,-32704\(gp\)
+ 10000380: dca58058 ld a1,-32680\(a1\)
+ 10000384: df858030 ld a1,-32720\(gp\)
10000388: 64a50110 daddiu a1,a1,272
1000038c: 3c190000 lui t9,0x0
10000390: 033cc82d daddu t9,t9,gp
- 10000394: df398038 ld t9,-32712\(t9\)
- 10000398: df998040 ld t9,-32704\(gp\)
+ 10000394: df398058 ld t9,-32680\(t9\)
+ 10000398: df998030 ld t9,-32720\(gp\)
1000039c: 67390110 daddiu t9,t9,272
100003a0: 3c190000 lui t9,0x0
100003a4: 033cc82d daddu t9,t9,gp
- 100003a8: df398038 ld t9,-32712\(t9\)
+ 100003a8: df398058 ld t9,-32680\(t9\)
100003ac: 0411ff58 bal 10000110 <fn>
100003b0: 00000000 nop
- 100003b4: df998040 ld t9,-32704\(gp\)
+ 100003b4: df998030 ld t9,-32720\(gp\)
100003b8: 67390110 daddiu t9,t9,272
100003bc: 0411ff54 bal 10000110 <fn>
100003c0: 00000000 nop
100003c4: 3c050000 lui a1,0x0
100003c8: 00bc282d daddu a1,a1,gp
- 100003cc: dca58048 ld a1,-32696\(a1\)
+ 100003cc: dca58050 ld a1,-32688\(a1\)
100003d0: 3c050000 lui a1,0x0
100003d4: 00bc282d daddu a1,a1,gp
- 100003d8: dca58048 ld a1,-32696\(a1\)
+ 100003d8: dca58050 ld a1,-32688\(a1\)
100003dc: 64a5000c daddiu a1,a1,12
100003e0: 3c050000 lui a1,0x0
100003e4: 00bc282d daddu a1,a1,gp
- 100003e8: dca58048 ld a1,-32696\(a1\)
+ 100003e8: dca58050 ld a1,-32688\(a1\)
100003ec: 3c010001 lui at,0x1
100003f0: 3421e240 ori at,at,0xe240
100003f4: 00a1282d daddu a1,a1,at
100003f8: 3c050000 lui a1,0x0
100003fc: 00bc282d daddu a1,a1,gp
- 10000400: dca58048 ld a1,-32696\(a1\)
+ 10000400: dca58050 ld a1,-32688\(a1\)
10000404: 00b1282d daddu a1,a1,s1
10000408: 3c050000 lui a1,0x0
1000040c: 00bc282d daddu a1,a1,gp
- 10000410: dca58048 ld a1,-32696\(a1\)
+ 10000410: dca58050 ld a1,-32688\(a1\)
10000414: 64a5000c daddiu a1,a1,12
10000418: 00b1282d daddu a1,a1,s1
1000041c: 3c050000 lui a1,0x0
10000420: 00bc282d daddu a1,a1,gp
- 10000424: dca58048 ld a1,-32696\(a1\)
+ 10000424: dca58050 ld a1,-32688\(a1\)
10000428: 3c010001 lui at,0x1
1000042c: 3421e240 ori at,at,0xe240
10000430: 00a1282d daddu a1,a1,at
10000434: 00b1282d daddu a1,a1,s1
10000438: 3c050000 lui a1,0x0
1000043c: 00bc282d daddu a1,a1,gp
- 10000440: dca58048 ld a1,-32696\(a1\)
+ 10000440: dca58050 ld a1,-32688\(a1\)
10000444: dca50000 ld a1,0\(a1\)
10000448: 3c050000 lui a1,0x0
1000044c: 00bc282d daddu a1,a1,gp
- 10000450: dca58048 ld a1,-32696\(a1\)
+ 10000450: dca58050 ld a1,-32688\(a1\)
10000454: dca5000c ld a1,12\(a1\)
10000458: 3c050000 lui a1,0x0
1000045c: 00bc282d daddu a1,a1,gp
- 10000460: dca58048 ld a1,-32696\(a1\)
+ 10000460: dca58050 ld a1,-32688\(a1\)
10000464: 00b1282d daddu a1,a1,s1
10000468: dca50000 ld a1,0\(a1\)
1000046c: 3c050000 lui a1,0x0
10000470: 00bc282d daddu a1,a1,gp
- 10000474: dca58048 ld a1,-32696\(a1\)
+ 10000474: dca58050 ld a1,-32688\(a1\)
10000478: 00b1282d daddu a1,a1,s1
1000047c: dca5000c ld a1,12\(a1\)
10000480: 3c010000 lui at,0x0
10000484: 003c082d daddu at,at,gp
- 10000488: dc218048 ld at,-32696\(at\)
+ 10000488: dc218050 ld at,-32688\(at\)
1000048c: 0025082d daddu at,at,a1
10000490: dc250022 ld a1,34\(at\)
10000494: 3c010000 lui at,0x0
10000498: 003c082d daddu at,at,gp
- 1000049c: dc218048 ld at,-32696\(at\)
+ 1000049c: dc218050 ld at,-32688\(at\)
100004a0: 0025082d daddu at,at,a1
100004a4: fc250038 sd a1,56\(at\)
100004a8: 3c010000 lui at,0x0
100004ac: 003c082d daddu at,at,gp
- 100004b0: dc218048 ld at,-32696\(at\)
+ 100004b0: dc218050 ld at,-32688\(at\)
100004b4: 88250000 lwl a1,0\(at\)
100004b8: 98250003 lwr a1,3\(at\)
100004bc: 3c010000 lui at,0x0
100004c0: 003c082d daddu at,at,gp
- 100004c4: dc218048 ld at,-32696\(at\)
+ 100004c4: dc218050 ld at,-32688\(at\)
100004c8: 6421000c daddiu at,at,12
100004cc: 88250000 lwl a1,0\(at\)
100004d0: 98250003 lwr a1,3\(at\)
100004d4: 3c010000 lui at,0x0
100004d8: 003c082d daddu at,at,gp
- 100004dc: dc218048 ld at,-32696\(at\)
+ 100004dc: dc218050 ld at,-32688\(at\)
100004e0: 0031082d daddu at,at,s1
100004e4: 88250000 lwl a1,0\(at\)
100004e8: 98250003 lwr a1,3\(at\)
100004ec: 3c010000 lui at,0x0
100004f0: 003c082d daddu at,at,gp
- 100004f4: dc218048 ld at,-32696\(at\)
+ 100004f4: dc218050 ld at,-32688\(at\)
100004f8: 6421000c daddiu at,at,12
100004fc: 0031082d daddu at,at,s1
10000500: 88250000 lwl a1,0\(at\)
10000504: 98250003 lwr a1,3\(at\)
10000508: 3c010000 lui at,0x0
1000050c: 003c082d daddu at,at,gp
- 10000510: dc218048 ld at,-32696\(at\)
+ 10000510: dc218050 ld at,-32688\(at\)
10000514: 64210022 daddiu at,at,34
10000518: 0025082d daddu at,at,a1
1000051c: 88250000 lwl a1,0\(at\)
10000520: 98250003 lwr a1,3\(at\)
10000524: 3c010000 lui at,0x0
10000528: 003c082d daddu at,at,gp
- 1000052c: dc218048 ld at,-32696\(at\)
+ 1000052c: dc218050 ld at,-32688\(at\)
10000530: 64210038 daddiu at,at,56
10000534: 0025082d daddu at,at,a1
10000538: a8250000 swl a1,0\(at\)
1000053c: b8250003 swr a1,3\(at\)
- 10000540: df858028 ld a1,-32728\(gp\)
+ 10000540: df858020 ld a1,-32736\(gp\)
10000544: 64a507d4 daddiu a1,a1,2004
- 10000548: df858028 ld a1,-32728\(gp\)
+ 10000548: df858020 ld a1,-32736\(gp\)
1000054c: 64a507e0 daddiu a1,a1,2016
- 10000550: df858030 ld a1,-32720\(gp\)
+ 10000550: df858028 ld a1,-32728\(gp\)
10000554: 64a5ea14 daddiu a1,a1,-5612
- 10000558: df858028 ld a1,-32728\(gp\)
+ 10000558: df858020 ld a1,-32736\(gp\)
1000055c: 64a507d4 daddiu a1,a1,2004
10000560: 00b1282d daddu a1,a1,s1
- 10000564: df858028 ld a1,-32728\(gp\)
+ 10000564: df858020 ld a1,-32736\(gp\)
10000568: 64a507e0 daddiu a1,a1,2016
1000056c: 00b1282d daddu a1,a1,s1
- 10000570: df858030 ld a1,-32720\(gp\)
+ 10000570: df858028 ld a1,-32728\(gp\)
10000574: 64a5ea14 daddiu a1,a1,-5612
10000578: 00b1282d daddu a1,a1,s1
- 1000057c: df858028 ld a1,-32728\(gp\)
+ 1000057c: df858020 ld a1,-32736\(gp\)
10000580: dca507d4 ld a1,2004\(a1\)
- 10000584: df858028 ld a1,-32728\(gp\)
+ 10000584: df858020 ld a1,-32736\(gp\)
10000588: dca507e0 ld a1,2016\(a1\)
- 1000058c: df858028 ld a1,-32728\(gp\)
+ 1000058c: df858020 ld a1,-32736\(gp\)
10000590: 00b1282d daddu a1,a1,s1
10000594: dca507d4 ld a1,2004\(a1\)
- 10000598: df858028 ld a1,-32728\(gp\)
+ 10000598: df858020 ld a1,-32736\(gp\)
1000059c: 00b1282d daddu a1,a1,s1
100005a0: dca507e0 ld a1,2016\(a1\)
- 100005a4: df818028 ld at,-32728\(gp\)
+ 100005a4: df818020 ld at,-32736\(gp\)
100005a8: 0025082d daddu at,at,a1
100005ac: dc2507f6 ld a1,2038\(at\)
- 100005b0: df818028 ld at,-32728\(gp\)
+ 100005b0: df818020 ld at,-32736\(gp\)
100005b4: 0025082d daddu at,at,a1
100005b8: fc25080c sd a1,2060\(at\)
- 100005bc: df818028 ld at,-32728\(gp\)
+ 100005bc: df818020 ld at,-32736\(gp\)
100005c0: 642107d4 daddiu at,at,2004
100005c4: 88250000 lwl a1,0\(at\)
100005c8: 98250003 lwr a1,3\(at\)
- 100005cc: df818028 ld at,-32728\(gp\)
+ 100005cc: df818020 ld at,-32736\(gp\)
100005d0: 642107e0 daddiu at,at,2016
100005d4: 88250000 lwl a1,0\(at\)
100005d8: 98250003 lwr a1,3\(at\)
- 100005dc: df818028 ld at,-32728\(gp\)
+ 100005dc: df818020 ld at,-32736\(gp\)
100005e0: 642107d4 daddiu at,at,2004
100005e4: 0031082d daddu at,at,s1
100005e8: 88250000 lwl a1,0\(at\)
100005ec: 98250003 lwr a1,3\(at\)
- 100005f0: df818028 ld at,-32728\(gp\)
+ 100005f0: df818020 ld at,-32736\(gp\)
100005f4: 642107e0 daddiu at,at,2016
100005f8: 0031082d daddu at,at,s1
100005fc: 88250000 lwl a1,0\(at\)
10000600: 98250003 lwr a1,3\(at\)
- 10000604: df818028 ld at,-32728\(gp\)
+ 10000604: df818020 ld at,-32736\(gp\)
10000608: 642107f6 daddiu at,at,2038
1000060c: 0025082d daddu at,at,a1
10000610: 88250000 lwl a1,0\(at\)
10000614: 98250003 lwr a1,3\(at\)
- 10000618: df818028 ld at,-32728\(gp\)
+ 10000618: df818020 ld at,-32736\(gp\)
1000061c: 6421080c daddiu at,at,2060
10000620: 0025082d daddu at,at,a1
10000624: a8250000 swl a1,0\(at\)
10000628: b8250003 swr a1,3\(at\)
1000062c: 3c050000 lui a1,0x0
10000630: 00bc282d daddu a1,a1,gp
- 10000634: dca58050 ld a1,-32688\(a1\)
- 10000638: df858040 ld a1,-32704\(gp\)
+ 10000634: dca58048 ld a1,-32696\(a1\)
+ 10000638: df858030 ld a1,-32720\(gp\)
1000063c: 64a50710 daddiu a1,a1,1808
10000640: 3c190000 lui t9,0x0
10000644: 033cc82d daddu t9,t9,gp
- 10000648: df398050 ld t9,-32688\(t9\)
- 1000064c: df998040 ld t9,-32704\(gp\)
+ 10000648: df398048 ld t9,-32696\(t9\)
+ 1000064c: df998030 ld t9,-32720\(gp\)
10000650: 67390710 daddiu t9,t9,1808
10000654: 3c190000 lui t9,0x0
10000658: 033cc82d daddu t9,t9,gp
- 1000065c: df398050 ld t9,-32688\(t9\)
+ 1000065c: df398048 ld t9,-32696\(t9\)
10000660: 0411002b bal 10000710 <fn2>
10000664: 00000000 nop
- 10000668: df998040 ld t9,-32704\(gp\)
+ 10000668: df998030 ld t9,-32720\(gp\)
1000066c: 67390710 daddiu t9,t9,1808
10000670: 04110027 bal 10000710 <fn2>
10000674: 00000000 nop
10000678: 3c050000 lui a1,0x0
1000067c: 00bc282d daddu a1,a1,gp
- 10000680: dca58020 ld a1,-32736\(a1\)
+ 10000680: dca58060 ld a1,-32672\(a1\)
10000684: 1000fea2 b 10000110 <fn>
10000688: 00000000 nop
1000068c: 3c050000 lui a1,0x0
10000690: 00bc282d daddu a1,a1,gp
- 10000694: dca58048 ld a1,-32696\(a1\)
+ 10000694: dca58050 ld a1,-32688\(a1\)
10000698: dca50000 ld a1,0\(a1\)
1000069c: 1000001c b 10000710 <fn2>
100006a0: 00000000 nop
- 100006a4: df858028 ld a1,-32728\(gp\)
+ 100006a4: df858020 ld a1,-32736\(gp\)
100006a8: 64a5075c daddiu a1,a1,1884
100006ac: 1000fe98 b 10000110 <fn>
100006b0: 00000000 nop
- 100006b4: df858028 ld a1,-32728\(gp\)
+ 100006b4: df858020 ld a1,-32736\(gp\)
100006b8: 64a507e0 daddiu a1,a1,2016
100006bc: 10000014 b 10000710 <fn2>
100006c0: 00000000 nop
- 100006c4: df858030 ld a1,-32720\(gp\)
+ 100006c4: df858028 ld a1,-32728\(gp\)
100006c8: 64a5e99c daddiu a1,a1,-5732
100006cc: 1000fe90 b 10000110 <fn>
100006d0: 00000000 nop
- 100006d4: df858028 ld a1,-32728\(gp\)
+ 100006d4: df858020 ld a1,-32736\(gp\)
100006d8: dca507d4 ld a1,2004\(a1\)
100006dc: 1000000c b 10000710 <fn2>
100006e0: 00000000 nop
- 100006e4: df858028 ld a1,-32728\(gp\)
+ 100006e4: df858020 ld a1,-32736\(gp\)
100006e8: dca50768 ld a1,1896\(a1\)
100006ec: 1000fe88 b 10000110 <fn>
100006f0: 00000000 nop
- 100006f4: df818028 ld at,-32728\(gp\)
+ 100006f4: df818020 ld at,-32736\(gp\)
100006f8: 0025082d daddu at,at,a1
100006fc: dc2507f6 ld a1,2038\(at\)
10000700: 10000003 b 10000710 <fn2>
@@ -422,18 +422,17 @@ Disassembly of section \.got:
\.\.\.
10010818: 80000000 .*
\.\.\.
- 10010824: 1001075c .*
+ 10010824: 10010000 .*
10010828: 00000000 .*
- 1001082c: 10010000 .*
+ 1001082c: 10030000 .*
10010830: 00000000 .*
- 10010834: 10030000 .*
+ 10010834: 10000000 .*
10010838: 00000000 .*
- 1001083c: 10000110 .*
- 10010840: 00000000 .*
- 10010844: 10000000 .*
- 10010848: 00000000 .*
- 1001084c: 100107d4 .*
+ \.\.\.
+ 1001084c: 10000710 .*
10010850: 00000000 .*
- 10010854: 10000710 .*
+ 10010854: 100107d4 .*
10010858: 00000000 .*
- \.\.\.
+ 1001085c: 10000110 .*
+ 10010860: 00000000 .*
+ 10010864: 1001075c .*
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] [MIPS] Ensure that local GOT entries accessed via a 16-bit index come first
2014-04-16 13:25 [PATCH] [MIPS] Ensure that local GOT entries accessed via a 16-bit index come first Kwok Cheung Yeung
@ 2014-04-16 19:29 ` Richard Sandiford
2014-04-16 21:43 ` Maciej W. Rozycki
0 siblings, 1 reply; 5+ messages in thread
From: Richard Sandiford @ 2014-04-16 19:29 UTC (permalink / raw)
To: Kwok Cheung Yeung; +Cc: binutils, jack.carter, hjl.tools, Maciej W. Rozycki
Kwok Cheung Yeung <kcy@codesourcery.com> writes:
>> We have a "canadian_cross" build of LLVM and have been getting off and
>> on link time errors from one of the input object files
>> RecursiveASTVisitorTest.o. :
>>
>> (.text._ZN4llvm25SmallVectorTemplateCommonIN5clang19RecursiveASTVisitorINS1_11AttrVisitorEE10EnqueueJobEvE4backEv[_ZN4llvm25SmallVectorTemplateCommonIN5clang19RecursiveASTVisitorINS1_11AttrVisitorEE10EnqueueJobEvE4backEv]+0x64):
>> relocation truncated to fit: R_MIPS_GOT16 against `no symbol'
>>
>> Basically building LLVM with a MIPS GCC. I noticed that the section
>> count was way above 16 bits and seized on that as being the culprit.
>>
> From the information you and H.J. have pointed me to, I need to dig
>> further. Why I never knew about this trap door for section overflow is
>> beyond me :-| Probably since I never hit the limit myself.
>
> I have been investigating this issue with the LLVM Canadian Cross build
> on MIPS. The problem arises mainly because of the way GCC constructs
> calls to member functions of C++ classes in PIC code - each member
> function of each class is placed in a different section (which, coupled
> with the use of class templates, explains the huge number of sections in
> the problematic object file). A call to a member function generates this
> type of code (with -mxgot):
>
> 2c: 3c020000 lui v0,0x0
> 2c: R_MIPS_GOT_HI16
> _ZN5clang33ParmVarDeclVisitorForImplicitCodeC1Ev
> 30: 005c1021 addu v0,v0,gp
> 34: 8c420000 lw v0,0(v0)
> 34: R_MIPS_GOT_LO16
> _ZN5clang33ParmVarDeclVisitorForImplicitCodeC1Ev
> 38: 0040c821 move t9,v0
> 3c: 0320f809 jalr t9
> 3c: R_MIPS_JALR
> _ZN5clang33ParmVarDeclVisitorForImplicitCodeC1Ev
> 40: 00000000 nop
>
> meaning that each call to a member function may result in a new entry
> being placed in the local section of the GOT (if the symbol is local or
> mips_use_local_got_p() evaluates to true).
>
> The other main type of local GOT entry is created by page+offset
> references - e.g.:
>
> 50: 8f820000 lw v0,0(gp)
> 50: R_MIPS_GOT16 .rodata
> 54: 24450488 addiu a1,v0,1160
> 54: R_MIPS_LO16 .rodata
> 58: 3c020000 lui v0,0x0
>
> The GOT entry for the page is always accessed using a 16-bit lookup even
> with -mxgot - I believe the reasoning for this was because with each
> page covering 64KB, the addressable 16K GOT page entries would be enough
> to cover ~1GB of address space?
Yeah, I believe so.
> Unfortunately, since local GOT entries are allocated on-the-fly as they
> are encountered in the code, this means that the initial 16K entries are
> filled with a mixture of entries for member functions and pages (in this
> case, mainly the former). This means that there is the possibility that
> a page entry will be allocated outside of the addressable first 16K
> entries, resulting in a reloc overflow. However, with -mxgot, there is
> no problem calling member functions with entries after the first 16K
> entries (without -mxgot, these would also eventually result in overflows).
>
> I have created this patch to ensure that GOT page entries come before
> the member function entries. The idea is to fill the local GOT space
> from both ends at once, with entries accessed via 16-bit indexing being
> added on the lower end, and those with 32-bit indexing on the upper end.
> If the size of the local GOT is overestimated, this results in a gap in
> the middle of the local GOT area that must be accounted for when
> iterating over the local part of the GOT.
>
> This patch has only been lightly tested. I can confirm that the reloc
> overflow on building LLVM/Clang no longer occurs, and have tried running
> some of the generated LLVM and Clang binaries on QEMU and a real MIPS
> board. The ld testsuite has a couple of new failures due to the change
> in the GOT layout, so the expected outputs need to be updated (included
> in the patch).
This looks really good, thanks. Just for the record, in case anyone else
was thinking the same thing: I was a bit worried at first about using
unsigned int for assigned_high_gotno, since it's an "end - 1" value.
But of course it can never be negative because we always have at least
one reserved entry before the local area.
Please go ahead and install. If you don't have access yet, please
follow the instructions here:
https://sourceware.org/cgi-bin/pdw/ps_form.cgi
listing me as sponsor.
Thanks,
Richard
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] [MIPS] Ensure that local GOT entries accessed via a 16-bit index come first
2014-04-16 19:29 ` Richard Sandiford
@ 2014-04-16 21:43 ` Maciej W. Rozycki
2014-04-17 6:19 ` Richard Sandiford
0 siblings, 1 reply; 5+ messages in thread
From: Maciej W. Rozycki @ 2014-04-16 21:43 UTC (permalink / raw)
To: Richard Sandiford; +Cc: Kwok Cheung Yeung, binutils, jack.carter, hjl.tools
On Wed, 16 Apr 2014, Richard Sandiford wrote:
> This looks really good, thanks. Just for the record, in case anyone else
> was thinking the same thing: I was a bit worried at first about using
> unsigned int for assigned_high_gotno, since it's an "end - 1" value.
> But of course it can never be negative because we always have at least
> one reserved entry before the local area.
I've been wondering if we need to do anything special about compound
relocs, e.g. GOT_PAGE/HI16, GOT_PAGE/LO16, etc. (aka %hi(%got_page(foo)),
etc.) in the new ABIs, that obviously can go towards the end of the local
GOT area. I don't know offhand if GCC produces them for e.g. `-mabi=64
-xgot', especially perhaps GOT_DISP/HI16 and GOT_DISP/LO16 as we shouldn't
normally exhaust the 16-bit space for GOT_PAGE, but the ABI supports them
in principle.
Maciej
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] [MIPS] Ensure that local GOT entries accessed via a 16-bit index come first
2014-04-16 21:43 ` Maciej W. Rozycki
@ 2014-04-17 6:19 ` Richard Sandiford
2014-04-17 12:01 ` Maciej W. Rozycki
0 siblings, 1 reply; 5+ messages in thread
From: Richard Sandiford @ 2014-04-17 6:19 UTC (permalink / raw)
To: Maciej W. Rozycki; +Cc: Kwok Cheung Yeung, binutils, jack.carter, hjl.tools
"Maciej W. Rozycki" <macro@codesourcery.com> writes:
> On Wed, 16 Apr 2014, Richard Sandiford wrote:
>> This looks really good, thanks. Just for the record, in case anyone else
>> was thinking the same thing: I was a bit worried at first about using
>> unsigned int for assigned_high_gotno, since it's an "end - 1" value.
>> But of course it can never be negative because we always have at least
>> one reserved entry before the local area.
>
> I've been wondering if we need to do anything special about compound
> relocs, e.g. GOT_PAGE/HI16, GOT_PAGE/LO16, etc. (aka %hi(%got_page(foo)),
> etc.) in the new ABIs, that obviously can go towards the end of the local
> GOT area. I don't know offhand if GCC produces them for e.g. `-mabi=64
> -xgot', especially perhaps GOT_DISP/HI16 and GOT_DISP/LO16 as we shouldn't
> normally exhaust the 16-bit space for GOT_PAGE, but the ABI supports them
> in principle.
GCC doesn't produce them. I agree using GOT_PAGE/HI16 seems unlikely,
especially since the sequence to load an address would then require 3
instructions. I imagine in practice everyone just uses GOT_{HI,LO}16
for all ABIs.
I don't think this was your point, but just in case: even if something
did use those in future, the patch is still a strict improvement over
the current situation, in that it handles {GOT,CALL}_{HI,LO}16 better
without changing the allocation scheme for the others. I don't think
we should add extra code for compound GOT relocs without a patch to make
GCC use them (which I'm not convinced is a good idea).
Thanks,
Richard
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] [MIPS] Ensure that local GOT entries accessed via a 16-bit index come first
2014-04-17 6:19 ` Richard Sandiford
@ 2014-04-17 12:01 ` Maciej W. Rozycki
0 siblings, 0 replies; 5+ messages in thread
From: Maciej W. Rozycki @ 2014-04-17 12:01 UTC (permalink / raw)
To: Richard Sandiford; +Cc: Kwok Cheung Yeung, binutils, jack.carter, hjl.tools
On Thu, 17 Apr 2014, Richard Sandiford wrote:
> GCC doesn't produce them. I agree using GOT_PAGE/HI16 seems unlikely,
> especially since the sequence to load an address would then require 3
> instructions. I imagine in practice everyone just uses GOT_{HI,LO}16
> for all ABIs.
Yeah, as observed here and the cause of the issue we support
GOT_HI16/GOT_LO16 pairs (and also actually GOT16 with no LO16 counterpart)
for local symbols as well, making GOT_DISP redundant. And for GOT_PAGE we
have almost 16k pages worth 1GB of program space available before
GOT_PAGE/HI16 would load non-zero.
> I don't think this was your point, but just in case: even if something
> did use those in future, the patch is still a strict improvement over
> the current situation, in that it handles {GOT,CALL}_{HI,LO}16 better
> without changing the allocation scheme for the others. I don't think
> we should add extra code for compound GOT relocs without a patch to make
> GCC use them (which I'm not convinced is a good idea).
Of course it was not, the change is excellent work -- thanks, Kwok.
Maciej
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2014-04-17 12:01 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-04-16 13:25 [PATCH] [MIPS] Ensure that local GOT entries accessed via a 16-bit index come first Kwok Cheung Yeung
2014-04-16 19:29 ` Richard Sandiford
2014-04-16 21:43 ` Maciej W. Rozycki
2014-04-17 6:19 ` Richard Sandiford
2014-04-17 12:01 ` Maciej W. Rozycki
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).