1 ; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
2 ; RUN: llc < %s -mtriple=i686-unknown -mattr=+sse2 | FileCheck %s --check-prefix=X32
3 ; RUN: llc < %s -mtriple=x86_64-unknown -mattr=+sse2 | FileCheck %s --check-prefix=X64
5 ; Verify that we don't fail when shift by zero is encountered.
7 define i64 @test1(<2 x i64> %a) {
9 ; X32: # BB#0: # %entry
10 ; X32-NEXT: movdqa %xmm0, %xmm1
11 ; X32-NEXT: psllq $2, %xmm1
12 ; X32-NEXT: movsd {{.*#+}} xmm1 = xmm0[0],xmm1[1]
13 ; X32-NEXT: pshufd {{.*#+}} xmm1 = xmm1[1,1,2,3]
14 ; X32-NEXT: movd %xmm1, %edx
15 ; X32-NEXT: movd %xmm0, %eax
19 ; X64: # BB#0: # %entry
20 ; X64-NEXT: movq %xmm0, %rax
23 %c = shl <2 x i64> %a, <i64 0, i64 2>
24 %d = extractelement <2 x i64> %c, i32 0