From 3c71f21d482e8df2cca220c4b83045a3212ea89c Mon Sep 17 00:00:00 2001 From: =?utf8?q?Christian=20W=C3=BCrdig?= Date: Wed, 19 Apr 2006 12:09:25 +0000 Subject: [PATCH] added additional option for copymin (can be switched off now) --- ir/be/bechordal_main.c | 9 ++++----- ir/be/bechordal_t.h | 1 + 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/ir/be/bechordal_main.c b/ir/be/bechordal_main.c index ddddad333..8b0f655ad 100644 --- a/ir/be/bechordal_main.c +++ b/ir/be/bechordal_main.c @@ -175,6 +175,7 @@ static const lc_opt_enum_int_items_t spill_items[] = { }; static const lc_opt_enum_int_items_t copymin_items[] = { + { "none", BE_CH_COPYMIN_NONE }, { "heur", BE_CH_COPYMIN_HEUR }, #ifdef WITH_ILP { "ilp", BE_CH_COPYMIN_ILP }, @@ -191,7 +192,6 @@ static const lc_opt_enum_int_items_t ifg_flavor_items[] = { static const lc_opt_enum_int_items_t lower_perm_items[] = { { "copy", BE_CH_LOWER_PERM_COPY }, { "swap", BE_CH_LOWER_PERM_SWAP }, - { "stat", BE_CH_LOWER_PERM_STAT }, { NULL, 0 } }; @@ -233,9 +233,9 @@ static lc_opt_enum_int_var_t dump_var = { static const lc_opt_table_entry_t be_chordal_options[] = { LC_OPT_ENT_ENUM_MASK("spill", "spill method (belady or ilp)", &spill_var), - LC_OPT_ENT_ENUM_PTR("copymin", "copymin method (heur or ilp)", ©min_var), + LC_OPT_ENT_ENUM_PTR("copymin", "copymin method (none, heur or ilp)", ©min_var), LC_OPT_ENT_ENUM_PTR("ifg", "interference graph flavour (std or fast)", &ifg_flavor_var), - LC_OPT_ENT_ENUM_MASK("perm", "perm lowering options (copy, swap, stat)", &lower_perm_var), + LC_OPT_ENT_ENUM_MASK("perm", "perm lowering options (copy, swap)", &lower_perm_var), LC_OPT_ENT_ENUM_MASK("dump", "select dump phases", &dump_var), { NULL } }; @@ -340,11 +340,11 @@ static void be_ra_chordal_main(const be_irg_t *bi) chordal_env.ifg = be_ifg_std_new(&chordal_env); be_ifg_check(chordal_env.ifg); -#if 1 /* copy minimization */ #ifdef COPYOPT_STAT co_compare_solvers(&chordal_env); #else + if (options.copymin_method != BE_CH_COPYMIN_NONE) { copy_opt_t *co = new_copy_opt(&chordal_env, co_get_costs_loop_depth); co_build_ou_structure(co); @@ -352,7 +352,6 @@ static void be_ra_chordal_main(const be_irg_t *bi) co_free_ou_structure(co); free_copy_opt(co); } -#endif #endif dump(BE_CH_DUMP_COPYMIN, irg, chordal_env.cls, "-copymin", dump_ir_block_graph_sched); be_ra_chordal_check(&chordal_env); diff --git a/ir/be/bechordal_t.h b/ir/be/bechordal_t.h index a6698e477..23399a78a 100644 --- a/ir/be/bechordal_t.h +++ b/ir/be/bechordal_t.h @@ -106,6 +106,7 @@ enum { BE_CH_DUMP_ALL = 2 * BE_CH_DUMP_LOWER - 1, /* copymin method */ + BE_CH_COPYMIN_NONE = 0, BE_CH_COPYMIN_HEUR = 1, BE_CH_COPYMIN_ILP = 2, -- 2.20.1