LLVM API Documentation

llvm::IntervalPartition Class Reference

#include <IntervalPartition.h>

Inheritance diagram for llvm::IntervalPartition:

Inheritance graph
[legend]
Collaboration diagram for llvm::IntervalPartition:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 IntervalPartition ()
virtual bool runOnFunction (Function &F)
 IntervalPartition (IntervalPartition &I, bool)
 ~IntervalPartition ()
virtual void print (std::ostream &O, const Module *=0) const
IntervalgetRootInterval ()
bool isDegeneratePartition ()
IntervalgetBlockInterval (BasicBlock *BB)
virtual void getAnalysisUsage (AnalysisUsage &AU) const
const std::vector< Interval * > & getIntervals () const

Detailed Description

Definition at line 39 of file IntervalPartition.h.


Constructor & Destructor Documentation

llvm::IntervalPartition::IntervalPartition (  )  [inline]

Definition at line 48 of file IntervalPartition.h.

IntervalPartition::IntervalPartition ( IntervalPartition I,
bool   
)

Definition at line 91 of file IntervalPartition.cpp.

References E, getRootInterval(), llvm::intervals_begin(), and llvm::intervals_end().

llvm::IntervalPartition::~IntervalPartition (  )  [inline]

Definition at line 60 of file IntervalPartition.h.


Member Function Documentation

virtual void llvm::IntervalPartition::getAnalysisUsage ( AnalysisUsage AU  )  const [inline, virtual]

getAnalysisUsage - This function should be overriden by passes that need analysis information to do their job. If a pass specifies that it uses a particular analysis result to this function, it can then use the getAnalysis<AnalysisType>() function, below.

Reimplemented from llvm::Pass.

Definition at line 82 of file IntervalPartition.h.

References llvm::AnalysisUsage::setPreservesAll().

Interval* llvm::IntervalPartition::getBlockInterval ( BasicBlock BB  )  [inline]

Definition at line 76 of file IntervalPartition.h.

References BB, and I.

Referenced by llvm::getSourceGraphNode().

const std::vector<Interval*>& llvm::IntervalPartition::getIntervals (  )  const [inline]

Definition at line 87 of file IntervalPartition.h.

Interval* llvm::IntervalPartition::getRootInterval (  )  [inline]

Definition at line 67 of file IntervalPartition.h.

Referenced by llvm::IntervalIterator< NodeTy, OrigContainer_t, GT, IGT >::IntervalIterator(), and IntervalPartition().

bool llvm::IntervalPartition::isDegeneratePartition (  )  [inline]

Definition at line 71 of file IntervalPartition.h.

void IntervalPartition::print ( std::ostream &  O,
const Module = 0 
) const [virtual]

print - Print out the internal state of the pass. This is called by Analyze to print out the contents of an analysis. Otherwise it is not necessary to implement this method. Beware that the module pointer MAY be null. This automatically forwards to a virtual function that does not provide the Module* in case the analysis doesn't need it it can just be ignored.

Reimplemented from llvm::Pass.

Definition at line 33 of file IntervalPartition.cpp.

bool IntervalPartition::runOnFunction ( Function F  )  [virtual]

runOnFunction - Virtual method overriden by subclasses to do the per-function processing of the pass.

Implements llvm::FunctionPass.

Definition at line 66 of file IntervalPartition.cpp.

References E, F, llvm::intervals_begin(), and llvm::intervals_end().


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