[llvm-commits] [llvm] r118408 - /llvm/trunk/include/llvm/Analysis/AliasAnalysis.h

Dan Gohman gohman at apple.com
Mon Nov 8 07:34:42 PST 2010


Author: djg
Date: Mon Nov  8 09:34:42 2010
New Revision: 118408

URL: http://llvm.org/viewvc/llvm-project?rev=118408&view=rev
Log:
Add comments.

Modified:
    llvm/trunk/include/llvm/Analysis/AliasAnalysis.h

Modified: llvm/trunk/include/llvm/Analysis/AliasAnalysis.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/Analysis/AliasAnalysis.h?rev=118408&r1=118407&r2=118408&view=diff
==============================================================================
--- llvm/trunk/include/llvm/Analysis/AliasAnalysis.h (original)
+++ llvm/trunk/include/llvm/Analysis/AliasAnalysis.h Mon Nov  8 09:34:42 2010
@@ -86,10 +86,14 @@
   struct Location {
     /// Ptr - The address of the start of the location.
     const Value *Ptr;
-    /// Size - The size of the location.
+    /// Size - The maximum size of the location, or UnknownSize if the size is
+    /// not known.  Note that an unknown size does not mean the pointer aliases
+    /// the entire virtual address space, because there are restrictions on
+    /// stepping out of one object and into another.
+    /// See http://llvm.org/docs/LangRef.html#pointeraliasing
     uint64_t Size;
     /// TBAATag - The metadata node which describes the TBAA type of
-    /// the location, or null if there is no (unique) tag.
+    /// the location, or null if there is no known unique tag.
     const MDNode *TBAATag;
 
     explicit Location(const Value *P = 0,
@@ -122,9 +126,9 @@
   enum AliasResult { NoAlias = 0, MayAlias = 1, MustAlias = 2 };
 
   /// alias - The main low level interface to the alias analysis implementation.
-  /// Returns a Result indicating whether the two pointers are aliased to each
-  /// other.  This is the interface that must be implemented by specific alias
-  /// analysis implementations.
+  /// Returns an AliasResult indicating whether the two pointers are aliased to
+  /// each other.  This is the interface that must be implemented by specific
+  /// alias analysis implementations.
   virtual AliasResult alias(const Location &LocA, const Location &LocB);
 
   /// alias - A convenience wrapper.





More information about the llvm-commits mailing list