1 ; RUN: llc < %s | FileCheck %s 2 target datalayout = "E-m:e-i64:64-n32:64" 3 target triple = "powerpc64-unknown-linux-gnu" 4 5 ; Function Attrs: nounwind 6 define <2 x i32> @test1(<4 x i32> %wide.vec) #0 { 7 entry: 8 %strided.vec = shufflevector <4 x i32> %wide.vec, <4 x i32> undef, <2 x i32> <i32 0, i32 2> 9 ret <2 x i32> %strided.vec 10 11 ; CHECK-LABEL: @test1 12 ; CHECK: vsldoi 2, 2, 2, 12 13 ; CHECK: blr 14 } 15 16 ; Function Attrs: nounwind 17 define <16 x i8> @test2(<16 x i8> %wide.vec) #0 { 18 entry: 19 %strided.vec = shufflevector <16 x i8> %wide.vec, <16 x i8> undef, <16 x i32> <i32 undef, i32 undef, i32 undef, i32 undef, i32 0, i32 1, i32 2, i32 3, i32 undef, i32 undef, i32 undef, i32 undef, i32 8, i32 9, i32 10, i32 11> 20 ret <16 x i8> %strided.vec 21 22 ; CHECK-LABEL: @test2 23 ; CHECK: vsldoi 2, 2, 2, 12 24 ; CHECK: blr 25 } 26 27 attributes #0 = { nounwind "target-cpu"="pwr7" } 28 29