aboutsummaryrefslogtreecommitdiff
path: root/gcc/fortran/error.cc
diff options
context:
space:
mode:
authorRichard Biener <rguenther@suse.de>2024-09-20 12:17:22 +0200
committerRichard Biener <rguenth@gcc.gnu.org>2024-09-20 14:49:23 +0200
commit664e0ce580a8f20a78aa355c42222e4647841f77 (patch)
tree2387aeb7144cced396bf39ac47bd94c3496cc29b /gcc/fortran/error.cc
parent4eba48a684b1a1f77aa18b29a1ae58dbdc842b5b (diff)
downloadgcc-664e0ce580a8f20a78aa355c42222e4647841f77.zip
gcc-664e0ce580a8f20a78aa355c42222e4647841f77.tar.gz
gcc-664e0ce580a8f20a78aa355c42222e4647841f77.tar.bz2
Fall back to elementwise access for too spaced SLP single element interleaving
gcc.dg/vect/vect-pr111779.c is a case where non-SLP manages to vectorize using VMAT_ELEMENTWISE but SLP currently refuses because doing a regular access with permutes would cause excess vector loads with at most one element used. The following makes us fall back to elementwise accesses for that, too. * tree-vect-stmts.cc (get_group_load_store_type): Fall back to VMAT_ELEMENTWISE when single element interleaving of a too large group. (vectorizable_load): Do not try to verify load permutations when using VMAT_ELEMENTWISE for single-lane SLP and fix code generation for this case. * gfortran.dg/vect/vect-8.f90: Allow one more vectorized loop.
Diffstat (limited to 'gcc/fortran/error.cc')
0 files changed, 0 insertions, 0 deletions