binutils-gdb/ld/testsuite/ld-ifunc
H.J. Lu 98a1627f19 x86: Properly handle IFUNC function pointer reference
Update

commit 68c4956b14
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Tue Apr 26 09:08:54 2022 -0700

    x86: Properly handle function pointer reference

to properly handle IFUNC function pointer reference.  Since IFUNC symbol
value is only known at run-time, set pointer_equality_needed for IFUNC
function pointer reference in PDE so that it will be resolved to its PLT
entry directly.

bfd/

	PR ld/29216
	* elf32-i386.c (elf_i386_scan_relocs): Set pointer_equality_needed
	for IFUNC function pointer reference in PDE.
	* elf64-x86-64.c (elf_x86_64_scan_relocs): Likewise.

ld/

	PR ld/29216
	* testsuite/ld-ifunc/ifunc.exp: Run PR ld/29216 test.
	* testsuite/ld-ifunc/pr29216.c: New file.
2022-05-31 16:28:06 -07:00
..
binutils.exp Update year range in copyright notice of binutils files 2022-01-02 12:04:28 +10:30
dummy.c
ifunc-1-local-x86.d
ifunc-1-local-x86.map
ifunc-1-local-x86.s
ifunc-1-x86.d
ifunc-1-x86.map
ifunc-1-x86.s
ifunc-2-i386-now.d opcodes/i386: remove trailing whitespace from insns with zero operands 2022-05-27 14:12:33 +01:00
ifunc-2-i386.d
ifunc-2-i386.s
ifunc-2-local-i386-now.d opcodes/i386: remove trailing whitespace from insns with zero operands 2022-05-27 14:12:33 +01:00
ifunc-2-local-i386.d
ifunc-2-local-i386.s
ifunc-2-local-x86-64-now.d opcodes/i386: remove trailing whitespace from insns with zero operands 2022-05-27 14:12:33 +01:00
ifunc-2-local-x86-64.d
ifunc-2-local-x86-64.s
ifunc-2-x86-64-now.d opcodes/i386: remove trailing whitespace from insns with zero operands 2022-05-27 14:12:33 +01:00
ifunc-2-x86-64.d
ifunc-2-x86-64.s
ifunc-3-x86.s
ifunc-3a-x86.d
ifunc-3b-x86.d
ifunc-4-local-x86.d
ifunc-4-local-x86.s
ifunc-4-x86.d
ifunc-4-x86.s
ifunc-4a-x86.d
ifunc-5-i386.s
ifunc-5-local-i386.s
ifunc-5-local-x86-64.s
ifunc-5-x86-64.s
ifunc-5a-i386.d
ifunc-5a-local-i386.d
ifunc-5a-local-x86-64.d
ifunc-5a-x86-64.d
ifunc-5b-i386.d
ifunc-5b-local-i386.d
ifunc-5b-local-x86-64.d
ifunc-5b-x86-64.d
ifunc-5r-local-i386.d
ifunc-5r-local-x86-64.d
ifunc-6-i386.s
ifunc-6-x86-64.s
ifunc-6a-i386.d
ifunc-6a-x86-64.d
ifunc-6b-i386.d
ifunc-6b-x86-64.d
ifunc-7-i386.s
ifunc-7-x86-64.s
ifunc-7a-i386.d
ifunc-7a-x86-64.d
ifunc-7b-i386.d
ifunc-7b-x86-64.d
ifunc-8-i386.d
ifunc-8-x86-64.d
ifunc-8a-i386.s
ifunc-8a-x86-64.s
ifunc-8b-i386.s
ifunc-8b-x86-64.s
ifunc-9-i386.d
ifunc-9-x86-64.d
ifunc-9-x86.s
ifunc-10-i386.d
ifunc-10-i386.s
ifunc-10-x86-64.d
ifunc-10-x86-64.s
ifunc-11-i386.d
ifunc-11-i386.s
ifunc-11-x86-64.d
ifunc-11-x86-64.s
ifunc-12-i386.d
ifunc-12-i386.s
ifunc-12-x86-64.d
ifunc-12-x86-64.s
ifunc-13-i386.d
ifunc-13-x86-64.d
ifunc-13a-i386.s
ifunc-13a-x86-64.s
ifunc-13b-i386.s
ifunc-13b-x86-64.s
ifunc-14a-i386.d
ifunc-14a-x86-64.d
ifunc-14a.s
ifunc-14b-i386.d
ifunc-14b-x86-64.d
ifunc-14b.s
ifunc-14c-i386.d
ifunc-14c-x86-64.d
ifunc-14c.s
ifunc-14d-i386.d
ifunc-14d-x86-64.d
ifunc-14e-i386.d
ifunc-14e-x86-64.d
ifunc-14f-i386.d
ifunc-14f-x86-64.d
ifunc-15-i386.d
ifunc-15-i386.s
ifunc-15-x86-64.d
ifunc-15-x86-64.s
ifunc-16-i386-now.d
ifunc-16-i386.d
ifunc-16-x86-64-now.d
ifunc-16-x86-64.d
ifunc-16-x86.s
ifunc-17a-i386.d
ifunc-17a-x86-64.d
ifunc-17a.s
ifunc-17b-i386.d
ifunc-17b-x86-64.d
ifunc-17b.s
ifunc-18a-i386.d
ifunc-18a-x86-64.d
ifunc-18a.s
ifunc-18b-i386.d
ifunc-18b-x86-64.d
ifunc-18b.s
ifunc-19a-i386.d
ifunc-19a-x86-64.d
ifunc-19a.s
ifunc-19b-i386.d
ifunc-19b-x86-64.d
ifunc-19b.s
ifunc-20-i386.d
ifunc-20-x86-64.d
ifunc-20.s
ifunc-21-i386.d opcodes/i386: remove trailing whitespace from insns with zero operands 2022-05-27 14:12:33 +01:00
ifunc-21-i386.s
ifunc-21-x86-64.d opcodes/i386: remove trailing whitespace from insns with zero operands 2022-05-27 14:12:33 +01:00
ifunc-21-x86-64.s
ifunc-22-i386.d opcodes/i386: remove trailing whitespace from insns with zero operands 2022-05-27 14:12:33 +01:00
ifunc-22-i386.s
ifunc-22-x86-64.d opcodes/i386: remove trailing whitespace from insns with zero operands 2022-05-27 14:12:33 +01:00
ifunc-22-x86-64.s
ifunc-23-x86.s
ifunc-23a-x86.d
ifunc-23b-x86.d
ifunc-23c-x86.d
ifunc-24-x86.s
ifunc-24a-x86.d
ifunc-24b-x86.d
ifunc-24c-x86.d
ifunc-25-x86.s
ifunc-25a-x86.d
ifunc-25b-x86.d
ifunc-25c-x86.d
ifunc-26.d
ifunc-26.s
ifunc-common-1.out
ifunc-common-1a.c
ifunc-common-1b.c
ifunc-lib.c
ifunc-main.c
ifunc-main.out
ifunc.exp x86: Properly handle IFUNC function pointer reference 2022-05-31 16:28:06 -07:00
ifuncmod5.d
ifuncmod5.s
lib.c
pass.out
pr16467.out
pr16467a.c
pr16467a.map
pr16467b.c
pr16467b.map
pr16467c.c
pr17154-i386-now.d
pr17154-i386.d
pr17154-x86-64-now.d elf: Support DT_RELR in linker tests 2022-01-12 06:04:51 -08:00
pr17154-x86-64.d elf: Support DT_RELR in linker tests 2022-01-12 06:04:51 -08:00
pr17154-x86.s
pr18808.out
pr18808a.c
pr18808b.c
pr18841.out
pr18841a.c
pr18841b.c
pr18841c.c
pr23169a.c
pr23169a.rd
pr23169b.c
pr23169b.rd
pr23169c.c
pr23169c.rd
pr29216.c x86: Properly handle IFUNC function pointer reference 2022-05-31 16:28:06 -07:00
prog.c
test-1.c
test-2.c