binutils-gdb/ld/testsuite/ld-x86-64
H.J. Lu 5db4f0d383 Create a PLT entry for R_X86_64_PC32 in non-code sections
Since something like ".long foo - ." may be used as pointer, we make
sure that PLT is used if foo is a function defined in a shared library.

bfd/

	PR ld/19031
	* elf64-x86-64.c (elf_x86_64_check_relocs): Set
	pointer_equality_needed for R_X86_64_PC32 reloc in non-code
	sections.

ld/testsuite/

	PR ld/19031
	* ld-x86-64/x86-64.exp: Run PR ld/19031 test.
	* ld-x86-64/pr19031.out: New file.
	* ld-x86-64/pr19031a.c: Likewise.
	* ld-x86-64/pr19031b.S: Likewise.
	* ld-x86-64/pr19031c.c: Likewise.
2015-10-01 10:49:33 -07:00
..
32bit.s
64bit.s
abs-k1om.d
abs-l1om.d
abs.d
bnd-branch-1.d
bnd-branch-1.s
bnd-ifunc-1.d Add -z bndplt to generate BND prefix in PLT entries 2014-11-18 05:40:17 -08:00
bnd-ifunc-1.s
bnd-ifunc-2.d Add -z bndplt to generate BND prefix in PLT entries 2014-11-18 05:40:17 -08:00
bnd-ifunc-2.s
bnd-plt-1.d Add -z bndplt to generate BND prefix in PLT entries 2014-11-18 05:40:17 -08:00
compressed1.d Use nm/readelf with "failif" 2015-02-19 04:45:27 -08:00
compressed1.s
copyreloc-lib.c X86-64: Allow copy relocs for building PIE 2014-12-02 15:19:25 -08:00
copyreloc-main1.rd X86-64: Allow copy relocs for building PIE 2014-12-02 15:19:25 -08:00
copyreloc-main2.rd X86-64: Allow copy relocs for building PIE 2014-12-02 15:19:25 -08:00
copyreloc-main.out X86-64: Allow copy relocs for building PIE 2014-12-02 15:19:25 -08:00
copyreloc-main.S Replace copyreloc-main.c with copyreloc-main.S 2014-12-03 08:52:00 -08:00
discarded1.d
discarded1.s
discarded1.t
dummy.s
dwarfreloc1.s
dwarfreloc2.s
dwarfreloc.exp ChangeLog rotatation and copyright year update 2015-01-02 00:53:45 +10:30
dwarfreloc.rd
export-class.exp ChangeLog rotatation and copyright year update 2015-01-02 00:53:45 +10:30
foo.s
gotplt1.d Add assembler support for @gotplt 2014-11-13 11:09:40 -08:00
gotplt1.s Add assembler support for @gotplt 2014-11-13 11:09:40 -08:00
hidden1.d
hidden1.s
hidden2.d
hidden2.s
hidden3.d
hidden3.s
hidden4.d Replace SYMBOLIC_BIND with SYMBOL_REFERENCES_LOCAL 2015-04-11 07:56:48 -07:00
hidden4.s Replace SYMBOLIC_BIND with SYMBOL_REFERENCES_LOCAL 2015-04-11 07:56:48 -07:00
hidden5.d Replace SYMBOLIC_BIND with SYMBOL_REFERENCES_LOCAL 2015-04-11 07:56:48 -07:00
hidden5.s Replace SYMBOLIC_BIND with SYMBOL_REFERENCES_LOCAL 2015-04-11 07:56:48 -07:00
ia32-1.d
ia32-2.d
ia32-3.d
ilp32-1.d
ilp32-2.d
ilp32-3.d
ilp32-4-nacl.d
ilp32-4.d Don't hardcode offset of .shstrtab section 2015-04-20 09:55:47 -07:00
ilp32-4.s
ilp32-5.d
ilp32-5.s
ilp32-6.d
ilp32-6.s
ilp32-7.d
ilp32-7.s
ilp32-8.d
ilp32-8.s
ilp32-9.d
ilp32-9.s
ilp32-10.d
ilp32-10.s
ilp32-11.d
ilp32-11.s
incompatible.l
lea1.s
lea1a.d
lea1b.d
lea1c.d
lea1d.d
lea1e.d
lea1f.d
lea1g.d
lea1h.d
lea1i.d
lea1j.d
lea1k.d
lea1l.d
line.exp ChangeLog rotatation and copyright year update 2015-01-02 00:53:45 +10:30
lp64-1.d
lp64-2.d
lp64-3.d
mixed1a.s
mixed1b.s
mixed2a.s
mixed2b.s
mov1.s
mov1a.d
mov1b.d
mov1c.d
mov1d.d
mpx1.out
mpx1a.c
mpx1a.rd Add -z bndplt to generate BND prefix in PLT entries 2014-11-18 05:40:17 -08:00
mpx1b.c
mpx1c.c
mpx1c.rd Add -z bndplt to generate BND prefix in PLT entries 2014-11-18 05:40:17 -08:00
mpx2.out
mpx2a.c
mpx2a.rd Add -z bndplt to generate BND prefix in PLT entries 2014-11-18 05:40:17 -08:00
mpx2b.c
mpx2c.c
mpx2c.rd Add -z bndplt to generate BND prefix in PLT entries 2014-11-18 05:40:17 -08:00
mpx3.dd Skip PLT for function pointer initialization 2015-09-01 05:06:33 -07:00
mpx3a.s Add -z bndplt to generate BND prefix in PLT entries 2014-11-18 05:40:17 -08:00
mpx3b.s Add -z bndplt to generate BND prefix in PLT entries 2014-11-18 05:40:17 -08:00
mpx4.dd Add -z bndplt to generate BND prefix in PLT entries 2014-11-18 05:40:17 -08:00
mpx4a.s Add -z bndplt to generate BND prefix in PLT entries 2014-11-18 05:40:17 -08:00
mpx4b.s Add -z bndplt to generate BND prefix in PLT entries 2014-11-18 05:40:17 -08:00
mpx.exp Add $PLT_CFLAGS to -fPIC for run_cc_link_tests 2015-07-27 05:15:48 -07:00
nogot1.d
nogot1.s
nogot2.d
nogot2.s
pcrel8.d
pcrel16.d
pie1.d Use nm/readelf with "failif" 2015-02-19 04:45:27 -08:00
pie1.s Don't complain about -fPIC for undefined symbol 2015-01-15 11:08:59 -08:00
plt-lib.c Add function and function pointer tests 2014-11-20 12:41:11 -08:00
plt-main1.c Add function and function pointer tests 2014-11-20 12:41:11 -08:00
plt-main1.rd Update plt-main tests for x32 2014-11-20 13:29:41 -08:00
plt-main2.c Add function and function pointer tests 2014-11-20 12:41:11 -08:00
plt-main2.rd Update plt-main tests for x32 2014-11-20 13:29:41 -08:00
plt-main3.c Add function and function pointer tests 2014-11-20 12:41:11 -08:00
plt-main3.rd Update plt-main tests for x32 2014-11-20 13:29:41 -08:00
plt-main4.c Add function and function pointer tests 2014-11-20 12:41:11 -08:00
plt-main4.rd Update plt-main tests for x32 2014-11-20 13:29:41 -08:00
plt-main5.c Add function and function pointer tests 2014-11-20 12:41:11 -08:00
plt-main-bnd.dd Optimize out i386/x86-64 JUMP_SLOT relocation 2014-11-25 05:05:39 -08:00
plt-main.out Add function and function pointer tests 2014-11-20 12:41:11 -08:00
plt-main.rd Optimize out i386/x86-64 JUMP_SLOT relocation 2014-11-25 05:05:39 -08:00
plt-nacl.pd
plt-pic.s
plt.pd
plt.s
pltgot-1.d Keep .plt section and DT_PLTGOT for prelink 2015-06-24 13:47:37 -07:00
pltgot-1.s Allocate the first .plt entry space only if needed 2015-05-12 13:11:48 -07:00
pltgot-2.d Keep .plt section and DT_PLTGOT for prelink 2015-06-24 13:47:37 -07:00
pltlib.s
pr12570a.d
pr12570a.s
pr12570b.d
pr12570b.s
pr12718.d
pr12718.s
pr12921.d
pr12921.s
pr13082-1.s
pr13082-1a.d
pr13082-1b.d
pr13082-2.s
pr13082-2a.d
pr13082-2b.d
pr13082-3.s
pr13082-3a.d
pr13082-3b.d
pr13082-4.s
pr13082-4a.d
pr13082-4b.d
pr13082-5.s
pr13082-5a.d
pr13082-5b.d
pr13082-6.s
pr13082-6a.d
pr13082-6b.d
pr13947.d
pr13947.s
pr14207.d ld/x86-64: adjust pr14207 test expectations 2015-01-08 14:10:36 +01:00
pr14207.s
pr14215.d
pr14215.s
pr17306a.s
pr17306b.s
pr17618.d Don't run pr17618 test on x32 2014-11-20 13:38:31 -08:00
pr17618.s Check PC-relative offset overflow in PLT entry 2014-11-18 11:04:46 -08:00
pr17689.out Only discard space for pc-relative relocs symbols 2015-01-11 08:04:27 -08:00
pr17689.rd Handle weak alias for PIE with copy reloc 2014-12-13 23:39:56 -08:00
pr17689a.c Handle weak alias for PIE with copy reloc 2014-12-13 23:39:56 -08:00
pr17689b.S Only discard space for pc-relative relocs symbols 2015-01-11 08:04:27 -08:00
pr17689now.rd Don't generate PLT relocations for now binding 2015-05-16 07:00:55 -07:00
pr17709-nacl.rd Add extern_protected_data and set it for x86 2015-04-10 11:06:34 -07:00
pr17709.rd Add extern_protected_data and set it for x86 2015-04-10 11:06:34 -07:00
pr17709a.s Add extern_protected_data and set it for x86 2015-04-10 11:06:34 -07:00
pr17709b.s Add extern_protected_data and set it for x86 2015-04-10 11:06:34 -07:00
pr17827.rd Only discard space for pc-relative relocs symbols 2015-01-11 08:04:27 -08:00
pr17935-1.d Issue relocation in RO section warning for -z text 2015-02-07 05:28:06 -08:00
pr17935-1.s Issue relocation in RO section warning for -z text 2015-02-07 05:28:06 -08:00
pr17935-2.d Issue relocation in RO section warning for -z text 2015-02-07 05:28:06 -08:00
pr17935-2.s Issue relocation in RO section warning for -z text 2015-02-07 05:28:06 -08:00
pr18160.d Don't run ld-x86-64/pr18160.d for x86_64-*-nacl* 2015-03-27 14:40:43 -07:00
pr18160.s Skip gc-sections if relocation is incompatible 2015-03-26 08:22:55 -07:00
pr18160.t Skip gc-sections if relocation is incompatible 2015-03-26 08:22:55 -07:00
pr18176.d Rewrite relro adjusting code 2015-04-22 23:19:59 +09:30
pr18176.s Add a testcase for PR ld/18176 2015-04-01 04:24:24 -07:00
pr18176.t Add a testcase for PR ld/18176 2015-04-01 04:24:24 -07:00
pr18801.d Issue an error for read-only segment with dynamic IFUNC relocations 2015-08-13 04:31:38 -07:00
pr18801.s Issue an error for read-only segment with dynamic IFUNC relocations 2015-08-13 04:31:38 -07:00
pr18815.d Set EI_OSABI to ELFOSABI_GNU for local IFUNC symbols 2015-08-12 13:47:41 -07:00
pr18815.s Set EI_OSABI to ELFOSABI_GNU for local IFUNC symbols 2015-08-12 13:47:41 -07:00
pr18900.out Skip PLT for function pointer initialization 2015-09-01 05:06:33 -07:00
pr18900a.c Skip PLT for function pointer initialization 2015-09-01 05:06:33 -07:00
pr18900a.rd Skip PLT for function pointer initialization 2015-09-01 05:06:33 -07:00
pr18900b.c Skip PLT for function pointer initialization 2015-09-01 05:06:33 -07:00
pr18900b.rd Skip PLT for function pointer initialization 2015-09-01 05:06:33 -07:00
pr18900c.c Skip PLT for function pointer initialization 2015-09-01 05:06:33 -07:00
pr19013-nacl.d Update ld-x86-64/pr19013-nacl.d 2015-10-01 09:31:16 +09:30
pr19013-x32.d Revert "Also check e_machine when merging sections" 2015-10-01 07:41:28 +09:30
pr19013.d Pass -m elf_x86_64 to ld for 64-bit test 2015-09-30 10:20:34 -07:00
pr19013.s Also check e_machine when merging sections 2015-09-30 05:37:49 -07:00
pr19031.out Create a PLT entry for R_X86_64_PC32 in non-code sections 2015-10-01 10:49:33 -07:00
pr19031a.c Create a PLT entry for R_X86_64_PC32 in non-code sections 2015-10-01 10:49:33 -07:00
pr19031b.S Create a PLT entry for R_X86_64_PC32 in non-code sections 2015-10-01 10:49:33 -07:00
pr19031c.c Create a PLT entry for R_X86_64_PC32 in non-code sections 2015-10-01 10:49:33 -07:00
protected1.d
protected1.s
protected2-k1om.d
protected2-l1om.d
protected2.d
protected2.s
protected3-k1om.d
protected3-l1om.d
protected3.d Add extern_protected_data and set it for x86 2015-04-10 11:06:34 -07:00
protected3.s Add extern_protected_data and set it for x86 2015-04-10 11:06:34 -07:00
protected4.d
protected4.s
protected5.d
protected5.s
protected6.s Check GOTOFF reloc against protected data on x86 2015-04-10 14:02:23 -07:00
protected6a.d Replace SYMBOLIC_BIND with SYMBOL_REFERENCES_LOCAL 2015-04-11 07:56:48 -07:00
protected6b.d Add -z noextern-protected-data to ld for ELF/x86 2015-04-14 04:13:11 -07:00
protected7.s Check GOTOFF reloc against protected data on x86 2015-04-10 14:02:23 -07:00
protected7a.d Check GOTOFF reloc against protected data on x86 2015-04-10 14:02:23 -07:00
protected7b.d Check GOTOFF reloc against protected data on x86 2015-04-10 14:02:23 -07:00
simple.c
split-by-file1.s
split-by-file2.s
split-by-file-nacl.rd Don't hardcode offset of .shstrtab section 2015-04-20 09:55:47 -07:00
split-by-file.rd Don't hardcode offset of .shstrtab section 2015-04-20 09:55:47 -07:00
start.s
tlsbin-nacl.rd Properly place the NULL STT_FILE symbol 2015-02-16 04:54:45 -08:00
tlsbin.dd
tlsbin.rd Properly place the NULL STT_FILE symbol 2015-02-16 04:54:45 -08:00
tlsbin.s
tlsbin.sd
tlsbin.td
tlsbindesc-nacl.rd Properly place the NULL STT_FILE symbol 2015-02-16 04:54:45 -08:00
tlsbindesc.dd
tlsbindesc.rd Properly place the NULL STT_FILE symbol 2015-02-16 04:54:45 -08:00
tlsbindesc.s
tlsbindesc.sd
tlsbindesc.td
tlsbinpic.s
tlsdesc-nacl.pd
tlsdesc-nacl.rd Properly place the NULL STT_FILE symbol revistited 2015-02-18 00:31:52 +10:30
tlsdesc.dd
tlsdesc.pd
tlsdesc.rd Properly place the NULL STT_FILE symbol revistited 2015-02-18 00:31:52 +10:30
tlsdesc.s
tlsdesc.sd
tlsdesc.td
tlsg.s
tlsg.sd
tlsgd1.dd
tlsgd1.s
tlsgd2.d
tlsgd2.s
tlsgd3.d
tlsgd3.s
tlsgd4.dd
tlsgd4.s
tlsgd5.dd
tlsgd5a.s
tlsgd5b.s
tlsgd6.dd
tlsgd6a.s
tlsgd6b.s
tlsgd7.dd
tlsgd7.s
tlsgd8.dd
tlsgd8.s
tlsgdesc-nacl.rd
tlsgdesc.dd Support AMD64/Intel ISAs in assembler/disassembler 2015-05-15 09:48:10 -07:00
tlsgdesc.rd
tlsgdesc.s
tlsie1.dd
tlsie1.s
tlsie2.d
tlsie2.s
tlsie3.d
tlsie3.s
tlsie4.dd
tlsie4.s
tlsld1.dd
tlsld1.s
tlsld2.dd
tlsld2.s
tlsld3.dd
tlsld3.s
tlsle1.d
tlsle1.s
tlslib.s
tlspic1.s
tlspic2.s
tlspic-nacl.rd Properly place the NULL STT_FILE symbol revistited 2015-02-18 00:31:52 +10:30
tlspic.dd Support AMD64/Intel ISAs in assembler/disassembler 2015-05-15 09:48:10 -07:00
tlspic.rd Properly place the NULL STT_FILE symbol revistited 2015-02-18 00:31:52 +10:30
tlspic.sd
tlspic.td
tlspie1.d
tlspie1.s
undefined.s
unique1.d
unique1.s
x86-64-64-export-class.rd
x86-64-x32-export-class.rd
x86-64-x32.rd
x86-64.exp Create a PLT entry for R_X86_64_PC32 in non-code sections 2015-10-01 10:49:33 -07:00