1 .\" Copyright 2002 Walter Harms (walter.harms@informatik.uni-oldenburg.de)
2 .\" Distributed under GPL, 2002-07-27 Walter Harms
3 .\" Modified 2004-11-15, Added further text on FLT_ROUNDS
4 .\" as suggested by AEB and Fabian Kreutz
6 .TH FMA 3 2002-07-27 "" "Linux Programmer's Manual"
8 fma, fmaf, fmal \- floating-point multiply and add
13 .BI "double fma(double " x ", double " y ", double " z );
15 .BI "float fmaf(float " x ", float " y ", float " z );
17 .BI "long double fmal(long double " x ", long double " y ", long double " z );
20 Compile with \-std=c99; link with \-lm.
25 .IR x " * " y " + " z .
26 The result is rounded according to the
27 rounding mode determined by the value of FLT_ROUNDS.
28 FLT_ROUNDS indicates the implementation-defined rounding
29 behaviour for floating-point addition,
30 and has one of the following values:
32 The rounding mode is not determinable.
34 Rounding is towards 0.
36 Rounding is towards nearest number.
38 Rounding is towards positive infinity.
40 Rounding is towards negative infinity.
42 Other values represent machine-dependent, non-standard rounding modes.