Remove the attribute const arch_env_t *arch_env from struct ia32_code_gen_t. We...
[libfirm] / ir / be / bessaconstr.c
index bd5a54f..eaf3a51 100644 (file)
@@ -46,9 +46,7 @@
  * This function reroutes all uses of the original value to the copies in the
  * corresponding dominance subtrees and creates Phi functions where necessary.
  */
-#ifdef HAVE_CONFIG_H
 #include "config.h"
-#endif
 
 /* statev in this file is extensive, so only enable if needed */
 #define DISABLE_STATEV
@@ -222,7 +220,7 @@ ir_node *search_def(be_ssa_construction_env_t *env, ir_node *at)
 static
 void introduce_def_at_block(ir_node *block, ir_node *def)
 {
-       if(irn_visited(block)) {
+       if (irn_visited_else_mark(block)) {
                ir_node *node = block;
                ir_node *current_def;
 
@@ -244,7 +242,6 @@ void introduce_def_at_block(ir_node *block, ir_node *def)
        } else {
                set_irn_link(block, def);
                set_irn_link(def, NULL);
-               mark_irn_visited(block);
        }
 }
 
@@ -350,9 +347,9 @@ ir_node **be_ssa_construction_get_new_phis(be_ssa_construction_env_t *env)
 void be_ssa_construction_fix_users_array(be_ssa_construction_env_t *env,
                                          ir_node **nodes, size_t nodes_len)
 {
-       stat_ev_cnt_decl(uses);
        const ir_edge_t *edge, *next;
        size_t i;
+       stat_ev_cnt_decl(uses);
 
        BE_TIMER_PUSH(t_ssa_constr);