Condividi tramite


_set_SSE2_enable

Abilita o disabilita l'uso di istruzioni Streaming SIMD Extensions 2 (SSE2) nelle routine matematiche CRT. Questa funzione non è disponibile nelle architetture x64 perché SSE2 è abilitato per impostazione predefinita.

Sintassi

int _set_SSE2_enable(
   int flag
);

Parametri

flag
1 per abilitare l'implementazione SSE2; 0 per disabilitare l'implementazione SSE2. Per impostazione predefinita, l'implementazione SSE2 è abilitata su processori che la supportano.

Valore restituito

Diverso da zero se l'implementazione SSE2 è abilitata; zero se l'implementazione SSE2 è disabilitata.

Osservazioni:

Le funzioni seguenti dispongono di implementazioni SSE2 che possono essere abilitate utilizzando _set_SSE2_enable:

Le implementazioni SSE2 di queste funzioni potrebbero fornire risposte leggermente diverse rispetto alle implementazioni predefinite. I valori intermedi SSE2 sono quantità a virgola mobile a 64 bit, ma i valori intermedi di implementazione predefiniti sono quantità a virgola mobile a 80 bit.

Nota

Se si usa l'opzione del compilatore /Oi (Genera funzioni intrinseche) per compilare il progetto, può sembrare che _set_SSE2_enable non abbia alcun effetto. L'opzione del compilatore /Oi fornisce al compilatore l'autorità di usare oggetti intrinseci per sostituire le chiamate CRT. Questo comportamento sostituisce l'effetto di _set_SSE2_enable. Se si vuole garantire che /Oi non esegue l'override _set_SSE2_enabledi , usare /Oi- per compilare il progetto. Questa potrebbe anche essere una procedura consigliata quando si usano altre opzioni del compilatore che implicano /Oi.

L'implementazione SSE2 viene utilizzata solo se tutte le eccezioni sono mascherate. Usare _control87, _controlfp per mascherare le eccezioni.

Requisiti

Ciclo Intestazione obbligatoria
_set_SSE2_enable <math.h>

Per altre informazioni sulla compatibilità, vedere Compatibility (Compatibilità).

Esempio

// 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.

Vedi anche

File C Runtime (CRT) e C++ Standard Library (STL) .lib