binutils-gdb/ld/testsuite
H.J. Lu 2df3368d85 Properly handle dynamic reloc against normal symbol
We shouldn't issue an error for read-only segment with dynamic IFUNC
relocations when dynamic relocations are against normal symbols.

bfd/

	PR ld/19939
	* elf-bfd.h (_bfd_elf_allocate_ifunc_dyn_relocs): Add a pointer
	to bfd_boolean.
	* elf-ifunc.c (_bfd_elf_allocate_ifunc_dyn_relocs): Updated.
	Set *readonly_dynrelocs_against_ifunc_p to TRUE if dynamic reloc
	applies to read-only section.
	* elf32-i386.c (elf_i386_link_hash_table): Add
	readonly_dynrelocs_against_ifunc.
	(elf_i386_allocate_dynrelocs): Updated.
	(elf_i386_size_dynamic_sections): Issue an error for read-only
	segment with dynamic IFUNC relocations only if
	readonly_dynrelocs_against_ifunc is TRUE.
	* elf64-x86-64.c (elf_x86_64_link_hash_table): Add
	readonly_dynrelocs_against_ifunc.
	(elf_x86_64_allocate_dynrelocs): Updated.
	(elf_x86_64_size_dynamic_sections): Issue an error for read-only
	segment with dynamic IFUNC relocations only if
	readonly_dynrelocs_against_ifunc is TRUE.
	* elfnn-aarch64.c (elfNN_aarch64_allocate_ifunc_dynrelocs):
	Updated.

ld/

	PR ld/19939
	* testsuite/ld-i386/i386.exp: Run PR ld/19939 tests.
	* testsuite/ld-x86-64/x86-64.exp: Likewise.
	* testsuite/ld-i386/pr19939.s: New file.
	* testsuite/ld-i386/pr19939a.d: Likewise.
	* testsuite/ld-i386/pr19939b.d: Likewise.
	* testsuite/ld-x86-64/pr19939.s: Likewise.
	* testsuite/ld-x86-64/pr19939a.d: Likewise.
	* testsuite/ld-x86-64/pr19939b.d: Likewise.
2016-04-11 19:41:52 -07:00
..
config
ld-aarch64 [AArch64] Create .got section if _GLOBAL_OFFSET_TABLE_ referenced 2016-03-07 15:40:50 +00:00
ld-alpha
ld-arm PR gas/19744: Thumb-1 pcrop relocations don't work on Thumb-2 targets 2016-03-10 17:06:35 +01:00
ld-auto-import
ld-avr Fix possible failure in the AVR linker tests. 2016-03-18 09:51:47 +00:00
ld-bootstrap
ld-cdtest
ld-checks
ld-cris ELF/LD: Avoid producing hidden and internal dynamic symbols 2016-04-05 15:14:54 +01:00
ld-crx
ld-cygwin
ld-d10v
ld-discard [ARC] Fix ld testsuite failures. 2016-04-05 13:46:44 +02:00
ld-elf ld/arc: Fix linker for big-endian arc targets 2016-04-05 23:08:28 +01:00
ld-elfcomm Properly implement STT_COMMON 2016-02-26 05:01:34 -08:00
ld-elfvers
ld-elfvsb
ld-elfweak
ld-fastcall
ld-frv Make linker assigned symbol dynamic only for shared object 2016-02-23 05:19:03 -08:00
ld-gc
ld-h8300
ld-i386 Properly handle dynamic reloc against normal symbol 2016-04-11 19:41:52 -07:00
ld-ia64
ld-ifunc Handle local IFUNC symbols in shared object 2016-03-08 09:42:16 -08:00
ld-libs
ld-linkonce
ld-m68hc11
ld-m68k
ld-mep
ld-metag
ld-mips-elf ELF/LD: Avoid producing hidden and internal dynamic symbols 2016-04-05 15:14:54 +01:00
ld-misc
ld-mmix
ld-mn10300
ld-nds32
ld-nios2
ld-pe Improve COFF/PE linker garbage collection by preventing the removal of sections containing exported symbols. 2016-03-22 12:25:08 +00:00
ld-pie
ld-plugin Update PR ld/12365 test for GCC 6 2016-03-01 12:45:18 -08:00
ld-powerpc
ld-s390 Enhance GAS's .section directive so that it can take numeric values for the flags and type fields. (ELF only) 2016-02-15 11:11:46 +00:00
ld-scripts [ARC] Fix ld testsuite failures. 2016-04-05 13:46:44 +02:00
ld-selective
ld-sh Enhance GAS's .section directive so that it can take numeric values for the flags and type fields. (ELF only) 2016-02-15 11:11:46 +00:00
ld-shared
ld-size
ld-sparc
ld-spu
ld-srec [ARC] Fix ld testsuite failures. 2016-04-05 13:46:44 +02:00
ld-tic6x Enhance GAS's .section directive so that it can take numeric values for the flags and type fields. (ELF only) 2016-02-15 11:11:46 +00:00
ld-tilegx
ld-tilepro
ld-undefined
ld-unique
ld-v850
ld-vax-elf
ld-versados
ld-visium
ld-vxworks
ld-x86-64 Properly handle dynamic reloc against normal symbol 2016-04-11 19:41:52 -07:00
ld-xc16x
ld-xstormy16
ld-xtensa Enhance GAS's .section directive so that it can take numeric values for the flags and type fields. (ELF only) 2016-02-15 11:11:46 +00:00
lib ld/arc: Fix linker for big-endian arc targets 2016-04-05 23:08:28 +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