X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fbe%2Fbechordal_main.c;h=8e19a34eb2da2868b828cf1498a9a7514cf5bc5f;hb=1edb00d5258b7364394b3d2eb4e7b70a22a6ecd0;hp=8238ad71fc40aabfb86735888fba43031c1a5b15;hpb=ab5898958b8427235ff6a97a35433817ba6d75f0;p=libfirm diff --git a/ir/be/bechordal_main.c b/ir/be/bechordal_main.c index 8238ad71f..8e19a34eb 100644 --- a/ir/be/bechordal_main.c +++ b/ir/be/bechordal_main.c @@ -38,9 +38,8 @@ #include "iterator.h" #include "firm_config.h" -#include -#include -#include +#include "lc_opts.h" +#include "lc_opts_enum.h" #include "ircons_t.h" #include "irmode_t.h" @@ -182,7 +181,7 @@ static void dump(unsigned mask, ir_graph *irg, */ static void memory_operand_walker(ir_node *irn, void *env) { be_chordal_env_t *cenv = env; - const arch_env_t *aenv = cenv->birg->main_env->arch_env; + const arch_env_t *aenv = &cenv->birg->main_env->arch_env; const ir_edge_t *edge, *ne; ir_node *block; ir_node *spill; @@ -288,7 +287,7 @@ static void node_stats(be_irg_t *birg, const arch_register_class_t *cls, node_st struct node_stat_walker env; memset(stat, 0, sizeof(stat[0])); - env.arch_env = birg->main_env->arch_env; + env.arch_env = &birg->main_env->arch_env; env.mem_phis = bitset_irg_malloc(birg->irg); env.stat = stat; env.cls = cls; @@ -339,7 +338,7 @@ static void pre_spill(post_spill_env_t *pse, const arch_register_class_t *cls) stat_ev_ctx_push_str("bechordal_cls", pse->cls->name); stat_ev_do(node_stats(birg, pse->cls, &node_stat)); - stat_ev_do(pse->pre_spill_cost = be_estimate_irg_costs(irg, main_env->arch_env, birg->exec_freq)); + stat_ev_do(pse->pre_spill_cost = be_estimate_irg_costs(irg, &main_env->arch_env, birg->exec_freq)); stat_ev_dbl("phis_before_spill", node_stat.n_phis); /* put all ignore registers into the ignore register set. */ @@ -375,7 +374,7 @@ static void post_spill(post_spill_env_t *pse, int iteration) { stat_ev_dbl("mem_phis", node_stat.n_mem_phis); stat_ev_dbl("reloads", node_stat.n_reloads); stat_ev_dbl("spills", node_stat.n_spills); - stat_ev_dbl("spillcosts", be_estimate_irg_costs(irg, main_env->arch_env, birg->exec_freq) - pse->pre_spill_cost); + stat_ev_dbl("spillcosts", be_estimate_irg_costs(irg, &main_env->arch_env, birg->exec_freq) - pse->pre_spill_cost); /* If we have a backend provided spiller, post spill is @@ -474,7 +473,7 @@ static void post_spill(post_spill_env_t *pse, int iteration) { static void be_ra_chordal_main(be_irg_t *birg) { const be_main_env_t *main_env = birg->main_env; - const arch_isa_t *isa = arch_env_get_isa(main_env->arch_env); + const arch_isa_t *isa = arch_env_get_isa(&main_env->arch_env); ir_graph *irg = birg->irg; int j, m; be_chordal_env_t chordal_env;