testsuite/libffi.call/many_win32.c: Avoid spurious failure due to excess precision

The test case testsuite/libffi.call/many_win32.c can spuriously fail due
to excess floating-point precision.  Instrumenting it with some printf
calls shows differences well above FLT_EPSILON.  (Note when
instrumenting it that multiple computations of the difference, such as
one in a print and another in the conditional, may produce different
results.)

Rather than complicating the test suite with architecture-specific flags
to avoid excess precision, just simplify the floating-point computation
to avoid a dependency on potential excess precision.
This commit is contained in:
Josh Triplett
2014-03-15 22:08:19 -07:00
parent c00a49ecd1
commit 88d562a8b5

View File

@@ -23,7 +23,7 @@ static float __attribute__((stdcall)) stdcall_many(float f1,
float f12,
float f13)
{
return ((f1/f2+f3/f4+f5/f6+f7/f8+f9/f10+f11/f12) * f13);
return f1+f2+f3+f4+f5+f6+f7+f8+f9+f10+f11+f12+f13;
}
int main (void)