libFirm
irouts.h File Reference

Compute and access out edges (also called def-use edges). More...

#include "firm_types.h"
#include "begin.h"
#include "end.h"

Go to the source code of this file.

Functions

unsigned get_irn_n_outs (const ir_node *node)
 Returns the number of successors of the node:
ir_nodeget_irn_out (const ir_node *def, unsigned pos)
 Returns the User of a node from the Def-Use edge at position pos.
ir_nodeget_irn_out_ex (const ir_node *def, unsigned pos, int *in_pos)
 Returns the User and its input position from the Def-Use edge of def at position pos.
void set_irn_out (ir_node *def, unsigned pos, ir_node *use, int in_pos)
 Sets the User at position pos.
unsigned get_Block_n_cfg_outs (const ir_node *node)
 Returns the number of control flow successors, ignore keep-alives.
unsigned get_Block_n_cfg_outs_ka (const ir_node *node)
 Returns the number of control flow successors, honor keep-alives.
ir_nodeget_Block_cfg_out (const ir_node *node, unsigned pos)
 Access predecessor n, ignore keep-alives.
ir_nodeget_Block_cfg_out_ka (const ir_node *node, unsigned pos)
 Access predecessor n, honor keep-alives.
void irg_out_walk (ir_node *node, irg_walk_func *pre, irg_walk_func *post, void *env)
 Walks over the graph starting at node.
void irg_out_block_walk (ir_node *node, irg_walk_func *pre, irg_walk_func *post, void *env)
 Walks only over Block nodes in the graph.
void compute_irg_outs (ir_graph *irg)
 Computes the out edges.
void assure_irg_outs (ir_graph *irg)
 Recomputes out edges if necessary.
void free_irg_outs (ir_graph *irg)
 Frees memory occupied by out edges datastructures.

Detailed Description

Compute and access out edges (also called def-use edges).

Author
Goetz Lindenmaier, Michael Beck
Date
1.2002

Definition in file irouts.h.