getSuccWeight returns now default 0 if Weights vector is empty.
authorJakub Staszak <jstaszak@apple.com>
Fri, 17 Jun 2011 18:00:21 +0000 (18:00 +0000)
committerJakub Staszak <jstaszak@apple.com>
Fri, 17 Jun 2011 18:00:21 +0000 (18:00 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133271 91177308-0d34-0410-b5e6-96231b3b80d8

lib/CodeGen/MachineBasicBlock.cpp

index 7d7bfb1fc3079f48bea7acb487adc377b504dd31..c0f71d24a3dbb635c0379ad772395472b9db5578 100644 (file)
@@ -768,6 +768,9 @@ MachineBasicBlock::findDebugLoc(MachineBasicBlock::iterator &MBBI) {
 /// getSuccWeight - Return weight of the edge from this block to MBB.
 ///
 uint32_t MachineBasicBlock::getSuccWeight(MachineBasicBlock *succ) {
+  if (Weights.empty())
+    return 0;
+
   succ_iterator I = std::find(Successors.begin(), Successors.end(), succ);
   return *getWeightIterator(I);
 }
@@ -776,8 +779,7 @@ uint32_t MachineBasicBlock::getSuccWeight(MachineBasicBlock *succ) {
 /// iterator
 MachineBasicBlock::weight_iterator MachineBasicBlock::
 getWeightIterator(MachineBasicBlock::succ_iterator I) {
-  assert((Weights.size() == Successors.size() || Weights.empty()) &&
-         "Async weight list!");
+  assert(Weights.size() == Successors.size() && "Async weight list!");
   size_t index = std::distance(Successors.begin(), I);
   assert(index < Weights.size() && "Not a current successor!");
   return Weights.begin() + index;