summaryrefslogtreecommitdiff
path: root/test/MC
diff options
context:
space:
mode:
authorBruno Cardoso Lopes <bruno.cardoso@gmail.com>2010-07-24 00:06:39 +0000
committerBruno Cardoso Lopes <bruno.cardoso@gmail.com>2010-07-24 00:06:39 +0000
commit3c8e1bee6399e829eda801a32158c1f52d2733ad (patch)
tree005849e58183f7cfce81b14de865a4d253339d27 /test/MC
parentc2723a57f35dd69bd261faaa71ee7aa05f40a87d (diff)
downloadllvm-3c8e1bee6399e829eda801a32158c1f52d2733ad.tar.gz
llvm-3c8e1bee6399e829eda801a32158c1f52d2733ad.tar.bz2
llvm-3c8e1bee6399e829eda801a32158c1f52d2733ad.tar.xz
Support x86 "eiz" and "riz" pseudo index registers in the assembler.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109295 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/MC')
-rw-r--r--test/MC/AsmParser/X86/x86_32-avx-encoding.s4
-rw-r--r--test/MC/AsmParser/X86/x86_32-encoding.s20
-rw-r--r--test/MC/AsmParser/X86/x86_64-avx-encoding.s4
-rw-r--r--test/MC/AsmParser/X86/x86_64-encoding.s20
4 files changed, 48 insertions, 0 deletions
diff --git a/test/MC/AsmParser/X86/x86_32-avx-encoding.s b/test/MC/AsmParser/X86/x86_32-avx-encoding.s
index afd5da99cc..b7ade6670a 100644
--- a/test/MC/AsmParser/X86/x86_32-avx-encoding.s
+++ b/test/MC/AsmParser/X86/x86_32-avx-encoding.s
@@ -3235,3 +3235,7 @@
// CHECK: encoding: [0xc4,0xe2,0x7d,0x0e,0x10]
vtestps (%eax), %ymm2
+// CHECK: vblendvpd %ymm0, 57005(%eax,%eiz), %ymm1, %ymm2
+// CHECK: encoding: [0xc4,0xe3,0x75,0x4b,0x94,0x20,0xad,0xde,0x00,0x00,0x00]
+ vblendvpd %ymm0, 0xdead(%eax,%eiz), %ymm1, %ymm2
+
diff --git a/test/MC/AsmParser/X86/x86_32-encoding.s b/test/MC/AsmParser/X86/x86_32-encoding.s
index 9f5682d6d9..ef774239ff 100644
--- a/test/MC/AsmParser/X86/x86_32-encoding.s
+++ b/test/MC/AsmParser/X86/x86_32-encoding.s
@@ -10047,3 +10047,23 @@
// CHECK: encoding: [0xde,0x1d,0xed,0x7e,0x00,0x00]
ficomps 32493
+// CHECK: movl 57005(,%eiz), %ebx
+// CHECK: encoding: [0x8b,0x1c,0x25,0xad,0xde,0x00,0x00]
+ movl 57005(,%eiz), %ebx
+
+// CHECK: movl 48879(,%eiz), %eax
+// CHECK: encoding: [0x8b,0x04,0x25,0xef,0xbe,0x00,0x00]
+ movl 48879(,%eiz), %eax
+
+// CHECK: movl -4(,%eiz,8), %eax
+// CHECK: encoding: [0x8b,0x04,0xe5,0xfc,0xff,0xff,0xff]
+ movl -4(,%eiz,8), %eax
+
+// CHECK: movl (%ecx,%eiz), %eax
+// CHECK: encoding: [0x8b,0x04,0x21]
+ movl (%ecx,%eiz), %eax
+
+// CHECK: movl (%ecx,%eiz,8), %eax
+// CHECK: encoding: [0x8b,0x04,0xe1]
+ movl (%ecx,%eiz,8), %eax
+
diff --git a/test/MC/AsmParser/X86/x86_64-avx-encoding.s b/test/MC/AsmParser/X86/x86_64-avx-encoding.s
index d168bbd825..7a96bb5a2b 100644
--- a/test/MC/AsmParser/X86/x86_64-avx-encoding.s
+++ b/test/MC/AsmParser/X86/x86_64-avx-encoding.s
@@ -3312,3 +3312,7 @@ vdivpd -4(%rcx,%rbx,8), %xmm10, %xmm11
// CHECK: encoding: [0xc5,0xf9,0xd7,0xcc]
vpmovmskb %xmm4, %rcx
+// CHECK: vblendvpd %ymm11, 57005(%rax,%riz), %ymm12, %ymm13
+// CHECK: encoding: [0xc4,0x63,0x1d,0x4b,0xac,0x20,0xad,0xde,0x00,0x00,0xb0]
+ vblendvpd %ymm11, 0xdead(%rax,%riz), %ymm12, %ymm13
+
diff --git a/test/MC/AsmParser/X86/x86_64-encoding.s b/test/MC/AsmParser/X86/x86_64-encoding.s
index 6fe6807f02..f45b0a23d5 100644
--- a/test/MC/AsmParser/X86/x86_64-encoding.s
+++ b/test/MC/AsmParser/X86/x86_64-encoding.s
@@ -120,3 +120,23 @@ movd %mm1, %edx
// CHECK: fixup A - offset: 5, value: CPI1_0-4
pshufb CPI1_0(%rip), %xmm1
+// CHECK: movq 57005(,%riz), %rbx
+// CHECK: encoding: [0x48,0x8b,0x1c,0x25,0xad,0xde,0x00,0x00]
+ movq 57005(,%riz), %rbx
+
+// CHECK: movq 48879(,%riz), %rax
+// CHECK: encoding: [0x48,0x8b,0x04,0x25,0xef,0xbe,0x00,0x00]
+ movq 48879(,%riz), %rax
+
+// CHECK: movq -4(,%riz,8), %rax
+// CHECK: encoding: [0x48,0x8b,0x04,0xe5,0xfc,0xff,0xff,0xff]
+ movq -4(,%riz,8), %rax
+
+// CHECK: movq (%rcx,%riz), %rax
+// CHECK: encoding: [0x48,0x8b,0x04,0x21]
+ movq (%rcx,%riz), %rax
+
+// CHECK: movq (%rcx,%riz,8), %rax
+// CHECK: encoding: [0x48,0x8b,0x04,0xe1]
+ movq (%rcx,%riz,8), %rax
+