aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Sandiford <rsandifo@redhat.com>2002-01-31 11:07:14 +0000
committerRichard Sandiford <rsandifo@gcc.gnu.org>2002-01-31 11:07:14 +0000
commit74cb3cc87d024dab9cc33d732e0b6b8a1e8130f2 (patch)
tree04a3da53654faf52761dce9827b100560db85ccd
parent98367224a079bec03fe4d7692feae5b3ea0ac2cb (diff)
downloadgcc-74cb3cc87d024dab9cc33d732e0b6b8a1e8130f2.zip
gcc-74cb3cc87d024dab9cc33d732e0b6b8a1e8130f2.tar.gz
gcc-74cb3cc87d024dab9cc33d732e0b6b8a1e8130f2.tar.bz2
ifcvt.c (noce_process_if_block): Make a copy of the destination when copying back from a temporary.
* ifcvt.c (noce_process_if_block): Make a copy of the destination when copying back from a temporary. From-SVN: r49369
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/ifcvt.c2
2 files changed, 6 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index bfc1972..410e1b0 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2002-01-31 Richard Sandiford <rsandifo@redhat.com>
+
+ * ifcvt.c (noce_process_if_block): Make a copy of the destination
+ when copying back from a temporary.
+
2002-01-30 Richard Henderson <rth@redhat.com>
* ifcvt.c (dead_or_predicable): Handling merging when other_bb
diff --git a/gcc/ifcvt.c b/gcc/ifcvt.c
index 5a9a854..a7860e3 100644
--- a/gcc/ifcvt.c
+++ b/gcc/ifcvt.c
@@ -1792,7 +1792,7 @@ noce_process_if_block (test_bb, then_bb, else_bb, join_bb)
if (orig_x != x)
{
start_sequence ();
- noce_emit_move_insn (orig_x, x);
+ noce_emit_move_insn (copy_rtx (orig_x), x);
insn_b = gen_sequence ();
end_sequence ();