Partager via


_set_SSE2_enable

Active ou désactive l'utilisation des instructions Extensions Streaming SIMD 2 (SSE2) dans les routines mathématiques CRT. (Cette fonction n'est pas disponible sur les architectures x64 car SSE2 est activé par défaut.)

int _set_SSE2_enable(
   int flag
);

Paramètres

  • flag
    1 pour activer l'implémentation SSE2 ; 0 pour désactiver l'implémentation SSE2. Par défaut, l'implémentation SSE2 est activée sur des processeurs qui la prennent en charge.

Valeur de retour

Une valeur différente de zéro si l'implémentation SSE2 est activée ; zéro si l'implémentation SSE2 est désactivée.

Notes

Les fonctions suivantes ont des implémentations SSE2 qui peuvent être activées à l'aide de _set_SSE2_enable:

Les implémentations SSE2 de ces fonctions peuvent donner des réponses légèrement différentes des implémentations par défaut, car les valeurs SSE2 intermédiaires sont des quantités à virgule flottante 64 bits alors que les valeurs intermédiaires d'implémentation par défaut sont des quantités à virgule flottante 80-bit.

Notes

Si vous utilisez l'option du compilateur /Oi (Générer des fonctions intrinsèques) pour compiler le projet, il peut se passer que _set_SSE2_enable n'a aucun effet.L'option du compilateur /Oi donne au compilateur l'autorité pour utiliser les intrinsèques pour remplacer les appels CRT ; ce comportement remplace l'effet de _set_SSE2_enable.Si vous souhaitez vous assurer que /Oi ne remplace pas _set_SSE2_enable, utilisez /Oi- pour compiler votre projet.Cela peut également être recommandé lorsque vous utilisez d'autres commutateurs de compilation qui impliquent /Oi.

L'implémentation SSE2 est utilisée uniquement si toutes les exceptions sont masquées. Utilisez _control87, _controlfp pour masquer des exceptions.

Configuration requise

Routine

En-tête requis

_set_SSE2_enable

<math.h>

Pour plus d'informations sur la compatibilité, consultez Compatibilité dans l'introduction.

Exemple

// crt_set_SSE2_enable.c
// processor: x86
#include <math.h>
#include <stdio.h>

int main()
{
   int i = _set_SSE2_enable(1);

   if (i)
      printf("SSE2 enabled.\n");
   else
      printf("SSE2 not enabled; processor does not support SSE2.\n");
}

Sortie

SSE2 enabled.

Équivalent .NET Framework

Non applicable. Pour appeler la fonction C standard, utilisez PInvoke. Pour plus d'informations, consultez Exemples d'appel de code non managé.

Voir aussi

Référence

Fonctions des bibliothèque CRT