|
LLVM 23.0.0git
|
#include "llvm/CodeGen/MachineRegionInfo.h"
Public Member Functions | |
| LLVM_ABI | MachineRegion (MachineBasicBlock *Entry, MachineBasicBlock *Exit, MachineRegionInfo *RI, MachineDominatorTree *DT, MachineRegion *Parent=nullptr) |
| LLVM_ABI | ~MachineRegion () |
| bool | operator== (const MachineRegionNode &RN) const |
| Public Member Functions inherited from llvm::RegionBase< RegionTraits< MachineFunction > > | |
| RegionBase (BlockT *Entry, BlockT *Exit, RegionInfoT *RI, DomTreeT *DT, RegionT *Parent=nullptr) | |
| Create a new region. | |
| RegionBase & | operator= (const RegionBase &)=delete |
| ~RegionBase () | |
| Delete the Region and all its subregions. | |
| BlockT * | getEntry () const |
| Get the entry BasicBlock of the Region. | |
| void | replaceEntry (BlockT *BB) |
| Replace the entry basic block of the region with the new basic block. | |
| void | replaceExit (BlockT *BB) |
| Replace the exit basic block of the region with the new basic block. | |
| void | replaceEntryRecursive (BlockT *NewEntry) |
| Recursively replace the entry basic block of the region. | |
| void | replaceExitRecursive (BlockT *NewExit) |
| Recursively replace the exit basic block of the region. | |
| BlockT * | getExit () const |
| Get the exit BasicBlock of the Region. | |
| RegionT * | getParent () const |
| Get the parent of the Region. | |
| RegionNodeT * | getNode () const |
| Get the RegionNode representing the current Region. | |
| unsigned | getDepth () const |
| Get the nesting level of this Region. | |
| bool | isTopLevelRegion () const |
| Check if a Region is the TopLevel region. | |
| RegionT * | getExpandedRegion () const |
| Return a new (non-canonical) region, that is obtained by joining this region with its predecessors. | |
| BlockT * | getEnteringBlock () const |
| Return the first block of this region's single entry edge, if existing. | |
| BlockT * | getExitingBlock () const |
| Return the first block of this region's single exit edge, if existing. | |
| bool | getExitingBlocks (SmallVectorImpl< BlockT * > &Exitings) const |
| Collect all blocks of this region's single exit edge, if existing. | |
| bool | isSimple () const |
| Is this a simple region? | |
| std::string | getNameStr () const |
| Returns the name of the Region. | |
| RegionInfoT * | getRegionInfo () const |
| Return the RegionInfo object, that belongs to this Region. | |
| void | print (raw_ostream &OS, bool printTree=true, unsigned level=0, PrintStyle Style=PrintNone) const |
| Print the region. | |
| void | dump () const |
| Print the region to stderr. | |
| bool | contains (const BlockT *BB) const |
| Check if the region contains a BasicBlock. | |
| LoopT * | outermostLoopInRegion (LoopT *L) const |
| Get the outermost loop in the region that contains a loop. | |
| RegionT * | getSubRegionNode (BlockT *BB) const |
| Get the subregion that starts at a BasicBlock. | |
| RegionNodeT * | getBBNode (BlockT *BB) const |
| Get the BasicBlock RegionNode for a BasicBlock. | |
| void | addSubRegion (RegionT *SubRegion, bool moveChildren=false) |
| Add a new subregion to this Region. | |
| RegionT * | removeSubRegion (RegionT *SubRegion) |
| Remove a subregion from this Region. | |
| void | transferChildrenTo (RegionT *To) |
| Move all direct child nodes of this Region to another Region. | |
| void | verifyRegion () const |
| Verify if the region is a correct region. | |
| void | clearNodeCache () |
| Clear the cache for BB RegionNodes. | |
| iterator | begin () |
| iterator | end () |
| block_iterator | block_begin () |
| block_iterator | block_end () |
| block_range | blocks () |
| Returns a range view of the basic blocks in the region. | |
| element_iterator | element_begin () |
| element_iterator | element_end () |
| iterator_range< element_iterator > | elements () |
| Public Member Functions inherited from llvm::RegionNodeBase< RegionTraits< MachineFunction > > | |
| BasicBlock * | getNodeAs () const |
| Region * | getNodeAs () const |
| MachineBasicBlock * | getNodeAs () const |
| MachineRegion * | getNodeAs () const |
| RegionNodeBase & | operator= (const RegionNodeBase &)=delete |
| RegionT * | getParent () const |
| Get the parent Region of this RegionNode. | |
| BlockT * | getEntry () const |
| Get the entry BasicBlock of this RegionNode. | |
| bool | isSubRegion () const |
| Is this RegionNode a subregion? | |
Additional Inherited Members | |
| Public Types inherited from llvm::RegionBase< RegionTraits< MachineFunction > > | |
| enum | PrintStyle |
| PrintStyle - Print region in difference ways. More... | |
| using | iterator |
| using | const_iterator |
| using | block_iterator |
| using | const_block_iterator |
| using | block_range |
| using | const_block_range |
| using | element_iterator |
| using | const_element_iterator |
| Public Types inherited from llvm::RegionNodeBase< RegionTraits< MachineFunction > > | |
| using | BlockT |
| using | RegionT |
| Protected Member Functions inherited from llvm::RegionNodeBase< RegionTraits< MachineFunction > > | |
| RegionNodeBase (RegionT *Parent, BlockT *Entry, bool isSubRegion=false) | |
| Create a RegionNode. | |
Definition at line 61 of file MachineRegionInfo.h.
| MachineRegion::MachineRegion | ( | MachineBasicBlock * | Entry, |
| MachineBasicBlock * | Exit, | ||
| MachineRegionInfo * | RI, | ||
| MachineDominatorTree * | DT, | ||
| MachineRegion * | Parent = nullptr ) |
Definition at line 38 of file MachineRegionInfo.cpp.
References MachineRegion(), and llvm::RegionBase< RegionTraits< MachineFunction > >::RegionBase().
Referenced by MachineRegion().
|
default |
References LLVM_ABI.
|
inline |
Definition at line 68 of file MachineRegionInfo.h.