X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fana%2Firouts.h;h=102655111750ab4e36227c8f0e48e95051e03ec3;hb=4bad1346ff2abc3923beea23e5ac949acc7ca514;hp=04c06628233e4daa93ebd4dabea42d8e38453424;hpb=2eac1656f9f2a371127b9a5fac43cbf0648002c0;p=libfirm diff --git a/ir/ana/irouts.h b/ir/ana/irouts.h index 04c066282..102655111 100644 --- a/ir/ana/irouts.h +++ b/ir/ana/irouts.h @@ -20,8 +20,6 @@ * @todo eventually add reverse conrtol flow graph. (If needed.) */ -/* $Id$ */ - # ifndef _IROUTS_H_ # define _IROUTS_H_ @@ -36,22 +34,22 @@ /** To iterate through the successors iterate from 0 to i < get_irn_outs(). No order of successors guaranteed. Will return edges from block to floating - nodes even if irgraph is in state "floats". */ + nodes even if irgraph is in state "op_pin_state_floats". */ /* returns the number of successors of the node: */ int get_irn_n_outs (ir_node *node); /** Get predecessor n */ -INLINE ir_node *get_irn_out (ir_node *node, int pos); +ir_node *get_irn_out (ir_node *node, int pos); /** Set predecessor n */ -INLINE void set_irn_out (ir_node *node, int pos, ir_node *out); +void set_irn_out (ir_node *node, int pos, ir_node *out); /* Methods to iterate through the control flow graph. Iterate from 0 to i < get_Block_cfg_outs(block). No order of successors guaranteed. */ int get_Block_n_cfg_outs (ir_node *node); /** Access predecessor n. */ -INLINE ir_node *get_Block_cfg_out (ir_node *node, int pos); +ir_node *get_Block_cfg_out (ir_node *node, int pos); #ifndef _IRG_WALK_FUNC_TYPEDEF_ #define _IRG_WALK_FUNC_TYPEDEF_ @@ -79,9 +77,12 @@ void irg_out_block_walk(ir_node *node, /** Computes the out edges. Sets a flag in irg to "outs_consistent". If the graph is changed this flag must be set to "outs_inconsistent". Computes out edges from block to floating nodes even if graph is in state - "floats". Optimizes Tuple nodes. */ + "op_pin_state_floats". Optimizes Tuple nodes. */ void compute_outs(ir_graph *irg); -/** Frees the out datastructures. Sets the flag in irg to "no_outs". */ +/** Computes the out edges in interprocedural view */ +void compute_ip_outs(void); +/** Frees the out datastructures. Sets the flag in irg to "outs_none". */ +void free_ip_outs(void); void free_outs(ir_graph *irg); #endif /* _IROUTS_H_ */