1 /* autogenerated by gensyscalls.py */
2 #include <linux/err.h>
3 #include <machine/asm.h>
4 #include <asm/unistd.h>
6 ENTRY(futex)
7 pushl %ebx
8 pushl %ecx
9 pushl %edx
10 pushl %esi
11 pushl %edi
12 pushl %ebp
13 mov 28(%esp), %ebx
14 mov 32(%esp), %ecx
15 mov 36(%esp), %edx
16 mov 40(%esp), %esi
17 mov 44(%esp), %edi
18 mov 48(%esp), %ebp
19 movl $__NR_futex, %eax
20 int $0x80
21 cmpl $-MAX_ERRNO, %eax
22 jb 1f
23 negl %eax
24 pushl %eax
25 call __set_errno
26 addl $4, %esp
27 orl $-1, %eax
28 1:
29 popl %ebp
30 popl %edi
31 popl %esi
32 popl %edx
33 popl %ecx
34 popl %ebx
35 ret
36 END(futex)