aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorUlrich Weigand <uweigand@de.ibm.com>2005-02-14 15:07:05 +0000
committerUlrich Weigand <uweigand@gcc.gnu.org>2005-02-14 15:07:05 +0000
commite88d55cd8808c0b225073dcda8ed54282ba110de (patch)
tree25f0700a09252179ac1b653b69ea3137132efecb /gcc
parent891df09c5617d2c3614404ef855da2dca72534a2 (diff)
downloadgcc-e88d55cd8808c0b225073dcda8ed54282ba110de.zip
gcc-e88d55cd8808c0b225073dcda8ed54282ba110de.tar.gz
gcc-e88d55cd8808c0b225073dcda8ed54282ba110de.tar.bz2
reload.c (find_reloads): Swap address_reloaded flags when swapping commutative operands.
* reload.c (find_reloads): Swap address_reloaded flags when swapping commutative operands. From-SVN: r95018
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/reload.c4
2 files changed, 9 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index dc6e63c..ed6fb85 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -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):
diff --git a/gcc/reload.c b/gcc/reload.c
index 3b3ca9f..015637e 100644
--- a/gcc/reload.c
+++ b/gcc/reload.c
@@ -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;