Deleted Added
full compact
83d82
< #include <ostream>
2466,2468c2465,2467
< SmallVector<BasicBlock*, 8> ExitBlocks;
< L->getExitBlocks(ExitBlocks);
< if (ExitBlocks.size() != 1) return UnknownValue;
---
> BasicBlock *ExitBlock = L->getExitBlock();
> if (!ExitBlock)
> return UnknownValue;
2472c2471,2473
< BasicBlock *ExitBlock = ExitBlocks[0];
---
> BasicBlock *ExitingBlock = L->getExitingBlock();
> if (!ExitingBlock)
> return UnknownValue; // More than one block exiting!
2474,2484d2474
< BasicBlock *ExitingBlock = 0;
< for (pred_iterator PI = pred_begin(ExitBlock), E = pred_end(ExitBlock);
< PI != E; ++PI)
< if (L->contains(*PI)) {
< if (ExitingBlock == 0)
< ExitingBlock = *PI;
< else
< return UnknownValue; // More than one block exiting!
< }
< assert(ExitingBlock && "No exits from loop, something is broken!");
<