From: Jim Wilson Date: Thu, 21 Jul 1994 22:06:05 +0000 (-0700) Subject: (simplify_rtx): For (not (xor X C)) generate new rtx X-Git-Tag: misc/cutover-egcs-0~6155 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=787745f56c13fb51357a4fa580cc8c4b37aae924;p=thirdparty%2Fgcc.git (simplify_rtx): For (not (xor X C)) generate new rtx instead of modifying old rtx. From-SVN: r7788 --- diff --git a/gcc/combine.c b/gcc/combine.c index 990fa4d594ff..9307af27d325 100644 --- a/gcc/combine.c +++ b/gcc/combine.c @@ -3261,10 +3261,7 @@ simplify_rtx (x, op0_mode, last, in_dest) && (temp = simplify_unary_operation (NOT, mode, XEXP (XEXP (x, 0), 1), mode)) != 0) - { - SUBST (XEXP (XEXP (x, 0), 1), temp); - return XEXP (x, 0); - } + return gen_binary (XOR, mode, XEXP (XEXP (x, 0), 0), temp); /* (not (ashift 1 X)) is (rotate ~1 X). We used to do this for operands other than 1, but that is not valid. We could do a similar