; RUN: opt < %s -analyze -scalar-evolution \
; RUN:   -scalar-evolution-max-iterations=0 | FileCheck %s
; PR2607

define i32 @_Z1aj(i32 %j) nounwind  {
entry:
	icmp sgt i32 0, %j		; <i1>:0 [#uses=1]
	br i1 %0, label %bb.preheader, label %return

bb.preheader:		; preds = %entry
	br label %bb

bb:		; preds = %bb, %bb.preheader
	%i.01 = phi i32 [ %1, %bb ], [ 0, %bb.preheader ]		; <i32> [#uses=1]
	add i32 %i.01, -1		; <i32>:1 [#uses=3]
	icmp sgt i32 %1, %j		; <i1>:2 [#uses=1]
	br i1 %2, label %bb, label %return.loopexit

return.loopexit:		; preds = %bb
	br label %return

return:		; preds = %return.loopexit, %entry
	%i.0.lcssa = phi i32 [ 0, %entry ], [ %1, %return.loopexit ]		; <i32> [#uses=1]
	ret i32 %i.0.lcssa
}

; CHECK: backedge-taken count is (-1 + (-1 * %j))

