[PATCH] D9398: llvm.noalias - GetUnderlyingObjects to optionally collect noalias calls

David Majnemer via llvm-commits llvm-commits at lists.llvm.org
Sun Jul 10 00:31:22 PDT 2016

majnemer accepted this revision.
majnemer added a reviewer: majnemer.
majnemer added a comment.
This revision is now accepted and ready to land.

LGTM with nits

Comment at: include/llvm/Analysis/ValueTracking.h:225-226
@@ -223,6 +224,4 @@
   Value *GetUnderlyingObject(Value *V, const DataLayout &DL,
-                             unsigned MaxLookup = 6);
-  static inline const Value *GetUnderlyingObject(const Value *V,
-                                                 const DataLayout &DL,
-                                                 unsigned MaxLookup = 6) {
-    return GetUnderlyingObject(const_cast<Value *>(V), DL, MaxLookup);
+                             unsigned MaxLookup = 6,
+                             SmallVectorImpl<Instruction *> *NoAlias = nullptr);
+  static inline
I find it more likely that a SmallVector will get passed in instead of a custom `MaxLookup`.  Perhaps they should be reordered to one another?


More information about the llvm-commits mailing list