https://gcc.gnu.org/bugzilla/show_bug.cgi?id=108782
--- Comment #2 from Richard Biener <rguenth at gcc dot gnu.org> --- We're applying outer loop vectorization but the nested cycle isn't vectorizable because we run into if (!flow_bb_inside_loop_p (loop, gimple_bb (use_stmt))) { if (dump_enabled_p ()) dump_printf_loc (MSG_MISSED_OPTIMIZATION, vect_location, "intermediate value used outside loop.\n"); return NULL; } but I think that's premature. Still vectorizing it as first order recurrence isn't possible either. Testing a patch.