diff --git a/lib/Bytecode/Writer/InstructionWriter.cpp b/lib/Bytecode/Writer/InstructionWriter.cpp
index 36414be..fdc5c5c 100644
--- a/lib/Bytecode/Writer/InstructionWriter.cpp
+++ b/lib/Bytecode/Writer/InstructionWriter.cpp
@@ -16,8 +16,14 @@
 #include "llvm/DerivedTypes.h"
 #include "llvm/iOther.h"
 #include "llvm/iTerminators.h"
+#include "Support/StatisticReporter.h"
 #include <algorithm>
 
+static Statistic<> 
+NumOversized("bytecodewriter\t- Number of oversized instructions");
+static Statistic<> 
+NumNormal("bytecodewriter\t- Number of normal instructions");
+
 typedef unsigned char uchar;
 
 // outputInstructionFormat0 - Output those wierd instructions that have a large
@@ -48,6 +54,7 @@
   }
 
   align32(Out);    // We must maintain correct alignment!
+  ++NumOversized;
 }
 
 
@@ -97,6 +104,7 @@
     output_vbr((unsigned)Slot, Out);
   }
   align32(Out);    // We must maintain correct alignment!
+  ++NumOversized;
 }
 
 
@@ -118,6 +126,7 @@
   unsigned Bits = 1 | (Opcode << 2) | (Type << 8) | (Slots[0] << 20);
   //  cerr << "1 " << IType << " " << Type << " " << Slots[0] << endl;
   output(Bits, Out);
+  ++NumNormal;
 }
 
 
@@ -142,6 +151,7 @@
   //  cerr << "2 " << IType << " " << Type << " " << Slots[0] << " " 
   //       << Slots[1] << endl;
   output(Bits, Out);
+  ++NumNormal;
 }
 
 
@@ -167,6 +177,7 @@
   //cerr << "3 " << IType << " " << Type << " " << Slots[0] << " " 
   //     << Slots[1] << " " << Slots[2] << endl;
   output(Bits, Out);
+  ++NumNormal;
 }
 
 void BytecodeWriter::processInstruction(const Instruction &I) {
diff --git a/lib/Bytecode/Writer/Writer.cpp b/lib/Bytecode/Writer/Writer.cpp
index f7219ea..4eade88 100644
--- a/lib/Bytecode/Writer/Writer.cpp
+++ b/lib/Bytecode/Writer/Writer.cpp
@@ -25,11 +25,14 @@
 #include "llvm/SymbolTable.h"
 #include "llvm/DerivedTypes.h"
 #include "Support/STLExtras.h"
+#include "Support/StatisticReporter.h"
 #include <string.h>
 #include <algorithm>
 
 static RegisterPass<WriteBytecodePass> X("emitbytecode", "Bytecode Writer");
 
+static Statistic<> 
+BytesWritten("bytecodewriter\t- Number of bytecode bytes written");
 
 
 BytecodeWriter::BytecodeWriter(std::deque<unsigned char> &o, const Module *M) 
@@ -234,6 +237,9 @@
   // This object populates buffer for us...
   BytecodeWriter BCW(Buffer, C);
 
+  // Keep track of how much we've written...
+  BytesWritten += Buffer.size();
+
   // Okay, write the deque out to the ostream now... the deque is not
   // sequential in memory, however, so write out as much as possible in big
   // chunks, until we're done.
