From f5d1572a8a1aaba31679c2500e4a492936960531 Mon Sep 17 00:00:00 2001 From: Saurabh Verma Date: Tue, 6 Sep 2005 17:51:48 +0000 Subject: [PATCH] simplify-rtx.c (simplify_binary_operation_1): Correct the condition for detecting cases like (a&a) and (a^a). * simplify-rtx.c (simplify_binary_operation_1): Correct the condition for detecting cases like (a&a) and (a^a). From-SVN: r103955 --- gcc/ChangeLog | 5 +++++ gcc/simplify-rtx.c | 4 ++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 310d84af1fd..a26af5a9086 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2005-09-06 Saurabh Verma + + * simplify-rtx.c (simplify_binary_operation_1): Correct the + condition for detecting cases like (a&a) and (a^a). + 2005-09-06 Keith Besaw * common.opt: Add option ftree-vect-loop-version. diff --git a/gcc/simplify-rtx.c b/gcc/simplify-rtx.c index d3ec956c1ae..1b99677fdb5 100644 --- a/gcc/simplify-rtx.c +++ b/gcc/simplify-rtx.c @@ -1661,7 +1661,7 @@ simplify_binary_operation_1 (enum rtx_code code, enum machine_mode mode, && ((INTVAL (trueop1) & GET_MODE_MASK (mode)) == GET_MODE_MASK (mode))) return simplify_gen_unary (NOT, mode, op0, mode); - if (trueop0 == trueop1 + if (rtx_equal_p (trueop0, trueop1) && ! side_effects_p (op0) && GET_MODE_CLASS (mode) != MODE_CC) return CONST0_RTX (mode); @@ -1696,7 +1696,7 @@ simplify_binary_operation_1 (enum rtx_code code, enum machine_mode mode, && GET_MODE_BITSIZE (mode) <= HOST_BITS_PER_WIDE_INT && (nonzero_bits (trueop0, mode) & ~INTVAL (trueop1)) == 0) return op0; - if (trueop0 == trueop1 && ! side_effects_p (op0) + if (rtx_equal_p (trueop0, trueop1) && ! side_effects_p (op0) && GET_MODE_CLASS (mode) != MODE_CC) return op0; /* A & (~A) -> 0 */ -- 2.30.2