Run DCE after a LoopFlatten test to reduce spurious output [nfc]
[llvm-project.git] / llvm / test / Other / loopnest-pass-ordering.ll
blob963653280d10c02c3af6cf9b5e31f486c45e3e27
1 ; RUN: opt -disable-output -debug-pass-manager \
2 ; RUN:     -passes='no-op-loopnest' %s 2>&1 \
3 ; RUN:     | FileCheck %s
5 ;            @f()
6 ;           /    \
7 ;       loop.0   loop.1
8 ;      /      \        \
9 ; loop.0.0  loop.0.1  loop.1.0
11 ; CHECK: Running pass: NoOpLoopNestPass on loop.0
12 ; CHECK: Running pass: NoOpLoopNestPass on loop.1
13 ; CHECK-NOT: Running pass: NoOpLoopNestPass on {{loop\..*\..*}}
15 define void @f() {
16 entry:
17   br label %loop.0
18 loop.0:
19   br i1 undef, label %loop.0.0, label %loop.1
20 loop.0.0:
21   br i1 undef, label %loop.0.0, label %loop.0.1
22 loop.0.1:
23   br i1 undef, label %loop.0.1, label %loop.0
24 loop.1:
25   br i1 undef, label %loop.1, label %loop.1.bb1
26 loop.1.bb1:
27   br i1 undef, label %loop.1, label %loop.1.bb2
28 loop.1.bb2:
29   br i1 undef, label %end, label %loop.1.0
30 loop.1.0:
31   br i1 undef, label %loop.1.0, label %loop.1
32 end:
33   ret void