Cut off crazy computation. This helps PR1622 slightly.
authorChris Lattner <sabre@nondot.org>
Tue, 28 Aug 2007 04:23:55 +0000 (04:23 +0000)
committerChris Lattner <sabre@nondot.org>
Tue, 28 Aug 2007 04:23:55 +0000 (04:23 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41522 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Transforms/Scalar/InstructionCombining.cpp

index 416e1f012a64eaca2cfaf8ce18f44f4c485c5d2f..218da9773d1ddb7e03294cf3d4d29f623d9c7984 100644 (file)
@@ -8283,6 +8283,10 @@ static bool DeadPHICycle(PHINode *PN,
   // Remember this node, and if we find the cycle, return.
   if (!PotentiallyDeadPHIs.insert(PN))
     return true;
+  
+  // Don't scan crazily complex things.
+  if (PotentiallyDeadPHIs.size() == 16)
+    return false;
 
   if (PHINode *PU = dyn_cast<PHINode>(PN->use_back()))
     return DeadPHICycle(PU, PotentiallyDeadPHIs);