LLVM 20.0.0git
|
#include "llvm/Analysis/DominanceFrontier.h"
Public Types | |
using | DomTreeT = DomTreeBase< BasicBlock > |
using | DomTreeNodeT = DomTreeNodeBase< BasicBlock > |
using | DomSetType = DominanceFrontierBase< BasicBlock, false >::DomSetType |
using | iterator = DominanceFrontierBase< BasicBlock, false >::iterator |
using | const_iterator = DominanceFrontierBase< BasicBlock, false >::const_iterator |
Public Types inherited from llvm::ForwardDominanceFrontierBase< BasicBlock > | |
using | DomTreeT = DomTreeBase< BasicBlock > |
using | DomTreeNodeT = DomTreeNodeBase< BasicBlock > |
using | DomSetType = typename DominanceFrontierBase< BasicBlock, false >::DomSetType |
Public Types inherited from llvm::DominanceFrontierBase< BlockT, IsPostDom > | |
using | DomSetType = SetVector< BlockT * > |
using | DomSetMapType = DenseMap< BlockT *, DomSetType > |
using | iterator = typename DomSetMapType::iterator |
using | const_iterator = typename DomSetMapType::const_iterator |
Public Member Functions | |
bool | invalidate (Function &F, const PreservedAnalyses &PA, FunctionAnalysisManager::Invalidator &) |
Handle invalidation explicitly. | |
Public Member Functions inherited from llvm::ForwardDominanceFrontierBase< BasicBlock > | |
void | analyze (DomTreeT &DT) |
const DomSetType & | calculate (const DomTreeT &DT, const DomTreeNodeT *Node) |
Public Member Functions inherited from llvm::DominanceFrontierBase< BlockT, IsPostDom > | |
DominanceFrontierBase ()=default | |
const SmallVectorImpl< BlockT * > & | getRoots () const |
getRoots - Return the root blocks of the current CFG. | |
BlockT * | getRoot () const |
bool | isPostDominator () const |
isPostDominator - Returns true if analysis based of postdoms | |
void | releaseMemory () |
iterator | begin () |
const_iterator | begin () const |
iterator | end () |
const_iterator | end () const |
iterator | find (BlockT *B) |
const_iterator | find (BlockT *B) const |
iterator | addBasicBlock (BlockT *BB, const DomSetType &frontier) |
void | removeBlock (BlockT *BB) |
removeBlock - Remove basic block BB's frontier. | |
void | addToFrontier (iterator I, BlockT *Node) |
void | removeFromFrontier (iterator I, BlockT *Node) |
bool | compareDomSet (DomSetType &DS1, const DomSetType &DS2) const |
compareDomSet - Return false if two domsets match. | |
bool | compare (DominanceFrontierBase &Other) const |
compare - Return false if the other dominance frontier base matches this dominance frontier base. | |
void | print (raw_ostream &OS) const |
print - Convert to human readable form | |
void | dump () const |
dump - Dump the dominance frontier to dbgs(). | |
Additional Inherited Members | |
Protected Types inherited from llvm::DominanceFrontierBase< BlockT, IsPostDom > | |
using | BlockTraits = GraphTraits< BlockT * > |
Protected Attributes inherited from llvm::DominanceFrontierBase< BlockT, IsPostDom > | |
DomSetMapType | Frontiers |
SmallVector< BlockT *, IsPostDom ? 4 :1 > | Roots |
Static Protected Attributes inherited from llvm::DominanceFrontierBase< BlockT, IsPostDom > | |
static constexpr bool | IsPostDominators = IsPostDom |
Definition at line 143 of file DominanceFrontier.h.
using llvm::DominanceFrontier::const_iterator = DominanceFrontierBase<BasicBlock, false>::const_iterator |
Definition at line 149 of file DominanceFrontier.h.
using llvm::DominanceFrontier::DomSetType = DominanceFrontierBase<BasicBlock, false>::DomSetType |
Definition at line 147 of file DominanceFrontier.h.
Definition at line 146 of file DominanceFrontier.h.
Definition at line 145 of file DominanceFrontier.h.
using llvm::DominanceFrontier::iterator = DominanceFrontierBase<BasicBlock, false>::iterator |
Definition at line 148 of file DominanceFrontier.h.
bool DominanceFrontier::invalidate | ( | Function & | F, |
const PreservedAnalyses & | PA, | ||
FunctionAnalysisManager::Invalidator & | |||
) |
Handle invalidation explicitly.
Definition at line 69 of file DominanceFrontier.cpp.
References llvm::PreservedAnalyses::getChecker().