[PATCH] D94834: [Coroutine] Do not CoroElide if there are musttail calls
Xun Li via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Jan 18 09:03:22 PST 2021
lxfind added a comment.
In D94834#2504128 <https://reviews.llvm.org/D94834#2504128>, @ChuanqiXu wrote:
> I am a little unclear about this problem. From my point of view, it seems like that there is a Coroutine C elided in a normal function F. Then in the Coroutine Body of C, it would try to switch to itself by symmetric transfer. However, the Coroutine frame of C now is a stack variable. Then the tail call would pass the address of the stack variable whose lifetime has ended, so here is the corruption. Did I understand the situation?
Yes I believe that's an accurate description
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D94834/new/
https://reviews.llvm.org/D94834
More information about the llvm-commits
mailing list