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
7define internal fastcc void @compress() nounwind {
8end33:
9  br i1 1, label %end124, label %lor.lhs.false95
10
11lor.lhs.false95:
12  br i1 1, label %then107, label %end172
13
14then107:
15  br i1 1, label %end124, label %then113
16
17then113:
18  br label %end124
19
20end124:
21  br label %exit
22
23end172:
24  br label %exit
25
26
27exit:
28  unreachable
29
30
31}
32; CHECK-NOT: =>
33; CHECK: [0] end33 => <Function Return>
34; CHECK-NEXT:      [1] end33 => exit
35; CHECK-NEXT:   [2] then107 => end124
36
37; STAT: 3 region - The # of regions
38
39; BBIT: end33, end124, exit, lor.lhs.false95, then107, then113, end172,
40; BBIT: end33, end124, lor.lhs.false95, then107, then113, end172,
41; BBIT: then107, then113,
42
43; RNIT: end33 => exit, exit,
44; RNIT: end33, end124, lor.lhs.false95, then107 => end124, end172,
45; RNIT: then107, then113,
46