Commit c52c9a9c by Lars Brinkhoff Committed by Geoffrey Keating

simplify-rtx.c (simplify_binary_operation): Simplify ~a + 1 into -a.

2001-05-04  Lars Brinkhoff  <lars@nocrew.org>

	* simplify-rtx.c (simplify_binary_operation): Simplify ~a + 1
	into -a.

From-SVN: r41854
parent 4264cf59
2001-05-04 Lars Brinkhoff <lars@nocrew.org>
* simplify-rtx.c (simplify_binary_operation): Simplify ~a + 1
into -a.
2000-05-04 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
* config/rs6000/rs6000.md (ashldi3 splits): Guard with TARGET_POWERPC64.
* config/rs6000/rs6000.md (ashldi3 splits): Guard with
TARGET_POWERPC64.
2001-05-04 Stephane Carrez <Stephane.Carrez@worldnet.fr>
......
......@@ -945,6 +945,13 @@ simplify_binary_operation (code, mode, op0, op1)
else if (GET_CODE (op1) == NEG)
return simplify_gen_binary (MINUS, mode, op0, XEXP (op1, 0));
/* (~a) + 1 -> -a */
if (INTEGRAL_MODE_P (mode)
&& GET_CODE (op0) == NOT
&& GET_CODE (op1) == CONST_INT
&& INTVAL (op1) == 1)
return gen_rtx_NEG (mode, XEXP (op0, 0));
/* Handle both-operands-constant cases. We can only add
CONST_INTs to constants since the sum of relocatable symbols
can't be handled by most assemblers. Don't add CONST_INT
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment