https://gcc.gnu.org/g:191d8b846c999e538f34552d14cb96f424f5490a
commit r16-4075-g191d8b846c999e538f34552d14cb96f424f5490a Author: Richard Biener <[email protected]> Date: Wed Sep 24 12:24:11 2025 +0200 Fix get_load_store_type wrt VMAT_ELEMENTWISE classification We may not classify a BB vectorization load as VMAT_ELEMENTWISE as that will ICE. Instead we build vectors from existing scalar loads. Make that explicit. * tree-vect-stmts.cc (get_load_store_type): Explicitly fail when we end up with VMAT_ELEMENTWISE for BB vectorization. Diff: --- gcc/tree-vect-stmts.cc | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/gcc/tree-vect-stmts.cc b/gcc/tree-vect-stmts.cc index 841733349b5c..995151f9a271 100644 --- a/gcc/tree-vect-stmts.cc +++ b/gcc/tree-vect-stmts.cc @@ -2507,6 +2507,11 @@ get_load_store_type (vec_info *vinfo, stmt_vec_info stmt_info, "not falling back to elementwise accesses\n"); return false; } + + /* For BB vectorization build up the vector from existing scalar defs. */ + if (!loop_vinfo && *memory_access_type == VMAT_ELEMENTWISE) + return false; + return true; }
