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 4 5 ; Verify that we don't fail when shift by zero is encountered. 6 7 define i64 @test1(<2 x i64> %a) { 8 ; X32-LABEL: test1: 9 ; X32: # %bb.0: # %entry 10 ; X32-NEXT: movd %xmm0, %eax 11 ; X32-NEXT: pshufd {{.*#+}} xmm0 = xmm0[1,1,2,3] 12 ; X32-NEXT: movd %xmm0, %edx 13 ; X32-NEXT: retl 14 ; 15 ; X64-LABEL: test1: 16 ; X64: # %bb.0: # %entry 17 ; X64-NEXT: movq %xmm0, %rax 18 ; X64-NEXT: retq 19 entry: 20 %c = shl <2 x i64> %a, <i64 0, i64 2> 21 %d = extractelement <2 x i64> %c, i32 0 22 ret i64 %d 23 } 24