class RNSuccIterator

Declaration

template <class NodeRef, class BlockT, class RegionT>
class RNSuccIterator { /* full declaration omitted */ };

Description

Hierarchical RegionNode successor iterator. This iterator iterates over all successors of a RegionNode. For a BasicBlock RegionNode it skips all BasicBlocks that are not part of the parent Region. Furthermore for BasicBlocks that start a subregion, a RegionNode representing the subregion is returned. For a subregion RegionNode there is just one successor. The RegionNode representing the exit of the subregion.

Declared at: llvm/include/llvm/Analysis/RegionIterator.h:38

Templates

NodeRef
BlockT
RegionT

Member Variables

private PointerIntPair<NodeRef, 2, llvm::RNSuccIterator::ItMode> Node
private llvm::RNSuccIterator::SuccIterTy BItor

Method Overview

Methods

inline RNSuccIterator<NodeRef, BlockT, RegionT>(
    NodeRef node)

Description

Create begin iterator of a RegionNode.

Declared at: llvm/include/llvm/Analysis/RegionIterator.h:109

Parameters

NodeRef node

inline RNSuccIterator<NodeRef, BlockT, RegionT>(
    NodeRef node,
    bool)

Description

Create an end iterator.

Declared at: llvm/include/llvm/Analysis/RegionIterator.h:122

Parameters

NodeRef node
bool

void advanceRegionSucc()

Declared at: llvm/include/llvm/Analysis/RegionIterator.h:75

NodeRef getISucc(BlockT* BB) const

Declared at: llvm/include/llvm/Analysis/RegionIterator.h:87

Parameters

BlockT* BB

NodeRef getNode() const

Declared at: llvm/include/llvm/Analysis/RegionIterator.h:80

inline BlockT* getRegionSucc() const

Declared at: llvm/include/llvm/Analysis/RegionIterator.h:95

inline bool isExit(BlockT* BB) const

Declared at: llvm/include/llvm/Analysis/RegionIterator.h:101

Parameters

BlockT* BB

bool isRegionMode() const

Declared at: llvm/include/llvm/Analysis/RegionIterator.h:83