[PATCH] D39973: Fix CaptureTracking for llvm.invariant.group.barrier

Stanislav Mekhanoshin via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Nov 13 13:53:58 PST 2017


rampitec added inline comments.


================
Comment at: lib/Analysis/CaptureTracking.cpp:247
+      // Intrinsic function invariant_group_barrier does not capture pointer.
+      if (isa<IntrinsicInst>(I) && cast<IntrinsicInst>(I)->getIntrinsicID() ==
+                                       Intrinsic::invariant_group_barrier) {
----------------
yaxunl wrote:
> rampitec wrote:
> > Can we mark it as "NoCapture<0>" instead?
> line 243 also checks I->getType()->isVoidTy(), but this intrinsic returns a pointer. So even if we make it NoCapture, it still does not work.
Checking for a specific intrinsic seems error-prone. What if the pointer returned by the call is further used in the caller?


https://reviews.llvm.org/D39973





More information about the llvm-commits mailing list