diff options
Diffstat (limited to 'llvm/test/CodeGen/X86/widen_conv-2.ll')
-rw-r--r-- | llvm/test/CodeGen/X86/widen_conv-2.ll | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/llvm/test/CodeGen/X86/widen_conv-2.ll b/llvm/test/CodeGen/X86/widen_conv-2.ll index ccaadec08aa..3a39cbfba2e 100644 --- a/llvm/test/CodeGen/X86/widen_conv-2.ll +++ b/llvm/test/CodeGen/X86/widen_conv-2.ll @@ -8,13 +8,17 @@ define void @convert_v2i16_v2i32(<2 x i32>* %dst.addr, <2 x i16> %src) nounwind ; X86-LABEL: convert_v2i16_v2i32: ; X86: # %bb.0: # %entry ; X86-NEXT: movl {{[0-9]+}}(%esp), %eax -; X86-NEXT: pmovsxwd %xmm0, %xmm0 +; X86-NEXT: psllq $48, %xmm0 +; X86-NEXT: psrad $16, %xmm0 +; X86-NEXT: pshufd {{.*#+}} xmm0 = xmm0[1,3,2,3] ; X86-NEXT: movq %xmm0, (%eax) ; X86-NEXT: retl ; ; X64-LABEL: convert_v2i16_v2i32: ; X64: # %bb.0: # %entry -; X64-NEXT: pmovsxwd %xmm0, %xmm0 +; X64-NEXT: psllq $48, %xmm0 +; X64-NEXT: psrad $16, %xmm0 +; X64-NEXT: pshufd {{.*#+}} xmm0 = xmm0[1,3,2,3] ; X64-NEXT: movq %xmm0, (%rdi) ; X64-NEXT: retq entry: |