X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fbe%2Fbeschedtrace.c;h=ea8c05ed1a12effd804570acd2f8788386003d7a;hb=c4ff1c9959667db87996891435a12ae466563062;hp=53189c7f93f2be2ebdd1ea87b4a263cd60c85385;hpb=d90898f02129787bb8e991f4408ab175898a7c3e;p=libfirm diff --git a/ir/be/beschedtrace.c b/ir/be/beschedtrace.c index 53189c7f9..ea8c05ed1 100644 --- a/ir/be/beschedtrace.c +++ b/ir/be/beschedtrace.c @@ -5,6 +5,9 @@ * @date 28.08.2006 * @cvs-id $Id$ */ +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif #include @@ -597,7 +600,7 @@ static ir_node *heuristic_select(void *block_env, nodeset *ns, nodeset *lv) int reg_fact, cand_reg_fact; /* prefer instructions which can be scheduled early */ -#define PRIO_TIME 8 +#define PRIO_TIME 3 /* prefer instructions with lots of successors */ #define PRIO_NUMSUCCS 8 /* prefer instructions with long critical path */ @@ -617,7 +620,8 @@ static ir_node *heuristic_select(void *block_env, nodeset *ns, nodeset *lv) int sign = rdiff < 0; int chg = (rdiff < 0 ? -rdiff : rdiff) << PRIO_CHG_PRESS; - reg_fact = chg << cur_pressure; + //reg_fact = chg << cur_pressure; + reg_fact = chg * cur_pressure; if (reg_fact < chg) reg_fact = INT_MAX - 2; reg_fact = sign ? -reg_fact : reg_fact;