You just add it to itself.
void myDoubleASM(float &num)
{
_asm {
mov eax, DWORD PTR[ebp + 8]
movss xmm0, DWORD PTR[eax]
addss xmm0, xmm0
movss DWORD PTR[eax], xmm0
}
}
I really need to brush up on my assembly, the moves are moving the pointers, but the add is operating on the values... probably