On Thu, Nov 19, 2009 at 01:32:36PM -0800, Dave Hansen wrote: > On Thu, 2009-11-19 at 22:26 +0100, Louis Rilling wrote: > > But actually this is even better :D: > > > > __asm__ __volatile__( > > "movq %3, %%r10\n\t" /* pids in r10*/ > > "pushq %%rbp\n\t" /* save value of ebp */ > > : > > :"D" (flags_low), /* rdi */ > > "S" (clone_args),/* rsi */ > > "d" (args_size), /* rdx */ > > "r10" (pids) /* Linux reads its fourth arg from r10 */ > > ); > > That gives me: > > clone-lib.c:28: error: matching constraint references invalid operand > number ?? I know that this syntax works for r8, but I don't remember for r9-r15. I don't have my handy documentation nearby, so let met check tomorrow (if nobody finds before). Anyway, although not optimal, even your first version should be ok with respect to placing the fourth arg in r10 (assuming that the compiler keeps it until the next asm statement of course, which any [future?] code instrumentation of the compiler could break). Louis -- Dr Louis Rilling Kerlabs Skype: louis.rilling Batiment Germanium Phone: (+33|0) 6 80 89 08 23 80 avenue des Buttes de Coesmes http://www.kerlabs.com/ 35700 Rennes
Attachment:
signature.asc
Description: Digital signature
_______________________________________________ Containers mailing list Containers@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linux-foundation.org/mailman/listinfo/containers