; Check that this test makes INDVAR and related stuff dead.
; RUN: opt < %s -loop-reduce -S | not grep INDVAR

; Provide legal integer types.
target datalayout = "n8:16:32:64"

declare i1 @pred()

define void @test(ptr %P) {
; <label>:0
	br label %Loop
Loop:		; preds = %Loop, %0
        %i = phi i32 [ 0, %0 ], [ %i.next, %Loop ]
	%INDVAR = phi i32 [ 0, %0 ], [ %INDVAR2, %Loop ]		; <i32> [#uses=2]
	%STRRED = getelementptr i32, ptr %P, i32 %INDVAR		; <ptr> [#uses=1]
	store i32 0, ptr %STRRED
	%INDVAR2 = add i32 %INDVAR, 1		; <i32> [#uses=1]
        %i.next = add i32 %i, 1
	%cond = call i1 @pred( )		; <i1> [#uses=1]
	br i1 %cond, label %Loop, label %Out
Out:		; preds = %Loop
	ret void
}

