PIPS
callgraph.h
Go to the documentation of this file.
1 /* Warning! Do not modify this file that is automatically generated! */
2 /* Modify src/Libs/callgraph/callgraph-local.h instead, to add your own modifications. */
3 
4 /* header file built by cproto */
5 
6 #ifndef callgraph_header_included
7 #define callgraph_header_included
8 /* callgraph-local.h */
9 /*
10 
11  $Id: callgraph-local.h 23065 2016-03-02 09:05:50Z coelho $
12 
13  Copyright 1989-2016 MINES ParisTech
14 
15  This file is part of PIPS.
16 
17  PIPS is free software: you can redistribute it and/or modify it
18  under the terms of the GNU General Public License as published by
19  the Free Software Foundation, either version 3 of the License, or
20  any later version.
21 
22  PIPS is distributed in the hope that it will be useful, but WITHOUT ANY
23  WARRANTY; without even the implied warranty of MERCHANTABILITY or
24  FITNESS FOR A PARTICULAR PURPOSE.
25 
26  See the GNU General Public License for more details.
27 
28  You should have received a copy of the GNU General Public License
29  along with PIPS. If not, see <http://www.gnu.org/licenses/>.
30 
31 */
32 /* callgraph.h
33  include file for callgraphs
34  */
35 
36 #ifndef CALLGRAPH_INCLUDED
37 #define CALLGRAPH_INCLUDED
38 
39 #define CALLGRAPH_NOT_FOUND NULL
40 
41 #define CALLGRAPH_DRAW "CALLGRAPH_DRAW"
42 #define CALLGRAPH_DEBUG "CALLGRAPH_DEBUG"
43 #define CALLGRAPH_DEBUG_LEVEL "CALLGRAPH_DEBUG_LEVEL"
44 #define CALLGRAPH_SHORT_NAMES "CALLGRAPH_SHORT_NAMES"
45 
46 #define CALLGRAPH_INDENT 4
47 
48 #endif /* CALLGRAPH_INCLUDED */
49 /* cproto-generated files */
50 /* callgraph.c */
51 extern list string_to_callees(const string /*module_name*/);
52 extern list entity_to_callees(entity /*mod*/);
53 extern bool module_is_called_by_main_program_p(entity /*mod*/);
54 extern list callers_to_call_sites(list /*callers_statement*/, entity /*called_module*/);
55 extern list callers_to_statements(list /*callers*/);
56 extern void sort_parameters(entity /*module*/, gen_cmp_func_t /*cmp*/);
57 extern bool module_to_callgraph(entity /*module*/, text (* /*module_to_text*/)(const string));
58 extern callees compute_callees(const statement /*stat*/);
59 extern bool callgraph(const string /*name*/);
60 /* print.c */
61 extern void print_callees(callees /*c*/);
62 extern bool print_decorated_call_graph(const string /*module_name*/, text (* /*module_to_text*/)(const string));
63 extern bool print_call_graph(const string /*module_name*/);
64 /* graph.c */
65 extern bool graph_of_calls(const string /*name*/);
66 extern bool full_graph_of_calls(string /*name*/);
67 #endif /* callgraph_header_included */
bool print_decorated_call_graph(const string, text(*)(const string))
Definition: print.c:64
bool callgraph(const string)
callgraph computes the caller list of each module, using the callees list of them.
Definition: callgraph.c:460
list callers_to_call_sites(list, entity)
given a list callers_statement of module statements returns a list of calls to module called_module
Definition: callgraph.c:149
bool module_is_called_by_main_program_p(entity)
Definition: callgraph.c:103
bool print_call_graph(const string)
Definition: print.c:82
void sort_parameters(entity, gen_cmp_func_t)
change the parameter order for function module using comparison function cmp both compilation unit an...
Definition: callgraph.c:180
bool module_to_callgraph(entity, text(*)(const string))
Definition: callgraph.c:270
bool full_graph_of_calls(string)
To be called by pipsmake.
Definition: graph.c:147
list string_to_callees(const string)
CALLGRAPH_INCLUDED.
Definition: callgraph.c:69
list entity_to_callees(entity)
Definition: callgraph.c:89
bool graph_of_calls(const string)
graph.c
Definition: graph.c:120
callees compute_callees(const statement)
Recompute the callees of a module statement.
Definition: callgraph.c:355
void print_callees(callees)
print.c
Definition: print.c:52
list callers_to_statements(list)
given a list callers of module name calling module called module return a list of their body
Definition: callgraph.c:163
int(* gen_cmp_func_t)(const void *, const void *)
Definition: newgen_types.h:114
The structure used to build lists in NewGen.
Definition: newgen_list.h:41