PR22431, powerpc64 ld segfault when .plt discarded
authorAlan Modra <amodra@gmail.com>
Tue, 14 Nov 2017 08:17:34 +0000 (18:47 +1030)
committerAlan Modra <amodra@gmail.com>
Tue, 14 Nov 2017 10:13:55 +0000 (20:43 +1030)
commit06bcf5416feae129e239476ab1408e038bba171d
treeff1edac4b7a7e7e90a232d550aef6b5f9cd6f7c6
parent640d0ed874167d73b11dfbf5e838c65cc43e6a63
PR22431, powerpc64 ld segfault when .plt discarded

The fix for the PR is to not use input_section->output_section->owner
to get to the output bfd, but use the output bfd directly since it is
available nowadays in struct bfd_link_info.

I thought it worth warning when non-empty dynamic sections are
discarded too, which meant a tweak to one of the ld tests to avoid the
warning.

bfd/
PR 22431
* elf64-ppc.c (ppc64_elf_size_dynamic_sections): Warn on discarding
non-empty dynamic section.
(ppc_build_one_stub): Take elf_gp from output bfd, not output
section owner.
(ppc_size_one_stub, ppc64_elf_next_toc_section): Likewise.
ld/
* testsuite/ld-elf/note-3.t: Don't discard .got.
bfd/ChangeLog
bfd/elf64-ppc.c
ld/ChangeLog
ld/testsuite/ld-elf/note-3.t