[InstCombine] Signed saturation patterns
[llvm-complete.git] / test / CodeGen / X86 / 2006-05-17-VectorArg.ll
blob7f022b6a607b73a22d2230af85b74c2fedcab641
1 ; RUN: llc < %s -mtriple=i686-- -mattr=+sse2
3 define <4 x float> @opRSQ(<4 x float> %a) nounwind {
4 entry:
5         %tmp2 = extractelement <4 x float> %a, i32 3            ; <float> [#uses=2]
6         %abscond = fcmp oge float %tmp2, -0.000000e+00          ; <i1> [#uses=1]
7         %abs = select i1 %abscond, float %tmp2, float 0.000000e+00              ; <float> [#uses=1]
8         %tmp3 = tail call float @llvm.sqrt.f32( float %abs )            ; <float> [#uses=1]
9         %tmp4 = fdiv float 1.000000e+00, %tmp3          ; <float> [#uses=1]
10         %tmp11 = insertelement <4 x float> zeroinitializer, float %tmp4, i32 3          ; <<4 x float>> [#uses=1]
11         ret <4 x float> %tmp11
14 declare float @llvm.sqrt.f32(float)