Share via


dmul (sm5 - asm)

Multipliez la double précision au niveau des composants.

dmul[_sat] dest[.mask], [-]src0[_abs][.swizzle], [-]src1[_abs][.swizzle]
Élément Description
Dest
[in] Adresse du résultat de l’opération.
Dest = src0 * src1
src0
[in] Composants à multiplier par src1.
src1
[in] Composants à multiplier par src0.

Notes

Les swizzles valides pour les paramètres source sont .xyzw, .xyxy, .zwxy, .zwzw. Les masques dest valides sont .xy, .zw et .xyzw. Les mappages src suivants sont post-swizzle :

  • dest est un double vec2 across (x 32LSB, y 32MSB) et (z 32LSB, w 32MSB).
  • src0 est un double vec2 across (x 32LSB, y 32MSB) et (z 32LSB, w 32MSB).
  • src1 est un double vec2 across (x 32LSB, y 32MSB) et (z 32LSB, w 32MSB).

Le tableau suivant montre les résultats obtenus lors de l’exécution de l’instruction avec différentes classes de nombres, en supposant qu’aucun dépassement de capacité ou sous-flux ne se produit.

F signifie nombre fini-réel.

src0 src1-> -Inf -F -1.0 -0 +0 +1.0 +F +inf NaN
-Inf +inf +inf +inf NaN NaN -inf -inf -inf NaN
-F +inf +F -src0 +0 -0 src0 -F -inf NaN
-1.0F +inf -src1 +1.0 +0 -0 -1.0 -src1 -inf NaN
-0 NaN +0 +0 +0 -0 -0 -0 NaN NaN
+0 NaN -0 -0 -0 +0 +0 +0 NaN NaN
+1.0 -inf src1 -1.0 -0 +0 +1 src1 +inf NaN
+F -inf -F -src0 -0 +0 src0 +F +inf NaN
+inf -inf -inf -inf NaN NaN +inf +inf +inf NaN
NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN

Cette instruction s’applique aux étapes suivantes du nuanceur :

Sommet Coque Domain Géométrie Pixel Compute
X X X X X X

Modèle de nuanceur minimal

Cette instruction est prise en charge dans les modèles de nuanceur suivants :

Modèle de nuanceur Pris en charge
Modèle de nuanceur 5 Oui
Modèle de nuanceur 4.1 non
Modèle de nuanceur 4 non
Modèle de nuanceur 3 (DirectX HLSL) non
Shader Model 2 (DirectX HLSL) non
Modèle de nuanceur 1 (DirectX HLSL) non

Shader Model 5 Assembly (DirectX HLSL)