From 98c904a8640de8891570902ac9d1ef6153092a18 Mon Sep 17 00:00:00 2001 From: Richard Sandiford Date: Fri, 20 Oct 2006 07:57:03 +0000 Subject: [PATCH] bfd/ * elfxx-mips.c (_bfd_mips_elf_additional_program_headers): Allocate a PT_NULL header for dynamic objects. (_bfd_mips_elf_modify_segment_map): Add it. ld/testsuite/ * ld-mips-elf/multi-got-1.d: Do not expect a particular address for DT_HASH. * ld-mips-elf/rel32-o32.d: Bump addresses by 0x20 to account for the extra program header. * ld-mips-elf/rel32-n32.d: Likewise. * ld-mips-elf/tlslib-o32.got: Likewise. * ld-mips-elf/tlslib-o32-hidden.got: Likewise. * ld-mips-elf/tlslib-o32-ver.got: Likewise. * ld-mips-elf/tls-multi-got-1.got: Likewise. * ld-mips-elf/tls-multi-got-1.r: Likewise. * ld-mips-elf/rel64.d: Bump addresses by 0x30 to account for the extra program header. * ld-mips-elf/tlsdyn-o32.d: Reduce the GOT offset by 32 to account for the extra program header, and thus the shorter gap between the text and data segments. * ld-mips-elf/tlsdyn-o32-1.d: Likewise. * ld-mips-elf/tlsdyn-o32-2.d: Likewise. * ld-mips-elf/tlsdyn-o32-3.d: Likewise. * ld-mips-elf/tlsdyn-o32.got: Bump GOT text addresses by 0x20 to account for the extra program header. * ld-mips-elf/tlsdyn-o32-1.got: Likewise. * ld-mips-elf/tlsdyn-o32-2.got: Likewise. * ld-mips-elf/tlsdyn-o32-3.got: Likewise. --- bfd/ChangeLog | 6 +++ bfd/elfxx-mips.c | 38 ++++++++++++++++++ ld/testsuite/ChangeLog | 26 ++++++++++++ ld/testsuite/ld-mips-elf/multi-got-1.d | 2 +- ld/testsuite/ld-mips-elf/rel32-n32.d | 4 +- ld/testsuite/ld-mips-elf/rel32-o32.d | 4 +- ld/testsuite/ld-mips-elf/rel64.d | 6 +-- ld/testsuite/ld-mips-elf/tls-multi-got-1.got | 40 +++++++++---------- ld/testsuite/ld-mips-elf/tls-multi-got-1.r | 14 +++---- ld/testsuite/ld-mips-elf/tlsdyn-o32-1.d | 4 +- ld/testsuite/ld-mips-elf/tlsdyn-o32-1.got | 2 +- ld/testsuite/ld-mips-elf/tlsdyn-o32-2.d | 4 +- ld/testsuite/ld-mips-elf/tlsdyn-o32-2.got | 2 +- ld/testsuite/ld-mips-elf/tlsdyn-o32-3.d | 4 +- ld/testsuite/ld-mips-elf/tlsdyn-o32-3.got | 2 +- ld/testsuite/ld-mips-elf/tlsdyn-o32.d | 2 +- ld/testsuite/ld-mips-elf/tlsdyn-o32.got | 2 +- .../ld-mips-elf/tlslib-o32-hidden.got | 14 +++---- ld/testsuite/ld-mips-elf/tlslib-o32-ver.got | 16 ++++---- ld/testsuite/ld-mips-elf/tlslib-o32.got | 16 ++++---- 20 files changed, 139 insertions(+), 69 deletions(-) diff --git a/bfd/ChangeLog b/bfd/ChangeLog index b8eced61acd..5a1cbd34543 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,9 @@ +2006-10-20 Richard Sandiford + + * elfxx-mips.c (_bfd_mips_elf_additional_program_headers): Allocate + a PT_NULL header for dynamic objects. + (_bfd_mips_elf_modify_segment_map): Add it. + 2006-10-19 Mei Ligang * elf32-score.c (score_elf_rel_dyn_section): Replace diff --git a/bfd/elfxx-mips.c b/bfd/elfxx-mips.c index 33b0e431a15..639a0658033 100644 --- a/bfd/elfxx-mips.c +++ b/bfd/elfxx-mips.c @@ -9169,6 +9169,12 @@ _bfd_mips_elf_additional_program_headers (bfd *abfd, && bfd_get_section_by_name (abfd, ".mdebug")) ++ret; + /* Allocate a PT_NULL header in dynamic objects. See + _bfd_mips_elf_modify_segment_map for details. */ + if (!SGI_COMPAT (abfd) + && bfd_get_section_by_name (abfd, ".dynamic")) + ++ret; + return ret; } @@ -9377,6 +9383,38 @@ _bfd_mips_elf_modify_segment_map (bfd *abfd, } } + /* Allocate a spare program header in dynamic objects so that tools + like the prelinker can add an extra PT_LOAD entry. + + If the prelinker needs to make room for a new PT_LOAD entry, its + standard procedure is to move the first (read-only) sections into + the new (writable) segment. However, the MIPS ABI requires + .dynamic to be in a read-only segment, and the section will often + start within sizeof (ElfNN_Phdr) bytes of the last program header. + + Although the prelinker could in principle move .dynamic to a + writable segment, it seems better to allocate a spare program + header instead, and avoid the need to move any sections. + There is a long tradition of allocating spare dynamic tags, + so allocating a spare program header seems like a natural + extension. */ + if (!SGI_COMPAT (abfd) + && bfd_get_section_by_name (abfd, ".dynamic")) + { + for (pm = &elf_tdata (abfd)->segment_map; *pm != NULL; pm = &(*pm)->next) + if ((*pm)->p_type == PT_NULL) + break; + if (*pm == NULL) + { + m = bfd_zalloc (abfd, sizeof (*m)); + if (m == NULL) + return FALSE; + + m->p_type = PT_NULL; + *pm = m; + } + } + return TRUE; } diff --git a/ld/testsuite/ChangeLog b/ld/testsuite/ChangeLog index 9584b47167d..22cdf09c714 100644 --- a/ld/testsuite/ChangeLog +++ b/ld/testsuite/ChangeLog @@ -1,3 +1,29 @@ +2006-10-20 Richard Sandiford + + * ld-mips-elf/multi-got-1.d: Do not expect a particular address + for DT_HASH. + * ld-mips-elf/rel32-o32.d: Bump addresses by 0x20 to account for + the extra program header. + * ld-mips-elf/rel32-n32.d: Likewise. + * ld-mips-elf/tlslib-o32.got: Likewise. + * ld-mips-elf/tlslib-o32-hidden.got: Likewise. + * ld-mips-elf/tlslib-o32-ver.got: Likewise. + * ld-mips-elf/tls-multi-got-1.got: Likewise. + * ld-mips-elf/tls-multi-got-1.r: Likewise. + * ld-mips-elf/rel64.d: Bump addresses by 0x30 to account for the + extra program header. + * ld-mips-elf/tlsdyn-o32.d: Reduce the GOT offset by 32 to account + for the extra program header, and thus the shorter gap between the + text and data segments. + * ld-mips-elf/tlsdyn-o32-1.d: Likewise. + * ld-mips-elf/tlsdyn-o32-2.d: Likewise. + * ld-mips-elf/tlsdyn-o32-3.d: Likewise. + * ld-mips-elf/tlsdyn-o32.got: Bump GOT text addresses by 0x20 + to account for the extra program header. + * ld-mips-elf/tlsdyn-o32-1.got: Likewise. + * ld-mips-elf/tlsdyn-o32-2.got: Likewise. + * ld-mips-elf/tlsdyn-o32-3.got: Likewise. + 2006-10-20 Richard Sandiford * ld-mips-elf/rel32-o32.d: Bump the section number of .text by 1 diff --git a/ld/testsuite/ld-mips-elf/multi-got-1.d b/ld/testsuite/ld-mips-elf/multi-got-1.d index 610cfad85e5..3912439d483 100644 --- a/ld/testsuite/ld-mips-elf/multi-got-1.d +++ b/ld/testsuite/ld-mips-elf/multi-got-1.d @@ -7,7 +7,7 @@ Dynamic section at offset .* contains 17 entries: Tag Type Name/Value - 0x00000004 \(HASH\) 0x17c + 0x00000004 \(HASH\) 0x[0-9a-f]+ 0x00000005 \(STRTAB\) 0x[0-9a-f]+ 0x00000006 \(SYMTAB\) 0x[0-9a-f]+ 0x0000000a \(STRSZ\) [0-9]+ \(bytes\) diff --git a/ld/testsuite/ld-mips-elf/rel32-n32.d b/ld/testsuite/ld-mips-elf/rel32-n32.d index 7adf822e4d7..aae33b3575e 100644 --- a/ld/testsuite/ld-mips-elf/rel32-n32.d +++ b/ld/testsuite/ld-mips-elf/rel32-n32.d @@ -10,6 +10,6 @@ Relocation section '.rel.dyn' at offset .* contains 2 entries: [0-9a-f ]+R_MIPS_REL32 Hex dump of section '.text': - 0x000002c0 00000000 00000000 00000000 00000000 ................ - 0x000002d0 000002d0 00000000 00000000 00000000 ................ 0x000002e0 00000000 00000000 00000000 00000000 ................ + 0x000002f0 000002f0 00000000 00000000 00000000 ................ + 0x00000300 00000000 00000000 00000000 00000000 ................ diff --git a/ld/testsuite/ld-mips-elf/rel32-o32.d b/ld/testsuite/ld-mips-elf/rel32-o32.d index ac82459519a..742cdaadb4e 100644 --- a/ld/testsuite/ld-mips-elf/rel32-o32.d +++ b/ld/testsuite/ld-mips-elf/rel32-o32.d @@ -10,6 +10,6 @@ Relocation section '.rel.dyn' at offset .* contains 2 entries: [0-9a-f ]+R_MIPS_REL32 Hex dump of section '.text': - 0x000002c0 00000000 00000000 00000000 00000000 ................ - 0x000002d0 000002d0 00000000 00000000 00000000 ................ 0x000002e0 00000000 00000000 00000000 00000000 ................ + 0x000002f0 000002f0 00000000 00000000 00000000 ................ + 0x00000300 00000000 00000000 00000000 00000000 ................ diff --git a/ld/testsuite/ld-mips-elf/rel64.d b/ld/testsuite/ld-mips-elf/rel64.d index 37f95ae54f7..4279e282044 100644 --- a/ld/testsuite/ld-mips-elf/rel64.d +++ b/ld/testsuite/ld-mips-elf/rel64.d @@ -14,6 +14,6 @@ Relocation section '.rel.dyn' at offset .* contains 2 entries: +Type3: R_MIPS_NONE Hex dump of section '.text': - 0x00000420 00000000 00000000 00000000 00000000 ................ - 0x00000430 00000000 00000430 00000000 00000000 ................ - 0x00000440 00000000 00000000 00000000 00000000 ................ + 0x00000450 00000000 00000000 00000000 00000000 ................ + 0x00000460 00000000 00000460 00000000 00000000 ................ + 0x00000470 00000000 00000000 00000000 00000000 ................ diff --git a/ld/testsuite/ld-mips-elf/tls-multi-got-1.got b/ld/testsuite/ld-mips-elf/tls-multi-got-1.got index de7b43087bc..4ee502f70f3 100644 --- a/ld/testsuite/ld-mips-elf/tls-multi-got-1.got +++ b/ld/testsuite/ld-mips-elf/tls-multi-got-1.got @@ -4,17 +4,17 @@ DYNAMIC RELOCATION RECORDS OFFSET TYPE VALUE 00000000 R_MIPS_NONE \*ABS\* -0013f928 R_MIPS_TLS_DTPMOD32 \*ABS\* -001495b0 R_MIPS_TLS_DTPMOD32 \*ABS\* -0013f934 R_MIPS_TLS_DTPMOD32 tlsvar_gd -0013f938 R_MIPS_TLS_DTPREL32 tlsvar_gd -001495bc R_MIPS_TLS_DTPMOD32 tlsvar_gd -001495c0 R_MIPS_TLS_DTPREL32 tlsvar_gd -0013f930 R_MIPS_TLS_TPREL32 tlsvar_ie -001495b8 R_MIPS_TLS_TPREL32 tlsvar_ie -00143f5c R_MIPS_REL32 sym_1_9526 +0013f948 R_MIPS_TLS_DTPMOD32 \*ABS\* +001495d0 R_MIPS_TLS_DTPMOD32 \*ABS\* +0013f954 R_MIPS_TLS_DTPMOD32 tlsvar_gd +0013f958 R_MIPS_TLS_DTPREL32 tlsvar_gd +001495dc R_MIPS_TLS_DTPMOD32 tlsvar_gd +001495e0 R_MIPS_TLS_DTPREL32 tlsvar_gd +0013f950 R_MIPS_TLS_TPREL32 tlsvar_ie +001495d8 R_MIPS_TLS_TPREL32 tlsvar_ie +00143f7c R_MIPS_REL32 sym_1_9526 #... -00139bb0 R_MIPS_REL32 sym_2_8654 +00139bd0 R_MIPS_REL32 sym_2_8654 00000000 R_MIPS_NONE \*ABS\* 00000000 R_MIPS_NONE \*ABS\* 00000000 R_MIPS_NONE \*ABS\* @@ -40,19 +40,19 @@ OFFSET TYPE VALUE Contents of section .got: - 122400 00000000 80000000 00000000 00000000 .* - 122410 00000000 00000000 00000000 00000000 .* - 122420 00000000 00000000 00000000 00000000 .* - 122430 00000000 000d8028 000d6684 000d2034 .* + 122420 00000000 80000000 00000000 00000000 .* + 122430 00000000 00000000 00000000 00000000 .* + 122440 00000000 00000000 00000000 00000000 .* + 122450 00000000 000d8048 000d66a4 000d2054 .* #... - 13f910 00000000 00000000 00000000 00000000 .* - 13f920 00000000 00000000 00000000 00000000 .* 13f930 00000000 00000000 00000000 00000000 .* - 13f940 80000000 00000000 00000000 00000000 .* + 13f940 00000000 00000000 00000000 00000000 .* + 13f950 00000000 00000000 00000000 00000000 .* + 13f960 80000000 00000000 00000000 00000000 .* #... - 149580 00000000 00000000 00000000 00000000 .* - 149590 00000000 00000000 00000000 00000000 .* 1495a0 00000000 00000000 00000000 00000000 .* 1495b0 00000000 00000000 00000000 00000000 .* - 1495c0 00000000 .* + 1495c0 00000000 00000000 00000000 00000000 .* + 1495d0 00000000 00000000 00000000 00000000 .* + 1495e0 00000000 .* #pass diff --git a/ld/testsuite/ld-mips-elf/tls-multi-got-1.r b/ld/testsuite/ld-mips-elf/tls-multi-got-1.r index 3befcd7ea95..c63d230ac23 100644 --- a/ld/testsuite/ld-mips-elf/tls-multi-got-1.r +++ b/ld/testsuite/ld-mips-elf/tls-multi-got-1.r @@ -1,13 +1,13 @@ Dynamic section at offset .* contains 18 entries: Tag Type Name/Value - 0x00000004 \(HASH\) 0x1a4 + 0x00000004 \(HASH\) 0x1c4 0x00000005 \(STRTAB\).* 0x00000006 \(SYMTAB\).* 0x0000000a \(STRSZ\) 220091 \(bytes\) 0x0000000b \(SYMENT\) 16 \(bytes\) - 0x00000003 \(PLTGOT\) 0x122400 - 0x00000011 \(REL\) 0xa7958 + 0x00000003 \(PLTGOT\) 0x122420 + 0x00000011 \(REL\) 0xa7978 0x00000012 \(RELSZ\) 160072 \(bytes\) 0x00000013 \(RELENT\) 8 \(bytes\) 0x70000001 \(MIPS_RLD_VERSION\) 1 @@ -31,9 +31,9 @@ Relocation section '\.rel\.dyn' at offset 0x[0-9a-f]+ contains 20031 entries: [0-9a-f ]+R_MIPS_TLS_DTPREL 00000000 tlsvar_gd [0-9a-f ]+R_MIPS_TLS_TPREL3 00000004 tlsvar_ie [0-9a-f ]+R_MIPS_TLS_TPREL3 00000004 tlsvar_ie -[0-9a-f ]+R_MIPS_REL32 000d8028 sym_1_9526 -[0-9a-f ]+R_MIPS_REL32 000d6684 sym_1_7885 +[0-9a-f ]+R_MIPS_REL32 000d8048 sym_1_9526 +[0-9a-f ]+R_MIPS_REL32 000d66a4 sym_1_7885 #... -[0-9a-f ]+R_MIPS_REL32 000cf294 sym_1_0465 -[0-9a-f ]+R_MIPS_REL32 000e0ed8 sym_2_8654 +[0-9a-f ]+R_MIPS_REL32 000cf2b4 sym_1_0465 +[0-9a-f ]+R_MIPS_REL32 000e0ef8 sym_2_8654 #... diff --git a/ld/testsuite/ld-mips-elf/tlsdyn-o32-1.d b/ld/testsuite/ld-mips-elf/tlsdyn-o32-1.d index d416a872cb2..3637049c5e3 100644 --- a/ld/testsuite/ld-mips-elf/tlsdyn-o32-1.d +++ b/ld/testsuite/ld-mips-elf/tlsdyn-o32-1.d @@ -5,7 +5,7 @@ Disassembly of section .text: .* <__start>: .*: 3c1c0fc0 lui gp,0xfc0 - .*: 279c7ba0 addiu gp,gp,31648 + .*: 279c7b80 addiu gp,gp,31616 .*: 0399e021 addu gp,gp,t9 .*: 27bdfff0 addiu sp,sp,-16 .*: afbe0008 sw s8,8\(sp\) @@ -55,7 +55,7 @@ Disassembly of section .text: .* : .*: 3c1c0fc0 lui gp,0xfc0 - .*: 279c7ae0 addiu gp,gp,31456 + .*: 279c7ac0 addiu gp,gp,31424 .*: 0399e021 addu gp,gp,t9 .*: 27bdfff0 addiu sp,sp,-16 .*: afbe0008 sw s8,8\(sp\) diff --git a/ld/testsuite/ld-mips-elf/tlsdyn-o32-1.got b/ld/testsuite/ld-mips-elf/tlsdyn-o32-1.got index f19d77343ac..9b2e722a4d7 100644 --- a/ld/testsuite/ld-mips-elf/tlsdyn-o32-1.got +++ b/ld/testsuite/ld-mips-elf/tlsdyn-o32-1.got @@ -14,6 +14,6 @@ OFFSET TYPE VALUE Contents of section .got: 10000020 00000000 80000000 00000000 00000000 ................ - 10000030 00000000 00000000 00000000 0040051c .............@.. + 10000030 00000000 00000000 00000000 0040053c .............@.. 10000040 00000001 00000000 00000000 00000000 ................ 10000050 00000000 00000000 00000000 00000000 ................ diff --git a/ld/testsuite/ld-mips-elf/tlsdyn-o32-2.d b/ld/testsuite/ld-mips-elf/tlsdyn-o32-2.d index 44730abaa3e..0c466b695ba 100644 --- a/ld/testsuite/ld-mips-elf/tlsdyn-o32-2.d +++ b/ld/testsuite/ld-mips-elf/tlsdyn-o32-2.d @@ -5,7 +5,7 @@ Disassembly of section .text: .* <__start>: .*: 3c1c0fc0 lui gp,0xfc0 - .*: 279c7ba0 addiu gp,gp,31648 + .*: 279c7b80 addiu gp,gp,31616 .*: 0399e021 addu gp,gp,t9 .*: 27bdfff0 addiu sp,sp,-16 .*: afbe0008 sw s8,8\(sp\) @@ -55,7 +55,7 @@ Disassembly of section .text: .* : .*: 3c1c0fc0 lui gp,0xfc0 - .*: 279c7ae0 addiu gp,gp,31456 + .*: 279c7ac0 addiu gp,gp,31424 .*: 0399e021 addu gp,gp,t9 .*: 27bdfff0 addiu sp,sp,-16 .*: afbe0008 sw s8,8\(sp\) diff --git a/ld/testsuite/ld-mips-elf/tlsdyn-o32-2.got b/ld/testsuite/ld-mips-elf/tlsdyn-o32-2.got index 8ceef73ac89..ba617bbe367 100644 --- a/ld/testsuite/ld-mips-elf/tlsdyn-o32-2.got +++ b/ld/testsuite/ld-mips-elf/tlsdyn-o32-2.got @@ -15,6 +15,6 @@ OFFSET TYPE VALUE Contents of section .got: 10000020 00000000 80000000 00000000 00000000 .* 10000030 00000000 00000000 00000000 00000000 .* - 10000040 0040051c 00000001 00000000 00000000 .* + 10000040 0040053c 00000001 00000000 00000000 .* 10000050 00000000 00000000 00000000 00000000 .* 10000060 00000000 00000000 00000000 00000000 .* diff --git a/ld/testsuite/ld-mips-elf/tlsdyn-o32-3.d b/ld/testsuite/ld-mips-elf/tlsdyn-o32-3.d index d254c94562f..31f1666f5da 100644 --- a/ld/testsuite/ld-mips-elf/tlsdyn-o32-3.d +++ b/ld/testsuite/ld-mips-elf/tlsdyn-o32-3.d @@ -5,7 +5,7 @@ Disassembly of section .text: .* : .*: 3c1c0fc0 lui gp,0xfc0 - .*: 279c7ba0 addiu gp,gp,31648 + .*: 279c7b80 addiu gp,gp,31616 .*: 0399e021 addu gp,gp,t9 .*: 27bdfff0 addiu sp,sp,-16 .*: afbe0008 sw s8,8\(sp\) @@ -51,7 +51,7 @@ Disassembly of section .text: .* <__start>: .*: 3c1c0fc0 lui gp,0xfc0 - .*: 279c7af0 addiu gp,gp,31472 + .*: 279c7ad0 addiu gp,gp,31440 .*: 0399e021 addu gp,gp,t9 .*: 27bdfff0 addiu sp,sp,-16 .*: afbe0008 sw s8,8\(sp\) diff --git a/ld/testsuite/ld-mips-elf/tlsdyn-o32-3.got b/ld/testsuite/ld-mips-elf/tlsdyn-o32-3.got index 89c9961d596..addfc0fb1e0 100644 --- a/ld/testsuite/ld-mips-elf/tlsdyn-o32-3.got +++ b/ld/testsuite/ld-mips-elf/tlsdyn-o32-3.got @@ -15,6 +15,6 @@ OFFSET TYPE VALUE Contents of section .got: 10000020 00000000 80000000 00000000 00000000 ................ 10000030 00000000 00000000 00000000 00000000 ................ - 10000040 004005cc 00000001 00000000 00000000 .@.............. + 10000040 004005ec 00000001 00000000 00000000 .@.............. 10000050 00000000 00000000 00000000 00000000 ................ 10000060 00000000 00000000 00000000 00000000 ................ diff --git a/ld/testsuite/ld-mips-elf/tlsdyn-o32.d b/ld/testsuite/ld-mips-elf/tlsdyn-o32.d index d1f383d3eb2..31e9e02af75 100644 --- a/ld/testsuite/ld-mips-elf/tlsdyn-o32.d +++ b/ld/testsuite/ld-mips-elf/tlsdyn-o32.d @@ -5,7 +5,7 @@ Disassembly of section .text: .* <__start>: .*: 3c1c0fc0 lui gp,0xfc0 - .*: 279c7bc0 addiu gp,gp,31680 + .*: 279c7ba0 addiu gp,gp,31648 .*: 0399e021 addu gp,gp,t9 .*: 27bdfff0 addiu sp,sp,-16 .*: afbe0008 sw s8,8\(sp\) diff --git a/ld/testsuite/ld-mips-elf/tlsdyn-o32.got b/ld/testsuite/ld-mips-elf/tlsdyn-o32.got index 633fc395c41..100633267a4 100644 --- a/ld/testsuite/ld-mips-elf/tlsdyn-o32.got +++ b/ld/testsuite/ld-mips-elf/tlsdyn-o32.got @@ -14,6 +14,6 @@ OFFSET TYPE VALUE Contents of section .got: 10000020 00000000 80000000 00000000 00000000 ................ - 10000030 00000000 00000000 00000000 004004fc ................ + 10000030 00000000 00000000 00000000 0040051c ................ 10000040 00000001 00000000 00000000 00000000 ................ 10000050 00000000 00000000 00000000 00000000 ................ diff --git a/ld/testsuite/ld-mips-elf/tlslib-o32-hidden.got b/ld/testsuite/ld-mips-elf/tlslib-o32-hidden.got index 0b5d7c59c46..1507f2c1a88 100644 --- a/ld/testsuite/ld-mips-elf/tlslib-o32-hidden.got +++ b/ld/testsuite/ld-mips-elf/tlslib-o32-hidden.got @@ -4,13 +4,13 @@ DYNAMIC RELOCATION RECORDS OFFSET TYPE VALUE 00000000 R_MIPS_NONE \*ABS\* -000403b0 R_MIPS_TLS_TPREL32 \*ABS\* -000403b4 R_MIPS_TLS_DTPMOD32 \*ABS\* -000403bc R_MIPS_TLS_DTPMOD32 \*ABS\* +000403d0 R_MIPS_TLS_TPREL32 \*ABS\* +000403d4 R_MIPS_TLS_DTPMOD32 \*ABS\* +000403dc R_MIPS_TLS_DTPMOD32 \*ABS\* Contents of section .got: - 40390 00000000 80000000 00000000 00000000 ................ - 403a0 00000000 00000000 00000000 00000360 ................ - 403b0 00000008 00000000 00000000 00000000 ................ - 403c0 ffff8004 .... + 403b0 00000000 80000000 00000000 00000000 ................ + 403c0 00000000 00000000 00000000 00000380 ................ + 403d0 00000008 00000000 00000000 00000000 ................ + 403e0 ffff8004 .... diff --git a/ld/testsuite/ld-mips-elf/tlslib-o32-ver.got b/ld/testsuite/ld-mips-elf/tlslib-o32-ver.got index f0398867089..c0bf509f446 100644 --- a/ld/testsuite/ld-mips-elf/tlslib-o32-ver.got +++ b/ld/testsuite/ld-mips-elf/tlslib-o32-ver.got @@ -4,14 +4,14 @@ DYNAMIC RELOCATION RECORDS OFFSET TYPE VALUE 00000000 R_MIPS_NONE \*ABS\* -00040514 R_MIPS_TLS_DTPMOD32 \*ABS\* -0004051c R_MIPS_TLS_DTPMOD32 tlsvar_gd -00040520 R_MIPS_TLS_DTPREL32 tlsvar_gd -00040510 R_MIPS_TLS_TPREL32 tlsvar_ie +00040534 R_MIPS_TLS_DTPMOD32 \*ABS\* +0004053c R_MIPS_TLS_DTPMOD32 tlsvar_gd +00040540 R_MIPS_TLS_DTPREL32 tlsvar_gd +00040530 R_MIPS_TLS_TPREL32 tlsvar_ie Contents of section .got: - 404f0 00000000 80000000 00000000 00000000 ................ - 40500 00000000 00000000 00000000 000004c0 ................ - 40510 00000000 00000000 00000000 00000000 ................ - 40520 00000000 .... + 40510 00000000 80000000 00000000 00000000 ................ + 40520 00000000 00000000 00000000 000004e0 ................ + 40530 00000000 00000000 00000000 00000000 ................ + 40540 00000000 .... diff --git a/ld/testsuite/ld-mips-elf/tlslib-o32.got b/ld/testsuite/ld-mips-elf/tlslib-o32.got index 9a93aade40d..7307081e3cc 100644 --- a/ld/testsuite/ld-mips-elf/tlslib-o32.got +++ b/ld/testsuite/ld-mips-elf/tlslib-o32.got @@ -4,14 +4,14 @@ tmpdir/tlslib-o32.so: file format elf32-tradbigmips DYNAMIC RELOCATION RECORDS OFFSET TYPE VALUE 00000000 R_MIPS_NONE \*ABS\* -00040474 R_MIPS_TLS_DTPMOD32 \*ABS\* -0004047c R_MIPS_TLS_DTPMOD32 tlsvar_gd -00040480 R_MIPS_TLS_DTPREL32 tlsvar_gd -00040470 R_MIPS_TLS_TPREL32 tlsvar_ie +00040494 R_MIPS_TLS_DTPMOD32 \*ABS\* +0004049c R_MIPS_TLS_DTPMOD32 tlsvar_gd +000404a0 R_MIPS_TLS_DTPREL32 tlsvar_gd +00040490 R_MIPS_TLS_TPREL32 tlsvar_ie Contents of section .got: - 40450 00000000 80000000 00000000 00000000 ................ - 40460 00000000 00000000 00000000 00000420 ................ - 40470 00000000 00000000 00000000 00000000 ................ - 40480 00000000 .... + 40470 00000000 80000000 00000000 00000000 ................ + 40480 00000000 00000000 00000000 00000440 ................ + 40490 00000000 00000000 00000000 00000000 ................ + 404a0 00000000 .... -- 2.30.2