https://gcc.gnu.org/g:c7507e395f096240ffa8fa5dfcbfcfd8c5e23bb8
commit r16-6995-gc7507e395f096240ffa8fa5dfcbfcfd8c5e23bb8 Author: Richard Biener <[email protected]> Date: Fri Jan 23 10:02:09 2026 +0100 Add missing expand_vec_cond_expr_p to patterns The following adds another missing check on VEC_COND_EXPR expandability. Without a testcase. * match.pd ((convert (vec_cond ...))): Make sure the resulting vec_cond can be expanded. Diff: --- gcc/match.pd | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/gcc/match.pd b/gcc/match.pd index 155658fe2c83..b66fd9022eb3 100644 --- a/gcc/match.pd +++ b/gcc/match.pd @@ -6249,7 +6249,9 @@ DEFINE_INT_AND_FLOAT_ROUND_FN (RINT) (simplify (convert (vec_cond:s @0 @1 @2)) (if (VECTOR_TYPE_P (type) - && types_match (TREE_TYPE (@0), truth_type_for (type))) + && types_match (TREE_TYPE (@0), truth_type_for (type)) + && (expand_vec_cond_expr_p (type, TREE_TYPE (@0)) + || !expand_vec_cond_expr_p (TREE_TYPE (@1), TREE_TYPE (@0)))) (vec_cond @0 (convert! @1) (convert! @2)))) /* Likewise for view_convert of nop_conversions. */
