1*9880d681SAndroid Build Coastguard Worker; RUN: llc < %s -march=x86 -mattr=+sse,-sse2 2*9880d681SAndroid Build Coastguard Worker 3*9880d681SAndroid Build Coastguard Workerdefine <4 x float> @f(float %w) nounwind { 4*9880d681SAndroid Build Coastguard Workerentry: 5*9880d681SAndroid Build Coastguard Worker %retval = alloca <4 x float> ; <<4 x float>*> [#uses=2] 6*9880d681SAndroid Build Coastguard Worker %w.addr = alloca float ; <float*> [#uses=2] 7*9880d681SAndroid Build Coastguard Worker %.compoundliteral = alloca <4 x float> ; <<4 x float>*> [#uses=2] 8*9880d681SAndroid Build Coastguard Worker store float %w, float* %w.addr 9*9880d681SAndroid Build Coastguard Worker %tmp = load float, float* %w.addr ; <float> [#uses=1] 10*9880d681SAndroid Build Coastguard Worker %0 = insertelement <4 x float> undef, float %tmp, i32 0 ; <<4 x float>> [#uses=1] 11*9880d681SAndroid Build Coastguard Worker %1 = insertelement <4 x float> %0, float 0.000000e+00, i32 1 ; <<4 x float>> [#uses=1] 12*9880d681SAndroid Build Coastguard Worker %2 = insertelement <4 x float> %1, float 0.000000e+00, i32 2 ; <<4 x float>> [#uses=1] 13*9880d681SAndroid Build Coastguard Worker %3 = insertelement <4 x float> %2, float 0.000000e+00, i32 3 ; <<4 x float>> [#uses=1] 14*9880d681SAndroid Build Coastguard Worker store <4 x float> %3, <4 x float>* %.compoundliteral 15*9880d681SAndroid Build Coastguard Worker %tmp1 = load <4 x float>, <4 x float>* %.compoundliteral ; <<4 x float>> [#uses=1] 16*9880d681SAndroid Build Coastguard Worker store <4 x float> %tmp1, <4 x float>* %retval 17*9880d681SAndroid Build Coastguard Worker br label %return 18*9880d681SAndroid Build Coastguard Worker 19*9880d681SAndroid Build Coastguard Workerreturn: ; preds = %entry 20*9880d681SAndroid Build Coastguard Worker %4 = load <4 x float>, <4 x float>* %retval ; <<4 x float>> [#uses=1] 21*9880d681SAndroid Build Coastguard Worker ret <4 x float> %4 22*9880d681SAndroid Build Coastguard Worker} 23