manpagez: man pages & more
man fmal(3)
Home | html | info | man
fma(3)                   BSD Library Functions Manual                   fma(3)


NAME

     fma -- multiply and add, then round


SYNOPSIS

     #include <math.h>

     double
     fma(double x, double y, double z);

     long double
     fmal(long double x, long double y, long double z);

     float
     fmaf(float x, float y, float z);


DESCRIPTION

     The fma() functions compute (x*y)+z, rounded as one ternary operation:
     they compute the value (as if) to infinite precision and round once to
     the result format, according to the current rounding mode.


SPECIAL VALUES

     fma(x, y, z) returns a NaN and optionally raises the "invalid" floating-
     point exception if one of x and y is infinite, the other is 0, and z is a
     NaN.

     fma(x, y, z) returns a NaN and raises the "invalid" floating-point excep-
     tion if one of x and y is infinite, the other is 0, and z is not NaN.

     fma(x, y, z) returns a NaN and raises the "invalid" floating-point excep-
     tion if x times y is an exact infinity, and z is also an infinity but
     with the opposite sign.


SEE ALSO

     fdim(3), fmax(3), fmin(3)


STANDARDS

     The fma() functions conform to ISO/IEC 9899:1999(E).

BSD                              May 28, 2008                              BSD

Mac OS X 10.6 - Generated Thu Sep 17 20:19:46 CDT 2009
© manpagez.com 2000-2024
Individual documents may contain additional copyright information.