| |||
| Home > Compiler-specific Features > Fused Multiply Add (FMA) intrinsics | |||
These intrinsics perform the following calculation, incurring only a single rounding step:
result = a × b + c
Performing the calculation with a single rounding step, rather than multiplying and then adding with two roundings, can result in a better degree of accuracy.
Declared in math.h, the FMA intrinsics
are:
double fma(doublea, doubleb, doublec); float fmaf(floata, floatb, floatc); long double fmal(long doublea, long doubleb, long doublec);
These intrinsics are only available in C99 mode.
They are only supported for the Cortex-A5 and Cortex-M4 processors.
If compiling for the Cortex-M4 processor, only fmaf() is
available.