aboutsummaryrefslogtreecommitdiff
path: root/bfd
diff options
context:
space:
mode:
authorHans-Peter Nilsson <hp@axis.com>2002-08-15 05:20:54 +0000
committerHans-Peter Nilsson <hp@axis.com>2002-08-15 05:20:54 +0000
commit0741c7bed7f8f033274f8a176223749379742649 (patch)
treef86056f815f7751a710519e361ad2a2f47039dc3 /bfd
parent43b1011811f4eb90d90691f227ab545e578c6dd4 (diff)
downloadgdb-0741c7bed7f8f033274f8a176223749379742649.zip
gdb-0741c7bed7f8f033274f8a176223749379742649.tar.gz
gdb-0741c7bed7f8f033274f8a176223749379742649.tar.bz2
* elf32-cris.c (elf_cris_discard_excess_program_dynamics): Add
missing check for whether the symbol is referenced by DSO before unexporting it as an unneeded dynamic symbol.
Diffstat (limited to 'bfd')
-rw-r--r--bfd/ChangeLog6
-rw-r--r--bfd/elf32-cris.c3
2 files changed, 8 insertions, 1 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index d7ab3e2..1dd0ec8 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,9 @@
+2002-08-15 Hans-Peter Nilsson <hp@axis.com>
+
+ * elf32-cris.c (elf_cris_discard_excess_program_dynamics): Add
+ missing check for whether the symbol is referenced by DSO before
+ unexporting it as an unneeded dynamic symbol.
+
2002-08-14 H.J. Lu <hjl@gnu.org>
* libbfd.h: Regenerate.
diff --git a/bfd/elf32-cris.c b/bfd/elf32-cris.c
index afe74bd..8eff52d 100644
--- a/bfd/elf32-cris.c
+++ b/bfd/elf32-cris.c
@@ -2917,7 +2917,8 @@ elf_cris_discard_excess_program_dynamics (h, inf)
functions; doing this for all symbols would presumably not
introduce new problems. Of course we don't do this if we're
exporting all dynamic symbols. */
- if (! info->export_dynamic)
+ if (! info->export_dynamic
+ && (h->root.elf_link_hash_flags & ELF_LINK_HASH_REF_DYNAMIC) == 0)
{
h->root.dynindx = -1;
_bfd_elf_strtab_delref (elf_hash_table (info)->dynstr,