LLVM 22.0.0git
Dominators.h File Reference
#include "llvm/ADT/APInt.h"
#include "llvm/ADT/ArrayRef.h"
#include "llvm/ADT/DenseMapInfo.h"
#include "llvm/ADT/DepthFirstIterator.h"
#include "llvm/ADT/Hashing.h"
#include "llvm/ADT/PointerIntPair.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/ADT/Twine.h"
#include "llvm/ADT/ilist_iterator.h"
#include "llvm/IR/BasicBlock.h"
#include "llvm/IR/CFG.h"
#include "llvm/IR/PassManager.h"
#include "llvm/IR/Use.h"
#include "llvm/Pass.h"
#include "llvm/Support/CFGDiff.h"
#include "llvm/Support/CFGUpdate.h"
#include "llvm/Support/Compiler.h"
#include "llvm/Support/GenericDomTree.h"
#include <algorithm>
#include <utility>

Go to the source code of this file.

Classes

class  llvm::BasicBlockEdge
struct  llvm::DenseMapInfo< BasicBlockEdge >
class  llvm::DominatorTree
 Concrete subclass of DominatorTreeBase that is used to compute a normal dominator tree. More...
struct  llvm::DomTreeGraphTraitsBase< Node, ChildIterator >
struct  llvm::GraphTraits< DomTreeNode * >
struct  llvm::GraphTraits< const DomTreeNode * >
struct  llvm::GraphTraits< DominatorTree * >
class  llvm::DominatorTreeAnalysis
 Analysis pass which computes a DominatorTree. More...
class  llvm::DominatorTreePrinterPass
 Printer pass for the DominatorTree. More...
struct  llvm::DominatorTreeVerifierPass
 Verifier pass for the DominatorTree. More...
class  llvm::DominatorTreeWrapperPass
 Legacy analysis pass which computes a DominatorTree. More...

Namespaces

namespace  llvm
 This is an optimization pass for GlobalISel generic memory operations.
namespace  llvm::DomTreeBuilder

Typedefs

using llvm::DomTreeBuilder::BBDomTree = DomTreeBase<BasicBlock>
using llvm::DomTreeBuilder::BBPostDomTree = PostDomTreeBase<BasicBlock>
using llvm::DomTreeBuilder::BBUpdates = ArrayRef<llvm::cfg::Update<BasicBlock *>>
using llvm::DomTreeBuilder::BBDomTreeGraphDiff = GraphDiff<BasicBlock *, false>
using llvm::DomTreeBuilder::BBPostDomTreeGraphDiff = GraphDiff<BasicBlock *, true>
using llvm::DomTreeNode = DomTreeNodeBase<BasicBlock>

Functions

template LLVM_TEMPLATE_ABI void llvm::DomTreeBuilder::Calculate< BBDomTree > (BBDomTree &DT)
template LLVM_TEMPLATE_ABI void llvm::DomTreeBuilder::CalculateWithUpdates< BBDomTree > (BBDomTree &DT, BBUpdates U)
template LLVM_TEMPLATE_ABI void llvm::DomTreeBuilder::Calculate< BBPostDomTree > (BBPostDomTree &DT)
template LLVM_TEMPLATE_ABI void llvm::DomTreeBuilder::InsertEdge< BBDomTree > (BBDomTree &DT, BasicBlock *From, BasicBlock *To)
template LLVM_TEMPLATE_ABI void llvm::DomTreeBuilder::InsertEdge< BBPostDomTree > (BBPostDomTree &DT, BasicBlock *From, BasicBlock *To)
template LLVM_TEMPLATE_ABI void llvm::DomTreeBuilder::DeleteEdge< BBDomTree > (BBDomTree &DT, BasicBlock *From, BasicBlock *To)
template LLVM_TEMPLATE_ABI void llvm::DomTreeBuilder::DeleteEdge< BBPostDomTree > (BBPostDomTree &DT, BasicBlock *From, BasicBlock *To)
template LLVM_TEMPLATE_ABI void llvm::DomTreeBuilder::ApplyUpdates< BBDomTree > (BBDomTree &DT, BBDomTreeGraphDiff &, BBDomTreeGraphDiff *)
template LLVM_TEMPLATE_ABI void llvm::DomTreeBuilder::ApplyUpdates< BBPostDomTree > (BBPostDomTree &DT, BBPostDomTreeGraphDiff &, BBPostDomTreeGraphDiff *)
template LLVM_TEMPLATE_ABI bool llvm::DomTreeBuilder::Verify< BBDomTree > (const BBDomTree &DT, BBDomTree::VerificationLevel VL)
template LLVM_TEMPLATE_ABI bool llvm::DomTreeBuilder::Verify< BBPostDomTree > (const BBPostDomTree &DT, BBPostDomTree::VerificationLevel VL)

Variables

template class LLVM_TEMPLATE_ABI llvm::DomTreeNodeBase< BasicBlock >
template class LLVM_TEMPLATE_ABI llvm::DominatorTreeBase< BasicBlock, false >
template class LLVM_TEMPLATE_ABI llvm::DominatorTreeBase< BasicBlock, true >
LLVM_ABI bool llvm::VerifyDomInfo = false
 Enables verification of dominator trees.