; RUN: llc < %s -march=x86 -mattr=+sse2 %struct.foo = type opaque define fastcc i32 @test(%struct.foo* %v, %struct.foo* %vi) { br i1 false, label %ilog2.exit, label %cond_true.i cond_true.i: ; preds = %0 ret i32 0 ilog2.exit: ; preds = %0 %tmp24.i = load i32* null ; [#uses=1] %tmp13.i12.i = tail call double @ldexp( double 0.000000e+00, i32 0 ) ; [#uses=1] %tmp13.i13.i = fptrunc double %tmp13.i12.i to float ; [#uses=1] %tmp11.s = load i32* null ; [#uses=1] %tmp11.i = bitcast i32 %tmp11.s to i32 ; [#uses=1] %n.i = bitcast i32 %tmp24.i to i32 ; [#uses=1] %tmp13.i7 = mul i32 %tmp11.i, %n.i ; [#uses=1] %tmp.i8 = tail call i8* @calloc( i32 %tmp13.i7, i32 4 ) ; [#uses=0] br i1 false, label %bb224.preheader.i, label %bb.i bb.i: ; preds = %ilog2.exit ret i32 0 bb224.preheader.i: ; preds = %ilog2.exit %tmp165.i = fpext float %tmp13.i13.i to double ; [#uses=0] ret i32 0 } declare i8* @calloc(i32, i32) declare double @ldexp(double, i32)