Improve binutils testsuite coverage for GNU/Hurd.

binutils/testsuite/

	* lib/utils-lib.exp (is_elf_format): Consider for *-*-gnu*, too.
	* binutils-all/elfedit-2.d (target): Likewise.
	* binutils-all/elfedit-3.d (target): Likewise.
	* binutils-all/i386/i386.exp: Likewise.
	* binutils-all/objcopy.exp: Likewise.
	* binutils-all/strip-3.d (target): Likewise.

gas/testsuite/

	* lib/gas-defs.exp (is_elf_format): Consider for *-*-gnu*, too.
	* gas/elf/elf.exp: Likewise.
	* gas/symver/symver.exp: Likewise.

ld/

	* configure.host: Add stanza for *-*-gnu*.

ld/testsuite/

	* lib/ld-lib.exp (is_elf_format): Consider for *-*-gnu*, too.
	* ld-discard/discard.exp: Likewise.
	* ld-elf/binutils.exp: Likewise.
	* ld-elf/commonpage1.d (target): Likewise.
	* ld-elf/compress1c.d (target): Likewise.
	* ld-elf/discard1.d (target): Likewise.
	* ld-elf/discard2.d (target): Likewise.
	* ld-elf/discard3.d (target): Likewise.
	* ld-elf/dynsym1.d (target): Likewise.
	* ld-elf/eh6.d (target): Likewise.
	* ld-elf/elf.exp: Likewise.
	(array_tests): Move -static tests to...
	(array_tests_static): ... here, and handle it accordingly.
	* ld-elf/hash.d (target): Likewise.
	* ld-elf/header.d (target): Likewise.
	* ld-elf/loadaddr1.d (target): Likewise.
	* ld-elf/loadaddr2.d (target): Likewise.
	* ld-elf/loadaddr3a.d (target): Likewise.
	* ld-elf/loadaddr3b.d (target): Likewise.
	* ld-elf/local1.d (target): Likewise.
	* ld-elf/maxpage1.d (target): Likewise.
	* ld-elf/maxpage2.d (target): Likewise.
	* ld-elf/maxpage3a.d (target): Likewise.
	* ld-elf/multibss1.d (target): Likewise.
	* ld-elf/noload-2.d (target): Likewise.
	* ld-elf/seg.d (target): Likewise.
	* ld-elf/textaddr1.d (target): Likewise.
	* ld-elf/textaddr2.d (target): Likewise.
	* ld-elf/textaddr3.d (target): Likewise.
	* ld-elf/textaddr4.d (target): Likewise.
	* ld-elf/textaddr5.d (target): Likewise.
	* ld-elf/textaddr6.d (target): Likewise.
	* ld-elf/textaddr7.d (target): Likewise.
	* ld-elf/tls_common.exp: Likewise.
	* ld-elf/unknown2.d (target): Likewise.
	* ld-elfvers/vers.exp: Likewise.
	* ld-elfvsb/elfvsb.exp: Likewise.
	* ld-elfweak/elfweak.exp: Likewise.
	(setup_xfail_gnu_hurd): New function.  Use it where appropriate.
	* ld-gc/abi-note.d (target): Likewise.
	* ld-gc/gc.exp: Likewise.
	* ld-gc/pr11218.d (target): Likewise.
	* ld-gc/start.d (target): Likewise.
	* ld-i386/i386.exp: Likewise.
	* ld-ifunc/binutils.exp: Likewise.
	* ld-ifunc/ifunc.exp: Likewise.
	* ld-linkonce/linkonce.exp: Likewise.
	* ld-linkonce/zeroehl32.d (target): Likewise.
	* ld-pie/pie.exp: Likewise.
	* ld-scripts/phdrs2.exp: Likewise.
	* ld-scripts/rgn-at5.d (target): Likewise.
	* ld-shared/shared.exp: Likewise.
	* ld-undefined/entry-3.d (target): Likewise.
	* ld-undefined/entry-4.d (target): Likewise.
	* ld-undefined/weak-undef.exp: Likewise.
This commit is contained in:
Thomas Schwinge 2010-11-08 06:43:40 +00:00
parent 4e011fb578
commit 5940a93c84
66 changed files with 213 additions and 74 deletions

View File

@ -1,3 +1,12 @@
2010-11-08 Thomas Schwinge <thomas@schwinge.name>
* lib/utils-lib.exp (is_elf_format): Consider for *-*-gnu*, too.
* binutils-all/elfedit-2.d (target): Likewise.
* binutils-all/elfedit-3.d (target): Likewise.
* binutils-all/i386/i386.exp: Likewise.
* binutils-all/objcopy.exp: Likewise.
* binutils-all/strip-3.d (target): Likewise.
2010-11-08 Alan Modra <amodra@gmail.com>
* binutils-all/objdump.W: Adjust expected result for debug section

View File

@ -3,7 +3,7 @@
#source: empty.s
#readelf: -h
#name: Update ELF header 2
#target: *-*-linux*
#target: *-*-linux* *-*-gnu*
#...
ELF Header:

View File

@ -3,7 +3,7 @@
#source: empty.s
#readelf: -h
#name: Update ELF header 3
#target: *-*-linux*
#target: *-*-linux* *-*-gnu*
#...
ELF Header:

View File

