これらの組み込み関数は、複数の操作を 1 つの命令にパックします。混合は、条件付きでソース中の 1 つのフィールドを、デスティネーションの対応するフィールドにコピーします。
組み込み関数名 | 操作 | 対応する SSE4 命令 |
---|---|---|
マスク定数を使用して、2 つのソースから浮動小数点型単精度データを選択します。 |
BLENDPS | |
マスク定数を使用して、2 つのソースから浮動小数点型倍精度データを選択します。 |
BLENDPD | |
マスク変数を使用して、2 つのソースから浮動小数点型単精度データを選択します。 |
BLENDVPS | |
マスク変数を使用して、2 つのソースから浮動小数点型倍精度データを選択します。 |
BLENDVPD | |
マスク変数を使用して、2 つのソースから整数バイトを選択します。 |
PBLENDVB | |
マスク定数を使用して、2 つのソースから整数ワードを選択します。 |
PBLENDW |
__m128d _mm_blend_pd (__m128d v1, __m128d v2, const int mask)
__m128 _mm_blend_ps (__m128 v1, __m128 v2, const int mask)
__m128d _mm_blendv_pd (__m128d v1, __m128d v2, __m128d v3)
__m128 _mm_blendv_ps (__m128 v1, __m128 v2, __m128 v3)
__m128i _mm_blendv_epi8 (__m128i v1, __m128i v2, __m128i mask)
__m128i _mm_blend_epi16 (__m128i v1, __m128i v2, const int mask)