aboutsummaryrefslogtreecommitdiff
path: root/ld
diff options
context:
space:
mode:
authorIan Lance Taylor <ian@airs.com>1995-12-19 23:00:26 +0000
committerIan Lance Taylor <ian@airs.com>1995-12-19 23:00:26 +0000
commitaf3f8771534640767bd99268a09c5cdc49c57848 (patch)
tree6fb73eda4465cf74cbb814fbcbf64ac1f0b2aed0 /ld
parent67cf67787d01a8b07edcb582efe4d033b4615f36 (diff)
downloadfsf-binutils-gdb-af3f8771534640767bd99268a09c5cdc49c57848.zip
fsf-binutils-gdb-af3f8771534640767bd99268a09c5cdc49c57848.tar.gz
fsf-binutils-gdb-af3f8771534640767bd99268a09c5cdc49c57848.tar.bz2
* ld-srec/srec.exp: Add setup_xfails for XCOFF targets.
Diffstat (limited to 'ld')
-rw-r--r--ld/testsuite/ChangeLog9
-rw-r--r--ld/testsuite/ld-srec/srec.exp22
2 files changed, 26 insertions, 5 deletions
diff --git a/ld/testsuite/ChangeLog b/ld/testsuite/ChangeLog
index b80be4e..cd77df8 100644
--- a/ld/testsuite/ChangeLog
+++ b/ld/testsuite/ChangeLog
@@ -1,5 +1,14 @@
+Tue Dec 19 18:01:01 1995 Ian Lance Taylor <ian@cygnus.com>
+
+ * ld-srec/srec.exp: Add setup_xfails for XCOFF targets.
+
Fri Dec 15 16:36:17 1995 Ian Lance Taylor <ian@cygnus.com>
+ * ld-srec/srec.exp: On a29k targets, use --defsym to define
+ V_SPILL and V_FILL.
+ * ld-srec/sr1.c (V_SPILL, V_FILL): Remove definitions.
+ * ld-srec/sr3.cc: Likewise.
+
* ld-srec/srec.exp: Remove i960 COFF setup_xfail.
Sat Dec 2 01:20:31 1995 Ian Lance Taylor <ian@cygnus.com>
diff --git a/ld/testsuite/ld-srec/srec.exp b/ld/testsuite/ld-srec/srec.exp
index 38b59eb..ce1bda9 100644
--- a/ld/testsuite/ld-srec/srec.exp
+++ b/ld/testsuite/ld-srec/srec.exp
@@ -210,19 +210,26 @@ proc run_srec_test { test objs } {
global sizeof_headers
global host_triplet
+ set flags ""
+
# If the linker script uses SIZEOF_HEADERS, use a -Ttext argument
# to force both the normal link and the S-record link to be put in
# the same place. We don't always use -Ttext because it interacts
# poorly with a.out.
if { $sizeof_headers } {
- set targ "-Ttext 0x1000"
- } else {
- set targ ""
+ set flags "$flags -Ttext 0x1000"
}
- if { ![ld_simple_link $ld tmpdir/sr1 "$targ $objs"] \
- || ![ld_simple_link $ld tmpdir/sr2.sr "$targ -oformat srec $objs"] } {
+ # The a29k compiled code calls V_SPILL and V_FILL. Since we don't
+ # need to run this code, but we don't have definitions for those
+ # functions, we just define them out.
+ if [istarget a29k*-*-*] {
+ set flags "$flags --defsym V_SPILL=0 --defsym V_FILL=0"
+ }
+
+ if { ![ld_simple_link $ld tmpdir/sr1 "$flags $objs"] \
+ || ![ld_simple_link $ld tmpdir/sr2.sr "$flags -oformat srec $objs"] } {
fail $test
return
}
@@ -283,6 +290,10 @@ setup_xfail "i*86-*-aout*"
# out.
setup_xfail "mips*-*-elf*" "mips*-*-irix5*" "mips*-*-irix6*"
+# The S-record linker doesn't do the magic TOC handling that XCOFF
+# linkers do.
+setup_xfail "*-*-aix*" "*-*-xcoff*"
+
run_srec_test $test1 "tmpdir/sr1.o tmpdir/sr2.o"
# Now try linking a C++ program with global constructors and
@@ -302,5 +313,6 @@ if ![ld_compile "$CXX $CXXFLAGS -fgnu-linker" $srcdir/$subdir/sr3.cc tmpdir/sr3.
# See above.
setup_xfail "i*86-*-aout*"
setup_xfail "mips*-*-elf*" "mips*-*-irix5*" "mips*-*-irix6*"
+setup_xfail "*-*-aix*" "*-*-xcoff*"
run_srec_test $test2 "tmpdir/sr3.o"