diff options
| author | Devang Patel <dpatel@apple.com> | 2009-06-05 22:39:21 +0000 | 
|---|---|---|
| committer | Devang Patel <dpatel@apple.com> | 2009-06-05 22:39:21 +0000 | 
| commit | 50fc5a3cd7253fb52b08a2f1563b1133537157f1 (patch) | |
| tree | 5a7ce9ea0ee4f6d3af3ab2d2962b08a5d0e9386c /llvm/lib/Transforms | |
| parent | 5bda50f84eacd821262543606061ff49fc8f8c5f (diff) | |
| download | bcm5719-llvm-50fc5a3cd7253fb52b08a2f1563b1133537157f1.tar.gz bcm5719-llvm-50fc5a3cd7253fb52b08a2f1563b1133537157f1.zip | |
Simplify.
llvm-svn: 72965
Diffstat (limited to 'llvm/lib/Transforms')
| -rw-r--r-- | llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp | 20 | 
1 files changed, 5 insertions, 15 deletions
| diff --git a/llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp b/llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp index f05afeca32a..944f4093191 100644 --- a/llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp +++ b/llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp @@ -2425,24 +2425,14 @@ void LoopStrengthReduce::OptimizeLoopCountIV(Loop *L) {    // Get the terminating condition for the loop if possible (this isn't    // necessarily in the latch, or a block that's a predecessor of the header). -  SmallVector<BasicBlock*, 8> ExitBlocks; -  L->getExitBlocks(ExitBlocks); -  if (ExitBlocks.size() != 1) return; +  if (!L->getExitBlock()) +    return; // More than one loop exit blocks.    // Okay, there is one exit block.  Try to find the condition that causes the    // loop to be exited. -  BasicBlock *ExitBlock = ExitBlocks[0]; - -  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; // More than one block exiting! -    } -  assert(ExitingBlock && "No exits from loop, something is broken!"); +  BasicBlock *ExitingBlock = L->getExitingBlock(); +  if (!ExitingBlock) +    return; // More than one block exiting!    // Okay, we've computed the exiting block.  See what condition causes us to    // exit. | 

