Lines Matching defs:Edges
44 EdgeIndexMap.try_emplace(&TargetN, Edges.size());
45 Edges.emplace_back(TargetN, EK);
49 Edges[EdgeIndexMap.find(&TargetN)->second].setKind(EK);
57 Edges[IndexMapI->second] = Edge();
62 static void addEdge(SmallVectorImpl<LazyCallGraph::Edge> &Edges,
65 if (!EdgeIndexMap.try_emplace(&N, Edges.size()).second)
69 Edges.emplace_back(LazyCallGraph::Edge(N, EK));
73 assert(!Edges && "Must not have already populated the edges for this node!");
78 Edges = EdgeSequence();
107 addEdge(Edges->Edges, Edges->EdgeIndexMap, G->get(*Callee),
121 addEdge(Edges->Edges, Edges->EdgeIndexMap, G->get(F),
129 addEdge(Edges->Edges, Edges->EdgeIndexMap, G->get(*F),
132 return *Edges;
176 addEdge(EntryEdges.Edges, EntryEdges.EdgeIndexMap, get(F), Edge::Ref);
188 addEdge(EntryEdges.Edges, EntryEdges.EdgeIndexMap, get(*F), Edge::Ref);
204 addEdge(EntryEdges.Edges, EntryEdges.EdgeIndexMap, get(F),
944 // Edges between RefSCCs are the same regardless of call or ref, so we can
965 // Edges between RefSCCs are the same regardless of call or ref, so we can
1166 ArrayRef<std::pair<Node *, Node *>> Edges) {
1184 for (auto [SourceN, TargetN] : Edges) {
1196 if (llvm::all_of(Edges, [&](std::pair<Node *, Node *> E) {
1411 SourceN->EdgeIndexMap.try_emplace(&TargetN, SourceN->Edges.size());
1414 Edge &E = SourceN->Edges[Iterator->second];
1420 SourceN->Edges.emplace_back(TargetN, Edge::Call);
1438 SourceN->EdgeIndexMap.try_emplace(&TargetN, SourceN->Edges.size());
1445 SourceN->Edges.emplace_back(TargetN, Edge::Ref);
1779 "Edges between new functions must be ref edges");
2001 OS << " Edges in function: " << N.getFunction().getName() << "\n";