asm/reference

This content has not been validated; it was AI-generated following the x86-64 ISA Documentation generation process to maintain high quality. However, as no human has verified this data, errors may exist. If the accuracy of this data is critical, please consult the Intel SDM. The model used to generate this is gemma4:31b

FADD



Adds a floating-point value to the contents of a floating-point register (ST(0)) or two floating-point values. The result is stored in the destination operand.

The following table covers what the source and destinations can be.

source destination(s)
reg reg
mN reg
imm #I

DO NOT support LOCK

FADD is available in 64-bit mode, but it operates on the x87 FPU stack. This instruction requires the use of the x87 floating-point unit and is not available for use with XMM/YMM/ZMM registers.

The operation SHALL result in the following floating-point exceptions:

The user MUST ensure the FPU stack is not empty or overflowed, as this instruction pops one operand from the stack unless the form FADD ST(0), ST(i) is used. If the memory operand is not naturally aligned, it MAY cause a performance penalty.