aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2001-11-19 03:52:37 +0000
committerAlan Modra <amodra@gmail.com>2001-11-19 03:52:37 +0000
commita0e94dc00cf36e15bdbcccdc97e477254abbe649 (patch)
treed0acdd4c9555fa1ce23a3fc4fe1a9a795c66897f
parent2a5aaecb4aabbc6320ef34a5c127bfae1e7748b6 (diff)
downloadgdb-a0e94dc00cf36e15bdbcccdc97e477254abbe649.zip
gdb-a0e94dc00cf36e15bdbcccdc97e477254abbe649.tar.gz
gdb-a0e94dc00cf36e15bdbcccdc97e477254abbe649.tar.bz2
* elf32-hppa.c (clobber_millicode_symbols): Dec dynstr refcount.
-rw-r--r--bfd/ChangeLog2
-rw-r--r--bfd/elf32-hppa.c4
2 files changed, 6 insertions, 0 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index d1c3025..8e3b59b 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,5 +1,7 @@
2001-11-19 Alan Modra <amodra@bigpond.net.au>
+ * elf32-hppa.c (clobber_millicode_symbols): Dec dynstr refcount.
+
* elf32-hppa.c (elf32_hppa_size_stubs): Don't consider undefined
millicode syms as candidates for import stubs.
diff --git a/bfd/elf32-hppa.c b/bfd/elf32-hppa.c
index cf67af4..481bde7 100644
--- a/bfd/elf32-hppa.c
+++ b/bfd/elf32-hppa.c
@@ -2225,9 +2225,13 @@ clobber_millicode_symbols (h, info)
Therefore we do not leave ELF_LINK_FORCED_LOCAL set. */
if (h->type == STT_PARISC_MILLI)
{
+ struct elf32_hppa_link_hash_table *htab;
unsigned short oldflags = h->elf_link_hash_flags;
+
h->elf_link_hash_flags |= ELF_LINK_FORCED_LOCAL;
elf32_hppa_hide_symbol (info, h);
+ htab = hppa_link_hash_table (info);
+ _bfd_elf_strtab_delref (htab->elf.dynstr, h->dynstr_index);
h->elf_link_hash_flags &= ~ELF_LINK_FORCED_LOCAL;
h->elf_link_hash_flags |= oldflags & ELF_LINK_FORCED_LOCAL;
}