aboutsummaryrefslogtreecommitdiff
path: root/bfd
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2011-10-17 08:27:45 +0000
committerAlan Modra <amodra@gmail.com>2011-10-17 08:27:45 +0000
commit4c58e0d81504856e1b6d1bdffbe5146260a07bbc (patch)
tree6abfb4bc8f9252f34bb7f31f3100d0adc5dcf385 /bfd
parentc3797e3d05525d0a564fc4cd5b2ac0d5dda2c094 (diff)
downloadgdb-4c58e0d81504856e1b6d1bdffbe5146260a07bbc.zip
gdb-4c58e0d81504856e1b6d1bdffbe5146260a07bbc.tar.gz
gdb-4c58e0d81504856e1b6d1bdffbe5146260a07bbc.tar.bz2
PR ld/12975
PR ld/13195 * elf64-ppc.c (ppc64_elf_gc_mark_dynamic_ref): Apply 2011-09-15 and 2011-09-29 bfd_elf_gc_mark_dynamic_ref_symbol changes here too.
Diffstat (limited to 'bfd')
-rw-r--r--bfd/ChangeLog7
-rw-r--r--bfd/elf64-ppc.c5
2 files changed, 11 insertions, 1 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 13242ba..8f9b9be 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,10 @@
+2011-10-17 Alan Modra <amodra@gmail.com>
+
+ PR ld/12975
+ PR ld/13195
+ * elf64-ppc.c (ppc64_elf_gc_mark_dynamic_ref): Apply 2011-09-15
+ and 2011-09-29 bfd_elf_gc_mark_dynamic_ref_symbol changes here too.
+
2011-10-14 Hans-Peter Nilsson <hp@axis.com>
* elf32-cris.c (cris_elf_gc_sweep_hook) <R_CRIS_16_GOTPLT>
diff --git a/bfd/elf64-ppc.c b/bfd/elf64-ppc.c
index 5f5c811..837568c 100644
--- a/bfd/elf64-ppc.c
+++ b/bfd/elf64-ppc.c
@@ -5717,7 +5717,10 @@ ppc64_elf_gc_mark_dynamic_ref (struct elf_link_hash_entry *h, void *inf)
|| (!info->executable
&& eh->elf.def_regular
&& ELF_ST_VISIBILITY (eh->elf.other) != STV_INTERNAL
- && ELF_ST_VISIBILITY (eh->elf.other) != STV_HIDDEN)))
+ && ELF_ST_VISIBILITY (eh->elf.other) != STV_HIDDEN
+ && (strchr (eh->elf.root.root.string, ELF_VER_CHR) != NULL
+ || !bfd_hide_sym_by_version (info->version_info,
+ eh->elf.root.root.string)))))
{
asection *code_sec;
struct ppc_link_hash_entry *fh;