aiSee: Partial Call Graph of perl.c

Partial call graph of perl.c

Call graph of the file perl.c (Perl version 5.6.1). Edges show the calling relationship between functions, represented by nodes. External functions (i.e. functions that are called but not defined in the input file) are shown in orange, enabling interfaces to modules to be easily identified. A part of the graph is folded, i.e. some functions are hidden and represented by a single summary node (the purple one). The GDL source of the graph was automatically generated by aiCall for C.


Using unfolding or boxing operations in the aiSee browser enables the content of an internal function, i.e. the function’s control flow graph, to be visualized (see example).

Control flow graph

aiSee’s additional information windows enable source code comments to be viewed. Optionally, aiCall for C can include the comments in the corresponding basic blocks right from the start (see example).

Control flow graphControl flow graph with additional information windowsControl flow graph with integrated source code comments

Further options offered by aiCall for C include visualization of pre-processed C code (see example), customizable color legend, and a special linearized graph layout algorithm, which provides for an even better view of program structures like loops and conditional jumps.

Control flow graphControl flow graph: pre-processed C code