Add counters for the number of calls elimianted
authorChris Lattner <sabre@nondot.org>
Mon, 15 Mar 2004 05:46:59 +0000 (05:46 +0000)
committerChris Lattner <sabre@nondot.org>
Mon, 15 Mar 2004 05:46:59 +0000 (05:46 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12420 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Transforms/Scalar/GCSE.cpp

index eb74b7c0a4484c15376f52a5f5bf246f38f7c3b1..e949525d80db314aeb88a93f62e37f4b20ec2419 100644 (file)
@@ -16,6 +16,7 @@
 
 #include "llvm/Transforms/Scalar.h"
 #include "llvm/iMemory.h"
+#include "llvm/iOther.h"
 #include "llvm/Type.h"
 #include "llvm/Analysis/Dominators.h"
 #include "llvm/Analysis/ValueNumbering.h"
@@ -28,6 +29,7 @@ using namespace llvm;
 namespace {
   Statistic<> NumInstRemoved("gcse", "Number of instructions removed");
   Statistic<> NumLoadRemoved("gcse", "Number of loads removed");
+  Statistic<> NumCallRemoved("gcse", "Number of calls removed");
   Statistic<> NumNonInsts   ("gcse", "Number of instructions removed due "
                              "to non-instruction values");
 
@@ -123,6 +125,8 @@ bool GCSE::EliminateRedundancies(Instruction *I,
 
           if (isa<LoadInst>(I))
             ++NumLoadRemoved; // Keep track of loads eliminated
+          if (isa<CallInst>(I))
+            ++NumCallRemoved; // Keep track of calls eliminated
           ++NumInstRemoved;   // Keep track of number of instructions eliminated
           ++NumNonInsts;      // Keep track of number of insts repl with values
 
@@ -264,6 +268,8 @@ Instruction *GCSE::EliminateCSE(Instruction *I, Instruction *Other) {
 
   if (isa<LoadInst>(Ret))
     ++NumLoadRemoved;  // Keep track of loads eliminated
+  if (isa<CallInst>(Ret))
+    ++NumCallRemoved;  // Keep track of calls eliminated
   ++NumInstRemoved;   // Keep track of number of instructions eliminated
 
   // Add all users of Ret to the worklist...