LLVM API Documentation

llvm::Trace Class Reference

#include <Trace.h>

Collaboration diagram for llvm::Trace:
[legend]

List of all members.

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)
BasicBlock * getEntryBasicBlock () const
BasicBlock * operator[] (unsigned i) const
BasicBlock * getBlock (unsigned i) const
Function * getFunction () const
Module * getModule () 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 (std::ostream &O) const
void print (std::ostream *O) const
void dump () const


Detailed Description

Definition at line 30 of file Trace.h.


Member Typedef Documentation

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

Definition at line 86 of file Trace.h.

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 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

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 llvm::CloneTraceInto(), and getFunction().

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.

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

Definition at line 49 of file Trace.h.

Function * Trace::getFunction (  )  const

getFunction - Return this trace's parent function.

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

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

Referenced by print().

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().

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().

iterator llvm::Trace::begin (  )  [inline]

Definition at line 91 of file Trace.h.

Referenced by llvm::CloneTraceInto(), and print().

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

Definition at line 92 of file Trace.h.

iterator llvm::Trace::end (  )  [inline]

Definition at line 93 of file Trace.h.

Referenced by llvm::CloneTraceInto(), and print().

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

Definition at line 94 of file Trace.h.

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.

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

Definition at line 102 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.

void Trace::print ( std::ostream &  O  )  const

print - Write trace to output stream.

Definition at line 34 of file Trace.cpp.

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

Referenced by dump(), and print().

void llvm::Trace::print ( std::ostream *  O  )  const [inline]

Definition at line 110 of file Trace.h.

References print().

void Trace::dump (  )  const

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

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

Definition at line 48 of file Trace.cpp.

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


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