Revert r354244 "[DAGCombiner] Eliminate dead stores to stack."
[llvm-complete.git] / test / Other / time-passes.ll
blob066ff267c473a0ab020ce7e8e93b9dd6b8c35308
1 ; RUN: opt < %s -disable-output -instcombine -instcombine -licm -time-passes 2>&1 | FileCheck %s --check-prefix=TIME --check-prefix=TIME-LEGACY
2 ; RUN: opt < %s -disable-output -instcombine -instcombine -licm -licm -time-passes 2>&1 | FileCheck %s --check-prefix=TIME --check-prefix=TIME-LEGACY --check-prefix=TIME-DOUBLE-LICM-LEGACY
3 ; RUN: opt < %s -disable-output -passes='instcombine,instcombine,loop(licm)' -time-passes 2>&1 | FileCheck %s --check-prefix=TIME --check-prefix=TIME-NEW
4 ; RUN: opt < %s -disable-output -passes='instcombine,loop(licm),instcombine,loop(licm)' -time-passes 2>&1 | FileCheck %s --check-prefix=TIME --check-prefix=TIME-NEW -check-prefix=TIME-DOUBLE-LICM-NEW
5 ; RUN: opt < %s -disable-output -passes='default<O2>' -time-passes 2>&1 | FileCheck %s --check-prefix=TIME
7 ; TIME: Pass execution timing report
8 ; TIME: Total Execution Time:
9 ; TIME: Name
10 ; TIME-LEGACY-DAG:   Combine redundant instructions{{$}}
11 ; TIME-LEGACY-DAG:   Combine redundant instructions #2
12 ; TIME-LEGACY-DAG:   Loop Invariant Code Motion{{$}}
13 ; TIME-DOUBLE-LICM-LEGACY-DAG: Loop Invariant Code Motion #2
14 ; TIME-LEGACY-DAG:   Scalar Evolution Analysis
15 ; TIME-LEGACY-DAG:   Loop-Closed SSA Form Pass
16 ; TIME-LEGACY-DAG:   LCSSA Verifier
17 ; TIME-LEGACY-DAG:   Canonicalize natural loops
18 ; TIME-LEGACY-DAG:   Natural Loop Information
19 ; TIME-LEGACY-DAG:   Dominator Tree Construction
20 ; TIME-LEGACY-DAG:   Module Verifier
21 ; TIME-LEGACY-DAG:   Target Library Information
22 ; TIME-NEW-DAG:      InstCombinePass #1
23 ; TIME-NEW-DAG:      InstCombinePass #2
24 ; TIME-NEW-DAG:      InstCombinePass #3
25 ; TIME-NEW-DAG:      InstCombinePass #4
26 ; TIME-NEW-DAG:      LICMPass #1
27 ; TIME-NEW-DAG:      LICMPass #2
28 ; TIME-NEW-DAG:      LICMPass #3
29 ; TIME-DOUBLE-LICM-NEW-DAG:      LICMPass #4
30 ; TIME-DOUBLE-LICM-NEW-DAG:      LICMPass #5
31 ; TIME-DOUBLE-LICM-NEW-DAG:      LICMPass #6
32 ; TIME-NEW-DAG:      LCSSAPass
33 ; TIME-NEW-DAG:      LoopSimplifyPass
34 ; TIME-NEW-DAG:      ScalarEvolutionAnalysis
35 ; TIME-NEW-DAG:      LoopAnalysis
36 ; TIME-NEW-DAG:      VerifierPass
37 ; TIME-NEW-DAG:      DominatorTreeAnalysis
38 ; TIME-NEW-DAG:      TargetLibraryAnalysis
39 ; TIME: Total{{$}}
41 define i32 @foo() {
42   %res = add i32 5, 4
43   br label %loop1
44 loop1:
45   br i1 false, label %loop1, label %end
46 end:
47   ret i32 %res
50 define void @bar_with_loops() {
51   br label %loop1
52 loop1:
53   br i1 false, label %loop1, label %loop2
54 loop2:
55   br i1 true, label %loop2, label %end
56 end:
57   ret void