[PATCH] D109907: [DSE] Use cached escape info for calls.

Nikita Popov via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Sep 17 15:26:13 PDT 2021


nikic requested changes to this revision.
nikic added inline comments.
This revision now requires changes to proceed.


================
Comment at: llvm/include/llvm/Analysis/AliasAnalysis.h:812
+  /// or reads the specified memory object \p Object. The caller must ensure the
+  /// object does not escape before the call.
+  ModRefInfo callCaptures(const CallBase *Call, const Value *Object) {
----------------
I'm really confused by this API. My understanding is that it computes the ModRefInfo of the call under the assumption that the object is not captured before *or at* the call. The implementation skips over non-nocapture arguments on the premise that these must have already been checked. It only checks whether there are arguments that may mod/ref the object without capturing. With that in mind, the API name seems to be the opposite of what it actually does.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D109907



More information about the llvm-commits mailing list