Home
last modified time | relevance | path

Searched refs:CallGraphNode (Results 1 – 25 of 34) sorted by relevance

12

/llvm-project-15.0.7/llvm/include/llvm/Analysis/
H A DCallGraph.h62 class CallGraphNode; variable
83 CallGraphNode *ExternalCallingNode;
129 CallGraphNode *getCallsExternalNode() const { in getCallsExternalNode()
135 void ReplaceExternalCallEdge(CallGraphNode *Old, CallGraphNode *New);
166 class CallGraphNode {
186 CallGraphNode(const CallGraphNode &) = delete;
187 CallGraphNode &operator=(const CallGraphNode &) = delete;
189 ~CallGraphNode() { in ~CallGraphNode()
211 CallGraphNode *operator[](unsigned i) const {
420 using NodeRef = CallGraphNode *;
[all …]
H A DCallGraphSCCPass.h30 class CallGraphNode; variable
90 std::vector<CallGraphNode *> Nodes;
95 void initialize(ArrayRef<CallGraphNode *> NewNodes) { in initialize()
104 void ReplaceNode(CallGraphNode *Old, CallGraphNode *New);
108 void DeleteNode(CallGraphNode *Old);
110 using iterator = std::vector<CallGraphNode *>::const_iterator;
/llvm-project-15.0.7/clang/include/clang/Analysis/
H A DCallGraph.h32 class CallGraphNode; variable
43 friend class CallGraphNode; variable
52 CallGraphNode *Root;
79 CallGraphNode *getOrInsertNode(Decl *);
147 class CallGraphNode {
150 CallGraphNode *Callee;
171 CallGraphNode(Decl *D) : FD(D) {} in CallGraphNode() function
244 using NodeType = clang::CallGraphNode;
245 using NodeRef = clang::CallGraphNode *;
269 static clang::CallGraphNode *
[all …]
/llvm-project-15.0.7/mlir/include/mlir/Analysis/
H A DCallGraph.h40 class CallGraphNode {
88 friend class CallGraphNode; variable
101 void addAbstractEdge(CallGraphNode *node);
104 void addCallEdge(CallGraphNode *node);
107 void addChildEdge(CallGraphNode *child);
181 CallGraphNode *getOrAddNode(Region *region, CallGraphNode *parentNode);
188 CallGraphNode *getExternalNode() const { in getExternalNode()
200 void eraseNode(CallGraphNode *node);
216 CallGraphNode externalNode;
225 struct GraphTraits<const mlir::CallGraphNode *> {
[all …]
/llvm-project-15.0.7/mlir/lib/Analysis/
H A DCallGraph.cpp32 Region *CallGraphNode::getCallableRegion() const { in getCallableRegion()
39 void CallGraphNode::addAbstractEdge(CallGraphNode *node) { in addAbstractEdge()
45 void CallGraphNode::addCallEdge(CallGraphNode *node) { in addCallEdge()
50 void CallGraphNode::addChildEdge(CallGraphNode *child) { in addChildEdge()
55 bool CallGraphNode::hasChildren() const { in hasChildren()
60 void CallGraphNode::addEdge(CallGraphNode *node, Edge::Kind kind) { in addEdge()
107 CallGraphNode *CallGraph::getOrAddNode(Region *region, in getOrAddNode()
113 node.reset(new CallGraphNode(region)); in getOrAddNode()
140 CallGraphNode *
153 void CallGraph::eraseNode(CallGraphNode *node) { in eraseNode()
[all …]
/llvm-project-15.0.7/mlir/lib/Transforms/
H A DInliner.cpp84 DenseSet<CallGraphNode *> topLevelUses;
97 void eraseNode(CallGraphNode *node);
100 bool isDead(CallGraphNode *node) const;
111 void mergeUsesAfterInlining(CallGraphNode *lhs, CallGraphNode *rhs);
163 for (CallGraphNode *node : cg) in CGUseList()
239 void CGUseList::mergeUsesAfterInlining(CallGraphNode *lhs, CallGraphNode *rhs) { in mergeUsesAfterInlining()
272 void remove(CallGraphNode *node) { in remove()
281 std::vector<CallGraphNode *> nodes;
311 CallGraphNode *targetNode) in ResolvedCall()
314 CallGraphNode *sourceNode, *targetNode;
[all …]
/llvm-project-15.0.7/llvm/lib/Analysis/
H A DCallGraph.cpp76 CallGraphNode *Node = getOrInsertFunction(F); in addToCallGraph()
122 SmallVector<CallGraphNode *, 16> Nodes; in print()
128 llvm::sort(Nodes, [](CallGraphNode *LHS, CallGraphNode *RHS) { in print()
136 for (CallGraphNode *CN : Nodes) in print()
187 void CallGraphNode::print(raw_ostream &OS) const { in print()
232 void CallGraphNode::removeAnyCallEdgeTo(CallGraphNode *Callee) { in removeAnyCallEdgeTo()
244 void CallGraphNode::removeOneAbstractEdgeTo(CallGraphNode *Callee) { in removeOneAbstractEdgeTo()
272 SmallVector<CallGraphNode *, 4u> OldCBs; in replaceCallEdge()
273 SmallVector<CallGraphNode *, 4u> NewCBs; in replaceCallEdge()
282 CallGraphNode *OldNode = OldCBs[N]; in replaceCallEdge()
[all …]
H A DCallGraphSCCPass.cpp174 for (CallGraphNode *CGN : CurSCC) { in RunPassOnSCC()
206 DenseMap<Value *, CallGraphNode *> Calls; in RefreshCallGraph()
210 for (CallGraphNode *CGN in RefreshCallGraph()
220 CallGraphNode *CGN = *SCCIdx; in RefreshCallGraph()
231 CallGraphNode::iterator CGNEnd = CGN->end(); in RefreshCallGraph()
354 CallGraphNode *CalleeNode; in RefreshCallGraph()
378 CallGraphNode *CalleeNode; in RefreshCallGraph()
419 for (CallGraphNode *CGN : CurSCC) in RefreshCallGraph()
592 void CallGraphSCC::ReplaceNode(CallGraphNode *Old, CallGraphNode *New) { in ReplaceNode()
702 for (CallGraphNode *CGN : SCC) { in runOnSCC()
[all …]
H A DCallPrinter.cpp97 CallGraphNode *Node = I.second.get(); in removeParallelEdges()
117 : public GraphTraits<const CallGraphNode *> {
123 typedef std::pair<const Function *const, std::unique_ptr<CallGraphNode>>
125 static const CallGraphNode *CGGetValuePtr(const PairTy &P) { in CGGetValuePtr()
151 static bool isNodeHidden(const CallGraphNode *Node, in isNodeHidden()
158 std::string getNodeLabel(const CallGraphNode *Node, in getNodeLabel()
169 static const CallGraphNode *CGGetValuePtr(CallGraphNode::CallRecord P) { in CGGetValuePtr()
174 typedef mapped_iterator<CallGraphNode::const_iterator,
178 std::string getEdgeAttributes(const CallGraphNode *Node, nodes_iterator I, in getEdgeAttributes()
199 std::string getNodeAttributes(const CallGraphNode *Node, in getNodeAttributes()
H A DGlobalsModRef.cpp461 const std::vector<CallGraphNode *> &SCC = *I; in CollectSCCMembership()
479 const std::vector<CallGraphNode *> &SCC = *I; in AnalyzeCallGraph()
540 for (CallGraphNode::iterator CI = SCC[i]->begin(), E = SCC[i]->end(); in AnalyzeCallGraph()
549 CallGraphNode *CalleeNode = CG[Callee]; in AnalyzeCallGraph()
/llvm-project-15.0.7/clang-tools-extra/clang-move/
H A DHelperDeclRefGraph.cpp23 const CallGraphNode *N = (I->second).get(); in print()
49 CallGraphNode *CallerNode = getOrInsertNode(const_cast<Decl *>(Caller)); in addEdge()
50 CallGraphNode *CalleeNode = getOrInsertNode(const_cast<Decl *>(Callee)); in addEdge()
56 CallGraphNode *HelperDeclRefGraph::getOrInsertNode(Decl *F) { in getOrInsertNode()
58 std::unique_ptr<CallGraphNode> &Node = DeclMap[F]; in getOrInsertNode()
62 Node = std::make_unique<CallGraphNode>(F); in getOrInsertNode()
66 CallGraphNode *HelperDeclRefGraph::getNode(const Decl *D) const { in getNode()
71 llvm::DenseSet<const CallGraphNode *>
76 llvm::DenseSet<const CallGraphNode *> ConnectedNodes; in getReachableNodes()
77 std::function<void(const CallGraphNode *)> VisitNode = in getReachableNodes()
[all …]
H A DHelperDeclRefGraph.h56 CallGraphNode *getNode(const Decl *D) const;
60 llvm::DenseSet<const CallGraphNode *> getReachableNodes(const Decl *D) const;
69 CallGraphNode *getOrInsertNode(Decl *D);
71 typedef llvm::DenseMap<const Decl *, std::unique_ptr<CallGraphNode>>
/llvm-project-15.0.7/clang-tools-extra/clang-tidy/misc/
H A DNoRecursionCheck.cpp155 llvm::SmallVector<CallGraphNode::CallRecord, SmallCallStackSize>;
160 CallStackTy pathfindSomeCycle(ArrayRef<CallGraphNode *> SCC) { in pathfindSomeCycle()
163 const ImmutableSmallSet<CallGraphNode *, SmallSCCSize> SCCElts(SCC); in pathfindSomeCycle()
166 auto NodeIsPartOfSCC = [&SCCElts](CallGraphNode *N) { in pathfindSomeCycle()
171 SmartSmallSetVector<CallGraphNode::CallRecord, SmallCallStackSize> in pathfindSomeCycle()
178 CallGraphNode::CallRecord *Node = &EntryNode; in pathfindSomeCycle()
202 void NoRecursionCheck::handleSCC(ArrayRef<CallGraphNode *> SCC) { in handleSCC()
206 for (CallGraphNode *N : SCC) { in handleSCC()
222 ArrayRef<CallGraphNode::CallRecord>(EventuallyCyclicCallStack) in handleSCC()
224 CallGraphNode::CallRecord FrontNode) { in handleSCC()
[all …]
H A DNoRecursionCheck.h16 class CallGraphNode; variable
35 void handleSCC(ArrayRef<CallGraphNode *> SCC);
/llvm-project-15.0.7/clang/lib/Analysis/
H A DCallGraph.cpp48 CallGraphNode *CallerNode;
71 CallGraphNode *CalleeNode = G->getOrInsertNode(D); in addCalledDecl()
182 CallGraphNode *Node = getOrInsertNode(D); in addNodeForDecl()
197 CallGraphNode *CallGraph::getNode(const Decl *F) const { in getNode()
203 CallGraphNode *CallGraph::getOrInsertNode(Decl *F) { in getOrInsertNode()
207 std::unique_ptr<CallGraphNode> &Node = FunctionMap[F]; in getOrInsertNode()
211 Node = std::make_unique<CallGraphNode>(F); in getOrInsertNode()
226 const CallGraphNode *N = *I; in print()
235 for (CallGraphNode::const_iterator CI = N->begin(), in print()
254 void CallGraphNode::print(raw_ostream &os) const { in print()
[all …]
/llvm-project-15.0.7/llvm/lib/Transforms/Utils/
H A DCallGraphUpdater.cpp36 CallGraphNode *DeadCGN = (*CG)[DeadFn]; in finalize()
44 CallGraphNode *DeadCGN = CG->getOrInsertFunction(DeadFn); in finalize()
91 CallGraphNode *OldCGN = CG->getOrInsertFunction(&Fn); in reanalyzeFunction()
119 CallGraphNode *DeadCGN = (*CG)[&DeadFn]; in removeFunction()
130 CallGraphNode *OldCGN = (*CG)[&OldFn]; in replaceFunctionWith()
131 CallGraphNode *NewCGN = CG->getOrInsertFunction(&NewFn); in replaceFunctionWith()
151 CallGraphNode *NewCalleeNode = in replaceCallSite()
153 CallGraphNode *CallerNode = (*CG)[Caller]; in replaceCallSite()
154 if (llvm::none_of(*CallerNode, [&OldCS](const CallGraphNode::CallRecord &CR) { in replaceCallSite()
168 CallGraphNode *CallerNode = (*CG)[Caller]; in removeCallSite()
/llvm-project-15.0.7/clang-tools-extra/clang-tidy/bugprone/
H A DSignalHandlerCheck.cpp284 Expr *findCallExpr(const CallGraphNode *Caller, const CallGraphNode *Callee) { in findCallExpr()
286 Caller->callees(), [Callee](const CallGraphNode::CallRecord &Call) { in findCallExpr()
362 CallGraphNode *HandlerNode = CG.getNode(HandlerDecl->getCanonicalDecl()); in check()
424 const llvm::df_iterator<clang::CallGraphNode *> &Itr, in reportHandlerChain()
429 const CallGraphNode *Caller = Itr.getPath(CallLevel + 1), *Callee = nullptr; in reportHandlerChain()
H A DSignalHandlerCheck.h57 void reportHandlerChain(const llvm::df_iterator<clang::CallGraphNode *> &Itr,
/llvm-project-15.0.7/llvm/lib/Transforms/IPO/
H A DSyntheticCountsPropagation.cpp102 auto GetCallSiteProfCount = [&](const CallGraphNode *, in run()
103 const CallGraphNode::CallRecord &Edge) { in run()
124 &CG, GetCallSiteProfCount, [&](const CallGraphNode *N, Scaled64 New) { in run() argument
H A DInliner.cpp372 for (CallGraphNode *Node : SCC) { in inlineCallsImpl()
390 for (CallGraphNode *Node : SCC) { in inlineCallsImpl()
567 CallGraphNode *CalleeNode = CG[Callee]; in inlineCallsImpl()
625 SmallVector<CallGraphNode *, 16> FunctionsToRemove; in removeDeadFunctions()
628 auto RemoveCGN = [&](CallGraphNode *CGN) { in removeDeadFunctions()
644 CallGraphNode *CGN = I.second.get(); in removeDeadFunctions()
697 for (CallGraphNode *CGN : FunctionsToRemove) { in removeDeadFunctions()
H A DInternalize.cpp188 CallGraphNode *ExternalNode = CG ? CG->getExternalCallingNode() : nullptr; in internalizeModule()
/llvm-project-15.0.7/llvm/tools/opt/
H A DPrintSCC.cpp99 const std::vector<CallGraphNode*> &nextSCC = *SCCI; in runOnModule()
101 for (std::vector<CallGraphNode*>::const_iterator I = nextSCC.begin(), in runOnModule()
/llvm-project-15.0.7/llvm/unittests/IR/
H A DLegacyPassManagerTest.cpp597 for (CallGraphNode *N : SCMM) { in runOnSCC()
606 CallGraphNode *ExtCallingNode = CG.getExternalCallingNode(); in runOnSCC()
612 CallGraphNode *N = *(SCMM.begin()); in runOnSCC()
621 return llvm::any_of(SCMM, [Fn](CallGraphNode *CGN) { in runOnSCC()
713 for (CallGraphNode *CGN : SCC) { in runOnSCC()
729 CallGraphNode *CallerCGN = CG[OldCB->getParent()->getParent()]; in runOnSCC()
731 [CGN](const CallGraphNode::CallRecord &CallRecord) { in runOnSCC()
/llvm-project-15.0.7/llvm/lib/Target/AMDGPU/
H A DAMDGPUReplaceLDSUseWithPointer.cpp400 SmallPtrSet<CallGraphNode *, 8> AddressTakenFunctions;
431 SmallVector<CallGraphNode *, 8> CGNStack(depth_first(KCGN)); in collectReachableCallees()
432 SmallPtrSet<CallGraphNode *, 8> VisitedCGNodes; in collectReachableCallees()
H A DAMDGPUAnnotateKernelFeatures.cpp115 for (CallGraphNode *I : SCC) { in runOnSCC()

12