NewSigma wrote: `coro_outside_frame` was originally introduced for coroutine GRO. Because GRO's lifetime markers cross suspension points, we cannot rely on them and must instead add metadata. I think it is better to leave the decision to CoroSplit when the lifetime markers are sufficient.
Both approaches have drawbacks: metadata may be [dropped](https://github.com/llvm/llvm-project/pull/194690#issuecomment-4344922589) after optimizations, and CoroSplit may [fail](https://github.com/llvm/llvm-project/issues/124612#issuecomment-2906779433) in extremely complex control-flow scenarios. I have kept both in this revision. https://github.com/llvm/llvm-project/pull/213580 _______________________________________________ cfe-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
