インテル® C++ コンパイラー 18.0 デベロッパー・ガイドおよびリファレンス

シャッフル操作を行うマクロ関数

インテル® ストリーミング SIMD 拡張命令 (インテル® SSE) には、シャッフル操作を記述する定数を生成するマクロ関数を用意しています。このマクロは、4 つの小さな整数 (0~3 の範囲) を組み合わせて、SHUFPS 命令が使用する 8 ビット即値を生成します。

シャッフル関数のマクロ



4 つの整数は、第 1 入力オペランドと第 2 入力オペランドからそれぞれどの 2 ワードを取り出して結果のワードに入れるかを選択するセレクターとして機能します。

シャッフル関数のマクロの元のワードと結果のワード