aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorDoug Evans <dje@gnu.org>1994-10-26 22:22:06 +0000
committerDoug Evans <dje@gnu.org>1994-10-26 22:22:06 +0000
commit9fbd9f58d731d94cfe0b2ee368a8ea83b9081388 (patch)
tree12f3bb7ce8bb50f33acf2b63c6addc3cd4b01b2a /gcc
parent9ffe483fc124cf73099a3c4480e11cae0a33b490 (diff)
downloadgcc-9fbd9f58d731d94cfe0b2ee368a8ea83b9081388.zip
gcc-9fbd9f58d731d94cfe0b2ee368a8ea83b9081388.tar.gz
gcc-9fbd9f58d731d94cfe0b2ee368a8ea83b9081388.tar.bz2
(expand_expr, COND_EXPR case): Don't expand "X ? A & 1 : A" as "A & (X != 0)".
From-SVN: r8345
Diffstat (limited to 'gcc')
-rw-r--r--gcc/expr.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/gcc/expr.c b/gcc/expr.c
index 364789d..f603554 100644
--- a/gcc/expr.c
+++ b/gcc/expr.c
@@ -5579,8 +5579,7 @@ expand_expr (exp, target, tmode, modifier)
&& (TREE_CODE (binary_op) == PLUS_EXPR
|| TREE_CODE (binary_op) == MINUS_EXPR
|| TREE_CODE (binary_op) == BIT_IOR_EXPR
- || TREE_CODE (binary_op) == BIT_XOR_EXPR
- || TREE_CODE (binary_op) == BIT_AND_EXPR)
+ || TREE_CODE (binary_op) == BIT_XOR_EXPR)
&& integer_onep (TREE_OPERAND (binary_op, 1))
&& TREE_CODE_CLASS (TREE_CODE (TREE_OPERAND (exp, 0))) == '<')
{