[llvm-commits] CVS: llvm/include/llvm/Analysis/DSNode.h

Chris Lattner lattner at cs.uiuc.edu
Mon Nov 4 18:00:02 PST 2002


Changes in directory llvm/include/llvm/Analysis:

DSNode.h updated: 1.6 -> 1.7

---
Log message:

Add a bunch of assertions


---
Diffs of the changes:

Index: llvm/include/llvm/Analysis/DSNode.h
diff -u llvm/include/llvm/Analysis/DSNode.h:1.6 llvm/include/llvm/Analysis/DSNode.h:1.7
--- llvm/include/llvm/Analysis/DSNode.h:1.6	Sun Nov  3 15:23:56 2002
+++ llvm/include/llvm/Analysis/DSNode.h	Mon Nov  4 17:59:41 2002
@@ -126,13 +126,19 @@
   }
 
   DSNodeHandle *getLink(unsigned i) {
-    if (hasLink(i))
+    if (hasLink(i)) {
+      assert((unsigned)MergeMap[i] < Links.size() &&
+             "MergeMap references Link that doesn't exist!");
       return &Links[MergeMap[i]];
+    }
     return 0;
   }
   const DSNodeHandle *getLink(unsigned i) const {
-    if (hasLink(i))
+    if (hasLink(i)) {
+      assert((unsigned)MergeMap[i] < Links.size() &&
+             "MergeMap references Link that doesn't exist!");
       return &Links[MergeMap[i]];
+    }
     return 0;
   }
 
@@ -226,6 +232,8 @@
   ///
   void rewriteMergeMap(signed char From, signed char To) {
     assert(From != To && "Cannot change something into itself!");
+    assert(To < (int)Links.size() &&
+           "Changing MergeMap entry to an illegal entry!");
     for (unsigned i = 0, e = MergeMap.size(); i != e; ++i)
       if (MergeMap[i] == From)
         MergeMap[i] = To;





More information about the llvm-commits mailing list