This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: optimization/7799: [3.2/3.3 regression] Loop bug with optimization flag -Os in gcc
- From: "Christian Ehrhardt" <ehrhardt at mathematik dot uni-ulm dot de>
- To: Eric Botcazou <ebotcazou at libertysurf dot fr>
- Cc: nejataydin at superonline dot com, gcc-gnats at gcc dot gnu dot org, gcc at gcc dot gnu dot org, gcc-bugs at gcc dot gnu dot org, nobody at gcc dot gnu dot org
- Date: Fri, 13 Dec 2002 15:52:49 +0100
- Subject: Re: optimization/7799: [3.2/3.3 regression] Loop bug with optimization flag -Os in gcc
- References: <20021213133626.29733.qmail@theseus.mathematik.uni-ulm.de> <200212131449.01528.ebotcazou@libertysurf.fr>
On Fri, Dec 13, 2002 at 02:49:01PM +0100, Eric Botcazou wrote:
> > This transformation is IMHO illegal because there is no way to make the
> > comparison in general equivialent to that in the original for loop.
> > If p is initially 0x7ffffffc the comparison must be treated as unsigned,
> > however, if p is initially 0xfffffffc the comparison must be treated as
> > signed.
>
> Well-known deficiency of the strength reduction pass (see the testcase
> testsuite/gcc.c-torture/execute/loop-2e.c which is XFAILed on x86 at -Os).
Thanks for the clarification. This means that we can close the report?
I can confirm that using -fno-strength-reduce fixes the problem.
regards Christian
--
THAT'S ALL FOLKS!