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 { 10entry: 11 br label %outer 12 13outer: 14 br label %body 15 16body: 17 br i1 1, label %else, label %true77 18 19true77: 20 br i1 1, label %then83, label %else 21 22then83: 23 br label %outer 24 25else: 26 br label %else106 27 28else106: 29 br i1 1, label %end, label %outer 30 31end: 32 ret i8 1 33} 34 35; CHECK-NOT: => 36; CHECK: [0] entry => <Function Return> 37; CHECK-NEXT: [1] outer => end 38; CHECK-NEXT: [2] outer => else 39 40; STAT: 3 region - The # of regions 41; STAT: 1 region - The # of simple regions 42 43; BBIT: entry, outer, body, else, else106, end, true77, then83, 44; BBIT: outer, body, else, else106, true77, then83, 45; BBIT: outer, body, true77, then83, 46 47; RNIT: entry, outer => end, end, 48; RNIT: outer => else, else, else106, 49; RNIT: outer, body, true77, then83, 50