HSUBPD
Usage: HSUBPD dest,src Modifies flags: None
Subtract horizontally packed DP FP numbers from 'src' to 'dest' stores the result in 'dest'.
Packed Double-FP Horizontal Subtract
HSUBPD xmm1,xmm2/mem128 ; 66 0F 7D /r [Pent4]
HSUBPD subtracts horizontally the packed DP FP numbers of both operands. Subtracts the double-precision floating-point value in the high quadword of the 'dest' operand from the low quadword of the 'dest' operand and stores the result in the low quad-word of the 'dest' operand. Subtracts the double-precision floating-point value in the high quadword of the 'src' operand from the low quadword of the 'src' operand and stores the result in the high quadword of the 'dest' operand.
When the source operand is a memory operand, it must be aligned on a 16-byte boundary or a general-protection exception (#GP) will be generated.
xmm1[63-0] = xmm1[63-0] - xmm1[127-64];
xmm1[127-64] = xmm2/m128[63-0] - xmm2/m128[127-64]
EXAMPLE:
hsubpd xmm1 xmm2