aboutsummaryrefslogtreecommitdiff
path: root/bfd/ChangeLog
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2016-05-30 09:43:44 +0930
committerAlan Modra <amodra@gmail.com>2016-06-02 12:28:39 +0930
commit5b677558bc6c7b2477bb33c709e6017e68e7ae8c (patch)
treea2de1189d6388b1a57720e0efee53831055dba30 /bfd/ChangeLog
parentc273521c9aad56a596202dfaedc54182cf5543eb (diff)
downloadgdb-5b677558bc6c7b2477bb33c709e6017e68e7ae8c.zip
gdb-5b677558bc6c7b2477bb33c709e6017e68e7ae8c.tar.gz
gdb-5b677558bc6c7b2477bb33c709e6017e68e7ae8c.tar.bz2
Revert PR16467 change
This reverts the pr16467 change, which was incorrect due to faulty analysis of the pr16467 testcase. The failure was not due to a mismatch in symbol type (ifunc/non-ifunc) but due to a symbol loop being set up. See https://sourceware.org/ml/binutils/2016-06/msg00013.html for some rambling on versioned symbols and ELF shared library symbol overriding that explain this patch. bfd/ PR ld/20159 PR ld/16467 * elflink.c (_bfd_elf_merge_symbol): Revert PR16467 change. (_bfd_elf_add_default_symbol): Don't indirect to/from defined symbol given a version by a script different to the version of the symbol being added. (elf_link_add_object_symbols): Use _bfd_elf_strtab_save and _bfd_elf_strtab_restore. Don't fudge dynstr references. * elf-strtab.c (_bfd_elf_strtab_restore_size): Delete. (struct strtab_save): New. (_bfd_elf_strtab_save, _bfd_elf_strtab_restore): New functions. * elf-bfd.h (_bfd_elf_strtab_restore_size): Delete. (_bfd_elf_strtab_save, _bfd_elf_strtab_restore): Declare.
Diffstat (limited to 'bfd/ChangeLog')
-rw-r--r--bfd/ChangeLog16
1 files changed, 16 insertions, 0 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 358b0db..0b6cd34 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,19 @@
+2016-05-31 Alan Modra <amodra@gmail.com>
+
+ PR ld/20159
+ PR ld/16467
+ * elflink.c (_bfd_elf_merge_symbol): Revert PR16467 change.
+ (_bfd_elf_add_default_symbol): Don't indirect to/from defined
+ symbol given a version by a script different to the version
+ of the symbol being added.
+ (elf_link_add_object_symbols): Use _bfd_elf_strtab_save and
+ _bfd_elf_strtab_restore. Don't fudge dynstr references.
+ * elf-strtab.c (_bfd_elf_strtab_restore_size): Delete.
+ (struct strtab_save): New.
+ (_bfd_elf_strtab_save, _bfd_elf_strtab_restore): New functions.
+ * elf-bfd.h (_bfd_elf_strtab_restore_size): Delete.
+ (_bfd_elf_strtab_save, _bfd_elf_strtab_restore): Declare.
+
2016-06-01 Trevor Saunders <tbsaunde+binutils@tbsaunde.org>
* elf32-hppa.h: Add extern "C".