1; REQUIRES: asserts 2; RUN: opt -regions -analyze < %s | FileCheck %s 3; RUN: opt -regions -stats < %s 2>&1 | FileCheck -check-prefix=STAT %s 4; RUN: opt -regions -print-region-style=bb -analyze < %s 2>&1 | FileCheck -check-prefix=BBIT %s 5; RUN: opt -regions -print-region-style=rn -analyze < %s 2>&1 | FileCheck -check-prefix=RNIT %s 6 7; RUN: opt < %s -passes='print<regions>' 2>&1 | FileCheck %s 8 9define internal fastcc zeroext i8 @handle_compress() nounwind { 10end165: 11 br i1 1, label %false239, label %true181 12 13true181: 14 br i1 1, label %then187, label %else232 15 16then187: 17 br label %end265 18 19else232: 20 br i1 1, label %false239, label %then245 21 22false239: 23 br i1 1, label %then245, label %else259 24 25then245: 26 br i1 1, label %then251, label %end253 27 28then251: 29 br label %end253 30 31end253: 32 br label %end265 33 34else259: 35 br label %end265 36 37end265: 38 br i1 1, label %then291, label %end298 39 40then291: 41 br label %end298 42 43end298: 44 ret i8 1 45} 46 47; CHECK-NOT: => 48; CHECK: [0] end165 => <Function Return> 49; CHECK-NEXT: [1] end165 => end265 50; CHECK-NEXT: [2] then245 => end253 51; CHECK-NEXT: [1] end265 => end298 52 53; STAT: 4 region - The # of regions 54 55; BBIT: end165, false239, then245, then251, end253, end265, then291, end298, else259, true181, then187, else232, 56; BBIT: end165, false239, then245, then251, end253, else259, true181, then187, else232, 57; BBIT: then245, then251, 58; BBIT: end265, then291, 59 60; RNIT: end165 => end265, end265 => end298, end298, 61; RNIT: end165, false239, then245 => end253, end253, else259, true181, then187, else232, 62; RNIT: then245, then251, 63; RNIT: end265, then291, 64