aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Wood <wood@gnu.org>1992-10-13 10:01:01 +0000
committerTom Wood <wood@gnu.org>1992-10-13 10:01:01 +0000
commit696223d7cdd7498f04a7046f4b8276952726e36a (patch)
tree58bfaf7555b21b2457bda88602db7cf98514a791
parent7f0a4b0a0334603fea39343cf95e2bb025a57e91 (diff)
downloadgcc-696223d7cdd7498f04a7046f4b8276952726e36a.zip
gcc-696223d7cdd7498f04a7046f4b8276952726e36a.tar.gz
gcc-696223d7cdd7498f04a7046f4b8276952726e36a.tar.bz2
(subst): Don't change a conditional branch into a conditional move.
From-SVN: r2426
-rw-r--r--gcc/combine.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/combine.c b/gcc/combine.c
index 5476599..c3f0b49 100644
--- a/gcc/combine.c
+++ b/gcc/combine.c
@@ -3849,7 +3849,8 @@ subst (x, from, to, in_dest, unique_copy)
IOR'ed together. In practice, at most two will be nonzero. Then
we do the IOR's. */
- if (GET_CODE (SET_SRC (x)) == IF_THEN_ELSE
+ if (GET_CODE (SET_DEST (x)) != PC
+ && GET_CODE (SET_SRC (x)) == IF_THEN_ELSE
&& (GET_CODE (XEXP (SET_SRC (x), 0)) == EQ
|| GET_CODE (XEXP (SET_SRC (x), 0)) == NE)
&& XEXP (XEXP (SET_SRC (x), 0), 1) == const0_rtx