* elf32-ppc.c (ppc_elf_check_relocs): Always add a plt ref count
authorAlan Modra <amodra@gmail.com>
Mon, 3 Aug 2009 10:23:18 +0000 (10:23 +0000)
committerAlan Modra <amodra@gmail.com>
Mon, 3 Aug 2009 10:23:18 +0000 (10:23 +0000)
commitde972ffadddb04cd60d8e0891cbeb24f797d4282
tree25a868c840d2b2b057572c1dc6d2bad7e5be8ec3
parent0329406f62d801a2424818f815ad90d6f7e6da6f
* elf32-ppc.c (ppc_elf_check_relocs): Always add a plt ref count
for local ifunc symbols in non-pie executables, regardless of
reloc type.  Don't specially create ifunc dyn relocs.  Tidy ifunc
code so that it's obvious that we only do anything special for
local ifunc syms.
(ppc_elf_gc_sweep_hook): Adjust to suit check_relocs changes.
(allocate_dynrelocs): Correct comment for syms defined in plt.
Don't specially allocate ifunc dyn relocs.
(ppc_elf_relax_section): Relax branches to ifunc plt entries too.
(ppc_elf_relocate_section): Set "relocation" value for ifunc
syms in non-pie executables.  No specially allocated dyn relocs
for ifunc to write.  Allow for local sym on R_PPC_RELAX32_PLT.
(ppc_elf_finish_dynamic_symbol): Set value of ifunc symbols in
a non-pie executable.
bfd/ChangeLog
bfd/elf32-ppc.c