https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114162
Andrew Pinski <pinskia at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Last reconfirmed| |2024-02-29 Status|UNCONFIRMED |NEW Ever confirmed|0 |1 --- Comment #1 from Andrew Pinski <pinskia at gcc dot gnu.org> --- Confirmed. sccp should be able to figure this out but it does not (there is no detail output on why though). >From other loop passes: Analyzing # of iterations of loop 1 exit condition [(a.0_1 + 1) * 4, + , 4] != 0 bounds on difference of bases: -65535 ... 0 ... result: under assumptions (-((a.0_1 + 1) * 4) & 3) == 0 # of iterations -((a.0_1 + 1) * 4) /[ex] 4, bounded by 16383