[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