Someone
public text v1 · immutable __asm
{
movd mm0, x // mm0 = (x, ?)
pfrsqrt mm1, mm0 // mm1 = (~1 / sqrt(x), ?)
movq mm2, mm1 // mm2 = mm1
pfmul mm1, mm1 // mm1 = mm1 * mm1
pfrsqit1 mm1, mm0 // first iteration of Newton-Rhapson
pfrcpit2 mm1, mm2 // second iteration
punpckldq mm1, mm1 // mm1 = (1 / sqrt(x), ?)
pfmul mm0, mm1 // mm0 = (sqrt(x), ?)
movd y, mm0 // store result
femms // clear MMX state
}