xref: /aosp_15_r20/external/llvm/test/CodeGen/PowerPC/2007-11-19-VectorSplitting.ll (revision 9880d6810fe72a1726cb53787c6711e909410d58)
1*9880d681SAndroid Build Coastguard Worker; RUN: llc < %s
2*9880d681SAndroid Build Coastguard Worker; RUN: llc < %s -march=ppc32 -mcpu=g3
3*9880d681SAndroid Build Coastguard Worker; RUN: llc < %s -march=ppc32 -mcpu=g5
4*9880d681SAndroid Build Coastguard Worker; PR1811
5*9880d681SAndroid Build Coastguard Worker; REQUIRES: default_triple
6*9880d681SAndroid Build Coastguard Worker
7*9880d681SAndroid Build Coastguard Workerdefine void @execute_shader(<4 x float>* %OUT, <4 x float>* %IN, <4 x float>*
8*9880d681SAndroid Build Coastguard Worker%CONST) {
9*9880d681SAndroid Build Coastguard Workerentry:
10*9880d681SAndroid Build Coastguard Worker        %input2 = load <4 x float>, <4 x float>* null, align 16               ; <<4 x float>>
11*9880d681SAndroid Build Coastguard Worker       	%shuffle7 = shufflevector <4 x float> %input2, <4 x float> < float 0.000000e+00, float 1.000000e+00, float 0.000000e+00, float 1.000000e+00 >, <4 x i32> < i32 2, i32 2, i32 2, i32 2 >		; <<4 x float>> [#uses=1]
12*9880d681SAndroid Build Coastguard Worker
13*9880d681SAndroid Build Coastguard Worker        %mul1 = fmul <4 x float> %shuffle7, zeroinitializer              ; <<4 x
14*9880d681SAndroid Build Coastguard Worker        %add2 = fadd <4 x float> %mul1, %input2          ; <<4 x float>>
15*9880d681SAndroid Build Coastguard Worker        store <4 x float> %add2, <4 x float>* null, align 16
16*9880d681SAndroid Build Coastguard Worker        ret void
17*9880d681SAndroid Build Coastguard Worker}
18