Note: this is upstream bug 3268:
http://sourceware.org/bugzilla/show_bug.cgi?id=3268
--
Vincent Lefèvre [EMAIL PROTECTED] - Web: http://www.vinc17.org/
100% accessible validated (X)HTML - Blog: http://www.vinc17.org/blog/
Work: CR INRIA - computer arithmetic / Arenaire project (LIP, ENS-Lyon)
On 2006-06-10 03:11:51 +0200, Vincent Lefevre wrote:
The cause is that fma() is implemented on the x86 with (x * y) + z.
The ISO C99 standard requires:
The fma functions compute (x × y) + z, rounded as one ternary
operation: they compute the value (as if) to infinite precision
Package: libc6-dev
Version: 2.3.6-15
Severity: normal
The fma() function is incorrect. For instance (this example is based
on one given in the ieee754r mailing-list):
#include stdio.h
#include stdlib.h
#include float.h
#include math.h
int main (void)
{
double eps, e2, f, x, z;
eps =
3 matches
Mail list logo