デバッグ演算は、MMX® テクノロジ命令についてはどのコンパライラ関数にも対応関係はありません。単にプログラムのデバッグに使用される演算にすぎません。この演算を使用するとパフォーマンスが下がる場合がありますので、デバッグの目的以外には使用しないでください。
4個の32ビット値Aが出力バッファに格納され、次の形式で出力します(デフォルトでは10進数形式)。
cout << Is32vec4 A;
cout << Iu32vec4 A;
cout << hex << Iu32vec4 A; /* print in hex format */
"[3]:A3 [2]:A2 [1]:A1 [0]:A0"
対応する組込み関数: なし
2個の32ビット値Aが出力バッファに格納され、次の形式で出力します(デフォルトでは10進数形式)。
cout << Is32vec2 A;
cout << Iu32vec2 A;
cout << hex << Iu32vec2 A; /* print in hex format */
"[1]:A1 [0]:A0"
対応する組込み関数: なし
8個の16ビット値Aが出力バッファに格納され、次の形式で出力します(デフォルトでは10進数形式)。
cout << Is16vec8 A;
cout << Iu16vec8 A;
cout << hex << Iu16vec8 A; /* print in hex format */
"[7]:A7 [6]:A6 [5]:A5 [4]:A4 [3]:A3 [2]:A2 [1]:A1 [0]:A0"
対応する組込み関数: なし
4個の16ビット値Aが出力バッファに格納され、次の形式で出力します(デフォルトでは10進数形式)。
cout << Is16vec4 A;
cout << Iu16vec4 A;
cout << hex << Iu16vec4 A; /* print in hex format */
"[3]:A3 [2]:A2 [1]:A1 [0]:A0"
対応する組込み関数: なし
16個の8ビット値Aが出力バッファに格納され、次の形式で出力します(デフォルトでは10進数形式)。
cout << Is8vec16 A;cout << Iu8vec16 A;cout << hex << Iu8vec8 A;
/* print in hex format instead of decimal*/
"[15]:A15 [14]:A14 [13]:A13 [12]:A12 [11]:A11 [10]:A10 [9]:A9 [8]:A8 [7]:A7 [6]:A6 [5]:A5 [4]:A4 [3]:A3 [2]:A2 [1]:A1 [0]:A0"
対応する組込み関数: なし
8個の8ビット値Aが出力バッファに格納され、次の形式で出力します(デフォルトでは10進数形式)。
cout << Is8vec8 A; cout << Iu8vec8 A;cout << hex << Iu8vec8 A;
/* print in hex format instead of decimal*/
"[7]:A7 [6]:A6 [5]:A5 [4]:A4 [3]:A3 [2]:A2 [1]:A1 [0]:A0"
対応する組込み関数: なし
int R = Is64vec2 A[i];
unsigned int R = Iu64vec2 A[i];
int R = Is32vec4 A[i];
unsigned int R = Iu32vec4 A[i];
int R = Is32vec2 A[i];
unsigned int R = Iu32vec2 A[i];
short R = Is16vec8 A[i];
unsigned short R = Iu16vec8 A[i];
short R = Is16vec4 A[i];
unsigned short R = Iu16vec4 A[i];
signed char R = Is8vec16 A[i];
unsigned char R = Iu8vec16 A[i];
signed char R = Is8vec8 A[i];
unsigned char R = Iu8vec8 A[i];
Aの要素iにアクセスして読み取ります。DEBUGが有効もなっているときにユーザがA以外の要素にアクセスしようとすると、診断メッセージが出力され、プログラムが途中で終了します。
対応する組込み関数: なし
Is64vec2 A[i] = int R;
Is32vec4 A[i] = int R;
Iu32vec4 A[i] = unsigned int R;
Is32vec2 A[i] = int R;
Iu32vec2 A[i] = unsigned int R;
Is16vec8 A[i] = short R;
Iu16vec8 A[i] = unsigned short R;
Is16vec4 A[i] = short R;
Iu16vec4 A[i] = unsigned short R;
Is8vec16 A[i] = signed char R;
Iu8vec16 A[i] = unsigned char R;
Is8vec8 A[i] = signed char R;
Iu8vec8 A[i] = unsigned char R;
Aの要素iにRを代入します。DEBUGが有効になっているときにユーザがA以外の要素に何らかの値を代入しようとすると、診断メッセージが表示され、プログラムは途中で終了します。
対応する組込み関数: なし