reload1.c (merge_assigned_reloads): After a RELOAD_OTHER merge...
authorStephane Carrez <Stephane.Carrez@worldnet.fr>
Tue, 10 Jul 2001 20:43:59 +0000 (22:43 +0200)
committerStephane Carrez <ciceron@gcc.gnu.org>
Tue, 10 Jul 2001 20:43:59 +0000 (22:43 +0200)
* reload1.c (merge_assigned_reloads): After a RELOAD_OTHER merge,
fix setting of the reloads of that reload to RELOAD_FOR_OTHER_ADDRESS.

From-SVN: r43911

gcc/ChangeLog
gcc/reload1.c

index 5e0d9137a939503b2af10a82e625ec55a47a55e8..a15eb81ea562671c88eda5c42b649b8ba2159308 100644 (file)
@@ -1,3 +1,8 @@
+2001-07-10  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
+
+       * reload1.c (merge_assigned_reloads): After a RELOAD_OTHER merge,
+       fix setting of the reloads of that reload to RELOAD_FOR_OTHER_ADDRESS.
+
 Tue Jul 10 07:27:53 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
 
        * config/rs6000/rs6000.c (print_operand, case 'L', 'Y', 'Z'): Use
index 1423e6ed0d758f5d5e90d7713fcdddf47c98754a..21651553718c3431a958e40ff70347afa2af7275 100644 (file)
@@ -6062,12 +6062,12 @@ merge_assigned_reloads (insn)
          if (rld[i].when_needed == RELOAD_OTHER)
            for (j = 0; j < n_reloads; j++)
              if (rld[j].in != 0
-                 && rld[i].when_needed != RELOAD_OTHER
+                 && rld[j].when_needed != RELOAD_OTHER
                  && reg_overlap_mentioned_for_reload_p (rld[j].in,
                                                         rld[i].in))
                rld[j].when_needed
-                 = ((rld[i].when_needed == RELOAD_FOR_INPUT_ADDRESS
-                     || rld[i].when_needed == RELOAD_FOR_INPADDR_ADDRESS)
+                 = ((rld[j].when_needed == RELOAD_FOR_INPUT_ADDRESS
+                     || rld[j].when_needed == RELOAD_FOR_INPADDR_ADDRESS)
                     ? RELOAD_FOR_OTHER_ADDRESS : RELOAD_OTHER);
        }
     }