28.2.30 __builtin_fmaf

Description

__builtin_fmaf computes (x * y) + z as if with unlimited range and precision, rounding only once to the result format. This can provide more accurate results than performing the multiplication and addition separately, especially with floating-point numbers. This function operates on 32-bit, single-precision floating-point numbers. For more information, see 9.3 Floating-Point Data Types.

Prototype

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

Arguments

x - value to be multiplied by the multiplier

y - value of multiplier

z - value to add to the result of the multiplication

Return Value

Returns value of the mathematical and rounding operations. See also 4.3.4.1 Why Are My Floating-Point Results Not Quite What I Am Expecting?

Machine Instruction

mac.s

Error Messages

An error message is reported if there is a floating-point exception.