AVX512:Implemented encoding for the vmovq.s instruction.
authorIgor Breger <igor.breger@intel.com>
Sun, 29 Nov 2015 07:41:26 +0000 (07:41 +0000)
committerIgor Breger <igor.breger@intel.com>
Sun, 29 Nov 2015 07:41:26 +0000 (07:41 +0000)
Differential Revision: http://reviews.llvm.org/D14810

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@254248 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/X86/X86InstrAVX512.td
test/MC/X86/avx512-encodings.s

index 92126ab39c1c2651e2457ab9db11f58bf8fb9776..5ba6075d2831eb35f5a4c140eb16ecf29e8676ad 100644 (file)
@@ -2913,6 +2913,11 @@ def VMOVPQIto64Zmr : I<0xD6, MRMDestMem, (outs),
                        EVEX, PD, VEX_LIG, VEX_W, EVEX_CD8<64, CD8VT1>,
                        Sched<[WriteStore]>, Requires<[HasAVX512, In64BitMode]>;
 
+def VMOV64toPQIZrr_REV : AVX512BI<0xD6, MRMDestReg, (outs VR128X:$dst),
+                            (ins VR128X:$src),
+                            "vmovq.s\t{$src, $dst|$dst, $src}",[]>,
+                            EVEX, VEX_W, VEX_LIG;
+
 // Move Scalar Single to Double Int
 //
 let isCodeGenOnly = 1 in {
index 818b647b917da92f74537bc7a3dcc6164d8483fa..7ab94e729611ba11ff5ea986a0eae1ac052b0f62 100644 (file)
@@ -19077,3 +19077,19 @@ vpermilpd $0x23, 0x400(%rbx), %zmm2
 // CHECK:  encoding: [0x62,0x81,0x7c,0xce,0x11,0xe3]
           vmovups.s %zmm20, %zmm27 {%k6} {z}
 
+// CHECK: vmovq.s %xmm9, %xmm29
+// CHECK:  encoding: [0x62,0x11,0xfd,0x08,0xd6,0xcd]
+          vmovq.s %xmm9, %xmm29
+
+// CHECK: vmovq.s %xmm5, %xmm18
+// CHECK:  encoding: [0x62,0xb1,0xfd,0x08,0xd6,0xea]
+          vmovq.s %xmm5, %xmm18
+
+// CHECK: vmovq.s  %xmm14, %xmm25
+// CHECK:  encoding: [0x62,0x11,0xfd,0x08,0xd6,0xf1]
+          vmovq.s  %xmm14, %xmm25
+
+// CHECK: vmovq.s  %xmm24, %xmm12
+// CHECK:  encoding: [0x62,0x41,0xfd,0x08,0xd6,0xc4]
+          vmovq.s  %xmm24, %xmm12
+