Код
static inline long do_SWI1( const int swi_num,
long par0)
{
long ret_val;
asm volatile (
"mov r0, %2 \n\t" \
"swi %1 \n\t" \
"mov %0, r0 \n\t" \
: "=r" (ret_val)
: "n" (swi_num), "r" (par0)
: "r0", "r1", "r2", "r3", "ip", "lr", "memory", "cc"
);
return ret_val;
}
long par0)
{
long ret_val;
asm volatile (
"mov r0, %2 \n\t" \
"swi %1 \n\t" \
"mov %0, r0 \n\t" \
: "=r" (ret_val)
: "n" (swi_num), "r" (par0)
: "r0", "r1", "r2", "r3", "ip", "lr", "memory", "cc"
);
return ret_val;
}
В асм вставку можно передавать ва_листы? :-D