|
LLVM 24.0.0git
|
#include "llvm/IR/CycleInfo.h"
Additional Inherited Members | |
| Public Types inherited from llvm::GenericCycleInfo< SSAContext > | |
| using | BlockT |
| using | FunctionT |
| using | const_toplevel_iterator |
| Iteration over top-level cycles. | |
| Public Member Functions inherited from llvm::GenericCycleInfo< SSAContext > | |
| GenericCycleInfo ()=default | |
| GenericCycleInfo & | operator= (GenericCycleInfo &&)=default |
| void | clear () |
| Reset the object to its initial state. | |
| void | compute (FunctionT &F) |
| Compute the cycle info for a function. | |
| void | splitCriticalEdge (BlockT *Pred, BlockT *Succ, BlockT *New) |
| const FunctionT * | getFunction () const |
| const SSAContext & | getSSAContext () const |
| auto | cycles () const |
| All cycles in forest preorder. | |
| CycleRef | getCycle (const BlockT *Block) const |
Find the innermost cycle containing Block. | |
| BlockT * | getHeader (CycleRef C) const |
| bool | isReducible (CycleRef C) const |
| CycleRef | getParentCycle (CycleRef C) const |
| unsigned | getDepth (CycleRef C) const |
| size_t | getNumBlocks (CycleRef C) const |
| ArrayRef< BlockT * > | getEntries (CycleRef C) const |
| bool | isEntry (CycleRef C, const BlockT *Block) const |
| void | setSingleEntry (CycleRef C, BlockT *Block) |
| bool | contains (CycleRef Outer, CycleRef Inner) const |
Returns true iff Outer contains Inner. O(1). Non-strict. | |
| iterator_range< const_child_iterator > | children (CycleRef C) const |
| Printable | printEntries (CycleRef C, const SSAContext &Ctx) const |
| ArrayRef< BlockT * > | getBlocks (CycleRef C) const |
Return the blocks of C, including those of nested cycles. | |
| CycleRef | getSmallestCommonCycle (CycleRef A, CycleRef B) const |
| Find the innermost cycle containing both given cycles. | |
| unsigned | getCycleDepth (const BlockT *Block) const |
Return the depth of the innermost cycle containing Block, or 0 if it is not contained in any cycle. | |
| CycleRef | getTopLevelParentCycle (const BlockT *Block) const |
| void | getExitBlocks (CycleRef C, SmallVectorImpl< BlockT * > &TmpStorage) const |
Return all of the successor blocks of C: the blocks outside of C which are branched to from within it. | |
| void | getExitingBlocks (CycleRef C, SmallVectorImpl< BlockT * > &TmpStorage) const |
Return all blocks of C that have a successor outside of C. | |
| BlockT * | getCyclePreheader (CycleRef C) const |
Return the preheader block for C. | |
| BlockT * | getCyclePredecessor (CycleRef C) const |
If C has exactly one entry with exactly one predecessor, return it, otherwise return nullptr. | |
| void | verifyCycle (CycleRef C) const |
Verify that C is actually a well-formed cycle in the CFG. | |
| void | verifyCycleNest (CycleRef C) const |
Verify the parent-child relations of C. | |
| void | addBlockToCycle (BlockT *Block, CycleRef C) |
Assumes that C is the innermost cycle containing Block. | |
| void | verify () const |
| Verify that the entire cycle tree well-formed. | |
| void | print (raw_ostream &Out) const |
| Print the cycle info. | |
| void | dump () const |
| const_toplevel_iterator | toplevel_begin () const |
| const_toplevel_iterator | toplevel_end () const |
| iterator_range< const_toplevel_iterator > | toplevel_cycles () const |
Definition at line 24 of file CycleInfo.h.