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

VFMADD213SS



Computes the product of two scalar single-precision floating-point values and adds the result to a third scalar single-precision floating-point value. The operation is performed as $f32 = (f32 \times f32) + f32$ with a single rounding step at the end.

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

source destination(s)
xmm reg, xmm reg, xmm reg xmm reg
xmm reg, xmm reg, m4 xmm reg
xmm reg, m4, xmm reg xmm reg
m4, xmm reg, xmm reg xmm reg

DO NOT support LOCK

This instruction SHALL be used in 64-bit mode or 32-bit mode. It is NOT available in compatibility mode if the processor does not support the FMA3 extension. It requires the VEX prefix.

The destination register SHALL NOT be the same as the first source operand (the addend) to avoid destructive updates, although VFMADD213SS is specifically designed as a non-destructive form where the destination can be any of the three operands. Ensure the MXCSR register is configured correctly for rounding mode and exception masking, as this instruction triggers #P, #O, #U, #D, or #I based on the result and inputs.