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

Wrapper class to LoopBlocksDFS that provides a standard begin()/end() interface for the DFS reverse post-order traversal of blocks in a loop body. More...

#include "llvm/Analysis/LoopIterator.h"

Public Member Functions

 LoopBlocksRPO (Loop *Container)
 
void perform (LoopInfo *LI)
 Traverse the loop blocks and store the DFS result. More...
 
LoopBlocksDFS::RPOIterator begin () const
 Reverse iterate over the cached postorder blocks. More...
 
LoopBlocksDFS::RPOIterator end () const
 

Detailed Description

Wrapper class to LoopBlocksDFS that provides a standard begin()/end() interface for the DFS reverse post-order traversal of blocks in a loop body.

Definition at line 173 of file LoopIterator.h.

Constructor & Destructor Documentation

◆ LoopBlocksRPO()

llvm::LoopBlocksRPO::LoopBlocksRPO ( Loop Container)
inline

Definition at line 178 of file LoopIterator.h.

Member Function Documentation

◆ begin()

LoopBlocksDFS::RPOIterator llvm::LoopBlocksRPO::begin ( ) const
inline

Reverse iterate over the cached postorder blocks.

Definition at line 186 of file LoopIterator.h.

References llvm::LoopBlocksDFS::beginRPO().

◆ end()

LoopBlocksDFS::RPOIterator llvm::LoopBlocksRPO::end ( ) const
inline

Definition at line 187 of file LoopIterator.h.

References llvm::LoopBlocksDFS::endRPO().

◆ perform()

void llvm::LoopBlocksRPO::perform ( LoopInfo LI)
inline

Traverse the loop blocks and store the DFS result.

Definition at line 181 of file LoopIterator.h.

References llvm::LoopBlocksDFS::perform().

Referenced by asmClobbersCTR(), CloneLoop(), collectSupportedLoops(), llvm::hoistRegion(), simplifyLoopInst(), unswitchBestCondition(), and unswitchNontrivialInvariants().


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