[PATCH] D96922: [Coroutine] Check indirect uses of alloca when checking lifetime info

John McCall via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Feb 18 14:06:26 PST 2021


rjmccall added a comment.

In general, we cannot ever assume that we can see all uses of the alloca, whether direct or indirect; we can do our best when we can reason about particular uses, but we have to have some ability to recognize that the address may have escaped and therefore basically any point within the lifetime of the alloca might be a use.  It doesn't seem like this gets us to that point yet.



================
Comment at: llvm/lib/Transforms/Coroutines/CoroFrame.cpp:1010
+    // If lifetime information is available, we check it first since it's
+    // more preceise. We look at every pair of lifetime.start intrinsic and
+    // every basic block that uses the pointer to see if they cross suspension
----------------
precise


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D96922



More information about the llvm-commits mailing list