clarify the purpose of this project
[nyanglibc.git] / sysvipc / shmctl.shared.s
blob9003be616f15456f89c7e9f4626ec658ae49dbca
1 .text
2 #APP
3 memmove = __GI_memmove
4 memset = __GI_memset
5 memcpy = __GI_memcpy
6 .symver __shmctl,shmctl@@GLIBC_2.2.5
7 #NO_APP
8 .p2align 4,,15
9 .globl __shmctl
10 .type __shmctl, @function
11 __shmctl:
12 cmpl $15, %esi
13 ja .L2
14 movl $1, %eax
15 movl %esi, %ecx
16 salq %cl, %rax
17 testl $40966, %eax
18 jne .L4
19 testl $6145, %eax
20 jne .L8
21 testl $16392, %eax
22 je .L2
23 .L4:
24 movl $31, %eax
25 #APP
26 # 78 "../sysdeps/unix/sysv/linux/shmctl.c" 1
27 syscall
29 # 0 "" 2
30 #NO_APP
31 cmpq $-4096, %rax
32 ja .L10
33 rep ret
34 .p2align 4,,10
35 .p2align 3
36 .L8:
37 xorl %edx, %edx
38 jmp .L4
39 .p2align 4,,10
40 .p2align 3
41 .L10:
42 movq __libc_errno@gottpoff(%rip), %rdx
43 negl %eax
44 movl %eax, %fs:(%rdx)
45 movl $-1, %eax
46 ret
47 .p2align 4,,10
48 .p2align 3
49 .L2:
50 movq __libc_errno@gottpoff(%rip), %rax
51 movl $22, %fs:(%rax)
52 movl $-1, %eax
53 ret
54 .size __shmctl, .-__shmctl