49 lines · plain
1; REQUIRES: asserts2 3; RUN: opt < %s -passes='print<regions>' 2>&1 | FileCheck %s4; RUN: opt < %s -passes='print<regions>' -stats 2>&1 | FileCheck -check-prefix=STAT %s5; RUN: opt -passes='print<regions>' -print-region-style=bb < %s 2>&1 | FileCheck -check-prefix=BBIT %s6; RUN: opt -passes='print<regions>' -print-region-style=rn < %s 2>&1 | FileCheck -check-prefix=RNIT %s7 8define internal fastcc zeroext i8 @handle_compress() nounwind {9entry:10 br label %outer11 12outer:13 br label %body14 15body:16 br i1 1, label %else, label %true7717 18true77:19 br i1 1, label %then83, label %else20 21then83:22 br label %outer23 24else:25 br label %else10626 27else106:28 br i1 1, label %end, label %outer29 30end:31 ret i8 132}33 34; CHECK-NOT: =>35; CHECK: [0] entry => <Function Return>36; CHECK-NEXT: [1] outer => end37; CHECK-NEXT: [2] outer => else38 39; STAT: 3 region - The # of regions40; STAT: 1 region - The # of simple regions41 42; BBIT: entry, outer, body, else, else106, end, true77, then83,43; BBIT: outer, body, else, else106, true77, then83,44; BBIT: outer, body, true77, then83,45 46; RNIT: entry, outer => end, end,47; RNIT: outer => else, else, else106,48; RNIT: outer, body, true77, then83,49