diff options
author | Richard Sandiford <richard.sandiford@arm.com> | 2021-12-17 14:18:39 +0000 |
---|---|---|
committer | Richard Sandiford <richard.sandiford@arm.com> | 2021-12-17 14:18:39 +0000 |
commit | e781cb93d7d908f1f4f1611d0034eccbd1478e91 (patch) | |
tree | c4fe0953ca4dfa108c4b825fb73123b11e88ce85 /libgfortran/runtime/environ.c | |
parent | 7dca2ad64910ba4aeae8e1f373f4d4796702b42b (diff) | |
download | gcc-e781cb93d7d908f1f4f1611d0034eccbd1478e91.zip gcc-e781cb93d7d908f1f4f1611d0034eccbd1478e91.tar.gz gcc-e781cb93d7d908f1f4f1611d0034eccbd1478e91.tar.bz2 |
vect: Fix multi-vector SLP gather loads [PR103744]
This PR shows that I didn't properly test the multi-vector case when
adding support for SLP gather loads. The patch fixes that case using
the same approach as we do for non-SLP cases: keep the scalar base
the same, but iterate through the (also multi-vector) vector offsets.
“vec_num * j + i” is already used elsewhere as a way of handling both
the multi-vector SLP case and the multi-vector non-SLP case.
gcc/
PR tree-optimization/103744
* tree-vect-stmts.c (vectorizable_load): Handle multi-vector
SLP gather loads.
gcc/testsuite/
PR tree-optimization/103744
* gcc.dg/vect/pr103744-1.c: New test.
* gcc.dg/vect/pr103744-2.c: Likewise.
Diffstat (limited to 'libgfortran/runtime/environ.c')
0 files changed, 0 insertions, 0 deletions