Modify get_reloc_section for targets that map .got.plt to .got
Fixes tic6x testsuite failures due to .rela.plt having a zero sh_info. I considered passing link_info to get_reloc_section so we could directly return the .got.plt output section, but we need the fallback to name lookup anyway for objcopy. bfd/ * elf.c (_bfd_elf_get_reloc_section): Allow for .got.plt being mapped to output .got section. ld/testsuite/ * ld-arm/tls-gdesc-nlazy.g: Adjust for readelf note. * ld-tic6x/shlib-1.rd: Expect corrected .rela.plt sh_info. * ld-tic6x/shlib-1b.rd: Likewise. * ld-tic6x/shlib-1r.rd: Likewise. * ld-tic6x/shlib-1rb.rd: Likewise. * ld-tic6x/shlib-app-1.rd: Likewise. * ld-tic6x/shlib-app-1b.rd: Likewise. * ld-tic6x/shlib-app-1r.rd: Likewise. * ld-tic6x/shlib-app-1rb.rd: Likewise. * ld-tic6x/shlib-noindex.rd: Likewise.
This commit is contained in:
parent
0fad6e4b94
commit
87070c082f
|
@ -1,3 +1,8 @@
|
|||
2015-04-07 Alan Modra <amodra@gmail.com>
|
||||
|
||||
* elf.c (_bfd_elf_get_reloc_section): Allow for .got.plt being
|
||||
mapped to output .got section.
|
||||
|
||||
2015-04-07 Alan Modra <amodra@gmail.com>
|
||||
|
||||
* elf32-ppc.c (struct ppc_elf_link_hash_entry): Add has_addr16_ha
|
||||
|
|
10
bfd/elf.c
10
bfd/elf.c
|
@ -3102,7 +3102,15 @@ _bfd_elf_get_reloc_section (asection *reloc_sec)
|
|||
abfd = reloc_sec->owner;
|
||||
if (get_elf_backend_data (abfd)->want_got_plt
|
||||
&& strcmp (name, ".plt") == 0)
|
||||
name = ".got.plt";
|
||||
{
|
||||
/* .got.plt is a linker created input section. It may be mapped
|
||||
to some other output section. Try two likely sections. */
|
||||
name = ".got.plt";
|
||||
reloc_sec = bfd_get_section_by_name (abfd, name);
|
||||
if (reloc_sec != NULL)
|
||||
return reloc_sec;
|
||||
name = ".got";
|
||||
}
|
||||
|
||||
reloc_sec = bfd_get_section_by_name (abfd, name);
|
||||
return reloc_sec;
|
||||
|
|
|
@ -1,3 +1,16 @@
|
|||
2015-04-07 Alan Modra <amodra@gmail.com>
|
||||
|
||||
* ld-arm/tls-gdesc-nlazy.g: Adjust for readelf note.
|
||||
* ld-tic6x/shlib-1.rd: Expect corrected .rela.plt sh_info.
|
||||
* ld-tic6x/shlib-1b.rd: Likewise.
|
||||
* ld-tic6x/shlib-1r.rd: Likewise.
|
||||
* ld-tic6x/shlib-1rb.rd: Likewise.
|
||||
* ld-tic6x/shlib-app-1.rd: Likewise.
|
||||
* ld-tic6x/shlib-app-1b.rd: Likewise.
|
||||
* ld-tic6x/shlib-app-1r.rd: Likewise.
|
||||
* ld-tic6x/shlib-app-1rb.rd: Likewise.
|
||||
* ld-tic6x/shlib-noindex.rd: Likewise.
|
||||
|
||||
2015-04-06 H.J. Lu <hongjiu.lu@intel.com>
|
||||
|
||||
* ld-elf/compress.exp: Remove is_zlib_supported check.
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
|
||||
Hex dump of section '.got':
|
||||
#...
|
||||
0x[0-9a-f]+ [0-9a-f]+ 00000000 00000000 00000000 ................
|
||||
0x[0-9a-f]+ 00000000 00000000 00000000 ............
|
||||
|
|
|
@ -9,7 +9,7 @@ Section Headers:
|
|||
\[ 4\] \.rela\.got RELA 00008140 001140 000024 0c AI 2 10 4
|
||||
\[ 5\] \.rela\.neardata RELA 00008164 001164 000018 0c AI 2 11 4
|
||||
\[ 6\] \.dynamic DYNAMIC 0000817c 00117c 0000a8 08 WA 3 0 4
|
||||
\[ 7\] \.rela\.plt RELA 10000000 002000 000018 0c AI 2 8 4
|
||||
\[ 7\] \.rela\.plt RELA 10000000 002000 000018 0c AI 2 10 4
|
||||
\[ 8\] \.plt PROGBITS 10000020 002020 000060 18 AX 0 0 32
|
||||
\[ 9\] \.text PROGBITS 10000080 002080 000080 00 AX 0 0 32
|
||||
\[10\] \.got PROGBITS 10000100 002100 000028 00 WA 0 0 4
|
||||
|
|
|
@ -9,7 +9,7 @@ Section Headers:
|
|||
\[ 4\] \.rela\.got RELA 00008140 001140 000024 0c AI 2 10 4
|
||||
\[ 5\] \.rela\.neardata RELA 00008164 001164 000018 0c AI 2 11 4
|
||||
\[ 6\] \.dynamic DYNAMIC 0000817c 00117c 0000a8 08 WA 3 0 4
|
||||
\[ 7\] \.rela\.plt RELA 10000000 002000 000018 0c AI 2 8 4
|
||||
\[ 7\] \.rela\.plt RELA 10000000 002000 000018 0c AI 2 10 4
|
||||
\[ 8\] \.plt PROGBITS 10000020 002020 000060 18 AX 0 0 32
|
||||
\[ 9\] \.text PROGBITS 10000080 002080 000080 00 AX 0 0 32
|
||||
\[10\] \.got PROGBITS 10000100 002100 000028 00 WA 0 0 4
|
||||
|
|
|
@ -9,7 +9,7 @@ Section Headers:
|
|||
\[ 4\] \.rela\.got RELA 00008140 001140 000024 0c AI 2 10 4
|
||||
\[ 5\] \.rela\.neardata RELA 00008164 001164 000018 0c AI 2 11 4
|
||||
\[ 6\] \.dynamic DYNAMIC 0000817c 00117c 0000a8 08 WA 3 0 4
|
||||
\[ 7\] \.rela\.plt RELA 10000000 002000 000018 0c AI 2 8 4
|
||||
\[ 7\] \.rela\.plt RELA 10000000 002000 000018 0c AI 2 10 4
|
||||
\[ 8\] \.plt PROGBITS 10000020 002020 000060 18 AX 0 0 32
|
||||
\[ 9\] \.text PROGBITS 10000080 002080 000080 00 AX 0 0 32
|
||||
\[10\] \.got PROGBITS 10000100 002100 000028 00 WA 0 0 4
|
||||
|
|
|
@ -9,7 +9,7 @@ Section Headers:
|
|||
\[ 4\] \.rela\.got RELA 00008140 001140 000024 0c AI 2 10 4
|
||||
\[ 5\] \.rela\.neardata RELA 00008164 001164 000018 0c AI 2 11 4
|
||||
\[ 6\] \.dynamic DYNAMIC 0000817c 00117c 0000a8 08 WA 3 0 4
|
||||
\[ 7\] \.rela\.plt RELA 10000000 002000 000018 0c AI 2 8 4
|
||||
\[ 7\] \.rela\.plt RELA 10000000 002000 000018 0c AI 2 10 4
|
||||
\[ 8\] \.plt PROGBITS 10000020 002020 000060 18 AX 0 0 32
|
||||
\[ 9\] \.text PROGBITS 10000080 002080 000080 00 AX 0 0 32
|
||||
\[10\] \.got PROGBITS 10000100 002100 000028 00 WA 0 0 4
|
||||
|
|
|
@ -10,7 +10,7 @@ Section Headers:
|
|||
\[ 5\] \.rela\.neardata RELA 00008154 001154 000018 0c AI 2 12 4
|
||||
\[ 6\] \.rela\.bss RELA 0000816c 00116c 00000c 0c AI 2 13 4
|
||||
\[ 7\] \.dynamic DYNAMIC 00008178 001178 0000b8 08 WA 3 0 4
|
||||
\[ 8\] \.rela\.plt RELA 10000000 002000 00000c 0c AI 2 9 4
|
||||
\[ 8\] \.rela\.plt RELA 10000000 002000 00000c 0c AI 2 11 4
|
||||
\[ 9\] \.plt PROGBITS 10000020 002020 000040 18 AX 0 0 32
|
||||
\[10\] \.text PROGBITS 10000060 002060 000040 00 AX 0 0 32
|
||||
\[11\] \.got PROGBITS 100000a0 0020a0 000020 00 WA 0 0 4
|
||||
|
|
|
@ -10,7 +10,7 @@ Section Headers:
|
|||
\[ 5\] \.rela\.neardata RELA 00008154 001154 000018 0c AI 2 12 4
|
||||
\[ 6\] \.rela\.bss RELA 0000816c 00116c 00000c 0c AI 2 13 4
|
||||
\[ 7\] \.dynamic DYNAMIC 00008178 001178 0000b8 08 WA 3 0 4
|
||||
\[ 8\] \.rela\.plt RELA 10000000 002000 00000c 0c AI 2 9 4
|
||||
\[ 8\] \.rela\.plt RELA 10000000 002000 00000c 0c AI 2 11 4
|
||||
\[ 9\] \.plt PROGBITS 10000020 002020 000040 18 AX 0 0 32
|
||||
\[10\] \.text PROGBITS 10000060 002060 000040 00 AX 0 0 32
|
||||
\[11\] \.got PROGBITS 100000a0 0020a0 000020 00 WA 0 0 4
|
||||
|
|
|
@ -9,7 +9,7 @@ Section Headers:
|
|||
\[ 4\] \.rela\.got RELA 0000810c 00110c 000018 0c AI 2 10 4
|
||||
\[ 5\] \.rela\.bss RELA 00008124 001124 00000c 0c AI 2 12 4
|
||||
\[ 6\] \.dynamic DYNAMIC 00008130 001130 0000b8 08 WA 3 0 4
|
||||
\[ 7\] \.rela\.plt RELA 10000000 002000 00000c 0c AI 2 8 4
|
||||
\[ 7\] \.rela\.plt RELA 10000000 002000 00000c 0c AI 2 10 4
|
||||
\[ 8\] \.plt PROGBITS 10000020 002020 000040 18 AX 0 0 32
|
||||
\[ 9\] \.text PROGBITS 10000060 002060 000040 00 AX 0 0 32
|
||||
\[10\] \.got PROGBITS 100000a0 0020a0 000020 00 WA 0 0 4
|
||||
|
|
|
@ -9,7 +9,7 @@ Section Headers:
|
|||
\[ 4\] \.rela\.got RELA 00008110 001110 000018 0c AI 2 10 4
|
||||
\[ 5\] \.rela\.bss RELA 00008128 001128 00000c 0c AI 2 12 4
|
||||
\[ 6\] \.dynamic DYNAMIC 00008134 001134 0000b8 08 WA 3 0 4
|
||||
\[ 7\] \.rela\.plt RELA 10000000 002000 00000c 0c AI 2 8 4
|
||||
\[ 7\] \.rela\.plt RELA 10000000 002000 00000c 0c AI 2 10 4
|
||||
\[ 8\] \.plt PROGBITS 10000020 002020 000040 18 AX 0 0 32
|
||||
\[ 9\] \.text PROGBITS 10000060 002060 000040 00 AX 0 0 32
|
||||
\[10\] \.got PROGBITS 100000a0 0020a0 000020 00 WA 0 0 4
|
||||
|
|
|
@ -10,7 +10,7 @@ Section Headers:
|
|||
\[ 5\] \.rela\.got RELA 0000814c 00114c 000024 0c AI 2 11 4
|
||||
\[ 6\] \.rela\.neardata RELA 00008170 001170 000018 0c AI 2 12 4
|
||||
\[ 7\] \.dynamic DYNAMIC 00008188 001188 0000b0 08 WA 3 0 4
|
||||
\[ 8\] \.rela\.plt RELA 10000000 002000 000018 0c AI 2 9 4
|
||||
\[ 8\] \.rela\.plt RELA 10000000 002000 000018 0c AI 2 11 4
|
||||
\[ 9\] \.plt PROGBITS 10000020 002020 000060 18 AX 0 0 32
|
||||
\[10\] \.text PROGBITS 10000080 002080 000080 00 AX 0 0 32
|
||||
\[11\] \.got PROGBITS 10000100 002100 000028 00 WA 0 0 4
|
||||
|
|
Loading…
Reference in New Issue