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 %body.i, label %if.end 18 19body.i: 20 br i1 1, label %end, label %if.end 21 22if.end: 23 br label %if.then64 24 25if.then64: 26 br label %outer 27 28end: 29 ret i8 1 30} 31; CHECK-NOT: => 32; CHECK: [0] entry => <Function Return> 33; CHECK-NEXT: [1] outer => end 34; STAT: 2 region - The # of regions 35; STAT: 1 region - The # of simple regions 36 37; BBIT: entry, outer, body, body.i, end, if.end, if.then64, 38; BBIT: outer, body, body.i, if.end, if.then64, 39 40; RNIT: entry, outer => end, end, 41; RNIT: outer, body, body.i, if.end, if.then64, 42