How do I convert this code into inline assembly?
void tom::Transform(void* btr)
{
short* block =(short*)btr;
__declspec(align(8)) __m64*block1 = (__m64*)block;
int j;
if(_mode != QuantOnly) {
__m64 s0,s1,s2,s3,f0,f1,f2,f3,temp4,temp5,temp6,temp7;
j=0;
temp4 = _mm_unpacklo_pi16(block1[j],block1[j+1]);
temp5 = _mm_unpacklo_pi16(block1[j+2],block1[j+3]);
temp6 = _mm_unpackhi_pi16(block1[j],block1[j+1]);
temp7 = _mm_unpackhi_pi16(block1[j+2],block1[j+3]);
f0 = _mm_unpacklo_pi32(temp4,temp5);
f2 = _mm_unpacklo_pi32(temp6,temp7);
f1 = _mm_unpackhi_pi32(temp4,temp5);
f3 = _mm_unpackhi_pi32(temp6,temp7);
s0 =_mm_add_pi16(f0,f3);
s3 =_mm_sub_pi16(f0,f3);
s1 =_mm_add_pi16(f1,f2);
s2 =_mm_sub_pi16(f1,f2);
block1[j] =_mm_add_pi16(s0,s1);
block1[j+2] =_mm_sub_pi16(s0,s1);
block1[j+1] =_mm_add_pi16(s2,_mm_slli_pi16(s3, 1));
block1[j+3] =_mm_sub_pi16(s3,_mm_slli_pi16(s2, 1));
Thanks in advance!