aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRichard Biener <rguenther@suse.de>2024-10-01 15:17:18 +0200
committerRichard Biener <rguenth@gcc.gnu.org>2024-10-02 08:15:44 +0200
commite592ea8ddffb44bab52d36d9862bb39ffae4d144 (patch)
treeaa1152f583816bd29f187d127dc6a7db5e610a07 /gcc
parented7b3e78183ffed49f197536239812fe77d7d687 (diff)
downloadgcc-e592ea8ddffb44bab52d36d9862bb39ffae4d144.zip
gcc-e592ea8ddffb44bab52d36d9862bb39ffae4d144.tar.gz
gcc-e592ea8ddffb44bab52d36d9862bb39ffae4d144.tar.bz2
tree-optimization/116654 - missed dr_explicit_realign[_optimized] with SLP
With single-lane SLP we miss to use the power realing loads causing some testsuite FAILs. r14-2430-g4736ddd11874fe exempted SLP of non-grouped accesses because that could have been only splats where the scheme isn't used anyway, but now with single-lane SLP it can be contiguous accesses. PR tree-optimization/116654 * tree-vect-data-refs.cc (vect_supportable_dr_alignment): Treat non-grouped accesses like non-SLP.
Diffstat (limited to 'gcc')
-rw-r--r--gcc/tree-vect-data-refs.cc10
1 files changed, 5 insertions, 5 deletions
diff --git a/gcc/tree-vect-data-refs.cc b/gcc/tree-vect-data-refs.cc
index fe7fdec..920e3c1 100644
--- a/gcc/tree-vect-data-refs.cc
+++ b/gcc/tree-vect-data-refs.cc
@@ -7170,11 +7170,11 @@ vect_supportable_dr_alignment (vec_info *vinfo, dr_vec_info *dr_info,
same alignment, instead it depends on the SLP group size. */
if (loop_vinfo
&& STMT_SLP_TYPE (stmt_info)
- && (!STMT_VINFO_GROUPED_ACCESS (stmt_info)
- || !multiple_p (LOOP_VINFO_VECT_FACTOR (loop_vinfo)
- * (DR_GROUP_SIZE
- (DR_GROUP_FIRST_ELEMENT (stmt_info))),
- TYPE_VECTOR_SUBPARTS (vectype))))
+ && STMT_VINFO_GROUPED_ACCESS (stmt_info)
+ && !multiple_p (LOOP_VINFO_VECT_FACTOR (loop_vinfo)
+ * (DR_GROUP_SIZE
+ (DR_GROUP_FIRST_ELEMENT (stmt_info))),
+ TYPE_VECTOR_SUBPARTS (vectype)))
;
else if (!loop_vinfo
|| (nested_in_vect_loop