[PATCH] D105877: [Coroutines] Run coroutine passes by default
Chuanqi Xu via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Wed Jul 14 19:24:51 PDT 2021
ChuanqiXu added inline comments.
================
Comment at: llvm/lib/Transforms/Utils/InlineFunction.cpp:2194
+ // caused by multithreaded coroutines
+ if ((InsertLifetime || Caller->isPresplitCoroutine()) &&
+ !IFI.StaticAllocas.empty()) {
----------------
aeubanks wrote:
> ChuanqiXu wrote:
> > lxfind wrote:
> > > What's the context of this change? Doesn't seem to be related to this diff?
> > Related contexts are at line 1934 in PassBuilder.cpp. The pass builder would set InsertLifetimeIntrinsics to be true for AlwaysInliner even at O0 as the comments tells.
> >
> > This change would make sure the AlwaysInliner to insert lifetimes at O0. It wouldn't affect inliner since inliner wouldn't run at O0. And normal inliner would insert lifetime all the time.
> can you add this to the description? or even better, split it out into a different patch?
I added this to the comment. It is a little odd for me to split it into another patch. Since it means that we need to revert a change first (Insert lifetime for coroutine for always inliner at O0) and recommit it later. But from my point of view, it doesn't need to revert it first.
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D105877/new/
https://reviews.llvm.org/D105877
More information about the llvm-commits
mailing list