Add a forgotten initializer for CheckedFirstInterference.
authorJakob Stoklund Olesen <stoklund@2pi.dk>
Thu, 9 Dec 2010 21:20:44 +0000 (21:20 +0000)
committerJakob Stoklund Olesen <stoklund@2pi.dk>
Thu, 9 Dec 2010 21:20:44 +0000 (21:20 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121410 91177308-0d34-0410-b5e6-96231b3b80d8

lib/CodeGen/LiveIntervalUnion.cpp
lib/CodeGen/LiveIntervalUnion.h

index d5c7bf08eb657edb607aa85ea62f5bdc01eab489..59d48a4b64da320b4c86cc784a850d8e5134ce7f 100644 (file)
@@ -168,6 +168,8 @@ LiveIntervalUnion::Query::firstInterference() {
       IR.VirtRegI = VirtReg->end();
   }
   findIntersection(FirstInterference);
+  assert((IR.VirtRegI == VirtReg->end() || IR.LiveUnionI.valid())
+         && "Uninitialized iterator");
   return FirstInterference;
 }
 
index 54761c715f7eb90363c895376fb1b49d617a0f97..5bf86d8c02531db2d025e04c3c64bd92c0fbe933 100644 (file)
@@ -145,8 +145,8 @@ public:
     Query(): LiveUnion(), VirtReg() {}
 
     Query(LiveInterval *VReg, LiveIntervalUnion *LIU):
-      LiveUnion(LIU), VirtReg(VReg), SeenAllInterferences(false),
-      SeenUnspillableVReg(false)
+      LiveUnion(LIU), VirtReg(VReg), CheckedFirstInterference(false),
+      SeenAllInterferences(false), SeenUnspillableVReg(false)
     {}
 
     void clear() {
@@ -159,6 +159,7 @@ public:
     }
 
     void init(LiveInterval *VReg, LiveIntervalUnion *LIU) {
+      assert(VReg && LIU && "Invalid arguments");
       if (VirtReg == VReg && LiveUnion == LIU) {
         // Retain cached results, e.g. firstInterference.
         return;