This is the mail archive of the gcc-bugs@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]

execute/20010114-2.c not a bug.



> FAIL: gcc.c-torture/execute/20010114-2.c execution,  -O1

This test case is just an extra-precise fpu register effect.

With TWO23 = 8388608  and x = -1.5 it first calculates
          x = TWO23 - x;
This is  8388608 + 1.5 = 8388609.5
which would round to 8388610.0 in single precision.
Next it calculates
          x = -(x - TWO23);
which with single precision rounding would be  -(8388610. - 8388608.) = -2.0
as desired.

With the fpu set to long double rounding, the result is
  -(8388609.5 - 8388608.) = -1.5
as not desired.

This test case should either be deleted or moved to the IEEE area.
I would vote to delete it.


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