8sa1-binutils-gdb/ld/testsuite
Eric Botcazou bb363086e7 Fix PR ld/22727 (TLS breakage in PIC/PIE mode on SPARC).
There are actually 2 different bugs:
 1. TLS transition is broken in PIE mode.
 2. TLS is broken in PIC/PIE mode when the __tls_get_addr symbol
    is versioned  (as is the case on Linux and Solaris at least).

The 1st bug is fixed by reverting the problematic change for now
(note that the associated test doesn't pass on SPARC because of another
issue so there is  no formal regression in the testsuite). The 2nd bug
is fixed by changing the  call to _bfd_generic_link_add_one_symbol
on __tls_get_addr into a mere lookup in _bfd_sparc_elf_check_relocs.

bfd/
	* elfxx-sparc.c (_bfd_sparc_elf_check_relocs) <R_SPARC_TLS_GD_CALL>:
	Do a mere lookup of the __tls_get_addr symbol instead of adding it.

	Revert
	2017-10-19  H.J. Lu  <hongjiu.lu@intel.com>

	PR ld/22263
	* elfxx-sparc.c (sparc_elf_tls_transition): Replace
	bfd_link_pic with !bfd_link_executable, !bfd_link_pic with
	bfd_link_executable for TLS check.
	(_bfd_sparc_elf_check_relocs): Likewise.
	(allocate_dynrelocs): Likewise.
	(_bfd_sparc_elf_relocate_section): Likewise.
ld/
	* testsuite/ld-sparc/sparc.exp (32-bit: Helper shared library):
	Link with a version script.
	(32-bit: TLS -fpie): New test.
	(64-bit: Helper shared library): Link with a version script.
	(64-bit: TLS -fpie): New test.
	(64-bit: GOTDATA relocations): Pass -Av9 to the assembler.
	* testsuite/ld-sparc/tlslib.ver: New file.
	* testsuite/ld-sparc/tlspie32.dd: Likewise.
	* testsuite/ld-sparc/tlspie32.s: Likewise.
	* testsuite/ld-sparc/tlspie64.dd: Likewise.
	* testsuite/ld-sparc/tlspie64.s: Likewise.
	* testsuite/ld-sparc/tlssunbin32.dd: Adjust for versioned symbol.
	* testsuite/ld-sparc/tlssunbin32.rd: Likewise.
	* testsuite/ld-sparc/tlssunbin32.sd: Likewise.
	* testsuite/ld-sparc/tlssunbin64.dd: Likewise.
	* testsuite/ld-sparc/tlssunbin64.rd: Likewise.
	* testsuite/ld-sparc/tlssunbin64.sd: Likewise.
2018-01-25 12:16:06 +01:00
..
config Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
ld-aarch64 [LD][AARCH64]Add group relocations to create PC-relative offset. 2018-01-24 16:20:05 +00:00
ld-alpha Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
ld-arc Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
ld-arm Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
ld-auto-import Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
ld-avr Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
ld-bootstrap Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
ld-cdtest Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
ld-checks Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
ld-cris Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
ld-crx Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
ld-cygwin Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
ld-d10v Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
ld-discard Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
ld-elf Also xfail ld-elf/group1.d for Solaris 2018-01-18 17:21:24 -08:00
ld-elfcomm Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
ld-elfvers Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
ld-elfvsb Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
ld-elfweak Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
ld-fastcall Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
ld-frv Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
ld-gc Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
ld-h8300 Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
ld-i386 Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
ld-ia64 Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
ld-ifunc Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
ld-libs Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
ld-linkonce Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
ld-m68hc11 Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
ld-m68k Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
ld-mep Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
ld-metag Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
ld-mips-elf Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
ld-misc Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
ld-mmix Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
ld-mn10300 Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
ld-msp430-elf Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
ld-nds32 Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
ld-nios2
ld-pe Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
ld-pie Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
ld-plugin x86: Check the versioned __tls_get_addr symbol 2018-01-20 14:29:36 -08:00
ld-powerpc PowerPC PLT speculative execution barriers 2018-01-17 18:52:57 +10:30
ld-pru
ld-riscv-elf RISC-V: Fix accidental embedded -shared regressions. 2018-01-08 17:55:29 -08:00
ld-s390 Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
ld-scripts ld: Fix issue where PROVIDE overrides defined symbol 2018-01-11 17:35:35 +00:00
ld-selective Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
ld-sh Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
ld-shared Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
ld-size Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
ld-sparc Fix PR ld/22727 (TLS breakage in PIC/PIE mode on SPARC). 2018-01-25 12:16:06 +01:00
ld-spu Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
ld-srec Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
ld-tic6x Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
ld-tilegx Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
ld-tilepro Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
ld-undefined Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
ld-unique Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
ld-v850 Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
ld-vax-elf Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
ld-versados Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
ld-visium Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
ld-vxworks Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
ld-x86-64 ld: Replace "-z textonly" with "-z separate-code" 2018-01-11 20:46:01 -08:00
ld-xc16x Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
ld-xstormy16 Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
ld-xtensa Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
ld-z8k Update year range in copyright notice of binutils files 2018-01-03 17:49:56 +10:30
lib Add explicit shared check to eh-frame-hdr test. 2018-01-09 10:08:47 -08: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