regparm

#define asmlinkage __attribute__((regparm(0)))  define fastcall __attribute__((regparm(3))) 意思是,最多可以使用3个寄存器(或许是eax,edx,ecx)来传送前3个参数,其他参数则压入栈中,那么 #define asmlinkage __attribute__((regparm(0))) 的意思就是使用0个寄存器来进行参数传递,是使得调用这个函数时的所有参数都压入栈中, 相对于fastcall的使用方式当然是要慢一些了.

你可能感兴趣的:(regparm)