ストリーミングSIMD拡張命令2の組込み関数のプロトタイプは、ヘッダ・ファイルemmintrin.h内にあります。
__m128d _mm_unpackhi_pd(__m128d a, __m128d b)
(UNPCKHPD を使用)a と b の上位の倍精度浮動小数点値をインターリーブ(交互に配置)します。
r0 := a1
r1 := b1
__m128d _mm_unpacklo_pd(__m128d a, __m128d b)
(UNPCKLPD を使用)a と b の下位の倍精度浮動小数点値をインターリーブします。
r0 := a0
1 := b0
int _mm_movemask_pd(__m128d a)
(MOVMSKPD を使用)a の2個の倍精度浮動小数点値の符号ビットから、2ビットマスクを作成します。
r := sign(a1) << 1 | sign(a0)
__m128d _mm_shuffle_pd(__m128d a, __m128d b, int i)
(SHUFPD を使用)マスク i に基づいて、a と b から2個の倍精度浮動小数点値を選択します。マスクは即値でなければなりません。シャッフルのセマンティクスについては、「シャッフルを行うマクロ関数」を参照してください。