[llvm-commits] [llvm] r86180 - /llvm/trunk/lib/Transforms/Scalar/LoopDeletion.cpp
Dan Gohman
gohman at apple.com
Thu Nov 5 13:47:05 PST 2009
Author: djg
Date: Thu Nov 5 15:47:04 2009
New Revision: 86180
URL: http://llvm.org/viewvc/llvm-project?rev=86180&view=rev
Log:
LoopDeletion depends on loops having dedicated exits.
Modified:
llvm/trunk/lib/Transforms/Scalar/LoopDeletion.cpp
Modified: llvm/trunk/lib/Transforms/Scalar/LoopDeletion.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Transforms/Scalar/LoopDeletion.cpp?rev=86180&r1=86179&r2=86180&view=diff
==============================================================================
--- llvm/trunk/lib/Transforms/Scalar/LoopDeletion.cpp (original)
+++ llvm/trunk/lib/Transforms/Scalar/LoopDeletion.cpp Thu Nov 5 15:47:04 2009
@@ -115,6 +115,10 @@
if (!preheader)
return false;
+ // If LoopSimplify form is not available, stay out of trouble.
+ if (!L->hasDedicatedExits())
+ return false;
+
// We can't remove loops that contain subloops. If the subloops were dead,
// they would already have been removed in earlier executions of this pass.
if (L->begin() != L->end())
More information about the llvm-commits
mailing list