dfma (sm5 - asm)

Performs a fused-multiply add.

dfma[_sat] dest[.mask], [-]src0[_abs][.swizzle], [-]src1[_abs][.swizzle],[-]src2[_abs][.swizzle]
Item Description
dest
[in] The address of the result of the operation. The result value must be accurate to 0.5 ULP.
dest = src0 * src1 + src2
src0
[in] The components to multiply with src1.
src1
[in] The components to multiply with src0.
src2
[in] The components to add tosrc0 * src1.

Remarks

Shaders that use this instruction will be marked with a shader flag that will cause them to fail to bind unless all the following conditions are met.

  • The system supports DirectX 11.1.
  • The system includes a WDDM 1.2 driver.
  • The driver reports support for this instruction via D3D11_FEATURE_DATA_D3D11_OPTIONS.ExtendedDoublesShaderInstructions set to TRUE.

This instruction applies to the following shader stages:

Vertex Hull Domain Geometry Pixel Compute
X X X X X X

Minimum Shader Model

This instruction is supported in the following shader models:

Shader Model Supported
Shader Model 5 yes
Shader Model 4.1 no
Shader Model 4 no
Shader Model 3 (DirectX HLSL) no
Shader Model 2 (DirectX HLSL) no
Shader Model 1 (DirectX HLSL) no

Shader Model 5 Assembly (DirectX HLSL)