LLVM API Documentation

Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

InstCount.cpp File Reference

#include "llvm/Pass.h"
#include "llvm/Function.h"
#include "llvm/Support/InstVisitor.h"
#include "llvm/ADT/Statistic.h"
#include "llvm/Instruction.def"

Include dependency graph for InstCount.cpp:

Go to the source code of this file.

Namespaces

namespace  llvm

Defines

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

Functions

 llvm::HANDLE_MEMORY_INST (21, Malloc, MallocInst) HANDLE_MEMORY_INST(23
AllocaInst llvm::HANDLE_MEMORY_INST (24, Load, LoadInst) HANDLE_OTHER_INST(27
AllocaInst PHINode llvm::HANDLE_OTHER_INST (28, Cast, CastInst) HANDLE_OTHER_INST(29
AllocaInst PHINode CallInst llvm::HANDLE_OTHER_INST (30, Shl, ShiftInst) HANDLE_OTHER_INST(32
AllocaInst PHINode CallInst
VANextInst 
llvm::HANDLE_OTHER_INST (33, VAArg, VAArgInst) HANDLE_OTHER_INST(34
AllocaInst PHINode CallInst
VANextInst SelectInst 
llvm::HANDLE_OTHER_INST (35, UserOp1, Instruction) class InstCount

Variables

Statistic llvm::TotalInsts ("instcount","Number of instructions (of all types)")
Statistic llvm::TotalBlocks ("instcount","Number of basic blocks")
Statistic llvm::TotalFuncs ("instcount","Number of non-external functions")
RegisterAnalysis< InstCount > llvm::X ("instcount","Counts the various types of Instructions")


Define Documentation

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

Definition at line 26 of file InstCount.cpp.

#define HANDLE_INST N,
OPCODE,
CLASS   )     Statistic<> Num##OPCODE##Inst("instcount", "Number of " #OPCODE " insts");
 

Definition at line 26 of file InstCount.cpp.