aboutsummaryrefslogtreecommitdiff
path: root/binutils/testsuite
diff options
context:
space:
mode:
authorNick Clifton <nickc@redhat.com>2002-11-06 19:36:20 +0000
committerNick Clifton <nickc@redhat.com>2002-11-06 19:36:20 +0000
commitc9e3887989960034fd89d176f72d7e14d5bc3d79 (patch)
treeb643a93afcd06f0052e3380516c79bb964018532 /binutils/testsuite
parentac835424b5ad4dce56c8d4ed6835d56fc225c786 (diff)
downloadgdb-c9e3887989960034fd89d176f72d7e14d5bc3d79.zip
gdb-c9e3887989960034fd89d176f72d7e14d5bc3d79.tar.gz
gdb-c9e3887989960034fd89d176f72d7e14d5bc3d79.tar.bz2
Adds support for fastcall symbols as used on Microsoft Windows platforms
(i386)
Diffstat (limited to 'binutils/testsuite')
-rw-r--r--binutils/testsuite/ChangeLog7
-rw-r--r--binutils/testsuite/binutils-all/dlltool.exp47
-rw-r--r--binutils/testsuite/binutils-all/fastcall.def2
-rw-r--r--binutils/testsuite/config/default.exp12
4 files changed, 60 insertions, 8 deletions
diff --git a/binutils/testsuite/ChangeLog b/binutils/testsuite/ChangeLog
index 7034c1f..da464da 100644
--- a/binutils/testsuite/ChangeLog
+++ b/binutils/testsuite/ChangeLog
@@ -1,3 +1,10 @@
+2002-11-07 Casper S. Hornstrup <chorns@users.sourceforge.net>
+
+ * binutils-all/dlltool.exp: New file for testing dlltool.
+ * binutils-all/fastcall.def: New file for testing fastcall
+ exports.
+ * config/default.exp: Set DLLTOOL variable.
+
2002-08-27 Alan Modra <amodra@bigpond.net.au>
* binutils-all/objcopy.exp: Revert last change.
diff --git a/binutils/testsuite/binutils-all/dlltool.exp b/binutils/testsuite/binutils-all/dlltool.exp
new file mode 100644
index 0000000..77b09eb
--- /dev/null
+++ b/binutils/testsuite/binutils-all/dlltool.exp
@@ -0,0 +1,47 @@
+# Copyright 2002 Free Software Foundation, Inc.
+
+# This program 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+if {![istarget "i*86-*-*"]} {
+ return
+}
+
+if {![istarget "i*86-*-*pe*"] \
+ && ![istarget "i*86-*-cygwin*"] \
+ && ![istarget "i*86-*-mingw32*"] } {
+ set target_xfail "yes"
+} else {
+ set target_xfail "no"
+}
+
+if {![info exists DLLTOOL]} then {
+ return
+}
+
+if {[which $DLLTOOL] == 0} then {
+ return
+}
+
+verbose "$DLLTOOL -d $srcdir/$subdir/fastcall.def" 1
+catch "exec $DLLTOOL -d $srcdir/$subdir/fastcall.def" err
+
+if ![string match "" $err] then {
+ send_log "$err\n"
+ verbose "$err" 1
+ fail "dlltool (fastcall export)"
+ continue;
+}
+
+pass "dlltool (fastcall export)"
diff --git a/binutils/testsuite/binutils-all/fastcall.def b/binutils/testsuite/binutils-all/fastcall.def
new file mode 100644
index 0000000..bef4968
--- /dev/null
+++ b/binutils/testsuite/binutils-all/fastcall.def
@@ -0,0 +1,2 @@
+EXPORTS
+@fastcall@4
diff --git a/binutils/testsuite/config/default.exp b/binutils/testsuite/config/default.exp
index 227fd78..4aa9ab3 100644
--- a/binutils/testsuite/config/default.exp
+++ b/binutils/testsuite/config/default.exp
@@ -1,4 +1,4 @@
-# Copyright 1993, 1994, 1995, 1997, 1999, 2001
+# Copyright 1993, 1994, 1995, 1997, 1999, 2001, 2002
# Free Software Foundation, Inc.
# This program is free software; you can redistribute it and/or modify
@@ -29,49 +29,45 @@ if ![info exists NM] then {
if ![info exists NMFLAGS] then {
set NMFLAGS ""
}
-
if ![info exists SIZE] then {
set SIZE [findfile $base_dir/size]
}
if ![info exists SIZEFLAGS] then {
set SIZEFLAGS ""
}
-
if ![info exists OBJDUMP] then {
set OBJDUMP [findfile $base_dir/objdump]
}
if ![info exists OBJDUMPFLAGS] then {
set OBJDUMPFLAGS ""
}
-
if ![info exists OBJCOPY] then {
set OBJCOPY [findfile $base_dir/objcopy]
}
if ![info exists OBJCOPYFLAGS] then {
set OBJCOPYFLAGS ""
}
-
if ![info exists AR] then {
set AR [findfile $base_dir/ar]
}
-
if ![info exists STRIP] then {
set STRIP [findfile $base_dir/strip-new $base_dir/strip-new [transform strip]]
}
if ![info exists STRIPFLAGS] then {
set STRIPFLAGS ""
}
-
if ![info exists READELF] then {
set READELF [findfile $base_dir/readelf]
}
if ![info exists READELFFLAGS] then {
set READELFFLAGS ""
}
-
if ![info exists WINDRES] then {
set WINDRES [findfile $base_dir/windres]
}
+if ![info exists DLLTOOL] then {
+ set DLLTOOL [findfile $base_dir/dlltool]
+}
if ![file isdirectory tmpdir] {catch "exec mkdir tmpdir" status}