OSDN Git Service

* elf32-ppc.c (ppc_elf_check_relocs): Set pointer_equality_needed gdb_6_8-2008-02-26-branchpoint
authorAlan Modra <amodra@bigpond.net.au>
Tue, 26 Feb 2008 08:36:03 +0000 (08:36 +0000)
committerAlan Modra <amodra@bigpond.net.au>
Tue, 26 Feb 2008 08:36:03 +0000 (08:36 +0000)
commit561787572fac5917f6b769fca378ff1dba31d32d
tree52a5102ad550ca12757d85be285e93ed5c5c8e0f
parentb6bb98f02cccc37eed102cad02baf000e0cc9fa0
* elf32-ppc.c (ppc_elf_check_relocs): Set pointer_equality_needed
for R_PPC_REL32 syms.  Don't set non_got_ref on branch reloc syms,
and assume branch relocs are not dynamic when non-shared.
(readonly_dynrelocs): New function, split out from..
(maybe_set_textrel): ..here, renamed from old readonly_dynrelocs.
(ppc_elf_adjust_dynamic_symbol): For symbols generating plt entries,
clear non_got_ref..
(allocate_dynrelocs): ..and don't set u.def for undefined weak.
Do allow dynamic relocs on undefined symbols.
(ppc_elf_adjust_dynamic_symbol): Use readonly_dynrelocs.
(ppc_elf_relocate_section): Mirror dynamic reloc changes in
check_relocs.
(ppc_elf_finish_dynamic_symbol): Don't give a warning on weak
plt symbols needing pointer_equality_needed.
bfd/ChangeLog
bfd/elf32-ppc.c