Condividi tramite


_set_SSE2_enable

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

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 lo supportano.

Valore restituito

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

Note

Le funzioni seguenti dispongono dell'implementazione SSE2 che può essere abilitata tramite _set_SSE2_enable:

Le implementazioni SSE2 di queste funzioni potrebbero fornire risposte leggermente diverse dalle implementazioni predefinite, poiché i valori intermedi SSE2 sono quantità a virgola mobile a 64 bit, ma i valori intermedi di un'implementazione predefinita sono quantità a virgola mobile ad 80 bit.

Nota

Se si utilizza l'opzione del compilatore /Oi (Genera funzioni intrinseche) per compilare il progetto, può sembrare che _set_SSE2_enable non abbia effetto.L'opzione del compilatore /Oi fornisce al compilatore l'autorità per utilizzare le funzioni intrinseche per sostituire le chiamate CRT; questo comportamento esegue sovrascrive l'effetto di _set_SSE2_enable.Se si desidera garantire che /Oi non esegua l'override di _set_SSE2_enable, utilizzare /Oi- per compilare il progetto.Ciò potrebbe essere consigliabile quando si utilizzano altre opzioni del compilatore che implicano /Oi.

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

Requisiti

Routine

Intestazione obbligatoria

_set_SSE2_enable

<math.h>

Per ulteriori informazioni sulla compatibilità, vedere 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");
}

Output

SSE2 enabled.

Equivalente .NET Framework

Non applicabile. Per chiamare la funzione standard C, utilizzare PInvoke. Per ulteriori informazioni, vedere Esempi di platform invoke.

Vedere anche

Riferimenti

Funzionalità libreria CRT