Support six-argument syscalls from C for 32-bit x86, use generic lowlevellock-futex.h (bug 18138)

Florian Weimer fweimer@redhat.com
Mon Mar 23 19:05:00 GMT 2015


On 03/21/2015 01:28 AM, Joseph Myers wrote:
> +    asm volatile (							\
> +    "movl %1, %%eax\n\t"						\
> +    "call __libc_do_syscall"						\
> +    : "=a" (resultvar)							\
> +    : "i" (__NR_##name), "c" (arg2), "d" (arg3), "S" (arg4), "D" (&_xv) \
> +    : "memory", "cc")

I don't think the constraints express that you destroy %eax early, but
you might get away with that in this particular case because it is
impossible to allocate the register differently.

-- 
Florian Weimer / Red Hat Product Security



More information about the Libc-alpha mailing list