MOVDDUP
Usage: MOVDDUP dest,src Modifies flags: None
Move 64 bits representing the lower DP data element from 'src' to 'dest'.
Move One Double-FP and Duplicate
MOVDDUP xmm1, xmm2/mem64 ; F2 0F 12 /r [Pent4]
The linear address corresponds to the address of the least-significant byte of the referenced memory data. When a memory address is indicated, the 8 bytes of data at memory location mem64 are loaded. When the register-register form of this operation is used, the lower half of the 128- bit source register is duplicated and copied into the 128-bit destination register.
If source = mem64 load instruction
xmm1[63-0] = mem64;
xmm1[127-64] = mem64
Or
move instruction
xmm1[63-0] = xmm2[63-0];
xmm1[127-64] = xmm2[63-0]
EXAMPLE:
movddup xmm1 xmm2