LLVM  4.0.0
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)
 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. More...
 
BasicBlockgetEntryBasicBlock () const
 getEntryBasicBlock - Return the entry basic block (first block) of the trace. More...
 
BasicBlockoperator[] (unsigned i) const
 operator[]/getBlock - Return basic block N in the trace. More...
 
BasicBlockgetBlock (unsigned i) const
 
FunctiongetFunction () const
 getFunction - Return this trace's parent function. More...
 
ModulegetModule () const
 getModule - Return this Module that contains this trace's parent function. More...
 
int getBlockIndex (const BasicBlock *X) const
 getBlockIndex - Return the index of the specified basic block in the trace, or -1 if it is not in the trace. More...
 
bool contains (const BasicBlock *X) const
 contains - Returns true if this trace contains the given basic block. More...
 
bool dominates (const BasicBlock *B1, const BasicBlock *B2) const
 Returns true if B1 occurs before B2 in the trace, or if it is the same block as B2. More...
 
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
 print - Write trace to output stream. More...
 
void dump () const
 dump - Debugger convenience method; writes trace to standard error output stream. More...
 

Detailed Description

Definition at line 30 of file Analysis/Trace.h.

Member Typedef Documentation

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

Definition at line 87 of file Analysis/Trace.h.

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

Definition at line 88 of file Analysis/Trace.h.

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

Definition at line 86 of file Analysis/Trace.h.

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

Definition at line 89 of file Analysis/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 Analysis/Trace.h.

Member Function Documentation

iterator llvm::Trace::begin ( )
inline

Definition at line 91 of file Analysis/Trace.h.

Referenced by print().

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

Definition at line 92 of file Analysis/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 Analysis/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 Analysis/Trace.h.

References assert(), and getBlockIndex().

LLVM_DUMP_METHOD void Trace::dump ( ) const

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

Definition at line 49 of file Analysis/Trace.cpp.

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

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

Definition at line 102 of file Analysis/Trace.h.

iterator llvm::Trace::end ( )
inline

Definition at line 93 of file Analysis/Trace.h.

Referenced by print().

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

Definition at line 94 of file Analysis/Trace.h.

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

Definition at line 104 of file Analysis/Trace.h.

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

Definition at line 105 of file Analysis/Trace.h.

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

Definition at line 49 of file Analysis/Trace.h.

References i.

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 Analysis/Trace.h.

References i.

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 Analysis/Trace.h.

Referenced by getFunction().

Function * Trace::getFunction ( ) const

getFunction - Return this trace's parent function.

Definition at line 24 of file Analysis/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 28 of file Analysis/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 Analysis/Trace.h.

References i.

void Trace::print ( raw_ostream O) const

print - Write trace to output stream.

Definition at line 34 of file Analysis/Trace.cpp.

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

Referenced by dump().

reverse_iterator llvm::Trace::rbegin ( )
inline

Definition at line 96 of file Analysis/Trace.h.

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

Definition at line 97 of file Analysis/Trace.h.

reverse_iterator llvm::Trace::rend ( )
inline

Definition at line 98 of file Analysis/Trace.h.

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

Definition at line 99 of file Analysis/Trace.h.

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

Definition at line 101 of file Analysis/Trace.h.


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