1 // Test that we print pass structure with new and legacy PM.
2 // RUN: %clang -fexperimental-new-pass-manager -fdebug-pass-structure -fintegrated-as -O3 -S -emit-llvm %s -o /dev/null 2>&1 | FileCheck %s --check-prefix=NEWPM --strict-whitespace
3 // RUN: %clang -flegacy-pass-manager -fdebug-pass-structure -O0 -S -emit-llvm %s -o /dev/null 2>&1 | FileCheck %s --check-prefix=LEGACYPM
4 // REQUIRES: asserts
5 
6 // should have proper indentation, should not print any analysis information
7 // NEWPM-NOT: Running analysis
8 // NEWPM: {{^}}Running{{.*}}GlobalOptPass
9 // NEWPM: {{^}}  Running{{.*}}RequireAnalysisPass{{.*}}GlobalsAA
10 // NEWPM: GlobalOptPass
11 // NEWPM-NOT: Invalidating analysis
12 
13 // LEGACYPM: Pass Arguments:
14 
15 void f() {}
16