This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Bug in loop optimize (invalid postinc to preinc transformation)
Alexandre Oliva <aoliva@redhat.com> writes:
On Dec 27, 2000, Peter Osterlund <peter.osterlund@mailbox.swipnet.se> wrote:
> Compiling without optimization indicates that the compiler is
> transforming (p++ < x) into (++p < (x+1)), even when not optimizing.
> This transformation is incorrect because x+1 wraps around.
Overflow invokes undefined behavior. Since incrementing p in this
case involves overflow, I think the transformation is ok, as far as
undefined behavior goes.
Overflow of *unsigned* types is well-defined.
--
Torbjörn