This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

testsuite failures on i586-pc-linux-gnu


Hello,

For some time the gcc testsuite has been showing some failures on
i586-pc-linux-gnu:
http://gcc.gnu.org/ml/gcc-testresults/2002-05/msg00229.html

The two following failures are identical:
FAIL: gcc.c-torture/execute/loop-2c.c execution,  -Os
FAIL: gcc.c-torture/execute/loop-2d.c execution,  -Os

They are triggered by a mis-optimization of the loop:

  unsigned int i;

  for (p = &a[b], i = b; --i < ~0; )
    *--p = i * 3 + o;

The loop optimizer eliminates the basic induction variable i and replaces
the test --i < ~0 by a test on p. Now the initial test relies on i wrapping
around, so it is actually a GT test, not a LT, but the optimizer doesn't see
it.

Should the loop optimizer be taught not to eliminate the biv in that case or
the two tests be corrected ?

--
Eric Botcazou
ebotcazou@multimania.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]