次の方法で共有


_set_SSE2_enable

有効または無効 CRT の数値演算ルーチンの ストリーミング SIMD 拡張機能 2 (SSE2) 命令を使用します。この関数は SSE2 が既定で有効になるため、x64 アーキテクチャで使用できません)。

int _set_SSE2_enable(
   int flag
);

パラメーター

  • flag
    SSE2 実装を有効にする 1; SSE2 実装を無効にする 0。 既定で SSE2 実装は、それをサポートするプロセッサで有効になっています。

戻り値

SSE2 実装が有効な場合 0 以外の; SSE2 実装が無効になればゼロ。

解説

次の関数に _set_SSE2_enableを使用して有効にできる SSE2 実装があります:

これらの関数の実装は、SSE2 SSE2 中間値が 64 ビット浮動小数点数である場合、既定の実装の中間値が 80 ビットの浮動小数点数値であるため、既定の実装は少し異なる回答を受けることがあります。

注意

プロジェクトをコンパイルする /Oi (組み込み関数を生成します。 のコンパイラ オプションを使用すると _set_SSE2_enable に効果がないように見えることがあります。/Oi のコンパイラ オプションは、コンパイラが CRT の呼び出しに代わる組み込みを使用するように権限を与えます; この動作は _set_SSE2_enableの影響をオーバーライドします。/Oi_set_SSE2_enableをオーバーライドされないようにするには、プロジェクトをコンパイルするために /Oi- を使用します。これは、/Oiを意味する他のコンパイラ スイッチを使用するときに推奨される方法である場合があります。

SSE2 実装は、すべての例外が隠れている場合、場合にだけ使用されます。 例外をマスクに 詳細については" を使用します。

必要条件

ルーチン

必須ヘッダー

_set_SSE2_enable

<math.h>

互換性の詳細については、「C ランタイム ライブラリ」の「互換性」を参照してください。

使用例

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

同等の .NET Framework 関数

使用できません。標準 C 関数を呼び出すには、PInvoke を使用します。詳細については、「プラットフォーム呼び出しの例」を参照してください。

参照

関連項目

CRT ライブラリの機能