aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRichard Kenner <kenner@gcc.gnu.org>1994-05-27 13:32:13 -0400
committerRichard Kenner <kenner@gcc.gnu.org>1994-05-27 13:32:13 -0400
commit5f40cc2da4ba2f44be72bd35a03c3270061472e9 (patch)
tree805b2d384e9951615522164e3b30e8d87a226724 /gcc
parentfc0e5bd00e5a1f8573937fddf850d03e7d78d31c (diff)
downloadgcc-5f40cc2da4ba2f44be72bd35a03c3270061472e9.zip
gcc-5f40cc2da4ba2f44be72bd35a03c3270061472e9.tar.gz
gcc-5f40cc2da4ba2f44be72bd35a03c3270061472e9.tar.bz2
(reload_as_needed): Update spill_reg_order once we sort spill_regs.
From-SVN: r7362
Diffstat (limited to 'gcc')
-rw-r--r--gcc/reload1.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/gcc/reload1.c b/gcc/reload1.c
index aed8cc4..0b355b5 100644
--- a/gcc/reload1.c
+++ b/gcc/reload1.c
@@ -3647,7 +3647,11 @@ reload_as_needed (first, live_known)
/* Order the spilled regs, so that allocate_reload_regs can guarantee to
pack registers with group needs. */
if (n_spills > 1)
- qsort (spill_regs, n_spills, sizeof (short), compare_spill_regs);
+ {
+ qsort (spill_regs, n_spills, sizeof (short), compare_spill_regs);
+ for (i = 0; i < n_spills; i++)
+ spill_reg_order[spill_regs[i]] = i;
+ }
for (insn = first; insn;)
{