aboutsummaryrefslogtreecommitdiff
path: root/gold/ChangeLog
diff options
context:
space:
mode:
authorCary Coutant <ccoutant@gmail.com>2018-04-24 21:57:37 -0700
committerCary Coutant <ccoutant@gmail.com>2018-04-24 22:13:56 -0700
commit651d16203867f8013a0f78a2f2e24df8c02d1377 (patch)
tree80412e416cf3ffc70a81030fb558eae8f233dda0 /gold/ChangeLog
parent2ac93be706418f3b2aebeb22159a328023faed52 (diff)
downloadgdb-651d16203867f8013a0f78a2f2e24df8c02d1377.zip
gdb-651d16203867f8013a0f78a2f2e24df8c02d1377.tar.gz
gdb-651d16203867f8013a0f78a2f2e24df8c02d1377.tar.bz2
Fix bug with relocation addends and merge sections with --icf.
During --icf processing, gold was incorrectly processing the relocation addend for references to items in a merge section. PC-relative references and other forms of reference with a biased base address require a non-section local symbol, where the addend is purely the bias. gold/ PR gold/20642 PR gold/22820 * gc.h (gc_process_relocs): Flag STT_SECTION symbols in symvec. * icf.cc (get_section_contents): For merge sections, ignore the addend for relocations against non-section symbols.
Diffstat (limited to 'gold/ChangeLog')
-rw-r--r--gold/ChangeLog8
1 files changed, 8 insertions, 0 deletions
diff --git a/gold/ChangeLog b/gold/ChangeLog
index e38262e..26ccad1 100644
--- a/gold/ChangeLog
+++ b/gold/ChangeLog
@@ -1,5 +1,13 @@
2018-04-24 Cary Coutant <ccoutant@gmail.com>
+ PR gold/20642
+ PR gold/22820
+ * gc.h (gc_process_relocs): Flag STT_SECTION symbols in symvec.
+ * icf.cc (get_section_contents): For merge sections, ignore the
+ addend for relocations against non-section symbols.
+
+2018-04-24 Cary Coutant <ccoutant@gmail.com>
+
PR gold/16504
* dynobj.cc (Versions::symbol_section_contents): Don't set
VERSYM_HIDDEN flag for undefined symbols.