Home
last modified time | relevance | path

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

/llvm-project-15.0.7/llvm/include/llvm/Analysis/
H A DLoopInfoImpl.h48 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 DDominanceFrontierImpl.h33 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 DRegionInfo.h121 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 DDominanceFrontier.h39 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 DRegionInfoImpl.h42 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 DLoopInfo.h79 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 DRegionIterator.h47 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 DBlockFrequencyInfoImpl.h549 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 DBlockFrequencyInfo.h31 template <class BlockT> class BlockFrequencyInfoImpl;
/llvm-project-15.0.7/llvm/include/llvm/ADT/
H A DGenericCycleInfo.h50 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 DGenericCycleImpl.h52 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 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;
36 using DominatorTreeT = DominatorTreeBase<BlockT, false>;
/llvm-project-15.0.7/llvm/include/llvm/CodeGen/
H A DMachineSSAContext.h39 using BlockT = MachineBasicBlock;
43 using DominatorTreeT = DominatorTreeBase<BlockT, false>;
H A DMachineBlockFrequencyInfo.h24 template <class BlockT> class BlockFrequencyInfoImpl;
H A DMachineRegionInfo.h32 using BlockT = MachineBasicBlock;
/llvm-project-15.0.7/llvm/include/llvm/Transforms/Utils/
H A DSampleProfileInference.h33 template <class BlockT> struct TypeMap {};
H A DSampleProfileLoaderBaseImpl.h53 template <typename BlockT> struct IRTraits;