Lines Matching refs:SCC

240 LLVM_DUMP_METHOD void LazyCallGraph::SCC::dump() const {  in dump()
246 void LazyCallGraph::SCC::verify() { in verify()
282 bool LazyCallGraph::SCC::isParentOf(const SCC &C) const { in isParentOf()
295 bool LazyCallGraph::SCC::isAncestorOf(const SCC &TargetC) const { in isAncestorOf()
302 SmallPtrSet<const SCC *, 16> Visited = {this}; in isAncestorOf()
303 SmallVector<const SCC *, 16> Worklist = {this}; in isAncestorOf()
307 const SCC &C = *Worklist.pop_back_val(); in isAncestorOf()
310 SCC *CalleeC = G.lookupSCC(E.getNode()); in isAncestorOf()
343 SmallPtrSet<SCC *, 4> SCCSet; in verify()
344 for (SCC *C : SCCs) { in verify()
358 SCC *C = SCCIndexPair.first; in verify()
367 SCC &SourceSCC = *SCCs[i]; in verify()
372 SCC &TargetSCC = *G->lookupSCC(E.getNode()); in verify()
384 for (SCC *C : SCCs) { in verify()
413 for (SCC &C : *this) in isParentOf()
435 for (SCC &C : DescendantRC) in isAncestorOf()
588 function_ref<void(ArrayRef<SCC *> MergeSCCs)> MergeCB) { in switchInternalEdgeToCall()
590 SmallVector<SCC *, 1> DeletedSCCs; in switchInternalEdgeToCall()
597 SCC &SourceSCC = *G->lookupSCC(SourceN); in switchInternalEdgeToCall()
598 SCC &TargetSCC = *G->lookupSCC(TargetN); in switchInternalEdgeToCall()
621 auto ComputeSourceConnectedSet = [&](SmallPtrSetImpl<SCC *> &ConnectedSet) { in switchInternalEdgeToCall()
628 auto IsConnected = [&](SCC &C) { in switchInternalEdgeToCall()
637 for (SCC *C : in switchInternalEdgeToCall()
647 auto ComputeTargetConnectedSet = [&](SmallPtrSetImpl<SCC *> &ConnectedSet) { in switchInternalEdgeToCall()
654 SmallVector<SCC *, 4> Worklist; in switchInternalEdgeToCall()
657 SCC &C = *Worklist.pop_back_val(); in switchInternalEdgeToCall()
662 SCC &EdgeC = *G->lookupSCC(E.getNode()); in switchInternalEdgeToCall()
708 for (SCC *C : MergeRange) { in switchInternalEdgeToCall()
723 for (SCC *C : make_range(EraseEnd, SCCs.end())) in switchInternalEdgeToCall()
767 SCC &TargetSCC = *G->lookupSCC(TargetN); in switchInternalEdgeToRef()
787 SCC &OldSCC = TargetSCC; in switchInternalEdgeToRef()
790 SmallVector<SCC *, 4> NewSCCs; in switchInternalEdgeToRef()
1043 for (SCC &C : RC) in insertIncomingRefEdge()
1068 for (SCC &C : RC) in insertIncomingRefEdge()
1100 SmallVector<SCC *, 16> MergedSCCs; in insertIncomingRefEdge()
1110 for (SCC &InnerC : *RC) { in insertIncomingRefEdge()
1128 for (SCC &InnerC : *this) in insertIncomingRefEdge()
1206 SCC &SourceC = *G->lookupSCC(SourceN); in removeInternalRefEdge()
1223 for (SCC *C : SCCs) { in removeInternalRefEdge()
1373 for (SCC *C : SCCs) { in removeInternalRefEdge()
1414 SCC &SourceC = *G->lookupSCC(SourceN); in insertTrivialCallEdge()
1415 SCC &TargetC = *G->lookupSCC(TargetN); in insertTrivialCallEdge()
1532 SCC &C = *CI->second; in removeDeadFunction()
1605 SCC *OriginalC = lookupSCC(OriginalN); in addSplitFunction()
1619 SCC *NewC = nullptr; in addSplitFunction()
1737 SCC *NewC = createSCC(*NewRC, SmallVector<Node *, 1>({&NewN})); in addSplitRefRecursiveFunctions()
1989 static void printSCC(raw_ostream &OS, LazyCallGraph::SCC &C) { in printSCC()
1999 for (LazyCallGraph::SCC &InnerC : C) in printRefSCC()