Intel ITANIUM ARCHITECTURE - SOFTWARE DEVELOPERS MANUAL VOLUME 1 REV 2.3 Manual page 1795

Hide thumbs Also See for ITANIUM ARCHITECTURE - SOFTWARE DEVELOPERS MANUAL VOLUME 1 REV 2.3:
Table of Contents

Advertisement

CMPSS: Scalar Single-FP Compare
Opcode
F3,0F,C2,/r,ib CMPSS xmm1, xmm2/m32,
Operation:
switch (imm8) {
case eq:
case lt:
case le:
case unord:
case neq:
case nlt:
case nle:
case ord:
default:
}
cmp0 = op(xmm1[31-0],xmm2/m32[31-0]);
xmm1[31-0]
xmm1[63-32]
xmm1[95-64]
xmm1[127-96]
For the lowest pair of SP FP numbers, the CMPSS instruction returns an all "1" 32-bit
Description:
mask or an all "0" 32-bit mask, using the comparison predicate specified by imm8; the
values for the upper three pairs of SP FP numbers are not compared. Note that a
subsequent computational instruction which uses this mask as an input operand will not
generate a fault, since a mask of all "0's" corresponds to a FP value of +0.0 and a mask
of all "1's" corresponds to a FP value of -qNaN. Some of the comparisons can be
achieved only through software emulation. For these comparisons the programmer
must swap the operands, copying registers when necessary to protect the data that will
now be in the destination, and then perform the compare using a different predicate.
The predicate to be used for these emulations is listed in under the heading
"Emulation." The following table shows the different comparison types:
Volume 4: IA-32 SSE Instruction Reference
Instruction
imm8
op = eq;
op = lt;
op = le;
op = unord;
op = neq;
op = nlt;
op = nle;
op = ord;
Reserved;
= (cmp0) ? 0xffffffff : 0x00000000;
= xmm1[63-32];
= xmm1[95-64];
= xmm1[127-96];
Description
Compare lowest SP FP number from XMM2/Mem to lowest
SP FP number in XMM1 register using imm8 as predicate.
4:493

Advertisement

Table of Contents
loading

This manual is also suitable for:

Itanium architecture 2.3

Table of Contents