LLVM API Documentation

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Types | Public Member Functions | List of all members
llvm::ValueEnumerator Class Reference

#include <ValueEnumerator.h>

Public Types

typedef std::vector< Type * > TypeList
 
typedef std::vector< std::pair
< const Value *, unsigned > > 
ValueList
 

Public Member Functions

 ValueEnumerator (const Module *M)
 ValueEnumerator - Enumerate module-level information. More...
 
void dump () const
 
void print (raw_ostream &OS, const ValueMapType &Map, const char *Name) const
 
unsigned getValueID (const Value *V) const
 
unsigned getTypeID (Type *T) const
 
unsigned getInstructionID (const Instruction *I) const
 
void setInstructionID (const Instruction *I)
 
unsigned getAttributeID (AttributeSet PAL) const
 
unsigned getAttributeGroupID (AttributeSet PAL) const
 
void getFunctionConstantRange (unsigned &Start, unsigned &End) const
 
const ValueListgetValues () const
 
const ValueListgetMDValues () const
 
const SmallVectorImpl< const
MDNode * > & 
getFunctionLocalMDValues () const
 
const TypeListgetTypes () const
 
const std::vector< const
BasicBlock * > & 
getBasicBlocks () const
 
const std::vector< AttributeSet > & getAttributes () const
 
const std::vector< AttributeSet > & getAttributeGroups () const
 
unsigned getGlobalBasicBlockID (const BasicBlock *BB) const
 
void incorporateFunction (const Function &F)
 
void purgeFunction ()
 

Detailed Description

Definition at line 37 of file ValueEnumerator.h.

Member Typedef Documentation

typedef std::vector<Type*> llvm::ValueEnumerator::TypeList

Definition at line 39 of file ValueEnumerator.h.

typedef std::vector<std::pair<const Value*, unsigned> > llvm::ValueEnumerator::ValueList

Definition at line 42 of file ValueEnumerator.h.

Constructor & Destructor Documentation

ValueEnumerator::ValueEnumerator ( const Module M)

Member Function Documentation

void ValueEnumerator::dump ( ) const

Definition at line 139 of file ValueEnumerator.cpp.

References llvm::dbgs(), and print().

unsigned llvm::ValueEnumerator::getAttributeGroupID ( AttributeSet  PAL) const
inline
const std::vector<AttributeSet>& llvm::ValueEnumerator::getAttributeGroups ( ) const
inline

Definition at line 138 of file ValueEnumerator.h.

Referenced by WriteAttributeGroupTable().

unsigned llvm::ValueEnumerator::getAttributeID ( AttributeSet  PAL) const
inline
const std::vector<AttributeSet>& llvm::ValueEnumerator::getAttributes ( ) const
inline

Definition at line 135 of file ValueEnumerator.h.

Referenced by ValueEnumerator(), and WriteAttributeTable().

const std::vector<const BasicBlock*>& llvm::ValueEnumerator::getBasicBlocks ( ) const
inline

Definition at line 132 of file ValueEnumerator.h.

Referenced by WriteFunction().

void llvm::ValueEnumerator::getFunctionConstantRange ( unsigned Start,
unsigned End 
) const
inline

getFunctionConstantRange - Return the range of values that corresponds to function-local constants.

Definition at line 121 of file ValueEnumerator.h.

Referenced by WriteFunction().

const SmallVectorImpl<const MDNode *>& llvm::ValueEnumerator::getFunctionLocalMDValues ( ) const
inline

Definition at line 128 of file ValueEnumerator.h.

Referenced by WriteFunctionLocalMetadata().

unsigned ValueEnumerator::getGlobalBasicBlockID ( const BasicBlock BB) const

getGlobalBasicBlockID - This returns the function-specific ID for the specified basic block. This is relatively expensive information, so it should only be used by rare constructs such as address-of-label.

Definition at line 537 of file ValueEnumerator.cpp.

References llvm::BasicBlock::getParent(), and IncorporateFunctionInfoGlobalBBIDs().

Referenced by WriteConstants().

unsigned ValueEnumerator::getInstructionID ( const Instruction I) const
const ValueList& llvm::ValueEnumerator::getMDValues ( ) const
inline

Definition at line 127 of file ValueEnumerator.h.

Referenced by WriteModuleMetadata().

unsigned llvm::ValueEnumerator::getTypeID ( Type T) const
inline
const TypeList& llvm::ValueEnumerator::getTypes ( ) const
inline

Definition at line 131 of file ValueEnumerator.h.

Referenced by WriteBlockInfo(), and WriteTypeTable().

unsigned ValueEnumerator::getValueID ( const Value V) const
const ValueList& llvm::ValueEnumerator::getValues ( ) const
inline

Definition at line 126 of file ValueEnumerator.h.

Referenced by WriteConstants(), and WriteModuleConstants().

void ValueEnumerator::incorporateFunction ( const Function F)
void ValueEnumerator::print ( raw_ostream OS,
const ValueMapType Map,
const char *  Name 
) const
void ValueEnumerator::purgeFunction ( )
void ValueEnumerator::setInstructionID ( const Instruction I)

Definition at line 123 of file ValueEnumerator.cpp.

References I.

Referenced by WriteInstruction().


The documentation for this class was generated from the following files: