summaryrefslogtreecommitdiff
path: root/ld/testsuite/ld-undefined
diff options
context:
space:
mode:
authorH.J. Lu <hjl@lucon.org>2009-03-18 12:11:38 +0000
committerH.J. Lu <hjl@lucon.org>2009-03-18 12:11:38 +0000
commit21e2a0961fbfb4aa07cb45acfba9fc8f2e3e5da3 (patch)
tree6e5ac831bb65695cf0b36ad5ac731979b5123e5e /ld/testsuite/ld-undefined
parent3041aa78d7e20d6d0724e5a9362e9d1f1728a63e (diff)
downloadbinutils-redhat-21e2a0961fbfb4aa07cb45acfba9fc8f2e3e5da3.tar.gz
ld/
2009-03-18 H.J. Lu <hongjiu.lu@intel.com> PR ld/6766 * lexsup.c (parse_args): Call ldlang_add_undef for -e. ld/testsuite/ 2009-03-18 H.J. Lu <hongjiu.lu@intel.com> PR ld/6766 * ld-undefined/dummy.s: New. * ld-undefined/entry-1.d: Likewise. * ld-undefined/entry-2.d: Likewise. * ld-undefined/entry-3.d: Likewise. * ld-undefined/entry-4.d: Likewise. * ld-undefined/entry-5.d: Likewise. * ld-undefined/entry-6.d: Likewise. * ld-undefined/entry.exp: Likewise. * ld-undefined/entry.s: Likewise.
Diffstat (limited to 'ld/testsuite/ld-undefined')
-rw-r--r--ld/testsuite/ld-undefined/dummy.s2
-rw-r--r--ld/testsuite/ld-undefined/entry-1.d8
-rw-r--r--ld/testsuite/ld-undefined/entry-2.d8
-rw-r--r--ld/testsuite/ld-undefined/entry-3.d9
-rw-r--r--ld/testsuite/ld-undefined/entry-4.d9
-rw-r--r--ld/testsuite/ld-undefined/entry-5.d8
-rw-r--r--ld/testsuite/ld-undefined/entry-6.d8
-rw-r--r--ld/testsuite/ld-undefined/entry.exp35
-rw-r--r--ld/testsuite/ld-undefined/entry.s4
9 files changed, 91 insertions, 0 deletions
diff --git a/ld/testsuite/ld-undefined/dummy.s b/ld/testsuite/ld-undefined/dummy.s
new file mode 100644
index 0000000000..328ba7453e
--- /dev/null
+++ b/ld/testsuite/ld-undefined/dummy.s
@@ -0,0 +1,2 @@
+ .text
+ .byte 0
diff --git a/ld/testsuite/ld-undefined/entry-1.d b/ld/testsuite/ld-undefined/entry-1.d
new file mode 100644
index 0000000000..551042efe5
--- /dev/null
+++ b/ld/testsuite/ld-undefined/entry-1.d
@@ -0,0 +1,8 @@
+#name: --entry foo archive
+#source: dummy.s
+#ld: --entry foo tmpdir/libentry.a
+#nm: -n
+
+#...
+[0-9a-f]+ T +foo
+#...
diff --git a/ld/testsuite/ld-undefined/entry-2.d b/ld/testsuite/ld-undefined/entry-2.d
new file mode 100644
index 0000000000..9122313fda
--- /dev/null
+++ b/ld/testsuite/ld-undefined/entry-2.d
@@ -0,0 +1,8 @@
+#name: --entry foo -u foo archive
+#source: dummy.s
+#ld: --entry foo -u foo tmpdir/libentry.a
+#nm: -n
+
+#...
+[0-9a-f]+ T +foo
+#...
diff --git a/ld/testsuite/ld-undefined/entry-3.d b/ld/testsuite/ld-undefined/entry-3.d
new file mode 100644
index 0000000000..184f4788a0
--- /dev/null
+++ b/ld/testsuite/ld-undefined/entry-3.d
@@ -0,0 +1,9 @@
+#name: -shared --entry foo archive
+#source: dummy.s
+#ld: -shared --entry foo tmpdir/libentry.a
+#nm: -n
+#target: *-*-linux*
+
+#...
+[0-9a-f]+ T +foo
+#...
diff --git a/ld/testsuite/ld-undefined/entry-4.d b/ld/testsuite/ld-undefined/entry-4.d
new file mode 100644
index 0000000000..44006aa85c
--- /dev/null
+++ b/ld/testsuite/ld-undefined/entry-4.d
@@ -0,0 +1,9 @@
+#name: -shared --entry foo -u foo archive
+#source: dummy.s
+#ld: -shared --entry foo -u foo tmpdir/libentry.a
+#nm: -n
+#target: *-*-linux*
+
+#...
+[0-9a-f]+ T +foo
+#...
diff --git a/ld/testsuite/ld-undefined/entry-5.d b/ld/testsuite/ld-undefined/entry-5.d
new file mode 100644
index 0000000000..fc36e822d5
--- /dev/null
+++ b/ld/testsuite/ld-undefined/entry-5.d
@@ -0,0 +1,8 @@
+#name: --entry foo
+#source: entry.s
+#ld: --entry foo
+#nm: -n
+
+#...
+[0-9a-f]+ T +foo
+#...
diff --git a/ld/testsuite/ld-undefined/entry-6.d b/ld/testsuite/ld-undefined/entry-6.d
new file mode 100644
index 0000000000..c013a1af81
--- /dev/null
+++ b/ld/testsuite/ld-undefined/entry-6.d
@@ -0,0 +1,8 @@
+#name: --entry foo -u foo
+#source: entry.s
+#ld: --entry foo -u foo
+#nm: -n
+
+#...
+[0-9a-f]+ T +foo
+#...
diff --git a/ld/testsuite/ld-undefined/entry.exp b/ld/testsuite/ld-undefined/entry.exp
new file mode 100644
index 0000000000..76e50f8554
--- /dev/null
+++ b/ld/testsuite/ld-undefined/entry.exp
@@ -0,0 +1,35 @@
+# Expect script for ld --entry tests
+# Copyright (C) 2009 Free Software Foundation
+#
+# This file is part of the GNU Binutils.
+#
+# 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 3 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., 51 Franklin Street - Fifth Floor, Boston,
+# MA 02110-1301, USA.
+#
+
+set build_tests {
+ {"Build libentry.a"
+ "" ""
+ {entry.s} {} "libentry.a"}
+}
+
+run_ld_link_tests $build_tests
+
+set test_list [lsort [glob -nocomplain $srcdir/$subdir/entry*.d]]
+foreach t $test_list {
+ # We need to strip the ".d", but can leave the dirname.
+ verbose [file rootname $t]
+ run_dump_test [file rootname $t]
+}
diff --git a/ld/testsuite/ld-undefined/entry.s b/ld/testsuite/ld-undefined/entry.s
new file mode 100644
index 0000000000..4a70181776
--- /dev/null
+++ b/ld/testsuite/ld-undefined/entry.s
@@ -0,0 +1,4 @@
+ .text
+ .globl foo
+foo:
+ .byte 0