PCMPGTB - Packed CoMPare Greater Than Byte
PCMPGTB xmm1, xmm2/m128 (S2
__m128i _mm_cmpgt_epi8(__m128i a, __m128i b)
For each signed BYTE, if (1) > (2) set 1, else set 0, to all bits in the corresponding BYTE of (3).
VPCMPGTB xmm1, xmm2, xmm3/m128 (V1
__m128i _mm_cmpgt_epi8(__m128i a, __m128i b)
For each signed BYTE, if (1) > (2) set 1, else set 0, to all bits in the corresponding BYTE of (3).
VPCMPGTB ymm1, ymm2, ymm3/m256 (V2
__m256i _mm256_cmpgt_epi8(__m256i a, __m256i b)
For each signed BYTE, if (1) > (2) set 1, else set 0, to all bits in the corresponding BYTE of (3).
VPCMPGTB k1{k2}, xmm2, xmm3/m128 (V5+BW+VL
__mmask16 _mm_cmpgt_epi8_mask(__m128i a, __m128i b)
__mmask16 _mm_mask_cmpgt_epi8_mask(__mmask16 k2, __m128i a, __m128i b)
For each signed BYTE, if (1) > (2) set 1, else set 0, to the corresponding bit of (3).
If k2 bit is 0, the comparison is not done and the corresponding bit of (3) is set to zero. Upper bits of (3) are zero cleared.
VPCMPGTB k1{k2}, ymm2, ymm3/m256 (V5+BW+VL
__mmask32 _mm256_cmpgt_epi8_mask(__m256i a, __m256i b)
__mmask32 _mm256_mask_cmpgt_epi8_mask(__mmask32 k2, __m256i a, __m256i b)
For each signed BYTE, if (1) > (2) set 1, else set 0, to the corresponding bit of (3).
If k2 bit is 0, the comparison is not done and the corresponding bit of (3) is set to zero. Upper bits of (3) are zero cleared.
VPCMPGTB k1{k2}, zmm2, zmm3/m512 (V5+BW
__mmask64 _mm512_cmpgt_epi8_mask(__m512i a, __m512i b)
__mmask64 _mm512_mask_cmpgt_epi8_mask(__mmask64 k2, __m512i a, __m512i b)
For each signed BYTE, if (1) > (2) set 1, else set 0, to the corresponding bit of (3).
If k2 bit is 0, the comparison is not done and the corresponding bit of (3) is set to zero. Upper bits of (3) are zero cleared.
x86/x64 SIMD Instruction List
Feedback