aboutsummaryrefslogtreecommitdiff
path: root/gas/testsuite
diff options
context:
space:
mode:
authorNathan Sidwell <nathan@codesourcery.com>2010-07-15 14:34:42 +0000
committerNathan Sidwell <nathan@codesourcery.com>2010-07-15 14:34:42 +0000
commit6e8bd58f83483eae7876138516e0131e82cfa369 (patch)
tree43c9ea0133b6e24586608fd1fae1f26c70a6535e /gas/testsuite
parent1e17085deafbe5810325beee249549d23e778ce1 (diff)
downloadgdb-6e8bd58f83483eae7876138516e0131e82cfa369.zip
gdb-6e8bd58f83483eae7876138516e0131e82cfa369.tar.gz
gdb-6e8bd58f83483eae7876138516e0131e82cfa369.tar.bz2
* config/obj-elf.c (get_sym_from_input_line_and_check): New
function to catch missing pseudo-op arguments. (obj_elf_local): Call new function. (obj_elf_weak): Likewise. (obj_elf_visibility): Likewise. (obj_elf_vtable_entry): Likewise. (obj_elf_type): Likewise. testsuite/ * gas/elf/pseudo.s: New. * gas/elf/pseudo.l: New. * gas/elf/pseudo.d: New. * gas/elf/elf.exp: Run the new test.
Diffstat (limited to 'gas/testsuite')
-rw-r--r--gas/testsuite/ChangeLog7
-rw-r--r--gas/testsuite/gas/elf/elf.exp1
-rw-r--r--gas/testsuite/gas/elf/pseudo.d2
-rw-r--r--gas/testsuite/gas/elf/pseudo.l12
-rw-r--r--gas/testsuite/gas/elf/pseudo.s18
5 files changed, 40 insertions, 0 deletions
diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog
index f0ca9e0..aca2626 100644
--- a/gas/testsuite/ChangeLog
+++ b/gas/testsuite/ChangeLog
@@ -1,3 +1,10 @@
+2010-07-14 Rhonda Wittels <rhonda@codesourcery.com>
+
+ * gas/elf/pseudo.s: New.
+ * gas/elf/pseudo.l: New.
+ * gas/elf/pseudo.d: New.
+ * gas/elf/elf.exp: Run the new test.
+
2010-07-14 H.J. Lu <hongjiu.lu@intel.com>
* config/default.exp (ADDR2LINE): New.
diff --git a/gas/testsuite/gas/elf/elf.exp b/gas/testsuite/gas/elf/elf.exp
index b2a29aa..55a08b1 100644
--- a/gas/testsuite/gas/elf/elf.exp
+++ b/gas/testsuite/gas/elf/elf.exp
@@ -127,6 +127,7 @@ if { ([istarget "*-*-*elf*"]
run_dump_test equ-reloc
}
}
+ run_dump_test "pseudo"
run_dump_test "section0"
run_dump_test "section1"
if {! [istarget "h8300-*-*"]} then {
diff --git a/gas/testsuite/gas/elf/pseudo.d b/gas/testsuite/gas/elf/pseudo.d
new file mode 100644
index 0000000..59d4801
--- /dev/null
+++ b/gas/testsuite/gas/elf/pseudo.d
@@ -0,0 +1,2 @@
+#name: Ill-formed directives
+#error-output: pseudo.l
diff --git a/gas/testsuite/gas/elf/pseudo.l b/gas/testsuite/gas/elf/pseudo.l
new file mode 100644
index 0000000..605f5b8
--- /dev/null
+++ b/gas/testsuite/gas/elf/pseudo.l
@@ -0,0 +1,12 @@
+[^:]*: Assembler messages:
+[^:]*:2: Error: Missing symbol name in directive
+[^:]*:4: Error: Missing symbol name in directive
+[^:]*:6: Error: Missing symbol name in directive
+[^:]*:8: Error: Missing symbol name in directive
+[^:]*:10: Error: Missing symbol name in directive
+[^:]*:12: Error: Missing symbol name in directive
+[^:]*:14: Error: Missing symbol name in directive
+[^:]*:14: Error: expected comma after name in .symver
+[^:]*:16: Error: Missing symbol name in directive
+[^:]*:18: Error: Missing symbol name in directive
+[^:]*:18: Error: unrecognized symbol type ""
diff --git a/gas/testsuite/gas/elf/pseudo.s b/gas/testsuite/gas/elf/pseudo.s
new file mode 100644
index 0000000..971f8fb
--- /dev/null
+++ b/gas/testsuite/gas/elf/pseudo.s
@@ -0,0 +1,18 @@
+ .hidden h1n1
+ .hidden
+ # next line has spaces
+ .hidden
+ # next line has tabs
+ .hidden
+ .internal i2
+ .internal
+ .protected porpoise
+ .protected
+ .local foo
+ .local
+ .symver foo, foo@version1
+ .symver
+ .weak wimp
+ .weak
+ .type foo1,object
+ .type