Developer Guide and Reference

ID 767251
Date 10/31/2024
Public
Document Table of Contents

fma, Qfma

Determines whether the compiler generates fused multiply-add (FMA) instructions if such instructions exist on the target processor.

Syntax

Linux:

-fma

-no-fma

Windows:

/Qfma

/Qfma-

Arguments

None

Default

-fma
or /Qfma

If the instructions exist on the target processor, the compiler generates fused multiply-add (FMA) instructions.

However, if you specify -fp-model strict (Linux*) or /fp:strict (Windows*), but do not explicitly specify -fma or /Qfma, the default is -no-fma or /Qfma-.

Description

This option determines whether the compiler generates fused multiply-add (FMA) instructions if such instructions exist on the target processor. When the [Q]fma option is specified, the compiler may generate FMA instructions for combining multiply and add operations. When the negative form of the [Q]fma option is specified, the compiler must generate separate multiply and add instructions with intermediate rounding.

This option has no effect unless setting CORE-AVX2 or higher is specified for option [Q]x,-march (Linux), or /arch (Windows).

IDE Equivalent

None

Alternate Options

None

See Also