Re: c inline assembly

"Vladimir Murzin" <[email protected]> Sat, 18 Feb 2012 06:26:00 +0000
Newsgroups org.kernel.vger.linux-c-programming
Message-ID <123126874-1329546468-cardhu_decombobulator_blackberry.rim.net-1355742666-@b13.c12.bise7.blackberry>
Hi!

What is you question or request? ;-)

------Original Message------
From: ratheesh kannoth
Sender: [email protected]
To: [email protected]
To: [email protected]
Subject: c inline assembly
Sent: 18 Feb 2012 10:01

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 */
 );
}
--
To unsubscribe from this list: send the line "unsubscribe linux-c-programming" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Best wishes,
Vladimir Murzin