becopyopt: Fix typos in comments.
[libfirm] / ir / common / irtools.c
index 5accaf5..ea56db0 100644 (file)
@@ -1,20 +1,6 @@
 /*
- * Copyright (C) 1995-2011 University of Karlsruhe.  All right reserved.
- *
  * This file is part of libFirm.
- *
- * This file may be distributed and/or modified under the terms of the
- * GNU General Public License version 2 as published by the Free Software
- * Foundation and appearing in the file LICENSE.GPL included in the
- * packaging of this file.
- *
- * Licensees holding valid libFirm Professional Edition licenses may use
- * this file in accordance with the libFirm Commercial License.
- * Agreement provided with the Software.
- *
- * This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
- * WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE.
+ * Copyright (C) 2012 University of Karlsruhe.
  */
 
 /**
@@ -69,28 +55,33 @@ void firm_collect_block_phis(ir_node *node, void *env)
 
 void copy_irn_to_irg(ir_node *n, ir_graph *irg)
 {
-       ir_op *op = get_irn_op(n);
        ir_graph *old_irg;
        ir_node *nn = NULL;
 
        /* do not copy standard nodes */
-       if (op == op_NoMem)
+       switch (get_irn_opcode(n)) {
+       case iro_NoMem:
                n = get_irg_no_mem(irg);
-       else if (op == op_Block) {
-               old_irg = get_irn_irg(n);
+               break;
 
+       case iro_Block:
+               old_irg = get_irn_irg(n);
                if (n == get_irg_start_block(old_irg))
                        nn = get_irg_start_block(irg);
                else if (n == get_irg_end_block(old_irg))
                        nn = get_irg_end_block(irg);
-       }
-       else if (op == op_Start)
+               break;
+
+       case iro_Start:
                nn = get_irg_start(irg);
-       else if (op == op_End)
+               break;
+
+       case iro_End:
                nn = get_irg_end(irg);
-       else if (op == op_Proj) {
-               old_irg = get_irn_irg(n);
+               break;
 
+       case iro_Proj:
+               old_irg = get_irn_irg(n);
                if (n == get_irg_initial_exec(old_irg))
                        nn = get_irg_initial_exec(irg);
                else if (n == get_irg_frame(old_irg))
@@ -99,6 +90,7 @@ void copy_irn_to_irg(ir_node *n, ir_graph *irg)
                        nn = get_irg_initial_mem(irg);
                else if (n == get_irg_args(old_irg))
                        nn = get_irg_args(irg);
+               break;
        }
 
        if (nn) {
@@ -109,7 +101,7 @@ void copy_irn_to_irg(ir_node *n, ir_graph *irg)
        nn = new_ir_node(get_irn_dbg_info(n),
                         irg,
                         NULL,            /* no block yet, will be set later */
-                        op,
+                        get_irn_op(n),
                         get_irn_mode(n),
                         get_irn_arity(n),
                         get_irn_in(n) + 1);
@@ -180,6 +172,7 @@ void irn_rewire_inputs(ir_node *node)
 {
        ir_node *new_node;
        int      arity;
+       int      n_deps;
        int      i;
 
        new_node = get_new_node(node);
@@ -197,15 +190,20 @@ void irn_rewire_inputs(ir_node *node)
                set_irn_n(new_node, i, new_in);
        }
 
+       n_deps = get_irn_deps(new_node);
+       for (i = 0; i < n_deps; ++i) {
+               ir_node *dep     = get_irn_dep(node, i);
+               ir_node *new_dep = get_new_node(dep);
+               set_irn_dep(new_node, i, new_dep);
+       }
+
        /* Now the new node is complete. We can add it to the hash table for CSE. */
        add_identities(new_node);
 }
 
 void firm_pset_dump(pset *set)
 {
-       void *obj;
-
-       foreach_pset(set, void*, obj) {
+       foreach_pset(set, void, obj) {
                ir_fprintf(stderr, "%+F\n", obj);
        }
 }