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