From 6710ef1e9434a50ce65998c68e9dffb82f349970 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Christian=20W=C3=BCrdig?= Date: Fri, 16 Mar 2007 14:26:48 +0000 Subject: [PATCH] added more statistics --- ir/be/beilpsched.c | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/ir/be/beilpsched.c b/ir/be/beilpsched.c index b507a5a39..31c52422f 100644 --- a/ir/be/beilpsched.c +++ b/ir/be/beilpsched.c @@ -3,6 +3,7 @@ * An ILP scheduler based on * "ILP-based Instruction Scheduling for IA-64" * by Daniel Kaestner and Sebastian Winkel + * extended with register pressure constraints by Christian Wuerdig * * @date 22.10.2005 * @author Christian Wuerdig @@ -1920,12 +1921,15 @@ static void create_ilp(ir_node *block, void *walk_env) { #ifdef FIRM_STATISTICS if (be_stat_ev_is_active()) { be_stat_ev("nodes", ba->block_last_idx); + be_stat_ev("vars", lpp ? lpp->var_next : 0); + be_stat_ev("csts", lpp ? lpp->cst_next : 0); } #endif /* FIRM_STATISTICS */ if (need_heur) { #ifdef FIRM_STATISTICS if (be_stat_ev_is_active()) { be_stat_ev("time", -1); + be_stat_ev_dbl("opt", 0.0); } #endif /* FIRM_STATISTICS */ list_sched_single_block(env->birg, block, env->be_opts); @@ -1933,10 +1937,15 @@ static void create_ilp(ir_node *block, void *walk_env) { else { #ifdef FIRM_STATISTICS if (be_stat_ev_is_active()) { - if (lpp) + if (lpp) { + double opt = lpp->sol_state == lpp_optimal ? 100.0 : 100.0 * lpp->best_bound / lpp->objval; be_stat_ev_dbl("time", lpp->sol_time); - else - be_stat_ev("time", 0); + be_stat_ev_dbl("opt", opt); + } + else { + be_stat_ev_dbl("time", 0.0); + be_stat_ev_dbl("opt", 100.0); + } } #endif /* FIRM_STATISTICS */ apply_solution(env, lpp, block); -- 2.20.1