_mm256_testz_ps、_mm_testz_ps

 

2 つの 256 ビットまたは 128 ビットの float32 ベクトルのパックド・ビット・テストを実行して、ZF フラグを設定します。 対応するインテル® AVX 命令は VTESTPS です。

構文

extern __m256 __cdecl _mm256_testz_pz(__m256 s1, __m256 s2);

extern __m256 __cdecl _mm_testz_pz(__m256 s1, __m256 s2);

引数

s1

1 つめの float32 ソースベクトル

s2

2 つめの float32 ソースベクトル

説明

ZF フラグを設定します。ZF フラグは、1 つめのソースベクトルと 2 つめのソースベクトルのビット単位の AND (論理積) 演算の結果に基づいて設定されます。対応する VTESTPS 命令は、すべての結果ビットが 0 の場合に ZF フラグを設定します。結果ビットが非ゼロの場合は、ZF フラグをクリアします。

_mm_testz_ps 組み込み関数は、128 ビットの float32 ソースベクトルの結果に応じて ZF フラグを設定します。_m256_testz_ps 組み込み関数は、256 ビットの float32 ソースベクトルの結果に応じて ZF フラグを設定します。

 

Note icon

インテル® AVX 命令には、128 ビットの SIMD 命令の機能がすべて含まれています。128 ビットのベクトル長を持つインテル® AVX 命令は、YMM レジスターの上位 128 ビットを 0 に設定します。YMM レジスターの下位ビットは、対応する SIMD XMM レジスターにエイリアスされます。


戻り値

ZF フラグが設定されている場合は非ゼロ

ZF フラグが設定されていない場合は 0