LLVM API Documentation

llvm::ProfileInfoLoader Class Reference

#include <ProfileInfoLoader.h>

Collaboration diagram for llvm::ProfileInfoLoader:

Collaboration graph
[legend]
List of all members.

Public Types

typedef std::pair< BasicBlock *,
unsigned > 
Edge

Public Member Functions

 ProfileInfoLoader (const char *ToolName, const std::string &Filename, Module &M)
unsigned getNumExecutions () const
const std::string & getExecution (unsigned i) const
void getFunctionCounts (std::vector< std::pair< Function *, unsigned > > &Counts)
bool hasAccurateBlockCounts () const
bool hasAccurateEdgeCounts () const
void getBlockCounts (std::vector< std::pair< BasicBlock *, unsigned > > &Counts)
void getEdgeCounts (std::vector< std::pair< Edge, unsigned > > &Counts)
void getBBTrace (std::vector< BasicBlock * > &Trace)

Detailed Description

Definition at line 29 of file ProfileInfoLoader.h.


Member Typedef Documentation

typedef std::pair<BasicBlock*, unsigned> llvm::ProfileInfoLoader::Edge

Definition at line 78 of file ProfileInfoLoader.h.


Constructor & Destructor Documentation

ProfileInfoLoader::ProfileInfoLoader ( const char *  ToolName,
const std::string &  Filename,
Module M 
)

Definition at line 74 of file ProfileInfoLoader.cpp.

References ArgumentInfo, BBTraceInfo, BlockInfo, ByteSwap(), EdgeInfo, F, FunctionInfo, and ReadProfilingBlock().


Member Function Documentation

void ProfileInfoLoader::getBBTrace ( std::vector< BasicBlock * > &  Trace  ) 

Definition at line 270 of file ProfileInfoLoader.cpp.

void ProfileInfoLoader::getBlockCounts ( std::vector< std::pair< BasicBlock *, unsigned > > &  Counts  ) 

Definition at line 176 of file ProfileInfoLoader.cpp.

References BB, llvm::Module::begin(), Counter, E, llvm::Module::end(), F, first, getEdgeCounts(), llvm::TerminatorInst::getNumSuccessors(), llvm::TerminatorInst::getSuccessor(), llvm::BasicBlock::getTerminator(), hasAccurateEdgeCounts(), I, and second.

Referenced by getFunctionCounts().

void ProfileInfoLoader::getEdgeCounts ( std::vector< std::pair< Edge, unsigned > > &  Counts  ) 

Definition at line 248 of file ProfileInfoLoader.cpp.

References BB, llvm::Module::begin(), Counter, E, llvm::Module::end(), F, llvm::TerminatorInst::getNumSuccessors(), and llvm::BasicBlock::getTerminator().

Referenced by getBlockCounts().

const std::string& llvm::ProfileInfoLoader::getExecution ( unsigned  i  )  const [inline]

Definition at line 43 of file ProfileInfoLoader.h.

void ProfileInfoLoader::getFunctionCounts ( std::vector< std::pair< Function *, unsigned > > &  Counts  ) 

Definition at line 146 of file ProfileInfoLoader.cpp.

References llvm::Module::begin(), Counter, E, llvm::Module::end(), first, getBlockCounts(), hasAccurateBlockCounts(), and I.

unsigned llvm::ProfileInfoLoader::getNumExecutions (  )  const [inline]

Definition at line 42 of file ProfileInfoLoader.h.

bool llvm::ProfileInfoLoader::hasAccurateBlockCounts (  )  const [inline]

Definition at line 54 of file ProfileInfoLoader.h.

Referenced by getFunctionCounts().

bool llvm::ProfileInfoLoader::hasAccurateEdgeCounts (  )  const [inline]

Definition at line 61 of file ProfileInfoLoader.h.

Referenced by getBlockCounts().


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