Lines Matching defs:LoopDepthTree
475 struct LoopDepthTree { struct
476 using LoopsOnLevelTy = SmallVector<LoopVector, 4>;
477 using iterator = LoopsOnLevelTy::iterator;
478 using const_iterator = LoopsOnLevelTy::const_iterator;
480 LoopDepthTree(LoopInfo &LI) : Depth(1) { in LoopDepthTree() argument
487 bool isRemovedLoop(const Loop *L) const { return RemovedLoops.count(L); } in isRemovedLoop()
491 void removeLoop(const Loop *L) { RemovedLoops.insert(L); } in removeLoop()
494 void descend() { in descend()
507 bool empty() const { return size() == 0; } in empty()
508 size_t size() const { return LoopsOnLevel.size() - RemovedLoops.size(); } in size()
509 unsigned getDepth() const { return Depth; } in getDepth()
511 iterator begin() { return LoopsOnLevel.begin(); } in begin()
512 iterator end() { return LoopsOnLevel.end(); } in end()
513 const_iterator begin() const { return LoopsOnLevel.begin(); } in begin()
514 const_iterator end() const { return LoopsOnLevel.end(); } in end()
519 SmallPtrSet<const Loop *, 8> RemovedLoops;
522 unsigned Depth;
525 LoopsOnLevelTy LoopsOnLevel;