From a359509ed39f8affc5f3e995b57d7611edfbb59d Mon Sep 17 00:00:00 2001 From: Zack Weinberg Date: Wed, 1 Jun 2005 04:04:19 +0000 Subject: ld: * ldlang.c (entry_symbol_default): New file-scope global. (lang_finish): Use it, not a hardwired "start". (lang_default_entry): Set it. * ldlang.h: Declare lang_default_entry. * emultempl/beos.em, emultempl/pe.em: Use lang_default_entry, not lang_add_entry, to override default entry point symbol. ld/testsuite: * ld-scripts/align.exp: Mark align1 XFAIL on PECOFF targets. * ld-scripts/data.exp: Mark data UNSUPPORTED on a.out targets. * ld-scripts/provide.exp, ld-scripts/size.exp: Mark all tests UNSUPPORTED on a.out targets. Tidy. --- ld/testsuite/ld-scripts/align.exp | 6 ++++++ ld/testsuite/ld-scripts/data.exp | 7 +++++++ ld/testsuite/ld-scripts/provide.exp | 15 ++++++++++----- ld/testsuite/ld-scripts/size.exp | 19 +++++++++++-------- 4 files changed, 34 insertions(+), 13 deletions(-) (limited to 'ld/testsuite/ld-scripts') diff --git a/ld/testsuite/ld-scripts/align.exp b/ld/testsuite/ld-scripts/align.exp index 6f3a9de..8bcd222 100644 --- a/ld/testsuite/ld-scripts/align.exp +++ b/ld/testsuite/ld-scripts/align.exp @@ -29,6 +29,12 @@ if ![ld_assemble $as $srcdir/$subdir/align.s tmpdir/align.o] { return } +# Doesn't work on PECOFF, appears to be a genuine bug +if [is_pecoff_format] { + global target_triplet + setup_xfail $target_triplet +} + if ![ld_simple_link $ld tmpdir/align "-T $srcdir/$subdir/align.t tmpdir/align.o"] { fail $testname } else { diff --git a/ld/testsuite/ld-scripts/data.exp b/ld/testsuite/ld-scripts/data.exp index 7f63110..8dd173a 100644 --- a/ld/testsuite/ld-scripts/data.exp +++ b/ld/testsuite/ld-scripts/data.exp @@ -17,4 +17,11 @@ # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# An a.out "objdump -s -j .text" has the file header visible inside the +# text segment, confusing run_dump_test. +if {[is_aout_format]} { + unsupported data + return +} + run_dump_test data diff --git a/ld/testsuite/ld-scripts/provide.exp b/ld/testsuite/ld-scripts/provide.exp index 6589e17..7e2c0e7 100644 --- a/ld/testsuite/ld-scripts/provide.exp +++ b/ld/testsuite/ld-scripts/provide.exp @@ -15,15 +15,20 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, +# USA. -if [istarget "rs6000-*-aix*"] { - # Target maps .text and .data to other sections. +# AIX maps .text and .data to other sections. +# a.out objdump displays the file header inside the text segment, +# confusing run_dump_test. + +if {[istarget "rs6000-*-aix*"] || [is_aout_format]} { + unsupported provide-1 + unsupported provide-2 + unsupported provide-3 return } -set testname "provide" - run_dump_test provide-1 run_dump_test provide-2 setup_xfail *-*-* diff --git a/ld/testsuite/ld-scripts/size.exp b/ld/testsuite/ld-scripts/size.exp index ba08fe2..49405cb 100644 --- a/ld/testsuite/ld-scripts/size.exp +++ b/ld/testsuite/ld-scripts/size.exp @@ -16,19 +16,22 @@ # Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. # -if [istarget "rs6000-*-aix*"] { - # Target maps .text and .data to other sections. +# AIX maps .text and .data to other sections. +# a.out objdump displays the file header inside the text segment, +# confusing run_dump_test. + +if {[istarget "rs6000-*-aix*"] || [is_aout_format]} { + unsupported size-1 + unsupported size-2 return } run_dump_test size-1 -if ![is_elf_format] { - return -} - -if [istarget "mips*-*-*"] { - # MIPS inserts a REGINFO PHDR +# size-2 only works on ELF targets. +# MIPS inserts a REGINFO PHDR +if {![is_elf_format] || [istarget "mips*-*-*"]} { + unsupported size-2 return } -- cgit v1.1