+2003-08-21 Josef Zlomek <zlomekj@suse.cz>
+
+ * fold-const.c (fold): Fix bug in (A & C) == D where D & ~C != 0
+ and similarly in (A | C) == D where C & ~D != 0.
+
2003-08-20 Geoffrey Keating <geoffk@apple.com>
PR 8180
tree dandnotc = fold (build (BIT_ANDTC_EXPR, TREE_TYPE (arg0),
arg1, TREE_OPERAND (arg0, 1)));
tree rslt = code == EQ_EXPR ? integer_zero_node : integer_one_node;
- if (!integer_zerop (dandnotc))
+ if (integer_nonzerop (dandnotc))
return omit_one_operand (type, rslt, arg0);
}
tree candnotd = fold (build (BIT_ANDTC_EXPR, TREE_TYPE (arg0),
TREE_OPERAND (arg0, 1), arg1));
tree rslt = code == EQ_EXPR ? integer_zero_node : integer_one_node;
- if (!integer_zerop (candnotd))
+ if (integer_nonzerop (candnotd))
return omit_one_operand (type, rslt, arg0);
}