# drcp (sm5 - asm)

Computes a component-wise double-precision reciprocal.

rcp[_sat] dest[.mask], [-]src0[_abs][.swizzle] |
---|

Item | Description |
---|---|

[in] The address of the results
| |

[in] The number to take the reciprocal of. |

## Remarks

The DRCP instruction is emitted by the HLSL compiler only when explicitly called via the rcp() intrinsic, when a double is used as the argument. The accuracy of this instruction is required to be 1.0 ULP.

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**.

The following table shows the results obtained when executing the instruction with various classes of numbers, assuming that neither overflow or underflow occurs.

In this table F means finite-real number.

src-> | -inf | -F | -0 | +0 | +F | +inf | NaN |

dest-> | -0 | -F | -inf | +inf | +F | +0 | NaN |

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 |

## Related topics