From: H.J. Lu Date: Sun, 24 Jun 2001 00:36:47 +0000 (+0000) Subject: 2001-06-23 H.J. Lu X-Git-Tag: dberlin-typesystem-branchpoint~146 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=62b7d3f1f1b805c22545bc5cafcd014655daf476;p=thirdparty%2Fbinutils-gdb.git 2001-06-23 H.J. Lu * elf32-i386.c (elf_i386_relocate_section): Check the ELF_LINK_HASH_DEF_DYNAMIC to see if a symbol is not defined in the regular object file and treat the weak definition as the normal one. --- diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 525acc48479..7eeede2795a 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,10 @@ +2001-06-23 H.J. Lu + + * elf32-i386.c (elf_i386_relocate_section): Check the + ELF_LINK_HASH_DEF_DYNAMIC to see if a symbol is not defined + in the regular object file and treat the weak definition as + the normal one. + 2001-06-23 Alan Modra * elf32-i386.c (elf_i386_relocate_section ): Tighten diff --git a/bfd/elf32-i386.c b/bfd/elf32-i386.c index a628e0c7149..a0ed38ae4fb 100644 --- a/bfd/elf32-i386.c +++ b/bfd/elf32-i386.c @@ -1693,9 +1693,10 @@ elf_i386_relocate_section (output_bfd, info, input_bfd, input_section, && h != NULL && h->dynindx != -1 && (h->elf_link_hash_flags & ELF_LINK_NON_GOT_REF) == 0 - && (h->root.type == bfd_link_hash_defweak - || (h->elf_link_hash_flags - & ELF_LINK_HASH_DEF_REGULAR) == 0))) + && ((h->root.type == bfd_link_hash_defined + || h->root.type == bfd_link_hash_defweak) + && (h->elf_link_hash_flags + & ELF_LINK_HASH_DEF_DYNAMIC) != 0))) { Elf_Internal_Rel outrel; boolean skip, relocate;