Allow non-AVX form of pmovmskb to take a GR64 operand.
authorCraig Topper <craig.topper@gmail.com>
Thu, 10 Oct 2013 05:33:31 +0000 (05:33 +0000)
committerCraig Topper <craig.topper@gmail.com>
Thu, 10 Oct 2013 05:33:31 +0000 (05:33 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@192341 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/X86/X86InstrSSE.td
test/MC/X86/x86_64-encoding.s

index 84d6be00b865b8ed399bf96f260b1b5870519dae..1810e74cb2be14c312fe17fa88ae6cc8a9634015 100644 (file)
@@ -4314,6 +4314,8 @@ def PMOVMSKBrr : PDI<0xD7, MRMSrcReg, (outs GR32:$dst), (ins VR128:$src),
            "pmovmskb\t{$src, $dst|$dst, $src}",
            [(set GR32:$dst, (int_x86_sse2_pmovmskb_128 VR128:$src))],
            IIC_SSE_MOVMSK>;
+def PMOVMSKBr64r : PDI<0xD7, MRMSrcReg, (outs GR64:$dst), (ins VR128:$src),
+           "pmovmskb\t{$src, $dst|$dst, $src}", [], IIC_SSE_MOVMSK>;
 
 } // ExeDomain = SSEPackedInt
 
index f1a86c9d4bf0e9197e4ffeba96666a3b9ebb973f..5a2e99b9eb6ae8a51f15bfe2fb438697130dbee1 100644 (file)
@@ -231,3 +231,7 @@ sha256msg2 (%rax), %xmm2
 // CHECK: filds        (%rdi)
 // CHECK:  encoding: [0xdf,0x07]
                filds   (%rdi)
+
+// CHECK: pmovmskb     %xmm5, %rcx
+// CHECK:  encoding: [0x66,0x0f,0xd7,0xcd]
+               pmovmskb        %xmm5,%rcx