+/*
+ * Project: libFIRM
+ * File name: ir/ana/irouts.c
+ * Purpose: Compute and access out edges.
+ * Author: Goetz Lindenmaier
+ * Modified by:
+ * Created: 1.2002
+ * CVS-ID: $Id$
+ * Copyright: (c) 2002-2003 Universität Karlsruhe
+ * Licence: This file protected by GPL - GNU GENERAL PUBLIC LICENSE.
+ */
+
+
+
/* Copyright (C) 2002 by Universitaet Karlsruhe
-** All rights reserved.
-**
-** Authors: Goetz Lindenmaier
-**
-** irouts.c --- Compute out edges for ir nodes (also called def-use
-** edges).
-**
+* All rights reserved.
+*
+* Authors: Goetz Lindenmaier
+*
+* irouts.c --- Compute out edges for ir nodes (also called def-use
+* edges).
+*
*/
/* $Id$ */
return NULL;
}
-void irg_out_walk_2(ir_node *node, void (pre)(ir_node*, void*),
- void (post)(ir_node*, void*), void *env) {
+void irg_out_walk_2(ir_node *node, irg_walk_func *pre,
+ irg_walk_func *post, void *env) {
int i;
ir_node *succ;
}
void irg_out_walk(ir_node *node,
- void (pre)(ir_node*, void*), void (post)(ir_node*, void*),
- void *env) {
+ irg_walk_func *pre, irg_walk_func *post,
+ void *env) {
assert(node);
if (get_irg_outs_state(current_ir_graph) != no_outs) {
inc_irg_visited (current_ir_graph);
}
void irg_out_block_walk2(ir_node *bl,
- void (pre)(ir_node*, void*), void (post)(ir_node*, void*),
+ irg_walk_func *pre, irg_walk_func *post,
void *env) {
int i;
/* Walks only over Block nodes in the graph. Has it's own visited
flag, so that it can be interleaved with the other walker. */
void irg_out_block_walk(ir_node *node,
- void (pre)(ir_node*, void*), void (post)(ir_node*, void*),
+ irg_walk_func *pre, irg_walk_func *post,
void *env) {
assert((get_irn_op(node) == op_Block) || (get_irn_mode(node) == mode_X));
/* Returns the amount of out edges for not yet visited successors. */
-int count_outs(ir_node *n) {
+static int count_outs(ir_node *n) {
int start, i, res;
ir_node *succ;
return res;
}
-ir_node **set_out_edges(ir_node *n, ir_node **free) {
+static ir_node **set_out_edges(ir_node *n, ir_node **free) {
int n_outs, start, i;
ir_node *succ;
return free;
}
-INLINE void fix_start_proj(ir_graph *irg) {
+static INLINE void fix_start_proj(ir_graph *irg) {
ir_node *proj = NULL, *startbl;
int i;
if (get_Block_n_cfg_outs(get_irg_start_block(irg))) {