aboutsummaryrefslogtreecommitdiff
path: root/bfd/ChangeLog
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2017-09-19 11:59:30 +0930
committerAlan Modra <amodra@gmail.com>2017-09-19 12:18:49 +0930
commit3d13f3e9bda5aada68915f5d958f731ae79ed41d (patch)
tree9b9e1b4f3dec04148c1008f06dd9a4aee4119181 /bfd/ChangeLog
parentab502e635e78a6c6c9c8abf3072bfeedaca9c26f (diff)
downloadgdb-3d13f3e9bda5aada68915f5d958f731ae79ed41d.zip
gdb-3d13f3e9bda5aada68915f5d958f731ae79ed41d.tar.gz
gdb-3d13f3e9bda5aada68915f5d958f731ae79ed41d.tar.bz2
PR22150, ld keeps a version reference for gc'd symbols
elf_gc_sweep_symbol should run after verdefs are calculated, since the verdef code creates symbols for the versions. However, elf_gc_sweep_symbol needs to run before verrefs so as to not emit useless verrefs for symbols that are gc'd. I've also removed a _bfd_elf_link_renumber_dynsyms calls added by Maciej after I fussed about it when reviewing. On further examination the call appears to be unnecessary. Looking at renumber_dynsyms also made me realize that the test to exclude .gnu.version has been wrong since 2016-04-26 (git commit d5486c4372), so fix that too. PR 22150 * elflink.c (bfd_elf_size_dynamic_sections): Garbage collect symbols before calculating verrefs. Don't renumber dynsyms after gc. Exclude .gnu.version when zero or one dynsym. Localize some vars and reindent.
Diffstat (limited to 'bfd/ChangeLog')
-rw-r--r--bfd/ChangeLog8
1 files changed, 8 insertions, 0 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index c607549..eb62bc3 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,11 @@
+2017-09-19 Alan Modra <amodra@gmail.com>
+
+ PR 22150
+ * elflink.c (bfd_elf_size_dynamic_sections): Garbage collect
+ symbols before calculating verrefs. Don't renumber dynsyms
+ after gc. Exclude .gnu.version when zero or one dynsym.
+ Localize some vars and reindent.
+
2017-09-18 H.J. Lu <hongjiu.lu@intel.com>
PR ld/22148