float f=; __asm { mov esi, this ; vector u movups xmm0, [esi] ; first vector in xmm0 mulps xmm0, xmm0 ; mul with 2nd vector movaps xmm1, xmm0 ; copy result shufps xmm1, xmm1, 4Eh ; shuffle: f1,f0,f3,f2 addps xmm0, xmm1 ; add: f3+f1,f2+f0,f1+f3,f0+f2…