MMX® テクノロジーのシフト組み込み関数のプロトタイプは、ヘッダーファイル mmintrin.h 内にあります。
|
組み込み関数名 |
演算子 |
対応する |
|---|---|---|
|
_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 は定数にしてください。