[llvm-branch-commits] [llvm] [LLVM][Coroutines] Create `.noalloc` variant of switch ABI coroutine ramp functions during CoroSplit (PR #99283)
Chuanqi Xu via llvm-branch-commits
llvm-branch-commits at lists.llvm.org
Wed Aug 28 01:47:57 PDT 2024
================
@@ -2049,6 +2055,21 @@ the coroutine must reach the final suspend point when it get destroyed.
This attribute only works for switched-resume coroutines now.
+coro_elide_safe
+---------------
+
+When a Call or Invoke instruction is marked with `coro_elide_safe`,
+CoroAnnotationElidePass performs heap elision when possible. Note that for
+recursive or mutually recursive functions this elision is usually not possible.
+
+coro_gen_noalloc_ramp
+---------------------
+
+This attribute hints CoroSplitPass to generate a `f.noalloc` ramp function for
----------------
ChuanqiXu9 wrote:
It will be better to explain and describe the `f.noalloc` ramp function in this document. And it will be better to have some example codes for it and compare it with the normal ramp functions.
https://github.com/llvm/llvm-project/pull/99283
More information about the llvm-branch-commits
mailing list