https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113210

--- Comment #10 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
(In reply to Richard Biener from comment #9)
> I think we want to keep the invariant that both are INTEGER_CST when one is.
> 
> If we can fold the add to 1 why can't we fold the original to 0?

Because fold generally isn't recursive, so either whatever created the
expression (niters analysis) would need to try to fold all subexpressions which
it clearly doesn't try to do so, or we rely on luck that something changed and
we fold something because of that, which is exactly what triggers it during the
+ 1 folding.

Reply via email to