From: Ian Lance Taylor Date: Thu, 29 Sep 1994 16:39:01 +0000 (+0000) Subject: * VMS does not permits `.' in directory names. Renamed X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=d2c0200413611fb6b7fad8e45c9a42c2e8f743f7;p=binutils-gdb.git * VMS does not permits `.' in directory names. Renamed ld.bootstrap to ld-bootstrap, ld.cdtest to ld-cdtest, and ld.scripts to ld-scripts. --- diff --git a/ld/testsuite/.Sanitize b/ld/testsuite/.Sanitize index 19c4f45808d..5d0894f64ca 100644 --- a/ld/testsuite/.Sanitize +++ b/ld/testsuite/.Sanitize @@ -26,9 +26,9 @@ Things-to-keep: ChangeLog config lib -ld.bootstrap -ld.cdtest -ld.scripts +ld-bootstrap +ld-cdtest +ld-scripts Things-to-lose: diff --git a/ld/testsuite/ld-bootstrap/.Sanitize b/ld/testsuite/ld-bootstrap/.Sanitize new file mode 100644 index 00000000000..abbbecc75cb --- /dev/null +++ b/ld/testsuite/ld-bootstrap/.Sanitize @@ -0,0 +1,36 @@ +# .Sanitize for ld dejagnu testsuites + +# Each directory to survive it's way into a release will need a file +# like this one called "./.Sanitize". All keyword lines must exist, +# and must exist in the order specified by this file. Each directory +# in the tree will be processed, top down, in the following order.. + +# Hash started lines like this one are comments and will be deleted +# before anything else is done. Blank lines will also be squashed +# out. + +# The lines between the "Do-first:" line and the "Things-to-keep:" +# line are executed as a /bin/sh shell script before anything else is +# done in this directory. + +Do-first: + +# All files listed between the "Things-to-keep:" line and the +# "Do-last:" line will be kept. All other files will be removed. +# Directories listed in this section will have their own Sanitize +# called. Directories not listed will be removed in their entirety +# with rm -rf. + +Things-to-keep: + +bootstrap.exp + +Things-to-lose: + +# The lines between the "Do-last:" line and the end of the file +# are executed as a /bin/sh shell script after everything else is +# done. + +Do-last: + +#eof diff --git a/ld/testsuite/ld-cdtest/.Sanitize b/ld/testsuite/ld-cdtest/.Sanitize new file mode 100644 index 00000000000..9c2e8c5e981 --- /dev/null +++ b/ld/testsuite/ld-cdtest/.Sanitize @@ -0,0 +1,41 @@ +# .Sanitize for ld dejagnu testsuites + +# Each directory to survive it's way into a release will need a file +# like this one called "./.Sanitize". All keyword lines must exist, +# and must exist in the order specified by this file. Each directory +# in the tree will be processed, top down, in the following order.. + +# Hash started lines like this one are comments and will be deleted +# before anything else is done. Blank lines will also be squashed +# out. + +# The lines between the "Do-first:" line and the "Things-to-keep:" +# line are executed as a /bin/sh shell script before anything else is +# done in this directory. + +Do-first: + +# All files listed between the "Things-to-keep:" line and the +# "Do-last:" line will be kept. All other files will be removed. +# Directories listed in this section will have their own Sanitize +# called. Directories not listed will be removed in their entirety +# with rm -rf. + +Things-to-keep: + +cdtest-foo.cc +cdtest-foo.h +cdtest-bar.cc +cdtest-main.cc +cdtest.dat +cdtest.exp + +Things-to-lose: + +# The lines between the "Do-last:" line and the end of the file +# are executed as a /bin/sh shell script after everything else is +# done. + +Do-last: + +#eof diff --git a/ld/testsuite/ld-cdtest/cdtest-bar.cc b/ld/testsuite/ld-cdtest/cdtest-bar.cc new file mode 100644 index 00000000000..79000e33954 --- /dev/null +++ b/ld/testsuite/ld-cdtest/cdtest-bar.cc @@ -0,0 +1,17 @@ +// test program for Class Foo + +#include "cdtest-foo.h" + +static Foo static_foo( "static_foo"); + +Foo f() +{ + Foo x; + return x; +} + +void g() +{ + Foo other_foo1 = Foo( "other_foo1"), other_foo2 = Foo( "other_foo2"); + other_foo2 = other_foo1; +} diff --git a/ld/testsuite/ld-cdtest/cdtest-foo.cc b/ld/testsuite/ld-cdtest/cdtest-foo.cc new file mode 100644 index 00000000000..615e33cea78 --- /dev/null +++ b/ld/testsuite/ld-cdtest/cdtest-foo.cc @@ -0,0 +1,89 @@ +// Class Foo +#pragma implementation + + +// We don't use header files, since we only want to see, whether the +// compiler is installed properly. +// +#if (__GNUG__ == 2) +typedef __SIZE_TYPE__ size_t; +#else +typedef unsigned int size_t; +#endif + +extern "C" { + char *strncpy (char* dest, const char* dest, size_t len); + int printf (const char*, ...); +}; + +#include "cdtest-foo.h" + +int Foo::foos = 0; + +void Foo::init_foo () +{ + printf ("BROKENLY calling Foo::init_foo from __init_start; size_of(Foo) = %d\n", sizeof(Foo)); + foos = FOOLISH_NUMBER; +} + + +Foo::Foo () +{ + i = ++foos; + strncpy (message, "default-foo", len); +#ifdef WITH_ADDR + printf ("Constructing Foo(%d) \"default-foo\" at %08x\n", i, this); +#else + printf ("Constructing Foo(%d) \"default-foo\"\n", i); +#endif +} + +Foo::Foo (char* msg) +{ + i = ++foos; + strncpy( message, msg, len); +#ifdef WITH_ADDR + printf ( "Constructing Foo(%d) \"%s\" at %08x\n", i, message, this); +#else + printf ( "Constructing Foo(%d) \"%s\"\n", i, message); +#endif +} + + +Foo::Foo (const Foo& foo) +{ + i = ++foos; +#ifdef WITH_ADDR + printf ("Initializing Foo(%d) \"%s\" at %08x with Foo(%d) %08x\n", + i, foo.message, this, foo.i, &foo); +#else + printf ("Initializing Foo(%d) \"%s\" with Foo(%d)\n",i, foo.message, foo.i); +#endif + for ( int k = 0; k < FOO_MSG_LEN; k++) message[k] = foo.message[k]; +} + + +Foo& Foo::operator= (const Foo& foo) +{ +#ifdef WITH_ADDR + printf ("Copying Foo(%d) \"%s\" at %08x to Foo(%d) %08x\n", + foo.i, foo.message, &foo, i, this); +#else + printf ("Copying Foo(%d) \"%s\" to Foo(%d)\n", foo.i, foo.message, i); +#endif + for ( int k = 0; k < FOO_MSG_LEN; k++) message[k] = foo.message[k]; + return *this; +} + + +Foo::~Foo () +{ + foos--; +#ifdef WITH_ADDR + printf ("Destructing Foo(%d) \"%s\" at %08x (remaining foos: %d)\n", + i, message, this, foos); +#else + printf ("Destructing Foo(%d) \"%s\" (remaining foos: %d)\n", + i, message, foos); +#endif +} diff --git a/ld/testsuite/ld-cdtest/cdtest.dat b/ld/testsuite/ld-cdtest/cdtest.dat new file mode 100644 index 00000000000..39be0dbc2c7 --- /dev/null +++ b/ld/testsuite/ld-cdtest/cdtest.dat @@ -0,0 +1,15 @@ +Constructing Foo(1) "static_foo" +Constructing Foo(2) "static_foo" +Constructing Foo(3) "automatic_foo" +Constructing Foo(4) "default-foo" +Initializing Foo(5) "default-foo" with Foo(4) +Destructing Foo(4) "default-foo" (remaining foos: 4) +Constructing Foo(5) "other_foo1" +Constructing Foo(6) "other_foo2" +Copying Foo(5) "other_foo1" to Foo(6) +Destructing Foo(6) "other_foo1" (remaining foos: 5) +Destructing Foo(5) "other_foo1" (remaining foos: 4) +Destructing Foo(5) "default-foo" (remaining foos: 3) +Destructing Foo(3) "automatic_foo" (remaining foos: 2) +Destructing Foo(2) "static_foo" (remaining foos: 1) +Destructing Foo(1) "static_foo" (remaining foos: 0) diff --git a/ld/testsuite/ld-scripts/.Sanitize b/ld/testsuite/ld-scripts/.Sanitize new file mode 100644 index 00000000000..b68da1b6cc3 --- /dev/null +++ b/ld/testsuite/ld-scripts/.Sanitize @@ -0,0 +1,41 @@ +# .Sanitize for ld dejagnu testsuites + +# Each directory to survive it's way into a release will need a file +# like this one called "./.Sanitize". All keyword lines must exist, +# and must exist in the order specified by this file. Each directory +# in the tree will be processed, top down, in the following order.. + +# Hash started lines like this one are comments and will be deleted +# before anything else is done. Blank lines will also be squashed +# out. + +# The lines between the "Do-first:" line and the "Things-to-keep:" +# line are executed as a /bin/sh shell script before anything else is +# done in this directory. + +Do-first: + +# All files listed between the "Things-to-keep:" line and the +# "Do-last:" line will be kept. All other files will be removed. +# Directories listed in this section will have their own Sanitize +# called. Directories not listed will be removed in their entirety +# with rm -rf. + +Things-to-keep: + +defined.exp +defined.s +defined.t +script.exp +script.s +script.t + +Things-to-lose: + +# The lines between the "Do-last:" line and the end of the file +# are executed as a /bin/sh shell script after everything else is +# done. + +Do-last: + +#eof diff --git a/ld/testsuite/ld-scripts/defined.exp b/ld/testsuite/ld-scripts/defined.exp new file mode 100644 index 00000000000..a1f86986fb3 --- /dev/null +++ b/ld/testsuite/ld-scripts/defined.exp @@ -0,0 +1,29 @@ +# Test DEFINED in a linker script. +# By Ian Lance Taylor, Cygnus Support. + +if ![ld_assemble $as $srcdir$subdir/defined.s tmpdir/def.o] { return } + +set prms_id 5699 + +if ![ld_simple_link $ld tmpdir/def "-T $srcdir$subdir/defined.t tmpdir/def.o"] { + fail DEFINED +} else { + if [ld_nm $nm tmpdir/def] { + if {![info exists nm_output(value1)] \ + || ![info exists nm_output(value2)]} { + fail "DEFINED (bad output from $nm)" + } else { + if {$nm_output(value1) != 1} { + fail "DEFINED (value1 == $nm_output(value1))" + } else { + if {$nm_output(value2) != 2} { + fail "DEFINED (value2 == $nm_output(value2))" + } else { + pass DEFINED + } + } + } + } +} + +set prms_id 0 diff --git a/ld/testsuite/ld-scripts/defined.s b/ld/testsuite/ld-scripts/defined.s new file mode 100644 index 00000000000..a364bbbbe6c --- /dev/null +++ b/ld/testsuite/ld-scripts/defined.s @@ -0,0 +1,2 @@ + .globl defined + defined = 1 diff --git a/ld/testsuite/ld-scripts/defined.t b/ld/testsuite/ld-scripts/defined.t new file mode 100644 index 00000000000..d1e4748c0e1 --- /dev/null +++ b/ld/testsuite/ld-scripts/defined.t @@ -0,0 +1,5 @@ +SECTIONS { + .text : { *(.text) } +} +value1 = DEFINED (defined) ? 1 : 2; +value2 = DEFINED (undefined) ? 1 : 2; diff --git a/ld/testsuite/ld-scripts/script.s b/ld/testsuite/ld-scripts/script.s new file mode 100644 index 00000000000..a8629117091 --- /dev/null +++ b/ld/testsuite/ld-scripts/script.s @@ -0,0 +1,6 @@ + .text +text_symbol: + .long 1 + .data +data_symbol: + .long 2 diff --git a/ld/testsuite/ld-scripts/script.t b/ld/testsuite/ld-scripts/script.t new file mode 100644 index 00000000000..3da47e1858f --- /dev/null +++ b/ld/testsuite/ld-scripts/script.t @@ -0,0 +1,14 @@ +SECTIONS +{ + .text 0x100 : { + text_start = .; + *(.text) + text_end = .; + } + . = 0x1000; + .data : { + data_start = .; + *(.data) + data_end = .; + } +} diff --git a/ld/testsuite/ld.bootstrap/.Sanitize b/ld/testsuite/ld.bootstrap/.Sanitize deleted file mode 100644 index abbbecc75cb..00000000000 --- a/ld/testsuite/ld.bootstrap/.Sanitize +++ /dev/null @@ -1,36 +0,0 @@ -# .Sanitize for ld dejagnu testsuites - -# Each directory to survive it's way into a release will need a file -# like this one called "./.Sanitize". All keyword lines must exist, -# and must exist in the order specified by this file. Each directory -# in the tree will be processed, top down, in the following order.. - -# Hash started lines like this one are comments and will be deleted -# before anything else is done. Blank lines will also be squashed -# out. - -# The lines between the "Do-first:" line and the "Things-to-keep:" -# line are executed as a /bin/sh shell script before anything else is -# done in this directory. - -Do-first: - -# All files listed between the "Things-to-keep:" line and the -# "Do-last:" line will be kept. All other files will be removed. -# Directories listed in this section will have their own Sanitize -# called. Directories not listed will be removed in their entirety -# with rm -rf. - -Things-to-keep: - -bootstrap.exp - -Things-to-lose: - -# The lines between the "Do-last:" line and the end of the file -# are executed as a /bin/sh shell script after everything else is -# done. - -Do-last: - -#eof diff --git a/ld/testsuite/ld.bootstrap/bootstrap.exp b/ld/testsuite/ld.bootstrap/bootstrap.exp deleted file mode 100644 index f2e7c5cc7db..00000000000 --- a/ld/testsuite/ld.bootstrap/bootstrap.exp +++ /dev/null @@ -1,75 +0,0 @@ -# Expect script for LD Bootstrap Tests -# Copyright (C) 1993,1994 Free Software Foundation -# -# This file is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# 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., 675 Mass Ave, Cambridge, MA 02139, USA. */ -# -# Written by Jeffrey Wheat (cassidy@cygnus.com) -# Rewritten by Ian Lance Taylor (ian@cygnus.com) -# - -# Make sure that ld can bootstrap itself. - -# This test can only be run if ld generates native executables. -if ![isnative] {return} - -# This test can only be run if we have the ld build directory, since -# we need the object files. -if {$ld != "$objdir/ld.new"} {return} - -# Bootstrap ld. First link the object files together using -r, in -# order to test -r. Then link the result into an executable, ld1, to -# really test -r. Use ld1 to link a fresh ld, ld2. Use ld2 to link a -# new ld, ld3. ld2 and ld3 should be identical. - -foreach flags {"" "--static" "--traditional-format" "--no-keep-memory"} { - if {"$flags" != ""} { - set testname "bootstrap with $flags" - } else { - set testname "bootstrap" - } - - if ![ld_relocate $ld tmpdir/ld-partial.o "$flags $OFILES"] { - fail $testname - return - } - - if ![ld_link $ld tmpdir/ld1 "$flags tmpdir/ld-partial.o $BFDLIB $LIBIBERTY"] { - fail $testname - return - } - - if ![ld_link tmpdir/ld1 tmpdir/ld2 "$flags $OFILES $BFDLIB $LIBIBERTY"] { - fail $testname - return - } - - if ![ld_link tmpdir/ld2 tmpdir/ld3 "$flags $OFILES $BFDLIB $LIBIBERTY"] { - fail $testname - return - } - - send_log "cmp tmpdir/ld2 tmpdir/ld3\n" - verbose "cmp tmpdir/ld2 tmpdir/ld3" - catch "exec cmp tmpdir/ld2 tmpdir/ld3" exec_output - - if [string match "" $exec_output] then { - pass $testname - } else { - send_log "$exec_output\n" - verbose "$exec_output" 1 - - fail $testname - } -} diff --git a/ld/testsuite/ld.cdtest/.Sanitize b/ld/testsuite/ld.cdtest/.Sanitize deleted file mode 100644 index 9c2e8c5e981..00000000000 --- a/ld/testsuite/ld.cdtest/.Sanitize +++ /dev/null @@ -1,41 +0,0 @@ -# .Sanitize for ld dejagnu testsuites - -# Each directory to survive it's way into a release will need a file -# like this one called "./.Sanitize". All keyword lines must exist, -# and must exist in the order specified by this file. Each directory -# in the tree will be processed, top down, in the following order.. - -# Hash started lines like this one are comments and will be deleted -# before anything else is done. Blank lines will also be squashed -# out. - -# The lines between the "Do-first:" line and the "Things-to-keep:" -# line are executed as a /bin/sh shell script before anything else is -# done in this directory. - -Do-first: - -# All files listed between the "Things-to-keep:" line and the -# "Do-last:" line will be kept. All other files will be removed. -# Directories listed in this section will have their own Sanitize -# called. Directories not listed will be removed in their entirety -# with rm -rf. - -Things-to-keep: - -cdtest-foo.cc -cdtest-foo.h -cdtest-bar.cc -cdtest-main.cc -cdtest.dat -cdtest.exp - -Things-to-lose: - -# The lines between the "Do-last:" line and the end of the file -# are executed as a /bin/sh shell script after everything else is -# done. - -Do-last: - -#eof diff --git a/ld/testsuite/ld.cdtest/cdtest-bar.cc b/ld/testsuite/ld.cdtest/cdtest-bar.cc deleted file mode 100644 index 79000e33954..00000000000 --- a/ld/testsuite/ld.cdtest/cdtest-bar.cc +++ /dev/null @@ -1,17 +0,0 @@ -// test program for Class Foo - -#include "cdtest-foo.h" - -static Foo static_foo( "static_foo"); - -Foo f() -{ - Foo x; - return x; -} - -void g() -{ - Foo other_foo1 = Foo( "other_foo1"), other_foo2 = Foo( "other_foo2"); - other_foo2 = other_foo1; -} diff --git a/ld/testsuite/ld.cdtest/cdtest-foo.cc b/ld/testsuite/ld.cdtest/cdtest-foo.cc deleted file mode 100644 index 615e33cea78..00000000000 --- a/ld/testsuite/ld.cdtest/cdtest-foo.cc +++ /dev/null @@ -1,89 +0,0 @@ -// Class Foo -#pragma implementation - - -// We don't use header files, since we only want to see, whether the -// compiler is installed properly. -// -#if (__GNUG__ == 2) -typedef __SIZE_TYPE__ size_t; -#else -typedef unsigned int size_t; -#endif - -extern "C" { - char *strncpy (char* dest, const char* dest, size_t len); - int printf (const char*, ...); -}; - -#include "cdtest-foo.h" - -int Foo::foos = 0; - -void Foo::init_foo () -{ - printf ("BROKENLY calling Foo::init_foo from __init_start; size_of(Foo) = %d\n", sizeof(Foo)); - foos = FOOLISH_NUMBER; -} - - -Foo::Foo () -{ - i = ++foos; - strncpy (message, "default-foo", len); -#ifdef WITH_ADDR - printf ("Constructing Foo(%d) \"default-foo\" at %08x\n", i, this); -#else - printf ("Constructing Foo(%d) \"default-foo\"\n", i); -#endif -} - -Foo::Foo (char* msg) -{ - i = ++foos; - strncpy( message, msg, len); -#ifdef WITH_ADDR - printf ( "Constructing Foo(%d) \"%s\" at %08x\n", i, message, this); -#else - printf ( "Constructing Foo(%d) \"%s\"\n", i, message); -#endif -} - - -Foo::Foo (const Foo& foo) -{ - i = ++foos; -#ifdef WITH_ADDR - printf ("Initializing Foo(%d) \"%s\" at %08x with Foo(%d) %08x\n", - i, foo.message, this, foo.i, &foo); -#else - printf ("Initializing Foo(%d) \"%s\" with Foo(%d)\n",i, foo.message, foo.i); -#endif - for ( int k = 0; k < FOO_MSG_LEN; k++) message[k] = foo.message[k]; -} - - -Foo& Foo::operator= (const Foo& foo) -{ -#ifdef WITH_ADDR - printf ("Copying Foo(%d) \"%s\" at %08x to Foo(%d) %08x\n", - foo.i, foo.message, &foo, i, this); -#else - printf ("Copying Foo(%d) \"%s\" to Foo(%d)\n", foo.i, foo.message, i); -#endif - for ( int k = 0; k < FOO_MSG_LEN; k++) message[k] = foo.message[k]; - return *this; -} - - -Foo::~Foo () -{ - foos--; -#ifdef WITH_ADDR - printf ("Destructing Foo(%d) \"%s\" at %08x (remaining foos: %d)\n", - i, message, this, foos); -#else - printf ("Destructing Foo(%d) \"%s\" (remaining foos: %d)\n", - i, message, foos); -#endif -} diff --git a/ld/testsuite/ld.cdtest/cdtest-foo.h b/ld/testsuite/ld.cdtest/cdtest-foo.h deleted file mode 100644 index 0ba2d37b272..00000000000 --- a/ld/testsuite/ld.cdtest/cdtest-foo.h +++ /dev/null @@ -1,24 +0,0 @@ -// Class Foo - -#pragma interface - -#define FOOLISH_NUMBER -4711 - -#ifndef FOO_MSG_LEN -#define FOO_MSG_LEN 80 -#endif - -class Foo { - static int foos; - int i; - const len = FOO_MSG_LEN; - char message[len]; -public: - static void init_foo (); - static int nb_foos() { return foos; } - Foo(); - Foo( char* message); - Foo(const Foo&); - Foo & operator= (const Foo&); - ~Foo (); -}; diff --git a/ld/testsuite/ld.cdtest/cdtest.dat b/ld/testsuite/ld.cdtest/cdtest.dat deleted file mode 100644 index 39be0dbc2c7..00000000000 --- a/ld/testsuite/ld.cdtest/cdtest.dat +++ /dev/null @@ -1,15 +0,0 @@ -Constructing Foo(1) "static_foo" -Constructing Foo(2) "static_foo" -Constructing Foo(3) "automatic_foo" -Constructing Foo(4) "default-foo" -Initializing Foo(5) "default-foo" with Foo(4) -Destructing Foo(4) "default-foo" (remaining foos: 4) -Constructing Foo(5) "other_foo1" -Constructing Foo(6) "other_foo2" -Copying Foo(5) "other_foo1" to Foo(6) -Destructing Foo(6) "other_foo1" (remaining foos: 5) -Destructing Foo(5) "other_foo1" (remaining foos: 4) -Destructing Foo(5) "default-foo" (remaining foos: 3) -Destructing Foo(3) "automatic_foo" (remaining foos: 2) -Destructing Foo(2) "static_foo" (remaining foos: 1) -Destructing Foo(1) "static_foo" (remaining foos: 0) diff --git a/ld/testsuite/ld.cdtest/cdtest.exp b/ld/testsuite/ld.cdtest/cdtest.exp deleted file mode 100644 index bc390f2c476..00000000000 --- a/ld/testsuite/ld.cdtest/cdtest.exp +++ /dev/null @@ -1,87 +0,0 @@ -# Expect script for LD cdtest Tests -# Copyright (C) 1993,1994 Free Software Foundation -# -# This file is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# 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., 675 Mass Ave, Cambridge, MA 02139, USA. */ -# -# Written by Jeffrey Wheat (cassidy@cygnus.com) -# Rewritten by Ian Lance Taylor (ian@cygnus.com) -# - -# Make sure that constructors are handled correctly. - -# This test requires running the executable generated by ld. -if ![isnative] {return} - -if ![ld_compile "$CXX $CXXFLAGS -fgnu-linker" $srcdir$subdir/cdtest-foo.cc tmpdir/cdtest-foo.o] { - return -} -if ![ld_compile "$CXX $CXXFLAGS -fgnu-linker" $srcdir$subdir/cdtest-bar.cc tmpdir/cdtest-bar.o] { - return -} -if ![ld_compile "$CXX $CXXFLAGS -fgnu-linker" $srcdir$subdir/cdtest-main.cc tmpdir/cdtest-main.o] { - return -} - -if ![ld_link $ld tmpdir/cdtest {tmpdir/cdtest-foo.o tmpdir/cdtest-bar.o tmpdir/cdtest-main.o}] { - fail cdtest -} else { - send_log "tmpdir/cdtest >tmpdir/cdtest.out\n" - verbose "tmpdir/cdtest >tmpdir/cdtest.out" - catch "exec tmpdir/cdtest >tmpdir/cdtest.out" exec_output - if ![string match "" $exec_output] then { - send_log "$exec_output\n" - verbose "$exec_output" 1 - fail cdtest - } else { - send_log "diff tmpdir/cdtest.out $srcdir$subdir/cdtest.dat\n" - verbose "diff tmpdir/cdtest.out $srcdir$subdir/cdtest.dat" - catch "exec diff tmpdir/cdtest.out $srcdir$subdir/cdtest.dat" exec_output - if [string match "" $exec_output] then { - pass cdtest - } else { - send_log "$exec_output\n" - verbose "$exec_output" 1 - fail cdtest - } - } -} - -if ![ld_relocate $ld tmpdir/cdtest.o {-Ur tmpdir/cdtest-foo.o tmpdir/cdtest-bar.o tmpdir/cdtest-main.o}] { - fail "cdtest with -Ur" -} else { - if ![ld_link $ld tmpdir/cdtest tmpdir/cdtest.o] { - fail "cdtest with -Ur" - } else { - send_log "tmpdir/cdtest >tmpdir/cdtest.out\n" - verbose "tmpdir/cdtest >tmpdir/cdtest.out" - catch "exec tmpdir/cdtest >tmpdir/cdtest.out" exec_output - if ![string match "" $exec_output] then { - send_log "$exec_output\n" - verbose "$exec_output" 1 - fail "cdtest with -Ur" - } else { - send_log "diff tmpdir/cdtest.out $srcdir$subdir/cdtest.dat\n" - verbose "diff tmpdir/cdtest.out $srcdir$subdir/cdtest.dat" - catch "exec diff tmpdir/cdtest.out $srcdir$subdir/cdtest.dat" exec_output - if [string match "" $exec_output] then { - pass "cdtest with -Ur" - } else { - send_log "$exec_output\n" - verbose "$exec_output" 1 - fail "cdtest with -Ur" - } - } - } -} diff --git a/ld/testsuite/ld.scripts/.Sanitize b/ld/testsuite/ld.scripts/.Sanitize deleted file mode 100644 index b68da1b6cc3..00000000000 --- a/ld/testsuite/ld.scripts/.Sanitize +++ /dev/null @@ -1,41 +0,0 @@ -# .Sanitize for ld dejagnu testsuites - -# Each directory to survive it's way into a release will need a file -# like this one called "./.Sanitize". All keyword lines must exist, -# and must exist in the order specified by this file. Each directory -# in the tree will be processed, top down, in the following order.. - -# Hash started lines like this one are comments and will be deleted -# before anything else is done. Blank lines will also be squashed -# out. - -# The lines between the "Do-first:" line and the "Things-to-keep:" -# line are executed as a /bin/sh shell script before anything else is -# done in this directory. - -Do-first: - -# All files listed between the "Things-to-keep:" line and the -# "Do-last:" line will be kept. All other files will be removed. -# Directories listed in this section will have their own Sanitize -# called. Directories not listed will be removed in their entirety -# with rm -rf. - -Things-to-keep: - -defined.exp -defined.s -defined.t -script.exp -script.s -script.t - -Things-to-lose: - -# The lines between the "Do-last:" line and the end of the file -# are executed as a /bin/sh shell script after everything else is -# done. - -Do-last: - -#eof diff --git a/ld/testsuite/ld.scripts/defined.exp b/ld/testsuite/ld.scripts/defined.exp deleted file mode 100644 index a1f86986fb3..00000000000 --- a/ld/testsuite/ld.scripts/defined.exp +++ /dev/null @@ -1,29 +0,0 @@ -# Test DEFINED in a linker script. -# By Ian Lance Taylor, Cygnus Support. - -if ![ld_assemble $as $srcdir$subdir/defined.s tmpdir/def.o] { return } - -set prms_id 5699 - -if ![ld_simple_link $ld tmpdir/def "-T $srcdir$subdir/defined.t tmpdir/def.o"] { - fail DEFINED -} else { - if [ld_nm $nm tmpdir/def] { - if {![info exists nm_output(value1)] \ - || ![info exists nm_output(value2)]} { - fail "DEFINED (bad output from $nm)" - } else { - if {$nm_output(value1) != 1} { - fail "DEFINED (value1 == $nm_output(value1))" - } else { - if {$nm_output(value2) != 2} { - fail "DEFINED (value2 == $nm_output(value2))" - } else { - pass DEFINED - } - } - } - } -} - -set prms_id 0 diff --git a/ld/testsuite/ld.scripts/defined.s b/ld/testsuite/ld.scripts/defined.s deleted file mode 100644 index a364bbbbe6c..00000000000 --- a/ld/testsuite/ld.scripts/defined.s +++ /dev/null @@ -1,2 +0,0 @@ - .globl defined - defined = 1 diff --git a/ld/testsuite/ld.scripts/defined.t b/ld/testsuite/ld.scripts/defined.t deleted file mode 100644 index d1e4748c0e1..00000000000 --- a/ld/testsuite/ld.scripts/defined.t +++ /dev/null @@ -1,5 +0,0 @@ -SECTIONS { - .text : { *(.text) } -} -value1 = DEFINED (defined) ? 1 : 2; -value2 = DEFINED (undefined) ? 1 : 2; diff --git a/ld/testsuite/ld.scripts/script.exp b/ld/testsuite/ld.scripts/script.exp deleted file mode 100644 index 0cbd084911f..00000000000 --- a/ld/testsuite/ld.scripts/script.exp +++ /dev/null @@ -1,31 +0,0 @@ -# Test basic linker script functionality -# By Ian Lance Taylor, Cygnus Support - -if ![ld_assemble $as $srcdir$subdir/script.s tmpdir/script.o] { return } - -if ![ld_simple_link $ld tmpdir/script "-T $srcdir$subdir/script.t tmpdir/script.o"] { - fail script -} else { - if [ld_nm $nm tmpdir/script] { - if {![info exists nm_output(text_start)] \ - || ![info exists nm_output(text_end)] \ - || ![info exists nm_output(data_start)] \ - || ![info exists nm_output(data_end)]} { - fail "script (bad output from $nm)" - } else { - if {$nm_output(text_start) != 0x100} { - fail "script (text_start == $nm_output(text_start))" - } else { if {$nm_output(text_end) < 0x104 \ - || $nm_output(text_end) > 0x110} { - fail "script (text_end == $nm_output(text_end))" - } else { if {$nm_output(data_start) != 0x1000} { - fail "script (data_start == $nm_output(data_start))" - } else { if {$nm_output(data_end) < 0x1004 \ - || $nm_output(data_end) > 0x1010} { - fail "script (data_end == $nm_output(data_end))" - } else { - pass script - } } } } - } - } -} diff --git a/ld/testsuite/ld.scripts/script.s b/ld/testsuite/ld.scripts/script.s deleted file mode 100644 index a8629117091..00000000000 --- a/ld/testsuite/ld.scripts/script.s +++ /dev/null @@ -1,6 +0,0 @@ - .text -text_symbol: - .long 1 - .data -data_symbol: - .long 2 diff --git a/ld/testsuite/ld.scripts/script.t b/ld/testsuite/ld.scripts/script.t deleted file mode 100644 index 3da47e1858f..00000000000 --- a/ld/testsuite/ld.scripts/script.t +++ /dev/null @@ -1,14 +0,0 @@ -SECTIONS -{ - .text 0x100 : { - text_start = .; - *(.text) - text_end = .; - } - . = 0x1000; - .data : { - data_start = .; - *(.data) - data_end = .; - } -}