Application Targeted Accelerators Intrinsics

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.

Intrinsics marked with * are implemented only on Intel® 64 architectures. The rest of the intrinsics are implemented on both IA-32 and Intel® 64 architectures.

Intrinsic Name

Operation

Corresponding
Intel® SSE4 Instruction

_mm_popcnt_u32

Counts number of set bits in a data operation

POPCNT

_mm_popcnt_u64*

Counts number of set bits in a data operation

POPCNT

_mm_crc32_u8

Accumulates cyclic redundancy check

CRC32

_mm_crc32_u16

Performs cyclic redundancy check

CRC32

_mm_crc32_u32

Performs cyclic redundancy check

CRC32

_mm_crc32_u64*

Performs cyclic redundancy check

CRC32

unsigned int _mm_popcnt_u32(unsigned int v);

Counts the number of set bits in a data operation.

__int64 _mm_popcnt_u64(unsigned __int64 v)

Counts the number of set bits in a data operation. Use only on Intel® 64 architectures.

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. Use only on Intel® 64 architectures.


Submit feedback on this help topic

Copyright © 1996-2011, Intel Corporation. All rights reserved.