Вызов функции в сборке gcc inline

Скажем, я хочу вызвать функцию со следующей сигнатурой в встроенной сборке 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. Таким образом, вам не нужно беспокоиться о деталях соглашений о вызовах или управлении фреймом стека.