[clang] Extend `retcon.once` coroutines lowering to optionally produce a normal result (PR #66333)

Chuanqi Xu via cfe-commits cfe-commits at lists.llvm.org
Thu Sep 14 18:49:29 PDT 2023


================
@@ -3046,7 +3046,8 @@ void coro::buildCoroutineFrame(
   // Collect the spills for arguments and other not-materializable values.
   for (Argument &A : F.args())
     for (User *U : A.users())
-      if (Checker.isDefinitionAcrossSuspend(A, U))
+      if (Checker.isDefinitionAcrossSuspend(A, U) ||
+          isa<CoroEndInst>(U))
----------------
ChuanqiXu9 wrote:

Thanks. The API breaking is relatively acceptable since generally we don't have requirement for backport compatibility. 

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


More information about the cfe-commits mailing list