binutils-gdb/ld/testsuite/ld-x86-64
Roland McGrath 5a68afcf73 bfd/
2012-04-03  Roland McGrath  <mcgrathr@google.com>

	* elf-nacl.c: New file.
	* elf-nacl.h: New file.
	* elf32-i386.c (elf_backend_modify_segment_map): Define for
	bfd_elf32_i386_nacl_vec.
	(elf_backend_modify_program_headers): Likewise.
	* elf64-x86-64.c (elf_backend_modify_segment_map): Define for
	bfd_elf64_x86_64_nacl_vec and bfd_elf32_x86_64_nacl_vec.
	(elf_backend_modify_program_headers): Likewise.
	* Makefile.am (BFD32_BACKENDS, BFD64_BACKENDS): Add elf-nacl.lo here.
	(BFD32_BACKENDS_CFILES, BFD64_BACKENDS_CFILES): Add elf-nacl.c here.
	* Makefile.in: Regenerated.
	* configure.in (bfd_elf64_x86_64_nacl_vec): Add elf-nacl.o to tb here.
	(bfd_elf32_x86_64_nacl_vec): Likewise.
	(bfd_elf64_x86_64_vec, bfd_elf32_x86_64_vec): Likewise.
	(bfd_elf64_x86_64_freebsd_vec, bfd_elf64_x86_64_sol2_vec): Likewise.
	(bfd_elf64_l1om_vec, bfd_elf64_l1om_freebsd_vec): Likewise.
	(bfd_elf64_k1om_vec, bfd_elf64_k1om_freebsd_vec): Likewise.
	(bfd_elf32_i386_nacl_vec): Likewise.
	(bfd_elf32_i386_sol2_vec, bfd_elf32_i386_freebsd_vec): Likewise.
	(bfd_elf32_i386_vxworks_vec, bfd_elf32_i386_vec): Likewise.
	* configure: Regenerated.

binutils/testsuite/
2012-04-03  Roland McGrath  <mcgrathr@google.com>

	* lib/binutils-common.exp (is_elf_format): Consider *-*-nacl* to
	be ELF too.

	* binutils-all/elfedit-4.d: Add "#as: --64" option.

	* binutils-all/i386/i386.exp: Accept nacl targets too.
	* binutils-all/x86-64/x86-64.exp: Likewise.

gas/testsuite/
2012-04-03  Roland McGrath  <mcgrathr@google.com>

	* gas/i386/k1om.d: Add not-target match for *-*-nacl*.
	* gas/i386/l1om.d: Likewise.

ld/
2012-04-03  Roland McGrath  <mcgrathr@google.com>

	* configure.tgt (i[3-7]86-*-nacl*, x86_64-*-nacl*): Handle them.
	* emulparams/elf_nacl.sh: New file.
	* emulparams/elf_i386_nacl.sh: New file.
	* emulparams/elf32_x86_64_nacl.sh: New file.
	* emulparams/elf_x86_64_nacl.sh: New file.
	* Makefile.am (ALL_EMULATION_SOURCES): Add eelf_i386_nacl.c here.
	(ALL_64_EMULATION_SOURCES): Add eelf32_x86_64_nacl.c and
	eelf_x86_64_nacl.c here.
	(eelf_i386_nacl.c, eelf32_x86_64_nacl.c, eelf_x86_64_nacl.c):
	New targets.
	* Makefile.in: Regenerated.

	* scripttempl/elf.sc: Handle SEPARATE_CODE cases.

