Commit 0bfb9a69 by Richard Henderson Committed by Richard Henderson

haifa-sched.c (rank_for_schedule): Skip past last_scheduled_insn emitted by cycle_display.

        * haifa-sched.c (rank_for_schedule): Skip past last_scheduled_insn
        emitted by cycle_display.

From-SVN: r53072
parent 6b976d99
2002-05-02 Richard Henderson <rth@redhat.com>
* haifa-sched.c (rank_for_schedule): Skip past last_scheduled_insn
emitted by cycle_display.
2002-05-02 Loren J. Rittle <ljrittle@acm.org>
* doc/install.texi (*-*-freebsd*): Update to latest status.
......
......@@ -852,7 +852,7 @@ rank_for_schedule (x, y)
{
rtx tmp = *(const rtx *) y;
rtx tmp2 = *(const rtx *) x;
rtx link;
rtx link, lsi;
int tmp_class, tmp2_class, depend_count1, depend_count2;
int val, priority_val, weight_val, info_val;
......@@ -871,23 +871,28 @@ rank_for_schedule (x, y)
return info_val;
/* Compare insns based on their relation to the last-scheduled-insn. */
if (last_scheduled_insn)
for (lsi = last_scheduled_insn;
lsi && INSN_UID (lsi) >= old_max_uid;
lsi = PREV_INSN (lsi))
continue;
if (lsi)
{
/* Classify the instructions into three classes:
1) Data dependent on last schedule insn.
2) Anti/Output dependent on last scheduled insn.
3) Independent of last scheduled insn, or has latency of one.
Choose the insn from the highest numbered class if different. */
link = find_insn_list (tmp, INSN_DEPEND (last_scheduled_insn));
if (link == 0 || insn_cost (last_scheduled_insn, link, tmp) == 1)
link = find_insn_list (tmp, INSN_DEPEND (lsi));
if (link == 0 || insn_cost (lsi, link, tmp) == 1)
tmp_class = 3;
else if (REG_NOTE_KIND (link) == 0) /* Data dependence. */
tmp_class = 1;
else
tmp_class = 2;
link = find_insn_list (tmp2, INSN_DEPEND (last_scheduled_insn));
if (link == 0 || insn_cost (last_scheduled_insn, link, tmp2) == 1)
link = find_insn_list (tmp2, INSN_DEPEND (lsi));
if (link == 0 || insn_cost (lsi, link, tmp2) == 1)
tmp2_class = 3;
else if (REG_NOTE_KIND (link) == 0) /* Data dependence. */
tmp2_class = 1;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment