aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2011-06-08 04:47:04 +0000
committerH.J. Lu <hjl.tools@gmail.com>2011-06-08 04:47:04 +0000
commit83c5d36fc5a5cebce17f43a00f6ca36df8cd56bd (patch)
tree5a3eea34efe84e9b50d7409375e2079e38d92c16
parente6455dfbc2dae8cc91f64b4120e87e138970cf84 (diff)
downloadgdb-83c5d36fc5a5cebce17f43a00f6ca36df8cd56bd.zip
gdb-83c5d36fc5a5cebce17f43a00f6ca36df8cd56bd.tar.gz
gdb-83c5d36fc5a5cebce17f43a00f6ca36df8cd56bd.tar.bz2
Add a testcase for warning on common symbol in archive.
2011-06-07 H.J. Lu <hongjiu.lu@intel.com> * ld-elf/elf.exp: Build symbol3.a and symbol3w.a. * ld-elf/symbol3.s: New. * ld-elf/symbol3w.s: Likewise. * ld-elf/warn3.d: Likewise.
-rw-r--r--ld/testsuite/ChangeLog8
-rw-r--r--ld/testsuite/ld-elf/elf.exp9
-rw-r--r--ld/testsuite/ld-elf/symbol3.s1
-rw-r--r--ld/testsuite/ld-elf/symbol3w.s4
-rw-r--r--ld/testsuite/ld-elf/warn3.d15
5 files changed, 37 insertions, 0 deletions
diff --git a/ld/testsuite/ChangeLog b/ld/testsuite/ChangeLog
index 5ee6f44..31d542d 100644
--- a/ld/testsuite/ChangeLog
+++ b/ld/testsuite/ChangeLog
@@ -1,3 +1,11 @@
+2011-06-07 H.J. Lu <hongjiu.lu@intel.com>
+
+ * ld-elf/elf.exp: Build symbol3.a and symbol3w.a.
+
+ * ld-elf/symbol3.s: New.
+ * ld-elf/symbol3w.s: Likewise.
+ * ld-elf/warn3.d: Likewise.
+
2011-06-02 Nathan Sidwell <nathan@codesourcery.com>
Adjust tests for zero offset formatting.
diff --git a/ld/testsuite/ld-elf/elf.exp b/ld/testsuite/ld-elf/elf.exp
index b9ff0bd..e991f83 100644
--- a/ld/testsuite/ld-elf/elf.exp
+++ b/ld/testsuite/ld-elf/elf.exp
@@ -40,6 +40,15 @@ if { [is_remote host] } then {
remote_download host merge.ld
}
+run_ld_link_tests {
+ {"Build symbol3.a"
+ "" ""
+ {symbol3.s} {} "symbol3.a"}
+ {"Build symbol3w.a"
+ "" ""
+ {symbol3w.s} {} "symbol3w.a"}
+}
+
set test_list [lsort [glob -nocomplain $srcdir/$subdir/*.d]]
foreach t $test_list {
# We need to strip the ".d", but can leave the dirname.
diff --git a/ld/testsuite/ld-elf/symbol3.s b/ld/testsuite/ld-elf/symbol3.s
new file mode 100644
index 0000000..4fd76d5
--- /dev/null
+++ b/ld/testsuite/ld-elf/symbol3.s
@@ -0,0 +1 @@
+ .comm badsym,4
diff --git a/ld/testsuite/ld-elf/symbol3w.s b/ld/testsuite/ld-elf/symbol3w.s
new file mode 100644
index 0000000..33262a6
--- /dev/null
+++ b/ld/testsuite/ld-elf/symbol3w.s
@@ -0,0 +1,4 @@
+ .data
+ .dc.a badsym
+ .section .gnu.warning.badsym,"",%progbits
+ .string "badsym warning"
diff --git a/ld/testsuite/ld-elf/warn3.d b/ld/testsuite/ld-elf/warn3.d
new file mode 100644
index 0000000..c99618d
--- /dev/null
+++ b/ld/testsuite/ld-elf/warn3.d
@@ -0,0 +1,15 @@
+#source: start.s
+#ld: tmpdir/symbol3w.o tmpdir/symbol3.a
+#warning: .*: warning: badsym warning$
+#readelf: -s
+#notarget: "sparc64-*-solaris2*" "sparcv9-*-solaris2*"
+#xfail: arc-*-* d30v-*-* dlx-*-* fr30-*-* frv-*-elf i860-*-* i960-*-*
+#xfail: iq*-*-* mn10200-*-* moxie-*-* msp*-*-* mt-*-* or32-*-* pj*-*-*
+# if not using elf32.em, you don't get fancy section handling
+
+# Check that warnings are generated for the symbols in .gnu.warning
+# construct and that the symbol still appears as expected.
+
+#...
+ +[0-9]+: +[0-9a-f]+ +4 +OBJECT +GLOBAL +DEFAULT +[1-9] badsym
+#pass