From David Edelsohn, via the GCC 2.8 development sources:
* loop.c (combine_movables): Earlier insns don't match later ones. This fixes compilation problems with sa(1) and pkgsrc/games/abuse.
This commit is contained in:
parent
8ff7d07b09
commit
7884b51fe1
|
@ -1250,7 +1250,9 @@ combine_movables (movables, nregs)
|
|||
bzero (matched_regs, nregs);
|
||||
matched_regs[regno] = 1;
|
||||
|
||||
for (m1 = movables; m1; m1 = m1->next)
|
||||
/* We want later insns to match the first one. Don't make the first
|
||||
one match any later ones. So start this loop at m->next. */
|
||||
for (m1 = m->next; m1; m1 = m1->next)
|
||||
if (m != m1 && m1->match == 0 && n_times_used[m1->regno] == 1
|
||||
/* A reg used outside the loop mustn't be eliminated. */
|
||||
&& !m1->global
|
||||
|
|
Loading…
Reference in New Issue