F-11
GUIDELINES FOR WRITING SIMD FLOATING-POINT EXCEPTION
Note 1. rnd signifies the user rounding mode from MXCSR, and rz signifies the rounding mode toward zero
(truncate), when rounding a floating-point value to an integer. For more information, refer to Table 9-3 in
Section 9.1.8., Rounding Control Field, of Chapter 9, Programming with the Streaming SIMD Exten-
sions.
Note 2. For NAN encodings, see Table 9-2, Chapter 9, Programming with the Streaming SIMD Extensions.
SQRTPS
src = SNaN
Refer to Table F-10 for NaN
operands, #IA=1
src unchanged,
#IA=1
SQRTSS src < 0
(note that -0 < 0 is false)
res = QNaN Indefinite,
#IA=1
MAXPS
MAXSS
src1 = NaN or src2 = NaN
res = src2, #IA=1
src1, src2
unchanged, #IA=1
MINP
MINSS
src1 = NaN or src2 = NaN
res = src2, #IA=1
src1, src2
unchanged, #IA=1
CMPPS.LT
CMPPS.LE
CMPPS.NLT
CMPPS.NLE
CMPSS.LT
CMPSS.LE
CMPSS.NLT
CMPSS.NLE
src1 = NaN or src2 = NaN
Refer to Table F-4 and
Table F-5 for NaN
operands, #IA=1
src1, src2
unchanged, #IA=1
COMISS src1 = NaN or src2 = NaN
Refer to Table F-6 for NaN
operands
src1, src2, EFLAGS
unchanged,#IA=1
UCOMISS src1 = SNaN or src2 = SNaNRefer to Table F-7 for NaN
operands
src1, src2, EFLAGS
unchanged,#IA=1
CVTPS2PI
CVTSS2SI
src = NaN, ±Inf,
|(src)
rnd
| > 0x7fffffff
res = Integer Indefinite
#IA=1
src unchanged,
#IA=1
CVTTPS2PI
CVTTSS2SI
src = NaN, ±Inf,
|(src)
rz
| > 0x7fffffff
res = Integer Indefinite
#IA=1
src unchanged,
#IA=1
Table F-12. #Z - Divide-by-Zero
Instruction
Condition
Masked Response
Unmasked
Response and
Exception Code
DIVPS
DIVSS
src1 = finite non-zero (normal, or
denormal)
src2 = ±0
res = ±Inf
#ZE=1
src1, src2
unchanged, #ZE=1
Table F-11. #I - Invalid Operations
Instruction
Condition
Masked Response
Unmasked
Response and
Exception Code