From 8483e54837ede5dd40c5561f15c6a663e2bee87c Mon Sep 17 00:00:00 2001 From: Dale Johannesen Date: Thu, 12 Mar 2009 23:18:09 +0000 Subject: [PATCH] Previous debug info fix to this code wasn't quite right; did the wrong thing when there are exactly 11 non-debug instructions, followed by debug info. Remove a FIXME since it's apparently been fixed along the way. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@66840 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Transforms/Utils/SimplifyCFG.cpp | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/lib/Transforms/Utils/SimplifyCFG.cpp b/lib/Transforms/Utils/SimplifyCFG.cpp index 637fab0bf0e..b8bac6da2fe 100644 --- a/lib/Transforms/Utils/SimplifyCFG.cpp +++ b/lib/Transforms/Utils/SimplifyCFG.cpp @@ -1122,14 +1122,13 @@ static bool BlockIsSimpleEnoughToThreadThrough(BasicBlock *BB) { BranchInst *BI = cast(BB->getTerminator()); unsigned Size = 0; - // If this basic block contains anything other than a PHI (which controls the - // branch) and branch itself, bail out. FIXME: improve this in the future. for (BasicBlock::iterator BBI = BB->begin(); &*BBI != BI; ++BBI) { + if (isa(BBI)) + continue; if (Size > 10) return false; // Don't clone large BB's. - if (!isa(BBI)) - ++Size; + ++Size; - // We can only support instructions that are do not define values that are + // We can only support instructions that do not define values that are // live outside of the current basic block. for (Value::use_iterator UI = BBI->use_begin(), E = BBI->use_end(); UI != E; ++UI) {