Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Microsoft Specific
The following four logical operation intrinsics and their respective instructions are functional on Intel processors that support Streaming SIMD Extensions 2 (SSE2) instructions.
For an explanation of the syntax used in code samples in this topic, see Floating-Point Intrinsics Using Streaming SIMD Extensions.
SSE2 intrinsics use the __m128, __m128i, and __m128d data types, which are not supported on Itanium Processor Family (IPF) processors. Any SSE2 intrinsics that use the __m64 data type are not supported on x64 processors.
The emmintrin.h header file contains the declarations for the SSE2 instructions intrinsics.
__m128i _mm_and_si128 (__m128i a, __m128i b);
PAND
Computes the bitwise AND of the 128-bit value in a and the 128-bit value in b.
r := a & b
__m128i _mm_andnot_si128 (__m128i a, __m128i b);
PANDN
Computes the bitwise AND of the 128-bit value in b and the bitwise NOT of the 128-bit value in a.
r := (~a) & b
__m128i _mm_or_si128 (__m128i a, __m128i b);
POR
Computes the bitwise OR of the 128-bit value in a and the 128-bit value in b.
r := a | b
__m128i _mm_xor_si128 ( __m128i a, __m128i b);
PXOR
Computes the bitwise XOR of the 128-bit value in a and the 128-bit value in b.
r := a ^ b