[PATCH] D127202: [InlineFunction] Handle early exit during getUnderlyingObjects due to MaxLookup

Nikita Popov via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Jun 23 07:45:32 PDT 2022


nikic added inline comments.


================
Comment at: llvm/lib/Transforms/Utils/InlineFunction.cpp:1115
+          // enough to get the real underlying object.
+          if (!isIdentifiedObject(V))
+            MayAliasForUnidentify = true;
----------------
This looks overly aggressive to me, and probably loses most of the point of the PointerMayBeCapturedBefore check. We should be classifying objects into isIdentifiedObject and isEscapeSource, where we can use the capture-based logic for isEscapeSource. (It's currently static in BasicAliasAnalysis, but can be exported.)


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D127202



More information about the llvm-commits mailing list