[Coroutines] Run coroutine passes by default
authorChuanqi Xu <yedeng.yd@linux.alibaba.com>
Thu, 15 Jul 2021 06:31:31 +0000 (14:31 +0800)
committerChuanqi Xu <yedeng.yd@linux.alibaba.com>
Thu, 15 Jul 2021 06:33:40 +0000 (14:33 +0800)
commit8a1727ba51d262365b0d9fe10fef7e50da7022cd
tree9f75fc8c9586e4797314273434e7a848796b8a2b
parent0f9e6451a836886f39137818c4f0cfd69ae31e62
[Coroutines] Run coroutine passes by default

This patch make coroutine passes run by default in LLVM pipeline. Now
the clang and opt could handle IR inputs containing coroutine intrinsics
without special options.
It should be fine. On the one hand, the coroutine passes seems to be stable
since there are already many projects using coroutine feature.
On the other hand, the coroutine passes should do nothing for IR who doesn't
contain coroutine intrinsic.

Test Plan: check-llvm

Reviewed by: lxfind, aeubanks

Differential Revision: https://reviews.llvm.org/D105877
19 files changed:
clang/lib/CodeGen/BackendUtil.cpp
clang/test/CodeGen/lto-newpm-pipeline.c
clang/test/CodeGenCoroutines/coro-always-inline.cpp
clang/test/CodeGenCoroutines/coro-symmetric-transfer-01.cpp
llvm/include/llvm-c/Transforms/PassBuilder.h
llvm/include/llvm/Passes/PassBuilder.h
llvm/lib/Passes/PassBuilder.cpp
llvm/lib/Passes/PassBuilderBindings.cpp
llvm/lib/Transforms/Utils/InlineFunction.cpp
llvm/test/Other/new-pm-O0-defaults.ll
llvm/test/Other/new-pm-defaults.ll
llvm/test/Other/new-pm-thinlto-defaults.ll
llvm/test/Other/new-pm-thinlto-postlink-pgo-defaults.ll
llvm/test/Other/new-pm-thinlto-postlink-samplepgo-defaults.ll
llvm/test/Other/new-pm-thinlto-prelink-pgo-defaults.ll
llvm/test/Other/new-pm-thinlto-prelink-samplepgo-defaults.ll
llvm/tools/opt/NewPMDriver.cpp
llvm/tools/opt/NewPMDriver.h
llvm/tools/opt/opt.cpp