1; REQUIRES: asserts 2; RUN: opt -passes='print<regions>' -disable-output < %s 2>&1 | FileCheck %s 3 4; While working on improvements to the region info analysis, this test 5; case caused an incorrect region 3 => 8 to be detected. 6 7define internal i8 @wibble() { 8bb: 9 br i1 true, label %bb1, label %bb8 10 11bb1: ; preds = %bb 12 switch i32 0, label %bb2 [ 13 i32 0, label %bb3 14 i32 1, label %bb7 15 ] 16 17bb2: ; preds = %bb1 18 br label %bb4 19 20bb3: ; preds = %bb1 21 br label %bb5 22 23bb4: ; preds = %bb2 24 br label %bb6 25 26bb5: ; preds = %bb3 27 br label %bb6 28 29bb6: ; preds = %bb5, %bb4 30 br label %bb7 31 32bb7: ; preds = %bb6, %bb1 33 br label %bb8 34 35bb8: ; preds = %bb7, %bb 36 ret i8 1 37} 38 39; CHECK: [0] bb => <Function Return> 40; CHECK-NEXT: [1] bb => bb8 41; CHECK-NEXT: [2] bb1 => bb7 42; CHECK-NEXT: End region tree 43 44