class PopulateLoopsDFS
Declaration
template <class BlockT, class LoopT>
class PopulateLoopsDFS { /* full declaration omitted */ };
Description
Populate all loop data in a stable order during a single forward DFS.
Declared at: llvm/include/llvm/Analysis/LoopInfoImpl.h:475
Templates
- BlockT
- LoopT
Method Overview
- public PopulateLoopsDFS<BlockT, LoopT>(LoopInfoBase<BlockT, LoopT> * li)
- protected void insertIntoLoop(BlockT * Block)
- public void traverse(BlockT * EntryBlock)
Methods
¶PopulateLoopsDFS<BlockT, LoopT>(
LoopInfoBase<BlockT, LoopT>* li)
PopulateLoopsDFS<BlockT, LoopT>(
LoopInfoBase<BlockT, LoopT>* li)
Declared at: llvm/include/llvm/Analysis/LoopInfoImpl.h:482
Parameters
- LoopInfoBase<BlockT, LoopT>* li
¶void insertIntoLoop(BlockT* Block)
void insertIntoLoop(BlockT* Block)
Description
Add a single Block to its ancestor loops in PostOrder. If the block is a subloop header, add the subloop to its parent in PostOrder, then reverse the Block and Subloop vectors of the now complete subloop to achieve RPO.
Declared at: llvm/include/llvm/Analysis/LoopInfoImpl.h:487
Parameters
- BlockT* Block
¶void traverse(BlockT* EntryBlock)
void traverse(BlockT* EntryBlock)
Description
Top-level driver for the forward DFS within the loop.
Declared at: llvm/include/llvm/Analysis/LoopInfoImpl.h:484
Parameters
- BlockT* EntryBlock