summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorhp <hp@138bc75d-0d04-0410-961f-82ee72b054a4>2002-01-14 22:21:39 +0000
committerhp <hp@138bc75d-0d04-0410-961f-82ee72b054a4>2002-01-14 22:21:39 +0000
commit7f758d0b646acac35129dfe6a2b8ed51968a71cf (patch)
tree9423b8a2a0979817db18cce71f649d1394b27dc5
parent37b1809708071398a07666598419f768444ad978 (diff)
downloadgcc-7f758d0b646acac35129dfe6a2b8ed51968a71cf.tar.gz
* reload1.c (reload_combine): Pass reg_sum replacement through
copy_rtx in loop performing multiple changes. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@48851 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/reload1.c4
2 files changed, 8 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index e61e195aaee..e72f1f06bb1 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2002-01-14 Hans-Peter Nilsson <hp@bitrange.com>
+
+ * reload1.c (reload_combine): Pass reg_sum replacement through
+ copy_rtx in loop performing multiple changes.
+
2002-01-14 Jakub Jelinek <jakub@redhat.com>
* except.c (remove_unreachable_regions): New.
diff --git a/gcc/reload1.c b/gcc/reload1.c
index e1f1e4bd6ea..81fba35cc21 100644
--- a/gcc/reload1.c
+++ b/gcc/reload1.c
@@ -8769,7 +8769,9 @@ reload_combine ()
i < RELOAD_COMBINE_MAX_USES; i++)
validate_change (reg_state[regno].reg_use[i].insn,
reg_state[regno].reg_use[i].usep,
- reg_sum, 1);
+ /* Each change must have its own
+ replacement. */
+ copy_rtx (reg_sum), 1);
if (apply_change_group ())
{