LLVM  6.0.0svn
Classes | Namespaces | Macros
InstVisitor.h File Reference
#include "llvm/IR/CallSite.h"
#include "llvm/IR/Function.h"
#include "llvm/IR/Instructions.h"
#include "llvm/IR/IntrinsicInst.h"
#include "llvm/IR/Intrinsics.h"
#include "llvm/IR/Module.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/IR/Instruction.def"
Include dependency graph for InstVisitor.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  llvm::InstVisitor< SubClass, RetTy >
 Base class for instruction visitors. More...
 

Namespaces

 llvm
 Compute iterated dominance frontiers using a linear time algorithm.
 

Macros

#define HANDLE_INST(NUM, OPCODE, CLASS)   class CLASS;
 
#define DELEGATE(CLASS_TO_VISIT)
 
#define HANDLE_INST(NUM, OPCODE, CLASS)
 
#define HANDLE_INST(NUM, OPCODE, CLASS)
 

Macro Definition Documentation

◆ DELEGATE

#define DELEGATE (   CLASS_TO_VISIT)
Value:
return static_cast<SubClass*>(this)-> \
visit##CLASS_TO_VISIT(static_cast<CLASS_TO_VISIT&>(I))
#define I(x, y, z)
Definition: MD5.cpp:58

Definition at line 30 of file InstVisitor.h.

Referenced by llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitAddrSpaceCastInst(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitAllocaInst(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitAtomicCmpXchgInst(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitAtomicRMWInst(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitBinaryOperator(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitBitCastInst(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitBranchInst(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitCallSite(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitCastInst(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitCatchPadInst(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitCatchReturnInst(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitCatchSwitchInst(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitCleanupPadInst(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitCleanupReturnInst(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitCmpInst(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitDbgDeclareInst(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitDbgInfoIntrinsic(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitDbgValueInst(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitExtractElementInst(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitExtractValueInst(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitFCmpInst(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitFenceInst(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitFPExtInst(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitFPToSIInst(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitFPToUIInst(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitFPTruncInst(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitFuncletPadInst(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitGetElementPtrInst(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitICmpInst(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitIndirectBrInst(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitInsertElementInst(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitInsertValueInst(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitInstruction(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitIntrinsicInst(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitIntToPtrInst(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitLandingPadInst(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitLoadInst(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitMemCpyInst(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitMemIntrinsic(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitMemMoveInst(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitMemSetInst(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitMemTransferInst(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitPHINode(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitPtrToIntInst(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitResumeInst(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitReturnInst(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitSelectInst(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitSExtInst(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitShuffleVectorInst(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitSIToFPInst(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitStoreInst(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitSwitchInst(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitTerminatorInst(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitTruncInst(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitUIToFPInst(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitUnaryInstruction(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitUnreachableInst(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitVAArgInst(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitVACopyInst(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitVAEndInst(), llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitVAStartInst(), and llvm::InstVisitor< ObjectSizeOffsetVisitor, SizeOffsetType >::visitZExtInst().

◆ HANDLE_INST [1/3]

#define HANDLE_INST (   NUM,
  OPCODE,
  CLASS 
)    class CLASS;

Definition at line 157 of file InstVisitor.h.

◆ HANDLE_INST [2/3]

#define HANDLE_INST (   NUM,
  OPCODE,
  CLASS 
)
Value:
case Instruction::OPCODE: return \
static_cast<SubClass*>(this)-> \
visit##OPCODE(static_cast<CLASS&>(I));
#define OPCODE(NAME)
#define I(x, y, z)
Definition: MD5.cpp:58

Definition at line 157 of file InstVisitor.h.

◆ HANDLE_INST [3/3]

#define HANDLE_INST (   NUM,
  OPCODE,
  CLASS 
)
Value:
RetTy visit##OPCODE(CLASS &I) { \
return delegateCallInst(I); \
DELEGATE(CLASS); \
}
#define OPCODE(NAME)
#define I(x, y, z)
Definition: MD5.cpp:58
#define DELEGATE(CLASS_TO_VISIT)
Definition: InstVisitor.h:30

Definition at line 157 of file InstVisitor.h.