Logical Operations for Streaming SIMD Extensions

Intrinsic Name Operation Corresponding Instruction

_mm_and_ps

Bitwise AND

ANDPS

_mm_andnot_ps

Logical NOT

ANDNPS

_mm_or_ps

Bitwise OR

ORPS

_mm_xor_ps

Bitwise Exclusive OR

XORPS

 

__m128 _mm_and_ps(__m128 a, __m128 b )

Computes the bitwise And of the four SP FP values of a and b.

r0 := a0 & b0

r1 := a1 & b1

r2 := a2 & b2

r3 := a3 & b3

 

__m128 _mm_andnot_ps(__m128 a, __m128 b )

Computes the bitwise AND-NOT of the four SP FP values of
a
and b.

r0 := ~a0 & b0

r1 := ~a1 & b1

r2 := ~a2 & b2

r3 := ~a3 & b3

 

__m128 _mm_or_ps(__m128 a, __m128 b )

Computes the bitwise OR of the four SP FP values of a and b.

r0 := a0 | b0

r1 := a1 | b1

r2 := a2 | b2

r3 := a3 | b3

 

__m128 _mm_xor_ps(__m128 a, __m128 b )

Computes bitwise XOR (exclusive-or) of the four SP FP values of a and b.

r0 := a0 ^ b0

r1 := a1 ^ b1

r2 := a2 ^ b2

r3 := a3 ^ b3