xref: /aosp_15_r20/external/llvm/test/Transforms/LoopUnroll/2005-03-06-BadLoopInfoUpdate.ll (revision 9880d6810fe72a1726cb53787c6711e909410d58)
1*9880d681SAndroid Build Coastguard Worker; RUN: opt < %s -loop-unroll -loop-simplify -disable-output
2*9880d681SAndroid Build Coastguard Worker
3*9880d681SAndroid Build Coastguard Workerdefine void @print_board() {
4*9880d681SAndroid Build Coastguard Workerentry:
5*9880d681SAndroid Build Coastguard Worker	br label %no_exit.1
6*9880d681SAndroid Build Coastguard Workerno_exit.1:		; preds = %cond_false.2, %entry
7*9880d681SAndroid Build Coastguard Worker	br label %no_exit.2
8*9880d681SAndroid Build Coastguard Workerno_exit.2:		; preds = %no_exit.2, %no_exit.1
9*9880d681SAndroid Build Coastguard Worker	%indvar1 = phi i32 [ 0, %no_exit.1 ], [ %indvar.next2, %no_exit.2 ]		; <i32> [#uses=1]
10*9880d681SAndroid Build Coastguard Worker	%indvar.next2 = add i32 %indvar1, 1		; <i32> [#uses=2]
11*9880d681SAndroid Build Coastguard Worker	%exitcond3 = icmp ne i32 %indvar.next2, 7		; <i1> [#uses=1]
12*9880d681SAndroid Build Coastguard Worker	br i1 %exitcond3, label %no_exit.2, label %loopexit.2
13*9880d681SAndroid Build Coastguard Workerloopexit.2:		; preds = %no_exit.2
14*9880d681SAndroid Build Coastguard Worker	br i1 false, label %cond_true.2, label %cond_false.2
15*9880d681SAndroid Build Coastguard Workercond_true.2:		; preds = %loopexit.2
16*9880d681SAndroid Build Coastguard Worker	ret void
17*9880d681SAndroid Build Coastguard Workercond_false.2:		; preds = %loopexit.2
18*9880d681SAndroid Build Coastguard Worker	br i1 false, label %no_exit.1, label %loopexit.1
19*9880d681SAndroid Build Coastguard Workerloopexit.1:		; preds = %cond_false.2
20*9880d681SAndroid Build Coastguard Worker	ret void
21*9880d681SAndroid Build Coastguard Worker}
22*9880d681SAndroid Build Coastguard Worker
23