; RUN: opt < %s -analyze -scalar-evolution | FileCheck %s

target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128"

; CHECK: Loop %bb7.i: Unpredictable backedge-taken count.

	%struct.complex = type { float, float }
	%struct.element = type { i32, i32 }
	%struct.node = type { %struct.node*, %struct.node*, i32 }
@seed = external global i64		; <i64*> [#uses=0]
@_2E_str = external constant [18 x i8], align 1		; <[18 x i8]*> [#uses=0]
@_2E_str1 = external constant [4 x i8], align 1		; <[4 x i8]*> [#uses=0]
@value = external global float		; <float*> [#uses=0]
@fixed = external global float		; <float*> [#uses=0]
@floated = external global float		; <float*> [#uses=0]
@permarray = external global [11 x i32], align 32		; <[11 x i32]*> [#uses=0]
@pctr = external global i32		; <i32*> [#uses=0]
@tree = external global %struct.node*		; <%struct.node**> [#uses=0]
@stack = external global [4 x i32], align 16		; <[4 x i32]*> [#uses=0]
@cellspace = external global [19 x %struct.element], align 32		; <[19 x %struct.element]*> [#uses=0]
@freelist = external global i32		; <i32*> [#uses=0]
@movesdone = external global i32		; <i32*> [#uses=0]
@ima = external global [41 x [41 x i32]], align 32		; <[41 x [41 x i32]]*> [#uses=0]
@imb = external global [41 x [41 x i32]], align 32		; <[41 x [41 x i32]]*> [#uses=0]
@imr = external global [41 x [41 x i32]], align 32		; <[41 x [41 x i32]]*> [#uses=0]
@rma = external global [41 x [41 x float]], align 32		; <[41 x [41 x float]]*> [#uses=0]
@rmb = external global [41 x [41 x float]], align 32		; <[41 x [41 x float]]*> [#uses=0]
@rmr = external global [41 x [41 x float]], align 32		; <[41 x [41 x float]]*> [#uses=0]
@piececount = external global [4 x i32], align 16		; <[4 x i32]*> [#uses=0]
@class = external global [13 x i32], align 32		; <[13 x i32]*> [#uses=0]
@piecemax = external global [13 x i32], align 32		; <[13 x i32]*> [#uses=0]
@puzzl = external global [512 x i32], align 32		; <[512 x i32]*> [#uses=0]
@p = external global [13 x [512 x i32]], align 32		; <[13 x [512 x i32]]*> [#uses=0]
@n = external global i32		; <i32*> [#uses=0]
@kount = external global i32		; <i32*> [#uses=0]
@sortlist = external global [5001 x i32], align 32		; <[5001 x i32]*> [#uses=0]
@biggest = external global i32		; <i32*> [#uses=0]
@littlest = external global i32		; <i32*> [#uses=0]
@top = external global i32		; <i32*> [#uses=0]
@z = external global [257 x %struct.complex], align 32		; <[257 x %struct.complex]*> [#uses=0]
@w = external global [257 x %struct.complex], align 32		; <[257 x %struct.complex]*> [#uses=0]
@e = external global [130 x %struct.complex], align 32		; <[130 x %struct.complex]*> [#uses=0]
@zr = external global float		; <float*> [#uses=0]
@zi = external global float		; <float*> [#uses=0]

declare void @Initrand() nounwind

declare i32 @Rand() nounwind

declare void @Try(i32, i32*, i32*, i32*, i32*, i32*) nounwind

declare i32 @puts(i8* nocapture) nounwind

declare void @Queens(i32) nounwind

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

declare i32 @main() nounwind

declare void @Doit() nounwind

declare void @Doit_bb7([15 x i32]*, [17 x i32]*, [9 x i32]*) nounwind

define void @Doit_bb7_2E_i([9 x i32]* %x1, [15 x i32]* %c, [17 x i32]* %b, [9 x i32]* %a, i32* %q, i32* %x1.sub, i32* %b9, i32* %a10, i32* %c11) nounwind {
newFuncRoot:
	br label %bb7.i

Try.exit.exitStub:		; preds = %bb7.i
	ret void

bb.i:		; preds = %bb7.i
	%tmp = add i32 %j.0.i, 1		; <i32> [#uses=5]
	store i32 0, i32* %q, align 4
	%tmp1 = sext i32 %tmp to i64		; <i64> [#uses=1]
	%tmp2 = getelementptr [9 x i32], [9 x i32]* %a, i64 0, i64 %tmp1		; <i32*> [#uses=1]
	%tmp3 = load i32, i32* %tmp2, align 4		; <i32> [#uses=1]
	%tmp4 = icmp eq i32 %tmp3, 0		; <i1> [#uses=1]
	br i1 %tmp4, label %bb.i.bb7.i.backedge_crit_edge, label %bb1.i

bb1.i:		; preds = %bb.i
	%tmp5 = add i32 %j.0.i, 2		; <i32> [#uses=1]
	%tmp6 = sext i32 %tmp5 to i64		; <i64> [#uses=1]
	%tmp7 = getelementptr [17 x i32], [17 x i32]* %b, i64 0, i64 %tmp6		; <i32*> [#uses=1]
	%tmp8 = load i32, i32* %tmp7, align 4		; <i32> [#uses=1]
	%tmp9 = icmp eq i32 %tmp8, 0		; <i1> [#uses=1]
	br i1 %tmp9, label %bb1.i.bb7.i.backedge_crit_edge, label %bb2.i

bb2.i:		; preds = %bb1.i
	%tmp10 = sub i32 7, %j.0.i		; <i32> [#uses=1]
	%tmp11 = sext i32 %tmp10 to i64		; <i64> [#uses=1]
	%tmp12 = getelementptr [15 x i32], [15 x i32]* %c, i64 0, i64 %tmp11		; <i32*> [#uses=1]
	%tmp13 = load i32, i32* %tmp12, align 4		; <i32> [#uses=1]
	%tmp14 = icmp eq i32 %tmp13, 0		; <i1> [#uses=1]
	br i1 %tmp14, label %bb2.i.bb7.i.backedge_crit_edge, label %bb3.i

bb3.i:		; preds = %bb2.i
	%tmp15 = getelementptr [9 x i32], [9 x i32]* %x1, i64 0, i64 1		; <i32*> [#uses=1]
	store i32 %tmp, i32* %tmp15, align 4
	%tmp16 = sext i32 %tmp to i64		; <i64> [#uses=1]
	%tmp17 = getelementptr [9 x i32], [9 x i32]* %a, i64 0, i64 %tmp16		; <i32*> [#uses=1]
	store i32 0, i32* %tmp17, align 4
	%tmp18 = add i32 %j.0.i, 2		; <i32> [#uses=1]
	%tmp19 = sext i32 %tmp18 to i64		; <i64> [#uses=1]
	%tmp20 = getelementptr [17 x i32], [17 x i32]* %b, i64 0, i64 %tmp19		; <i32*> [#uses=1]
	store i32 0, i32* %tmp20, align 4
	%tmp21 = sub i32 7, %j.0.i		; <i32> [#uses=1]
	%tmp22 = sext i32 %tmp21 to i64		; <i64> [#uses=1]
	%tmp23 = getelementptr [15 x i32], [15 x i32]* %c, i64 0, i64 %tmp22		; <i32*> [#uses=1]
	store i32 0, i32* %tmp23, align 4
	call void @Try(i32 2, i32* %q, i32* %b9, i32* %a10, i32* %c11, i32* %x1.sub) nounwind
	%tmp24 = load i32, i32* %q, align 4		; <i32> [#uses=1]
	%tmp25 = icmp eq i32 %tmp24, 0		; <i1> [#uses=1]
	br i1 %tmp25, label %bb5.i, label %bb3.i.bb7.i.backedge_crit_edge

bb5.i:		; preds = %bb3.i
	%tmp26 = sext i32 %tmp to i64		; <i64> [#uses=1]
	%tmp27 = getelementptr [9 x i32], [9 x i32]* %a, i64 0, i64 %tmp26		; <i32*> [#uses=1]
	store i32 1, i32* %tmp27, align 4
	%tmp28 = add i32 %j.0.i, 2		; <i32> [#uses=1]
	%tmp29 = sext i32 %tmp28 to i64		; <i64> [#uses=1]
	%tmp30 = getelementptr [17 x i32], [17 x i32]* %b, i64 0, i64 %tmp29		; <i32*> [#uses=1]
	store i32 1, i32* %tmp30, align 4
	%tmp31 = sub i32 7, %j.0.i		; <i32> [#uses=1]
	%tmp32 = sext i32 %tmp31 to i64		; <i64> [#uses=1]
	%tmp33 = getelementptr [15 x i32], [15 x i32]* %c, i64 0, i64 %tmp32		; <i32*> [#uses=1]
	store i32 1, i32* %tmp33, align 4
	br label %bb7.i.backedge

bb7.i.backedge:		; preds = %bb3.i.bb7.i.backedge_crit_edge, %bb2.i.bb7.i.backedge_crit_edge, %bb1.i.bb7.i.backedge_crit_edge, %bb.i.bb7.i.backedge_crit_edge, %bb5.i
	br label %bb7.i

bb7.i:		; preds = %bb7.i.backedge, %newFuncRoot
	%j.0.i = phi i32 [ 0, %newFuncRoot ], [ %tmp, %bb7.i.backedge ]		; <i32> [#uses=8]
	%tmp34 = load i32, i32* %q, align 4		; <i32> [#uses=1]
	%tmp35 = icmp eq i32 %tmp34, 0		; <i1> [#uses=1]
	%tmp36 = icmp ne i32 %j.0.i, 8		; <i1> [#uses=1]
	%tmp37 = and i1 %tmp35, %tmp36		; <i1> [#uses=1]
	br i1 %tmp37, label %bb.i, label %Try.exit.exitStub

bb.i.bb7.i.backedge_crit_edge:		; preds = %bb.i
	br label %bb7.i.backedge

bb1.i.bb7.i.backedge_crit_edge:		; preds = %bb1.i
	br label %bb7.i.backedge

bb2.i.bb7.i.backedge_crit_edge:		; preds = %bb2.i
	br label %bb7.i.backedge

bb3.i.bb7.i.backedge_crit_edge:		; preds = %bb3.i
	br label %bb7.i.backedge
}
