Lines Matching defs:LoopDepthTree
500 struct LoopDepthTree { struct
501 using LoopsOnLevelTy = SmallVector<LoopVector, 4>;
502 using iterator = LoopsOnLevelTy::iterator;
503 using const_iterator = LoopsOnLevelTy::const_iterator;
505 LoopDepthTree(LoopInfo &LI) : Depth(1) { in LoopDepthTree() argument
512 bool isRemovedLoop(const Loop *L) const { return RemovedLoops.count(L); } in isRemovedLoop()
516 void removeLoop(const Loop *L) { RemovedLoops.insert(L); } in removeLoop()
519 void descend() { in descend()
532 bool empty() const { return size() == 0; } in empty()
533 size_t size() const { return LoopsOnLevel.size() - RemovedLoops.size(); } in size()
534 unsigned getDepth() const { return Depth; } in getDepth()
536 iterator begin() { return LoopsOnLevel.begin(); } in begin()
537 iterator end() { return LoopsOnLevel.end(); } in end()
538 const_iterator begin() const { return LoopsOnLevel.begin(); } in begin()
539 const_iterator end() const { return LoopsOnLevel.end(); } in end()
544 SmallPtrSet<const Loop *, 8> RemovedLoops;
547 unsigned Depth;
550 LoopsOnLevelTy LoopsOnLevel;