binutils-gdb/ld/testsuite
H.J. Lu ac98f9e227 ld: Unify STT_GNU_IFUNC handling
Take STT_GNU_IFUNC handling scattered across targets and gather it in
the generic ELF linker.

bfd/

	PR ld/23238
	* elf-s390-common.c (elf_s390_add_symbol_hook): Removed.
	* elf32-arc.c (elf_arc_add_symbol_hook): Likewise.
	(elf_backend_add_symbol_hook): Likewise.
	* elf32-m68k.c (elf_m68k_add_symbol_hook): Likewise.
	(elf_backend_add_symbol_hook): Likewise.
	* elf32-s390.c (elf_backend_add_symbol_hook): Likewise.
	* elf32-sparc.c (elf32_sparc_add_symbol_hook): Likewise.
	(elf_backend_add_symbol_hook): Likewise.
	* elf64-s390.c (elf_backend_add_symbol_hook): Likewise.
	* elfxx-aarch64.c (_bfd_aarch64_elf_add_symbol_hook): Likewise.
	* elfxx-aarch64.h (_bfd_aarch64_elf_add_symbol_hook): Likewise.
	(elf_backend_add_symbol_hook): Likewise.
	* elf32-arm.c (elf32_arm_add_symbol_hook): Remove STT_GNU_IFUNC
	handling.
	* elf32-ppc.c (ppc_elf_add_symbol_hook): Likewise.
	* elf64-ppc.c (ppc64_elf_add_symbol_hook): Likewise.
	* elf64-sparc.c (elf64_sparc_add_symbol_hook): Likewise.
	* elflink.c (elf_link_add_object_symbols): Set
	elf_gnu_symbol_ifunc for STT_GNU_IFUNC symbols.

ld/

	PR ld/23238
	* testsuite/ld-ifunc/ifunc-26.d: New file.
	* testsuite/ld-ifunc/ifunc-26.s: Likewise.
	* testsuite/ld-ifunc/ifunc.exp: Run *.d tests without a
	working compiler.
2018-05-28 08:15:21 -07:00
..
config
ld-aarch64
ld-alpha
ld-arc
ld-arm [ARM] FDPIC: Update testsuite so that many tests pass with arm*-uclinuxfdpiceabi. 2018-04-25 21:13:14 +00:00
ld-auto-import
ld-avr
ld-bootstrap
ld-cdtest
ld-checks
ld-cris
ld-crx
ld-cygwin
ld-d10v
ld-discard Add support for the Freescale s12z processor. 2018-05-18 15:26:18 +01:00
ld-elf ld: Hide symbols defined by HIDDEN/PROVIDE_HIDDEN 2018-05-21 20:39:30 -07:00
ld-elfcomm Remove sh5 and sh64 support 2018-04-16 15:29:39 +09:30
ld-elfvers various i386-aout and i386-coff target removal 2018-04-18 09:34:19 +09:30
ld-elfvsb various i386-aout and i386-coff target removal 2018-04-18 09:34:19 +09:30
ld-elfweak various i386-aout and i386-coff target removal 2018-04-18 09:34:19 +09:30
ld-fastcall
ld-frv
ld-gc [ARM] FDPIC: Update testsuite so that many tests pass with arm*-uclinuxfdpiceabi. 2018-04-25 21:13:14 +00:00
ld-h8300 Remove h8300-coff support 2018-04-16 15:17:57 +09:30
ld-i386 ld: Add _bfd_elf_link_hide_sym_by_version 2018-05-26 04:27:24 -07:00
ld-ia64
ld-ifunc ld: Unify STT_GNU_IFUNC handling 2018-05-28 08:15:21 -07:00
ld-libs
ld-linkonce various i386-aout and i386-coff target removal 2018-04-18 09:34:19 +09:30
ld-m68hc11
ld-m68k
ld-mep
ld-metag
ld-mips-elf BFD: Prevent writing the MIPS _gp_disp symbol into symbol tables 2018-05-03 17:17:46 +01:00
ld-misc
ld-mmix
ld-mn10300
ld-msp430-elf
ld-nds32
ld-nios2
ld-pe
ld-pie
ld-plugin various i386-aout and i386-coff target removal 2018-04-18 09:34:19 +09:30
ld-powerpc
ld-pru Fix binary compatibility between GCC and the TI compiler for the PRU target. 2018-05-09 11:39:32 +01:00
ld-riscv-elf
ld-s12z Add support for the Freescale s12z processor. 2018-05-18 15:26:18 +01:00
ld-s390
ld-scripts [ARM] FDPIC: Update testsuite so that many tests pass with arm*-uclinuxfdpiceabi. 2018-04-25 21:13:14 +00:00
ld-selective Remove sh5 and sh64 support 2018-04-16 15:29:39 +09:30
ld-sh Remove sh5 and sh64 support 2018-04-16 15:29:39 +09:30
ld-shared various i386-aout and i386-coff target removal 2018-04-18 09:34:19 +09:30
ld-size various i386-aout and i386-coff target removal 2018-04-18 09:34:19 +09:30
ld-sparc various i386-aout and i386-coff target removal 2018-04-18 09:34:19 +09:30
ld-spu
ld-srec Remove sh5 and sh64 support 2018-04-16 15:29:39 +09:30
ld-tic6x ld: Adjust tic6x tests 2018-05-21 20:41:24 -07:00
ld-tilegx
ld-tilepro
ld-undefined [ARM] FDPIC: Update testsuite so that many tests pass with arm*-uclinuxfdpiceabi. 2018-04-25 21:13:14 +00:00
ld-unique
ld-v850
ld-vax-elf
ld-visium
ld-vxworks
ld-x86-64 ld: Add _bfd_elf_link_hide_sym_by_version 2018-05-26 04:27:24 -07:00
ld-xc16x
ld-xstormy16
ld-xtensa
ld-z8k
lib testsuite: Support filtering targets by TCL procedure in `run_dump_test' 2018-04-27 15:25:20 +01:00
ChangeLog-2004
ChangeLog-2005
ChangeLog-2006
ChangeLog-2007
ChangeLog-2008
ChangeLog-2009
ChangeLog-2010
ChangeLog-2011
ChangeLog-2012
ChangeLog-2013
ChangeLog-2014
ChangeLog-2015
ChangeLog-9303