c inline assembly
ratheesh kannoth
ratheesh.ksz@gmail.com
Sat Feb 18 06:01:00 GMT 2012
I am using gcc on a 32bit intel machine. i have defined an inline function.
This function is inline . what all registers needs to pushed and
poped in the inline assembly so that the functions wont
disturb the registers in the function ( in which it is C inlined ).
inline unsigned long hello(unsigned long a)
{
int b;
asm ("movl %1, %%eax;
" movl %1, %%ebx;
"movl %1, %%ecx;
"movl %1, %%esi;
"movl %1, %%edi;
"movl %%eax, %0;"
:"=r"(b) /* output */
:"r"(a) /* input */
);
}
More information about the Gcc-help
mailing list