インテル® C++ コンパイラー 18.0 デベロッパー・ガイドおよびリファレンス

デバッグ演算

デバッグ演算は、インテル® MMX® 命令やインテル® ストリーミング SIMD 拡張命令のコンパイラー組込み関数との対応関係はありません。これらはプログラムのデバッグにのみ使用されます。これらの演算を使用するとパフォーマンスが下がる場合がありますので、デバッグ以外には使用しないでください。

出力演算

A の 2 つのシングル倍精度浮動小数点値が出力バッファーに格納され、次のように 10 進数形式で出力されます。

cout << F64vec2 A;
"[1]:A1 [0]:A0"
対応する組込み関数: なし

A の 4 つの単精度浮動小数点値が出力バッファーに格納され、次のように 10 進数形式で出力されます。

cout << F32vec4 A;
"[3]:A3 [2]:A2 [1]:A1 [0]:A0"

対応する組込み関数: なし

A の最下位単精度浮動小数点値が出力バッファーに格納され出力されます。

cout << F32vec1 A;
対応する組込み関数: なし

要素アクセス演算

double d = F64vec2 A[int i]

対応する浮動小数点値を変更することなく、A の 2 つの倍精度浮動小数点値のうちの 1 つを読み取ります。i の許容値は 0 と 1 です。次に例を示します。

DEBUG が有効で i が許容値 (0 または 1) のいずれでもない場合、診断メッセージが出力され、プログラムは途中でアボートします。

double d = F64vec2 A[1];
対応する組込み関数: なし

対応する浮動小数値を変更せずに、A の 4 つの単精度浮動小数点値のうちの 1 つを読み取ります。i の許容値は 0、1、2、3 です。次に例を示します。

float f = F32vec4 A[int i]

DEBUG が有効で i が許容値 (0 ~ 3) でない場合、診断メッセージが出力され、プログラムは途中でアボートします。

float f = F32vec4 A[2];
対応する組込み関数: なし

要素代入演算

F64vec4 A[int i] = double d;

A の 2 つの倍精度浮動小数点値のうちの 1 つを変更します。整数 i の許容値は 0 と 1 です。次に例を示します。

F32vec4 A[1] = double d;
F32vec4 A[int i] = float f;

A の 4 つの単精度浮動小数点値のうちの 1 つを変更します。整数 i の許容値は 0、1、2、3 です。次に例を示します。

DEBUG が有効で整数 i が許容値 (0~3) のいずれでもない場合、診断メッセージが出力され、プログラムは途中でアボートします。

F32vec4 A[3] = float f;
対応する組込み関数: なし