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

MOVUPS



Moves 128 bits of packed single-precision floating-point data from a source to a destination. This instruction does not require the memory addresses to be aligned on 16-byte boundaries.

The table below covers the supported sources and destinations.

source destination(s)
xmm reg xmm reg
m128 xmm reg
xmm reg m128

DO NOT support LOCK

This instruction is available in 64-bit mode and 32-bit mode. It requires the SSE extension to be supported by the processor.

Using MOVUPS on memory that is aligned to a 16-byte boundary may result in better performance on older microarchitectures, although modern processors minimize the performance penalty difference between MOVUPS and MOVAPS. Failure to use MOVUPS when data is unaligned will result in a general-protection exception (#GP).