LLVM API Documentation

Defines | Functions
InstCount.cpp File Reference
#include "llvm/Analysis/Passes.h"
#include "llvm/ADT/Statistic.h"
#include "llvm/IR/Function.h"
#include "llvm/IR/InstVisitor.h"
#include "llvm/Pass.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/raw_ostream.h"
#include "llvm/IR/Instruction.def"
Include dependency graph for InstCount.cpp:

Go to the source code of this file.

Defines

#define DEBUG_TYPE   "instcount"
#define HANDLE_INST(N, OPCODE, CLASS)   STATISTIC(Num ## OPCODE ## Inst, "Number of " #OPCODE " insts");
#define HANDLE_INST(N, OPCODE, CLASS)   void visit##OPCODE(CLASS &) { ++Num##OPCODE##Inst; ++TotalInsts; }

Functions

 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")
 INITIALIZE_PASS (InstCount,"instcount","Counts the various types of Instructions", false, true) FunctionPass *llvm

Define Documentation

#define DEBUG_TYPE   "instcount"

Definition at line 24 of file InstCount.cpp.

#define HANDLE_INST (   N,
  OPCODE,
  CLASS 
)    STATISTIC(Num ## OPCODE ## Inst, "Number of " #OPCODE " insts");

Definition at line 44 of file InstCount.cpp.

#define HANDLE_INST (   N,
  OPCODE,
  CLASS 
)    void visit##OPCODE(CLASS &) { ++Num##OPCODE##Inst; ++TotalInsts; }

Definition at line 44 of file InstCount.cpp.


Function Documentation

INITIALIZE_PASS ( InstCount  ,
"instcount"  ,
"Counts the various types of Instructions"  ,
false  ,
true   
)

Definition at line 70 of file InstCount.cpp.

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  
)