Add isArray flag
authorChris Lattner <sabre@nondot.org>
Sun, 20 Oct 2002 20:28:35 +0000 (20:28 +0000)
committerChris Lattner <sabre@nondot.org>
Sun, 20 Oct 2002 20:28:35 +0000 (20:28 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4230 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/Analysis/DSGraph.h
include/llvm/Analysis/DataStructure/DSGraph.h

index 1148dd65a1eb219b81eca2076fcc44cc4f7177bb..dc8f1adcf54cea7237f835c1490cf2648f4fe5d7 100644 (file)
@@ -119,13 +119,12 @@ class DSNode {
   ///
   std::vector<DSNodeHandle*> Referrers;
 
-  /// TypeEntries - As part of the merging process of this algorithm, nodes of
-  /// different types can be represented by this single DSNode.  This vector is
-  /// kept sorted.
-  ///
+  /// TypeRec - This structure is used to represent a single type that is held
+  /// in a DSNode.
   struct TypeRec {
-    const Type *Ty;
-    unsigned Offset;
+    const Type *Ty;                 // The type itself...
+    unsigned Offset;                // The offset in the node
+    bool isArray;                   // Have we accessed an array of elements?
 
     TypeRec() : Ty(0), Offset(0) {}
     TypeRec(const Type *T, unsigned O) : Ty(T), Offset(O) {}
@@ -140,6 +139,10 @@ class DSNode {
     bool operator!=(const TypeRec &TR) const { return !operator==(TR); }
   };
 
+  /// TypeEntries - As part of the merging process of this algorithm, nodes of
+  /// different types can be represented by this single DSNode.  This vector is
+  /// kept sorted.
+  ///
   std::vector<TypeRec> TypeEntries;
 
   /// Globals - The list of global values that are merged into this node.
index 1148dd65a1eb219b81eca2076fcc44cc4f7177bb..dc8f1adcf54cea7237f835c1490cf2648f4fe5d7 100644 (file)
@@ -119,13 +119,12 @@ class DSNode {
   ///
   std::vector<DSNodeHandle*> Referrers;
 
-  /// TypeEntries - As part of the merging process of this algorithm, nodes of
-  /// different types can be represented by this single DSNode.  This vector is
-  /// kept sorted.
-  ///
+  /// TypeRec - This structure is used to represent a single type that is held
+  /// in a DSNode.
   struct TypeRec {
-    const Type *Ty;
-    unsigned Offset;
+    const Type *Ty;                 // The type itself...
+    unsigned Offset;                // The offset in the node
+    bool isArray;                   // Have we accessed an array of elements?
 
     TypeRec() : Ty(0), Offset(0) {}
     TypeRec(const Type *T, unsigned O) : Ty(T), Offset(O) {}
@@ -140,6 +139,10 @@ class DSNode {
     bool operator!=(const TypeRec &TR) const { return !operator==(TR); }
   };
 
+  /// TypeEntries - As part of the merging process of this algorithm, nodes of
+  /// different types can be represented by this single DSNode.  This vector is
+  /// kept sorted.
+  ///
   std::vector<TypeRec> TypeEntries;
 
   /// Globals - The list of global values that are merged into this node.