aboutsummaryrefslogtreecommitdiff
path: root/test/MC/Mips/set-at-noat-bad-syntax.s
diff options
context:
space:
mode:
authorToma Tabacu <toma.tabacu@imgtec.com>2015-02-13 10:30:57 +0000
committerToma Tabacu <toma.tabacu@imgtec.com>2015-02-13 10:30:57 +0000
commit94b64060afe95fa064c875d010ec77731c117cb9 (patch)
treeb9a14193c4d5dd79fb598782fbbcb27f3e5cf194 /test/MC/Mips/set-at-noat-bad-syntax.s
parent7ea33e53c78e6fb9ca96ece5a884d6e86e2f0e4f (diff)
[mips] Improve support for the .set at/noat assembler directives.
Summary: Made the following changes: Added calls to emitDirectiveSetNoAt() and emitDirectiveSetAt(). Added special emit function for .set at=$reg, emitDirectiveSetAtWithArg(unsigned RegNo). Improved parsing error checks for .set at. Refactored parser code for .set at. Improved testing of both directives. Improved code readability and comments. Reviewers: dsanders Reviewed By: dsanders Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D7176 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@229097 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/MC/Mips/set-at-noat-bad-syntax.s')
-rw-r--r--test/MC/Mips/set-at-noat-bad-syntax.s29
1 files changed, 29 insertions, 0 deletions
diff --git a/test/MC/Mips/set-at-noat-bad-syntax.s b/test/MC/Mips/set-at-noat-bad-syntax.s
new file mode 100644
index 00000000000..47f5be74f9a
--- /dev/null
+++ b/test/MC/Mips/set-at-noat-bad-syntax.s
@@ -0,0 +1,29 @@
+# RUN: not llvm-mc %s -triple=mips-unknown-unknown -mcpu=mips32 2>%t1
+# RUN: FileCheck %s < %t1
+
+.set at~
+# CHECK: error: unexpected token, expected equals sign
+
+.set at=
+# CHECK: error: no register specified
+
+.set at=~
+# CHECK: error: unexpected token, expected dollar sign '$'
+
+.set at=$
+# CHECK: error: unexpected token, expected identifier or integer
+
+.set at=$-4
+# CHECK: error: unexpected token, expected identifier or integer
+
+.set at=$1000
+# CHECK: error: invalid register
+
+.set at=$foo
+# CHECK: error: invalid register
+
+.set at=$2bar
+# CHECK: error: unexpected token, expected end of statement
+
+.set noat bar
+# CHECK: error: unexpected token, expected end of statement