mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-06-21 02:24:17 +08:00
Use is_pecoff_format in ld testsuite
--image-base 0 is not just for x86_64 mingw. This patch fixes that, and a case where a changed LDFLAGS leaked out of one script to the next. * testsuite/ld-scripts/align.exp: Use is_pecoff_format. * testsuite/ld-scripts/defined.exp: Likewise. * testsuite/ld-scripts/provide.exp: Likewise. * testsuite/ld-scripts/weak.exp: Likewise. * testsuite/ld-scripts/empty-address.exp: Likewise. Reset LDFLAGS on exit. * testsuite/ld-scripts/expr.exp: Set LDFLAGS earlier, and with --image-base for PE. * testsuite/ld-scripts/include.exp: Set LDFLAGS for PE. * testsuite/ld-scripts/script.exp: Use is_pecoff_format, and set LDFLAGS as well as flags.
This commit is contained in:
14
ld/ChangeLog
14
ld/ChangeLog
@ -1,3 +1,17 @@
|
|||||||
|
2020-07-07 Alan Modra <amodra@gmail.com>
|
||||||
|
|
||||||
|
* testsuite/ld-scripts/align.exp: Use is_pecoff_format.
|
||||||
|
* testsuite/ld-scripts/defined.exp: Likewise.
|
||||||
|
* testsuite/ld-scripts/provide.exp: Likewise.
|
||||||
|
* testsuite/ld-scripts/weak.exp: Likewise.
|
||||||
|
* testsuite/ld-scripts/empty-address.exp: Likewise. Reset LDFLAGS
|
||||||
|
on exit.
|
||||||
|
* testsuite/ld-scripts/expr.exp: Set LDFLAGS earlier, and with
|
||||||
|
--image-base for PE.
|
||||||
|
* testsuite/ld-scripts/include.exp: Set LDFLAGS for PE.
|
||||||
|
* testsuite/ld-scripts/script.exp: Use is_pecoff_format, and
|
||||||
|
set LDFLAGS as well as flags.
|
||||||
|
|
||||||
2020-07-07 Alan Modra <amodra@gmail.com>
|
2020-07-07 Alan Modra <amodra@gmail.com>
|
||||||
|
|
||||||
* testsuite/ld-checks/checks.exp: Use is_xcoff_format.
|
* testsuite/ld-checks/checks.exp: Use is_xcoff_format.
|
||||||
|
@ -31,10 +31,10 @@ if ![ld_assemble $as $srcdir/$subdir/align.s tmpdir/align.o] {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
# mingw on x86_64 targets need to set the image base to 0 to avoid auto image-basing.
|
# Avoid auto image-basing.
|
||||||
set saved_LDFLAGS "$LDFLAGS"
|
set saved_LDFLAGS "$LDFLAGS"
|
||||||
if [istarget "x86_64-*-mingw*"] then {
|
if { [is_pecoff_format] } then {
|
||||||
set LDFLAGS "$LDFLAGS --image-base 0"
|
set LDFLAGS "$LDFLAGS --image-base 0"
|
||||||
}
|
}
|
||||||
|
|
||||||
if ![ld_link $ld tmpdir/align "$LDFLAGS -T $srcdir/$subdir/align.t tmpdir/align.o"] {
|
if ![ld_link $ld tmpdir/align "$LDFLAGS -T $srcdir/$subdir/align.t tmpdir/align.o"] {
|
||||||
|
@ -28,8 +28,8 @@ if ![ld_assemble $as $srcdir/$subdir/defined.s tmpdir/def.o] {
|
|||||||
}
|
}
|
||||||
|
|
||||||
set saved_LDFLAGS "$LDFLAGS"
|
set saved_LDFLAGS "$LDFLAGS"
|
||||||
if [istarget "x86_64-*-mingw*"] then {
|
if { [is_pecoff_format] } then {
|
||||||
set LDFLAGS "$LDFLAGS --image-base 0"
|
set LDFLAGS "$LDFLAGS --image-base 0"
|
||||||
}
|
}
|
||||||
|
|
||||||
if { ![ld_link $ld tmpdir/def "$LDFLAGS -T $srcdir/$subdir/defined.t tmpdir/def.o"] } {
|
if { ![ld_link $ld tmpdir/def "$LDFLAGS -T $srcdir/$subdir/defined.t tmpdir/def.o"] } {
|
||||||
|
@ -19,8 +19,9 @@
|
|||||||
# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston,
|
# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston,
|
||||||
# MA 02110-1301, USA.
|
# MA 02110-1301, USA.
|
||||||
|
|
||||||
if [istarget "x86_64-*-mingw*"] then {
|
set old_LDFLAGS $LDFLAGS
|
||||||
set LDFLAGS "$LDFLAGS --image-base 0"
|
if { [is_pecoff_format] } then {
|
||||||
|
set LDFLAGS "$LDFLAGS --image-base 0"
|
||||||
}
|
}
|
||||||
|
|
||||||
run_dump_test empty-address-1
|
run_dump_test empty-address-1
|
||||||
@ -29,3 +30,5 @@ run_dump_test empty-address-2b
|
|||||||
run_dump_test empty-address-3a
|
run_dump_test empty-address-3a
|
||||||
run_dump_test empty-address-3b
|
run_dump_test empty-address-3b
|
||||||
run_dump_test empty-address-3c
|
run_dump_test empty-address-3c
|
||||||
|
|
||||||
|
set LDFLAGS $old_LDFLAGS
|
||||||
|
@ -19,17 +19,20 @@
|
|||||||
# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston,
|
# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston,
|
||||||
# MA 02110-1301, USA.
|
# MA 02110-1301, USA.
|
||||||
|
|
||||||
|
set old_LDFLAGS $LDFLAGS
|
||||||
|
if { [istarget spu*-*-*] } then {
|
||||||
|
set LDFLAGS "$LDFLAGS --no-overlays --local-store 0:0"
|
||||||
|
} elseif { [is_pecoff_format] } then {
|
||||||
|
set LDFLAGS "$LDFLAGS --image-base 0"
|
||||||
|
}
|
||||||
|
|
||||||
run_dump_test expr1
|
run_dump_test expr1
|
||||||
run_dump_test expr2
|
run_dump_test expr2
|
||||||
run_dump_test sane1
|
run_dump_test sane1
|
||||||
run_dump_test assign-loc
|
run_dump_test assign-loc
|
||||||
run_dump_test pr14962
|
run_dump_test pr14962
|
||||||
run_dump_test pr14962-2
|
run_dump_test pr14962-2
|
||||||
|
run_dump_test pr18963
|
||||||
run_dump_test pr22267
|
run_dump_test pr22267
|
||||||
|
|
||||||
set old_ldflags $LDFLAGS
|
set LDFLAGS $old_LDFLAGS
|
||||||
if { [istarget spu*-*-*] } {
|
|
||||||
set LDFLAGS "$LDFLAGS --no-overlays --local-store 0:0"
|
|
||||||
}
|
|
||||||
run_dump_test pr18963
|
|
||||||
set LDFLAGS $old_ldflags
|
|
||||||
|
@ -23,8 +23,10 @@ if [is_aout_format] {
|
|||||||
}
|
}
|
||||||
|
|
||||||
set old_ldflags $LDFLAGS
|
set old_ldflags $LDFLAGS
|
||||||
if { [istarget spu*-*-*] } {
|
if { [istarget spu*-*-*] } then {
|
||||||
set LDFLAGS "$LDFLAGS --local-store 0:0 --no-overlays"
|
set LDFLAGS "$LDFLAGS --local-store 0:0 --no-overlays"
|
||||||
|
} elseif { [is_pecoff_format] } then {
|
||||||
|
set LDFLAGS "$LDFLAGS --image-base 0"
|
||||||
}
|
}
|
||||||
|
|
||||||
set test_list [lsort [glob -nocomplain $srcdir/$subdir/include*.d]]
|
set test_list [lsort [glob -nocomplain $srcdir/$subdir/include*.d]]
|
||||||
|
@ -31,8 +31,8 @@ if {[istarget "powerpc*-*-aix*"] || [istarget "rs6000-*-aix*"] || [is_aout_forma
|
|||||||
}
|
}
|
||||||
|
|
||||||
set saved_LDFLAGS "$LDFLAGS"
|
set saved_LDFLAGS "$LDFLAGS"
|
||||||
if [istarget "x86_64-*-mingw*"] then {
|
if { [is_pecoff_format] } then {
|
||||||
set LDFLAGS "$LDFLAGS --image-base 0"
|
set LDFLAGS "$LDFLAGS --image-base 0"
|
||||||
}
|
}
|
||||||
|
|
||||||
set test_list [lsort [glob -nocomplain $srcdir/$subdir/provide-*.d]]
|
set test_list [lsort [glob -nocomplain $srcdir/$subdir/provide-*.d]]
|
||||||
|
@ -183,13 +183,10 @@ proc extract_symbol_test { testfile testname } {
|
|||||||
|
|
||||||
# PE targets need to set the image base to 0 to avoid complications from nm.
|
# PE targets need to set the image base to 0 to avoid complications from nm.
|
||||||
set flags ""
|
set flags ""
|
||||||
if {[istarget "*-*-pe*"] \
|
set old_LDFLAGS $LDFLAGS
|
||||||
|| [istarget "*-*-cygwin*"] \
|
if { [is_pecoff_format] } then {
|
||||||
|| [istarget "*-*-mingw*"] \
|
set flags "--image-base 0"
|
||||||
|| [istarget "*-*-winnt*"] \
|
set LDFLAGS "$LDFLAGS --image-base 0"
|
||||||
|| [istarget "*-*-nt"] \
|
|
||||||
|| [istarget "*-*-interix*"] } then {
|
|
||||||
set flags "--image-base 0"
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if ![ld_link $ld tmpdir/script "$flags -T $srcdir/$subdir/script.t tmpdir/script.o"] {
|
if ![ld_link $ld tmpdir/script "$flags -T $srcdir/$subdir/script.t tmpdir/script.o"] {
|
||||||
@ -235,3 +232,5 @@ run_dump_test "pr20302"
|
|||||||
run_dump_test "segment-start" {{name (default)}}
|
run_dump_test "segment-start" {{name (default)}}
|
||||||
run_dump_test "segment-start" {{name (overridden)} \
|
run_dump_test "segment-start" {{name (overridden)} \
|
||||||
{ld -Ttext-segment=0x10000000}}
|
{ld -Ttext-segment=0x10000000}}
|
||||||
|
|
||||||
|
set LDFLAGS $old_LDFLAGS
|
||||||
|
@ -44,8 +44,8 @@ if {! [ld_assemble $as $srcdir/$subdir/weak1.s tmpdir/weak1.o]
|
|||||||
}
|
}
|
||||||
|
|
||||||
set saved_LDFLAGS "$LDFLAGS"
|
set saved_LDFLAGS "$LDFLAGS"
|
||||||
if [istarget "x86_64-*-mingw*"] then {
|
if { [is_pecoff_format] } then {
|
||||||
set LDFLAGS "$LDFLAGS --image-base 0"
|
set LDFLAGS "$LDFLAGS --image-base 0"
|
||||||
}
|
}
|
||||||
|
|
||||||
set weak_regexp_big \
|
set weak_regexp_big \
|
||||||
|
Reference in New Issue
Block a user