SHUFPD
Usage: SHUFPD dest,src,select Modifies flags: None
Moves either of the two packed double-precision floating-point values from 'dest' into the low quadword of the 'dest' operand; moves either of the two packed double-precision floating-point values from the 'src' operand into to the high quadword of the 'dest' operand. The 'select' operand determines which values are moved to the 'dest'.
Shuffle Packed Double-Precision FP Values
SHUFPD xmm1,xmm2/m128,imm8 ; 66 0F C6 /r ib [WILLAMETTE,SSE2]
SHUFPD moves one of the packed double-precision FP values from the destination operand into the low quadword of the destination operand; the upper quadword is generated by moving one of the double-precision FP values from the source operand into the destination. The select (third) operand selects which of the values are moved to the destination register.
The select operand is an 8-bit immediate: bit 0 selects which value is moved from the destination operand to the result (where 0 selects the low quadword and 1 selects the high quadword) and bit 1 selects which value is moved from the source operand to the result. Bits 2 through 7 of the shuffle operand are reserved.
EXAMPLE:
shufpd xmm1 Label 1