aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Biener <rguenther@suse.de>2024-09-03 15:04:42 +0200
committerRichard Biener <rguenth@gcc.gnu.org>2024-09-03 17:03:01 +0200
commitbd120de19c600d064b3b3b5abf8c36ffc0037c40 (patch)
treead195944ad6cc38efe523ee964bec2c4f90ca7de
parente2125a600552bc6e0329e3f1224eea14804db8d3 (diff)
downloadgcc-bd120de19c600d064b3b3b5abf8c36ffc0037c40.zip
gcc-bd120de19c600d064b3b3b5abf8c36ffc0037c40.tar.gz
gcc-bd120de19c600d064b3b3b5abf8c36ffc0037c40.tar.bz2
Fix missed peeling for gaps with SLP load-lanes
The following disables peeling for gap avoidance with using smaller vector accesses when using load-lanes. * tree-vect-stmts.cc (get_group_load_store_type): Only disable peeling for gaps by using smaller vectors when not using load-lanes.
-rw-r--r--gcc/tree-vect-stmts.cc1
1 files changed, 1 insertions, 0 deletions
diff --git a/gcc/tree-vect-stmts.cc b/gcc/tree-vect-stmts.cc
index ace1c8e..16f6889 100644
--- a/gcc/tree-vect-stmts.cc
+++ b/gcc/tree-vect-stmts.cc
@@ -2127,6 +2127,7 @@ get_group_load_store_type (vec_info *vinfo, stmt_vec_info stmt_info,
unsigned HOST_WIDE_INT tem, num;
if (overrun_p
&& !masked_p
+ && *memory_access_type != VMAT_LOAD_STORE_LANES
&& (((alss = vect_supportable_dr_alignment (vinfo, first_dr_info,
vectype, misalign)))
== dr_aligned