; The loop canonicalization pass should guarantee that there is one backedge 
; for all loops.  This allows the -indvars pass to recognize the %IV 
; induction variable in this testcase.

; RUN: llvm-upgrade < %s | llvm-as | opt -indvars | llvm-dis | grep indvar

int %test(bool %C) {
	br label %Loop
Loop:
	%IV = phi uint [1, %0], [%IV2, %BE1], [%IV2, %BE2]
	%IV2 = add uint %IV, 2
	br bool %C, label %BE1, label %BE2
BE1:
	br label %Loop
BE2:
	br label %Loop
}
