]> granicus.if.org Git - llvm/commitdiff
[NewGVN] Strengthen a couple of assertions.
authorDavide Italiano <davide@freebsd.org>
Wed, 11 Jan 2017 21:49:00 +0000 (21:49 +0000)
committerDavide Italiano <davide@freebsd.org>
Wed, 11 Jan 2017 21:49:00 +0000 (21:49 +0000)
StoreCount >= 0 on `unsigned` is always true, otherwise.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@291709 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Transforms/Scalar/NewGVN.cpp

index 1c1e04a69925deebc3e2fc97050a72581b5e9fed..04fd5d0b0bd2e1f6e8f9f83eb71087c267ebb581 100644 (file)
@@ -1063,10 +1063,10 @@ void NewGVN::moveValueToNewCongruenceClass(Value *V, CongruenceClass *OldClass,
   OldClass->Members.erase(V);
   NewClass->Members.insert(V);
   if (isa<StoreInst>(V)) {
+    assert(OldClass->StoreCount > 0 && "Store count underflow detected");
     --OldClass->StoreCount;
-    assert(OldClass->StoreCount >= 0);
+    assert(NewClass->StoreCount < UINT_MAX && "Store count overflow detected");
     ++NewClass->StoreCount;
-    assert(NewClass->StoreCount >= 0);
   }
 
   ValueToClass[V] = NewClass;