Error on unsupported PowerPC ifuncs
authorAlan Modra <amodra@gmail.com>
Mon, 22 Aug 2016 01:12:26 +0000 (10:42 +0930)
committerAlan Modra <amodra@gmail.com>
Mon, 22 Aug 2016 01:25:08 +0000 (10:55 +0930)
commit888a7fc3665a67e20da1bce2f865b0ff9ef15842
treea77aa2665fc2ede6e874d4d424dc6d505c2a20c6
parentca942b53cec608a3df1a351b504852e4e64c5e90
Error on unsupported PowerPC ifuncs

The pr19784 tests fail on ppc32 due to a gcc bug.  The failure should
be noticed when building both libpr19784a.so and libpr19784b.so,
rather than ld building a buggy libpr19784a.so that fails at run time.
This patch fixes that by moving the @local ifunc check out of
check_relocs, where a call destination may not yet be known to be
ifunc.  The patch also adds a related error for -mbss-plt code.

* elf32-ppc.c (ppc_elf_check_relocs): Move error for @local ifunc..
(ppc_elf_relocate_section): ..to here.  Comment.  Error on
detecting -mbss-plt -fPIC local ifuncs too.
(ppc_elf_size_dynamic_sections): Comment on unnecessary glink
branch table entries.
bfd/ChangeLog
bfd/elf32-ppc.c