Intel 64 and IA-32 Architectures Software Developers Manual Volume 2B, Instruction Set Reference, N-Z

4-382 Vol. 2B
INSTRUCTION SET REFERENCE, N-Z
UNPCKHPD—Unpack and Interleave High Packed Double-Precision
Floating-Point Values
Description
Performs an interleaved unpack of the high double-precision floating-point values
from the source operand (second operand) and the destination operand (first
operand). See Figure 4-15. The source operand can be an XMM register or a 128-bit
memory location; the destination operand is an XMM register.
When unpacking from a memory operand, an implementation may fetch only the
appropriate 64 bits; however, alignment to 16-byte boundary and normal segment
checking will still be enforced.
In 64-bit mode, using a REX prefix in the form of REX.R permits this instruction to
access additional registers (XMM8-XMM15).
Operation
DEST[63:0] DEST[127:64];
DEST[127:64] SRC[127:64];
Opcode Instruction
64-Bit
Mode
Compat/
Leg Mode Description
66 0F 15 /r UNPCKHPD xmm1,
xmm2/m128
Valid Valid Unpacks and Interleaves double-
precision floating-point values
from high quadwords of xmm1
and xmm2/m128.
Figure 4-15. UNPCKHPD Instruction High Unpack and Interleave Operation
X1
X0
Y1 Y0
Y1
X1
DEST
SRC
DEST