llvm::LoopBlocksTraversal

Traverse the blocks in a loop using a depth-first search.

Synopsis

Declared in <llvm/Analysis/LoopIterator.h>

class LoopBlocksTraversal
    : public PostOrderTraversalBase<LoopBlocksTraversal, GraphTraits<Function*>>

Base Classes

NameDescription
PostOrderTraversalBase<LoopBlocksTraversal, GraphTraits<Function*>>CRTP base for a single post-order graph walk.

Types

NameDescription
iterator Input iterator yielding nodes in post-order during a single traversal.

Member Functions

NameDescription
LoopBlocksTraversal [constructor]Construct a traversal that records results into Storage.
begin Begin a postorder traversal over the loop blocks.
end Return an iterator past the last block in the postorder traversal.
finishPostorder finishPostorder overloads
insertEdge insertEdge overloads

Protected Member Functions

NameDescription
derived Return this object cast to the CRTP derived type.
init Initialize post-order traversal at given start node.