ld/testsuite/
2012-04-03  Roland McGrath  <mcgrathr@google.com>

	* ld-x86-64/ilp32-4-nacl.d: New file.
	* ld-x86-64/x86-64.exp: Run it.

	* ld-discard/discard.exp: Accept nacl targets too.
	* ld-elf/binutils.exp: Likewise.
	* ld-elf/comm-data.exp: Likewise.
	* ld-elf/elf.exp: Likewise.
	* ld-elf/tls_common.exp: Likewise.
	* ld-elfvers/vers.exp: Likewise.
	* ld-elfvsb/elfvsb.exp: Likewise.
	* ld-elfweak/elfweak.exp: Likewise.
	* ld-gc/gc.exp: Likewise.
	* ld-ifunc/binutils.exp: Likewise.
	* ld-ifunc/ifunc.exp: Likewise.
	* ld-linkonce/linkonce.exp:Likewise.
	* ld-pie/pie.exp: Likewise.
	* ld-shared/shared.exp: Likewise.
	* ld-undefined/weak-undef.exp: Likewise.
	* ld-unique/unique.exp: Likewise.
	* ld-x86-64/dwarfreloc.exp: Likewise.
	* ld-x86-64/line.exp: Likewise.

	* lib/ld-lib.exp (slurp_options): Support global array
	options_regsub to apply substitutions to the contents
	of options lines read from the file.
	* ld-i386/emit-relocs.d: Renamed to ...
	* ld-i386/emit-relocs.rd: ... this.
	* ld-i386/i386.exp: Accept nacl targets too.
	For them, use options_regsub to replace elf_i386 with
	elf_i386_nacl in run_dump_test cases; apply the same
	substitution in $i386tests; replace foo.rd expectations
	files with foo-nacl.rd in $i386tests.
	(i386tests): Change emit-relocs.d to emit-relocs.rd here.
	* ld-i386/emit-relocs-nacl.rd: New file.
	* ld-i386/plt-nacl.pd: New file.
	* ld-i386/plt-pic-nacl.pd: New file.
	* ld-i386/tlsbin-nacl.rd: New file.
	* ld-i386/tlsbindesc-nacl.rd: New file.
	* ld-i386/tlsdesc-nacl.rd: New file.
	* ld-i386/tlsgdesc-nacl.rd: New file.
	* ld-i386/tlsnopic-nacl.rd: New file.
	* ld-i386/tlspic-nacl.rd: New file.
	* ld-x86-64/x86-64.exp: Accept nacl targets too.
	For them, use options_regsub to replace elf_x86_64 with
	elf_x86_64_nacl in run_dump_test cases; apply the same
	substitution in $x86_64tests; replace foo.rd expectations
	files with foo-nacl.rd in $x86_64tests.
	Add explicit -melf_x86_64 to ld options in tests that need it,
	in case the default emulation is x32 (as it is for x86_64-nacl).
	* ld/testsuite/ld-x86-64/plt-nacl.pd: New file.
	* ld/testsuite/ld-x86-64/split-by-file-nacl.rd: New file.
	* ld/testsuite/ld-x86-64/tlsbin-nacl.rd: New file.
	* ld/testsuite/ld-x86-64/tlsbindesc-nacl.rd: New file.
	* ld/testsuite/ld-x86-64/tlsdesc-nacl.pd: New file.
	* ld/testsuite/ld-x86-64/tlsdesc-nacl.rd: New file.
	* ld/testsuite/ld-x86-64/tlsgdesc-nacl.rd: New file.
	* ld/testsuite/ld-x86-64/tlspic-nacl.rd: New file.

	* ld-i386/hidden2.d: Loosen regexps to match any file format variant,
	and not to depend on exact addresses, displacements, etc. where
	they are irrelevant.
	* ld-i386/pcrel16.d: Likewise.
	* ld-i386/pcrel16abs.d: Likewise.
	* ld-i386/pr12718.d: Likewise.
	* ld-i386/pr12921.d: Likewise.
	* ld-i386/reloc.d: Likewise.
	* ld-i386/tlsbin.dd: Likewise.
	* ld-i386/tlsbin.sd: Likewise.
	* ld-i386/tlsbin.td: Likewise.
	* ld-i386/tlsbindesc.dd: Likewise.
	* ld-i386/tlsbindesc.sd: Likewise.
	* ld-i386/tlsbindesc.td: Likewise.
	* ld-i386/tlsdesc.dd: Likewise.
	* ld-i386/tlsdesc.sd: Likewise.
	* ld-i386/tlsdesc.td: Likewise.
	* ld-i386/tlsg.sd: Likewise.
	* ld-i386/tlsgdesc.dd: Likewise.
	* ld-i386/tlsindntpoff.dd: Likewise.
	* ld-i386/tlsnopic.dd: Likewise.
	* ld-i386/tlsnopic.sd: Likewise.
	* ld-i386/tlspic.dd: Likewise.
	* ld-i386/tlspic.sd: Likewise.
	* ld-i386/tlspic.td: Likewise.
	* ld-i386/tlspie2.d: Likewise.
	* ld-x86-64/hidden2.d: Likewise.
	* ld-x86-64/pcrel16.d: Likewise.
	* ld-x86-64/pr12718.d: Likewise.
	* ld-x86-64/pr12921.d: Likewise.
	* ld-x86-64/protected3.d: Likewise.
	* ld-x86-64/tlsbin.dd: Likewise.
	* ld-x86-64/tlsbin.sd: Likewise.
	* ld-x86-64/tlsbin.td: Likewise.
	* ld-x86-64/tlsbindesc.dd: Likewise.
	* ld-x86-64/tlsbindesc.sd: Likewise.
	* ld-x86-64/tlsbindesc.td: Likewise.
	* ld-x86-64/tlsdesc.dd: Likewise.
	* ld-x86-64/tlsdesc.sd: Likewise.
	* ld-x86-64/tlsdesc.td: Likewise.
	* ld-x86-64/tlsg.sd: Likewise.
	* ld-x86-64/tlsgd5.dd: Likewise.
	* ld-x86-64/tlsgd6.dd: Likewise.
	* ld-x86-64/tlsgdesc.dd: Likewise.
	* ld-x86-64/tlspic.dd: Likewise.
	* ld-x86-64/tlspic.sd: Likewise.
	* ld-x86-64/tlspic.td: Likewise.

	* ld-x86-64/ilp32-8.d: Match any file format variant.
	Use a -Ttext and adjust expected results, to handle variant layouts.
	* ld-x86-64/ilp32-9.d: Likewise.

	* ld-i386/alloc.t: Remove superfluous OUTPUT_FORMAT statement.
	* ld-i386/pr12627.t: Likewise.

	* ld-x86-64/abs-l1om.d: Add target: constraint.
	* ld-x86-64/protected2-l1om.d: Likewise.
	* ld-x86-64/protected3-l1om.d: Likewise.
	* ld-x86-64/ilp32-4.d: Likewise.

	* ld-x86-64/plt.s: New file.
	* ld-x86-64/pltlib.s: New file.
	* ld-x86-64/plt.pd: New file.
	* ld-x86-64/x86-64.exp (x86_64tests): Add them.

	* ld-i386/plt.s: New file.
	* ld-i386/pltlib.s: New file.
	* ld-i386/plt.pd: New file.
	* ld-i386/plt-pic.s: New file.
	* ld-i386/plt-pic.pd: New file.
	* ld-i386/i386.exp (i386tests): Add them.
