[PATCH] D93568: Add a llvm.coro.end.async intrinsic

Arnold Schwaighofer via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Dec 18 15:47:50 PST 2020


aschwaighofer created this revision.
aschwaighofer added a reviewer: rjmccall.
Herald added subscribers: lxfind, modocache, hiraditya.
aschwaighofer requested review of this revision.
Herald added subscribers: llvm-commits, jdoerfert.
Herald added a project: LLVM.

The llvm.coro.end.async intrinsic allows to specify a function that is
to be called as the last action before returning. This function will be
inlined after coroutine splitting.

This function can contain a 'musttail' call to allow for guaranteed tail
calling as the last action.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D93568

Files:
  llvm/docs/Coroutines.rst
  llvm/include/llvm/IR/Intrinsics.td
  llvm/lib/Transforms/Coroutines/CoroEarly.cpp
  llvm/lib/Transforms/Coroutines/CoroFrame.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: D93568.312891.patch
Type: text/x-patch
Size: 21443 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20201218/d13fe6e3/attachment.bin>


More information about the llvm-commits mailing list