LLVM API Documentation

Public Types | Public Member Functions | Public Attributes
llvm::ValueEnumerator Class Reference

#include <ValueEnumerator.h>

Collaboration diagram for llvm::ValueEnumerator:
Collaboration graph
[legend]

List of all members.

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.
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
const ComdatSetTypegetComdats () const
unsigned getComdatID (const Comdat *C) const
unsigned getGlobalBasicBlockID (const BasicBlock *BB) const
void incorporateFunction (const Function &F)
void purgeFunction ()

Public Attributes

UseListOrderStack UseListOrders

Detailed Description

Definition at line 40 of file ValueEnumerator.h.


Member Typedef Documentation

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

Definition at line 42 of file ValueEnumerator.h.

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

Definition at line 45 of file ValueEnumerator.h.


Constructor & Destructor Documentation

ValueEnumerator::ValueEnumerator ( const Module M)

Member Function Documentation

void ValueEnumerator::dump ( ) const

Definition at line 393 of file ValueEnumerator.cpp.

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

Definition at line 148 of file ValueEnumerator.h.

Referenced by WriteAttributeGroupTable().

const std::vector<AttributeSet>& llvm::ValueEnumerator::getAttributes ( ) const [inline]

Definition at line 145 of file ValueEnumerator.h.

Referenced by ValueEnumerator(), and WriteAttributeTable().

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

Definition at line 142 of file ValueEnumerator.h.

Referenced by WriteFunction().

Definition at line 371 of file ValueEnumerator.cpp.

References llvm::UniqueVector< T >::idFor().

Referenced by WriteModuleInfo().

Definition at line 152 of file ValueEnumerator.h.

Referenced by writeComdats().

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 131 of file ValueEnumerator.h.

Referenced by WriteFunction().

Definition at line 138 of file ValueEnumerator.h.

Referenced by WriteFunctionLocalMetadata().

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 789 of file ValueEnumerator.cpp.

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

Referenced by WriteConstants().

Definition at line 137 of file ValueEnumerator.h.

Referenced by WriteModuleMetadata().

Definition at line 141 of file ValueEnumerator.h.

Referenced by WriteBlockInfo(), and WriteTypeTable().

Definition at line 136 of file ValueEnumerator.h.

Referenced by WriteConstants(), and WriteModuleConstants().

void ValueEnumerator::print ( raw_ostream OS,
const ValueMapType Map,
const char *  Name 
) const

Definition at line 377 of file ValueEnumerator.cpp.

References I.

Referenced by WriteInstruction().


Member Data Documentation

Definition at line 47 of file ValueEnumerator.h.

Referenced by ValueEnumerator(), and WriteUseListBlock().


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