By default, the compiler generates a single non-IEEE 754 compatible multiply-add
instruction for binary floating-point expressions such as
a+
b*
c,
partly because one instruction is faster than two. Because no rounding occurs
between the multiply and add operations, this may also produce a more precise
result. However, the increased precision might lead to different results from
those obtained in other environments, and may cause
x*
y-
x*
y to
produce a nonzero result. To avoid these issues, you can suppress the generation
of multiply-add instructions by using the
-qfloat=nomaf option.
Note: Decimal floating-point does not use multiply-add
instructions