aboutsummaryrefslogtreecommitdiff
path: root/bfd
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2011-11-08 13:49:11 +0000
committerAlan Modra <amodra@gmail.com>2011-11-08 13:49:11 +0000
commit409ff343a402799563f71f938138b29f8baf7a1c (patch)
treec7837a3807dfb04ce6ab84516aa1629be0f8e0a6 /bfd
parent560c8763d325c11cf9cd29c54c55a653f780845a (diff)
downloadgdb-409ff343a402799563f71f938138b29f8baf7a1c.zip
gdb-409ff343a402799563f71f938138b29f8baf7a1c.tar.gz
gdb-409ff343a402799563f71f938138b29f8baf7a1c.tar.bz2
* elflink.c (bfd_elf_gc_mark_dynamic_ref_symbol): Mark syms in
executables when export_dynamic.
Diffstat (limited to 'bfd')
-rw-r--r--bfd/ChangeLog5
-rw-r--r--bfd/elflink.c2
2 files changed, 6 insertions, 1 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index b145c57..14db95f 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,8 @@
+2011-11-09 Alan Modra <amodra@gmail.com>
+
+ * elflink.c (bfd_elf_gc_mark_dynamic_ref_symbol): Mark syms in
+ executables when export_dynamic.
+
2011-11-08 Alan Modra <amodra@gmail.com>
* elf64-ppc.c (struct ppc64_elf_obj_tdata): Rename
diff --git a/bfd/elflink.c b/bfd/elflink.c
index 4f55d9a..1dab6a3 100644
--- a/bfd/elflink.c
+++ b/bfd/elflink.c
@@ -11947,7 +11947,7 @@ bfd_elf_gc_mark_dynamic_ref_symbol (struct elf_link_hash_entry *h, void *inf)
if ((h->root.type == bfd_link_hash_defined
|| h->root.type == bfd_link_hash_defweak)
&& (h->ref_dynamic
- || (!info->executable
+ || ((!info->executable || info->export_dynamic)
&& h->def_regular
&& ELF_ST_VISIBILITY (h->other) != STV_INTERNAL
&& ELF_ST_VISIBILITY (h->other) != STV_HIDDEN