https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110310
--- Comment #3 from rguenther at suse dot de <rguenther at suse dot de> --- On Thu, 22 Jun 2023, avieira at gcc dot gnu.org wrote: > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110310 > > --- Comment #2 from avieira at gcc dot gnu.org --- > I can't remember the exact reason either, though I do vaguely remember niter > updating being something that we felt 'needed more future work' at the time. > > Just a side question, AVX512 has predication right? So how come you are > expecting an epilogue? I'm asking to only predicate the epilogues. > I'm also curious about the condition on that snippet of code, 'known_eq (vf, > lowest_vf)' seems odd.. lowest_vf is by definition constant, so known_eq only > succeeds if vf is constant and the same as lowest_vf, but lowest_vf is the > constant lower bound of vf, i.e. that seems like a very convoluted way of > doing > vf.is_constant (&lowest_vf)? Maybe this helper function wasn't around back > then. Either way, it feels like we shouldn't be doing this if loop_vinfo is > predicated? But I also agree that we probably want to be doing all of this > during analysis, seems odd to be ruling out loop_vinfo's during > transformation. OK, so I take away from this that you don't think this is done the way it is on purpose.