https://gcc.gnu.org/bugzilla/show_bug.cgi?id=126366
Tamar Christina <tnfchris at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |tnfchris at gcc dot gnu.org
Blocks| |115130
--- Comment #1 from Tamar Christina <tnfchris at gcc dot gnu.org> ---
Note that in vect_enhance_data_refs_alignment today we do
/* Check if we can possibly peel the loop. */
if (!vect_can_advance_ivs_p (loop_vinfo)
|| !slpeel_can_duplicate_loop_p (loop, LOOP_VINFO_MAIN_EXIT (loop_vinfo),
loop_preheader_edge (loop))
|| loop->inner
/* We don't currently maintain the LCSSA for prologue peeled inversed
loops. */
|| (LOOP_VINFO_EARLY_BREAKS_VECT_PEELED (loop_vinfo)
&& !LOOP_VINFO_NITERS_UNCOUNTED_P (loop_vinfo)))
do_peeling = false;
so peeling is disabled for LOOP_VINFO_EARLY_BREAKS_VECT_PEELED but I don't know
why it still is given LOOP_VINFO_NITERS_UNCOUNTED_P are all also
LOOP_VINFO_EARLY_BREAKS_VECT_PEELED so the issue must have been fixed already.
I'll remove this and see.
Referenced Bugs:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115130
[Bug 115130] [meta-bug] early break vectorization