fixed AM optimization
[libfirm] / ir / be / beirgmod.c
index 1ff9db8..87feb55 100644 (file)
@@ -386,7 +386,7 @@ void be_ssa_constr_ignore(dom_front_info_t *info, int n_origs, ir_node *orig_nod
                ir_node *bl = get_nodes_block(copy_nodes[i]);
                DBG((dbg, LEVEL_1, "\t%+F in block %+F\n", copy_nodes[i], bl));
                pset_insert_ptr(copies, copy_nodes[i]);
-               pset_insert_ptr(copy_blocks, get_nodes_block(bl));
+               pset_insert_ptr(copy_blocks, get_nodes_block(copy_nodes[i]));
        }
 
        /*
@@ -412,6 +412,14 @@ void be_ssa_constr_ignore(dom_front_info_t *info, int n_origs, ir_node *orig_nod
 
 }
 
+void be_ssa_constr(dom_front_info_t *info, int n_origs, ir_node *orig[], int n_copies, ir_node *copy_nodes[])
+{
+       pset *empty_set = be_empty_set();
+
+       assert(pset_count(empty_set) == 0);
+       be_ssa_constr_ignore(info, n_origs, orig, n_copies, copy_nodes, empty_set);
+}
+
 
 void be_ssa_constr_single(dom_front_info_t *info, ir_node *orig, int n, ir_node *copy_nodes[])
 {