1; REQUIRES: asserts 2; RUN: opt -regions -analyze -enable-new-pm=0 < %s | FileCheck %s 3; RUN: opt -regions -stats -disable-output < %s 2>&1 | FileCheck -check-prefix=STAT %s 4; RUN: opt -regions -print-region-style=bb -analyze -enable-new-pm=0 < %s 2>&1 | FileCheck -check-prefix=BBIT %s 5; RUN: opt -regions -print-region-style=rn -analyze -enable-new-pm=0 < %s 2>&1 | FileCheck -check-prefix=RNIT %s 6 7; RUN: opt < %s -passes='print<regions>' 2>&1 | FileCheck %s 8; RUN: opt < %s -passes='print<regions>' -stats 2>&1 | FileCheck -check-prefix=STAT %s 9; RUN: opt -passes='print<regions>' -print-region-style=bb < %s 2>&1 | FileCheck -check-prefix=BBIT %s 10; RUN: opt -passes='print<regions>' -print-region-style=rn < %s 2>&1 | FileCheck -check-prefix=RNIT %s 11 12define internal fastcc zeroext i8 @handle_compress() nounwind { 13entry: 14 br label %outer 15 16outer: 17 br label %body 18 19body: 20 br i1 1, label %else, label %true77 21 22true77: 23 br i1 1, label %then83, label %else 24 25then83: 26 br label %outer 27 28else: 29 br label %else106 30 31else106: 32 br i1 1, label %end, label %outer 33 34end: 35 ret i8 1 36} 37 38; CHECK-NOT: => 39; CHECK: [0] entry => <Function Return> 40; CHECK-NEXT: [1] outer => end 41; CHECK-NEXT: [2] outer => else 42 43; STAT: 3 region - The # of regions 44; STAT: 1 region - The # of simple regions 45 46; BBIT: entry, outer, body, else, else106, end, true77, then83, 47; BBIT: outer, body, else, else106, true77, then83, 48; BBIT: outer, body, true77, then83, 49 50; RNIT: entry, outer => end, end, 51; RNIT: outer => else, else, else106, 52; RNIT: outer, body, true77, then83, 53