clarify the purpose of this project
[nyanglibc.git] / nptl / old_pthread_cond_signal.shared.s
blob27fa7629caaaeb1d4c1d48327d927f86c93fdbee
1 .text
2 #APP
3 .symver __pthread_cond_signal_2_0,pthread_cond_signal@GLIBC_2.2.5
4 #NO_APP
5 .p2align 4,,15
6 .globl __pthread_cond_signal_2_0
7 .type __pthread_cond_signal_2_0, @function
8 __pthread_cond_signal_2_0:
9 pushq %rbp
10 pushq %rbx
11 subq $8, %rsp
12 movq (%rdi), %rbx
13 testq %rbx, %rbx
14 je .L8
15 addq $8, %rsp
16 movq %rbx, %rdi
17 popq %rbx
18 popq %rbp
19 jmp __pthread_cond_signal@PLT
20 .p2align 4,,10
21 .p2align 3
22 .L8:
23 movq %rdi, %rbp
24 movl $1, %esi
25 movl $48, %edi
26 call calloc@PLT
27 testq %rax, %rax
28 movq %rax, %rdi
29 je .L3
30 movq %rbx, %rax
31 lock cmpxchgq %rdi, 0(%rbp)
32 jne .L4
33 .L6:
34 movq 0(%rbp), %rbx
35 addq $8, %rsp
36 movq %rbx, %rdi
37 popq %rbx
38 popq %rbp
39 jmp __pthread_cond_signal@PLT
40 .p2align 4,,10
41 .p2align 3
42 .L3:
43 addq $8, %rsp
44 movl $12, %eax
45 popq %rbx
46 popq %rbp
47 ret
48 .L4:
49 call free@PLT
50 jmp .L6
51 .size __pthread_cond_signal_2_0, .-__pthread_cond_signal_2_0