Lines Matching refs:OuterLoop

313                                            const LoopData *OuterLoop,  in addToDist()  argument
320 auto isLoopHeader = [&OuterLoop](const BlockNode &Node) { in addToDist()
321 return OuterLoop && OuterLoop->isHeader(Node); in addToDist()
345 if (Working[Resolved.Index].getContainingLoop() != OuterLoop) { in addToDist()
354 assert((!OuterLoop || !OuterLoop->isIrreducible()) && in addToDist()
365 assert(OuterLoop && OuterLoop->isIrreducible() && !isLoopHeader(Resolved) && in addToDist()
375 const LoopData *OuterLoop, LoopData &Loop, Distribution &Dist) { in addLoopSuccessorsToDist() argument
378 if (!addToDist(Dist, OuterLoop, Loop.getHeader(), I.first, in addLoopSuccessorsToDist()
448 LoopData *OuterLoop, in distributeMass() argument
466 assert(OuterLoop && "backedge or exit outside of loop"); in distributeMass()
470 OuterLoop->BackedgeMass[OuterLoop->getHeaderIndex(W.TargetNode)] += Taken; in distributeMass()
477 OuterLoop->Exits.push_back(std::make_pair(W.TargetNode, Taken)); in distributeMass()
637 void IrreducibleGraph::addNodesInLoop(const BFIBase::LoopData &OuterLoop) { in addNodesInLoop() argument
638 Start = OuterLoop.getHeader(); in addNodesInLoop()
639 Nodes.reserve(OuterLoop.Nodes.size()); in addNodesInLoop()
640 for (auto N : OuterLoop.Nodes) in addNodesInLoop()
659 const BFIBase::LoopData *OuterLoop) { in addEdge() argument
660 if (OuterLoop && OuterLoop->isHeader(Succ)) in addEdge()
760 LoopData *OuterLoop, std::list<LoopData>::iterator Insert, in createIrreducibleLoop() argument
769 auto Loop = BFI.Loops.emplace(Insert, OuterLoop, Headers.begin(), in createIrreducibleLoop()
782 const IrreducibleGraph &G, LoopData *OuterLoop, in analyzeIrreducible() argument
784 assert((OuterLoop == nullptr) == (Insert == Loops.begin())); in analyzeIrreducible()
785 auto Prev = OuterLoop ? std::prev(Insert) : Loops.end(); in analyzeIrreducible()
792 createIrreducibleLoop(*this, G, OuterLoop, Insert, *I); in analyzeIrreducible()
795 if (OuterLoop) in analyzeIrreducible()
801 BlockFrequencyInfoImplBase::updateLoopWithIrreducible(LoopData &OuterLoop) { in updateLoopWithIrreducible() argument
802 OuterLoop.Exits.clear(); in updateLoopWithIrreducible()
803 for (auto &Mass : OuterLoop.BackedgeMass) in updateLoopWithIrreducible()
805 auto O = OuterLoop.Nodes.begin() + 1; in updateLoopWithIrreducible()
806 for (auto I = O, E = OuterLoop.Nodes.end(); I != E; ++I) in updateLoopWithIrreducible()
809 OuterLoop.Nodes.erase(O, OuterLoop.Nodes.end()); in updateLoopWithIrreducible()