Merge branch 'master' into msp430
[llvm/msp430.git] / test / CodeGen / X86 / vec_insert.ll
blobe032c5b8549c082702468a35cc71db617ab42692
1 ; RUN: llvm-as < %s | llc -march=x86 -mattr=+sse2,-sse41 | grep movss | count 1
2 ; RUN: llvm-as < %s | llc -march=x86 -mattr=+sse2,-sse41 | not grep pinsrw
4 define void @test(<4 x float>* %F, i32 %I) {
5         %tmp = load <4 x float>* %F             ; <<4 x float>> [#uses=1]
6         %f = sitofp i32 %I to float             ; <float> [#uses=1]
7         %tmp1 = insertelement <4 x float> %tmp, float %f, i32 0         ; <<4 x float>> [#uses=2]
8         %tmp18 = add <4 x float> %tmp1, %tmp1           ; <<4 x float>> [#uses=1]
9         store <4 x float> %tmp18, <4 x float>* %F
10         ret void
13 define void @test2(<4 x float>* %F, i32 %I, float %g) {
14         %tmp = load <4 x float>* %F             ; <<4 x float>> [#uses=1]
15         %f = sitofp i32 %I to float             ; <float> [#uses=1]
16         %tmp1 = insertelement <4 x float> %tmp, float %f, i32 2         ; <<4 x float>> [#uses=1]
17         store <4 x float> %tmp1, <4 x float>* %F
18         ret void