reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
75 LoopT *ParentLoop; 77 std::vector<LoopT *> SubLoops; 89 LoopBase(const LoopBase<BlockT, LoopT> &) = delete; 90 const LoopBase<BlockT, LoopT> & 91 operator=(const LoopBase<BlockT, LoopT> &) = delete; 100 for (const LoopT *CurLoop = ParentLoop; CurLoop; 106 LoopT *getParentLoop() const { return ParentLoop; } 109 void setParentLoop(LoopT *L) { 115 bool contains(const LoopT *L) const { 136 const std::vector<LoopT *> &getSubLoops() const { 140 std::vector<LoopT *> &getSubLoopsVector() { 144 typedef typename std::vector<LoopT *>::const_iterator iterator; 146 typename std::vector<LoopT *>::const_reverse_iterator reverse_iterator; 325 static void getInnerLoopsInPreorder(const LoopT &L, 341 SmallVector<const LoopT *, 4> getLoopsInPreorder() const { 348 SmallVector<LoopT *, 4> getLoopsInPreorder() { 365 void addBasicBlockToLoop(BlockT *NewBB, LoopInfoBase<BlockT, LoopT> &LI); 371 void replaceChildLoopWith(LoopT *OldChild, LoopT *NewChild); 371 void replaceChildLoopWith(LoopT *OldChild, LoopT *NewChild); 375 void addChildLoop(LoopT *NewChild) { 384 LoopT *removeChildLoop(iterator I) { 396 LoopT *removeChildLoop(LoopT *Child) { 396 LoopT *removeChildLoop(LoopT *Child) { 453 void verifyLoopNest(DenseSet<const LoopT *> *Loops) const; 485 for (auto *SubLoop : SubLoops) 850 DenseMap<const BlockT *, LoopT *> BBMap; 851 std::vector<LoopT *> TopLevelLoops; 886 for (auto *L : TopLevelLoops) 892 template <typename... ArgsTy> LoopT *AllocateLoop(ArgsTy &&... Args) { 893 LoopT *Storage = LoopAllocator.Allocate<LoopT>(); 893 LoopT *Storage = LoopAllocator.Allocate<LoopT>(); 894 return new (Storage) LoopT(std::forward<ArgsTy>(Args)...); 900 typedef typename std::vector<LoopT *>::const_iterator iterator; 902 typename std::vector<LoopT *>::const_reverse_iterator reverse_iterator; 914 SmallVector<LoopT *, 4> getLoopsInPreorder(); 924 SmallVector<LoopT *, 4> getLoopsInReverseSiblingPreorder(); 928 LoopT *getLoopFor(const BlockT *BB) const { return BBMap.lookup(BB); } 931 const LoopT *operator[](const BlockT *BB) const { return getLoopFor(BB); } 942 const LoopT *L = getLoopFor(BB); 949 LoopT *removeLoop(iterator I) { 960 void changeLoopFor(BlockT *BB, LoopT *L) { 970 void changeTopLevelLoop(LoopT *OldLoop, LoopT *NewLoop) { 970 void changeTopLevelLoop(LoopT *OldLoop, LoopT *NewLoop) { 979 void addTopLevelLoop(LoopT *New) { 999 static bool isNotAlreadyContainedIn(const LoopT *SubLoop, 1000 const LoopT *ParentLoop) { 1026 void destroy(LoopT *L) {include/llvm/Analysis/LoopInfoImpl.h
418 static void discoverAndMapSubloop(LoopT *L, ArrayRef<BlockT *> Backedges, 419 LoopInfoBase<BlockT, LoopT> *LI, 432 LoopT *Subloop = LI->getLoopFor(PredBB); 448 while (LoopT *Parent = Subloop->getParentLoop()) 479 LoopInfoBase<BlockT, LoopT> *LI; 482 PopulateLoopsDFS(LoopInfoBase<BlockT, LoopT> *li) : LI(li) {} 502 LoopT *Subloop = LI->getLoopFor(Block); 556 LoopT *L = AllocateLoop(Header); 562 PopulateLoopsDFS<BlockT, LoopT> DFS(this);include/llvm/Support/Allocator.h
81 template <typename T> T *Allocate(size_t Num = 1) { 82 return static_cast<T *>(Allocate(Num * sizeof(T), alignof(T))); 82 return static_cast<T *>(Allocate(Num * sizeof(T), alignof(T)));lib/Transforms/Vectorize/VPlan.h
1521 const VPLoop *FromLoop = VPLI->getLoopFor(FromBlock); 1522 const VPLoop *ToLoop = VPLI->getLoopFor(ToBlock); 1533 if (const VPLoop *ParentVPL = VPLInfo->getLoopFor(Block))lib/Transforms/Vectorize/VPlanLoopInfo.h
27 class VPLoop : public LoopBase<VPBlockBase, VPLoop> { 40 typedef LoopInfoBase<VPBlockBase, VPLoop> VPLoopInfo;unittests/Transforms/Vectorize/VPlanLoopInfoTest.cpp
62 VPLoop *VPLp = *VPLI.begin();
utils/unittest/googletest/include/gtest/gtest-printers.h407 T* p, ::std::ostream* os) { 416 if (IsTrue(ImplicitlyConvertible<T*, const void*>::value)) {utils/unittest/googletest/include/gtest/gtest.h
1475 T* rhs) {