mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2024-12-27 04:52:05 +08:00
dc2be3d2f6
This patch partially reverses: commit25070364b0
Author: H.J. Lu <hjl.tools@gmail.com> Date: Sat May 16 07:00:21 2015 -0700 Don't generate PLT relocations for now binding to support LD_AUDIT and LD_PROFILE with -z now. If there is an existing GOT relocation, it is still used to avoid PLT relocation against the same function symbol. bfd/ * elf32-i386.c (elf_i386_allocate_dynrelocs): Partially revert commit25070364b0
. * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Likewse. ld/ * testsuite/ld-i386/plt-pic2.dd: Updated. * testsuite/ld-i386/plt2.dd: Likewise. * testsuite/ld-i386/plt2.rd: Likewise. * testsuite/ld-i386/pr17689now.rd: Likewise. * testsuite/ld-ifunc/ifunc-16-i386-now.d: Likewise. * testsuite/ld-ifunc/ifunc-16-x86-64-now.d: Likewise. * testsuite/ld-ifunc/pr17154-i386-now.d: Likewise. * testsuite/ld-ifunc/pr17154-x86-64-now.d: Likewise. * testsuite/ld-x86-64/bnd-branch-1-now.d: Likewise. * testsuite/ld-x86-64/bnd-ifunc-2-now.d: Likewise. * testsuite/ld-x86-64/bnd-plt-1-now.d: Likewise. * testsuite/ld-x86-64/plt2.dd: Likewise. * testsuite/ld-x86-64/plt2.rd: Likewise. * testsuite/ld-x86-64/pr17689now.rd: Likewise. * testsuite/ld-x86-64/pr21038b-now.d: Likewise. * testsuite/ld-x86-64/pr21038c-now.d: Likewise.
53 lines
1.4 KiB
Makefile
53 lines
1.4 KiB
Makefile
#source: pr17154-x86.s
|
|
#ld: -z now -m elf_i386 -shared
|
|
#as: --32
|
|
#objdump: -dw
|
|
#target: x86_64-*-* i?86-*-*
|
|
#notarget: x86_64-*-nacl* i?86-*-nacl*
|
|
|
|
.*: +file format .*
|
|
|
|
|
|
Disassembly of section .plt:
|
|
|
|
0+1d0 <.plt>:
|
|
+[a-f0-9]+: ff b3 04 00 00 00 pushl 0x4\(%ebx\)
|
|
+[a-f0-9]+: ff a3 08 00 00 00 jmp \*0x8\(%ebx\)
|
|
+[a-f0-9]+: 00 00 add %al,\(%eax\)
|
|
...
|
|
|
|
0+1e0 <\*ABS\*@plt>:
|
|
+[a-f0-9]+: ff a3 0c 00 00 00 jmp \*0xc\(%ebx\)
|
|
+[a-f0-9]+: 68 18 00 00 00 push \$0x18
|
|
+[a-f0-9]+: e9 e0 ff ff ff jmp 1d0 <.plt>
|
|
|
|
0+1f0 <func1@plt>:
|
|
+[a-f0-9]+: ff a3 10 00 00 00 jmp \*0x10\(%ebx\)
|
|
+[a-f0-9]+: 68 00 00 00 00 push \$0x0
|
|
+[a-f0-9]+: e9 d0 ff ff ff jmp 1d0 <.plt>
|
|
|
|
0+200 <func2@plt>:
|
|
+[a-f0-9]+: ff a3 14 00 00 00 jmp \*0x14\(%ebx\)
|
|
+[a-f0-9]+: 68 08 00 00 00 push \$0x8
|
|
+[a-f0-9]+: e9 c0 ff ff ff jmp 1d0 <.plt>
|
|
|
|
0+210 <\*ABS\*@plt>:
|
|
+[a-f0-9]+: ff a3 18 00 00 00 jmp \*0x18\(%ebx\)
|
|
+[a-f0-9]+: 68 10 00 00 00 push \$0x10
|
|
+[a-f0-9]+: e9 b0 ff ff ff jmp 1d0 <.plt>
|
|
|
|
Disassembly of section .text:
|
|
|
|
0+220 <resolve1>:
|
|
+[a-f0-9]+: e8 cb ff ff ff call 1f0 <func1@plt>
|
|
|
|
0+225 <g1>:
|
|
+[a-f0-9]+: e9 e6 ff ff ff jmp 210 <\*ABS\*@plt>
|
|
|
|
0+22a <resolve2>:
|
|
+[a-f0-9]+: e8 d1 ff ff ff call 200 <func2@plt>
|
|
|
|
0+22f <g2>:
|
|
+[a-f0-9]+: e9 ac ff ff ff jmp 1e0 <\*ABS\*@plt>
|
|
#pass
|