reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
268 using BlockTraits = GraphTraits<BlockT *>; 269 using InvBlockTraits = GraphTraits<Inverse<BlockT *>>; 279 BlockT *exit; 286 using BBNodeMapT = std::map<BlockT *, std::unique_ptr<RegionNodeT>>; 293 void verifyBBInRegion(BlockT *BB) const; 298 void verifyWalk(BlockT *BB, std::set<BlockT *> *visitedBB) const; 298 void verifyWalk(BlockT *BB, std::set<BlockT *> *visitedBB) const; 312 RegionBase(BlockT *Entry, BlockT *Exit, RegionInfoT *RI, DomTreeT *DT, 312 RegionBase(BlockT *Entry, BlockT *Exit, RegionInfoT *RI, DomTreeT *DT, 323 BlockT *getEntry() const { 331 void replaceEntry(BlockT *BB); 337 void replaceExit(BlockT *BB); 346 void replaceEntryRecursive(BlockT *NewEntry); 355 void replaceExitRecursive(BlockT *NewExit); 360 BlockT *getExit() const { return exit; } 401 BlockT *getEnteringBlock() const; 408 BlockT *getExitingBlock() const; 413 bool getExitingBlocks(SmallVectorImpl<BlockT *> &Exitings) const; 449 bool contains(const BlockT *BB) const; 500 LoopT *outermostLoopInRegion(LoopInfoT *LI, BlockT *BB) const; 506 RegionT *getSubRegionNode(BlockT *BB) const; 514 RegionNodeT *getNode(BlockT *BB) const; 520 RegionNodeT *getBBNode(BlockT *BB) const; 577 typename std::conditional<IsConst, const BlockT, BlockT>::type *> { 577 typename std::conditional<IsConst, const BlockT, BlockT>::type *> { 580 typename std::conditional<IsConst, const BlockT, BlockT>::type *>; 580 typename std::conditional<IsConst, const BlockT, BlockT>::type *>; 603 BlockT *operator*() const {include/llvm/Analysis/RegionInfoImpl.h
44 RegionBase<Tr>::RegionBase(BlockT *Entry, BlockT *Exit, 44 RegionBase<Tr>::RegionBase(BlockT *Entry, BlockT *Exit, 57 void RegionBase<Tr>::replaceEntry(BlockT *BB) { 62 void RegionBase<Tr>::replaceExit(BlockT *BB) { 68 void RegionBase<Tr>::replaceEntryRecursive(BlockT *NewEntry) { 70 BlockT *OldEntry = getEntry(); 86 void RegionBase<Tr>::replaceExitRecursive(BlockT *NewExit) { 88 BlockT *OldExit = getExit(); 104 bool RegionBase<Tr>::contains(const BlockT *B) const { 105 BlockT *BB = const_cast<BlockT *>(B); 110 BlockT *entry = getEntry(), *exit = getExit(); 131 SmallVector<BlockT *, 8> ExitingBlocks; 134 for (BlockT *BB : ExitingBlocks) { 156 BlockT *BB) const { 163 typename RegionBase<Tr>::BlockT *RegionBase<Tr>::getEnteringBlock() const { 164 BlockT *entry = getEntry(); 165 BlockT *enteringBlock = nullptr; 167 for (BlockT *Pred : make_range(InvBlockTraits::child_begin(entry), 182 SmallVectorImpl<BlockT *> &Exitings) const { 191 BlockT *Pred = *PI; 204 typename RegionBase<Tr>::BlockT *RegionBase<Tr>::getExitingBlock() const { 205 BlockT *exit = getExit(); 206 BlockT *exitingBlock = nullptr; 211 for (BlockT *Pred : make_range(InvBlockTraits::child_begin(exit), 255 void RegionBase<Tr>::verifyBBInRegion(BlockT *BB) const { 259 BlockT *entry = getEntry(), *exit = getExit(); 261 for (BlockT *Succ : 269 for (BlockT *Pred : make_range(InvBlockTraits::child_begin(BB), 279 void RegionBase<Tr>::verifyWalk(BlockT *BB, std::set<BlockT *> *visited) const { 279 void RegionBase<Tr>::verifyWalk(BlockT *BB, std::set<BlockT *> *visited) const { 280 BlockT *exit = getExit(); 286 for (BlockT *Succ : 301 std::set<BlockT *> visited; 338 typename Tr::RegionT *RegionBase<Tr>::getSubRegionNode(BlockT *BB) const { 359 typename Tr::RegionNodeT *RegionBase<Tr>::getBBNode(BlockT *BB) const { 375 typename Tr::RegionNodeT *RegionBase<Tr>::getNode(BlockT *BB) const { 412 BlockT *BB = Element->template getNodeAs<BlockT>(); 412 BlockT *BB = Element->template getNodeAs<BlockT>(); 468 for (BlockT *Pred : make_range(InvBlockTraits::child_begin(getExit()), 480 for (BlockT *Pred : make_range(InvBlockTraits::child_begin(getExit()),