1; RUN: opt < %s -debug-pass=Structure -globals-aa -loop-vectorize -sccp -loop-vectorize -globals-aa -enable-new-pm=0 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: Post-Dominator Tree Construction 12; CHECK-NOT: Dominator Tree Construction 13; CHECK-NOT: Natural Loop Information 14; CHECK-NOT: Globals Alias Analysis 15; CHECK: Loop Vectorization 16 17; NEW-PM-DAG: Running analysis: LoopAnalysis on test 18; NEW-PM-DAG: Running analysis: DominatorTreeAnalysis on test 19; NEW-PM-DAG: Running analysis: AssumptionAnalysis on test 20; NEW-PM-DAG: Running analysis: TargetLibraryAnalysis on test 21; NEW-PM-DAG: Running analysis: TargetIRAnalysis on test 22; NEW-PM: Running pass: SCCPPass on test 23; NEW-PM-NOT: Running analysis: LoopAnalysis on test 24; NEW-PM-NOT: Running analysis: DominatorTreeAnalysis on test 25; NEW-PM-NOT: Running analysis: AssumptionAnalysis on test 26; NEW-PM-NOT: Running analysis: TargetLibraryAnalysis on test 27; NEW-PM-NOT: Running analysis: TargetIRAnalysis on test 28; NEW-PM: Finished llvm::Function pass manager run. 29 30 31define i32 @test() { 32entry: 33 %res = add i32 1, 10 34 ret i32 %res 35} 36