summaryrefslogtreecommitdiff
path: root/test/MC
diff options
context:
space:
mode:
authorDaniel Dunbar <daniel@zuster.org>2009-07-02 02:28:23 +0000
committerDaniel Dunbar <daniel@zuster.org>2009-07-02 02:28:23 +0000
commit0a93771e4c7283bf7999c00b3282eab0431b463f (patch)
treeab83c7e40eb99bcb7bd05f57c3cfb253d7302c23 /test/MC
parent5470e12c6221b40102e56ab3f280685e605475b7 (diff)
downloadllvm-0a93771e4c7283bf7999c00b3282eab0431b463f.tar.gz
llvm-0a93771e4c7283bf7999c00b3282eab0431b463f.tar.bz2
llvm-0a93771e4c7283bf7999c00b3282eab0431b463f.tar.xz
llvm-mc/x86: Test case for x86 operand parsing.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74688 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/MC')
-rw-r--r--test/MC/AsmParser/x86_operands.s36
1 files changed, 36 insertions, 0 deletions
diff --git a/test/MC/AsmParser/x86_operands.s b/test/MC/AsmParser/x86_operands.s
new file mode 100644
index 0000000000..708f1bd3e8
--- /dev/null
+++ b/test/MC/AsmParser/x86_operands.s
@@ -0,0 +1,36 @@
+// FIXME: Actually test that we get the expected results.
+
+// RUN: llvm-mc %s > %t
+
+# Immediates
+ push $1
+ push $(1+2)
+ push $a
+ push $1 + 2
+
+# Disambiguation
+ push 4+4
+ push (4+4)
+ push (4+4)(%eax)
+ push 8(%eax)
+ push (%eax)
+ push (4+4)(,%eax)
+
+# Indirect Memory Operands
+ push 1(%eax)
+ push 1(%eax,%ebx)
+ push 1(%eax,%ebx,)
+ push 1(%eax,%ebx,4)
+ push 1(,%ebx)
+ push 1(,%ebx,)
+ push 1(,%ebx,4)
+ push 1(,%ebx,(2+2))
+
+# '*'
+ call a
+ call *a
+ call *%eax
+ call 4(%eax) # FIXME: Warn or reject.
+ call *4(%eax)
+
+