]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
tree-optimization/111156 - properly dissolve SLP only groups
authorRichard Biener <rguenther@suse.de>
Thu, 15 Feb 2024 12:41:25 +0000 (13:41 +0100)
committerRichard Biener <rguenther@suse.de>
Thu, 15 Feb 2024 14:37:50 +0000 (15:37 +0100)
The following fixes the omission of failing to look at pattern
stmts when we need to dissolve SLP only groups.

PR tree-optimization/111156
* tree-vect-loop.cc (vect_dissolve_slp_only_groups): Look
at the pattern stmt if any.

gcc/tree-vect-loop.cc

index 9e26b09504df7814435a014446439fe6db6e67a9..5a5865c42fc6298ea7e4d486b3bb3e2dc825a118 100644 (file)
@@ -2551,7 +2551,8 @@ vect_dissolve_slp_only_groups (loop_vec_info loop_vinfo)
   FOR_EACH_VEC_ELT (datarefs, i, dr)
     {
       gcc_assert (DR_REF (dr));
-      stmt_vec_info stmt_info = loop_vinfo->lookup_stmt (DR_STMT (dr));
+      stmt_vec_info stmt_info
+       = vect_stmt_to_vectorize (loop_vinfo->lookup_stmt (DR_STMT (dr)));
 
       /* Check if the load is a part of an interleaving chain.  */
       if (STMT_VINFO_GROUPED_ACCESS (stmt_info))