Home | History | Annotate | Download | only in SCCP
      1 ; RUN: opt < %s -debug-pass=Structure -globals-aa -loop-vectorize -sccp -loop-vectorize -globals-aa 2>&1 -S | FileCheck %s
      2 ; RUN: opt < %s -debug-pass-manager -passes='loop-vectorize,sccp,loop-vectorize' 2>&1 -S | FileCheck --check-prefix=NEW-PM %s
      3 
      4 ; Check CFG-only analysis are preserved by SCCP by running it between 2
      5 ; loop-vectorize runs.
      6 
      7 ; CHECK: Globals Alias Analysis
      8 ; CHECK: Dominator Tree Construction
      9 ; CHECK: Natural Loop Information
     10 ; CHECK: Sparse Conditional Constant Propagation
     11 ; CHECK-NOT: Dominator Tree Construction
     12 ; CHECK-NOT: Natural Loop Information
     13 ; CHECK-NOT: Globals Alias Analysis
     14 ; CHECK: Loop Vectorization
     15 
     16 ; NEW-PM-DAG: Running analysis: LoopAnalysis on test
     17 ; NEW-PM-DAG: Running analysis: DominatorTreeAnalysis on test
     18 ; NEW-PM-DAG: Running analysis: AssumptionAnalysis on test
     19 ; NEW-PM-DAG: Running analysis: TargetLibraryAnalysis on test
     20 ; NEW-PM-DAG: Running analysis: TargetIRAnalysis on test
     21 ; NEW-PM: Running pass: SCCPPass on test
     22 ; NEW-PM-NOT: Running analysis: LoopAnalysis on test
     23 ; NEW-PM-NOT: Running analysis: DominatorTreeAnalysis on test
     24 ; NEW-PM-NOT: Running analysis: AssumptionAnalysis on test
     25 ; NEW-PM-NOT: Running analysis: TargetLibraryAnalysis on test
     26 ; NEW-PM-NOT: Running analysis: TargetIRAnalysis on test
     27 ; NEW-PM: Finished llvm::Function pass manager run.
     28 
     29 
     30 define i32 @test() {
     31 entry:
     32   %res = add i32 1, 10
     33   ret i32 %res
     34 }
     35