インテル® C++ コンパイラー 18.0 デベロッパー・ガイドおよびリファレンス
float64 ベクトルの条件付き混合または条件付きマージを実行します。対応するインテル® AVX 命令は VBLENDVPD です。
extern __m256d _mm256_blendv_pd(__m256d m1, __m256d m2, __m256d mask); |
m1 |
演算に使用する float64 ベクトル |
m2 |
演算に使用する float64 ベクトル |
mask |
演算に使用するマスク付きの float64 ベクトル |
mask 引数要素の最上位ビットに応じて、2 つのベクトルの 4 つのパックド倍精度浮動小数点要素 (float64 要素) の条件付きマージを実行します。
mask 引数は、演算のマスクを定義します。mask の対応する倍精度浮動小数点要素の最上位ビットは、対応する結果ベクトルの倍精度浮動小数点要素を 1 つ目のソースと 2 つ目のソースのどちらからコピーするのかを指定します。
mask のビットが "1" の場合、2 つ目のソースベクトルから結果ベクトルに対応する要素がコピーされます。ビットが "0" の場合、1 つ目のソースベクトルから結果ベクトルに対応する要素がコピーされます。つまり、この関数を使用すると、2 つのソースベクトルの要素をマージまたは混合できます。
混合操作の結果。