| /llvm-project-15.0.7/llvm/include/llvm/Analysis/ |
| H A D | LoopInfoImpl.h | 48 BlockT *LoopBase<BlockT, LoopT>::getExitingBlock() const { in getExitingBlock() 81 BlockT *LoopBase<BlockT, LoopT>::getExitBlock() const { in getExitBlock() 97 for (BlockT *Predecessor : children<Inverse<BlockT *>>(EB)) in hasDedicatedExits() 114 for (BlockT *Successor : children<BlockT *>(BB)) in getUniqueExitBlocksHelper() 137 BlockT *LoopBase<BlockT, LoopT>::getUniqueExitBlock() const { in getUniqueExitBlock() 166 BlockT *LoopBase<BlockT, LoopT>::getLoopPreheader() const { in getLoopPreheader() 194 BlockT *LoopBase<BlockT, LoopT>::getLoopPredecessor() const { in getLoopPredecessor() 215 BlockT *LoopBase<BlockT, LoopT>::getLoopLatch() const { in getLoopLatch() 242 BlockT *NewBB, LoopInfoBase<BlockT, LoopT> &LIB) { in addBasicBlockToLoop() argument 295 df_ext_iterator<BlockT *, df_iterator_default_set<BlockT *>> in verifyLoop() [all …]
|
| H A D | DominanceFrontierImpl.h | 33 template <class BlockT> 38 DFCalculateWorkObject(BlockT *B, BlockT *P, const DomTreeNodeT *N, in DFCalculateWorkObject() 42 BlockT *currentBB; 43 BlockT *parentBB; 49 void DominanceFrontierBase<BlockT, IsPostDom>::removeBlock(BlockT *BB) { in removeBlock() 66 iterator I, BlockT *Node) { in removeFromFrontier() 75 std::set<BlockT *> tmpSet; in compareDomSet() 76 for (BlockT *BB : DS2) in compareDomSet() 81 BlockT *Node = *I++; in compareDomSet() 109 BlockT *Node = I->first; in compare() [all …]
|
| H A D | RegionInfo.h | 121 using BlockT = typename Tr::BlockT; 258 using BlockT = typename Tr::BlockT; 278 BlockT *exit; 678 using BlockT = typename Tr::BlockT; 691 using BBtoBBMap = DenseMap<BlockT *, BlockT *>; 760 bool isCommonDomFrontier(BlockT *BB, BlockT *entry, BlockT *exit) const; 764 bool isRegion(BlockT *entry, BlockT *exit) const; 778 RegionT *createRegion(BlockT *entry, BlockT *exit); 836 BlockT *getMaxRegionExit(BlockT *BB) const; 850 RegionT *getCommonRegion(BlockT *A, BlockT *B) const { [all …]
|
| H A D | DominanceFrontier.h | 39 template <class BlockT, bool IsPostDom> 46 using BlockTraits = GraphTraits<BlockT *>; 50 SmallVector<BlockT *, IsPostDom ? 4 : 1> Roots; 61 BlockT *getRoot() const { in getRoot() 92 void removeBlock(BlockT *BB); 94 void addToFrontier(iterator I, BlockT *Node); 120 template <class BlockT> 122 : public DominanceFrontierBase<BlockT, false> { 124 using BlockTraits = GraphTraits<BlockT *>; 127 using DomTreeT = DomTreeBase<BlockT>; [all …]
|
| H A D | RegionInfoImpl.h | 42 RegionBase<Tr>::RegionBase(BlockT *Entry, BlockT *Exit, in RegionBase() 103 BlockT *BB = const_cast<BlockT *>(B); in contains() 189 BlockT *Pred = *PI; in getExitingBlocks() 259 for (BlockT *Succ : in verifyBBInRegion() 284 for (BlockT *Succ : in verifyWalk() 410 BlockT *BB = Element->template getNodeAs<BlockT>(); in addSubRegion() 556 BlockT *BB = Element->template getNodeAs<BlockT>(); in verifyBBMap() 564 bool RegionInfoBase<Tr>::isCommonDomFrontier(BlockT *BB, BlockT *entry, in isCommonDomFrontier() 576 bool RegionInfoBase<Tr>::isRegion(BlockT *entry, BlockT *exit) const { in isRegion() 616 void RegionInfoBase<Tr>::insertShortCut(BlockT *entry, BlockT *exit, in insertShortCut() [all …]
|
| H A D | LoopInfo.h | 79 std::vector<BlockT *> Blocks; 89 const LoopBase<BlockT, LoopT> & 259 BlockT *Header = getHeader(); in isLoopLatch() 269 BlockT *H = getHeader(); in getNumBackEdges() 301 BlockT *getExitBlock() const; 325 typedef std::pair<BlockT *, BlockT *> Edge; 346 BlockT *getLoopLatch() const; 352 BlockT *H = getHeader(); in getLoopLatches() 401 void addBasicBlockToLoop(BlockT *NewBB, LoopInfoBase<BlockT, LoopT> &LI); 459 void moveToHeader(BlockT *BB) { in moveToHeader() [all …]
|
| H A D | RegionIterator.h | 47 using BlockTraits = GraphTraits<BlockT *>; 87 NodeRef getISucc(BlockT *BB) const { in getISucc() 95 inline BlockT* getRegionSucc() const { in getRegionSucc() 101 inline bool isExit(BlockT* BB) const { in isExit() 106 using Self = RNSuccIterator<NodeRef, BlockT, RegionT>; 169 template <class NodeRef, class BlockT, class RegionT> 170 class RNSuccIterator<FlatIt<NodeRef>, BlockT, RegionT> { 171 using BlockTraits = GraphTraits<BlockT *>; 219 BlockT *BB = *Itor; 248 template <class NodeRef, class BlockT, class RegionT> [all …]
|
| H A D | BlockFrequencyInfoImpl.h | 549 using BlockT = BasicBlock; 575 template <class BlockT> std::string getBlockName(const BlockT *BB) { 852 using BlockT = typename bfi_detail::TypeMap<BT>::BlockT; 1145 for (const BlockT &BB : F) 1415 for (const BlockT &BB : *F) { 1525 for (const BlockT *DstBB : children<const BlockT *>(SrcBB)) { 1537 for (const BlockT &BB : *F) { 1549 for (const BlockT *DstBB : children<Inverse<const BlockT *>>(SrcBB)) { 1560 for (const BlockT &BB : *F) { 1646 using BlockT = BT; [all …]
|
| H A D | BlockFrequencyInfo.h | 31 template <class BlockT> class BlockFrequencyInfoImpl;
|
| /llvm-project-15.0.7/llvm/include/llvm/ADT/ |
| H A D | GenericCycleInfo.h | 50 using BlockT = typename ContextT::BlockT; 63 SmallVector<BlockT *, 1> Entries; 70 std::vector<BlockT *> Blocks; 111 bool contains(const BlockT *Block) const { in contains() 135 BlockT *getCyclePreheader() const; 139 BlockT *getCyclePredecessor() const; 226 using BlockT = typename ContextT::BlockT; 236 DenseMap<BlockT *, CycleT *> BlockMap; 344 template <typename BlockT> 348 template <typename BlockT> [all …]
|
| H A D | GenericCycleImpl.h | 52 for (BlockT *Block : blocks()) { in getExitBlocks() 57 BlockT *Succ = TmpStorage[Idx]; in getExitBlocks() 92 BlockT *Out = nullptr; 95 BlockT *Header = getHeader(); 109 using BlockT = typename ContextT::BlockT; variable 138 void run(BlockT *EntryBlock); 143 void dfs(BlockT *EntryBlock); 195 SmallVector<BlockT *, 8> Worklist; in run() 399 DenseSet<BlockT *> Blocks; in validateTree() 400 DenseSet<BlockT *> Entries; in validateTree() [all …]
|
| /llvm-project-15.0.7/llvm/include/llvm/IR/ |
| H A D | CFG.h | 137 template <class InstructionT, class BlockT> 139 : public iterator_facade_base<SuccIterator<InstructionT, BlockT>, 140 std::random_access_iterator_tag, BlockT, int, 141 BlockT *, BlockT *> { 144 using pointer = BlockT *; 145 using reference = BlockT *; 150 using Self = SuccIterator<InstructionT, BlockT>; 203 inline BlockT *operator*() const { return Inst->getSuccessor(Idx); } 206 inline BlockT *operator->() const { return operator*(); } 236 inline BlockT *getSource() { in getSource()
|
| H A D | SSAContext.h | 32 using BlockT = BasicBlock; 36 using DominatorTreeT = DominatorTreeBase<BlockT, false>;
|
| /llvm-project-15.0.7/llvm/include/llvm/CodeGen/ |
| H A D | MachineSSAContext.h | 39 using BlockT = MachineBasicBlock; 43 using DominatorTreeT = DominatorTreeBase<BlockT, false>;
|
| H A D | MachineBlockFrequencyInfo.h | 24 template <class BlockT> class BlockFrequencyInfoImpl;
|
| H A D | MachineRegionInfo.h | 32 using BlockT = MachineBasicBlock;
|
| /llvm-project-15.0.7/llvm/include/llvm/Transforms/Utils/ |
| H A D | SampleProfileInference.h | 33 template <class BlockT> struct TypeMap {};
|
| H A D | SampleProfileLoaderBaseImpl.h | 53 template <typename BlockT> struct IRTraits;
|