Partager via


Indications relatives aux situations dans lesquelles utiliser EMMS

[Cette documentation constitue un aperçu et peut faire l'objet de modifications avec les versions ultérieures. Blank topics are included as placeholders.]

Spécifique à Microsoft

Les indications suivantes vous aident à déterminer quand utiliser l'instruction d' EMMS :

  • Si l'instruction suivante est une instruction à virgule flottante, utilisez _mm_empty une fois qu'une instruction MMX (par exemple, avant d'effectuer les calculs sur flotte, des doubles, ou des longs doubles).

  • Ne pas vide si déjà vide. Si l'instruction suivante utilise un registre MMX, _mm_empty entraîne une opération sans aucun avantage une absence d'opération ().

  • Utilisez les fonctionnalités différentes pour les zones qui utilisent l'instruction à virgule flottante et ceux qui instruction de l'utilisation MMX. Cela élimine demander une instruction EMMS dans le corps d'une boucle critique.

  • utilisation _mm_empty pendant l'initialisation à l'exécution de __m64 et des types de données de Point gel . Cela garantit réinitialiser le registre entre les transitions de type de données. Consultez la programmation d'utilisation dans l'exemple suivant.

Utilisation correcte EMMS dans le code d'initialisation

utilisation incorrecte

utilisation correcte

__m64 x = _m_paddd(y, z);
float f = init();
__m64 x = _m_paddd(y, z);
float f = (_mm_empty(), init());

De plus, vous devez tenir compte de toutes les situations où votre code génère une instruction MMX :

  • Lorsque vous utilisez une fonction intrinsèque MMX.

  • Lors de l'utilisation des extensions Streaming SIMD (pour ces intrinsèques qui données d'utilisation MMX).

  • Lorsque vous utilisez une instruction MMX via l'assembleur inline.

  • en référençant une variable de type de données d' __m64 .

Pour plus de documentation sur l'instruction EMMS, consultez la documentation d'Intel.

Les intrinsèques MMX utilisent le type de données de __m64 , qui n'est pas pris en charge sur les processeurs de x64 .

Voir aussi

Référence

MMX technologie

MMX intrinsèques générales de prise en charge de la technologie