From: Ian Lance Taylor Date: Mon, 1 Aug 1994 16:34:09 +0000 (+0000) Subject: * elfcode.h (elf_slurp_reloc_table): Don't try to read the relocs X-Git-Tag: gdb-4_18~13900 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=d510fd893a16c3d262614d25d1812ba842da4f3a;p=external%2Fbinutils.git * elfcode.h (elf_slurp_reloc_table): Don't try to read the relocs if there aren't any. --- diff --git a/bfd/ChangeLog b/bfd/ChangeLog index d6b9f25..9ced001 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,5 +1,8 @@ Mon Aug 1 12:04:40 1994 Ian Lance Taylor (ian@sanguine.cygnus.com) + * elfcode.h (elf_slurp_reloc_table): Don't try to read the relocs + if there aren't any. + * configure.host (sparc-*-solaris2*): Use sysv4, not solaris2. * hosts/solaris2.h: Remove. * config/solaris2.mh: Remove. diff --git a/bfd/elfcode.h b/bfd/elfcode.h index 49f24c4..6e0f2d0 100644 --- a/bfd/elfcode.h +++ b/bfd/elfcode.h @@ -2928,7 +2928,9 @@ elf_slurp_reloc_table (abfd, asect, symbols) unsigned int i; int entsize; - if (asect->relocation != NULL) + if (asect->relocation != NULL + || (asect->flags & SEC_RELOC) == 0 + || asect->reloc_count == 0) return true; BFD_ASSERT (asect->rel_filepos == d->rel_hdr.sh_offset @@ -5034,7 +5036,7 @@ elf_adjust_dynamic_symbol (h, data) BFD_ASSERT (weakdef->root.type == bfd_link_hash_defined); BFD_ASSERT (weakdef->elf_link_hash_flags & ELF_LINK_HASH_DEF_DYNAMIC); if ((weakdef->elf_link_hash_flags & ELF_LINK_HASH_DEF_REGULAR) != 0 - || (weakdef->elf_link_hash_flags & ELF_LINK_HASH_REF_REGULAR) == 0) + || (weakdef->elf_link_hash_flags & ELF_LINK_HASH_REF_REGULAR) != 0) { /* This symbol is defined or referenced by a regular object file, so we will not do anything special. Clear weakdef