Lines Matching refs:SCCs

211   assert(!SCCs.empty() && "Can't have an empty SCC!");  in verify()
214 for (SCC *C : SCCs) { in verify()
226 assert(SCCs[i] == C && "Index doesn't point to SCC!"); in verify()
230 for (int i = 0, Size = SCCs.size(); i < Size; ++i) { in verify()
231 SCC &SourceSCC = *SCCs[i]; in verify()
357 make_range(SCCs.begin() + SourceIdx + 1, SCCs.begin() + TargetIdx + 1)) in switchInternalEdgeToCall()
365 SCCs.begin() + SourceIdx, SCCs.begin() + TargetIdx + 1, in switchInternalEdgeToCall()
368 SCCIndices.find(SCCs[i])->second = i; in switchInternalEdgeToCall()
373 assert(SourceI > (SCCs.begin() + SourceIdx) && in switchInternalEdgeToCall()
384 assert(SCCs[TargetIdx] == &TargetSCC && in switchInternalEdgeToCall()
386 SourceIdx = SourceI - SCCs.begin(); in switchInternalEdgeToCall()
428 SCCs.begin() + SourceIdx + 1, SCCs.begin() + TargetIdx + 1, in switchInternalEdgeToCall()
431 SCCIndices.find(SCCs[i])->second = i; in switchInternalEdgeToCall()
432 TargetIdx = std::prev(TargetI) - SCCs.begin(); in switchInternalEdgeToCall()
433 assert(SCCs[TargetIdx] == &TargetSCC && in switchInternalEdgeToCall()
452 make_range(SCCs.begin() + SourceIdx, SCCs.begin() + TargetIdx); in switchInternalEdgeToCall()
467 auto EraseEnd = SCCs.erase(MergeRange.begin(), MergeRange.end()); in switchInternalEdgeToCall()
468 for (SCC *C : make_range(EraseEnd, SCCs.end())) in switchInternalEdgeToCall()
659 SCCs.insert(SCCs.begin() + OldIdx, NewSCCs.begin(), NewSCCs.end()); in switchInternalEdgeToRef()
663 for (int Idx = OldIdx, Size = SCCs.size(); Idx < Size; ++Idx) in switchInternalEdgeToRef()
664 SCCIndices[SCCs[Idx]] = Idx; in switchInternalEdgeToRef()
874 MergedSCCs = std::move(C->SCCs); in insertIncomingRefEdge()
876 MergedSCCs.append(C->SCCs.begin(), C->SCCs.end()); in insertIncomingRefEdge()
877 C->SCCs.clear(); in insertIncomingRefEdge()
884 MergedSCCs.append(SCCs.begin(), SCCs.end()); in insertIncomingRefEdge()
885 SCCs = std::move(MergedSCCs); in insertIncomingRefEdge()
919 for (SCC *InnerC : SCCs) { in removeOutgoingEdge()
1004 for (SCC *C : SCCs) { in removeInternalRefEdge()
1152 for (SCC *C : SCCs) { in removeInternalRefEdge()
1167 int SCCIndex = RC.SCCs.size(); in removeInternalRefEdge()
1168 RC.SCCs.push_back(C); in removeInternalRefEdge()
1181 SCCs.erase(std::remove_if(SCCs.begin(), SCCs.end(), in removeInternalRefEdge()
1186 SCCs.end()); in removeInternalRefEdge()
1193 for (SCC *C : SCCs) in removeInternalRefEdge()
1283 assert(RC.SCCs.empty() && "Already built SCCs!"); in buildSCCs()
1381 RC.SCCs.push_back(createSCC(RC, SCCNodes)); in buildSCCs()
1382 for (Node &N : *RC.SCCs.back()) { in buildSCCs()
1384 SCCMap[&N] = RC.SCCs.back(); in buildSCCs()
1391 for (int i = 0, Size = RC.SCCs.size(); i < Size; ++i) in buildSCCs()
1392 RC.SCCIndices[RC.SCCs[i]] = i; in buildSCCs()