インテル® C++ コンパイラー 19.0 デベロッパー・ガイドおよびリファレンス
ここでは、インテル® MMX® テクノロジーの比較組込み関数について説明します。
これらの組込み関数を使用する場合、次のように immintrin.h ファイルをインクルードします。
#include <immintrin.h>
組込み関数名 |
演算 |
対応する インテル® MMX® 命令 |
---|---|---|
_mm_cmpeq_pi8 |
等しい |
PCMPEQB |
_mm_cmpeq_pi16 |
等しい |
PCMPEQW |
_mm_cmpeq_pi32 |
等しい |
PCMPEQD |
_mm_cmpgt_pi8 |
より大きい |
PCMPGTB |
_mm_cmpgt_pi16 |
より大きい |
PCMPGTW |
_mm_cmpgt_pi32 |
より大きい |
PCMPGTD |
__m64 _mm_ cmpeq_pi8(__m64 m1, __m64 m2);
m1 の各 8 ビット値が、それに対応する m2 の 8 ビット値に等しい場合は、それに対応する結果の 8 ビット値をすべて 1 に設定します。それ以外の場合は、すべて 0 に設定します。
__m64 _mm_ cmpeq_pi16(__m64 m1, __m64 m2);
m1 の各 16 ビット値が、それに対応する m2 の 16 ビット値に等しい場合は、それに対応する結果の 16 ビット値をすべて 1 に設定します。それ以外の場合は、すべて 0 に設定します。
__m64 _mm_ cmpeq_pi32(__m64 m1, __m64 m2);
m1 の各 32 ビット値が、それに対応する m2 の 32 ビット値に等しい場合は、それに対応する結果の 32 ビット値をすべて 1 に設定します。それ以外の場合は、すべて 0 に設定します。
__m64 _mm_ cmpgt_pi8(__m64 m1, __m64 m2);
m1 の各符号付き 8 ビット値が、それに対応する m2 の符号付き 8 ビット値に等しい場合は、それに対応する結果の符号付き 8 ビット値をすべて 1 に設定します。それ以外の場合は、すべて 0 に設定します。
__m64 _mm_ cmpgt_pi16(__m64 m1, __m64 m2);
m1 の各符号付き 16 ビット値が、それに対応する m2 の符号付き 16 ビット値に等しい場合は、それに対応する結果の符号付き 16 ビット値をすべて 1 に設定します。それ以外の場合は、すべて 0 に設定します。
__m64 _mm_ cmpgt_pi32(__m64 m1, __m64 m2);
m1 の各符号付き 32 ビット値が、それに対応する m2 の符号付き 32 ビット値に等しい場合は、それに対応する結果の符号付き 32 ビット値をすべて 1 に設定します。それ以外の場合は、すべて 0 に設定します。