aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorJan Hubicka <jh@suse.cz>2007-07-04 00:14:27 +0200
committerJan Hubicka <hubicka@gcc.gnu.org>2007-07-03 22:14:27 +0000
commitf9faf95474a8a0009af1f6fd19097b1e96d8eefc (patch)
tree92d89711cd4808e7bf5f6c579a5ab2b40b395373 /gcc
parent9eb0d3d733fcda110ef1f0de8a252f77467ee243 (diff)
downloadgcc-f9faf95474a8a0009af1f6fd19097b1e96d8eefc.zip
gcc-f9faf95474a8a0009af1f6fd19097b1e96d8eefc.tar.gz
gcc-f9faf95474a8a0009af1f6fd19097b1e96d8eefc.tar.bz2
* ifcvt.c (find_cond_trap): Avoid invalid RTL sharing.
From-SVN: r126281
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog4
-rw-r--r--gcc/ifcvt.c4
2 files changed, 6 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 0267508..371fb6a 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,7 @@
+2007-07-03 Jan Hubicka <jh@suse.cz>
+
+ * ifcvt.c (find_cond_trap): Avoid invalid RTL sharing.
+
2007-07-03 Eric Christopher <echristo@apple.com>
* doc/cppopts.texi: Add conflicting option note to -dM.
diff --git a/gcc/ifcvt.c b/gcc/ifcvt.c
index dd7764b..8a346bb 100644
--- a/gcc/ifcvt.c
+++ b/gcc/ifcvt.c
@@ -3311,8 +3311,8 @@ find_cond_trap (basic_block test_bb, edge then_edge, edge else_edge)
}
/* Attempt to generate the conditional trap. */
- seq = gen_cond_trap (code, XEXP (cond, 0),
- XEXP (cond, 1),
+ seq = gen_cond_trap (code, copy_rtx (XEXP (cond, 0)),
+ copy_rtx (XEXP (cond, 1)),
TRAP_CODE (PATTERN (trap)));
if (seq == NULL)
return FALSE;