* elf.c (_bfd_elf_link_hash_copy_indirect): Test ind->root.type

rather than ind->weakdef.
	* elf32-hppa.c (elf32_hppa_copy_indirect_symbol): Likewise.
	* elf32-i386.c (elf_i386_copy_indirect_symbol): Likewise.
	* elf32-mips.c (_bfd_mips_elf_copy_indirect_symbol): Likewise.
	* elf64-ppc.c (ppc64_elf_copy_indirect_symbol): Likewise.
	* elfxx-ia64.c (elfNN_ia64_hash_copy_indirect): Likewise.
This commit is contained in:
Alan Modra 2001-10-15 09:45:48 +00:00
parent bbd7ec4a06
commit 1e370bd243
7 changed files with 16 additions and 6 deletions

View file

@ -1,3 +1,13 @@
2001-10-15 Alan Modra <amodra@bigpond.net.au>
* elf.c (_bfd_elf_link_hash_copy_indirect): Test ind->root.type
rather than ind->weakdef.
* elf32-hppa.c (elf32_hppa_copy_indirect_symbol): Likewise.
* elf32-i386.c (elf_i386_copy_indirect_symbol): Likewise.
* elf32-mips.c (_bfd_mips_elf_copy_indirect_symbol): Likewise.
* elf64-ppc.c (ppc64_elf_copy_indirect_symbol): Likewise.
* elfxx-ia64.c (elfNN_ia64_hash_copy_indirect): Likewise.
2001-10-15 Alan Modra <amodra@bigpond.net.au> 2001-10-15 Alan Modra <amodra@bigpond.net.au>
H.J. Lu <hjl@gnu.org> H.J. Lu <hjl@gnu.org>

View file

@ -1193,7 +1193,7 @@ _bfd_elf_link_hash_copy_indirect (dir, ind)
| ELF_LINK_HASH_REF_REGULAR_NONWEAK | ELF_LINK_HASH_REF_REGULAR_NONWEAK
| ELF_LINK_NON_GOT_REF)); | ELF_LINK_NON_GOT_REF));
if (dir == ind->weakdef) if (ind->root.type != bfd_link_hash_indirect)
return; return;
/* Copy over the global and procedure linkage table refcount entries. /* Copy over the global and procedure linkage table refcount entries.

View file

@ -1149,7 +1149,7 @@ elf32_hppa_copy_indirect_symbol (dir, ind)
struct elf32_hppa_dyn_reloc_entry **pp; struct elf32_hppa_dyn_reloc_entry **pp;
struct elf32_hppa_dyn_reloc_entry *p; struct elf32_hppa_dyn_reloc_entry *p;
if (dir != ind->weakdef) if (ind->root.type == bfd_link_hash_indirect)
abort (); abort ();
/* Add reloc counts against the weak sym to the strong sym /* Add reloc counts against the weak sym to the strong sym

View file

@ -644,7 +644,7 @@ elf_i386_copy_indirect_symbol (dir, ind)
struct elf_i386_dyn_relocs **pp; struct elf_i386_dyn_relocs **pp;
struct elf_i386_dyn_relocs *p; struct elf_i386_dyn_relocs *p;
if (dir != ind->weakdef) if (ind->root.type == bfd_link_hash_indirect)
abort (); abort ();
/* Add reloc counts against the weak sym to the strong sym /* Add reloc counts against the weak sym to the strong sym

View file

@ -8085,7 +8085,7 @@ _bfd_mips_elf_copy_indirect_symbol (dir, ind)
_bfd_elf_link_hash_copy_indirect (dir, ind); _bfd_elf_link_hash_copy_indirect (dir, ind);
if (dir == ind->weakdef) if (ind->root.type != bfd_link_hash_indirect)
return; return;
dirmips = (struct mips_elf_link_hash_entry *) dir; dirmips = (struct mips_elf_link_hash_entry *) dir;

View file

@ -1801,7 +1801,7 @@ ppc64_elf_copy_indirect_symbol (dir, ind)
struct ppc_dyn_relocs **pp; struct ppc_dyn_relocs **pp;
struct ppc_dyn_relocs *p; struct ppc_dyn_relocs *p;
if (dir != ind->weakdef) if (ind->root.type == bfd_link_hash_indirect)
abort (); abort ();
/* Add reloc counts against the weak sym to the strong sym /* Add reloc counts against the weak sym to the strong sym

View file

@ -1524,7 +1524,7 @@ elfNN_ia64_hash_copy_indirect (xdir, xind)
| ELF_LINK_HASH_REF_REGULAR | ELF_LINK_HASH_REF_REGULAR
| ELF_LINK_HASH_REF_REGULAR_NONWEAK)); | ELF_LINK_HASH_REF_REGULAR_NONWEAK));
if (xdir == xind->weakdef) if (ind->root.root.type != bfd_link_hash_indirect)
return; return;
/* Copy over the got and plt data. This would have been done /* Copy over the got and plt data. This would have been done