Add support to count the number of dynamic instructions executed by LLI


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4955 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/ExecutionEngine/Interpreter/Execution.cpp b/lib/ExecutionEngine/Interpreter/Execution.cpp
index d11ed6e..3d6cf0b 100644
--- a/lib/ExecutionEngine/Interpreter/Execution.cpp
+++ b/lib/ExecutionEngine/Interpreter/Execution.cpp
@@ -15,6 +15,7 @@
 #include "llvm/Assembly/Writer.h"
 #include "llvm/Target/TargetData.h"
 #include "Support/CommandLine.h"
+#include "Support/Statistic.h"
 #include <math.h>  // For fmod
 #include <signal.h>
 #include <setjmp.h>
@@ -22,6 +23,10 @@
 using std::cout;
 using std::cerr;
 
+namespace {
+  Statistic<> NumDynamicInsts("lli", "Number of dynamic instructions executed");
+}
+
 static cl::opt<bool>
 QuietMode("quiet", cl::desc("Do not emit any non-program output"));
 
@@ -1251,6 +1256,9 @@
   if (Trace)
     CW << "Run:" << I;
 
+  // Track the number of dynamic instructions executed.
+  ++NumDynamicInsts;
+
   // Set a sigsetjmp buffer so that we can recover if an error happens during
   // instruction execution...
   //
diff --git a/tools/lli/lli.cpp b/tools/lli/lli.cpp
index 76e1eb1..3f718e5 100644
--- a/tools/lli/lli.cpp
+++ b/tools/lli/lli.cpp
@@ -21,10 +21,7 @@
               cl::value_desc("function name"));
 
 static cl::opt<bool>
-DebugMode("debug", cl::desc("Start program in debugger"));
-
-static cl::alias
-DebugModeA("d", cl::desc("Alias for -debug"), cl::aliasopt(DebugMode));
+DebugMode("d", cl::desc("Start program in debugger"));
 
 static cl::opt<bool>
 TraceMode("trace", cl::desc("Enable Tracing"));