This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
execute/20010114-2.c not a bug.
- To: gcc-bugs at gcc dot gnu dot org
- Subject: execute/20010114-2.c not a bug.
- From: Stephen L Moshier <moshier at mediaone dot net>
- Date: Sun, 3 Jun 2001 16:57:00 -0400 (EDT)
- Reply-To: moshier at moshier dot ne dot mediaone dot net
> 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.