[PATCH] D116330: [Coroutines] Handle lifetime markers, bitcast and unused instruciton for symmetric transfer

JunMa via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Jan 11 23:25:01 PST 2022


junparser accepted this revision.
junparser added a comment.
This revision is now accepted and ready to land.

LGTM with some comments.



================
Comment at: llvm/lib/Transforms/Coroutines/CoroSplit.cpp:1251
         scanPHIsAndUpdateValueMap(I, Succ, ResolvedValues);
-        I = Succ->getFirstNonPHIOrDbgOrLifetime();
+        I = GetFirstValidInstructionInBB(Succ);
         continue;
----------------
GetFirstValidInstructionInBB seems can be removed. GetFirstValidInstruction(Succ->getFirstNonPHI()) is enough.


================
Comment at: llvm/lib/Transforms/Coroutines/CoroSplit.cpp:1303
       scanPHIsAndUpdateValueMap(I, BB, ResolvedValues);
-      I = BB->getFirstNonPHIOrDbgOrLifetime();
+      I = GetFirstValidInstructionInBB(BB);
       continue;
----------------
ditto.


================
Comment at: llvm/test/Transforms/Coroutines/coro-split-musttail6.ll:43
 
 ; FIXME: The fakeresume1 here should be marked as musttail.
 ; Verify that in the resume part resume call is marked with musttail.
----------------
FIXME should be removed?


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D116330/new/

https://reviews.llvm.org/D116330



More information about the llvm-commits mailing list