clarify the purpose of this project
[nyanglibc.git] / nptl / pthread_cond_destroy.shared.s
blob628f3c624f2ecc71d3f6281c53748b64a1bafbaf
1 .text
2 #APP
3 memmove = __GI_memmove
4 memset = __GI_memset
5 memcpy = __GI_memcpy
6 .symver __pthread_cond_destroy,pthread_cond_destroy@@GLIBC_2.3.2
7 .section .rodata.str1.8,"aMS",@progbits,1
8 .align 8
9 .LC0:
10 .string "The futex facility returned an unexpected error code.\n"
11 #NO_APP
12 .text
13 .p2align 4,,15
14 .globl __GI___pthread_cond_destroy
15 .hidden __GI___pthread_cond_destroy
16 .type __GI___pthread_cond_destroy, @function
17 __GI___pthread_cond_destroy:
18 movl 36(%rdi), %eax
19 leaq 36(%rdi), %r8
20 .L2:
21 movl %eax, %ecx
22 movl %eax, %edx
23 orl $4, %ecx
24 lock cmpxchgl %ecx, (%r8)
25 jne .L2
26 movl %edx, %eax
27 shrl $3, %eax
28 testl %eax, %eax
29 je .L14
30 pushq %rbx
31 movl $202, %r9d
32 movl $1, %ebx
33 jmp .L6
34 .p2align 4,,10
35 .p2align 3
36 .L4:
37 movl (%r8), %edx
38 movl %edx, %eax
39 shrl $3, %eax
40 testl %eax, %eax
41 je .L18
42 .L6:
43 xorl %r10d, %r10d
44 movl $128, %esi
45 movq %r8, %rdi
46 movl %r9d, %eax
47 #APP
48 # 146 "../sysdeps/nptl/futex-internal.h" 1
49 syscall
51 # 0 "" 2
52 #NO_APP
53 cmpq $-4096, %rax
54 jbe .L4
55 leal 11(%rax), %ecx
56 cmpl $11, %ecx
57 ja .L5
58 movq %rbx, %rax
59 salq %cl, %rax
60 testl $2177, %eax
61 jne .L4
62 .L5:
63 leaq .LC0(%rip), %rdi
64 call __GI___libc_fatal
65 .p2align 4,,10
66 .p2align 3
67 .L18:
68 xorl %eax, %eax
69 popq %rbx
70 ret
71 .L14:
72 xorl %eax, %eax
73 ret
74 .size __GI___pthread_cond_destroy, .-__GI___pthread_cond_destroy
75 .globl __pthread_cond_destroy
76 .set __pthread_cond_destroy,__GI___pthread_cond_destroy