1 ; RUN: opt < %s -loop-reduce -disable-output 2 3 define void @main() { 4 entry: 5 br label %loopentry.0 6 loopentry.0: ; preds = %then.5, %entry 7 %arg_index.1.ph = phi i32 [ 1, %entry ], [ %arg_index.1.ph.be, %then.5 ] ; <i32> [#uses=1] 8 br i1 false, label %no_exit.0, label %loopexit.0 9 no_exit.0: ; preds = %loopentry.0 10 %arg_index.1.1 = add i32 0, %arg_index.1.ph ; <i32> [#uses=2] 11 br i1 false, label %then.i55, label %endif.i61 12 then.i55: ; preds = %no_exit.0 13 br i1 false, label %then.4, label %else.1 14 endif.i61: ; preds = %no_exit.0 15 ret void 16 then.4: ; preds = %then.i55 17 %tmp.19993 = add i32 %arg_index.1.1, 2 ; <i32> [#uses=0] 18 ret void 19 else.1: ; preds = %then.i55 20 br i1 false, label %then.i86, label %loopexit.i97 21 then.i86: ; preds = %else.1 22 ret void 23 loopexit.i97: ; preds = %else.1 24 br i1 false, label %then.5, label %else.2 25 then.5: ; preds = %loopexit.i97 26 %arg_index.1.ph.be = add i32 %arg_index.1.1, 2 ; <i32> [#uses=1] 27 br label %loopentry.0 28 else.2: ; preds = %loopexit.i97 29 ret void 30 loopexit.0: ; preds = %loopentry.0 31 ret void 32 } 33