aboutsummaryrefslogtreecommitdiff
path: root/ld
diff options
context:
space:
mode:
Diffstat (limited to 'ld')
-rw-r--r--ld/testsuite/ChangeLog9
-rw-r--r--ld/testsuite/ld-srec/.Sanitize34
-rw-r--r--ld/testsuite/ld-srec/srec.exp49
3 files changed, 91 insertions, 1 deletions
diff --git a/ld/testsuite/ChangeLog b/ld/testsuite/ChangeLog
index 8e571e0..f178ae6 100644
--- a/ld/testsuite/ChangeLog
+++ b/ld/testsuite/ChangeLog
@@ -1,3 +1,12 @@
+Wed Aug 19 11:59:19 1998 Nick Clifton <nickc@cygnus.com>
+
+ * ld-srec/srec.exp: Add arm/thumb-elf expected failures.
+
+Thu Aug 13 12:41:58 1998 Ian Lance Taylor <ian@cygnus.com>
+
+ * ld-bootstrap/bootstrap.exp: Don't run the --static bootstrap
+ test if we don't have a static libbfd.a.
+
Wed Aug 12 15:19:35 1998 Ian Lance Taylor <ian@cygnus.com>
Based on patch from H.J. Lu <hjl@gnu.org>:
diff --git a/ld/testsuite/ld-srec/.Sanitize b/ld/testsuite/ld-srec/.Sanitize
index 19e17bf..954ac1a 100644
--- a/ld/testsuite/ld-srec/.Sanitize
+++ b/ld/testsuite/ld-srec/.Sanitize
@@ -36,4 +36,38 @@ Things-to-lose:
Do-last:
+armelf_files="srec.exp"
+if ( echo $* | grep keep\-armelf > /dev/null ) ; then
+ for i in $armelf_files ; do
+ if test ! -d $i && (grep sanitize-armelf $i > /dev/null) ; then
+ if [ -n "${verbose}" ] ; then
+ echo Keeping armelf stuff in $i
+ fi
+ fi
+ done
+else
+ for i in $armelf_files ; do
+ if test ! -d $i && (grep sanitize-armelf $i > /dev/null) ; then
+ if [ -n "${verbose}" ] ; then
+ echo Removing traces of \"armelf\" from $i...
+ fi
+ cp $i new
+ sed '/start\-sanitize\-armelf/,/end-\sanitize\-armelf/d' < $i > new
+ if [ -n "${safe}" -a ! -f .Recover/$i ] ; then
+ if [ -n "${verbose}" ] ; then
+ echo Caching $i in .Recover...
+ fi
+ mv $i .Recover
+ fi
+ mv new $i
+ fi
+ done
+fi
+
+for i in * ; do
+ if test ! -d $i && (grep sanitize $i > /dev/null) ; then
+ echo '***' Some mentions of Sanitize are still left in $i! 1>&2
+ fi
+done
+
#eof
diff --git a/ld/testsuite/ld-srec/srec.exp b/ld/testsuite/ld-srec/srec.exp
index 7a52c89..f9436e6 100644
--- a/ld/testsuite/ld-srec/srec.exp
+++ b/ld/testsuite/ld-srec/srec.exp
@@ -235,7 +235,12 @@ proc run_srec_test { test objs } {
if [istarget arm-*-pe] {
set flags "$flags --defsym ___gccmain=0"
}
-
+ # start-sanitize-armelf
+ if [istarget arm-*-elf] {
+ set flags "$flags --defsym ___gccmain=0"
+ }
+ # end-sanitize-armelf
+
# Thumb targets call __gccmain
if [istarget thumb-*-coff] {
set flags "$flags --defsym ___gccmain=0"
@@ -243,6 +248,11 @@ proc run_srec_test { test objs } {
if [istarget thumb-*-pe] {
set flags "$flags --defsym ___gccmain=0"
}
+ # start-sanitize-armelf
+ if [istarget thumb-*-*] {
+ set flags "$flags --defsym ___gccmain=0"
+ }
+ # end-sanitize-armelf
# PowerPC EABI code calls __eabi.
if [istarget powerpc*-*-eabi*] {
@@ -254,6 +264,11 @@ proc run_srec_test { test objs } {
set flags "$flags --defsym __truncsipsi2_d0_d2=0"
}
+ # V850 targets need libgcc.a
+ if [istarget v850*-*-elf] {
+ set objs "$objs -L ../gcc -lgcc"
+ }
+
if { ![ld_simple_link $ld tmpdir/sr1 "$flags $objs"] \
|| ![ld_simple_link $ld tmpdir/sr2.sr "$flags -oformat srec $objs"] } {
setup_xfail "hppa*-*-*elf*"
@@ -322,11 +337,30 @@ setup_xfail "mips*-*-irix5*" "mips*-*-irix6*"
setup_xfail "*-*-aix*" "*-*-xcoff*"
# The S-record linker doesn't build ARM/Thumb stubs.
+setup_xfail "arm-*-coff*"
+setup_xfail "arm-*-pe*"
+# start-sanitize-armelf
+setup_xfail "arm-*elf*"
+# end-sanitize-armelf
setup_xfail "thumb-*-coff*"
+setup_xfail "thumb-*-pe*"
+# start-sanitize-armelf
+setup_xfail "thumb-*-elf*"
+# end-sanitize-armelf
# The S-record linker doesn't build special EABI sections.
setup_xfail "powerpc*-*-eabi*"
+# The S-record linker doesn't include the .got section.
+setup_xfail "powerpc*-*-linux*"
+
+# The S-record linker doesn't include the .{zda} sections.
+setup_xfail "v850*-*-elf"
+
+# The S-record linker doesn't handle Alpha Elf relaxation.
+setup_xfail "alpha*-*-elf*" "alpha*-*-linux-gnu*" "alpha*-*-gnu*"
+setup_xfail "alpha*-*-netbsd*"
+
run_srec_test $test1 "tmpdir/sr1.o tmpdir/sr2.o"
# Now try linking a C++ program with global constructors and
@@ -347,7 +381,20 @@ if ![ld_compile "$CXX $CXXFLAGS -fgnu-linker" $srcdir/$subdir/sr3.cc tmpdir/sr3.
setup_xfail "i*86-*-aout*"
setup_xfail "mips*-*-irix5*" "mips*-*-irix6*"
setup_xfail "*-*-aix*" "*-*-xcoff*"
+setup_xfail "arm-*-coff*"
+setup_xfail "arm-*-pe*"
+# start-sanitize-armelf
+setup_xfail "arm-*-elf*"
+# end-sanitize-armelf
setup_xfail "thumb-*-coff*"
+setup_xfail "thumb-*-pe*"
+# start-sanitize-armelf
+setup_xfail "thumb-*-elf*"
+# end-sanitize-armelf
setup_xfail "powerpc*-*-eabi*"
+setup_xfail "powerpc*-*-linux*"
+setup_xfail "v850*-*-elf"
+setup_xfail "alpha*-*-elf*" "alpha*-*-linux-gnu*" "alpha*-*-gnu*"
+setup_xfail "alpha*-*-netbsd*"
run_srec_test $test2 "tmpdir/sr3.o"