63 lines · plain
1; RUN: opt < %s -passes=mem2reg -disable-output2; PR6703 4define void @printk(i32, ...) {5entry:6 %flags = alloca i32 ; <ptr> [#uses=2]7 br i1 false, label %then.0, label %endif.08then.0: ; preds = %entry9 br label %endif.010endif.0: ; preds = %then.0, %entry11 store i32 0, ptr %flags12 br label %loopentry13loopentry: ; preds = %endif.3, %endif.014 br i1 false, label %no_exit, label %loopexit15no_exit: ; preds = %loopentry16 br i1 false, label %then.1, label %endif.117then.1: ; preds = %no_exit18 br i1 false, label %shortcirc_done.0, label %shortcirc_next.019shortcirc_next.0: ; preds = %then.120 br label %shortcirc_done.021shortcirc_done.0: ; preds = %shortcirc_next.0, %then.122 br i1 false, label %shortcirc_done.1, label %shortcirc_next.123shortcirc_next.1: ; preds = %shortcirc_done.024 br label %shortcirc_done.125shortcirc_done.1: ; preds = %shortcirc_next.1, %shortcirc_done.026 br i1 false, label %shortcirc_done.2, label %shortcirc_next.227shortcirc_next.2: ; preds = %shortcirc_done.128 br label %shortcirc_done.229shortcirc_done.2: ; preds = %shortcirc_next.2, %shortcirc_done.130 br i1 false, label %then.2, label %endif.231then.2: ; preds = %shortcirc_done.232 br label %endif.233endif.2: ; preds = %then.2, %shortcirc_done.234 br label %endif.135endif.1: ; preds = %endif.2, %no_exit36 br i1 false, label %then.3, label %endif.337then.3: ; preds = %endif.138 br label %endif.339endif.3: ; preds = %then.3, %endif.140 br label %loopentry41loopexit: ; preds = %loopentry42 br label %endif.443then.4: ; No predecessors!44 %tmp.61 = load i32, ptr %flags ; <i32> [#uses=0]45 br label %out46dead_block_after_goto: ; No predecessors!47 br label %endif.448endif.4: ; preds = %dead_block_after_goto, %loopexit49 br i1 false, label %then.5, label %else50then.5: ; preds = %endif.451 br label %endif.552else: ; preds = %endif.453 br label %endif.554endif.5: ; preds = %else, %then.555 br label %out56out: ; preds = %endif.5, %then.457 br label %return58after_ret: ; No predecessors!59 br label %return60return: ; preds = %after_ret, %out61 ret void62}63