| 
    libFirm 1.20 
   | 
 
Representation and computation of the callgraph. More...
Go to the source code of this file.
Typedefs | |
| typedef void | callgraph_walk_func (ir_graph *g, void *env) | 
| A function type for functions passed to the callgraph walker.   | |
Enumerations | |
| enum | irp_callgraph_state { irp_callgraph_none, irp_callgraph_consistent, irp_callgraph_inconsistent, irp_callgraph_and_calltree_consistent } | 
| Flag to indicate state of callgraph.  More... | |
| enum | loop_nesting_depth_state { loop_nesting_depth_none, loop_nesting_depth_consistent, loop_nesting_depth_inconsistent } | 
| The state of loop nesting depth.  More... | |
Functions | |
| irp_callgraph_state | get_irp_callgraph_state (void) | 
| Returns the callgraph state of the program representation.   | |
| void | set_irp_callgraph_state (irp_callgraph_state s) | 
| Sets the callgraph state of the program representation.   | |
| size_t | get_irg_n_callers (const ir_graph *irg) | 
| Returns the number of procedures that call the given irg.   | |
| ir_graph * | get_irg_caller (const ir_graph *irg, size_t pos) | 
| Returns the caller at position pos.   | |
| int | is_irg_caller_backedge (const ir_graph *irg, size_t pos) | 
| Returns non-zero if the caller at position pos is "a backedge", i.e.   | |
| int | has_irg_caller_backedge (const ir_graph *irg) | 
| Returns non-zero if the irg has a backedge caller.   | |
| size_t | get_irg_caller_loop_depth (const ir_graph *irg, size_t pos) | 
| Returns the maximal loop depth of call nodes that call along this edge.   | |
| size_t | get_irg_n_callees (const ir_graph *irg) | 
| Returns the number of procedures that are called by the given irg.   | |
| ir_graph * | get_irg_callee (const ir_graph *irg, size_t pos) | 
| Returns the callee at position pos.   | |
| int | is_irg_callee_backedge (const ir_graph *irg, size_t pos) | 
| Returns non-zero if the callee at position pos is "a backedge", i.e.   | |
| int | has_irg_callee_backedge (const ir_graph *irg) | 
| Returns non-zero if the irg has a backedge callee.   | |
| size_t | get_irg_callee_loop_depth (const ir_graph *irg, size_t pos) | 
| Returns the maximal loop depth of call nodes that call along this edge.   | |
| size_t | get_irg_loop_depth (const ir_graph *irg) | 
| Returns the maximal loop depth of all paths from an external visible method to this irg.   | |
| size_t | get_irg_recursion_depth (const ir_graph *irg) | 
| Returns the maximal recursion depth of all paths from an external visible method to this irg.   | |
| double | get_irg_method_execution_frequency (const ir_graph *irg) | 
| Returns the method execution frequency of a graph.   | |
| void | compute_callgraph (void) | 
| Construct the callgraph.   | |
| void | free_callgraph (void) | 
| Destruct the callgraph.   | |
| void | callgraph_walk (callgraph_walk_func *pre, callgraph_walk_func *post, void *env) | 
| Walks over the callgraph.   | |
| void | find_callgraph_recursions (void) | 
| Compute the backedges that represent recursions and a looptree.   | |
| void | analyse_loop_nesting_depth (void) | 
| Computes the interprocedural loop nesting information.   | |
| loop_nesting_depth_state | get_irp_loop_nesting_depth_state (void) | 
| Returns the nesting depth state of the program representation.   | |
| void | set_irp_loop_nesting_depth_state (loop_nesting_depth_state s) | 
| Sets the nesting depth state of the program representation.   | |
| void | set_irp_loop_nesting_depth_state_inconsistent (void) | 
| Marks the nesting depth state of the program representation as inconsistent.   | |
Representation and computation of the callgraph.
Definition in file callgraph.h.