diff options
-rw-r--r-- | lib/Target/SparcV9/SparcV9AsmPrinter.cpp | 5 | ||||
-rw-r--r-- | lib/Target/X86/Printer.cpp | 4 | ||||
-rw-r--r-- | lib/Target/X86/X86AsmPrinter.cpp | 4 |
3 files changed, 12 insertions, 1 deletions
diff --git a/lib/Target/SparcV9/SparcV9AsmPrinter.cpp b/lib/Target/SparcV9/SparcV9AsmPrinter.cpp index ec85038e5a..029935da6e 100644 --- a/lib/Target/SparcV9/SparcV9AsmPrinter.cpp +++ b/lib/Target/SparcV9/SparcV9AsmPrinter.cpp @@ -21,11 +21,14 @@ #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 diff --git a/lib/Target/X86/Printer.cpp b/lib/Target/X86/Printer.cpp index d36f298fe9..fbc6b6e1af 100644 --- a/lib/Target/X86/Printer.cpp +++ b/lib/Target/X86/Printer.cpp @@ -18,10 +18,13 @@ #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 diff --git a/lib/Target/X86/X86AsmPrinter.cpp b/lib/Target/X86/X86AsmPrinter.cpp index d36f298fe9..fbc6b6e1af 100644 --- a/lib/Target/X86/X86AsmPrinter.cpp +++ b/lib/Target/X86/X86AsmPrinter.cpp @@ -18,10 +18,13 @@ #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 |