Add comments.
authorDan Gohman <gohman@apple.com>
Mon, 8 Nov 2010 15:34:42 +0000 (15:34 +0000)
committerDan Gohman <gohman@apple.com>
Mon, 8 Nov 2010 15:34:42 +0000 (15:34 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118408 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/Analysis/AliasAnalysis.h

index 2bd3f4c6b487103980fe9824b0bf5a13b44055fc..1469b4899042b88ba162db1e561dec0c3a5f3a3b 100644 (file)
@@ -86,10 +86,14 @@ public:
   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 @@ public:
   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.