"Richard Guenther" <richard.guenther@gmail.com> writes:
> On 02 Mar 2007 12:09:43 -0800, Ian Lance Taylor <iant@google.com> wrote:
> > Ian Lance Taylor <iant@google.com> writes:
> >
> > > This patch is a lengthy prelude to adding full support for
> > > -fstrict-overflow and -Wstrict-overflow to tree-vrp.c. It changes VRP
> > > to use an explicit representation of signed infinity when there is a
> > > signed overflow.
> >
> > Committed as follows.
>
> This patch causes optimization regressions because it preserves "overflow"
> even if -fstrict-overflow is in effect or -Wstrict-overflow is not in effect.
> See PR31130. I believe needs_overflow_infinity () should return false
> for -fstrict-overflow.
That would not be the right fix. It would cause -Wstrict-overflow to
become ineffective for VRP, which would put us right back where we
were when I started the whole series of patches: user code would act
in unexpected ways with no warning. And simply adding
-Wstrict-overflow should not, of course, change code generation.
I know that some people are uneasy with the whole idea of this series
of patches. But the fact is, real users were prepared to turn on
-fwrapv for all code which uses autoconf, which is a good fraction of
uses of gcc. I think that my patch does considerably less harm than
that. I am always open to other suggestions, and I have asked for
them consistently during this series of patches.