@ -15,7 +15,11 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
if {!([istarget "i*86-*-linux*"] || [istarget "x86_64-*-linux*"]) || ![is_elf_format] || [is_remote host]} then {
if {!([istarget "i*86-*-linux*"]
|| [istarget "i*86-*-gnu*"]
|| [istarget "x86_64-*-linux*"])
|| ![is_elf_format]
|| [is_remote host]} then {
return
}

View File

@ -538,7 +538,8 @@ proc copy_setup { } {
set add_libs ""
}
if { [istarget *-*-linux*] } {
if { [istarget *-*-linux*]
|| [istarget *-*-gnu*] } {
foreach i $gcc_gas_flag {
set flags "additional_flags=$i $flags"
}

View File

@ -3,7 +3,7 @@
#strip: -R .text -R .data -R .bss -R .ARM.attributes -R .reginfo -R .pdr -R .xtensa.info
#readelf: -S --wide
#name: strip empty file
#target: *-*-linux*
#target: *-*-linux* *-*-gnu*
#...
\[[ 0]+\][ \t]+NULL[ \t]+.*

View File

@ -1,5 +1,5 @@
# Copyright 1993, 1994, 1995, 1996, 1997, 2000, 2001, 2003, 2004, 2006, 2007,
# 2009 Free Software Foundation, Inc.
# 2009, 2010 Free Software Foundation, Inc.
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@ -129,6 +129,7 @@ proc is_elf_format {} {
&& ![istarget hppa*64*-*-hpux*]
&& ![istarget ia64-*-hpux*]
&& ![istarget *-*-linux*]
&& ![istarget *-*-gnu*]
&& ![istarget frv-*-uclinux*]
&& ![istarget bfin-*-uclinux]
&& ![istarget sh*-*-uclinux*]

View File

@ -1,3 +1,9 @@
2010-11-08 Thomas Schwinge <thomas@schwinge.name>
* lib/gas-defs.exp (is_elf_format): Consider for *-*-gnu*, too.
* gas/elf/elf.exp: Likewise.
* gas/symver/symver.exp: Likewise.
2010-11-03 H.J. Lu <hongjiu.lu@intel.com>
PR gas/12186

View File

@ -39,6 +39,7 @@ proc run_elf_list_test { name suffix opts readelf_opts readelf_pipe } {
# We're testing bits in obj-elf -- don't run on anything else.
if { ([istarget "*-*-*elf*"]
|| [istarget "*-*-linux*"]
|| [istarget "*-*-gnu*"]
|| [istarget "m6811-*"]
|| [istarget "m6812-*"]
|| [istarget "sparc*-*-solaris*"]

View File

@ -18,7 +18,8 @@ proc run_error_test { name opts } {
if { ([istarget "*-*-elf*"]
|| [istarget "m6811-*"]
|| [istarget "m6812-*"]
|| [istarget "*-*-linux*"])
|| [istarget "*-*-linux*"]
|| [istarget "*-*-gnu*"])
&& ![istarget *-*-linux*aout*]
&& ![istarget *-*-linux*oldld*] } then {

View File

@ -1,5 +1,5 @@
# Copyright (C) 1993, 1994, 1997, 1998, 1999, 2000, 2001, 2002, 2003,
# 2004, 2005, 2007, 2008, 2009 Free Software Foundation, Inc.
# 2004, 2005, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@ -288,6 +288,7 @@ proc is_elf_format {} {
&& ![istarget hppa*64*-*-hpux*]
&& ![istarget ia64-*-hpux*]
&& ![istarget *-*-linux*]
&& ![istarget *-*-gnu*]
&& ![istarget frv-*-uclinux*]
&& ![istarget bfin-*-uclinux]
&& ![istarget sh*-*-uclinux*]

View File

@ -1,3 +1,7 @@
2010-11-08 Thomas Schwinge <thomas@schwinge.name>
* configure.host: Add stanza for *-*-gnu*.
2010-11-05 Pierre Muller <muller@ics.u-strasbg.fr>
* emultempl/spuelf.em (new_tmp_file): Fix wrong first parameter.

View File

@ -37,6 +37,15 @@ case "${host}" in
HOSTING_LIBS='-L`dirname \`${CC} --print-file-name=libc.so\`` '"$HOSTING_LIBS"' `if [ -f ../gcc/crtend.o ]; then echo ../gcc/crtend.o; else ${CC} --print-file-name=crtend.o; fi` `${CC} --print-file-name=crtn.o`'
;;
*-*-gnu*)
# When creating static executables, we ought to use crt0.o instead of crt1.o,
# <http://www.gnu.org/software/hurd/open_issues/binutils/testsuite.html#static>,
# but the testing infrastructure is not prepared for that. This is not
# relevant for most tests, and the few remaining ones have been XFAILed.
HOSTING_CRT0='-dynamic-linker `${CC} --help --verbose 2>&1 | egrep "ld[^ ]*\.so" | sed -e "s,.*-dynamic-linker[ ][ ]*\(.*/ld[^ ]*\.so[^ ]*\).*,\1,"` `${CC} --print-file-name=crt1.o` `${CC} --print-file-name=crti.o` `if [ -f ../gcc/crtbegin.o ]; then echo ../gcc/crtbegin.o; else ${CC} --print-file-name=crtbegin.o; fi`'
HOSTING_LIBS='-L`dirname \`${CC} --print-file-name=libc.so\`` '"$HOSTING_LIBS"' `if [ -f ../gcc/crtend.o ]; then echo ../gcc/crtend.o; else ${CC} --print-file-name=crtend.o; fi` `${CC} --print-file-name=crtn.o`'
;;
*-*-netbsd*)
# Different versions of NetBSD with the ELF object format use different
# sets of start/end files.
@ -194,7 +203,7 @@ sparc64-*-solaris2* | sparcv9-*-solaris2*)
*-*-freebsd* | *-*-kfreebsd*-gnu | *-*-dragonfly*)
;;
*-*-linux*)
*-*-linux* | *-*-gnu*)
;;
*-*-netbsd*)

View File

@ -1,3 +1,61 @@
2010-11-08 Thomas Schwinge <thomas@schwinge.name>
* lib/ld-lib.exp (is_elf_format): Consider for *-*-gnu*, too.
* ld-discard/discard.exp: Likewise.
* ld-elf/binutils.exp: Likewise.
* ld-elf/commonpage1.d (target): Likewise.
* ld-elf/compress1c.d (target): Likewise.
* ld-elf/discard1.d (target): Likewise.
* ld-elf/discard2.d (target): Likewise.
* ld-elf/discard3.d (target): Likewise.
* ld-elf/dynsym1.d (target): Likewise.
* ld-elf/eh6.d (target): Likewise.
* ld-elf/elf.exp: Likewise.
(array_tests): Move -static tests to...
(array_tests_static): ... here, and handle it accordingly.
* ld-elf/hash.d (target): Likewise.
* ld-elf/header.d (target): Likewise.
* ld-elf/loadaddr1.d (target): Likewise.
* ld-elf/loadaddr2.d (target): Likewise.
* ld-elf/loadaddr3a.d (target): Likewise.
* ld-elf/loadaddr3b.d (target): Likewise.
* ld-elf/local1.d (target): Likewise.
* ld-elf/maxpage1.d (target): Likewise.
* ld-elf/maxpage2.d (target): Likewise.
* ld-elf/maxpage3a.d (target): Likewise.
* ld-elf/multibss1.d (target): Likewise.
* ld-elf/noload-2.d (target): Likewise.
* ld-elf/seg.d (target): Likewise.
* ld-elf/textaddr1.d (target): Likewise.
* ld-elf/textaddr2.d (target): Likewise.
* ld-elf/textaddr3.d (target): Likewise.
* ld-elf/textaddr4.d (target): Likewise.
* ld-elf/textaddr5.d (target): Likewise.
* ld-elf/textaddr6.d (target): Likewise.
* ld-elf/textaddr7.d (target): Likewise.
* ld-elf/tls_common.exp: Likewise.
* ld-elf/unknown2.d (target): Likewise.
* ld-elfvers/vers.exp: Likewise.
* ld-elfvsb/elfvsb.exp: Likewise.
* ld-elfweak/elfweak.exp: Likewise.
(setup_xfail_gnu_hurd): New function. Use it where appropriate.
* ld-gc/abi-note.d (target): Likewise.
* ld-gc/gc.exp: Likewise.
* ld-gc/pr11218.d (target): Likewise.
* ld-gc/start.d (target): Likewise.
* ld-i386/i386.exp: Likewise.
* ld-ifunc/binutils.exp: Likewise.
* ld-ifunc/ifunc.exp: Likewise.
* ld-linkonce/linkonce.exp: Likewise.
* ld-linkonce/zeroehl32.d (target): Likewise.
* ld-pie/pie.exp: Likewise.
* ld-scripts/phdrs2.exp: Likewise.
* ld-scripts/rgn-at5.d (target): Likewise.
* ld-shared/shared.exp: Likewise.
* ld-undefined/entry-3.d (target): Likewise.
* ld-undefined/entry-4.d (target): Likewise.
* ld-undefined/weak-undef.exp: Likewise.
2010-11-06 Kirill A. Shutemov <kirill@shutemov.name>
* ld-plugin/plugin-6.d: Relax file name match.

View File

@ -1,5 +1,5 @@
# Expect script for ld discard tests
# Copyright 2001, 2002, 2005, 2007 Free Software Foundation, Inc.
# Copyright 2001, 2002, 2005, 2007, 2010 Free Software Foundation, Inc.
#
# This file is part of the GNU Binutils.
#
@ -26,7 +26,7 @@
# in every .d-file.
if { ![istarget *-*-linux*] \
&& ![istarget *-*-gnu] \
&& ![istarget *-*-gnu*] \
&& ![istarget hppa*64*-*-hpux*] \
&& ![istarget *-*-elf] } {
return

View File

@ -1,5 +1,5 @@
# Expect script for binutils tests
# Copyright 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
# Copyright 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
#
# This file is part of the GNU Binutils.
#
@ -23,8 +23,8 @@
# Make sure that binutils can correctly handle ld output in ELF.
# Run on Linux only.
if { ![istarget *-*-linux*] } {
if { ![istarget *-*-linux*]
&& ![istarget *-*-gnu*]} {
return
}
@ -112,6 +112,7 @@ if { ([istarget "i?86-*-elf*"]
|| ([istarget "i?86-*-linux*"]
&& ![istarget "*-*-*aout*"]
&& ![istarget "*-*-*oldld*"])
|| [istarget "i?86-*-gnu*"]
|| [istarget "x86_64-*-linux*"]
|| [istarget "amd64-*-linux*"]) } {
binutils_test strip "-z relro -shared" relro2

View File

@ -1,7 +1,7 @@
#source: maxpage1.s
#ld: -z max-page-size=0x200000 -z common-page-size=0x100000
#readelf: -l --wide
#target: *-*-linux*
#target: *-*-linux* *-*-gnu*
#...
LOAD+.*0x200000

View File

@ -2,7 +2,7 @@
#as: --compress-debug-sections
#ld: -shared
#readelf: -S --wide
#target: *-*-linux*
#target: *-*-linux* *-*-gnu*
#failif
#...

View File

@ -1,7 +1,7 @@
#source: discard1.s
#ld: -r -T discard.ld
#readelf: -r
#target: x86_64-*-linux-gnu i?86-*-linux-gnu
#target: x86_64-*-linux-gnu i?86-*-linux-gnu i?86-*-gnu*
Relocation section '.rel.*.debug_info' at offset 0x[0-9a-z]+ contains 1 entries:
[ \t]+Offset[ \t]+Info[ \t]+Type[ \t]+Sym.*

View File

@ -1,7 +1,7 @@
#source: discard2.s
#ld: -r -T discard.ld
#readelf: -r
#target: x86_64-*-linux-gnu i?86-*-linux-gnu
#target: x86_64-*-linux-gnu i?86-*-linux-gnu i?86-*-gnu*
Relocation section '.rel.*.debug_info' at offset 0x[0-9a-z]+ contains 1 entries:
[ \t]+Offset[ \t]+Info[ \t]+Type[ \t]+Sym.*

View File

@ -2,7 +2,7 @@
#source: discard2.s
#ld: -r -T discard.ld
#readelf: -r
#target: x86_64-*-linux-gnu i?86-*-linux-gnu
#target: x86_64-*-linux-gnu i?86-*-linux-gnu i?86-*-gnu*
Relocation section '.rel.*.debug_info' at offset 0x[0-9a-z]+ contains 2 entries:
[ \t]+Offset[ \t]+Info[ \t]+Type[ \t]+Sym.*

View File

@ -1,7 +1,7 @@
#source: empty.s
#ld: -shared
#readelf: --dyn-syms
#target: *-*-linux*
#target: *-*-linux* *-*-gnu*
#...
+[0-9]+: +[0-9a-f]+ +[0-9]+ +FUNC +GLOBAL +DEFAULT +[1-9] _start

View File

@ -1,7 +1,7 @@
#source: eh6.s
#ld: --gc-sections -shared
#readelf: -wf
#target: x86_64-*-linux-gnu i?86-*-linux-gnu
#target: x86_64-*-linux-gnu i?86-*-linux-gnu i?86-*-gnu*
Contents of the .eh_frame section:

View File

@ -1,5 +1,5 @@
# Expect script for various ELF tests.
# Copyright 2002, 2003, 2005, 2007, 2009 Free Software Foundation, Inc.
# Copyright 2002, 2003, 2005, 2007, 2009, 2010 Free Software Foundation, Inc.
#
# This file is part of the GNU Binutils.
#
@ -41,7 +41,8 @@ foreach t $test_list {
run_dump_test [file rootname $t]
}
if { [istarget *-*-linux*] } {
if { [istarget *-*-linux*]
|| [istarget *-*-gnu*] } {
run_ld_link_tests {
{"Weak symbols in dynamic objects 1 (support)"
"-shared" "" {weak-dyn-1a.s}
@ -71,14 +72,25 @@ if ![isnative] {
set array_tests {
{"preinit array" "" "" {preinit.c} "preinit" "preinit.out"}
{"static preinit array" "-static" "" {preinit.c} "preinit" "preinit.out"}
{"init array" "" "" {init.c} "init" "init.out"}
{"static init array" "-static" "" {init.c} "init" "init.out"}
{"fini array" "" "" {fini.c} "fini" "fini.out"}
}
set array_tests_static {
{"static preinit array" "-static" "" {preinit.c} "preinit" "preinit.out"}
{"static init array" "-static" "" {init.c} "init" "init.out"}
{"static fini array" "-static" "" {fini.c} "fini" "fini.out"}
}
# NetBSD ELF systems do not currently support the .*_array sections.
run_ld_link_exec_tests [list "*-*-netbsdelf*"] $array_tests
set xfails [list "*-*-netbsdelf*"]
run_ld_link_exec_tests $xfails $array_tests
# Be cautious to not XFAIL for *-*-linux-gnu*, *-*-kfreebsd-gnu*, etc.
switch -regexp $target_triplet {
^\[^-\]*-\[^-\]*-gnu.*$ {
# <http://www.gnu.org/software/hurd/open_issues/binutils/testsuite.html#static>
lappend xfails "*-*-*"
}
}
run_ld_link_exec_tests $xfails $array_tests_static
catch "exec rm -f tmpdir/preinit tmpdir/init tmpdir/fini" status

View File

@ -1,7 +1,7 @@
#source: start.s
#readelf: -d -s -D
#ld: -shared --hash-style=gnu
#target: *-*-linux*
#target: *-*-linux* *-*-gnu*
#notarget: mips*-*-*
#...

View File

@ -1,4 +1,4 @@
# target: *-*-linux* *-*-vxworks
# target: *-*-linux* *-*-gnu* *-*-vxworks
# ld: -T header.t -z max-page-size=0x100
# objdump: -hpw

View File

@ -1,7 +1,7 @@
#source: loadaddr.s
#ld: -T loadaddr1.t -T loadaddr.t -z max-page-size=0x200000
#readelf: -l --wide
#target: *-*-linux*
#target: *-*-linux* *-*-gnu*
#...
LOAD +0x000000 0xf*80000000 0xf*80000000 0x100050 0x100050 RWE 0x200000

View File

@ -1,7 +1,7 @@
#source: loadaddr.s
#ld: -T loadaddr2.t -T loadaddr.t -z max-page-size=0x200000
#readelf: -l --wide
#target: *-*-linux*
#target: *-*-linux* *-*-gnu*
#...
LOAD +0x000000 0xf*80000000 0xf*80000000 0x100050 0x100050 RWE 0x200000

View File

@ -1,7 +1,7 @@
#source: loadaddr.s
#ld: -T loadaddr3.t -z max-page-size=0x200000
#readelf: -l --wide
#target: *-*-linux*
#target: *-*-linux* *-*-gnu*
#...
LOAD +0x000000 0x0*00000000 0x0*00000000 0x0*0110 0x0*0110 R E 0x.*

View File

@ -1,7 +1,7 @@
#source: loadaddr.s
#ld: -T loadaddr3.t -z max-page-size=0x200000
#objdump: -t
#target: *-*-linux*
#target: *-*-linux* *-*-gnu*
#...
0+0000100 l d .text 0+0000000 .text

View File

@ -1,6 +1,6 @@
#ld: -shared --version-script local1.map
#readelf: -s --wide
#target: *-*-linux*
#target: *-*-linux* *-*-gnu*
#...
.*: [0-9a-f]* +[0-9a-f]+ +OBJECT +LOCAL +DEFAULT +[0-9] +foo

View File

@ -1,7 +1,7 @@
#source: maxpage1.s
#ld: -z max-page-size=0x200000
#readelf: -l --wide
#target: *-*-linux*
#target: *-*-linux* *-*-gnu*
#...
LOAD+.*0x200000

View File

@ -1,7 +1,7 @@
#source: maxpage1.s
#ld: -z max-page-size=0x100000
#readelf: -l --wide
#target: *-*-linux*
#target: *-*-linux* *-*-gnu*
#...
LOAD+.*0x100000

View File

@ -1,7 +1,7 @@
#source: maxpage1.s
#ld: -z max-page-size=0x10000000 -T maxpage3.t
#readelf: -lS --wide
#target: *-*-linux*
#target: *-*-linux* *-*-gnu*
#...
\[[ 0-9]+\] \.data[ \t]+PROGBITS[ \t]+0*10000000[ \t]+[ \t0-9a-f]+WA?.*

View File

@ -1,7 +1,7 @@
#source: multibss1.s
#ld: -e 0
#readelf: -l --wide
#target: *-*-linux*
#target: *-*-linux* *-*-gnu*
#xfail: hppa64-*-*
# hppa64 default script add 16 bytes at start of .data giving 0x500010 p_memsz

View File

@ -1,7 +1,7 @@
#source: noload-1.s
#ld: -T noload-1.t -z max-page-size=0x200000
#readelf: -Sl --wide
#target: *-*-linux*
#target: *-*-linux* *-*-gnu*
#...
+LOAD +0x200000 +0x0+ +0x0+ +0x0+ +0x0+1 +RW +0x200000

View File

@ -1,4 +1,4 @@
#target: *-*-linux* *-*-vxworks
#target: *-*-linux* *-*-gnu* *-*-vxworks
#source: seg.s
#ld: -T seg.t -z max-page-size=0x1000
#readelf: -l --wide

View File

@ -1,7 +1,7 @@
#source: maxpage1.s
#ld: -Ttext-segment 0x7000000 -z max-page-size=0x200000
#readelf: -l --wide
#target: *-*-linux-gnu
#target: *-*-linux-gnu *-*-gnu*
#...
LOAD +0x0+ 0x0*7000000 0x0*7000000 0x0*[0-9a-f][0-9a-f][0-9a-f] 0x0*[0-9a-f][0-9a-f][0-9a-f] R E 0x200000

View File

@ -1,7 +1,7 @@
#source: maxpage1.s
#ld: -shared -Ttext-segment 0x7000000 -z max-page-size=0x200000
#readelf: -l --wide
#target: *-*-linux-gnu
#target: *-*-linux-gnu *-*-gnu*
#...
LOAD +0x0+ 0x0*7000000 0x0*7000000 0x0*[0-9a-f][0-9a-f][0-9a-f] 0x0*[0-9a-f][0-9a-f][0-9a-f] R E 0x200000

View File

@ -1,4 +1,4 @@
#source: maxpage1.s
#ld: -Ttext-segment 0x10000 -z max-page-size=0x200000
#target: *-*-linux-gnu
#target: *-*-linux-gnu *-*-gnu*
#warning: .*address of `text-segment' isn't multiple of maximum page size

View File

@ -1,7 +1,7 @@
#source: maxpage1.s
#ld: -z max-page-size=0x10000 -Ttext-segment 0x10000
#readelf: -l --wide
#target: *-*-linux-gnu
#target: *-*-linux-gnu *-*-gnu*
#...
LOAD +0x0+ 0x0*10000 0x0*10000 0x0*[0-9a-f][0-9a-f][0-9a-f] 0x0*[0-9a-f][0-9a-f][0-9a-f] R E 0x10000

View File

@ -1,4 +1,4 @@
#source: maxpage1.s
#ld: -shared -z max-page-size=0x200000 -Ttext-segment 0x10000
#target: *-*-linux-gnu
#target: *-*-linux-gnu *-*-gnu*
#warning: .*address of `text-segment' isn't multiple of maximum page size

View File

@ -1,7 +1,7 @@
#source: maxpage1.s
#ld: -shared -z max-page-size=0x10000 -Ttext-segment 0x10000
#readelf: -l --wide
#target: *-*-linux-gnu
#target: *-*-linux-gnu *-*-gnu*
#...
LOAD +0x0+ 0x0*10000 0x0*10000 0x0*[0-9a-f][0-9a-f][0-9a-f] 0x0*[0-9a-f][0-9a-f][0-9a-f] R E 0x10000

View File

@ -1,7 +1,7 @@
#source: maxpage1.s
#ld: -n -z max-page-size=0x200000 -Ttext-segment 0x10000
#readelf: -l --wide
#target: *-*-linux-gnu
#target: *-*-linux-gnu *-*-gnu*
#...
LOAD .*

View File

@ -1,5 +1,5 @@
# Expect script for .tls_common tests
# Copyright 2006, 2007 Free Software Foundation, Inc.
# Copyright 2006, 2007, 2010 Free Software Foundation, Inc.
#
# This file is part of the GNU Binutils.
#
@ -23,8 +23,8 @@
# Make sure that binutils can correctly handle ld output in ELF.
# Run on Linux only.
if { ![istarget *-*-linux*] } {
if { ![istarget *-*-linux*]
&& ![istarget *-*-gnu*] } {
return
}

View File

@ -1,7 +1,7 @@
#source: unknown2.s
#ld: -shared
#readelf: -S
#target: *-*-linux*
#target: *-*-linux* *-*-gnu*
#...
\[[ 0-9]+\] \.note.foo[ \t]+NOTE[ \t]+.*

View File

@ -35,6 +35,7 @@ if { ![istarget hppa*64*-*-hpux*] \
&& ![istarget i?86-*-unixware] \
&& ![istarget i?86-*-elf*] \
&& ![istarget i?86-*-linux*] \
&& ![istarget i?86-*-gnu*] \
&& ![istarget ia64-*-elf*] \
&& ![istarget ia64-*-linux*] \
&& ![istarget m68k-*-linux*] \

View File

@ -1,5 +1,5 @@
# Expect script for ld-visibility tests
# Copyright 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007
# Copyright 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2010
# Free Software Foundation, Inc.
#
# This file is part of the GNU Binutils.
@ -30,6 +30,7 @@
if { ![istarget hppa*64*-*-hpux*] \
&& ![istarget hppa*-*-linux*] \
&& ![istarget i?86-*-linux*] \
&& ![istarget i?86-*-gnu*] \
&& ![istarget ia64-*-linux*] \
&& ![istarget m68k-*-linux*] \
&& ![istarget mips*-*-linux*] \
@ -115,7 +116,8 @@ if [istarget arm*-*-linux*] {
set support_protected "no"
if [istarget *-*-linux*] {
if { [istarget *-*-linux*]
|| [istarget *-*-gnu*] } {
if [ld_compile "$CC -g $CFLAGS -DPROTECTED_CHECK" $srcdir/$subdir/main.c $tmpdir/main.o] {
if [ld_simple_link $CC $tmpdir/main "$tmpdir/main.o"] {
catch "exec $tmpdir/main" support_protected

View File

@ -1,5 +1,6 @@
# Expect script for ld-weak tests
# Copyright 2001, 2002, 2003, 2004, 2005, 2007 Free Software Foundation, Inc.
# Copyright 2001, 2002, 2003, 2004, 2005, 2007, 2010
# Free Software Foundation, Inc.
#
# This file is part of the GNU Binutils.
#
@ -36,6 +37,7 @@ if { ![istarget alpha*-*-linux*] \
&& ![istarget i?86-*-unixware] \
&& ![istarget i?86-*-elf*] \
&& ![istarget i?86-*-linux*] \
&& ![istarget i?86-*-gnu*] \
&& ![istarget ia64-*-elf*] \
&& ![istarget ia64-*-linux*] \
&& ![istarget m68k-*-linux*] \
@ -67,6 +69,18 @@ set DOBJDUMP_FLAGS --dynamic-syms
set SOBJDUMP_FLAGS --syms
set shared --shared
# <http://www.gnu.org/software/hurd/open_issues/binutils/testsuite.html#weak>
proc setup_xfail_gnu_hurd {} {
global target_triplet
# Be cautious to not XFAIL for *-*-linux-gnu*, *-*-kfreebsd-gnu*, etc.
switch -regexp $target_triplet {
^\[^-\]*-\[^-\]*-gnu.*$ {
setup_xfail "*-*-*"
}
}
}
#
# objdump_symstuff
# Dump non-dynamic symbol stuff and make sure that it is sane.
@ -452,7 +466,9 @@ build_lib "ELF DSO weak func first DSO" libfoo "foo.o libbar.so" dsow.dsym
build_lib "ELF DSO weak func last DSO" libfoo "libbar.so foo.o" dsow.dsym
build_exec "ELF weak func first" foo "main.o bar.o" "" strong "" strong.sym
build_exec "ELF weak func last" foo "bar.o main.o" "" strong "" strong.sym
setup_xfail_gnu_hurd
build_exec "ELF weak func first DSO" foo "main.o libbar.so" "-Wl,-rpath,." weak weak.dsym ""
setup_xfail_gnu_hurd
build_exec "ELF weak func last DSO" foo "libbar.so main.o" "-Wl,-rpath,." weak weak.dsym ""
build_lib "ELF DSO weak data first" libfoo "bar1a.o foo1a.o" dsodata.dsym
@ -465,9 +481,13 @@ build_exec "ELF weak data first" foo "main1.o bar1a.o foo1a.o" "" strongdata ""
build_exec "ELF weak data last" foo "foo1a.o main1.o bar1a.o" "" strongdata "" strongdata.sym
build_exec "ELF weak data first common" foo "main1.o bar1a.o foo1b.o" "" strongdata "" strongcomm.sym
build_exec "ELF weak data last common" foo "foo1b.o main1.o bar1a.o" "" strongdata "" strongcomm.sym
setup_xfail_gnu_hurd
build_exec "ELF weak data first DSO" foo "main1.o libbar1a.so libfoo1a.so" "-Wl,-rpath,." weakdata weakdata.dsym ""
setup_xfail_gnu_hurd
build_exec "ELF weak data last DSO" foo "libfoo1a.so main1.o libbar1a.so" "-Wl,-rpath,." weakdata weakdata.dsym ""
setup_xfail_gnu_hurd
build_exec "ELF weak data first DSO common" foo "main1.o libbar1a.so libfoo1b.so" "-Wl,-rpath,." weakdata weakdata.dsym ""
setup_xfail_gnu_hurd
build_exec "ELF weak data last DSO common" foo "libfoo1b.so main1.o libbar1a.so" "-Wl,-rpath,." weakdata weakdata.dsym ""
if ![ld_compile "$CC $CFLAGS $picflag" $srcdir/$subdir/size_foo.c $tmpdir/size_foo.o] {

View File

@ -1,7 +1,7 @@
#name: --gc-sections with note section
#ld: --gc-sections -e _start
#readelf: -S --wide
#target: *-*-linux*
#target: *-*-linux* *-*-gnu*
#notarget: *-*-*aout *-*-*oldld
#...

View File

@ -93,7 +93,8 @@ run_dump_test "noent"
run_dump_test "abi-note"
run_dump_test "start"
if { [is_remote host] || [which $CC] != 0 } {
if { [istarget "*-*-linux*"] } {
if { [istarget "*-*-linux*"]
|| [istarget "*-*-gnu*"] } {
ld_compile "$CC -fPIC $CFLAGS $cflags" $srcdir/$subdir/pr11218-1.c tmpdir/pr11218-1.o
ld_simple_link $ld tmpdir/pr11218-1.so "-shared tmpdir/pr11218-1.o"
ld_compile "$CC -c $CFLAGS $cflags" $srcdir/$subdir/pr11218-2.c tmpdir/pr11218-2.o

View File

@ -1,5 +1,5 @@
# name: --gc-sections with shared library
# source: dummy.s
# ld: --gc-sections -e main tmpdir/pr11218-2.o tmpdir/pr11218-1.so
# target: *-*-linux*
# target: *-*-linux* *-*-gnu*
# error: undefined reference to `unresolved_detected_at_runtime_not_at_linktime'

View File

@ -1,7 +1,7 @@
#name: --gc-sections with __start_
#ld: --gc-sections -e _start
#nm: -n
#target: *-*-linux*
#target: *-*-linux* *-*-gnu*
#notarget: *-*-*aout *-*-*oldld
#...

View File

@ -1,5 +1,5 @@
# Expect script for ld-i386 tests
# Copyright (C) 2002, 2005, 2006, 2007, 2008, 2009
# Copyright (C) 2002, 2005, 2006, 2007, 2008, 2009, 2010
# Free Software Foundation
#
# This file is part of the GNU Binutils.
@ -102,6 +102,7 @@ if { !([istarget "i?86-*-elf*"]
|| ([istarget "i?86-*-linux*"]
&& ![istarget "*-*-*aout*"]
&& ![istarget "*-*-*oldld*"])
|| [istarget "i?86-*-gnu*"]
|| [istarget "x86_64-*-linux*"]
|| [istarget "amd64-*-linux*"]) } {
return
@ -194,6 +195,7 @@ run_dump_test "nogot2"
run_dump_test "discarded1"
if { !([istarget "i?86-*-linux*"]
|| [istarget "i?86-*-gnu*"]
|| [istarget "x86_64-*-linux*"]) } {
return
}

View File

@ -1,5 +1,5 @@
# Expect script for binutils tests
# Copyright 2009 Free Software Foundation, Inc.
# Copyright 2009, 2010 Free Software Foundation, Inc.
#
# This file is part of the GNU Binutils.
#
@ -24,11 +24,11 @@
# Make sure that binutils can correctly handle ld output in ELF with
# STT_GNU_IFUNC symbols.
# Run on Linux/x86 only.
if { !([istarget "i?86-*-elf*"]
|| ([istarget "i?86-*-linux*"]
&& ![istarget "*-*-*aout*"]
&& ![istarget "*-*-*oldld*"])
|| [istarget "i?86-*-gnu*"]
|| [istarget "x86_64-*-linux*"]
|| [istarget "amd64-*-linux*"]) } {
return

View File

@ -1,6 +1,6 @@
# Expect script for linker support of IFUNC symbols and relocations.
#
# Copyright 2009 Free Software Foundation, Inc.
# Copyright 2009, 2010 Free Software Foundation, Inc.
# Contributed by Red Hat.
#
# This file is part of the GNU Binutils.
@ -32,7 +32,8 @@ if {!(([istarget "i?86-*-*"]
&& ([istarget "*-*-elf*"]
|| ([istarget "*-*-linux*"]
&& ![istarget "*-*-*aout*"]
&& ![istarget "*-*-*oldld*"]))) } {
&& ![istarget "*-*-*oldld*"])
|| ([istarget "*-*-gnu*"]))) } {
verbose "IFUNC tests not run - target does not support IFUNC"
return
}

View File

@ -1,5 +1,5 @@
# Expect script for ld linkonce tests
# Copyright 2001, 2002, 2005, 2007 Free Software Foundation, Inc.
# Copyright 2001, 2002, 2005, 2007, 2010 Free Software Foundation, Inc.
#
# This file is part of the GNU Binutils.
#
@ -25,7 +25,7 @@
# have to qualify on ELF specifically in every .d-file.
if { ![istarget *-*-linux*] \
&& ![istarget *-*-gnu] \
&& ![istarget *-*-gnu*] \
&& ![istarget hppa*64*-*-hpux*] \
&& ![istarget *-*-elf] } {
return

View File

@ -2,7 +2,7 @@
#source: y.s
#ld: -Ttext 0xa00 -T zeroeh.ld
#objdump: -s
#target: cris-*-elf cris-*-linux* i?86-*-elf i?86-*-linux*
#target: cris-*-elf cris-*-linux* i?86-*-elf i?86-*-linux* i?86-*-gnu*
# The word at address 201c, for the linkonce-excluded section, must be zero.

View File

@ -1,5 +1,5 @@
# Expect script for various PIE tests.
# Copyright 2006, 2007, 2009 Free Software Foundation, Inc.
# Copyright 2006, 2007, 2009, 2010 Free Software Foundation, Inc.
#
# This file is part of the GNU Binutils.
#
@ -22,8 +22,8 @@
# This test can only be run if ld generates native executables.
if ![isnative] then {return}
# Run on Linux only.
if { ![istarget *-*-linux*] } {
if { ![istarget *-*-linux*]
&& ![istarget *-*-gnu*] } {
return
}

View File

@ -1,5 +1,5 @@
# Test PHDRS with empty sections in a linker script.
# Copyright 2006, 2005, 2007 Free Software Foundation, Inc,
# Copyright 2006, 2005, 2007, 2010 Free Software Foundation, Inc,
#
# This file is part of the GNU Binutils.
#
@ -25,6 +25,7 @@ if { ![istarget *-*-sysv4*] \
&& ![istarget *-*-eabi*] \
&& ![istarget hppa*64*-*-hpux*] \
&& ![istarget *-*-linux*] \
&& ![istarget *-*-gnu*] \
&& ![istarget *-*-irix5*] \
&& ![istarget *-*-irix6*] \
&& ![istarget *-*-solaris2*] } {

View File

@ -2,7 +2,7 @@
# source: rgn-at5.s
# ld: -T rgn-at5.t -z max-page-size=0x1000
# objdump: -w -h
# target: *-*-linux*
# target: *-*-linux* *-*-gnu*
# xfail: rx-*-*
# FAILS on the RX because the linker has to set LMA == VMA for the
# Renesas loader.

View File

@ -1,6 +1,6 @@
# Expect script for ld-shared tests
# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003,
# 2004, 2005, 2007, 2008, 2009
# 2004, 2005, 2007, 2008, 2009, 2010
# Free Software Foundation, Inc.
#
# This file is part of the GNU Binutils.
@ -38,6 +38,7 @@ if { ![istarget hppa*64*-*-hpux*] \
&& ![istarget i?86-*-unixware] \
&& ![istarget i?86-*-elf*] \
&& ![istarget i?86-*-linux*] \
&& ![istarget i?86-*-gnu*] \
&& ![istarget ia64-*-elf*] \
&& ![istarget ia64-*-linux*] \
&& ![istarget m68k-*-linux*] \

View File

@ -2,7 +2,7 @@
#source: dummy.s
#ld: -shared --entry foo tmpdir/libentry.a
#nm: -n
#target: *-*-linux*
#target: *-*-linux* *-*-gnu*
#...
[0-9a-f]+ T +foo

View File

@ -2,7 +2,7 @@
#source: dummy.s
#ld: -shared --entry foo -u foo tmpdir/libentry.a
#nm: -n
#target: *-*-linux*
#target: *-*-linux* *-*-gnu*
#...
[0-9a-f]+ T +foo

View File

@ -1,5 +1,5 @@
# Test handling of weak undefined symbols
# Copyright 2001, 2002, 2004, 2005, 2007
# Copyright 2001, 2002, 2004, 2005, 2007, 2010
# Free Software Foundation, Inc.
#
# This file is part of the GNU Binutils.
@ -30,6 +30,7 @@ if { ![istarget *-*-sysv4*] \
&& ![istarget *-*-eabi*] \
&& ![istarget hppa*64*-*-hpux*] \
&& ![istarget *-*-linux*] \
&& ![istarget *-*-gnu*] \
&& ![istarget *-*-irix5*] \
&& ![istarget *-*-irix6*] \
&& ![is_pecoff_format] \

View File

@ -412,6 +412,7 @@ proc is_elf_format {} {
&& ![istarget hppa*64*-*-hpux*]
&& ![istarget ia64-*-hpux*]
&& ![istarget *-*-linux*]
&& ![istarget *-*-gnu*]
&& ![istarget frv-*-uclinux*]
&& ![istarget bfin-*-uclinux]
&& ![istarget sh*-*-uclinux*]