https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106081
--- Comment #14 from rsandifo at gcc dot gnu.org <rsandifo at gcc dot gnu.org> --- FWIW, changing: if (!STMT_VINFO_GROUPED_ACCESS (dr_stmt)) continue; to: if (!STMT_VINFO_GROUPED_ACCESS (dr_stmt)) { partition.layout = -1; continue; } in start_choosing_layouts fixes it for me. We can then choose layout 1 for the splat. I think these conditions were carried over from the old code. Without checking further, I'm not 100% sure what effect relaxing them would have :)