From: Chris Lattner Date: Mon, 15 Nov 2004 07:02:42 +0000 (+0000) Subject: Count more accurately X-Git-Url: http://plrg.eecs.uci.edu/git/?a=commitdiff_plain;h=b77d5d8d50b146cc93082dbc07d5928ae80a20ca;p=oota-llvm.git Count more accurately git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17824 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Transforms/Scalar/SCCP.cpp b/lib/Transforms/Scalar/SCCP.cpp index f3025523bcd..9b552014077 100644 --- a/lib/Transforms/Scalar/SCCP.cpp +++ b/lib/Transforms/Scalar/SCCP.cpp @@ -44,6 +44,7 @@ using namespace llvm; // namespace { Statistic<> NumInstRemoved("sccp", "Number of instructions removed"); + Statistic<> NumDeadBlocks ("sccp", "Number of basic blocks unreachable"); class LatticeVal { enum { @@ -853,6 +854,8 @@ bool SCCP::runOnFunction(Function &F) { for (Function::iterator BB = F.begin(), E = F.end(); BB != E; ++BB) if (!ExecutableBBs.count(BB)) { DEBUG(std::cerr << " BasicBlock Dead:" << *BB); + ++NumDeadBlocks; + // Delete the instructions backwards, as it has a reduced likelihood of // having to update as many def-use and use-def chains. std::vector Insts; @@ -866,6 +869,7 @@ bool SCCP::runOnFunction(Function &F) { I->replaceAllUsesWith(UndefValue::get(I->getType())); BB->getInstList().erase(I); MadeChanges = true; + ++NumInstRemoved; } }