X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fbe%2Fbecopyopt.c;h=e2d165c44c09e961baae397bd083c96a685858c8;hb=b9d45e08e23bcf058fa8f2d9e18dd78e8cccd044;hp=8df101d075821254781ac1040426ef914c24b828;hpb=1cca59b6221423d7699ef9f86a0ef51283a80353;p=libfirm diff --git a/ir/be/becopyopt.c b/ir/be/becopyopt.c index 8df101d07..e2d165c44 100644 --- a/ir/be/becopyopt.c +++ b/ir/be/becopyopt.c @@ -90,11 +90,13 @@ static const lc_opt_enum_mask_items_t algo_items[] = { { NULL, 0 } }; +typedef int (*opt_funcptr)(void); + static const lc_opt_enum_func_ptr_items_t cost_func_items[] = { - { "freq", co_get_costs_exec_freq }, - { "loop", co_get_costs_loop_depth }, - { "one", co_get_costs_all_one }, - { NULL, 0 } + { "freq", (opt_funcptr) co_get_costs_exec_freq }, + { "loop", (opt_funcptr) co_get_costs_loop_depth }, + { "one", (opt_funcptr) co_get_costs_all_one }, + { NULL, NULL } }; static lc_opt_enum_mask_var_t dump_var = { @@ -110,7 +112,7 @@ static lc_opt_enum_mask_var_t algo_var = { }; static lc_opt_enum_func_ptr_var_t cost_func_var = { - &cost_func, cost_func_items + (opt_funcptr*) &cost_func, cost_func_items }; static const lc_opt_table_entry_t options[] = { @@ -1463,16 +1465,16 @@ void co_driver(be_chordal_env_t *cenv) co_complete_stats(co, &after); if(do_stats) { - int optimizable_costs = after.max_costs - after.inevit_costs; - int evitable = after.costs - after.inevit_costs; + ulong64 optimizable_costs = after.max_costs - after.inevit_costs; + ulong64 evitable = after.costs - after.inevit_costs; ir_printf("%30F ", cenv->irg); - printf("%10s %10llu%10llu%10llu", cenv->cls->name, after.max_costs, before.costs, after.inevit_costs); + printf("%10s %10" ULL_FMT "%10" ULL_FMT "%10" ULL_FMT, cenv->cls->name, after.max_costs, before.costs, after.inevit_costs); if(optimizable_costs > 0) - printf("%10llu %5.2f\n", after.costs, (evitable * 100.0) / optimizable_costs); + printf("%10" ULL_FMT " %5.2f\n", after.costs, (evitable * 100.0) / optimizable_costs); else - printf("%10llu %5s\n", after.costs, "-"); + printf("%10" ULL_FMT " %5s\n", after.costs, "-"); } be_stat_ev_ull("co_after_costs", after.costs);