F-9
GUIDELINES FOR WRITING SIMD FLOATING-POINT EXCEPTION
Note: SNaN and QNaN operands raise an Invalid Operand fault
Note: SNaN | 0x00400000 is a quiet NaN obtained from the signaling NaN given as input
Table F-6. COMISS
Source Operands
Masked Result
Unmasked Result
SNaN op Opd2 (any Opd2)OF,SF,AF=000 ZF,PF,CF=111
None
Opd1 op SNaN (any Opd1)OF,SF,AF=000 ZF,PF,CF=111
None
QNaN op Opd2 (any Opd2)OF,SF,AF=000 ZF,PF,CF=111
None
Opd1 op QNaN (any Opd1)OF,SF,AF=000 ZF,PF,CF=111
None
Table F-7. UCOMISS
Source Operands
Masked Result
Unmasked Result
SNaN op Opd2 (any Opd2)OF,SF,AF=000 ZF,PF,CF=111
None
Opd1 op SNaN (any Opd1)OF,SF,AF=000 ZF,PF,CF=111
None
QNaN op Opd2
(any Opd2
?
SNaN)
OF,SF,AF=000 ZF,PF,CF=111OF,SF,AF=000 ZF,PF,CF=111
(not an exception)
Opd1 op QNaN
(any Opd1
?
SNaN)
OF,SF,AF=000 ZF,PF,CF=111OF,SF,AF=000 ZF,PF,CF=111
(not an exception)
Table F-8. CVTPS2PI, CVTSS2SI, CVTTPS2PI, CVTTSS2SI
Source Operand
Masked Result
Unmasked Result
SNaN
0x80000000 (Integer Indefinite)
None
QNaN
0x80000000 (Integer Indefinite)
None
Table F-9. MAXPS, MAXSS, MINPS, MINSS
Source Operands
Masked Result
Unmasked Result
Opd1 op NaN2 (any Opd1)
NaN2
None
NaN1 op Opd2 (any Opd2)
Opd2
None
Table F-10. SQRTPS, SQRTSS
Source Operand
Masked Result
Unmasked Result
QnaN
QNaN
QNaN (not an exception)
SNaN
SNaN | 0x00400000
None
Source operand is not SNaN, but
#I is signaled
(e.g. for sqrt (-1.0))Single-Precision QNaN Indefinite
None