* reload.c (find_reloads): Swap address_reloaded flags when
authoruweigand <uweigand@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 14 Feb 2005 15:07:05 +0000 (15:07 +0000)
committeruweigand <uweigand@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 14 Feb 2005 15:07:05 +0000 (15:07 +0000)
swapping commutative operands.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@95018 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/reload.c

index dc6e63c..ed6fb85 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 3b3ca9f..015637e 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;