https://gcc.gnu.org/g:bb5d3acc84c001f9ae7564874996560c191d2a79

commit r17-2340-gbb5d3acc84c001f9ae7564874996560c191d2a79
Author: Kael Andrew Alonzo Franco <[email protected]>
Date:   Sun Jul 12 07:50:29 2026 -0400

    match: Remove one build_minus_one_cst (type) in r15-6257.
    
    Since all operands has the same type, integer_minus_onep@1 can be used
    instead of build_minus_one_cst (type) to remove function call.
    
    Bootstrapped and tested on x86_64-pc-linux-gnu.
    
    gcc/ChangeLog:
    
            * match.pd: Remove one build_minus_one_cst (type) in r15-6257.
    
    Signed-off-by: Kael Andrew Franco <[email protected]>

Diff:
---
 gcc/match.pd | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gcc/match.pd b/gcc/match.pd
index 89ed2aaaa527..99024d7d015f 100644
--- a/gcc/match.pd
+++ b/gcc/match.pd
@@ -1594,10 +1594,10 @@ DEFINE_INT_AND_FLOAT_ROUND_FN (RINT)
    (a - 1) ^ -a -> -1.  */
 (for bit_op (bit_ior bit_xor bit_and)
  (simplify
-  (bit_op:c (plus @0 integer_minus_onep) (negate @0))
+  (bit_op:c (plus @0 integer_minus_onep@1) (negate @0))
   (if (bit_op == BIT_AND_EXPR)
     { build_zero_cst (type); }
-    { build_minus_one_cst (type); }))
+    @1))
  (simplify
   (bit_op:c (minus @0 integer_onep) (negate @0))
   (if (bit_op == BIT_AND_EXPR)

Reply via email to