[llvm] [coro][CoroSplit] Use `llvm.lifetime.end` to compute putting objects on the frame vs the stack (PR #90265)

Chuanqi Xu via llvm-commits llvm-commits at lists.llvm.org
Sat Apr 27 22:11:24 PDT 2024


================
@@ -1614,6 +1621,24 @@ struct AllocaUseVisitor : PtrUseVisitor<AllocaUseVisitor> {
       // suspend point between lifetime markers. This should also cover the
       // case of a single lifetime.start intrinsic in a loop with suspend point.
       if (PI.isEscaped()) {
+        // If there is no explicit lifetime.end, then assume the address can
----------------
ChuanqiXu9 wrote:

Due to github review system, I can only put the comments here for the above code. According to our discussion, we can only check the whether the lifetime.{start, end} cross suspend point. We don't need to check users. Then it can be cheaper.

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


More information about the llvm-commits mailing list