LLVM API Documentation

llvm::PostETForest Struct Reference

#include <PostDominators.h>

Inheritance diagram for llvm::PostETForest:

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

Collaboration graph
[legend]
List of all members.

Public Member Functions

 PostETForest ()
virtual void getAnalysisUsage (AnalysisUsage &AU) const
virtual bool runOnFunction (Function &F)
void calculate (const ImmediatePostDominators &ID)
ETNodegetNodeForBlock (BasicBlock *BB)

Detailed Description

PostETForest Class - Concrete subclass of ETForestBase that is used to compute a forwards post-dominator ET-Forest.

Definition at line 90 of file PostDominators.h.


Constructor & Destructor Documentation

llvm::PostETForest::PostETForest (  )  [inline]

Definition at line 91 of file PostDominators.h.


Member Function Documentation

virtual void llvm::PostETForest::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::ETForestBase.

Definition at line 93 of file PostDominators.h.

References llvm::AnalysisUsage::addRequired(), and llvm::AnalysisUsage::setPreservesAll().

virtual bool llvm::PostETForest::runOnFunction ( Function F  )  [inline, virtual]

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

Implements llvm::FunctionPass.

Definition at line 98 of file PostDominators.h.

References calculate(), llvm::ETForestBase::reset(), and llvm::DominatorBase::Roots.

void PostETForest::calculate ( const ImmediatePostDominators ID  ) 

Definition at line 286 of file PostDominators.cpp.

References llvm::ETNode::assignDFSNumber(), BB, llvm::ETForestBase::DFSInfoValid, E, getNodeForBlock(), llvm::ETNode::hasFather(), llvm::idf_begin(), llvm::idf_end(), llvm::ETForestBase::Nodes, llvm::DominatorBase::Roots, and llvm::ETNode::setFather().

Referenced by runOnFunction().

ETNode * PostETForest::getNodeForBlock ( BasicBlock BB  ) 

Definition at line 264 of file PostDominators.cpp.

References BB, llvm::ETForestBase::Nodes, and llvm::ETNode::setFather().

Referenced by calculate().


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