; RUN: %lli -force-interpreter=true %s | grep 1

target datalayout = "e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-f32:32:32-f64:32:64-v64:64:64-v128:128:128-a0:0:64-f80:32:32"
target triple = "i686-pc-linux-gnu"
@.str = internal constant [10 x i8] c"MSB = %d\0A\00"		; <[10 x i8]*> [#uses=1]

define i65 @foo(i65 %x) {
entry:
	%x_addr = alloca i65		; <i65*> [#uses=2]
	%retval = alloca i65		; <i65*> [#uses=2]
	%tmp = alloca i65		; <i65*> [#uses=2]
	%"alloca point" = bitcast i65 0 to i65		; <i65> [#uses=0]
	store i65 %x, i65* %x_addr
	%tmp1 = load i65* %x_addr, align 4		; <i65> [#uses=1]
	%tmp2 = ashr i65 %tmp1, 65		; <i65> [#uses=1]
	store i65 %tmp2, i65* %tmp, align 4
	%tmp3 = load i65* %tmp, align 4		; <i65> [#uses=1]
	store i65 %tmp3, i65* %retval, align 4
	br label %return

return:		; preds = %entry
	%retval4 = load i65* %retval		; <i65> [#uses=1]
	ret i65 %retval4
}

define i32 @main() {
entry:
	%retval = alloca i32		; <i32*> [#uses=1]
	%iftmp.0 = alloca i32		; <i32*> [#uses=3]
	%"alloca point" = bitcast i32 0 to i32		; <i32> [#uses=0]
	%tmp = call i65 @foo( i65 -9 )		; <i65> [#uses=1]
	%tmp1 = lshr i65 %tmp, 64		; <i65> [#uses=1]
	%tmp2 = xor i65 %tmp1, 1		; <i65> [#uses=1]
	%tmp3 = and i65 %tmp2, 1		; <i65> [#uses=1]
	%tmp34 = trunc i65 %tmp3 to i8		; <i8> [#uses=1]
	%toBool = icmp ne i8 %tmp34, 0		; <i1> [#uses=1]
	br i1 %toBool, label %cond_true, label %cond_false

cond_true:		; preds = %entry
	store i32 0, i32* %iftmp.0, align 4
	br label %cond_next

cond_false:		; preds = %entry
	store i32 1, i32* %iftmp.0, align 4
	br label %cond_next

cond_next:		; preds = %cond_false, %cond_true
	%tmp5 = getelementptr [10 x i8]* @.str, i32 0, i32 0		; <i8*> [#uses=1]
	%tmp6 = load i32* %iftmp.0, align 4		; <i32> [#uses=1]
	%tmp7 = call i32 (i8*, ...)* @printf( i8* noalias  %tmp5, i32 %tmp6 ) nounwind 		; <i32> [#uses=0]
	br label %return

return:		; preds = %cond_next
    store i32 0, i32* %retval, align 4
	%retval8 = load i32* %retval		; <i32> [#uses=1]
	ret i32 %retval8
}

declare i32 @printf(i8* noalias , ...) nounwind 
