[binutils-gdb] i386: Accept both .plt.got and .plt.sec sections
H.J.Lu
hjl@sourceware.org
Mon Nov 12 17:34:00 GMT 2018
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=f77984e974c13d54a5c6a1e5d443c0c4564e48e8
commit f77984e974c13d54a5c6a1e5d443c0c4564e48e8
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Mon Nov 12 09:29:49 2018 -0800
i386: Accept both .plt.got and .plt.sec sections
Glibc commit:
commit a15529fda8d132621328c3fe32997a3d9c55aef4
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Mon May 14 09:23:55 2018 -0700
i386: Replace PREINIT_FUNCTION@PLT with *%eax in call
Since we have loaded address of PREINIT_FUNCTION into %eax, we can
avoid extra branch to PLT slot.
changed __gmon_start__ relocations in crt1.o from
00000015 0000092b R_386_GOT32X 00000000 __gmon_start__
0000001e 00000904 R_386_PLT32 00000000 __gmon_start__
to
00000015 00000a2b R_386_GOT32X 00000000 __gmon_start__
As the result, .plt.sec section may be generated instead of .plt.got
section, depending on __gmon_start__ relocations.
* testsuite/ld-i386/plt-main-ibt.dd: Accept both .plt.got and
.plt.sec sections.
Diff:
---
ld/ChangeLog | 5 +++++
ld/testsuite/ld-i386/plt-main-ibt.dd | 2 +-
2 files changed, 6 insertions(+), 1 deletion(-)
diff --git a/ld/ChangeLog b/ld/ChangeLog
index 510e333..803662f 100644
--- a/ld/ChangeLog
+++ b/ld/ChangeLog
@@ -1,3 +1,8 @@
+2018-11-12 H.J. Lu <hongjiu.lu@intel.com>
+
+ * testsuite/ld-i386/plt-main-ibt.dd: Accept both .plt.got and
+ .plt.sec sections.
+
2018-11-12 Nick Clifton <nickc@redhat.com>
PR 10865
diff --git a/ld/testsuite/ld-i386/plt-main-ibt.dd b/ld/testsuite/ld-i386/plt-main-ibt.dd
index 18240a2..6a1d4bf 100644
--- a/ld/testsuite/ld-i386/plt-main-ibt.dd
+++ b/ld/testsuite/ld-i386/plt-main-ibt.dd
@@ -1,5 +1,5 @@
#...
-Disassembly of section .plt.got:
+Disassembly of section .plt.(sec|got):
[a-f0-9]+ <[_a-z]+@plt>:
[ ]*[a-f0-9]+: f3 0f 1e fb endbr32
More information about the Binutils-cvs
mailing list