re PR rtl-optimization/38272 (Revision 142207 caused libgomp.fortran/threadprivate2...
authorBernd Schmidt <bernd.schmidt@analog.com>
Sat, 6 Dec 2008 03:18:15 +0000 (03:18 +0000)
committerH.J. Lu <hjl@gcc.gnu.org>
Sat, 6 Dec 2008 03:18:15 +0000 (19:18 -0800)
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.

From-SVN: r142514

gcc/ChangeLog
gcc/reload1.c

index 5318c3e41da6817d7e6344b82e8031ba7f1ddfd0..cf349650fa5c5756757216d709d60acf9e56978e 100644 (file)
@@ -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
index 2f95fa55aa26fe1185b924da28bcae22c0b19d07..ac1e874b1243b1842bbdeb17f59788b6a1187a86 100644 (file)
@@ -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,