; 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		; <i32> [#uses=1]
	%tmp13.i12.i = tail call double @ldexp( double 0.000000e+00, i32 0 )		; <double> [#uses=1]
	%tmp13.i13.i = fptrunc double %tmp13.i12.i to float		; <float> [#uses=1]
	%tmp11.s = load i32* null		; <i32> [#uses=1]
	%tmp11.i = bitcast i32 %tmp11.s to i32		; <i32> [#uses=1]
	%n.i = bitcast i32 %tmp24.i to i32		; <i32> [#uses=1]
	%tmp13.i7 = mul i32 %tmp11.i, %n.i		; <i32> [#uses=1]
	%tmp.i8 = tail call i8* @calloc( i32 %tmp13.i7, i32 4 )		; <i8*> [#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		; <double> [#uses=0]
	ret i32 0
}

declare i8* @calloc(i32, i32)

declare double @ldexp(double, i32)
