Add # of printed instructions statistic to both the SPARC and X86 LLC backends.
authorBrian Gaeke <gaeke@uiuc.edu>
Mon, 6 Oct 2003 15:41:21 +0000 (15:41 +0000)
committerBrian Gaeke <gaeke@uiuc.edu>
Mon, 6 Oct 2003 15:41:21 +0000 (15:41 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8892 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/SparcV9/SparcV9AsmPrinter.cpp
lib/Target/X86/Printer.cpp
lib/Target/X86/X86AsmPrinter.cpp

index ec85038e5a7b190bf44bf1f235f1a96abbafb42b..029935da6edebe0cc9f0e69bbd31b42986f549f8 100644 (file)
 #include "llvm/Pass.h"
 #include "llvm/Assembly/Writer.h"
 #include "Support/StringExtras.h"
+#include "Support/Statistic.h"
 #include "SparcInternals.h"
 #include <string>
 
 namespace {
 
+Statistic<> EmittedInsts("asm-printer", "Number of machine instrs printed");
+
 class GlobalIdTable: public Annotation {
   static AnnotationID AnnotId;
   friend class AsmPrinter;              // give access to AnnotId
@@ -483,7 +486,6 @@ SparcFunctionAsmPrinter::printOneOperand(const MachineOperand &mop,
     toAsm << ")";
 }
 
-
 void
 SparcFunctionAsmPrinter::emitMachineInst(const MachineInstr *MI)
 {
@@ -507,6 +509,7 @@ SparcFunctionAsmPrinter::emitMachineInst(const MachineInstr *MI)
       N = 1;
   
   toAsm << "\n";
+  ++EmittedInsts;
 }
 
 void
index d36f298fe9962fa6a5ce0e43c36adba1ee1c69f1..fbc6b6e1aff8792c64a84f3fbc3108eb942e9d70 100644 (file)
 #include "llvm/CodeGen/MachineInstr.h"
 #include "llvm/Target/TargetMachine.h"
 #include "llvm/Support/Mangler.h"
+#include "Support/Statistic.h"
 #include "Support/StringExtras.h"
 #include "Support/CommandLine.h"
 
 namespace {
+  Statistic<> EmittedInsts("asm-printer", "Number of machine instrs printed");
+
   // FIXME: This should be automatically picked up by autoconf from the C
   // frontend
   cl::opt<bool> EmitCygwin("enable-cygwin-compatible-output", cl::Hidden,
@@ -573,6 +576,7 @@ void Printer::printMachineInstruction(const MachineInstr *MI) {
   const TargetInstrInfo &TII = TM.getInstrInfo();
   const TargetInstrDescriptor &Desc = TII.get(Opcode);
 
+  ++EmittedInsts;
   switch (Desc.TSFlags & X86II::FormMask) {
   case X86II::Pseudo:
     // Print pseudo-instructions as comments; either they should have been
index d36f298fe9962fa6a5ce0e43c36adba1ee1c69f1..fbc6b6e1aff8792c64a84f3fbc3108eb942e9d70 100644 (file)
 #include "llvm/CodeGen/MachineInstr.h"
 #include "llvm/Target/TargetMachine.h"
 #include "llvm/Support/Mangler.h"
+#include "Support/Statistic.h"
 #include "Support/StringExtras.h"
 #include "Support/CommandLine.h"
 
 namespace {
+  Statistic<> EmittedInsts("asm-printer", "Number of machine instrs printed");
+
   // FIXME: This should be automatically picked up by autoconf from the C
   // frontend
   cl::opt<bool> EmitCygwin("enable-cygwin-compatible-output", cl::Hidden,
@@ -573,6 +576,7 @@ void Printer::printMachineInstruction(const MachineInstr *MI) {
   const TargetInstrInfo &TII = TM.getInstrInfo();
   const TargetInstrDescriptor &Desc = TII.get(Opcode);
 
+  ++EmittedInsts;
   switch (Desc.TSFlags & X86II::FormMask) {
   case X86II::Pseudo:
     // Print pseudo-instructions as comments; either they should have been