summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAdam Nemet <anemet@apple.com>2014-06-18 16:51:07 +0000
committerAdam Nemet <anemet@apple.com>2014-06-18 16:51:07 +0000
commit7fc69597b78d96a42fb96f406b1f96232fe848dc (patch)
tree8ea9a1e75982eafcfee8684d4059af1a178eb4a8
parent336da8cdc506c4f13e9a37ad33a6c0be83e4c5f4 (diff)
downloadllvm-7fc69597b78d96a42fb96f406b1f96232fe848dc.tar.gz
llvm-7fc69597b78d96a42fb96f406b1f96232fe848dc.tar.bz2
llvm-7fc69597b78d96a42fb96f406b1f96232fe848dc.tar.xz
[X86] AVX512: Specify compressed displacement for vmovntdqa
Use the max 64-bit element size with EVEX_CD8. This should work since element size is ignored for a full-vector access (FVM). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@211175 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--lib/Target/X86/X86InstrAVX512.td2
-rw-r--r--test/MC/X86/avx512-encodings.s4
2 files changed, 5 insertions, 1 deletions
diff --git a/lib/Target/X86/X86InstrAVX512.td b/lib/Target/X86/X86InstrAVX512.td
index 4b9f560597..618f42abe9 100644
--- a/lib/Target/X86/X86InstrAVX512.td
+++ b/lib/Target/X86/X86InstrAVX512.td
@@ -1798,7 +1798,7 @@ def VMOVNTDQAZrm : AVX5128I<0x2A, MRMSrcMem, (outs VR512:$dst),
"vmovntdqa\t{$src, $dst|$dst, $src}",
[(set VR512:$dst,
(int_x86_avx512_movntdqa addr:$src))]>,
- EVEX, EVEX_V512;
+ EVEX, EVEX_V512, EVEX_CD8<64, CD8VF>;
//===----------------------------------------------------------------------===//
// AVX-512 - Integer arithmetic
diff --git a/test/MC/X86/avx512-encodings.s b/test/MC/X86/avx512-encodings.s
index f38eaf5402..a7a87cd0b4 100644
--- a/test/MC/X86/avx512-encodings.s
+++ b/test/MC/X86/avx512-encodings.s
@@ -3159,3 +3159,7 @@ vmovntdqa 0x12345678(%rbx), %zmm13
// CHECK: vmovntdqa
// CHECK: encoding: [0x62,0xc2,0x7d,0x48,0x2a,0x14,0x56]
vmovntdqa (%r14,%rdx,2), %zmm18
+
+// CHECK: vmovntdqa
+// CHECK: encoding: [0x62,0xc2,0x7d,0x48,0x2a,0x7c,0x14,0x02]
+vmovntdqa 128(%r12,%rdx), %zmm23