This revision was automatically updated to reflect the committed changes. Closed by commit rG31eb696fc4cd: [Coroutines] Remove CoroElide from O0 pipeline (authored by lxfind).
Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D105066/new/ https://reviews.llvm.org/D105066 Files: clang/test/CodeGenCoroutines/coro-newpm-pipeline.cpp llvm/lib/Passes/PassBuilder.cpp llvm/test/Transforms/Coroutines/smoketest.ll Index: llvm/test/Transforms/Coroutines/smoketest.ll =================================================================== --- llvm/test/Transforms/Coroutines/smoketest.ll +++ llvm/test/Transforms/Coroutines/smoketest.ll @@ -2,21 +2,21 @@ ; levels and -enable-coroutines adds coroutine passes to the pipeline. ; ; RUN: opt < %s -disable-output -passes='default<O0>' -enable-coroutines \ -; RUN: -debug-pass-manager 2>&1 | FileCheck %s +; RUN: -debug-pass-manager 2>&1 | FileCheck %s --check-prefixes=CHECK-ALL ; RUN: opt < %s -disable-output -passes='default<O1>' -enable-coroutines \ -; RUN: -debug-pass-manager 2>&1 | FileCheck %s +; RUN: -debug-pass-manager 2>&1 | FileCheck %s --check-prefixes=CHECK-ALL,CHECK-OPT ; RUN: opt < %s -disable-output -passes='default<O2>' -enable-coroutines \ -; RUN: -debug-pass-manager 2>&1 | FileCheck %s +; RUN: -debug-pass-manager 2>&1 | FileCheck %s --check-prefixes=CHECK-ALL,CHECK-OPT ; RUN: opt < %s -disable-output -passes='default<O3>' -enable-coroutines \ -; RUN: -debug-pass-manager 2>&1 | FileCheck %s +; RUN: -debug-pass-manager 2>&1 | FileCheck %s --check-prefixes=CHECK-ALL,CHECK-OPT ; RUN: opt < %s -disable-output -debug-pass-manager \ ; RUN: -passes='function(coro-early),cgscc(coro-split),function(coro-elide,coro-cleanup)' 2>&1 \ -; RUN: | FileCheck %s +; RUN: | FileCheck %s --check-prefixes=CHECK-ALL,CHECK-OPT -; CHECK: CoroEarlyPass -; CHECK: CoroSplitPass -; CHECK: CoroElidePass -; CHECK: CoroCleanupPass +; CHECK-ALL: CoroEarlyPass +; CHECK-ALL: CoroSplitPass +; CHECK-OPT: CoroElidePass +; CHECK-ALL: CoroCleanupPass define void @foo() { ret void Index: llvm/lib/Passes/PassBuilder.cpp =================================================================== --- llvm/lib/Passes/PassBuilder.cpp +++ llvm/lib/Passes/PassBuilder.cpp @@ -1986,7 +1986,6 @@ CGSCCPassManager CGPM; CGPM.addPass(CoroSplitPass()); - CGPM.addPass(createCGSCCToFunctionPassAdaptor(CoroElidePass())); MPM.addPass(createModuleToPostOrderCGSCCPassAdaptor(std::move(CGPM))); MPM.addPass(createModuleToFunctionPassAdaptor(CoroCleanupPass())); Index: clang/test/CodeGenCoroutines/coro-newpm-pipeline.cpp =================================================================== --- clang/test/CodeGenCoroutines/coro-newpm-pipeline.cpp +++ clang/test/CodeGenCoroutines/coro-newpm-pipeline.cpp @@ -3,23 +3,23 @@ // RUN: %clang_cc1 -triple x86_64-unknown-linux-gnu -emit-llvm-bc -o /dev/null \ // RUN: -fexperimental-new-pass-manager -fdebug-pass-manager -fcoroutines-ts \ -// RUN: -O0 %s 2>&1 | FileCheck %s +// RUN: -O0 %s 2>&1 | FileCheck %s --check-prefixes=CHECK-ALL // RUN: %clang_cc1 -triple x86_64-unknown-linux-gnu -emit-llvm-bc -o /dev/null \ // RUN: -fexperimental-new-pass-manager -fdebug-pass-manager -fcoroutines-ts \ -// RUN: -O1 %s 2>&1 | FileCheck %s +// RUN: -O1 %s 2>&1 | FileCheck %s --check-prefixes=CHECK-ALL,CHECK-OPT // -// CHECK: Running pass:{{.*}}CoroEarlyPass +// CHECK-ALL: Running pass:{{.*}}CoroEarlyPass // // The first coro-split pass enqueues a second run of the entire CGSCC pipeline. -// CHECK: Running pass: CoroSplitPass on (_Z3foov) -// CHECK: Running pass:{{.*}}CoroElidePass{{.*}} on {{.*}}_Z3foov{{.*}} +// CHECK-ALL: Running pass: CoroSplitPass on (_Z3foov) +// CHECK-OPT: Running pass:{{.*}}CoroElidePass{{.*}} on {{.*}}_Z3foov{{.*}} // // The second coro-split pass splits coroutine 'foo' into funclets // 'foo.resume', 'foo.destroy', and 'foo.cleanup'. -// CHECK: Running pass: CoroSplitPass on (_Z3foov) -// CHECK: Running pass:{{.*}}CoroElidePass{{.*}} on {{.*}}_Z3foov{{.*}} +// CHECK-ALL: Running pass: CoroSplitPass on (_Z3foov) +// CHECK-OPT: Running pass:{{.*}}CoroElidePass{{.*}} on {{.*}}_Z3foov{{.*}} // -// CHECK: Running pass:{{.*}}CoroCleanupPass +// CHECK-ALL: Running pass:{{.*}}CoroCleanupPass namespace std { namespace experimental {
Index: llvm/test/Transforms/Coroutines/smoketest.ll =================================================================== --- llvm/test/Transforms/Coroutines/smoketest.ll +++ llvm/test/Transforms/Coroutines/smoketest.ll @@ -2,21 +2,21 @@ ; levels and -enable-coroutines adds coroutine passes to the pipeline. ; ; RUN: opt < %s -disable-output -passes='default<O0>' -enable-coroutines \ -; RUN: -debug-pass-manager 2>&1 | FileCheck %s +; RUN: -debug-pass-manager 2>&1 | FileCheck %s --check-prefixes=CHECK-ALL ; RUN: opt < %s -disable-output -passes='default<O1>' -enable-coroutines \ -; RUN: -debug-pass-manager 2>&1 | FileCheck %s +; RUN: -debug-pass-manager 2>&1 | FileCheck %s --check-prefixes=CHECK-ALL,CHECK-OPT ; RUN: opt < %s -disable-output -passes='default<O2>' -enable-coroutines \ -; RUN: -debug-pass-manager 2>&1 | FileCheck %s +; RUN: -debug-pass-manager 2>&1 | FileCheck %s --check-prefixes=CHECK-ALL,CHECK-OPT ; RUN: opt < %s -disable-output -passes='default<O3>' -enable-coroutines \ -; RUN: -debug-pass-manager 2>&1 | FileCheck %s +; RUN: -debug-pass-manager 2>&1 | FileCheck %s --check-prefixes=CHECK-ALL,CHECK-OPT ; RUN: opt < %s -disable-output -debug-pass-manager \ ; RUN: -passes='function(coro-early),cgscc(coro-split),function(coro-elide,coro-cleanup)' 2>&1 \ -; RUN: | FileCheck %s +; RUN: | FileCheck %s --check-prefixes=CHECK-ALL,CHECK-OPT -; CHECK: CoroEarlyPass -; CHECK: CoroSplitPass -; CHECK: CoroElidePass -; CHECK: CoroCleanupPass +; CHECK-ALL: CoroEarlyPass +; CHECK-ALL: CoroSplitPass +; CHECK-OPT: CoroElidePass +; CHECK-ALL: CoroCleanupPass define void @foo() { ret void Index: llvm/lib/Passes/PassBuilder.cpp =================================================================== --- llvm/lib/Passes/PassBuilder.cpp +++ llvm/lib/Passes/PassBuilder.cpp @@ -1986,7 +1986,6 @@ CGSCCPassManager CGPM; CGPM.addPass(CoroSplitPass()); - CGPM.addPass(createCGSCCToFunctionPassAdaptor(CoroElidePass())); MPM.addPass(createModuleToPostOrderCGSCCPassAdaptor(std::move(CGPM))); MPM.addPass(createModuleToFunctionPassAdaptor(CoroCleanupPass())); Index: clang/test/CodeGenCoroutines/coro-newpm-pipeline.cpp =================================================================== --- clang/test/CodeGenCoroutines/coro-newpm-pipeline.cpp +++ clang/test/CodeGenCoroutines/coro-newpm-pipeline.cpp @@ -3,23 +3,23 @@ // RUN: %clang_cc1 -triple x86_64-unknown-linux-gnu -emit-llvm-bc -o /dev/null \ // RUN: -fexperimental-new-pass-manager -fdebug-pass-manager -fcoroutines-ts \ -// RUN: -O0 %s 2>&1 | FileCheck %s +// RUN: -O0 %s 2>&1 | FileCheck %s --check-prefixes=CHECK-ALL // RUN: %clang_cc1 -triple x86_64-unknown-linux-gnu -emit-llvm-bc -o /dev/null \ // RUN: -fexperimental-new-pass-manager -fdebug-pass-manager -fcoroutines-ts \ -// RUN: -O1 %s 2>&1 | FileCheck %s +// RUN: -O1 %s 2>&1 | FileCheck %s --check-prefixes=CHECK-ALL,CHECK-OPT // -// CHECK: Running pass:{{.*}}CoroEarlyPass +// CHECK-ALL: Running pass:{{.*}}CoroEarlyPass // // The first coro-split pass enqueues a second run of the entire CGSCC pipeline. -// CHECK: Running pass: CoroSplitPass on (_Z3foov) -// CHECK: Running pass:{{.*}}CoroElidePass{{.*}} on {{.*}}_Z3foov{{.*}} +// CHECK-ALL: Running pass: CoroSplitPass on (_Z3foov) +// CHECK-OPT: Running pass:{{.*}}CoroElidePass{{.*}} on {{.*}}_Z3foov{{.*}} // // The second coro-split pass splits coroutine 'foo' into funclets // 'foo.resume', 'foo.destroy', and 'foo.cleanup'. -// CHECK: Running pass: CoroSplitPass on (_Z3foov) -// CHECK: Running pass:{{.*}}CoroElidePass{{.*}} on {{.*}}_Z3foov{{.*}} +// CHECK-ALL: Running pass: CoroSplitPass on (_Z3foov) +// CHECK-OPT: Running pass:{{.*}}CoroElidePass{{.*}} on {{.*}}_Z3foov{{.*}} // -// CHECK: Running pass:{{.*}}CoroCleanupPass +// CHECK-ALL: Running pass:{{.*}}CoroCleanupPass namespace std { namespace experimental {
_______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits