diff options
Diffstat (limited to 'test/Other/loop-pass-ordering.ll')
-rw-r--r-- | test/Other/loop-pass-ordering.ll | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/test/Other/loop-pass-ordering.ll b/test/Other/loop-pass-ordering.ll new file mode 100644 index 0000000000000..ceda0d3869dda --- /dev/null +++ b/test/Other/loop-pass-ordering.ll @@ -0,0 +1,35 @@ +; RUN: opt -disable-output -debug-pass-manager \ +; RUN: -passes='no-op-loop' %s 2>&1 \ +; RUN: | FileCheck %s + +; @f() +; / \ +; loop.0 loop.1 +; / \ \ +; loop.0.0 loop.0.1 loop.1.0 +; +; CHECK: Running pass: NoOpLoopPass on loop.1.0 +; CHECK: Running pass: NoOpLoopPass on loop.1 +; CHECK: Running pass: NoOpLoopPass on loop.0.0 +; CHECK: Running pass: NoOpLoopPass on loop.0.1 +; CHECK: Running pass: NoOpLoopPass on loop.0 +define void @f() { +entry: + br label %loop.0 +loop.0: + br i1 undef, label %loop.0.0, label %loop.1 +loop.0.0: + br i1 undef, label %loop.0.0, label %loop.0.1 +loop.0.1: + br i1 undef, label %loop.0.1, label %loop.0 +loop.1: + br i1 undef, label %loop.1, label %loop.1.bb1 +loop.1.bb1: + br i1 undef, label %loop.1, label %loop.1.bb2 +loop.1.bb2: + br i1 undef, label %end, label %loop.1.0 +loop.1.0: + br i1 undef, label %loop.1.0, label %loop.1 +end: + ret void +} |