aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2011-10-25 03:09:34 +0000
committerAlan Modra <amodra@gmail.com>2011-10-25 03:09:34 +0000
commitf1c293297223b8dab3a1fa47679451c1c2552335 (patch)
tree6d4626315f964f962a1a11c4de16f6e2b53633a5
parent432a499b07a72dc33597d99c868660ba8a613532 (diff)
downloadgdb-f1c293297223b8dab3a1fa47679451c1c2552335.zip
gdb-f1c293297223b8dab3a1fa47679451c1c2552335.tar.gz
gdb-f1c293297223b8dab3a1fa47679451c1c2552335.tar.bz2
PR ld/12975
PR ld/13195 2011-10-17 Alan Modra <amodra@gmail.com> * 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.
-rw-r--r--bfd/ChangeLog6
-rw-r--r--bfd/elf64-ppc.c5
2 files changed, 10 insertions, 1 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index aabe22d..20793ed 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,6 +1,12 @@
2011-10-25 Alan Modra <amodra@gmail.com>
Apply mainline patches
+ 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-11 Alan Modra <amodra@gmail.com>
PR binutils/13278
* archive.c (bfd_generic_archive_p): Only check first element
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;