[PATCH] D93376: [LangRef] Clarify the semantics of lifetime intrinsics

Johannes Doerfert via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Dec 17 11:53:45 PST 2020


jdoerfert added a comment.

What is the reason to restrict it to allocas? Just that we don't emit it right now? I don't see how that makes it conceptually better. I also second @lebedev.ri concerns. This change looks to me like it tries to fix a set of issues and at the same time do something else, that is restrict the functionality based on some use case. In any case, please split this into two patches. One for the clarifications without restricting it to alloca and without specifying that the entire object is affected, e.g., "memory that is referenced in a lifetime intrinsic is initially dead".
A second one can then be proposed for the alloca and "entire object" change, though I'm not sure that is helpful/needed at all.



================
Comment at: llvm/lib/IR/Verifier.cpp:5184
+           "bitcast to alloca.",
+           &Call);
+    break;
----------------
I'm doubtful of a strict syntactic requirement here. Using something from the  stripPointerCast family makes more sense to me.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D93376



More information about the llvm-commits mailing list