diff mbox series

[2/2] simplify-rtx: Simplify rotates by zero

Message ID 35f537a73d22b60abfbed2b9eab3b4f6b9309556.1593026638.git.segher@kernel.crashing.org
State New
Headers show
Series [1/2] simplify-rtx: Parity of parity is parity | expand

Commit Message

Segher Boessenkool June 24, 2020, 7:29 p.m. UTC
From: Roger Sayle <roger@nextmovesoftware.com>

2020-06-24  Roger Sayle  <roger@nextmovesoftware.com>
	    Segher Boessenkool  <segher@kernel.crashing.org>

	* simplify-rtx.c (simplify_unary_operation_1): Simplify rotates by 0.
---
 gcc/simplify-rtx.c | 2 ++
 1 file changed, 2 insertions(+)
diff mbox series

Patch

diff --git a/gcc/simplify-rtx.c b/gcc/simplify-rtx.c
index 65008ea..3e913b5 100644
--- a/gcc/simplify-rtx.c
+++ b/gcc/simplify-rtx.c
@@ -3645,6 +3645,8 @@  simplify_binary_operation_1 (enum rtx_code code, machine_mode mode,
 
     case ROTATERT:
     case ROTATE:
+      if (trueop1 == CONST0_RTX (mode))
+	return op0;
       /* Canonicalize rotates by constant amount.  If op1 is bitsize / 2,
 	 prefer left rotation, if op1 is from bitsize / 2 + 1 to
 	 bitsize - 1, use other direction of rotate with 1 .. bitsize / 2 - 1