>From 9a935c7173902d3294f6e19214b492dc47a8ff35 Mon Sep 17 00:00:00 2001
From: Kael Andrew Alonzo Franco <[email protected]>
Date: Thu, 9 Jul 2026 22:09:19 -0400
Subject: [PATCH 2/3] match: Remove redundant build_zero_cst (type) [PR114009]
Since PR114009 simplify patterns have integer_zerop, integer_zerop@2 can be used
instead of build_zero_cst (type) to remove function call.
Bootstrapped and tested on x86_64-pc-linux-gnu.
PR tree-optimization/114009
gcc/ChangeLog:
* match.pd: Remove redundant build_zero_cst (type) [PR114009]
Signed-off-by: Kael Franco <[email protected]>
---
gcc/match.pd | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/gcc/match.pd b/gcc/match.pd
index cbf023e07fa..85b7fb31b45 100644
--- a/gcc/match.pd
+++ b/gcc/match.pd
@@ -1328,14 +1328,14 @@ DEFINE_INT_AND_FLOAT_ROUND_FN (RINT)
/* Fold a * !a into 0. */
(simplify
- (mult:c @0 (convert? (eq @0 integer_zerop)))
- { build_zero_cst (type); })
+ (mult:c @0 (convert? (eq @0 integer_zerop@2)))
+ @2)
(simplify
- (mult:c @0 (vec_cond (eq @0 integer_zerop) @1 integer_zerop))
- { build_zero_cst (type); })
+ (mult:c @0 (vec_cond (eq @0 integer_zerop) @1 integer_zerop@2))
+ @2)
(simplify
- (mult:c @0 (vec_cond (ne @0 integer_zerop) integer_zerop @1))
- { build_zero_cst (type); })
+ (mult:c @0 (vec_cond (ne @0 integer_zerop) integer_zerop@2 @1))
+ @2)
/* Shifts by precision or greater result in zero. */
(for shift (lshift rshift)
--
2.55.0