reload.c (find_reloads): Swap address_reloaded flags when swapping commutative operands.
authorUlrich Weigand <uweigand@de.ibm.com>
Mon, 14 Feb 2005 15:07:05 +0000 (15:07 +0000)
committerUlrich Weigand <uweigand@gcc.gnu.org>
Mon, 14 Feb 2005 15:07:05 +0000 (15:07 +0000)
* reload.c (find_reloads): Swap address_reloaded flags when
swapping commutative operands.

From-SVN: r95018

gcc/ChangeLog
gcc/reload.c

index dc6e63c8a8f713ebacb65039256a220c881dd6e9..ed6fb85122fa63fd1b516443955541375d054cfc 100644 (file)
@@ -1,3 +1,8 @@
+2005-02-14  Ulrich Weigand  <uweigand@de.ibm.com>
+
+       * reload.c (find_reloads): Swap address_reloaded flags when
+       swapping commutative operands.
+
 2005-02-14  Sebastian Pop  <pop@cri.ensmp.fr>
         
        * lambda-code.c (lambda_loopnest_to_gcc_loopnest, perfect_nestify):
index 3b3ca9f89f4a6c7a8a15d811d0fcc3203c497308..015637e47aa11b6a1bf26f8df942c1f28a569733 100644 (file)
@@ -3668,6 +3668,10 @@ find_reloads (rtx insn, int replace, int ind_levels, int live_known,
          pref_or_nothing[commutative] = pref_or_nothing[commutative + 1];
          pref_or_nothing[commutative + 1] = t;
 
+         t = address_reloaded[commutative];
+         address_reloaded[commutative] = address_reloaded[commutative + 1];
+         address_reloaded[commutative + 1] = t;
+
          memcpy (constraints, recog_data.constraints,
                  noperands * sizeof (char *));
          goto try_swapped;