diff options
Diffstat (limited to 'test/Other/pass-pipeline-parsing.ll')
-rw-r--r-- | test/Other/pass-pipeline-parsing.ll | 110 |
1 files changed, 110 insertions, 0 deletions
diff --git a/test/Other/pass-pipeline-parsing.ll b/test/Other/pass-pipeline-parsing.ll new file mode 100644 index 0000000..ba33610 --- /dev/null +++ b/test/Other/pass-pipeline-parsing.ll @@ -0,0 +1,110 @@ +; RUN: opt -disable-output -debug-pass-manager \ +; RUN: -passes=no-op-module,no-op-module %s 2>&1 \ +; RUN: | FileCheck %s --check-prefix=CHECK-TWO-NOOP-MP +; CHECK-TWO-NOOP-MP: Starting module pass manager +; CHECK-TWO-NOOP-MP: Running module pass: NoOpModulePass +; CHECK-TWO-NOOP-MP: Running module pass: NoOpModulePass +; CHECK-TWO-NOOP-MP: Finished module pass manager + +; RUN: opt -disable-output -debug-pass-manager \ +; RUN: -passes='module(no-op-module,no-op-module)' %s 2>&1 \ +; RUN: | FileCheck %s --check-prefix=CHECK-NESTED-TWO-NOOP-MP +; CHECK-NESTED-TWO-NOOP-MP: Starting module pass manager +; CHECK-NESTED-TWO-NOOP-MP: Running module pass: ModulePassManager +; CHECK-NESTED-TWO-NOOP-MP: Starting module pass manager +; CHECK-NESTED-TWO-NOOP-MP: Running module pass: NoOpModulePass +; CHECK-NESTED-TWO-NOOP-MP: Running module pass: NoOpModulePass +; CHECK-NESTED-TWO-NOOP-MP: Finished module pass manager +; CHECK-NESTED-TWO-NOOP-MP: Finished module pass manager + +; RUN: opt -disable-output -debug-pass-manager \ +; RUN: -passes=no-op-function,no-op-function %s 2>&1 \ +; RUN: | FileCheck %s --check-prefix=CHECK-TWO-NOOP-FP +; CHECK-TWO-NOOP-FP: Starting module pass manager +; CHECK-TWO-NOOP-FP: Running module pass: ModuleToFunctionPassAdaptor +; CHECK-TWO-NOOP-FP: Starting function pass manager +; CHECK-TWO-NOOP-FP: Running function pass: NoOpFunctionPass +; CHECK-TWO-NOOP-FP: Running function pass: NoOpFunctionPass +; CHECK-TWO-NOOP-FP: Finished function pass manager +; CHECK-TWO-NOOP-FP: Finished module pass manager + +; RUN: opt -disable-output -debug-pass-manager \ +; RUN: -passes='function(no-op-function,no-op-function)' %s 2>&1 \ +; RUN: | FileCheck %s --check-prefix=CHECK-NESTED-TWO-NOOP-FP +; CHECK-NESTED-TWO-NOOP-FP: Starting module pass manager +; CHECK-NESTED-TWO-NOOP-FP: Running module pass: ModuleToFunctionPassAdaptor +; CHECK-NESTED-TWO-NOOP-FP: Starting function pass manager +; CHECK-NESTED-TWO-NOOP-FP: Running function pass: FunctionPassManager +; CHECK-NESTED-TWO-NOOP-FP: Starting function pass manager +; CHECK-NESTED-TWO-NOOP-FP: Running function pass: NoOpFunctionPass +; CHECK-NESTED-TWO-NOOP-FP: Running function pass: NoOpFunctionPass +; CHECK-NESTED-TWO-NOOP-FP: Finished function pass manager +; CHECK-NESTED-TWO-NOOP-FP: Finished function pass manager +; CHECK-NESTED-TWO-NOOP-FP: Finished module pass manager + +; RUN: opt -disable-output -debug-pass-manager \ +; RUN: -passes='no-op-module,function(no-op-function,no-op-function),no-op-module' %s 2>&1 \ +; RUN: | FileCheck %s --check-prefix=CHECK-MIXED-FP-AND-MP +; CHECK-MIXED-FP-AND-MP: Starting module pass manager +; CHECK-MIXED-FP-AND-MP: Running module pass: NoOpModulePass +; CHECK-MIXED-FP-AND-MP: Running module pass: ModuleToFunctionPassAdaptor +; CHECK-MIXED-FP-AND-MP: Starting function pass manager +; CHECK-MIXED-FP-AND-MP: Running function pass: NoOpFunctionPass +; CHECK-MIXED-FP-AND-MP: Running function pass: NoOpFunctionPass +; CHECK-MIXED-FP-AND-MP: Finished function pass manager +; CHECK-MIXED-FP-AND-MP: Running module pass: NoOpModulePass +; CHECK-MIXED-FP-AND-MP: Finished module pass manager + +; RUN: not opt -disable-output -debug-pass-manager \ +; RUN: -passes='no-op-module)' %s 2>&1 \ +; RUN: | FileCheck %s --check-prefix=CHECK-UNBALANCED1 +; CHECK-UNBALANCED1: unable to parse pass pipeline description + +; RUN: not opt -disable-output -debug-pass-manager \ +; RUN: -passes='module(no-op-module))' %s 2>&1 \ +; RUN: | FileCheck %s --check-prefix=CHECK-UNBALANCED2 +; CHECK-UNBALANCED2: unable to parse pass pipeline description + +; RUN: not opt -disable-output -debug-pass-manager \ +; RUN: -passes='module(no-op-module' %s 2>&1 \ +; RUN: | FileCheck %s --check-prefix=CHECK-UNBALANCED3 +; CHECK-UNBALANCED3: unable to parse pass pipeline description + +; RUN: not opt -disable-output -debug-pass-manager \ +; RUN: -passes='no-op-function)' %s 2>&1 \ +; RUN: | FileCheck %s --check-prefix=CHECK-UNBALANCED4 +; CHECK-UNBALANCED4: unable to parse pass pipeline description + +; RUN: not opt -disable-output -debug-pass-manager \ +; RUN: -passes='function(no-op-function))' %s 2>&1 \ +; RUN: | FileCheck %s --check-prefix=CHECK-UNBALANCED5 +; CHECK-UNBALANCED5: unable to parse pass pipeline description + +; RUN: not opt -disable-output -debug-pass-manager \ +; RUN: -passes='function(function(no-op-function)))' %s 2>&1 \ +; RUN: | FileCheck %s --check-prefix=CHECK-UNBALANCED6 +; CHECK-UNBALANCED6: unable to parse pass pipeline description + +; RUN: not opt -disable-output -debug-pass-manager \ +; RUN: -passes='function(no-op-function' %s 2>&1 \ +; RUN: | FileCheck %s --check-prefix=CHECK-UNBALANCED7 +; CHECK-UNBALANCED7: unable to parse pass pipeline description + +; RUN: not opt -disable-output -debug-pass-manager \ +; RUN: -passes='function(function(no-op-function)' %s 2>&1 \ +; RUN: | FileCheck %s --check-prefix=CHECK-UNBALANCED8 +; CHECK-UNBALANCED8: unable to parse pass pipeline description + +; RUN: not opt -disable-output -debug-pass-manager \ +; RUN: -passes='no-op-module,)' %s 2>&1 \ +; RUN: | FileCheck %s --check-prefix=CHECK-UNBALANCED9 +; CHECK-UNBALANCED9: unable to parse pass pipeline description + +; RUN: not opt -disable-output -debug-pass-manager \ +; RUN: -passes='no-op-function,)' %s 2>&1 \ +; RUN: | FileCheck %s --check-prefix=CHECK-UNBALANCED10 +; CHECK-UNBALANCED10: unable to parse pass pipeline description + +define void @f() { + ret void +} |