Make getUniqueExitBlocks's precondition assert more precise, to

avoid spurious failures. This fixes PR5758.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91147 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Dan Gohman
2009-12-11 20:05:23 +00:00
parent a4f9cc4e55
commit 050959cd08
3 changed files with 26 additions and 4 deletions
+3 -3
View File
@@ -316,12 +316,12 @@ bool Loop::hasDedicatedExits() const {
/// getUniqueExitBlocks - Return all unique successor blocks of this loop.
/// These are the blocks _outside of the current loop_ which are branched to.
/// This assumes that loop is in canonical form.
/// This assumes that loop exits are in canonical form.
///
void
Loop::getUniqueExitBlocks(SmallVectorImpl<BasicBlock *> &ExitBlocks) const {
assert(isLoopSimplifyForm() &&
"getUniqueExitBlocks assumes the loop is in canonical form!");
assert(hasDedicatedExits() &&
"getUniqueExitBlocks assumes the loop has canonical form exits!");
// Sort the blocks vector so that we can use binary search to do quick
// lookups.