[PATCH] D90783: llvm.coro.id.async lowering: Parameterize how-to restore the current's continutation context and restart the pipeline after splitting

Arnold Schwaighofer via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Nov 5 11:30:32 PST 2020


aschwaighofer updated this revision to Diff 303205.
aschwaighofer added a comment.

Change the async function pointer's context size position

  struct async_function_pointer {
    uint32_t relative_function_pointer_to_async_impl;
    uint32_t context_size;
  }

And make the position of the `async context` argument configurable. The
position is specified by the `llvm.coro.id.async` intrinsic.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D90783/new/

https://reviews.llvm.org/D90783

Files:
  llvm/docs/Coroutines.rst
  llvm/include/llvm/IR/Intrinsics.td
  llvm/lib/Transforms/Coroutines/CoroElide.cpp
  llvm/lib/Transforms/Coroutines/CoroInstr.h
  llvm/lib/Transforms/Coroutines/CoroInternal.h
  llvm/lib/Transforms/Coroutines/CoroSplit.cpp
  llvm/lib/Transforms/Coroutines/Coroutines.cpp
  llvm/test/Transforms/Coroutines/coro-async.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D90783.303205.patch
Type: text/x-patch
Size: 32851 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20201105/5bbd9343/attachment.bin>


More information about the llvm-commits mailing list