RFC: landing the Swift coroutines patches

John McCall via llvm-commits llvm-commits at lists.llvm.org
Mon Aug 12 23:49:58 PDT 2019


I'm finally got a few free days to upstream the Swift coroutine patches. 
  I believe Swift is the primary production client of LLVM's coroutine 
code (although I do know there are some brave souls using Clang's 
experimental coroutines support), so in a sense I'm now the code owner 
of this, but I'd still to run through the steps of the plan to give 
people a chance to comment:

1. Translate the patches currently in Swift's LLVM branch back to master 
and commit them as-is.

2. Generalize LLVM's coroutines documentation to talk about ABI 
lowerings as a core concept, along the basic lines I covered in my LLVM 
'18 talk.

3. Add a new attribute to mark unlowered coroutine functions, update 
some LLVM passes to honor that by not propagating summary information 
out of the function, and update frontends to add that attribute to 
coroutines instead of requiring there to be a pass which adds it 
retroactively.

Also, if anyone specifically would like to be CC'ed on these patches as 
they're upstreamed, please let me know.

John.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190813/b4da13d8/attachment.html>


More information about the llvm-commits mailing list