clarify the purpose of this project
[nyanglibc.git] / sysvipc / msgctl.s
blobd20c14b133eb8a33d71585721927d13ba913fbdd
1 .text
2 .p2align 4,,15
3 .globl __msgctl
4 .type __msgctl, @function
5 __msgctl:
6 cmpl $13, %esi
7 ja .L2
8 movl $1, %eax
9 movl %esi, %ecx
10 salq %cl, %rax
11 testl $14350, %eax
12 je .L10
13 .L4:
14 movl $71, %eax
15 #APP
16 # 79 "../sysdeps/unix/sysv/linux/msgctl.c" 1
17 syscall
19 # 0 "" 2
20 #NO_APP
21 cmpq $-4096, %rax
22 ja .L11
23 rep ret
24 .p2align 4,,10
25 .p2align 3
26 .L10:
27 testl %esi, %esi
28 jne .L2
29 xorl %edx, %edx
30 jmp .L4
31 .p2align 4,,10
32 .p2align 3
33 .L11:
34 movq __libc_errno@gottpoff(%rip), %rdx
35 negl %eax
36 movl %eax, %fs:(%rdx)
37 movl $-1, %eax
38 ret
39 .p2align 4,,10
40 .p2align 3
41 .L2:
42 movq __libc_errno@gottpoff(%rip), %rax
43 movl $22, %fs:(%rax)
44 movl $-1, %eax
45 ret
46 .size __msgctl, .-__msgctl
47 .weak msgctl
48 .set msgctl,__msgctl