binutils-gdb/ld/testsuite/ld-i386
H.J. Lu 8f29211c3f i386: Don't allow GOTOFF relocation against IFUNC symbol for PIC
We can't use the PLT entry as the function address for PIC since the PIC
register may not be set up properly for indirect call.

bfd/

	PR ld/27998
	* elf32-i386.c (elf_i386_relocate_section): Don't allow GOTOFF
	relocation against IFUNC symbol for PIC.

ld/

	PR ld/27998
	* testsuite/ld-i386/pr27998a.d: Replace -shared with -e bar.
	* testsuite/ld-i386/pr27998b.d: Expect a linker error.
	* testsuite/ld-ifunc/ifunc-2-i386-now.d: Updated.
	* testsuite/ld-ifunc/ifunc-2-local-i386-now.d: Likewise.
	* testsuite/ld-ifunc/ifunc-2-i386.s: Replace @GOTOFF with @GOT.
	* testsuite/ld-ifunc/ifunc-2-local-i386.s: Likewise.
2022-07-21 11:40:27 -07:00
..
abs-iamcu.d
abs.d
abs.s
align-branch-1.d opcodes/i386: remove trailing whitespace from insns with zero operands 2022-05-27 14:12:33 +01:00
align-branch-1.s
alloc.d
alloc.s
alloc.t
branch1.d
branch1.s
call1.d
call1.s
call2.d
call2.s
call3.s
call3a.d
call3b.d
call3c.d
call3d.d
call3e.d
call3f.d
call3g.d
call3h.d
code16.d opcodes/i386: remove trailing whitespace from insns with zero operands 2022-05-27 14:12:33 +01:00
code16.t x86: Propery check PC16 reloc overflow in 16-bit mode instructions 2021-05-26 12:13:24 -07:00
combreloc.d
combreloc.s
compressed1.d
compressed1.s
copyreloc-lib.c
copyreloc-main1.rd
copyreloc-main2.rd
copyreloc-main.out
copyreloc-main.S
discarded1.d
discarded1.s
discarded1.t
dt-relr-1.s ld: Add simple DT_RELR tests 2022-01-12 06:04:52 -08:00
dt-relr-1a.d ld: Add simple DT_RELR tests 2022-01-12 06:04:52 -08:00
dt-relr-1b.d ld: Add simple DT_RELR tests 2022-01-12 06:04:52 -08:00
dummy.c
dummy.s
emit-relocs.rd
emit-relocs.s
export-class.exp elf: Support DT_RELR in linker tests 2022-01-12 06:04:51 -08:00
foo.s
got1.dd
got1.out
got1a.S
got1b.c
got1c.c
got1d.S
hidden1.d
hidden1.s
hidden2.d
hidden2.s
hidden3.d
hidden3.s
i386-export-class.rd
i386-export-class.xd
i386.exp x86: Disallow invalid relocations against protected symbols 2022-07-19 08:41:52 -07:00
iamcu-1.d
iamcu-2.d
iamcu-3.d
iamcu-4.d
ibt-plt-1.d opcodes/i386: remove trailing whitespace from insns with zero operands 2022-05-27 14:12:33 +01:00
ibt-plt-1.s
ibt-plt-2.s
ibt-plt-2a.d opcodes/i386: remove trailing whitespace from insns with zero operands 2022-05-27 14:12:33 +01:00
ibt-plt-2b.d
ibt-plt-2c.d opcodes/i386: remove trailing whitespace from insns with zero operands 2022-05-27 14:12:33 +01:00
ibt-plt-2d.d
ibt-plt-3.s
ibt-plt-3a.d opcodes/i386: remove trailing whitespace from insns with zero operands 2022-05-27 14:12:33 +01:00
ibt-plt-3b.d
ibt-plt-3c.d opcodes/i386: remove trailing whitespace from insns with zero operands 2022-05-27 14:12:33 +01:00
ibt-plt-3d.d
ifunc-1a.c
ifunc-1b.S
ifunc-1c.S
ifunc-1d.S
ifunc-textrel-1a.d
ifunc-textrel-1b.d
ifunc-textrel-2a.d
ifunc-textrel-2b.d
jmp1.d
jmp1.s
jmp2.d
jmp2.s
lea1.s
lea1a.d
lea1b.d
lea1c.d
lea1d.d
lea1e.d
lea1f.d
libno-plt-1b.dd i386: Ajdust more tests for opcodes/i386: remove trailing whitespace 2022-05-31 14:55:41 -07:00
libno-plt-1b.rd
ljmp1.d
ljmp1.s
ljmp2.d
ljmp2.s
ljmp.s
load1.d
load1.s
load2.d
load2.s
load3.d
load3.s
load4.s
load4a.d
load4b.d
load5.s
load5a.d
load5b.d
load6.d
load6.s
load7.d
load7.map
load7.s
mov1.s
mov1a.d
mov1b.d
mov2.s
mov2a.d
mov2b.d
mov3.d
mov3.s
no-plt-1a.dd i386: Ajdust more tests for opcodes/i386: remove trailing whitespace 2022-05-31 14:55:41 -07:00
no-plt-1a.rd
no-plt-1b.dd i386: Ajdust more tests for opcodes/i386: remove trailing whitespace 2022-05-31 14:55:41 -07:00
no-plt-1b.rd
no-plt-1c.dd i386: Ajdust more tests for opcodes/i386: remove trailing whitespace 2022-05-31 14:55:41 -07:00
no-plt-1c.rd
no-plt-1d.dd i386: Ajdust more tests for opcodes/i386: remove trailing whitespace 2022-05-31 14:55:41 -07:00
no-plt-1d.rd
no-plt-1e.dd i386: Ajdust more tests for opcodes/i386: remove trailing whitespace 2022-05-31 14:55:41 -07:00
no-plt-1e.rd
no-plt-1f.dd i386: Ajdust more tests for opcodes/i386: remove trailing whitespace 2022-05-31 14:55:41 -07:00
no-plt-1f.rd
no-plt-1g.dd i386: Ajdust more tests for opcodes/i386: remove trailing whitespace 2022-05-31 14:55:41 -07:00
no-plt-1g.rd
no-plt-1h.dd i386: Ajdust more tests for opcodes/i386: remove trailing whitespace 2022-05-31 14:55:41 -07:00
no-plt-1h.rd
no-plt-1i.dd i386: Ajdust more tests for opcodes/i386: remove trailing whitespace 2022-05-31 14:55:41 -07:00
no-plt-1i.rd
no-plt-1j.dd i386: Ajdust more tests for opcodes/i386: remove trailing whitespace 2022-05-31 14:55:41 -07:00
no-plt-1j.rd
no-plt-check1a.S
no-plt-check1b.S
no-plt-extern1a.S
no-plt-extern1b.S
no-plt-func1.c
no-plt-main1.c
no-plt.exp Update year range in copyright notice of binutils files 2022-01-02 12:04:28 +10:30
nogot1.d
nogot1.s
nogot2.d
nogot2.s
pass.c
pass.out
pcrel8.d
pcrel8.s
pcrel16-2.d x86: Restore PC16 relocation overflow check 2021-05-28 09:34:28 -07:00
pcrel16-2.s x86: correct overflow checking for 16-bit PC-relative relocs 2021-04-26 10:41:35 +02:00
pcrel16.d
pcrel16.s
pcrel16abs.d
pcrel16abs.s
pie1.d -z relro relaxation and ld script SIZEOF 2022-06-27 12:28:59 +09:30
pie1.s
plt2.dd
plt2.rd
plt2.s
plt-lib.c
plt-main1.c
plt-main1.rd
plt-main2.c
plt-main2.rd
plt-main3.c
plt-main3.rd
plt-main4.c
plt-main4.rd
plt-main5.c
plt-main-ibt.dd i386: Ajdust more tests for opcodes/i386: remove trailing whitespace 2022-05-31 14:55:41 -07:00
plt-main.out
plt-main.rd
plt-pic2.dd
plt-pic.pd
plt-pic.s
plt-pie-ibt.dd i386: Ajdust more tests for opcodes/i386: remove trailing whitespace 2022-05-31 14:55:41 -07:00
plt.pd
plt.s
pltgot-1.d
pltgot-1.s
pltgot-2.d
pltlib.s
pr12570a.d
pr12570a.s
pr12570b.d
pr12570b.s
pr12627.d
pr12627.s
pr12627.t
pr12718.d
pr12718.s
pr12921.d
pr12921.s
pr13302.d
pr13302.s
pr14215.d
pr14215.s
pr17057.d
pr17057.s
pr17306a.s
pr17306b.s
pr17689.out
pr17689.rd
pr17689a.c
pr17689a.t
pr17689b.S
pr17689now.rd
pr17689ver.rd
pr17709.err x86: Disallow invalid relocations against protected symbols 2022-07-19 08:41:52 -07:00
pr17709a.s
pr17709b.s
pr17827.rd
pr17935-1.d
pr17935-1.s
pr17935-2.d
pr17935-2.s
pr18801.s
pr18801a.d
pr18801b.d
pr18815.d
pr18815.s
pr18900.out
pr18900a.c
pr18900a.rd
pr18900b.c
pr18900b.rd
pr18900c.c
pr19031.out
pr19031a.c
pr19031b.S
pr19031c.c
pr19175.d
pr19175.s
pr19175.t
pr19319.dd
pr19319a.S
pr19319b.S
pr19539.d
pr19539.s
pr19539.t
pr19609-1.s
pr19609-1a.d
pr19609-1b.d
pr19609-1c.d
pr19609-1d.d
pr19609-1e.d
pr19609-1f.d
pr19609-1g.d
pr19609-1h.d
pr19609-1i.d
pr19609-2.s
pr19609-2a.d
pr19609-2b.d
pr19609-2c.d
pr19615.d
pr19615.s
pr19636-1.s
pr19636-1a.d
pr19636-1b.d
pr19636-1c.d
pr19636-1d.d
pr19636-1e.d
pr19636-1f.d
pr19636-1g.d
pr19636-1h.d
pr19636-1i.d
pr19636-1j.d
pr19636-1k.d
pr19636-1l.d
pr19636-2.s
pr19636-2a.d
pr19636-2b.d
pr19636-2c.d
pr19636-2d.d
pr19636-2e.d
pr19636-3.s
pr19636-3a.d
pr19636-3b.d
pr19636-3c.d
pr19636-3d.d
pr19636-3e.d
pr19636-3f.d
pr19636-3g.d
pr19636-3h.d
pr19636-3i.d
pr19636-4.s
pr19636-4a.d
pr19636-4b.d
pr19636-4c.d
pr19636-4d.d
pr19645.d
pr19645.s
pr19704.out
pr19704a.c
pr19704b.c
pr19827.rd
pr19827a.S
pr19827b.S
pr19939.s
pr19939a.d
pr19939b.d
pr20117.d
pr20117.s
pr20244-1.s
pr20244-1a.d
pr20244-1b.d
pr20244-1c.d
pr20244-2.s
pr20244-2a.d opcodes/i386: remove trailing whitespace from insns with zero operands 2022-05-27 14:12:33 +01:00
pr20244-2b.d
pr20244-2c.d
pr20244-2d.d
pr20244-3a.c
pr20244-3b.S
pr20244-3c.S
pr20244-3d.S
pr20244-4.s
pr20244-4a.d opcodes/i386: remove trailing whitespace from insns with zero operands 2022-05-27 14:12:33 +01:00
pr20244-4b.d
pr20244-4c.d
pr20253-1a.c
pr20253-1b.S
pr20253-1c.S
pr20253-1d.S
pr20253-2a.c
pr20253-2b.S
pr20253-2c.S
pr20253-2d.S
pr20253-3.d
pr20253-3.s
pr20253-4.s
pr20253-4a.d
pr20253-4b.d
pr20253-4c.d
pr20253-5.d
pr20253-5.s
pr20515.d
pr20515.s
pr20830.d Revert "elf: Remove the 1-page gap before the RELRO segment" 2022-02-07 13:42:41 +10:30
pr20830.s
pr21168a.c
pr21168b.S
pr21884.d
pr21884.t
pr21997-1.err x86: Disallow invalid relocation against protected symbol 2022-02-11 10:24:54 -08:00
pr21997-1a.S
pr21997-1b.c
pr21997-1c.S
pr22001-1a.c
pr22001-1b.c
pr22001-1c.S
pr22115-1.s
pr22115-1a.d
pr22115-1b.d
pr22115-1c.d
pr22115-1d.d
pr22135.d
pr22135.s
pr22782.d
pr22782.s
pr22842a.c
pr22842b.S
pr22929.d
pr22929.s
pr23189.d
pr23189.s
pr23189.t
pr23194.d
pr23194.map
pr23194.s
pr23372a.d
pr23372a.s
pr23372b.d
pr23372b.s
pr23372c.d
pr23372c.s
pr23372d.d
pr23486a.d
pr23486b.d
pr23486c.d
pr23486d.d
pr23854.d
pr23854.s
pr23930.d opcodes/i386: remove trailing whitespace from insns with zero operands 2022-05-27 14:12:33 +01:00
pr24276.dso
pr24276.warn
pr24322a.d
pr24322b.d
pr26018.d opcodes/i386: remove trailing whitespace from insns with zero operands 2022-05-27 14:12:33 +01:00
pr26263.d opcodes/i386: remove trailing whitespace from insns with zero operands 2022-05-27 14:12:33 +01:00
pr26711-1.d
pr26711-2.d
pr26711-3.d
pr26869.d elf: Support DT_RELR in linker tests 2022-01-12 06:04:51 -08:00
pr26869.s
pr27193.dd opcodes/i386: remove trailing whitespace from insns with zero operands 2022-05-27 14:12:33 +01:00
pr27193a.o.bz2
pr27193b.s
pr27491-1.s x86: Skip __[start|stop]_SECNAME for --gc-sections -z start-stop-gc 2021-12-02 03:55:10 -08:00
pr27491-1a.d ld: Extract _bfd_elf_link_iterate_on_relocs 2022-01-07 17:58:20 -08:00
pr27491-1b.d x86: Skip __[start|stop]_SECNAME for --gc-sections -z start-stop-gc 2021-12-02 03:55:10 -08:00
pr27491-1c.d x86: Skip __[start|stop]_SECNAME for --gc-sections -z start-stop-gc 2021-12-02 03:55:10 -08:00
pr27491-2.d x86: Skip __[start|stop]_SECNAME for --gc-sections -z start-stop-gc 2021-12-02 03:55:10 -08:00
pr27491-2.s x86: Skip __[start|stop]_SECNAME for --gc-sections -z start-stop-gc 2021-12-02 03:55:10 -08:00
pr27491-3.d x86: Skip __[start|stop]_SECNAME for --gc-sections -z start-stop-gc 2021-12-02 03:55:10 -08:00
pr27491-3.s x86: Skip __[start|stop]_SECNAME for --gc-sections -z start-stop-gc 2021-12-02 03:55:10 -08:00
pr27491-4.d x86: Skip __[start|stop]_SECNAME for --gc-sections -z start-stop-gc 2021-12-02 03:55:10 -08:00
pr27491-4a.s x86: Skip __[start|stop]_SECNAME for --gc-sections -z start-stop-gc 2021-12-02 03:55:10 -08:00
pr27491-4b.s x86: Skip __[start|stop]_SECNAME for --gc-sections -z start-stop-gc 2021-12-02 03:55:10 -08:00
pr27998a.d i386: Don't allow GOTOFF relocation against IFUNC symbol for PIC 2022-07-21 11:40:27 -07:00
pr27998a.s x86: Count PLT for GOTOFF relocation against IFUNC symbol 2021-06-19 20:21:04 -07:00
pr27998b.d i386: Don't allow GOTOFF relocation against IFUNC symbol for PIC 2022-07-21 11:40:27 -07:00
pr27998b.s x86: Count PLT for GOTOFF relocation against IFUNC symbol 2021-06-19 20:21:04 -07:00
pr28870.d i386: Allow GOT32 relocations against ABS symbols 2022-02-07 16:04:10 -08:00
pr28870.s i386: Allow GOT32 relocations against ABS symbols 2022-02-07 16:04:10 -08:00
pr28875.err x86: Disallow invalid relocation against protected symbol 2022-02-11 10:24:54 -08:00
pr28875a.c x86: Disallow invalid relocation against protected symbol 2022-02-11 10:24:54 -08:00
pr28875b.c x86: Disallow invalid relocation against protected symbol 2022-02-11 10:24:54 -08:00
pr28894.d i386: Update I386_NEED_DYNAMIC_RELOC_TYPE_P for DT_TEXTREL 2022-02-15 15:08:17 -08:00
pr28894.s i386: Update I386_NEED_DYNAMIC_RELOC_TYPE_P for DT_TEXTREL 2022-02-15 15:08:17 -08:00
property-1.r
property-1a.r
property-2.r
property-2a.r
property-3.r
property-3a.r
property-4.r
property-4a.r
property-5.r
property-5a.r
property-6.r
property-6a.c
property-6b.c
property-6c.S
property-7.r
property-7a.r
property-no-copy.S
property-stack.S
property-unsorted-1.S
property-unsorted-2.S
property-x86-1.S
property-x86-2.S
property-x86-3.d
property-x86-3.s
property-x86-4a.d
property-x86-4a.s
property-x86-4b.d
property-x86-4b.s
property-x86-5.d
property-x86-6.d
property-x86-cet1.d
property-x86-cet2a.d
property-x86-cet2b.d
property-x86-cet3a.d
property-x86-cet3b.d
property-x86-cet4a.d
property-x86-cet4b.d
property-x86-cet5a.d
property-x86-cet5b.d
property-x86-cet6.d
property-x86-empty.s
property-x86-ibt1a.d
property-x86-ibt1b.d
property-x86-ibt2.d
property-x86-ibt3a.d
property-x86-ibt3b.d
property-x86-ibt4.d
property-x86-ibt5.d
property-x86-ibt.s
property-x86-isa1.d
property-x86-isa2.d
property-x86-isa3.d
property-x86-isa4.d
property-x86-shstk1a.d
property-x86-shstk1b.d
property-x86-shstk2.d
property-x86-shstk3a.d
property-x86-shstk3b.d
property-x86-shstk4.d
property-x86-shstk5.d
property-x86-shstk.s
protected1.d x86: Make protected symbols local for -shared 2022-07-19 08:41:52 -07:00
protected1.s
protected2.d opcodes/i386: remove trailing whitespace from insns with zero operands 2022-05-27 14:12:33 +01:00
protected2.s
protected3.d x86: Make protected symbols local for -shared 2022-07-19 08:41:52 -07:00
protected3.s
protected4.d
protected4.s
protected5.d
protected5.s
protected6.s
protected6a.d x86: Make protected symbols local for -shared 2022-07-19 08:41:52 -07:00
protected6b.d
protected7.d opcodes/i386: remove trailing whitespace from insns with zero operands 2022-05-27 14:12:33 +01:00
protected7.s
reloc.d
reloc.s
report-reloc-1.d elf: Support DT_RELR in linker tests 2022-01-12 06:04:51 -08:00
report-reloc-1.l ld/x86: Update -z report-relative-reloc 2022-01-04 11:12:01 -08:00
report-reloc-1.s
start.s
tls-def1.c
tls-gd1.S
tls-ld1.S
tls-main1.c
tls.exp Update year range in copyright notice of binutils files 2022-01-02 12:04:28 +10:30
tlsbin2.dd
tlsbin2.rd
tlsbin2.sd
tlsbin2.td
tlsbin.dd
tlsbin.rd
tlsbin.s
tlsbin.sd
tlsbin.td
tlsbindesc.dd
tlsbindesc.rd
tlsbindesc.s
tlsbindesc.sd
tlsbindesc.td
tlsbinpic2.s
tlsbinpic.s
tlsdesc1a.c
tlsdesc1b.c
tlsdesc2.d
tlsdesc.dd
tlsdesc.rd
tlsdesc.s
tlsdesc.sd
tlsdesc.td
tlsg.s
tlsg.sd
tlsgd1.dd
tlsgd1.s
tlsgd2.d
tlsgd2.s
tlsgd3.dd
tlsgd3.s
tlsgd4.d
tlsgd4.s
tlsgdesc.dd
tlsgdesc.rd
tlsgdesc.s
tlsie1.dd
tlsie1.s
tlsie2.d
tlsie2.s
tlsie3.d
tlsie3.s
tlsie4.d
tlsie4.s
tlsie5.d
tlsie5.s
tlsindntpoff.dd
tlsindntpoff.s
tlsld1.dd
tlsld1.s
tlsld2.dd
tlsld2.s
tlslib.s
tlsnopic1.s
tlsnopic2.s
tlsnopic.dd
tlsnopic.rd Fix x86 "FAIL: TLS -fno-pic -shared" 2021-09-22 10:24:05 +09:30
tlsnopic.sd
tlspic1.s
tlspic2.dd
tlspic2.rd
tlspic2.s
tlspic2.sd
tlspic2.td
tlspic3.s
tlspic.dd
tlspic.rd
tlspic.sd
tlspic.td
tlspie1.d
tlspie1.s
tlspie2.d
tlspie2.s
tlspie3.s
tlspie3a.d
tlspie3b.d opcodes/i386: remove trailing whitespace from insns with zero operands 2022-05-27 14:12:33 +01:00
tlspie3c.d opcodes/i386: remove trailing whitespace from insns with zero operands 2022-05-27 14:12:33 +01:00
undefweak.s
undefweaka.d
undefweakb.d
vxworks1-lib.dd Ajdust more tests for opcodes/i386: remove trailing whitespace 2022-05-31 11:25:09 +09:30
vxworks1-lib.nd
vxworks1-lib.rd
vxworks1-lib.s
vxworks1-lib.td
vxworks1-static.d
vxworks1.dd Ajdust more tests for opcodes/i386: remove trailing whitespace 2022-05-31 11:25:09 +09:30
vxworks1.ld
vxworks1.rd
vxworks1.s
vxworks2-static.sd
vxworks2.s
vxworks2.sd
warn1.d
warn1.s
weakundef1.c
zero.s