Lines Matching refs:RefSCC
284 LazyCallGraph::RefSCC::RefSCC(LazyCallGraph &G) : G(&G) {} in RefSCC() function in LazyCallGraph::RefSCC
287 LLVM_DUMP_METHOD void LazyCallGraph::RefSCC::dump() const { in dump()
293 void LazyCallGraph::RefSCC::verify() { in verify()
338 bool LazyCallGraph::RefSCC::isParentOf(const RefSCC &RC) const { in isParentOf()
352 bool LazyCallGraph::RefSCC::isAncestorOf(const RefSCC &RC) const { in isAncestorOf()
359 SmallVector<const RefSCC *, 4> Worklist; in isAncestorOf()
360 SmallPtrSet<const RefSCC *, 4> Visited; in isAncestorOf()
364 const RefSCC &DescendantRC = *Worklist.pop_back_val(); in isAncestorOf()
516 LazyCallGraph::RefSCC::switchInternalEdgeToCall( in switchInternalEdgeToCall()
665 void LazyCallGraph::RefSCC::switchTrivialInternalEdgeToRef(Node &SourceN, in switchTrivialInternalEdgeToRef()
687 iterator_range<LazyCallGraph::RefSCC::iterator>
688 LazyCallGraph::RefSCC::switchInternalEdgeToRef(Node &SourceN, Node &TargetN) { in switchInternalEdgeToRef()
874 void LazyCallGraph::RefSCC::switchOutgoingEdgeToCall(Node &SourceN, in switchOutgoingEdgeToCall()
896 void LazyCallGraph::RefSCC::switchOutgoingEdgeToRef(Node &SourceN, in switchOutgoingEdgeToRef()
918 void LazyCallGraph::RefSCC::insertInternalRefEdge(Node &SourceN, in insertInternalRefEdge()
931 void LazyCallGraph::RefSCC::insertOutgoingEdge(Node &SourceN, Node &TargetN, in insertOutgoingEdge()
951 SmallVector<LazyCallGraph::RefSCC *, 1>
952 LazyCallGraph::RefSCC::insertIncomingRefEdge(Node &SourceN, Node &TargetN) { in insertIncomingRefEdge()
954 RefSCC &SourceC = *G->lookupRefSCC(SourceN); in insertIncomingRefEdge()
961 SmallVector<RefSCC *, 1> DeletedRefSCCs; in insertIncomingRefEdge()
982 auto ComputeSourceConnectedSet = [&](SmallPtrSetImpl<RefSCC *> &Set) { in insertIncomingRefEdge()
984 auto IsConnected = [&](RefSCC &RC) { in insertIncomingRefEdge()
994 for (RefSCC *C : make_range(G->PostOrderRefSCCs.begin() + SourceIdx + 1, in insertIncomingRefEdge()
1004 auto ComputeTargetConnectedSet = [&](SmallPtrSetImpl<RefSCC *> &Set) { in insertIncomingRefEdge()
1006 SmallVector<RefSCC *, 4> Worklist; in insertIncomingRefEdge()
1009 RefSCC &RC = *Worklist.pop_back_val(); in insertIncomingRefEdge()
1013 RefSCC &EdgeRC = *G->lookupRefSCC(E.getNode()); in insertIncomingRefEdge()
1028 iterator_range<SmallVectorImpl<RefSCC *>::iterator> MergeRange = in insertIncomingRefEdge()
1035 SmallPtrSet<RefSCC *, 16> MergeSet(MergeRange.begin(), MergeRange.end()); in insertIncomingRefEdge()
1044 for (RefSCC *RC : MergeRange) { in insertIncomingRefEdge()
1076 for (RefSCC *RC : MergeRange) in insertIncomingRefEdge()
1081 for (RefSCC *RC : make_range(EraseEnd, G->PostOrderRefSCCs.end())) in insertIncomingRefEdge()
1095 void LazyCallGraph::RefSCC::removeOutgoingEdge(Node &SourceN, Node &TargetN) { in removeOutgoingEdge()
1114 SmallVector<LazyCallGraph::RefSCC *, 1>
1115 LazyCallGraph::RefSCC::removeInternalRefEdge(Node &SourceN, in removeInternalRefEdge()
1118 SmallVector<RefSCC *, 1> Result; in removeInternalRefEdge()
1328 RefSCC &RC = *Result[SCCNumber]; in removeInternalRefEdge()
1343 for (RefSCC *RC : Result) in removeInternalRefEdge()
1351 void LazyCallGraph::RefSCC::handleTrivialEdgeInsertion(Node &SourceN, in handleTrivialEdgeInsertion()
1358 RefSCC &TargetRC = *G->lookupRefSCC(TargetN); in handleTrivialEdgeInsertion()
1368 void LazyCallGraph::RefSCC::insertTrivialCallEdge(Node &SourceN, in insertTrivialCallEdge()
1403 void LazyCallGraph::RefSCC::insertTrivialRefEdge(Node &SourceN, Node &TargetN) { in insertTrivialRefEdge()
1410 RefSCC &SourceRC = *G->lookupRefSCC(SourceN); in insertTrivialRefEdge()
1411 RefSCC &TargetRC = *G->lookupRefSCC(TargetN); in insertTrivialRefEdge()
1432 void LazyCallGraph::RefSCC::replaceNodeFunction(Node &N, Function &NewF) { in replaceNodeFunction()
1515 RefSCC &RC = C.getOuterRefSCC(); in removeDeadFunction()
1653 void LazyCallGraph::buildSCCs(RefSCC &RC, node_stack_range Nodes) { in buildSCCs()
1712 RefSCC *NewRC = createRefSCC(*this); in buildRefSCCs()
1749 static void printRefSCC(raw_ostream &OS, LazyCallGraph::RefSCC &C) { in printRefSCC()
1770 for (LazyCallGraph::RefSCC &C : G.postorder_ref_sccs()) in run()