X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fbe%2Fbessaconstr.c;h=372a8fc6a2e8aaeee54a9b55dc8b508e4f7898ae;hb=89dc24503c04139bb05504059b291d6d89f99661;hp=72b13a2528b6a64da9f781bcf25c8d25ba3a1513;hpb=1ce363f80e6a204d4011f85813362d9bd1d0e7e4;p=libfirm diff --git a/ir/be/bessaconstr.c b/ir/be/bessaconstr.c index 72b13a252..372a8fc6a 100644 --- a/ir/be/bessaconstr.c +++ b/ir/be/bessaconstr.c @@ -55,6 +55,7 @@ #include "besched_t.h" #include "beintlive_t.h" #include "beirg_t.h" +#include "be_t.h" #include "debug.h" #include "error.h" @@ -291,7 +292,7 @@ void be_ssa_construction_init(be_ssa_construction_env_t *env, be_irg_t *birg) env->min_dom = INT_MAX; env->max_dom = 0; - set_using_visited(irg); + set_using_irn_visited(irg); set_using_block_visited(irg); set_using_irn_link(irg); @@ -309,7 +310,7 @@ void be_ssa_construction_destroy(be_ssa_construction_env_t *env) del_waitq(env->worklist); DEL_ARR_F(env->new_phis); - clear_using_visited(env->irg); + clear_using_irn_visited(env->irg); clear_using_block_visited(env->irg); clear_using_irn_link(env->irg); @@ -381,6 +382,8 @@ void be_ssa_construction_fix_users_array(be_ssa_construction_env_t *env, const ir_edge_t *edge, *next; size_t i; + BE_TIMER_PUSH(t_ssa_constr); + if(!env->iterated_domfront_calculated) { mark_iterated_dominance_frontiers(env); env->iterated_domfront_calculated = 1; @@ -423,6 +426,8 @@ void be_ssa_construction_fix_users_array(be_ssa_construction_env_t *env, stat_ev_cnt_inc(uses); } } + BE_TIMER_POP(t_ssa_constr); + stat_ev_tim_pop("bessaconstr_fix_time"); stat_ev_cnt_done(uses, "bessaconstr_uses"); } @@ -438,11 +443,15 @@ void be_ssa_construction_update_liveness_phis(be_ssa_construction_env_t *env, { int i, n; + BE_TIMER_PUSH(t_ssa_constr); + n = ARR_LEN(env->new_phis); for(i = 0; i < n; ++i) { ir_node *phi = env->new_phis[i]; be_liveness_introduce(lv, phi); } + + BE_TIMER_POP(t_ssa_constr); } void be_init_ssaconstr(void)