https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93954
--- Comment #1 from Andrew Pinski <pinskia at gcc dot gnu.org> --- >Bisection points to g:bd2b9f1e2d67ec8e88c977154ecfee My bet is if you put a break point at "i--;" you would get the incorrect answer before that patch. Since the function just has one instruction at -O3, there is not an instruction to place both lines there.