2012-04-03 16:01:38 +00:00
..
32bit.s * ld-x86-64/x86-64.exp: Add test of linking mixed 32-bit and 2012-01-05 15:17:18 +00:00
64bit.s * ld-x86-64/x86-64.exp: Add test of linking mixed 32-bit and 2012-01-05 15:17:18 +00:00
abs-k1om.d Add initial Intel K1OM support. 2011-07-22 20:22:38 +00:00
abs-l1om.d bfd/ 2012-04-03 16:01:38 +00:00
abs.d
compressed1.d
compressed1.s
discarded1.d
discarded1.s
discarded1.t
dummy.s Don't allow mixing x64_32 with x86_64. 2011-01-03 18:16:46 +00:00
dwarfreloc1.s
dwarfreloc2.s
dwarfreloc.exp bfd/ 2012-04-03 16:01:38 +00:00
dwarfreloc.rd
foo.s Don't allow mixing x64_32 with x86_64. 2011-01-03 18:16:46 +00:00
hidden1.d
hidden1.s
hidden2.d bfd/ 2012-04-03 16:01:38 +00:00
hidden2.s
hidden3.d
hidden3.s
ia32-1.d Don't allow mixing x64_32 with x86_64. 2011-01-03 18:16:46 +00:00
ia32-2.d Replace n32 with x32. 2011-01-15 00:38:35 +00:00
ia32-3.d Don't allow mixing x64_32 with x86_64. 2011-01-03 18:16:46 +00:00
ilp32-1.d Rename --n32 to --x32. 2011-01-14 23:07:11 +00:00
ilp32-2.d Rename --n32 to --x32. 2011-01-14 23:07:11 +00:00
ilp32-3.d Rename --n32 to --x32. 2011-01-14 23:07:11 +00:00
ilp32-4-nacl.d bfd/ 2012-04-03 16:01:38 +00:00
ilp32-4.d bfd/ 2012-04-03 16:01:38 +00:00
ilp32-4.s Remove ABI_64_P check on R_X86_64_PCXX 2012-01-10 20:18:18 +00:00
ilp32-5.d Remove ABI_64_P check on R_X86_64_PCXX 2012-01-10 20:18:18 +00:00
ilp32-5.s Remove ABI_64_P check on R_X86_64_PCXX 2012-01-10 20:18:18 +00:00
ilp32-6.d Check R_X86_64_32 overflow and allow R_X86_64_64 for x32. 2011-08-01 23:04:23 +00:00
ilp32-6.s Check R_X86_64_32 overflow and allow R_X86_64_64 for x32. 2011-08-01 23:04:23 +00:00
ilp32-7.d Check R_X86_64_32 overflow and allow R_X86_64_64 for x32. 2011-08-01 23:04:23 +00:00
ilp32-7.s Check R_X86_64_32 overflow and allow R_X86_64_64 for x32. 2011-08-01 23:04:23 +00:00
ilp32-8.d bfd/ 2012-04-03 16:01:38 +00:00
ilp32-8.s Check R_X86_64_32 overflow and allow R_X86_64_64 for x32. 2011-08-01 23:04:23 +00:00
ilp32-9.d bfd/ 2012-04-03 16:01:38 +00:00
ilp32-9.s Check R_X86_64_32 overflow and allow R_X86_64_64 for x32. 2011-08-01 23:04:23 +00:00
ilp32-10.d Remove ABI_64_P check on R_X86_64_PCXX 2012-01-10 20:18:18 +00:00
ilp32-10.s Remove ABI_64_P check on R_X86_64_PCXX 2012-01-10 20:18:18 +00:00
incompatible.l * ld-x86-64/x86-64.exp: Add test of linking mixed 32-bit and 2012-01-05 15:17:18 +00:00
line.exp bfd/ 2012-04-03 16:01:38 +00:00
lp64-1.d Don't allow mixing x64_32 with x86_64. 2011-01-03 18:16:46 +00:00
lp64-2.d Don't allow mixing x64_32 with x86_64. 2011-01-03 18:16:46 +00:00
lp64-3.d Replace n32 with x32. 2011-01-15 00:38:35 +00:00
mixed1a.s Don't check relocation if input ELF object ID doesn't match output. 2010-08-22 19:14:25 +00:00
mixed1b.s Don't check relocation if input ELF object ID doesn't match output. 2010-08-22 19:14:25 +00:00
mixed2a.s Don't check relocation if input ELF object ID doesn't match output. 2010-08-22 19:14:25 +00:00
mixed2b.s Don't check relocation if input ELF object ID doesn't match output. 2010-08-22 19:14:25 +00:00
nogot1.d
nogot1.s
nogot2.d Add 2 tests for PR ld/11812. 2010-10-01 04:47:02 +00:00
nogot2.s Add 2 tests for PR ld/11812. 2010-10-01 04:47:02 +00:00
pcrel8.d
pcrel16.d bfd/ 2012-04-03 16:01:38 +00:00
plt-nacl.pd bfd/ 2012-04-03 16:01:38 +00:00
plt-pic.s bfd/ 2012-04-03 16:01:38 +00:00
plt.pd bfd/ 2012-04-03 16:01:38 +00:00
plt.s bfd/ 2012-04-03 16:01:38 +00:00
pltlib.s bfd/ 2012-04-03 16:01:38 +00:00
pr12718.d bfd/ 2012-04-03 16:01:38 +00:00
pr12718.s Add testcases for PR ld/12718. 2011-05-01 13:38:22 +00:00
pr12921.d bfd/ 2012-04-03 16:01:38 +00:00
pr12921.s Add testcases for PR ld/12921. 2011-06-24 14:03:15 +00:00
pr13082-1.s Add R_X86_64_RELATIVE64 and handle R_X86_64_64 for x32. 2011-08-12 19:42:39 +00:00
pr13082-1a.d Add R_X86_64_RELATIVE64 and handle R_X86_64_64 for x32. 2011-08-12 19:42:39 +00:00
pr13082-1b.d Add R_X86_64_RELATIVE64 and handle R_X86_64_64 for x32. 2011-08-12 19:42:39 +00:00
pr13082-2.s Add R_X86_64_RELATIVE64 and handle R_X86_64_64 for x32. 2011-08-12 19:42:39 +00:00
pr13082-2a.d Add R_X86_64_RELATIVE64 and handle R_X86_64_64 for x32. 2011-08-12 19:42:39 +00:00
pr13082-2b.d Add R_X86_64_RELATIVE64 and handle R_X86_64_64 for x32. 2011-08-12 19:42:39 +00:00
pr13082-3.s Add R_X86_64_RELATIVE64 and handle R_X86_64_64 for x32. 2011-08-12 19:42:39 +00:00
pr13082-3a.d Add R_X86_64_RELATIVE64 and handle R_X86_64_64 for x32. 2011-08-12 19:42:39 +00:00
pr13082-3b.d Add R_X86_64_RELATIVE64 and handle R_X86_64_64 for x32. 2011-08-12 19:42:39 +00:00
pr13082-4.s Add R_X86_64_RELATIVE64 and handle R_X86_64_64 for x32. 2011-08-12 19:42:39 +00:00
pr13082-4a.d Add R_X86_64_RELATIVE64 and handle R_X86_64_64 for x32. 2011-08-12 19:42:39 +00:00
pr13082-4b.d Add R_X86_64_RELATIVE64 and handle R_X86_64_64 for x32. 2011-08-12 19:42:39 +00:00
pr13082-5.s Add R_X86_64_RELATIVE64 and handle R_X86_64_64 for x32. 2011-08-12 19:42:39 +00:00
pr13082-5a.d Use .got.plt for IFUNC symbols if there are no GOT relocations. 2011-09-12 18:17:36 +00:00
pr13082-5b.d Restore R_386_IRELATIVE and R_X86_64_IRELATIVE 2012-03-09 16:28:38 +00:00
pr13082-6.s Add R_X86_64_RELATIVE64 and handle R_X86_64_64 for x32. 2011-08-12 19:42:39 +00:00
pr13082-6a.d Restore R_386_IRELATIVE and R_X86_64_IRELATIVE 2012-03-09 16:28:38 +00:00
pr13082-6b.d Restore R_386_IRELATIVE and R_X86_64_IRELATIVE 2012-03-09 16:28:38 +00:00
protected1.d
protected1.s
protected2-k1om.d Add initial Intel K1OM support. 2011-07-22 20:22:38 +00:00
protected2-l1om.d bfd/ 2012-04-03 16:01:38 +00:00
protected2.d
protected2.s
protected3-k1om.d Add initial Intel K1OM support. 2011-07-22 20:22:38 +00:00
protected3-l1om.d bfd/ 2012-04-03 16:01:38 +00:00
protected3.d bfd/ 2012-04-03 16:01:38 +00:00
protected3.s
protected4.d Handle relocation against protected function for -Bsymbolic 2012-03-20 18:16:38 +00:00
protected4.s Handle relocation against protected function for -Bsymbolic 2012-03-20 18:16:38 +00:00
protected5.d Handle relocation against protected function for -Bsymbolic 2012-03-20 18:16:38 +00:00
protected5.s Handle relocation against protected function for -Bsymbolic 2012-03-20 18:16:38 +00:00
simple.c Allow building x32 DSO from x86-64 object file. 2011-06-09 05:51:11 +00:00
split-by-file1.s Add missing files. 2010-09-07 17:52:32 +00:00
split-by-file2.s Add missing files. 2010-09-07 17:52:32 +00:00
split-by-file-nacl.rd bfd/ 2012-04-03 16:01:38 +00:00
split-by-file.rd * ldwrite.c (clone_section): Call bfd_copy_private_section_data on 2010-09-07 15:02:17 +00:00
start.s Don't allow mixing x64_32 with x86_64. 2011-01-03 18:16:46 +00:00
tlsbin-nacl.rd bfd/ 2012-04-03 16:01:38 +00:00
tlsbin.dd bfd/ 2012-04-03 16:01:38 +00:00
tlsbin.rd PR ld/12570 2011-06-20 13:18:52 +00:00
tlsbin.s Handle R_X86_64_TPOFF64 in executable. 2011-05-26 13:22:04 +00:00
tlsbin.sd bfd/ 2012-04-03 16:01:38 +00:00
tlsbin.td bfd/ 2012-04-03 16:01:38 +00:00
tlsbindesc-nacl.rd bfd/ 2012-04-03 16:01:38 +00:00
tlsbindesc.dd bfd/ 2012-04-03 16:01:38 +00:00
tlsbindesc.rd PR ld/12570 2011-06-20 13:18:52 +00:00
tlsbindesc.s
tlsbindesc.sd bfd/ 2012-04-03 16:01:38 +00:00
tlsbindesc.td bfd/ 2012-04-03 16:01:38 +00:00
tlsbinpic.s
tlsdesc-nacl.pd bfd/ 2012-04-03 16:01:38 +00:00
tlsdesc-nacl.rd bfd/ 2012-04-03 16:01:38 +00:00
tlsdesc.dd bfd/ 2012-04-03 16:01:38 +00:00
tlsdesc.pd PR ld/12570 2011-06-20 13:18:52 +00:00
tlsdesc.rd PR ld/12570 2011-06-20 13:18:52 +00:00
tlsdesc.s
tlsdesc.sd bfd/ 2012-04-03 16:01:38 +00:00
tlsdesc.td bfd/ 2012-04-03 16:01:38 +00:00
tlsg.s
tlsg.sd bfd/ 2012-04-03 16:01:38 +00:00
tlsgd1.dd
tlsgd1.s
tlsgd2.d
tlsgd2.s
tlsgd3.d
tlsgd3.s
tlsgd4.dd Support TLS x32 GD->IE, GD->LE and LD->LE transitions. 2011-03-12 14:38:31 +00:00
tlsgd4.s Support TLS x32 GD->IE, GD->LE and LD->LE transitions. 2011-03-12 14:38:31 +00:00
tlsgd5.dd bfd/ 2012-04-03 16:01:38 +00:00
tlsgd5a.s Support TLS x32 GD->IE, GD->LE and LD->LE transitions. 2011-03-12 14:38:31 +00:00
tlsgd5b.s Support TLS x32 GD->IE, GD->LE and LD->LE transitions. 2011-03-12 14:38:31 +00:00
tlsgd6.dd bfd/ 2012-04-03 16:01:38 +00:00
tlsgd6a.s Support TLS x32 GD->IE, GD->LE and LD->LE transitions. 2011-03-12 14:38:31 +00:00
tlsgd6b.s Support TLS x32 GD->IE, GD->LE and LD->LE transitions. 2011-03-12 14:38:31 +00:00
tlsgdesc-nacl.rd bfd/ 2012-04-03 16:01:38 +00:00
tlsgdesc.dd bfd/ 2012-04-03 16:01:38 +00:00
tlsgdesc.rd PR ld/12570 2011-06-20 13:18:52 +00:00
tlsgdesc.s
tlsie1.dd
tlsie1.s
tlsie2.d
tlsie2.s
tlsie3.d
tlsie3.s
tlsie4.dd Supprt TLS x32 IE->LE transition. 2011-03-03 22:11:33 +00:00
tlsie4.s Supprt TLS x32 IE->LE transition. 2011-03-03 22:11:33 +00:00
tlsld1.dd
tlsld1.s
tlsld2.dd Support TLS x32 GD->IE, GD->LE and LD->LE transitions. 2011-03-12 14:38:31 +00:00
tlsld2.s Support TLS x32 GD->IE, GD->LE and LD->LE transitions. 2011-03-12 14:38:31 +00:00
tlsle1.d
tlsle1.s
tlslib.s
tlspic1.s
tlspic2.s
tlspic-nacl.rd bfd/ 2012-04-03 16:01:38 +00:00
tlspic.dd bfd/ 2012-04-03 16:01:38 +00:00
tlspic.rd PR ld/12570 2011-06-20 13:18:52 +00:00
tlspic.sd bfd/ 2012-04-03 16:01:38 +00:00
tlspic.td bfd/ 2012-04-03 16:01:38 +00:00
tlspie1.d
tlspie1.s
undefined.s
unique1.d
unique1.s
x86-64-x32.rd Allow building x32 DSO from x86-64 object file. 2011-06-09 05:51:11 +00:00
x86-64.exp bfd/ 2012-04-03 16:01:38 +00:00