eliminate static ctors from Statistics

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32697 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner
2006-12-19 22:30:33 +00:00
parent cbfdd1f840
commit 3b27d68c6a
4 changed files with 41 additions and 56 deletions

View File

@ -11,6 +11,7 @@
//
//===----------------------------------------------------------------------===//
#define DEBUG_TYPE "instcount"
#include "llvm/Analysis/Passes.h"
#include "llvm/Pass.h"
#include "llvm/Function.h"
@ -20,17 +21,18 @@
#include <ostream>
using namespace llvm;
namespace {
Statistic TotalInsts ("instcount", "Number of instructions (of all types)");
Statistic TotalBlocks("instcount", "Number of basic blocks");
Statistic TotalFuncs ("instcount", "Number of non-external functions");
Statistic TotalMemInst("instcount", "Number of memory instructions");
STATISTIC(TotalInsts , "Number of instructions (of all types)");
STATISTIC(TotalBlocks, "Number of basic blocks");
STATISTIC(TotalFuncs , "Number of non-external functions");
STATISTIC(TotalMemInst, "Number of memory instructions");
#define HANDLE_INST(N, OPCODE, CLASS) \
Statistic Num##OPCODE##Inst("instcount", "Number of " #OPCODE " insts");
STATISTIC(Num ## OPCODE ## Inst, "Number of " #OPCODE " insts");
#include "llvm/Instruction.def"
namespace {
class InstCount : public FunctionPass, public InstVisitor<InstCount> {
friend class InstVisitor<InstCount>;