]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
Remove DR_GROUP_STORE_COUNT
authorRichard Biener <rguenther@suse.de>
Fri, 19 Sep 2025 07:29:04 +0000 (09:29 +0200)
committerRichard Biener <rguenther@suse.de>
Fri, 19 Sep 2025 09:14:03 +0000 (11:14 +0200)
This was only used for non-SLP.

* tree-vectorizer.h (_stmt_vec_info::store_count): Remove.
(DR_GROUP_STORE_COUNT): Likewise.
* tree-vect-stmts.cc (vect_transform_stmt): Remove non-SLP
path.

gcc/tree-vect-stmts.cc
gcc/tree-vectorizer.h

index 01fc46cd246a901cee72d51c9b1731104a369afd..841733349b5c0e48f4e373db6e94dc41dc2e0a9c 100644 (file)
@@ -12773,21 +12773,9 @@ vect_transform_stmt (vec_info *vinfo,
       break;
 
     case store_vec_info_type:
-      if (STMT_VINFO_GROUPED_ACCESS (stmt_info)
-         && !slp_node
-         && (++DR_GROUP_STORE_COUNT (DR_GROUP_FIRST_ELEMENT (stmt_info))
-             < DR_GROUP_SIZE (DR_GROUP_FIRST_ELEMENT (stmt_info))))
-       /* In case of interleaving, the whole chain is vectorized when the
-          last store in the chain is reached.  Store stmts before the last
-          one are skipped, and there vec_stmt_info shouldn't be freed
-          meanwhile.  */
-       ;
-      else
-       {
-         done = vectorizable_store (vinfo, stmt_info, gsi, slp_node, NULL);
-         gcc_assert (done);
-         is_store = true;
-       }
+      done = vectorizable_store (vinfo, stmt_info, gsi, slp_node, NULL);
+      gcc_assert (done);
+      is_store = true;
       break;
 
     case condition_vec_info_type:
index 07c67be157ed3f2b9fe87ed8bb56ffad96efc62f..7275348237200538ad3ca0c32f57676261f5ead1 100644 (file)
@@ -1544,9 +1544,6 @@ public:
   stmt_vec_info next_element;
   /* The size of the group.  */
   unsigned int size;
-  /* For stores, number of stores from this group seen. We vectorize the last
-     one.  */
-  unsigned int store_count;
   /* For loads only, the gap from the previous load. For consecutive loads, GAP
      is 1.  */
   unsigned int gap;
@@ -1710,8 +1707,6 @@ struct gather_scatter_info {
   (gcc_checking_assert ((S)->dr_aux.dr), (S)->next_element)
 #define DR_GROUP_SIZE(S) \
   (gcc_checking_assert ((S)->dr_aux.dr), (S)->size)
-#define DR_GROUP_STORE_COUNT(S) \
-  (gcc_checking_assert ((S)->dr_aux.dr), (S)->store_count)
 #define DR_GROUP_GAP(S) \
   (gcc_checking_assert ((S)->dr_aux.dr), (S)->gap)