[llvm] [coroutines][CoroSplit] Store allocas on the frame if there is no explicit lifetime.end (PR #88806)

Chuanqi Xu via llvm-commits llvm-commits at lists.llvm.org
Wed Apr 17 23:23:31 PDT 2024


ChuanqiXu9 wrote:

> Is someone looking at doing the deeper fix to the lifetime analysis as suggested above, or should we do a stop gap fix in the meantime?

I have less time developing into coroutines in detail recently. So if there is no one had the chance to fix this properly in the near future, I think we can accept this as a partial workaround.

> I'm not sure if the current patch is sufficient: it checks whether there is a lifetime.end intrinsic, but what if there is one on one execution path, but not another? 

Yeah, this is the reason why I think the current patch is a partial fix.

> Maybe we should always set ShouldUseLifetimeStartInfo to avoid this miscompile for now?

I am not sure what you mean. `ShouldUseLifetimeStartInfo` is always set for C++.

https://github.com/llvm/llvm-project/pull/88806


More information about the llvm-commits mailing list