* elflink.h (elf_link_input_bfd): Don't skip symbols from sections

that have no contents merely because linker_mark is not set.
This commit is contained in:
Ian Lance Taylor
1997-02-26 18:35:56 +00:00
parent 7a5157080c
commit fa802cb057
2 changed files with 20 additions and 3 deletions

View File

@ -1,3 +1,18 @@
Wed Feb 26 13:33:03 1997 Ian Lance Taylor <ian@cygnus.com>
* elflink.h (elf_link_input_bfd): Don't skip symbols from sections
that have no contents merely because linker_mark is not set.
Tue Feb 25 18:51:35 1997 Stan Shebs <shebs@andros.cygnus.com>
* config.bfd (mips*-*-lnews*): New target.
* coff-mips.c (mips_relocate_section): Make assert compare
content byteorder instead of header byteorder.
(ecoff_biglittle_vec): New BFD, big-endian headers, little-endian
data.
* configure.in (ecoff_biglittle_vec): Add case.
* configure: Update.
Tue Feb 25 00:32:49 1997 Ian Lance Taylor <ian@cygnus.com> Tue Feb 25 00:32:49 1997 Ian Lance Taylor <ian@cygnus.com>
* elf.c (elf_fake_sections): Use SHT_NOTE for any section whose * elf.c (elf_fake_sections): Use SHT_NOTE for any section whose

View File

@ -3863,12 +3863,14 @@ elf_link_input_bfd (finfo, input_bfd)
continue; continue;
/* If this symbol is defined in a section which we are /* If this symbol is defined in a section which we are
discarding, we don't need to keep it. For the benefit of the discarding, we don't need to keep it, but note that
MIPS ELF linker, we check SEC_EXCLUDE as well as linker_mark. */ linker_mark is only reliable for sections that have contents.
For the benefit of the MIPS ELF linker, we check SEC_EXCLUDE
as well as linker_mark. */
if (isym->st_shndx > 0 if (isym->st_shndx > 0
&& isym->st_shndx < SHN_LORESERVE && isym->st_shndx < SHN_LORESERVE
&& isec != NULL && isec != NULL
&& (! isec->linker_mark && ((! isec->linker_mark && (isec->flags & SEC_HAS_CONTENTS) != 0)
|| (! finfo->info->relocateable || (! finfo->info->relocateable
&& (isec->flags & SEC_EXCLUDE) != 0))) && (isec->flags & SEC_EXCLUDE) != 0)))
continue; continue;