これらの組み込み命令は、パックド整数の 128 ビット比較を行います。
組み込み関数名 |
演算子 |
対応する |
---|---|---|
_mm_testc_si128 |
128 ビット値の指定ビットの 1 をすべて確認する |
PTEST |
_mm_testz_si128 |
128 ビット値の指定ビットの 0 をすべて確認する |
PTEST |
_mm_testnzc_si128 |
128 ビット値の指定ビットの少なくとも 1 つの 0 と 1 を確認する |
PTEST |
int _mm_testz_si128 (__m128i s1, __m128i s2)
s1 と s2 の AND ビット演算の結果値がすべて 0 になる場合に 1 を返し、そうでない場合は 0 を返します。
int _mm_testc_si128 (__m128i s1, __m128i s2)
s1 の ANDNOT ビット演算の結果値と s2 の AND ビット演算の結果値がすべて 1 になる場合に 1 を返し、そうでない場合は 0 を返します。
int _mm_testnzc_si128 (__m128i s1, __m128i s2)
(!_mm_testz) && (!_mm_testc) と同じです。