binutils-gdb/ld/testsuite/ld-ifunc
H.J. Lu 3db2e7dda6 Handle STT_GNU_IFUNC symols when building shared library.
bfd/

2012-01-06  H.J. Lu  <hongjiu.lu@intel.com>

	PR ld/12366
	PR ld/12371
	* elf-ifunc.c (_bfd_elf_allocate_ifunc_dyn_relocs): Properly
	handle symbols marked with regular reference, but not non-GOT
	reference when building shared library.

	* elf32-i386.c (elf_i386_gc_sweep_hook): Properly handle
	local and global STT_GNU_IFUNC symols when building shared
	library.
	* elf64-x86-64.c (elf_x86_64_gc_sweep_hook): Likewise.

ld/testsuite/

2012-01-06  H.J. Lu  <hongjiu.lu@intel.com>

	PR ld/12366
	PR ld/12371
	* ld-ifunc/ifunc-10-i386.s: Add more tests.
	* ld-ifunc/ifunc-10-x86-64.s: Likewise.
	* ld-ifunc/ifunc-11-i386.s: Likewise.
	* ld-ifunc/ifunc-11-x86-64.s: Likewise.

	* ld-ifunc/ifunc-12-i386.d: New.
	* ld-ifunc/ifunc-12-i386.s: Likewise.
	* ld-ifunc/ifunc-12-x86-64.d: Likewise.
	* ld-ifunc/ifunc-12-x86-64.s: Likewise.
	* ld-ifunc/ifunc-13-i386.d: Likewise.
	* ld-ifunc/ifunc-13-x86-64.d: Likewise.
	* ld-ifunc/ifunc-13a-i386.s: Likewise.
	* ld-ifunc/ifunc-13a-x86-64.s: Likewise.
	* ld-ifunc/ifunc-13b-i386.s: Likewise.
	* ld-ifunc/ifunc-13b-x86-64.s: Likewise.
