30 lines · plain
1; RUN: opt < %s -passes='print<regions>' 2>&1 | FileCheck %s2 3; We should not crash if there are some bbs that are not reachable.4define void @f() {5entry:6 br label %for.pre7 8notintree: ; No predecessors!9 br label %ret10 11for.pre: ; preds = %entry12 br label %for13 14for: ; preds = %for.inc, %for.pre15 %indvar = phi i64 [ 0, %for.pre ], [ %indvar.next, %for.inc ]16 %exitcond = icmp ne i64 %indvar, 20017 br i1 %exitcond, label %for.inc, label %ret18 19for.inc: ; preds = %for20 %indvar.next = add i64 %indvar, 121 br label %for22 23ret: ; preds = %for, %notintree24 ret void25}26 27; CHECK: [0] entry => <Function Return>28; CHECK: [1] for => ret29 30