LLVM  8.0.1
Public Types | Public Member Functions | List of all members
llvm::RegionInfo Class Reference

#include "llvm/Analysis/RegionInfo.h"

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

Public Types

using Base = RegionInfoBase< RegionTraits< Function > >
 

Public Member Functions

 RegionInfo ()
 
 RegionInfo (RegionInfo &&Arg)
 
RegionInfooperator= (RegionInfo &&RHS)
 
 ~RegionInfo () override
 
bool invalidate (Function &F, const PreservedAnalyses &PA, FunctionAnalysisManager::Invalidator &)
 Handle invalidation explicitly. More...
 
void updateStatistics (Region *R) final
 
void recalculate (Function &F, DominatorTree *DT, PostDominatorTree *PDT, DominanceFrontier *DF)
 
void view ()
 Opens a viewer to show the GraphViz visualization of the regions. More...
 
void viewOnly ()
 Opens a viewer to show the GraphViz visualization of this region without instructions in the BasicBlocks. More...
 
- Public Member Functions inherited from llvm::RegionInfoBase< RegionTraits< Function > >
 RegionInfoBase (const RegionInfoBase &)=delete
 
RegionInfoBaseoperator= (const RegionInfoBase &)=delete
 
void print (raw_ostream &OS) const
 
void dump () const
 
void releaseMemory ()
 
RegionT * getRegionFor (BlockT *BB) const
 Get the smallest region that contains a BasicBlock. More...
 
void setRegionFor (BlockT *BB, RegionT *R)
 Set the smallest region that surrounds a basic block. More...
 
RegionT * operator[] (BlockT *BB) const
 A shortcut for getRegionFor(). More...
 
BlockT * getMaxRegionExit (BlockT *BB) const
 Return the exit of the maximal refined region, that starts at a BasicBlock. More...
 
RegionT * getCommonRegion (RegionT *A, RegionT *B) const
 Find the smallest region that contains two regions. More...
 
RegionT * getCommonRegion (BlockT *A, BlockT *B) const
 Find the smallest region that contains two basic blocks. More...
 
RegionT * getCommonRegion (SmallVectorImpl< RegionT * > &Regions) const
 Find the smallest region that contains a set of regions. More...
 
RegionT * getCommonRegion (SmallVectorImpl< BlockT * > &BBs) const
 Find the smallest region that contains a set of basic blocks. More...
 
RegionT * getTopLevelRegion () const
 
void clearNodeCache ()
 Clear the Node Cache for all Regions. More...
 
void verifyAnalysis () const
 

Additional Inherited Members

- Static Public Attributes inherited from llvm::RegionInfoBase< RegionTraits< Function > >
static bool VerifyRegionInfo
 
static RegionT::PrintStyle printStyle
 
- Protected Member Functions inherited from llvm::RegionInfoBase< RegionTraits< Function > >
void updateRegionTree (RegionInfoT &RI, TheRegionT *R)
 Update refences to a RegionInfoT held by the RegionT managed here. More...
 

Detailed Description

Definition at line 905 of file RegionInfo.h.

Member Typedef Documentation

◆ Base

Definition at line 907 of file RegionInfo.h.

Constructor & Destructor Documentation

◆ RegionInfo() [1/2]

RegionInfo::RegionInfo ( )
explicitdefault

Referenced by llvm::Region::Region().

◆ RegionInfo() [2/2]

llvm::RegionInfo::RegionInfo ( RegionInfo &&  Arg)
inline

Definition at line 911 of file RegionInfo.h.

◆ ~RegionInfo()

RegionInfo::~RegionInfo ( )
overridedefault

Referenced by llvm::Region::Region().

Member Function Documentation

◆ invalidate()

bool RegionInfo::invalidate ( Function F,
const PreservedAnalyses PA,
FunctionAnalysisManager::Invalidator  
)

Handle invalidation explicitly.

Definition at line 81 of file RegionInfo.cpp.

References llvm::PreservedAnalyses::getChecker().

◆ operator=()

RegionInfo& llvm::RegionInfo::operator= ( RegionInfo &&  RHS)
inline

Definition at line 915 of file RegionInfo.h.

References F().

◆ recalculate()

void RegionInfo::recalculate ( Function F,
DominatorTree DT,
PostDominatorTree PDT,
DominanceFrontier DF 
)

◆ updateStatistics()

void RegionInfo::updateStatistics ( Region R)
final

Definition at line 90 of file RegionInfo.cpp.

References llvm::RegionBase< Tr >::isSimple().

◆ view()

void RegionInfo::view ( )

Opens a viewer to show the GraphViz visualization of the regions.

Useful during debugging as an alternative to dump().

Definition at line 111 of file RegionInfo.cpp.

References llvm::viewRegion().

◆ viewOnly()

void RegionInfo::viewOnly ( )

Opens a viewer to show the GraphViz visualization of this region without instructions in the BasicBlocks.

Useful during debugging as an alternative to dump().

Definition at line 113 of file RegionInfo.cpp.

References llvm::viewRegionOnly().


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