https://gcc.gnu.org/bugzilla/show_bug.cgi?id=73457
Andrew Pinski <pinskia at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Severity|normal |enhancement --- Comment #3 from Andrew Pinski <pinskia at gcc dot gnu.org> --- GCC 8+ can handle this at -O3 and above because we can vectorize the loop (which GCC 7 could not do, I have not looked into why) so DOM is able to optimize it after unrolling. GCC 10+ can handle this at -O3 -fno-tree-loop-vectorize (with SLP still happening) because of r10-1420. I do think we should be able to optimize this for -O2 though.