CMPccPS
Usage: CMPccPS dest,src,cmppred Modifies flags: None
Compares the two packed single-precision FP values in the 'src' and 'dest', and returns the result in the 'dest' register. The result of each comparison is a doubleword mask of all 1s (true) or all 0s (false).
Packed Single-Precision FP Compare
CMPEQPS CMPLTPS CMPLEPS CMPUNORDPS CMPNEQPS CMPNLTPS CMPNLEPS CMPORDPS
CMPPS xmm1,xmm2/mem128,imm8 ; 0F C2 /r ib [KATMAI,SSE]
CMPEQPS xmm1,xmm2/mem128 ; 0F C2 /r 00 [KATMAI,SSE]
CMPLTPS xmm1,xmm2/mem128 ; 0F C2 /r 01 [KATMAI,SSE]
CMPLEPS xmm1,xmm2/mem128 ; 0F C2 /r 02 [KATMAI,SSE]
CMPUNORDPS xmm1,xmm2/mem128 ; 0F C2 /r 03 [KATMAI,SSE]
CMPNEQPS xmm1,xmm2/mem128 ; 0F C2 /r 04 [KATMAI,SSE]
CMPNLTPS xmm1,xmm2/mem128 ; 0F C2 /r 05 [KATMAI,SSE]
CMPNLEPS xmm1,xmm2/mem128 ; 0F C2 /r 06 [KATMAI,SSE]
CMPORDPS xmm1,xmm2/mem128 ; 0F C2 /r 07 [KATMAI,SSE]
Performs an SIMD compare of the four packed single-precision floating-point values in the 'src' operand and the 'dest' operand and returns the results of the comparison to the 'dest' operand. The 'comparison predicate' operand (third operand) specifies the type of comparison performed on each of the pairs of packed values. The result of each comparison is a doubleword mask of all 1s (comparison true) or all 0s (comparison false). The 'comparison predicate' operand is an 8-bit immediate the first 3 bits of which define the type of comparison to be made bits 4 through 7 of the immediate are reserved.
The destination is an XMM register. The source can be either an XMM register or a 128-bit memory location.
The third operand is an 8-bit immediate value, of which the low 3 bits define the type of comparison. For ease of programming, the 8 two-operand pseudo-instructions are provided, with the third operand already filled in.
The Condition Predicates are:
EQ 0 Equal
LT 1 Less-than
LE 2 Less-than-or-equal
UNORD 3 Unordered
NE 4 Not-equal
NLT 5 Not-less-than
NLE 6 Not-less-than-or-equal
ORD 7 Ordered
For more details of the comparison predicates, and details of how to emulate the 'greater-than' equivalents, see SSE-cc
EXAMPLE:
cmpps xmm1 xmm2 7