在GCC内联汇编中调用函数

说,我想在gcc的内联汇编中调用具有以下签名的函数。我怎样才能做到这一点?

int some_function( void * arg );

回答:

通常,您会想要做类似的事情

void *x;

asm(".. code that writes to register %0" : "=r"(x) : ...

int r = some_function(x);

asm(".. code that uses the result..." : ... : "r"(r), ...

也就是说,您根本不需要在嵌入式asm中进行函数调用。这样,您不必担心调用约定或堆栈框架管理的细节。

以上是 在GCC内联汇编中调用函数 的全部内容, 来源链接: utcz.com/qa/407888.html

回到顶部