概要: インテル® ストリーミング SIMD 拡張命令 2

このセクションでは、インテル® C++ コンパイラー内でストリーミング SIMD 拡張命令 (インテル® SSE) をサポートする、C++ 言語レベルの機能について説明します。これらの機能は、次の 2 種類に分類されます。

Note icon


  1. 浮動小数点移動操作の組み込み関数はありません。1 つのレジスターから別のレジストへデータを移動するには、A = B のように単に代入します。AB は移動操作のソースで対象レジスターです。
  2. インテル® SSE2 命令をサポートせず、MMX® テクノロジーをサポートするプロセッサーでは、sse2mmx.h エミュレーション・パックを使用してインテル® SSE2 命令をサポートすることができます。

次のプロセッサーでは、sse2mmx.h ヘッダーファイルを使用してください。

一部の組み込み関数は、2 つ以上の命令で実行するため、"複合組み込み関数" と呼ばれます。1 つの命令で実行する組み込み関数は "単一組み込み関数" と呼ばれます。

インテル® SSE2 の組み込み関数を使用してプログラムを作成する際は、インテル® SSE2 によって提供されるハードウェア機能をよく理解している必要があります。特に、次の 3 つの点に注意してください。

インテル® SSE2 の組み込み関数のプロトタイプは、ヘッダーファイル emmintrin.h 内にあります。

Note icon

IA-32 アーキテクチャー・ベースの組み込み関数に対して 1 つのヘッダーファイル ia32intrin.h を使用することもできます。