| /freebsd/contrib/llvm-project/llvm/include/llvm/Support/ |
| H A D | GenericLoopInfoImpl.h | 32 template <class BlockT, class LoopT> 33 void LoopBase<BlockT, LoopT>::getExitingBlocks( in getExitingBlocks() 34 SmallVectorImpl<BlockT *> &ExitingBlocks) const { in getExitingBlocks() 37 for (auto *Succ : children<BlockT *>(BB)) in getExitingBlocks() 47 template <class BlockT, class LoopT> 48 BlockT *LoopBase<BlockT, LoopT>::getExitingBlock() const { in getExitingBlock() 50 auto notInLoop = [&](BlockT *BB) { return !contains(BB); }; in getExitingBlock() 51 auto isExitBlock = [&](BlockT *BB, bool AllowRepeats) -> BlockT * { in getExitingBlock() 54 return any_of(children<BlockT *>(BB), notInLoop) ? BB : nullptr; in getExitingBlock() 57 return find_singleton<BlockT>(blocks(), isExitBlock); in getExitingBlock() [all …]
|
| H A D | GenericLoopInfo.h | 59 template <class BlockT, class LoopT> class LoopBase { 65 std::vector<BlockT *> Blocks; 67 SmallPtrSet<const BlockT *, 8> DenseBlockSet; 74 LoopBase(const LoopBase<BlockT, LoopT> &) = delete; 75 const LoopBase<BlockT, LoopT> & 76 operator=(const LoopBase<BlockT, LoopT> &) = delete; 90 BlockT *getHeader() const { return getBlocks().front(); } in getHeader() 134 bool contains(const BlockT *BB) const { in contains() 173 ArrayRef<BlockT *> getBlocks() const { in getBlocks() 177 typedef typename ArrayRef<BlockT *>::const_iterator block_iterator; [all …]
|
| /freebsd/contrib/llvm-project/llvm/include/llvm/Analysis/ |
| H A D | DominanceFrontierImpl.h | 33 template <class BlockT> 36 using DomTreeNodeT = DomTreeNodeBase<BlockT>; 38 DFCalculateWorkObject(BlockT *B, BlockT *P, const DomTreeNodeT *N, in DFCalculateWorkObject() 42 BlockT *currentBB; 43 BlockT *parentBB; 48 template <class BlockT, bool IsPostDom> 49 void DominanceFrontierBase<BlockT, IsPostDom>::print(raw_ostream &OS) const { in print() 58 const SetVector<BlockT *> &BBs = I->second; in print() 60 for (const BlockT *BB : BBs) { in print() 72 template <class BlockT, bool IsPostDom> [all …]
|
| H A D | RegionInfo.h | 85 using BlockT = BasicBlock; 119 using BlockT = typename Tr::BlockT; 133 PointerIntPair<BlockT *, 1, bool> entry; 148 inline RegionNodeBase(RegionT *Parent, BlockT *Entry, 172 inline BlockT *getEntry() const { return entry.getPointer(); } 256 using BlockT = typename Tr::BlockT; 265 using BlockTraits = GraphTraits<BlockT *>; 266 using InvBlockTraits = GraphTraits<Inverse<BlockT *>>; 276 BlockT *exit; 283 using BBNodeMapT = std::map<BlockT *, std::unique_ptr<RegionNodeT>>; [all …]
|
| H A D | RegionInfoImpl.h | 42 RegionBase<Tr>::RegionBase(BlockT *Entry, BlockT *Exit, in RegionBase() 55 void RegionBase<Tr>::replaceEntry(BlockT *BB) { in replaceEntry() 60 void RegionBase<Tr>::replaceExit(BlockT *BB) { in replaceExit() 66 void RegionBase<Tr>::replaceEntryRecursive(BlockT *NewEntry) { in replaceEntryRecursive() 68 BlockT *OldEntry = getEntry(); in replaceEntryRecursive() 84 void RegionBase<Tr>::replaceExitRecursive(BlockT *NewExit) { in replaceExitRecursive() 86 BlockT *OldExit = getExit(); in replaceExitRecursive() 102 bool RegionBase<Tr>::contains(const BlockT *B) const { in contains() 103 BlockT *BB = const_cast<BlockT *>(B); in contains() 108 BlockT *entry = getEntry(), *exit = getExit(); in contains() [all …]
|
| H A D | RegionIterator.h | 38 template <class NodeRef, class BlockT, class RegionT> class RNSuccIterator { 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>; 137 BlockT *BB = isRegionMode() ? getRegionSucc() : *BItor; 169 template <class NodeRef, class BlockT, class RegionT> 170 class RNSuccIterator<FlatIt<NodeRef>, BlockT, RegionT> { 171 using BlockTraits = GraphTraits<BlockT *>; [all …]
|
| H A D | DominanceFrontier.h | 39 template <class BlockT, bool IsPostDom> 44 using DomSetType = SetVector<BlockT *>; 45 using DomSetMapType = DenseMap<BlockT *, DomSetType>; // Dom set map 48 using BlockTraits = GraphTraits<BlockT *>; 52 SmallVector<BlockT *, IsPostDom ? 4 : 1> Roots; 61 const SmallVectorImpl<BlockT *> &getRoots() const { return Roots; } in getRoots() 63 BlockT *getRoot() const { in getRoot() 85 iterator find(BlockT *B) { return Frontiers.find(B); } in find() 86 const_iterator find(BlockT *B) const { return Frontiers.find(B); } in find() 102 template <class BlockT> [all …]
|
| H A D | EHUtils.h | 17 template <typename FunctionT, typename BlockT> 18 static void computeEHOnlyBlocks(FunctionT &F, DenseSet<BlockT *> &EHBlocks) { in computeEHOnlyBlocks() 23 DenseSet<BlockT *> WorkList; in computeEHOnlyBlocks() 24 DenseMap<BlockT *, Status> Statuses; in computeEHOnlyBlocks() 26 auto GetStatus = [&](BlockT *BB) { in computeEHOnlyBlocks() 31 auto CheckPredecessors = [&](BlockT *BB, Status Stat) { in computeEHOnlyBlocks() 42 auto AddSuccesors = [&](BlockT *BB) { in computeEHOnlyBlocks() 50 BlockT *StartBlock = &F.front(); in computeEHOnlyBlocks()
|
| H A D | BlockFrequencyInfoImpl.h | 541 template <class BlockT> struct TypeMap {}; 543 using BlockT = BasicBlock; 551 using BlockT = MachineBasicBlock; 559 template <class BlockT, class BFIImplT> 569 template <class BlockT> std::string getBlockName(const BlockT *BB) { 843 using BlockT = typename bfi_detail::TypeMap<BT>::BlockT; 850 using Successor = GraphTraits<const BlockT *>; 851 using Predecessor = GraphTraits<Inverse<const BlockT *>>; 853 bfi_detail::BFICallbackVH<BlockT, BlockFrequencyInfoImpl>; 860 std::vector<const BlockT *> RPOT; [all …]
|
| H A D | BlockFrequencyInfo.h | 32 template <class BlockT> class BlockFrequencyInfoImpl;
|
| /freebsd/contrib/llvm-project/llvm/include/llvm/ADT/ |
| H A D | GenericCycleInfo.h | 46 using BlockT = typename ContextT::BlockT; 59 SmallVector<BlockT *, 1> Entries; 66 using BlockSetVectorT = SetVector<BlockT *, SmallVector<BlockT *, 8>, 67 DenseSet<const BlockT *>, 8>; 78 mutable SmallVector<BlockT *, 4> ExitBlocksCache; 89 void appendEntry(BlockT *Block) { in appendEntry() 94 void appendBlock(BlockT *Block) { in appendBlock() 110 BlockT *getHeader() const { return Entries[0]; } in getHeader() 112 const SmallVectorImpl<BlockT *> & getEntries() const { in getEntries() 122 bool isEntry(const BlockT *Block) const { in isEntry() [all …]
|
| H A D | GenericCycleImpl.h | 49 SmallVectorImpl<BlockT *> &TmpStorage) const { in getExitBlocks() 58 for (BlockT *Block : blocks()) { in getExitBlocks() 63 BlockT *Succ = TmpStorage[Idx]; in getExitBlocks() 78 SmallVectorImpl<BlockT *> &TmpStorage) const { in getExitingBlocks() 81 for (BlockT *Block : blocks()) { in getExitingBlocks() 82 for (BlockT *Succ : successors(Block)) { in getExitingBlocks() 92 auto GenericCycle<ContextT>::getCyclePreheader() const -> BlockT * { 93 BlockT *Predecessor = getCyclePredecessor(); 110 auto GenericCycle<ContextT>::getCyclePredecessor() const -> BlockT * { 114 BlockT *Out = nullptr; [all …]
|
| H A D | GenericUniformityImpl.h | 91 using BlockT = typename ContextT::BlockT; 97 using const_iterator = typename std::vector<BlockT *>::const_iterator; 107 unsigned count(BlockT *BB) const { return POIndex.count(BB); } in count() 108 const BlockT *operator[](size_t idx) const { return m_order[idx]; } 110 void appendBlock(const BlockT &BB, bool isReducibleCycleHeader = false) { 119 unsigned getIndex(const BlockT *BB) const { in getIndex() 124 bool isReducibleCycleHeader(const BlockT *BB) const { in isReducibleCycleHeader() 129 SmallVector<const BlockT *> m_order; 130 DenseMap<const BlockT *, unsigned> POIndex; 131 SmallPtrSet<const BlockT *, 32> ReducibleCycleHeaders; [all …]
|
| H A D | GenericConvergenceVerifier.h | 25 using BlockT = typename ContextT::BlockT; 43 void visit(const BlockT &BB);
|
| H A D | GenericUniformityInfo.h | 31 using BlockT = typename ContextT::BlockT; 80 bool hasDivergentTerminator(const BlockT &B);
|
| /freebsd/contrib/llvm-project/llvm/include/llvm/IR/ |
| H A D | CFG.h | 138 template <class InstructionT, class BlockT> 140 : public iterator_facade_base<SuccIterator<InstructionT, BlockT>, 141 std::random_access_iterator_tag, BlockT, int, 142 BlockT *, BlockT *> { 145 using pointer = BlockT *; 146 using reference = BlockT *; 151 using Self = SuccIterator<InstructionT, BlockT>; 204 inline BlockT *operator*() const { return Inst->getSuccessor(Idx); } 207 inline BlockT *operator->() const { return operator*(); } 237 inline BlockT *getSource() { in getSource()
|
| H A D | SSAContext.h | 32 using BlockT = BasicBlock;
|
| H A D | GenericConvergenceVerifierImpl.h | 58 void GenericConvergenceVerifier<ContextT>::visit(const BlockT &BB) { in visit() 134 DenseMap<const BlockT *, SmallVector<const InstructionT *, 8>> LiveTokenMap; in verify()
|
| /freebsd/contrib/llvm-project/llvm/include/llvm/CodeGen/ |
| H A D | MachineSSAContext.h | 30 using BlockT = MachineBasicBlock;
|
| H A D | MachineBlockFrequencyInfo.h | 26 template <class BlockT> class BlockFrequencyInfoImpl;
|
| H A D | MachineRegionInfo.h | 32 using BlockT = MachineBasicBlock;
|
| /freebsd/contrib/telnet/libtelnet/ |
| H A D | encrypt.h | 62 typedef unsigned char *BlockT; typedef
|
| /freebsd/contrib/llvm-project/llvm/include/llvm/Transforms/Utils/ |
| H A D | SampleProfileLoaderBaseImpl.h | 60 template <typename BlockT> struct IRTraits;
|