aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/reload1.c1
2 files changed, 7 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 5318c3e..cf34965 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2008-12-05 Bernd Schmidt <bernd.schmidt@analog.com>
+
+ PR rtl-optimization/38272
+ * reload1.c (choose_reload_regs): Keep reload_spill_index correct
+ in all cases.
+
2008-12-05 Jakub Jelinek <jakub@redhat.com>
PR c++/35336
diff --git a/gcc/reload1.c b/gcc/reload1.c
index 2f95fa5..ac1e874 100644
--- a/gcc/reload1.c
+++ b/gcc/reload1.c
@@ -6362,6 +6362,7 @@ choose_reload_regs (struct insn_chain *chain)
int nr = hard_regno_nregs[regno][rld[r].mode];
int k;
rld[r].reg_rtx = equiv;
+ reload_spill_index[r] = regno;
reload_inherited[r] = 1;
/* If reg_reloaded_valid is not set for this register,