aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--test/MC/Disassembler/X86/invalid-cmp-imm.txt10
-rw-r--r--test/MC/Disassembler/X86/x86-64.txt63
2 files changed, 73 insertions, 0 deletions
diff --git a/test/MC/Disassembler/X86/invalid-cmp-imm.txt b/test/MC/Disassembler/X86/invalid-cmp-imm.txt
new file mode 100644
index 0000000000..bf8699b24f
--- /dev/null
+++ b/test/MC/Disassembler/X86/invalid-cmp-imm.txt
@@ -0,0 +1,10 @@
+# RUN: llvm-mc --disassemble %s -triple=x86_64-apple-darwin9 |& grep {invalid instruction encoding}
+
+# This instruction would decode as cmpordps if the immediate byte was less than 8.
+0x0f 0xc2 0xc7 0x08
+# This instruction would decode as cmpordpd if the immediate byte was less than 8.
+0x66 0x0f 0xc2 0xc7 0x08
+# This instruction would decode as cmpordss if the immediate byte was less than 8.
+0xf3 0x0f 0xc2 0xc7 0x08
+# This instruction would decode as cmpordsd if the immediate byte was less than 8.
+0xf2 0x0f 0xc2 0xc7 0x08
diff --git a/test/MC/Disassembler/X86/x86-64.txt b/test/MC/Disassembler/X86/x86-64.txt
new file mode 100644
index 0000000000..f4b8f46fa2
--- /dev/null
+++ b/test/MC/Disassembler/X86/x86-64.txt
@@ -0,0 +1,63 @@
+# RUN: llvm-mc --disassemble %s -triple=x86_64 | FileCheck %s
+
+# Coverage
+
+# CHECK: vcmptrue_usps
+0xc5 0x04 0xc2 0xc7 0x1f
+
+# CHECK: vcmptrue_uspd
+0xc5 0x05 0xc2 0xc7 0x1f
+
+# CHECK: vcmptrue_usss
+0xc5 0x06 0xc2 0xc7 0x1f
+
+# CHECK: vcmptrue_ussd
+0xc5 0x07 0xc2 0xc7 0x1f
+
+# CHECK: vcmpeq_uqps
+0xc5 0x04 0xc2 0xc7 0x08
+
+# CHECK: vcmpeq_uqpd
+0xc5 0x05 0xc2 0xc7 0x08
+
+# CHECK: vcmpeq_uqss
+0xc5 0x06 0xc2 0xc7 0x08
+
+# CHECK: vcmpeq_uqsd
+0xc5 0x07 0xc2 0xc7 0x08
+
+# CHECK: vcmpeqps
+0xc5 0x04 0xc2 0xc7 0x00
+
+# CHECK: vcmpeqpd
+0xc5 0x05 0xc2 0xc7 0x00
+
+# CHECK: vcmpeqss
+0xc5 0x06 0xc2 0xc7 0x00
+
+# CHECK: vcmpeqsd
+0xc5 0x07 0xc2 0xc7 0x00
+
+# CHECK: cmpeqps
+0x0f 0xc2 0xc7 0x00
+
+# CHECK: cmpeqpd
+0x66 0x0f 0xc2 0xc7 0x00
+
+# CHECK: cmpeqss
+0xf3 0x0f 0xc2 0xc7 0x00
+
+# CHECK: cmpeqsd
+0xf2 0x0f 0xc2 0xc7 0x00
+
+# CHECK: cmpordps
+0x0f 0xc2 0xc7 0x07
+
+# CHECK: cmpordpd
+0x66 0x0f 0xc2 0xc7 0x07
+
+# CHECK: cmpordss
+0xf3 0x0f 0xc2 0xc7 0x07
+
+# CHECK: cmpordsd
+0xf2 0x0f 0xc2 0xc7 0x07