* elf32-hppa.c (clobber_millicode_symbols): Don't do anything if

already forced local.
This commit is contained in:
Alan Modra
2001-12-07 02:00:57 +00:00
parent 8d3adc59f5
commit 142f8c94be
2 changed files with 10 additions and 5 deletions

View File

@ -1,3 +1,8 @@
2001-12-07 Alan Modra <amodra@bigpond.net.au>
* elf32-hppa.c (clobber_millicode_symbols): Don't do anything if
already forced local.
2001-12-05 Nick Clifton <nickc@cambridge.redhat.com> 2001-12-05 Nick Clifton <nickc@cambridge.redhat.com>
* elf32-arm.h (elf32_arm_merge_private_bfd_data): Combine * elf32-arm.h (elf32_arm_merge_private_bfd_data): Combine

View File

@ -2209,19 +2209,19 @@ clobber_millicode_symbols (h, info)
struct elf_link_hash_entry *h; struct elf_link_hash_entry *h;
struct bfd_link_info *info; struct bfd_link_info *info;
{ {
/* We only want to remove these from the dynamic symbol table. if (h->type == STT_PARISC_MILLI
Therefore we do not leave ELF_LINK_FORCED_LOCAL set. */ && (h->elf_link_hash_flags & ELF_LINK_FORCED_LOCAL) == 0)
if (h->type == STT_PARISC_MILLI)
{ {
struct elf32_hppa_link_hash_table *htab; struct elf32_hppa_link_hash_table *htab;
unsigned short oldflags = h->elf_link_hash_flags;
h->elf_link_hash_flags |= ELF_LINK_FORCED_LOCAL; h->elf_link_hash_flags |= ELF_LINK_FORCED_LOCAL;
elf32_hppa_hide_symbol (info, h); elf32_hppa_hide_symbol (info, h);
htab = hppa_link_hash_table (info); htab = hppa_link_hash_table (info);
_bfd_elf_strtab_delref (htab->elf.dynstr, h->dynstr_index); _bfd_elf_strtab_delref (htab->elf.dynstr, h->dynstr_index);
/* ?!? We only want to remove these from the dynamic symbol table.
Therefore we do not leave ELF_LINK_FORCED_LOCAL set. */
h->elf_link_hash_flags &= ~ELF_LINK_FORCED_LOCAL; h->elf_link_hash_flags &= ~ELF_LINK_FORCED_LOCAL;
h->elf_link_hash_flags |= oldflags & ELF_LINK_FORCED_LOCAL;
} }
return true; return true;
} }