|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
x
下面是一段代码:
功能: /* equivalent to return (sum + ((__int64)x * y)); */
//ARM中的代码
static __inline __int64 MADD64(__int64 sum, int x, int y)
{
unsigned int sumLo = ((unsigned int *)&sum)[0];
int sumHi = ((int *)&sum)[1];
__asm {
mov eax, x
imul y
add eax, sumLo
adc edx, sumHi
}
/* equivalent to return (sum + ((__int64)x * y)); */
}
//NIOS II中的代码
static __inline __int64 MADD64(__int64 sum, int x, int y)
{
return (sum + ((__int64)x * y));
}
现在想提高速度,用NIOS II的C语言内嵌汇编重新实现上面的函数,但是其中涉及到了64位数,请问
怎么实现上述函数。 |
|