static av_always_inline av_const int MULL(int a, int b, unsigned shift)
{
int rt;
//__asm__ (
// "imull %3 \n\t"
// "shrdl %4, %%edx, %%eax \n\t"
// :"=a"(rt), "=d"(dummy)
// :"a"(a), "rm"(b), "ci"((uint8_t)shift)
//);
__asm__{
mov eax, a
imul b
mov ecx, shift
shrd eax,edx,cl
mov rt, eax
}
return rt;
}
{
int rt;
//__asm__ (
// "imull %3 \n\t"
// "shrdl %4, %%edx, %%eax \n\t"
// :"=a"(rt), "=d"(dummy)
// :"a"(a), "rm"(b), "ci"((uint8_t)shift)
//);
__asm__{
mov eax, a
imul b
mov ecx, shift
shrd eax,edx,cl
mov rt, eax
}
return rt;
}