Home
last modified time | relevance | path

Searched refs:BlockT (Results 1 – 23 of 23) sorted by relevance

/freebsd/contrib/llvm-project/llvm/include/llvm/Support/
H A DGenericLoopInfoImpl.h32 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 DGenericLoopInfo.h59 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 *> in getBlocks()
[all...]
/freebsd/contrib/llvm-project/llvm/include/llvm/Analysis/
H A DDominanceFrontierImpl.h33 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>::removeBlock(BlockT *BB) { in removeBlock()
56 template <class BlockT, boo
98 compare(DominanceFrontierBase<BlockT,IsPostDom> & Other) compare() argument
[all...]
H A DRegionInfo.h77 // BlockT
87 using BlockT = BasicBlock;
121 using BlockT = typename Tr::BlockT;
135 PointerIntPair<BlockT *, 1, bool> entry;
150 inline RegionNodeBase(RegionT *Parent, BlockT *Entry,
174 inline BlockT *getEntry() const { return entry.getPointer(); }
258 using BlockT = typename Tr::BlockT;
267 using BlockTraits = GraphTraits<BlockT *>;
[all...]
H A DRegionInfoImpl.h42 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 *B in contains()
[all...]
H A DDominanceFrontier.h40 template <class BlockT, bool IsPostDom>
45 using DomSetType = SetVector<BlockT *>;
46 using DomSetMapType = DenseMap<BlockT *, DomSetType>; // Dom set map
49 using BlockTraits = GraphTraits<BlockT *>;
53 SmallVector<BlockT *, IsPostDom ? 4 : 1> Roots;
62 const SmallVectorImpl<BlockT *> &getRoots() const { return Roots; } in getRoots()
64 BlockT *getRoot() const { in getRoot()
86 iterator find(BlockT *B) { return Frontiers.find(B); } in find()
87 const_iterator find(BlockT *B) const { return Frontiers.find(B); } in find()
89 iterator addBasicBlock(BlockT *BB, const DomSetType &frontier) { in addBasicBlock()
[all …]
H A DRegionIterator.h38 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 DEHUtils.h17 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()
33 auto CheckPredecessors = [&](BlockT *BB, Status Stat) { in computeEHOnlyBlocks()
44 auto AddSuccesors = [&](BlockT *BB) { in computeEHOnlyBlocks()
52 BlockT *StartBlock = &F.front(); in computeEHOnlyBlocks()
H A DBlockFrequencyInfoImpl.h544 template <class BlockT> struct TypeMap {};
546 using BlockT = BasicBlock;
554 using BlockT = MachineBasicBlock;
562 template <class BlockT, class BFIImplT>
572 template <class BlockT> std::string getBlockName(const BlockT *BB) {
849 using BlockT = typename bfi_detail::TypeMap<BT>::BlockT;
856 using Successor = GraphTraits<const BlockT *>;
857 using Predecessor = GraphTraits<Inverse<const BlockT *>>;
859 bfi_detail::BFICallbackVH<BlockT, BlockFrequencyInfoImpl>;
866 std::vector<const BlockT *> RPOT;
[all …]
H A DBlockFrequencyInfo.h32 template <class BlockT> class BlockFrequencyInfoImpl;
/freebsd/contrib/llvm-project/llvm/include/llvm/ADT/
H A DGenericCycleInfo.h46 using BlockT = typename ContextT::BlockT;
59 SmallVector<BlockT *, 1> Entries;
66 using BlockSetVectorT = SetVector<BlockT *, SmallVector<BlockT *, 8>,
67 DenseSet<const BlockT *>, 8>;
85 void appendEntry(BlockT *Block) { Entries.push_back(Block); } in appendEntry()
86 void appendBlock(BlockT *Block) { Blocks.insert(Block); } in appendBlock()
99 BlockT *getHeader() const { return Entries[0]; } in getHeader()
101 const SmallVectorImpl<BlockT *> & getEntries() const { in getEntries()
106 bool isEntry(const BlockT *Block) const { in isEntry()
111 bool contains(const BlockT *Block) const { return Blocks.contains(Block); } in contains()
[all …]
H A DGenericCycleImpl.h48 SmallVectorImpl<BlockT *> &TmpStorage) const { in getExitBlocks()
52 for (BlockT *Block : blocks()) { in getExitBlocks()
57 BlockT *Succ = TmpStorage[Idx]; in getExitBlocks()
71 SmallVectorImpl<BlockT *> &TmpStorage) const { in getExitingBlocks()
74 for (BlockT *Block : blocks()) { in getExitingBlocks()
75 for (BlockT *Succ : successors(Block)) { in getExitingBlocks()
85 auto GenericCycle<ContextT>::getCyclePreheader() const -> BlockT * {
86 BlockT *Predecessor = getCyclePredecessor();
103 auto GenericCycle<ContextT>::getCyclePredecessor() const -> BlockT * {
107 BlockT *Out = nullptr;
[all …]
H A DGenericUniformityImpl.h88 using BlockT = typename ContextT::BlockT;
94 using const_iterator = typename std::vector<BlockT *>::const_iterator;
104 unsigned count(BlockT *BB) const { return POIndex.count(BB); } in count()
105 const BlockT *operator[](size_t idx) const { return m_order[idx]; }
107 void appendBlock(const BlockT &BB, bool isReducibleCycleHeader = false) {
116 unsigned getIndex(const BlockT *BB) const { in getIndex()
121 bool isReducibleCycleHeader(const BlockT *BB) const { in isReducibleCycleHeader()
126 SmallVector<const BlockT *> m_order;
127 DenseMap<const BlockT *, unsigned> POIndex;
128 SmallPtrSet<const BlockT *, 32> ReducibleCycleHeaders;
[all …]
H A DGenericConvergenceVerifier.h25 using BlockT = typename ContextT::BlockT;
43 void visit(const BlockT &BB);
H A DGenericUniformityInfo.h31 using BlockT = typename ContextT::BlockT;
77 bool hasDivergentTerminator(const BlockT &B);
/freebsd/contrib/llvm-project/llvm/include/llvm/IR/
H A DCFG.h137 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 DSSAContext.h32 using BlockT = BasicBlock;
H A DGenericConvergenceVerifierImpl.h58 void GenericConvergenceVerifier<ContextT>::visit(const BlockT &BB) { in visit()
137 DenseMap<const BlockT *, SmallVector<const InstructionT *, 8>> LiveTokenMap; in verify()
/freebsd/contrib/llvm-project/llvm/include/llvm/CodeGen/
H A DMachineSSAContext.h36 using BlockT = MachineBasicBlock;
H A DMachineBlockFrequencyInfo.h25 template <class BlockT> class BlockFrequencyInfoImpl;
H A DMachineRegionInfo.h32 using BlockT = MachineBasicBlock;
/freebsd/contrib/telnet/libtelnet/
H A Dencrypt.h62 typedef unsigned char *BlockT; typedef
/freebsd/contrib/llvm-project/llvm/include/llvm/Transforms/Utils/
H A DSampleProfileLoaderBaseImpl.h60 template <typename BlockT> struct IRTraits;