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

パック演算子

符号付き飽和処理を使用して AB に含まれている 8 つの 32 ビット値を 8 つの 16 ビット値にパックします。

Is16vec8 pack_sat(Is32vec2 A,Is32vec2 B);
対応する組込み関数: _mm_packs_epi32

符号付き飽和処理を使用して AB に含まれている 4 つの 32 ビット値を 8 つの 16 ビット値にパックします。

Is16vec4 pack_sat(Is32vec2 A,Is32vec2 B);
対応する組込み関数: _mm_packs_pi32

符号付き飽和処理を使用して AB に含まれている 16 の 16 ビット値を 16 の 8 ビット値にパックします。

Is8vec16 pack_sat(Is16vec4 A,Is16vec4 B);
対応する組込み関数: _mm_packs_epi16

符号付き飽和処理を使用して AB に含まれている 8 つの 16 ビット値を 8 つの 8 ビット値にパックします。

Is8vec8 pack_sat(Is16vec4 A,Is16vec4 B);
対応する組込み関数: _mm_packs_pi16

符号なし飽和処理を使用して AB に含まれている 16 の 16 ビット値を 16 の 8 ビット値にパックします。

Iu8vec16 packu_sat(Is16vec4 A,Is16vec4 B);
対応する組込み関数: _mm_packus_epi16

符号なし飽和処理を使用して AB に含まれている 8 つの 16 ビット値を 8 つの 8 ビット値にパックします。

Iu8vec8 packu_sat(Is16vec4 A,Is16vec4 B);
対応する組込み関数: _mm_packs_pu16