haifa-sched.c (schedule_insns): Correctly remove inter-block dependencies after reload.

* haifa-sched.c (schedule_insns): Correctly remove inter-block
        dependencies after reload.

From-SVN: r17346
This commit is contained in:
Richard Henderson 1998-01-13 13:38:31 -08:00 committed by Jeff Law
parent 88ea0ad1b2
commit c995fea195
2 changed files with 15 additions and 3 deletions

View File

@ -1,3 +1,8 @@
Tue Jan 13 22:39:40 1998 Richard Henderson (rth@cygnus.com)
* haifa-sched.c (schedule_insns): Correctly remove inter-block
dependencies after reload.
Tue Jan 13 22:22:31 1998 Franz Sirl <franz.sirl-kernel@lauterbach.com>
* rs6000/linux.h (CPP_PREDEFINES): Add -D__ELF__.

View File

@ -8533,16 +8533,23 @@ schedule_insns (dump_file)
for (b = 0; b < n_basic_blocks; b++)
for (insn = basic_block_head[b];; insn = NEXT_INSN (insn))
{
rtx link;
rtx link, prev;
if (GET_RTX_CLASS (GET_CODE (insn)) == 'i')
{
for (link = LOG_LINKS (insn); link; link = XEXP (link, 1))
prev = NULL_RTX;
link = LOG_LINKS (insn);
while (link)
{
rtx x = XEXP (link, 0);
if (INSN_BLOCK (x) != b)
remove_dependence (insn, x);
{
remove_dependence (insn, x);
link = prev ? XEXP (prev, 1) : LOG_LINKS (insn);
}
else
prev = link, link = XEXP (prev, 1);
}
}