2011-01-06 18:45:05 +00:00
..
binutils.exp * ld-elf/binutils.exp: Correct x86 gnu target match. 2010-11-18 06:57:57 +00:00
ifunc-1-local-x86.d 2009-07-10 H.J. Lu <hongjiu.lu@intel.com> 2009-07-10 14:30:21 +00:00
ifunc-1-local-x86.s bfd/ 2009-06-14 01:39:46 +00:00
ifunc-1-x86.d 2009-07-10 H.J. Lu <hongjiu.lu@intel.com> 2009-07-10 14:30:21 +00:00
ifunc-1-x86.s bfd/ 2009-06-01 13:11:52 +00:00
ifunc-2-i386.d bfd/ 2009-06-01 13:11:52 +00:00
ifunc-2-i386.s bfd/ 2009-06-01 13:11:52 +00:00
ifunc-2-local-i386.d bfd/ 2009-06-14 01:39:46 +00:00
ifunc-2-local-i386.s bfd/ 2009-06-14 01:39:46 +00:00
ifunc-2-local-x86-64.d bfd/ 2009-07-10 14:03:03 +00:00
ifunc-2-local-x86-64.s bfd/ 2009-06-14 01:39:46 +00:00
ifunc-2-x86-64.d bfd/ 2009-07-10 14:03:03 +00:00
ifunc-2-x86-64.s bfd/ 2009-06-01 13:11:52 +00:00
ifunc-3-x86.s bfd/ 2009-06-01 13:11:52 +00:00
ifunc-3a-x86.d 2009-07-10 H.J. Lu <hongjiu.lu@intel.com> 2009-07-10 14:30:21 +00:00
ifunc-3b-x86.d bfd/ 2009-06-01 13:11:52 +00:00
ifunc-4-local-x86.d bfd/ 2009-06-14 01:39:46 +00:00
ifunc-4-local-x86.s bfd/ 2009-06-14 01:39:46 +00:00
ifunc-4-x86.d bfd/ 2009-06-01 13:11:52 +00:00
ifunc-4-x86.s bfd/ 2009-06-01 13:11:52 +00:00
ifunc-4a-x86.d Don't return on STT_GNU_IFUNC symbol when stripping. 2009-11-09 14:37:16 +00:00
ifunc-5-i386.s bfd/ 2009-06-01 13:11:52 +00:00
ifunc-5-local-i386.s bfd/ 2009-06-14 01:39:46 +00:00
ifunc-5-local-x86-64.s bfd/ 2009-06-14 01:39:46 +00:00
ifunc-5-x86-64.s bfd/ 2009-06-01 13:11:52 +00:00
ifunc-5a-i386.d bfd/ 2009-06-02 17:31:42 +00:00
ifunc-5a-local-i386.d bfd/ 2009-06-14 01:39:46 +00:00
ifunc-5a-local-x86-64.d bfd/ 2009-06-14 01:39:46 +00:00
ifunc-5a-x86-64.d 2009-06-03 H.J. Lu <hongjiu.lu@intel.com> 2009-06-03 17:32:02 +00:00
ifunc-5b-i386.d bfd/ 2009-06-02 17:31:42 +00:00
ifunc-5b-local-i386.d bfd/ 2009-06-14 01:39:46 +00:00
ifunc-5b-local-x86-64.d bfd/ 2009-06-14 01:39:46 +00:00
ifunc-5b-x86-64.d 2009-06-03 H.J. Lu <hongjiu.lu@intel.com> 2009-06-03 17:32:02 +00:00
ifunc-5r-local-i386.d bfd/ 2009-07-16 14:23:12 +00:00
ifunc-5r-local-x86-64.d bfd/ 2009-07-16 14:23:12 +00:00
ifunc-6-i386.s bfd/ 2009-06-02 17:31:42 +00:00
ifunc-6-x86-64.s bfd/ 2009-06-02 17:31:42 +00:00
ifunc-6a-i386.d bfd/ 2009-06-02 17:31:42 +00:00
ifunc-6a-x86-64.d 2009-06-03 H.J. Lu <hongjiu.lu@intel.com> 2009-06-03 17:32:02 +00:00
ifunc-6b-i386.d bfd/ 2009-06-02 17:31:42 +00:00
ifunc-6b-x86-64.d 2009-06-03 H.J. Lu <hongjiu.lu@intel.com> 2009-06-03 17:32:02 +00:00
ifunc-7-i386.s bfd/ 2009-06-02 17:31:42 +00:00
ifunc-7-x86-64.s bfd/ 2009-06-02 17:31:42 +00:00
ifunc-7a-i386.d bfd/ 2009-06-02 17:31:42 +00:00
ifunc-7a-x86-64.d 2009-06-03 H.J. Lu <hongjiu.lu@intel.com> 2009-06-03 17:32:02 +00:00
ifunc-7b-i386.d bfd/ 2009-06-02 17:31:42 +00:00
ifunc-7b-x86-64.d 2009-06-03 H.J. Lu <hongjiu.lu@intel.com> 2009-06-03 17:32:02 +00:00
ifunc-8-i386.d 2009-06-03 H.J. Lu <hongjiu.lu@intel.com> 2009-06-03 17:32:02 +00:00
ifunc-8-x86-64.d 2009-06-03 H.J. Lu <hongjiu.lu@intel.com> 2009-06-03 17:32:02 +00:00
ifunc-8a-i386.s 2009-06-03 H.J. Lu <hongjiu.lu@intel.com> 2009-06-03 17:32:02 +00:00
ifunc-8a-x86-64.s 2009-06-03 H.J. Lu <hongjiu.lu@intel.com> 2009-06-03 17:32:02 +00:00
ifunc-8b-i386.s 2009-06-03 H.J. Lu <hongjiu.lu@intel.com> 2009-06-03 17:32:02 +00:00
ifunc-8b-x86-64.s 2009-06-03 H.J. Lu <hongjiu.lu@intel.com> 2009-06-03 17:32:02 +00:00
ifunc-9-x86.d 2009-06-15 H.J. Lu <hongjiu.lu@intel.com> 2009-06-15 13:28:56 +00:00
ifunc-9-x86.s bfd/ 2009-06-14 22:13:30 +00:00
ifunc-10-i386.d Support garbage collection against STT_GNU_IFUNC symbols. 2010-07-13 16:59:14 +00:00
ifunc-10-i386.s Handle STT_GNU_IFUNC symols when building shared library. 2011-01-06 18:45:05 +00:00
ifunc-10-x86-64.d Support garbage collection against STT_GNU_IFUNC symbols. 2010-07-13 16:59:14 +00:00
ifunc-10-x86-64.s Handle STT_GNU_IFUNC symols when building shared library. 2011-01-06 18:45:05 +00:00
ifunc-11-i386.d Support garbage collection against STT_GNU_IFUNC symbols. 2010-07-13 16:59:14 +00:00
ifunc-11-i386.s Handle STT_GNU_IFUNC symols when building shared library. 2011-01-06 18:45:05 +00:00
ifunc-11-x86-64.d Support garbage collection against STT_GNU_IFUNC symbols. 2010-07-13 16:59:14 +00:00
ifunc-11-x86-64.s Handle STT_GNU_IFUNC symols when building shared library. 2011-01-06 18:45:05 +00:00
ifunc-12-i386.d Handle STT_GNU_IFUNC symols when building shared library. 2011-01-06 18:45:05 +00:00
ifunc-12-i386.s Handle STT_GNU_IFUNC symols when building shared library. 2011-01-06 18:45:05 +00:00
ifunc-12-x86-64.d Handle STT_GNU_IFUNC symols when building shared library. 2011-01-06 18:45:05 +00:00
ifunc-12-x86-64.s Handle STT_GNU_IFUNC symols when building shared library. 2011-01-06 18:45:05 +00:00
ifunc-13-i386.d Handle STT_GNU_IFUNC symols when building shared library. 2011-01-06 18:45:05 +00:00
ifunc-13-x86-64.d Handle STT_GNU_IFUNC symols when building shared library. 2011-01-06 18:45:05 +00:00
ifunc-13a-i386.s Handle STT_GNU_IFUNC symols when building shared library. 2011-01-06 18:45:05 +00:00
ifunc-13a-x86-64.s Handle STT_GNU_IFUNC symols when building shared library. 2011-01-06 18:45:05 +00:00
ifunc-13b-i386.s Handle STT_GNU_IFUNC symols when building shared library. 2011-01-06 18:45:05 +00:00
ifunc-13b-x86-64.s Handle STT_GNU_IFUNC symols when building shared library. 2011-01-06 18:45:05 +00:00
ifunc.exp * ld-elf/binutils.exp: Correct x86 gnu target match. 2010-11-18 06:57:57 +00:00
lib.c bfd/ 2009-06-01 13:11:52 +00:00
prog.c
test-1.c bfd/ 2009-07-21 21:37:26 +00:00
test-2.c bfd/ 2009-07-21 21:37:26 +00:00