* elf32-ppc.c (allocate_dynrelocs): Tweak undef weak handling.

* elf64-ppc.c (allocate_dynrelocs): Likewise.
This commit is contained in:
Alan Modra 2006-02-17 12:52:58 +00:00
parent dfbb6ac933
commit cab87ef999
3 changed files with 9 additions and 2 deletions

View file

@ -1,3 +1,8 @@
2006-02-17 Alan Modra <amodra@bigpond.net.au>
* elf32-ppc.c (allocate_dynrelocs): Tweak undef weak handling.
* elf64-ppc.c (allocate_dynrelocs): Likewise.
2006-02-17 Alan Modra <amodra@bigpond.net.au>
PR ld/2218

View file

@ -4546,7 +4546,8 @@ allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf)
/* Also discard relocs on undefined weak syms with non-default
visibility. */
if (h->root.type == bfd_link_hash_undefweak)
if (eh->dyn_relocs != NULL
&& h->root.type == bfd_link_hash_undefweak)
{
if (ELF_ST_VISIBILITY (h->other) != STV_DEFAULT)
eh->dyn_relocs = NULL;

View file

@ -7582,7 +7582,8 @@ allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf)
/* Also discard relocs on undefined weak syms with non-default
visibility. */
if (h->root.type == bfd_link_hash_undefweak)
if (eh->dyn_relocs != NULL
&& h->root.type == bfd_link_hash_undefweak)
{
if (ELF_ST_VISIBILITY (h->other) != STV_DEFAULT)
eh->dyn_relocs = NULL;