tree-optimization/116654 - missed dr_explicit_realign[_optimized] with SLP
Checks
Context |
Check |
Description |
linaro-tcwg-bot/tcwg_gcc_build--master-arm |
success
|
Build passed
|
linaro-tcwg-bot/tcwg_gcc_build--master-aarch64 |
success
|
Build passed
|
linaro-tcwg-bot/tcwg_gcc_check--master-arm |
success
|
Test passed
|
linaro-tcwg-bot/tcwg_gcc_check--master-aarch64 |
success
|
Test passed
|
Commit Message
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.
Bootstrap and regtest running on x86_64-unknown-linux-gnu and
powerpc64le-linux-gnu (might take a while since I have no good
baseline to compare).
Richard.
PR tree-optimization/116654
* tree-vect-data-refs.cc (vect_supportable_dr_alignment):
Treat non-grouped accesses like non-SLP.
---
gcc/tree-vect-data-refs.cc | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
@@ -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