This is an archive of the discontinued LLVM Phabricator instance.

[coroutines] Replace all coro.frame builtins with an SSA value of coro.begin
ClosedPublic

Authored by GorNishanov on Apr 2 2017, 1:17 PM.

Details

Summary

SemaCoroutine forms expressions referring to the coroutine frame of the enclosing coroutine using coro.frame builtin.
During codegen, we emit llvm.coro.begin intrinsic that returns the address of the coroutine frame.
When coro.frame is emitted, we replace it with SSA value of coro.begin.

Diff Detail

Event Timeline

merged with top of the trunk. preparing to land

GorNishanov accepted this revision.May 22 2017, 8:49 PM

Committed: r303598 = cd8cc3ea48a887f846b3cbfc6dcb546a7b4de3af

This revision is now accepted and ready to land.May 22 2017, 8:49 PM
GorNishanov closed this revision.May 22 2017, 8:49 PM