diff options
author | Jakub Staszak <jstaszak@apple.com> | 2011-06-17 18:00:21 +0000 |
---|---|---|
committer | Jakub Staszak <jstaszak@apple.com> | 2011-06-17 18:00:21 +0000 |
commit | 5f45dc7636ddf4ebd189d06cb36f37e631ed18c5 (patch) | |
tree | 2beaebb1b7191361617064dc1444b8b5e2ffabfe /llvm/lib/CodeGen/MachineBasicBlock.cpp | |
parent | bb95d5e9e5eb92e7920bc27f31ffbe3ac3b42275 (diff) | |
download | bcm5719-llvm-5f45dc7636ddf4ebd189d06cb36f37e631ed18c5.tar.gz bcm5719-llvm-5f45dc7636ddf4ebd189d06cb36f37e631ed18c5.zip |
getSuccWeight returns now default 0 if Weights vector is empty.
llvm-svn: 133271
Diffstat (limited to 'llvm/lib/CodeGen/MachineBasicBlock.cpp')
-rw-r--r-- | llvm/lib/CodeGen/MachineBasicBlock.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/llvm/lib/CodeGen/MachineBasicBlock.cpp b/llvm/lib/CodeGen/MachineBasicBlock.cpp index 7d7bfb1fc30..c0f71d24a3d 100644 --- a/llvm/lib/CodeGen/MachineBasicBlock.cpp +++ b/llvm/lib/CodeGen/MachineBasicBlock.cpp @@ -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; |