aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRichard Kenner <kenner@gcc.gnu.org>1993-06-27 08:31:48 -0400
committerRichard Kenner <kenner@gcc.gnu.org>1993-06-27 08:31:48 -0400
commit3e61c219765c671c23ac3966c9090b5a9331d07a (patch)
treec0af67d5b80da9bdb9cc9a34dc11663f65b456b5 /gcc
parent73f6789529c29c8c302d9d078bbbf0fd07477804 (diff)
downloadgcc-3e61c219765c671c23ac3966c9090b5a9331d07a.zip
gcc-3e61c219765c671c23ac3966c9090b5a9331d07a.tar.gz
gcc-3e61c219765c671c23ac3966c9090b5a9331d07a.tar.bz2
(subst, case IF_THEN_ELSE): Install correct version of last change.
From-SVN: r4763
Diffstat (limited to 'gcc')
-rw-r--r--gcc/combine.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/gcc/combine.c b/gcc/combine.c
index d986f7d..01fea6b 100644
--- a/gcc/combine.c
+++ b/gcc/combine.c
@@ -3824,12 +3824,10 @@ subst (x, from, to, in_dest, unique_copy)
if (GET_CODE (XEXP (x, 0)) == NE && XEXP (XEXP (x, 0), 1) == const0_rtx
&& XEXP (x, 2) == const0_rtx && GET_CODE (XEXP (x, 1)) == CONST_INT
- && ((1 == nonzero_bits (XEXP (XEXP (x, 0), 0),
- GET_MODE (XEXP (XEXP (x, 0), 0)))
+ && ((1 == nonzero_bits (XEXP (XEXP (x, 0), 0), mode)
&& (i = exact_log2 (INTVAL (XEXP (x, 1)))) >= 0)
- || ((num_sign_bit_copies (XEXP (XEXP (x, 0), 0),
- GET_MODE (XEXP (XEXP (x, 0), 0)))
- == GET_MODE_BITSIZE (GET_MODE (XEXP (XEXP (x, 0), 0))))
+ || ((num_sign_bit_copies (XEXP (XEXP (x, 0), 0), mode)
+ == GET_MODE_BITSIZE (mode))
&& (i = exact_log2 (- INTVAL (XEXP (x, 1)))) >= 0)))
return
simplify_shift_const (NULL_RTX, ASHIFT, mode,