[PATCH] D23586: [Coroutines] Part 8: Coroutine Frame Building algorithm

Gor Nishanov via llvm-commits llvm-commits at lists.llvm.org
Tue Aug 16 16:05:15 PDT 2016


GorNishanov created this revision.
GorNishanov added a reviewer: majnemer.
GorNishanov added a subscriber: llvm-commits.
GorNishanov set the repository for this revision to rL LLVM.
Herald added a subscriber: mehdi_amini.

This patch adds coroutine frame building algorithm. Now, simple coroutines such as ex0.ll and ex1.ll (first examples from docs\Coroutines.rst can be compiled).

Documentation and overview is here: http://llvm.org/docs/Coroutines.html.

Upstreaming sequence (rough plan)
1.Add documentation. (https://reviews.llvm.org/D22603)
2.Add coroutine intrinsics. (https://reviews.llvm.org/D22659)
...

7. Split coroutine into subfunctions. (https://reviews.llvm.org/D23461)
8. Coroutine Frame Building algorithm  <= we are here
9. Add f.cleanup subfunction.
10+. The rest of the logic

Repository:
  rL LLVM

https://reviews.llvm.org/D23586

Files:
  lib/Transforms/Coroutines/CoroFrame.cpp
  test/Transforms/Coroutines/ex0.ll
  test/Transforms/Coroutines/ex1.ll
  test/Transforms/Coroutines/smoketest.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D23586.68276.patch
Type: text/x-patch
Size: 25934 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160816/64d02366/attachment-0001.bin>


More information about the llvm-commits mailing list