Revert "[FIX] Do not create a SCoP in the presence of infinite loops"
This reverts commit r265260, as it caused the following 'make check-polly'
failures:
Polly :: ScopDetect/index_from_unpredictable_loop.ll
Polly :: ScopInfo/multiple_exiting_blocks.ll
Polly :: ScopInfo/multiple_exiting_blocks_two_loop.ll
Polly :: ScopInfo/schedule-const-post-dominator-walk-2.ll
Polly :: ScopInfo/schedule-const-post-dominator-walk.ll
Polly :: ScopInfo/switch-5.ll
llvm-svn: 265272
diff --git a/polly/lib/Analysis/ScopDetection.cpp b/polly/lib/Analysis/ScopDetection.cpp
index c0dba12..594d656 100644
--- a/polly/lib/Analysis/ScopDetection.cpp
+++ b/polly/lib/Analysis/ScopDetection.cpp
@@ -1029,14 +1029,8 @@
// Ensure the loop has valid exiting blocks as well as latches, otherwise we
// need to overapproximate it as a boxed loop.
SmallVector<BasicBlock *, 4> LoopControlBlocks;
- L->getExitingBlocks(LoopControlBlocks);
-
- // Loops without exiting blocks cannot be handled by the schedule generation
- // as it depends on a region covering that is not given.
- if (LoopControlBlocks.empty())
- return false;
-
L->getLoopLatches(LoopControlBlocks);
+ L->getExitingBlocks(LoopControlBlocks);
for (BasicBlock *ControlBB : LoopControlBlocks) {
if (!isValidCFG(*ControlBB, true, false, Context))
return false;