[PATCH] D87817: [LICM][Coroutine] Don't sink stores to coroutine suspend point.
JunMa via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Sep 18 01:15:17 PDT 2020
junparser added a comment.
In D87817#2280618 <https://reviews.llvm.org/D87817#2280618>, @efriedma wrote:
> If there are transformations that are specifically illegal with corouties, I'd like to see a section in https://llvm.org/docs/Coroutines.html describing what transforms are and are not legal. Just saying that the current version of the coroutine lowering code can't handle it isn't sufficient.
Thanks for the suggestion, I'll add it later.
Let's say for this case, we do not wanna move any instructions (maybe this is too restrictive, using !mayReadOrWriteMemory && !mayHaveSideEffects) to path between coroutine suspend point (coro.suspend intrinsic) and return to caller (coro.end intrinsic).
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D87817/new/
https://reviews.llvm.org/D87817
More information about the llvm-commits
mailing list