loop.c (force_movables): Transitively increase the priorities of all insns forces by an insn...
* loop.c (force_movables): Transitively increase the priorities of all insns forces by an insn, not just the first one. From-SVN: r77419
This commit is contained in:
parent
014a1138d6
commit
1f0db3dfca
|
@ -1,3 +1,8 @@
|
|||
2004-02-06 Ulrich Weigand <uweigand@de.ibm.com>
|
||||
|
||||
* loop.c (force_movables): Transitively increase the priorities of
|
||||
all insns forces by an insn, not just the first one.
|
||||
|
||||
2004-02-06 Josef Zlomek <zlomekj@suse.cz>
|
||||
Daniel Berlin <dberlin@dberlin.org>
|
||||
|
||||
|
|
12
gcc/loop.c
12
gcc/loop.c
|
@ -1469,12 +1469,18 @@ force_movables (struct loop_movables *movables)
|
|||
m = 0;
|
||||
|
||||
/* Increase the priority of the moving the first insn
|
||||
since it permits the second to be moved as well. */
|
||||
since it permits the second to be moved as well.
|
||||
Likewise for insns already forced by the first insn. */
|
||||
if (m != 0)
|
||||
{
|
||||
struct movable *m2;
|
||||
|
||||
m->forces = m1;
|
||||
m1->lifetime += m->lifetime;
|
||||
m1->savings += m->savings;
|
||||
for (m2 = m1; m2; m2 = m2->forces)
|
||||
{
|
||||
m2->lifetime += m->lifetime;
|
||||
m2->savings += m->savings;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue