callgraph
Call graph is a representation of calling relationships in a program. It is a directed graph in which each node denotes a function, method, or subroutine, and each edge from A to B indicates that A may call B. Call graphs can be intraprocedural, capturing calls inside a single procedure, or interprocedural, spanning the entire program.
Call graphs can be built statically, by analyzing source code or an intermediate representation to determine
Nodes and edges are typically stored as adjacency lists or matrices. Recursion creates cycles, so strongly
Applications include understanding program structure, guiding optimizations (for example inlining decisions or dead code elimination), profiling
Tools and contexts: compilers, analysis frameworks, and visualization utilities can generate and display call graphs, occasionally