MMX(R) テクノロジーの組み込み関数のプロトタイプは、ヘッダーファイル mmintrin.h 内にあります。
次の表の組み込み関数名をクリックすると、その組み込み関数の詳細が表示されます。
組み込み関数名 | 操作 | 対応する MMX 命令 |
---|---|---|
_mm_sll_pi16 | 論理左シフト | PSLLW |
_mm_slli_pi16 | 論理左シフト | PSLLWI |
_mm_sll_pi32 | 論理左シフト | PSLLD |
_mm_slli_pi32 | 論理左シフト | PSLLDI |
_mm_sll_pi64 | 論理左シフト | PSLLQ |
_mm_slli_pi64 | 論理左シフト | PSLLQI |
_mm_sra_pi16 | 算術右シフト | PSRAW |
_mm_srai_pi16 | 算術右シフト | PSRAWI |
_mm_sra_pi32 | 算術右シフト | PSRAD |
_mm_srai_pi32 | 算術右シフト | PSRADI |
_mm_srl_pi16 | 論理右シフト | PSRLW |
_mm_srli_pi16 | 論理右シフト | PSRLWI |
_mm_srl_pi32 | 論理右シフト | PSRLD |
_mm_srli_pi32 | 論理右シフト | PSRLDI |
_mm_srl_pi64 | 論理右シフト | PSRLQ |
_mm_srli_pi64 | 論理右シフト | PSRLQI |
__m64 _mm_sll_pi16(__m64 m, __m64 count)
m の 4 つの 16 ビット値を、count で指定した値だけ左にシフトし、下位ビットを 0 で埋めます。
__m64 _mm_slli_pi16(__m64 m, int count)
m の 4 つの 16 ビット値を、count で指定した値だけ左にシフトし、下位ビットを 0 で埋めます。パフォーマンス上の理由で、count は定数にしてください。
__m64 _mm_sll_pi32(__m64 m, __m64 count)
m の 2 つの 32 ビット値を、count で指定した値だけ左にシフトし、下位ビットを 0 で埋めます。
__m64 _mm_slli_pi32(__m64 m, int count)
m の 2 つの 32 ビット値を、count で指定した値だけ左にシフトし、下位ビットを 0 で埋めます。パフォーマンス上の理由で、count は定数にしてください。
__m64 _mm_sll_pi64(__m64 m, __m64 count)
m の 64 ビット値を、count で指定した値だけ左にシフトし、下位ビットを 0 で埋めます。
__m64 _mm_slli_pi64(__m64 m, int count)
m の 64 ビット値を、count で指定した値だけ左にシフトし、下位ビットを 0 で埋めます。パフォーマンス上の理由で、count は定数にしてください。
__m64 _mm_sra_pi16(__m64 m, __m64 count)
m の 4 つの 16 ビット値を、count で指定した値だけ右にシフトし、上位ビットを符号ビットで埋めます。
__m64 _mm_srai_pi16(__m64 m, int count)
m の 4 つの 16 ビット値を、count で指定した値だけ右にシフトし、上位ビットを符号ビットで埋めます。パフォーマンス上の理由で、count は定数にしてください。
__m64 _mm_sra_pi32(__m64 m, __m64 count)
m の 2 つの 32 ビット値を、count で指定した値だけ右にシフトし、上位ビットを符号ビットで埋めます。
__m64 _mm_srai_pi32(__m64 m, int count)
m の 2 つの 32 ビット値を、count で指定した値だけ右にシフトし、上位ビットを符号ビットで埋めます。パフォーマンス上の理由で、count は定数にしてください。
__m64 _mm_srl_pi16(__m64 m, __m64 count)
m の 4 つの 16 ビット値を、count で指定した値だけ右にシフトし、上位ビットを 0 で埋めます。
__m64 _mm_srli_pi16(__m64 m, int count)
m の 4 つの 16 ビット値を、count で指定した値だけ右にシフトし、上位ビットを 0 で埋めます。パフォーマンス上の理由で、count は定数にしてください。
__m64 _mm_srl_pi32(__m64 m, __m64 count)
m の 2 つの 32 ビット値を、count で指定した値だけ右にシフトし、上位ビットを 0 で埋めます。
__m64 _mm_srli_pi32(__m64 m, int count)
m の 2 つの 32 ビット値を、count で指定した値だけ右にシフトし、上位ビットを 0 で埋めます。パフォーマンス上の理由で、count は定数にしてください。
__m64 _mm_srl_pi64(__m64 m, __m64 count)
m の 64 ビット値を、count で指定した値だけ右にシフトし、上位ビットを 0 で埋めます。
__m64 _mm_srli_pi64(__m64 m, int count)
m の 64 ビット値を、count で指定した値だけ右にシフトし、上位ビットを 0 で埋めます。パフォーマンス上の理由で、count は定数にしてください。