Run PR ld/17618 test only with 64-bit ELF linker
PR ld/17618 test requires 64-bit linker to run. Set LD_CLASS to "64bit" for 64-bit ELF linker and run PR ld/17618 test only if $LD_CLASS is "64bit". More checks can be added to support 64-bit linkers in non-ELF format. * testsuite/config/default.exp (LD_CLASS): New. Set to "64bit" for 64-bit ELF linker. * testsuite/ld-x86-64/pr17618.d (#notarget): Removed. * testsuite/ld-x86-64/x86-64.exp: Run pr17618 only for 64-bit linker.
This commit is contained in:
parent
0968fbae6b
commit
978c05401b
|
@ -1,3 +1,11 @@
|
||||||
|
2017-08-09 H.J. Lu <hongjiu.lu@intel.com>
|
||||||
|
|
||||||
|
* testsuite/config/default.exp (LD_CLASS): New. Set to "64bit"
|
||||||
|
for 64-bit ELF linker.
|
||||||
|
* testsuite/ld-x86-64/pr17618.d (#notarget): Removed.
|
||||||
|
* testsuite/ld-x86-64/x86-64.exp: Run pr17618 only for 64-bit
|
||||||
|
linker.
|
||||||
|
|
||||||
2017-08-08 H.J. Lu <hongjiu.lu@intel.com>
|
2017-08-08 H.J. Lu <hongjiu.lu@intel.com>
|
||||||
|
|
||||||
PR ld/21924
|
PR ld/21924
|
||||||
|
|
|
@ -251,6 +251,16 @@ if ![info exists LDFLAGS] then {
|
||||||
set LDFLAGS {}
|
set LDFLAGS {}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# Set LD_CLASS to "64bit" for 64-bit LD.
|
||||||
|
if { ![info exists LD_CLASS] } then {
|
||||||
|
set readelf_output [run_host_cmd "$READELF" "-h $LD"]
|
||||||
|
if { [regexp {[ \t]+Class:[ \t]+ELF64} $readelf_output] } then {
|
||||||
|
set LD_CLASS "64bit"
|
||||||
|
} else {
|
||||||
|
set LD_CLASS "32bit"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
# Set PLT_CFLAGS to "-fplt" if target compiler supports it.
|
# Set PLT_CFLAGS to "-fplt" if target compiler supports it.
|
||||||
|
|
||||||
if { ![info exists PLT_CFLAGS] } then {
|
if { ![info exists PLT_CFLAGS] } then {
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
#name: PLT PC-relative offset overflow check
|
#name: PLT PC-relative offset overflow check
|
||||||
#as: --64
|
#as: --64
|
||||||
#ld: -shared -melf_x86_64
|
#ld: -shared -melf_x86_64
|
||||||
#notarget: x86_64-*-linux*-gnux32
|
|
||||||
#error: .*PC-relative offset overflow in PLT entry for `bar'
|
#error: .*PC-relative offset overflow in PLT entry for `bar'
|
||||||
|
|
|
@ -1572,7 +1572,11 @@ run_ld_link_tests [list \
|
||||||
]
|
]
|
||||||
|
|
||||||
# Linux only tests
|
# Linux only tests
|
||||||
run_dump_test "pr17618"
|
global LD_CLASS
|
||||||
|
if { "$LD_CLASS" == "64bit" } then {
|
||||||
|
# This test needs 64-bit linker.
|
||||||
|
run_dump_test "pr17618"
|
||||||
|
}
|
||||||
run_dump_test "pltgot-1"
|
run_dump_test "pltgot-1"
|
||||||
run_dump_test "pltgot-2"
|
run_dump_test "pltgot-2"
|
||||||
run_dump_test "pr20830a"
|
run_dump_test "pr20830a"
|
||||||
|
|
Loading…
Reference in New Issue