Compartir por


_set_SSE2_enable

Habilita o deshabilita el uso de las instrucciones Extensiones SIMD de streaming 2 (SSE2) en las rutinas matemáticas de CRT (Esta función no está disponible en arquitecturas x64 porque SSE2 está habilitada de forma predeterminada).

Sintaxis

int _set_SSE2_enable(
   int flag
);

Parámetros

flag
1 para habilitar la implementación de SSE2 y 0 para deshabilitarla. De forma predeterminada, la implementación de SSE2 está habilitada en los procesadores compatibles.

Valor devuelto

Valor distinto de cero si la implementación de SSE2 está habilitada; cero si está deshabilitada.

Comentarios

Las siguientes funciones tienen las implementaciones de SSE2 que se pueden habilitar mediante _set_SSE2_enable:

Las implementaciones SSE2 de estas funciones pueden dar respuestas ligeramente diferentes a las implementaciones predeterminadas. Los valores intermedios de SSE2 son cantidades de punto flotante de 64 bits, pero los valores intermedios de implementación predeterminados son cantidades de punto flotante de 80 bits.

Nota:

Si usa la opción del compilador/Oi (Generar funciones intrínsecas) para compilar el proyecto, podría parecer que _set_SSE2_enable no surte efecto alguno. La opción del compilador /Oi proporciona al compilador la autoridad para usar intrínsecos para reemplazar las llamadas de CRT; este comportamiento invalida el efecto de _set_SSE2_enable. Si desea garantizar que /Oi no invalide _set_SSE2_enable, use /Oi- para compilar el proyecto. También se recomienda hacer esto si usa otros modificadores de compilador que impliquen /Oi.

La implementación de SSE2 solo se usa si se enmascaran todas las excepciones. Use _control87, _controlfp para enmascarar excepciones.

Requisitos

Routine Encabezado necesario
_set_SSE2_enable <math.h>

Para obtener más información sobre compatibilidad, consulte Compatibilidad.

Ejemplo

// 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");
}
SSE2 enabled.

Vea también

Archivos .lib de tiempo de ejecución de C (CRT) y biblioteca estándar de C++ (STL)