Return x * y + z, rounded as one ternary operation.
Synopsis
Declared in <bdldfp_decimalimputil.h>
static
DecimalImpUtil::ValueType32
fma(
ValueType32 x,
ValueType32 y,
ValueType32 z);
Description
Special value handling: * If x or y are quiet NaN, quiet NaN is returned. * If any argument is signaling NaN, quiet NaN is returned and the value of the macro EDOM is stored into errno. * If x*y is an exact infinity and z is infinity with the opposite sign, quiet NaN is returned and the value of the macro EDOM is stored into errno. * If x is zero and y is infinite or if x is infinite and y is zero, and z is not a NaN, then quiet NaN is returned and the value of the macro EDOM is stored into errno. * If x is zero and y is infinite or if x is infinite and y is zero, and z is NaN, then quiet NaN is returned.
Return Value
x * y + z, rounded as one ternary operation
Parameters
Name |
Description |
x |
first multiplicand |
y |
second multiplicand |
z |
addend |
Created with MrDocs