rebuild edges after backend transform phase
[libfirm] / ir / be / besched.c
index 0026d35..02bbe79 100644 (file)
@@ -244,8 +244,6 @@ static void remove_dead_nodes_walker(ir_node *block, void *data)
        ir_node                 *node, *next;
 
        for (node = sched_first(block); ! sched_is_end(node); node = next) {
-               int i;
-
                /* get next node now, as after calling sched_remove it will be invalid */
                next = sched_next(node);
 
@@ -258,8 +256,7 @@ static void remove_dead_nodes_walker(ir_node *block, void *data)
                if (is_Bad(node))
                        continue;
 
-               for (i = get_irn_arity(node) - 1; i >= 0; --i)
-                       set_irn_n(node, i, new_r_Bad(env->irg));
+               be_kill_node(node);
        }
 }