reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

include/llvm/Analysis/LazyCallGraph.h
 1244   static ChildIteratorType child_begin(NodeRef N) { return (*N)->begin(); }
 1245   static ChildIteratorType child_end(NodeRef N) { return (*N)->end(); }
 1252   static ChildIteratorType child_begin(NodeRef N) { return (*N)->begin(); }
 1253   static ChildIteratorType child_end(NodeRef N) { return (*N)->end(); }
lib/Analysis/CGSCCPassManager.cpp
  455           Edge *E = N->lookup(CalleeN);
  480     Edge *E = N->lookup(RefereeN);
lib/Analysis/LazyCallGraph.cpp
  255     for (Edge &E : N->calls())
  277       for (Edge &E : N->calls()) {
  548     SourceN->setEdgeKind(TargetN, Edge::Call);
  561     SourceN->setEdgeKind(TargetN, Edge::Call);
  575         for (Edge &E : N->calls())
  637     SourceN->setEdgeKind(TargetN, Edge::Call);
  672   SourceN->setEdgeKind(TargetN, Edge::Call);
  697   SourceN->setEdgeKind(TargetN, Edge::Ref);
  722   SourceN->setEdgeKind(TargetN, Edge::Ref);
  778     DFSStack.push_back({RootN, (*RootN)->call_begin()});
  783       auto E = (*N)->call_end();
  795           I = (*N)->call_begin();
  796           E = (*N)->call_end();
  901   SourceN->setEdgeKind(TargetN, Edge::Call);
  923   SourceN->setEdgeKind(TargetN, Edge::Ref);
  936   SourceN->insertEdgeInternal(TargetN, Edge::Ref);
  947   SourceN->insertEdgeInternal(TargetN, EK);
 1099   SourceN->insertEdgeInternal(TargetN, Edge::Ref);
 1122   bool Removed = SourceN->removeEdgeInternal(TargetN);
 1151     bool Removed = SourceN->removeEdgeInternal(*TargetN);
 1211     DFSStack.push_back({RootN, (*RootN)->begin()});
 1216       auto E = (*N)->end();
 1232           I = ChildN->begin();
 1233           E = ChildN->end();
 1400       SourceN->EdgeIndexMap.insert({&TargetN, SourceN->Edges.size()});
 1400       SourceN->EdgeIndexMap.insert({&TargetN, SourceN->Edges.size()});
 1403     Edge &E = SourceN->Edges[InsertResult.first->second];
 1409     SourceN->Edges.emplace_back(TargetN, Edge::Call);
 1433       SourceN->EdgeIndexMap.insert({&TargetN, SourceN->Edges.size()});
 1433       SourceN->EdgeIndexMap.insert({&TargetN, SourceN->Edges.size()});
 1439   SourceN->Edges.emplace_back(TargetN, Edge::Ref);
 1480   return SourceN->insertEdgeInternal(TargetN, EK);
 1487   bool Removed = SourceN->removeEdgeInternal(TargetN);
 1684       Nodes, [](Node &N) { return N->call_begin(); },
 1685       [](Node &N) { return N->call_end(); },
 1720         return N->begin();
 1722       [](Node &N) { return N->end(); },
unittests/Analysis/LazyCallGraphTest.cpp
  275   EXPECT_EQ(A2->end(), std::next(A2->begin()));
  275   EXPECT_EQ(A2->end(), std::next(A2->begin()));
  276   EXPECT_EQ("a3", A2->begin()->getFunction().getName());
  278   EXPECT_EQ(A3->end(), std::next(A3->begin()));
  278   EXPECT_EQ(A3->end(), std::next(A3->begin()));
  279   EXPECT_EQ("a1", A3->begin()->getFunction().getName());
  289   EXPECT_EQ(B2->end(), std::next(B2->begin()));
  289   EXPECT_EQ(B2->end(), std::next(B2->begin()));
  290   EXPECT_EQ("b3", B2->begin()->getFunction().getName());
  292   EXPECT_EQ(B3->end(), std::next(B3->begin()));
  292   EXPECT_EQ(B3->end(), std::next(B3->begin()));
  293   EXPECT_EQ("b1", B3->begin()->getFunction().getName());
  303   EXPECT_EQ(C2->end(), std::next(C2->begin()));
  303   EXPECT_EQ(C2->end(), std::next(C2->begin()));
  304   EXPECT_EQ("c3", C2->begin()->getFunction().getName());
  306   EXPECT_EQ(C3->end(), std::next(C3->begin()));
  306   EXPECT_EQ(C3->end(), std::next(C3->begin()));
  307   EXPECT_EQ("c1", C3->begin()->getFunction().getName());
  310   EXPECT_EQ(D1->end(), std::next(D1->begin()));
  310   EXPECT_EQ(D1->end(), std::next(D1->begin()));
  311   EXPECT_EQ("d2", D1->begin()->getFunction().getName());
  313   EXPECT_EQ(D2->end(), std::next(D2->begin()));
  313   EXPECT_EQ(D2->end(), std::next(D2->begin()));
  314   EXPECT_EQ("d3", D2->begin()->getFunction().getName());
  316   EXPECT_EQ(D3->end(), std::next(D3->begin()));
  316   EXPECT_EQ(D3->end(), std::next(D3->begin()));
  317   EXPECT_EQ("d1", D3->begin()->getFunction().getName());
  423   EXPECT_EQ(2, std::distance(A->begin(), A->end()));
  423   EXPECT_EQ(2, std::distance(A->begin(), A->end()));
  425   EXPECT_EQ(0, std::distance(B->begin(), B->end()));
  425   EXPECT_EQ(0, std::distance(B->begin(), B->end()));
  430   EXPECT_EQ(1, std::distance(B->begin(), B->end()));
  430   EXPECT_EQ(1, std::distance(B->begin(), B->end()));
  431   EXPECT_EQ(0, std::distance(C->begin(), C->end()));
  431   EXPECT_EQ(0, std::distance(C->begin(), C->end()));
  434   EXPECT_EQ(1, std::distance(C->begin(), C->end()));
  434   EXPECT_EQ(1, std::distance(C->begin(), C->end()));
  435   EXPECT_EQ(&B, &C->begin()->getNode());
  438   EXPECT_EQ(2, std::distance(C->begin(), C->end()));
  438   EXPECT_EQ(2, std::distance(C->begin(), C->end()));
  439   EXPECT_EQ(&B, &C->begin()->getNode());
  440   EXPECT_EQ(&C, &std::next(C->begin())->getNode());
  443   EXPECT_EQ(1, std::distance(C->begin(), C->end()));
  443   EXPECT_EQ(1, std::distance(C->begin(), C->end()));
  444   EXPECT_EQ(&C, &C->begin()->getNode());
  447   EXPECT_EQ(0, std::distance(C->begin(), C->end()));
  447   EXPECT_EQ(0, std::distance(C->begin(), C->end()));
  450   EXPECT_EQ(0, std::distance(B->begin(), B->end()));
  450   EXPECT_EQ(0, std::distance(B->begin(), B->end()));
  640   EXPECT_EQ(2, std::distance(A->begin(), A->end()));
  640   EXPECT_EQ(2, std::distance(A->begin(), A->end()));
  642   EXPECT_EQ(3, std::distance(A->begin(), A->end()));
  642   EXPECT_EQ(3, std::distance(A->begin(), A->end()));
  710   EXPECT_EQ(2, std::distance(A->begin(), A->end()));
  710   EXPECT_EQ(2, std::distance(A->begin(), A->end()));
  781   ASSERT_EQ(1, std::distance(D2->begin(), D2->end()));
  781   ASSERT_EQ(1, std::distance(D2->begin(), D2->end()));
  873   ASSERT_EQ(1, std::distance(D2->begin(), D2->end()));
  873   ASSERT_EQ(1, std::distance(D2->begin(), D2->end()));
  972   EXPECT_NE(D->begin(), D->end());
  972   EXPECT_NE(D->begin(), D->end());
  973   EXPECT_EQ(&A, &D->begin()->getNode());
 1046   EXPECT_NE(D->begin(), D->end());
 1046   EXPECT_NE(D->begin(), D->end());
 1047   EXPECT_EQ(&A, &D->begin()->getNode());
 1119   ASSERT_EQ(1, std::distance(D2->begin(), D2->end()));
 1119   ASSERT_EQ(1, std::distance(D2->begin(), D2->end()));
 1254   EXPECT_EQ(2, std::distance(A->begin(), A->end()));
 1254   EXPECT_EQ(2, std::distance(A->begin(), A->end()));