Intel 64 and IA-32 Architectures Software Developers Manual Volume 1, Basic Architecture

8-8 Vol. 1
PROGRAMMING WITH THE X87 FPU
Table 8-1. Condition Code Interpretation
Instruction C0 C3 C2 C1
FCOM, FCOMP, FCOMPP,
FICOM, FICOMP, FTST,
FUCOM, FUCOMP, FUCOMPP
Result of Comparison Operands
are not
Comparable
0 or #IS
FCOMI, FCOMIP, FUCOMI,
FUCOMIP
Undefined. (These instructions set the
status flags in the EFLAGS register.)
#IS
FXAM Operand class Sign
FPREM, FPREM1 Q2 Q1 0 = reduction
complete
1 = reduction
incomplete
Q0 or #IS
F2XM1, FADD, FADDP,
FBSTP, FCMOVcc, FIADD,
FDIV, FDIVP, FDIVR, FDIVRP,
FIDIV, FIDIVR, FIMUL, FIST,
FISTP, FISUB, FISUBR,FMUL,
FMULP, FPATAN, FRNDINT,
FSCALE, FST, FSTP, FSUB,
FSUBP, FSUBR,
FSUBRP,FSQRT, FYL2X,
FYL2XP1
Undefined Roundup or #IS
FCOS, FSIN, FSINCOS,
FPTAN
Undefined 0 = source
operand
within range
1 = source
operand out
of range
Roundup or #IS
(Undefined if
C2 = 1)
FABS, FBLD, FCHS,
FDECSTP, FILD, FINCSTP,
FLD, Load Constants, FSTP
(ext. prec.), FXCH, FXTRACT
Undefined 0 or #IS
FLDENV, FRSTOR Each bit loaded from memory
FFREE, FLDCW,
FCLEX/FNCLEX, FNOP,
FSTCW/FNSTCW,
FSTENV/FNSTENV,
FSTSW/FNSTSW,
Undefined
FINIT/FNINIT,
FSAVE/FNSAVE
0000