aboutsummaryrefslogtreecommitdiff
path: root/gas/ChangeLog
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2018-12-19 12:21:56 -0800
committerH.J. Lu <hjl.tools@gmail.com>2018-12-19 12:22:12 -0800
commitb9519cfe9828b9ee5a73e74b4be83d46f33e6886 (patch)
treeaecea8a8890eb3cc814a80abdf7c0a976a889f01 /gas/ChangeLog
parentfc999e8020ffe8e1136da70f275bceafaa62a588 (diff)
downloadgdb-b9519cfe9828b9ee5a73e74b4be83d46f33e6886.zip
gdb-b9519cfe9828b9ee5a73e74b4be83d46f33e6886.tar.gz
gdb-b9519cfe9828b9ee5a73e74b4be83d46f33e6886.tar.bz2
x86: Properly handle PLT expression in directive
For PLT expressions, we should subtract the PLT relocation size only for jump instructions. Since PLT relocations are PC relative, we only allow "symbol@PLT" in PLT expression. gas/ PR gas/23997 * config/tc-i386.c (x86_cons): Check for invalid PLT expression. (md_apply_fix): Subtract the PLT relocation size only for jump instructions. * testsuite/gas/i386/reloc32.s: Add test for invalid PLT expression. * testsuite/gas/i386/reloc64.s: Likewise. * testsuite/gas/i386/ilp32/reloc64.s: Likewise. * testsuite/gas/i386/reloc32.l: Updated. * testsuite/gas/i386/reloc64.l: Likewise. * testsuite/gas/i386/ilp32/reloc64.l: Likewise. ld/ PR gas/23997 * testsuite/ld-i386/i386.exp: Run PR gas/23997 test. * testsuite/ld-x86-64/x86-64.exp: Likewise. * testsuite/ld-x86-64/pr23997a.s: New file. * testsuite/ld-x86-64/pr23997b.c: Likewise. * testsuite/ld-x86-64/pr23997c.c: Likewise.
Diffstat (limited to 'gas/ChangeLog')
-rw-r--r--gas/ChangeLog14
1 files changed, 14 insertions, 0 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index 0015920..b21680a 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,3 +1,17 @@
+2018-12-19 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR gas/23997
+ * config/tc-i386.c (x86_cons): Check for invalid PLT expression.
+ (md_apply_fix): Subtract the PLT relocation size only for jump
+ instructions.
+ * testsuite/gas/i386/reloc32.s: Add test for invalid PLT
+ expression.
+ * testsuite/gas/i386/reloc64.s: Likewise.
+ * testsuite/gas/i386/ilp32/reloc64.s: Likewise.
+ * testsuite/gas/i386/reloc32.l: Updated.
+ * testsuite/gas/i386/reloc64.l: Likewise.
+ * testsuite/gas/i386/ilp32/reloc64.l: Likewise.
+
2018-12-14 H.J. Lu <hongjiu.lu@intel.com>
PR ld/23900