https://gcc.gnu.org/g:4eba48a684b1a1f77aa18b29a1ae58dbdc842b5b

commit r15-3734-g4eba48a684b1a1f77aa18b29a1ae58dbdc842b5b
Author: Richard Biener <rguent...@suse.de>
Date:   Fri Sep 20 13:35:49 2024 +0200

    Handle patterns as SLP roots of only live stmts
    
    gcc.dg/vect/vect-live-2.c shows it's important to handle live but
    otherwise unused pattern stmts.
    
            * tree-vect-slp.cc (vect_analyze_slp): Lookup patterns when
            discovering from only-live roots.

Diff:
---
 gcc/tree-vect-slp.cc | 1 +
 1 file changed, 1 insertion(+)

diff --git a/gcc/tree-vect-slp.cc b/gcc/tree-vect-slp.cc
index c8af4d320eb9..9c817de18bd1 100644
--- a/gcc/tree-vect-slp.cc
+++ b/gcc/tree-vect-slp.cc
@@ -4723,6 +4723,7 @@ vect_analyze_slp (vec_info *vinfo, unsigned max_tree_size,
            if (TREE_CODE (def) == SSA_NAME
                && !virtual_operand_p (def)
                && (stmt_info = loop_vinfo->lookup_def (def))
+               && ((stmt_info = vect_stmt_to_vectorize (stmt_info)), true)
                && STMT_VINFO_RELEVANT (stmt_info) == vect_used_only_live
                && STMT_VINFO_LIVE_P (stmt_info)
                && (STMT_VINFO_DEF_TYPE (stmt_info) == vect_induction_def

Reply via email to