Commit 877ca132 by Herman A.J. ten Brugge Committed by Jeff Law

loop.c (move_movables): Corrected threshold calculation for moved_once registers.

        * loop.c (move_movables): Corrected threshold calculation for
        moved_once registers.

From-SVN: r22847
parent da5a44b3
1998-10-05 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
* loop.c (move_movables): Corrected threshold calculation for
moved_once registers.
Mon Oct 5 21:18:45 1998 Bernd Schmidt <crux@Pool.Informatik.RWTH-Aachen.DE> Mon Oct 5 21:18:45 1998 Bernd Schmidt <crux@Pool.Informatik.RWTH-Aachen.DE>
* loop.c (combine_givs_p): Fix test for identical givs. * loop.c (combine_givs_p): Fix test for identical givs.
......
...@@ -1839,13 +1839,8 @@ move_movables (movables, threshold, insn_count, loop_start, end, nregs) ...@@ -1839,13 +1839,8 @@ move_movables (movables, threshold, insn_count, loop_start, end, nregs)
if (loop_dump_stream) if (loop_dump_stream)
fprintf (loop_dump_stream, "savings %d ", savings); fprintf (loop_dump_stream, "savings %d ", savings);
if (moved_once[regno]) if (moved_once[regno] && loop_dump_stream)
{
insn_count *= 2;
if (loop_dump_stream)
fprintf (loop_dump_stream, "halved since already moved "); fprintf (loop_dump_stream, "halved since already moved ");
}
/* An insn MUST be moved if we already moved something else /* An insn MUST be moved if we already moved something else
which is safe only if this one is moved too: that is, which is safe only if this one is moved too: that is,
...@@ -1862,7 +1857,8 @@ move_movables (movables, threshold, insn_count, loop_start, end, nregs) ...@@ -1862,7 +1857,8 @@ move_movables (movables, threshold, insn_count, loop_start, end, nregs)
if (already_moved[regno] if (already_moved[regno]
|| flag_move_all_movables || flag_move_all_movables
|| (threshold * savings * m->lifetime) >= insn_count || (threshold * savings * m->lifetime) >=
(moved_once[regno] ? insn_count * 2 : insn_count)
|| (m->forces && m->forces->done || (m->forces && m->forces->done
&& VARRAY_INT (n_times_used, m->forces->regno) == 1)) && VARRAY_INT (n_times_used, m->forces->regno) == 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