These Intel® Streaming SIMD Extensions (Intel® SSE4) intrinsics extend the capabilities of Intel architecture by adding performance-optimized, low-latency, lower power fixed-function accelerators on the processor die to benefit specific applications.
The prototypes for application targeted accelerator intrinsics are in the file nmmintrin.h.
Intrinsic Syntax |
Operation |
Corresponding |
---|---|---|
int _mm_popcnt_u32(unsigned int v) |
Counts number of set bits in a data operation |
POPCNT |
int _mm_popcnt_u64(unsigned __int64 v) |
Counts number of set bits in a data operation |
POPCNT |
unsigned int _mm_crc32_u8(unsigned int crc, unsigned char v) |
Accumulates cyclic redundancy check |
CRC32 |
unsigned int _mm_crc32_u16(unsigned int crc, unsigned short v) |
Performs cyclic redundancy check |
CRC32 |
unsigned int _mm_crc32_u32(unsigned int crc, unsigned int v) |
Performs cyclic redundancy check |
CRC32 |
unsigned __int64 _mm_crc32_u64(unsigned __int64 crc, unsigned __int64 v) |
Performs cyclic redundancy check |
CRC32 |
unsigned int _mm_crc32_u8 (unsigned int crc, unsigned char v);
Starting with an initial value in the first operand, accumulates a CRC32 value for the second operand and stores the result in the destination operand. Accumulates CRC32 on r/m8.
unsigned int _mm_crc32_u16(unsigned int crc, unsigned short v);
Starting with an initial value in the first operand, accumulates a CRC32 value for the second operand and stores the result in the destination operand. Accumulates CRC32 on r/m16.
unsigned int _mm_crc32_u32(unsigned int crc, unsigned int v);
Starting with an initial value in the first operand, accumulates a CRC32 value for the second operand and stores the result in the destination operand. Accumulates CRC32 on r/m32.
unsigned __int64 _mm_crc32_u64(unsigned __int64 crc, unsigned __int64 v);
Starting with an initial value in the first operand, accumulates a CRC32 value for the second operand and stores the result in the destination operand. Accumulates CRC32 on r/m64.