Properly set sh_info for .rela.plt/rel.plt section
authorH.J. Lu <hjl.tools@gmail.com>
Mon, 30 Mar 2015 11:40:33 +0000 (04:40 -0700)
committerH.J. Lu <hjl.tools@gmail.com>
Mon, 30 Mar 2015 11:40:49 +0000 (04:40 -0700)
commitbd53a53af486c6e5ab88b7f64342244392be1f1f
treebb7d41577e217ff63481159f9bd65dca1a510ded
parent457983e3a30212740a599ffa7cbf5142ffe67367
Properly set sh_info for .rela.plt/rel.plt section

Since .rela.plt/rel.plt section may contain relocations against .got.plt
section, we set sh_info for .rela.plt/rel.plt section to .got.plt section
index if target has .got.plt section.

bfd/

PR ld/18169
* elf-bfd.h (elf_backend_data): Add get_reloc_section.
(_bfd_elf_get_reloc_section): New.
* elf.c (_bfd_elf_get_reloc_section): Likewise.
(assign_section_numbers): Call get_reloc_section to look up the
section the relocs apply.
* elfxx-target.h (elf_backend_get_reloc_section): Likewise.
(elfNN_bed): Initialize get_reloc_section with
elf_backend_get_reloc_section.

ld/testsuite/

PR ld/18169
* ld-elf/linkinfo1a.d: Updated.
* ld-elf/linkinfo1b.d: Likewise.
bfd/ChangeLog
bfd/elf-bfd.h
bfd/elf.c
bfd/elfxx-target.h
ld/testsuite/ChangeLog
ld/testsuite/ld-elf/linkinfo1a.d
ld/testsuite/ld-elf/linkinfo1b.d