VCMPTRUEPS - CoMPare TRUE Packed Single

VCMPTRUEPS xmm1, xmm2, xmm3/m128    (V1
__m128 _mm_cmp_ps(__m128 a, __m128 b, _CMP_TRUE_UQ)

常に全ビット1を③の対応するfloatにセット
VCMPTRUEPS ymm1, ymm2, ymm3/m256    (V1
__m256 _mm256_cmp_ps(__m256 a, __m256 b, _CMP_TRUE_UQ)

常に全ビット1を③の対応するfloatにセット
VCMPTRUEPS k1{k2}, xmm2, xmm3/m128/m32bcst    (V5+VL
__mmask8 _mm_cmp_ps_mask(__m128 a, __m128 b, _CMP_TRUE_UQ)
__mmask8 _mm_mask_cmp_ps_mask(__mmask8 k2, __m128 a, __m128 b, _CMP_TRUE_UQ)

常に1を③の対応するビットにセット
k2のビットが0の要素は比較されず③の対応するビットは0になる。③の上位ビットは0クリアされる。
VCMPTRUEPS k1{k2}, ymm2, ymm3/m256/m32bcst    (V5+VL
__mmask8 _mm256_cmp_ps_mask(__m256 a, __m256 b, _CMP_TRUE_UQ)
__mmask8 _mm256_mask_cmp_ps_mask(__mmask8 k2, __m256 a, __m256 b, _CMP_TRUE_UQ)

常に1を③の対応するビットにセット
k2のビットが0の要素は比較されず③の対応するビットは0になる。③の上位ビットは0クリアされる。
VCMPTRUEPS k1{k2}, zmm2, zmm3/m512/m32bcst{sae}    (V5
__mmask16 _mm512_cmp_ps_mask(__m512 a, __m512 b, _CMP_TRUE_UQ)
__mmask16 _mm512_mask_cmp_ps_mask(__mmask16 k2, __m512 a, __m512 b, _CMP_TRUE_UQ)
__mmask16 _mm512_cmp_round_ps_mask(__m512 a, __m512 b, _CMP_TRUE_UQ, int sae)
__mmask16 _mm512_mask_cmp_round_ps_mask(__mmask16 k2, __m512 a, __m512 b, _CMP_TRUE_UQ, int sae)

常に1を③の対応するビットにセット
k2のビットが0の要素は比較されず③の対応するビットは0になる。③の上位ビットは0クリアされる。
この命令は:
Unordered - ソースオペランドのどちらかまたは両方がNaNのとき条件成立とみなす
Quiet - QNaNで例外発生しない
VCMPPS命令で記述する場合のimm8値=0Fh

x86/x64 SIMD命令一覧表  フィードバック