From: Daniel Grund Date: Fri, 17 Mar 2006 16:07:20 +0000 (+0000) Subject: Bugfixes. X-Git-Url: http://nsz.repo.hu/git/?a=commitdiff_plain;h=d78ff68d0afb420d8586aa9d0a28289941487101;p=libfirm Bugfixes. Reg pressure selector is enabled now --- diff --git a/ir/be/ia32/bearch_ia32.c b/ir/be/ia32/bearch_ia32.c index 7904c6fc0..22ef49feb 100644 --- a/ir/be/ia32/bearch_ia32.c +++ b/ir/be/ia32/bearch_ia32.c @@ -852,7 +852,6 @@ void ia32_get_call_abi(const void *self, ir_type *method_type, be_abi_call_t *ab /* set register parameters */ if (cc & cc_reg_param) { -// if (1) { /* determine the number of parameters passed via registers */ biggest_n = ia32_get_n_regparam_class(n, modes, &ignore_1, &ignore_2); @@ -932,7 +931,7 @@ list_sched_selector_t ia32_sched_selector; * Returns the reg_pressure scheduler with to_appear_in_schedule() overloaded */ static const list_sched_selector_t *ia32_get_list_sched_selector(const void *self) { - memcpy(&ia32_sched_selector, trivial_selector, sizeof(list_sched_selector_t)); + memcpy(&ia32_sched_selector, reg_pressure_selector, sizeof(list_sched_selector_t)); ia32_sched_selector.to_appear_in_schedule = ia32_to_appear_in_schedule; return &ia32_sched_selector; } diff --git a/ir/be/ia32/ia32_map_regs.c b/ir/be/ia32/ia32_map_regs.c index 378b15e0d..98e7e0e16 100644 --- a/ir/be/ia32/ia32_map_regs.c +++ b/ir/be/ia32/ia32_map_regs.c @@ -251,9 +251,9 @@ long ia32_translate_proj_pos(const ir_node *proj) { return 1; } else if (is_ia32_DivMod(pred)) { - if (nr == pn_DivMod_res_div || pn_Div_res) + if (nr == pn_DivMod_res_div || nr == pn_Div_res) return 0; - if (nr == pn_DivMod_res_mod || pn_Mod_res) + if (nr == pn_DivMod_res_mod || nr == pn_Mod_res) return 1; } else if (is_ia32_fDiv(pred)) {