https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92596
--- Comment #2 from Richard Biener <rguenth at gcc dot gnu.org> --- So I think the issue is that we have /* Calculate the unrolling factor based on the smallest type. */ poly_uint64 unrolling_factor = calculate_unrolling_factor (max_nunits, group_size); with max_nunits == 1 and group_size == 3 because we end up with V1DImode as vectype. But then later we end up with V2SImode vectors for _2 = c.0_1 == 0; but the vectorization factor is 1.