_mm256_blendv_ps

 

float32 ベクトルの条件付き混合または条件付きマージを実行します。対応するインテル® AVX 命令は VBLENDVPS です。

構文

extern __m256 __cdecl _mm256_blendv_ps(__m256 m1, __m256 m2, __m256 mask);

引数

m1

演算に使用する 1 つめの float32 ベクトル

m2

演算に使用する 2 つめの float32 ベクトル

mask

演算に使用するマスク付きの float32 ベクトル。要素の最上位ビットが “1” の場合は、2 つめのソースベクトルの対応する要素が結果にコピーされ、“0” の場合は、1 つめのソースベクトルの対応する要素が結果にコピーされます。

説明

mask パラメーターの最上位ビットに応じて、2 つのベクトルの 8 つのパックド単精度浮動小数点要素 (float32 要素) の条件付きマージを実行します。

mask パラメーターは、演算のマスクを定義します。mask の対応する単精度浮動小数点要素の最上位ビットは、対応する結果ベクトルの単精度浮動小数点要素を 1 つめのソースと 2 つめのソースのどちらからコピーするのかを指定します。

mask のビットが “1” の場合、2 つめのソースベクトルの対応する要素が結果ベクトルにコピーされます。ビットが “0” の場合、1 つめのソースベクトルの対応する要素が結果ベクトルにコピーされます。つまり、この関数を使用すると、2 つのソースベクトルの要素をマージまたは混合できます。

戻り値

混合操作の結果