Commit 37c0e55f by Richard Kenner

(reload): Initialize the previous_offset fields in reg_eliminate

before calling setup_save_areas.

From-SVN: r12781
parent c7d13c76
...@@ -1460,8 +1460,14 @@ reload (first, global, dumpfile) ...@@ -1460,8 +1460,14 @@ reload (first, global, dumpfile)
/* If we have caller-saves, set up the save areas and see if caller-save /* If we have caller-saves, set up the save areas and see if caller-save
will need a spill register. */ will need a spill register. */
if (caller_save_needed if (caller_save_needed)
&& ! setup_save_areas (&something_changed) {
/* Set the offsets for setup_save_areas. */
for (ep = reg_eliminate; ep < &reg_eliminate[NUM_ELIMINABLE_REGS];
ep++)
ep->previous_offset = ep->max_offset;
if ( ! setup_save_areas (&something_changed)
&& caller_save_spill_class == NO_REGS) && caller_save_spill_class == NO_REGS)
{ {
/* The class we will need depends on whether the machine /* The class we will need depends on whether the machine
...@@ -1474,6 +1480,7 @@ reload (first, global, dumpfile) ...@@ -1474,6 +1480,7 @@ reload (first, global, dumpfile)
= CLASS_MAX_NREGS (caller_save_spill_class, Pmode); = CLASS_MAX_NREGS (caller_save_spill_class, Pmode);
something_changed = 1; something_changed = 1;
} }
}
/* See if anything that happened changes which eliminations are valid. /* See if anything that happened changes which eliminations are valid.
For example, on the Sparc, whether or not the frame pointer can For example, on the Sparc, whether or not the frame pointer can
......
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