float64 値を 256 ビットまたは 128 ビットのデスティネーション・ベクトルに並べ替えます。対応するインテル® AVX 命令は VPERMILPD です。
構文
extern __m256d _mm256_permutevar_pd(__m256d m1, __m256i control); |
extern __m128d _mm_permutevar_pd(__m128d m1, __m128i control);
|
引数
m1 |
256 ビットまたは 128 ビットの float64 ソースベクトル
|
control |
ソースベクトルの各要素に対応する数の 1 ビットの制御フィールドを持つベクトル。
- 256 ビットの m1 ベクトルでは、control ベクトルには即値の下位 4 ビットに 1 ビットの制御フィールドが 4 つ含まれています。
- 128 ビットの m1 ベクトルでは、control ベクトルには即値の下位 2 ビットに 1 ビットの制御フィールドが 2 つ含まれています。
|
説明
シャッフル制御の対応する要素の下位バイトにある 1 ビットの制御フィールドに応じて、ソースベクトル m1 の倍精度浮動小数点値を並べ替えます。結果はデスティネーション・ベクトルに格納されます。
戻り値
256 ビットまたは 128 ビットの値が並べ替えられた float64 ベクトル。