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::Trace Class Reference

#include <Trace.h>

Public Types

typedef
BasicBlockListType::iterator 
iterator
 
typedef
BasicBlockListType::const_iterator 
const_iterator
 
typedef std::reverse_iterator
< const_iterator
const_reverse_iterator
 
typedef std::reverse_iterator
< iterator
reverse_iterator
 

Public Member Functions

 Trace (const std::vector< BasicBlock * > &vBB)
 
BasicBlockgetEntryBasicBlock () const
 
BasicBlockoperator[] (unsigned i) const
 
BasicBlockgetBlock (unsigned i) const
 
FunctiongetFunction () const
 
ModulegetModule () const
 
int getBlockIndex (const BasicBlock *X) const
 
bool contains (const BasicBlock *X) const
 
bool dominates (const BasicBlock *B1, const BasicBlock *B2) const
 
iterator begin ()
 
const_iterator begin () const
 
iterator end ()
 
const_iterator end () const
 
reverse_iterator rbegin ()
 
const_reverse_iterator rbegin () const
 
reverse_iterator rend ()
 
const_reverse_iterator rend () const
 
unsigned size () const
 
bool empty () const
 
iterator erase (iterator q)
 
iterator erase (iterator q1, iterator q2)
 
void print (raw_ostream &O) const
 
void dump () const
 

Detailed Description

Definition at line 30 of file Trace.h.

Member Typedef Documentation

typedef BasicBlockListType::const_iterator llvm::Trace::const_iterator

Definition at line 87 of file Trace.h.

typedef std::reverse_iterator<const_iterator> llvm::Trace::const_reverse_iterator

Definition at line 88 of file Trace.h.

typedef BasicBlockListType::iterator llvm::Trace::iterator

Definition at line 86 of file Trace.h.

typedef std::reverse_iterator<iterator> llvm::Trace::reverse_iterator

Definition at line 89 of file Trace.h.

Constructor & Destructor Documentation

llvm::Trace::Trace ( const std::vector< BasicBlock * > &  vBB)
inline

Trace ctor - Make a new trace from a vector of basic blocks, residing in the function which is the parent of the first basic block in the vector.

Definition at line 39 of file Trace.h.

Member Function Documentation

iterator llvm::Trace::begin ( )
inline

Definition at line 91 of file Trace.h.

Referenced by print().

const_iterator llvm::Trace::begin ( ) const
inline

Definition at line 92 of file Trace.h.

bool llvm::Trace::contains ( const BasicBlock X) const
inline

contains - Returns true if this trace contains the given basic block.

Definition at line 72 of file Trace.h.

References getBlockIndex().

bool llvm::Trace::dominates ( const BasicBlock B1,
const BasicBlock B2 
) const
inline

Returns true if B1 occurs before B2 in the trace, or if it is the same block as B2.. Both blocks must be in the trace.

Definition at line 79 of file Trace.h.

References getBlockIndex().

void Trace::dump ( ) const

dump - Debugger convenience method; writes trace to standard error output stream.

Definition at line 50 of file Trace.cpp.

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

bool llvm::Trace::empty ( ) const
inline

Definition at line 102 of file Trace.h.

iterator llvm::Trace::end ( )
inline

Definition at line 93 of file Trace.h.

Referenced by print().

const_iterator llvm::Trace::end ( ) const
inline

Definition at line 94 of file Trace.h.

iterator llvm::Trace::erase ( iterator  q)
inline

Definition at line 104 of file Trace.h.

iterator llvm::Trace::erase ( iterator  q1,
iterator  q2 
)
inline

Definition at line 105 of file Trace.h.

BasicBlock* llvm::Trace::getBlock ( unsigned  i) const
inline

Definition at line 49 of file Trace.h.

int llvm::Trace::getBlockIndex ( const BasicBlock X) const
inline

getBlockIndex - Return the index of the specified basic block in the trace, or -1 if it is not in the trace.

Definition at line 62 of file Trace.h.

Referenced by contains(), and dominates().

BasicBlock* llvm::Trace::getEntryBasicBlock ( ) const
inline

getEntryBasicBlock - Return the entry basic block (first block) of the trace.

Definition at line 44 of file Trace.h.

Referenced by getFunction().

Function * Trace::getFunction ( ) const

getFunction - Return this trace's parent function.

Definition at line 25 of file Trace.cpp.

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

Referenced by getModule(), and print().

Module * Trace::getModule ( ) const

getModule - Return this Module that contains this trace's parent function.

Definition at line 29 of file Trace.cpp.

References getFunction(), and llvm::GlobalValue::getParent().

Referenced by print().

BasicBlock* llvm::Trace::operator[] ( unsigned  i) const
inline

operator[]/getBlock - Return basic block N in the trace.

Definition at line 48 of file Trace.h.

void Trace::print ( raw_ostream O) const

print - Write trace to output stream.

Definition at line 35 of file Trace.cpp.

References begin(), end(), F(), getFunction(), getModule(), llvm::Value::getName(), and llvm::WriteAsOperand().

Referenced by dump().

reverse_iterator llvm::Trace::rbegin ( )
inline

Definition at line 96 of file Trace.h.

const_reverse_iterator llvm::Trace::rbegin ( ) const
inline

Definition at line 97 of file Trace.h.

reverse_iterator llvm::Trace::rend ( )
inline

Definition at line 98 of file Trace.h.

const_reverse_iterator llvm::Trace::rend ( ) const
inline

Definition at line 99 of file Trace.h.

unsigned llvm::Trace::size ( ) const
inline

Definition at line 101 of file Trace.h.


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