improve firm profiler (based on patch by Steven Schäfer)
[libfirm] / ir / ir / irgmod.c
index 9b6f9c5..a19f30d 100644 (file)
@@ -82,9 +82,9 @@ void exchange(ir_node *old, ir_node *nw)
                /* copy all dependencies from old to new */
                add_irn_deps(nw, old);
 
-               edges_reroute(old, nw, irg);
-               edges_reroute_kind(old, nw, EDGE_KIND_DEP, irg);
-               edges_node_deleted(old, irg);
+               edges_reroute(old, nw);
+               edges_reroute_kind(old, nw, EDGE_KIND_DEP);
+               edges_node_deleted(old);
                /* noone is allowed to reference this node anymore */
                set_irn_op(old, op_Deleted);
        } else {
@@ -164,11 +164,11 @@ static void move(ir_node *node, ir_node *from_bl, ir_node *to_bl)
 
        /* move its Projs */
        if (get_irn_mode(node) == mode_T) {
-               ir_node *proj = get_irn_link(node);
+               ir_node *proj = (ir_node*)get_irn_link(node);
                while (proj) {
                        if (get_nodes_block(proj) == from_bl)
                                set_nodes_block(proj, to_bl);
-                       proj = get_irn_link(proj);
+                       proj = (ir_node*)get_irn_link(proj);
                }
        }