dmax (sm5 - asm)

Component-wise double-precision maximum.

dmax[_sat] dest[.mask], [-]src0[_abs][.swizzle], [-]src1[_abs][.swizzle]
Item Description
dest
[in] The address of the results of the operation.
dest = src0 >= src1 ? src0 : src1
>= is used instead of > so that if min(x,y) = x then max(x,y) = y.
src0
[in] The value to compare with src1.
src1
[in] The value to compare with src0.

Remarks

NaN has special handling. If one source operand is NaN, then the other source operand is returned. The choice is made per-component. If both are NaN, any NaN representation is returned.

The valid swizzles for the source parameters are .xyzw, .xyxy, .zwxy, .zwzw. The valid dest masks are .xy, .zw, and .xyzw. The following src mappings are post-swizzle:

  • dest is a double vec2 across (x 32LSB, y 32MSB) and (z 32LSB, w 32MSB).
  • src0 is a double vec2 across (x 32LSB, y 32MSB) and (z 32LSB, w 32MSB).
  • src1 is a double vec2 across (x 32LSB, y 32MSB) and (z 32LSB, w 32MSB).

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)