[clang] [llvm] [Clang][Coroutines] Improve CoroElide with [[clang::coro_structured_concurrency]] attribute for C++ (PR #94693)

Yuxuan Chen via cfe-commits cfe-commits at lists.llvm.org
Sun Jun 16 21:37:12 PDT 2024


yuxuanchen1997 wrote:

> What I prefer is to add a middle end function attribute (must-coro-elide) and apply this attribute and (always inline attribute) to the calls:

Actually this might be problematic. The same coroutine called in different contexts (e.g. one coroutine that is also attributed, another is a coroutine that does not follow the semantics of the said attribute) can have different elidability. We need to attribute the actual emitted `CallInst`/`InvokeInst` from the `CallExpr` in FE. 

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


More information about the cfe-commits mailing list