clarify the purpose of this project
[nyanglibc.git] / signal / sigpause.shared.s
blobc46798628e260fb0b7014e37b335593078e37822
1 .text
2 #APP
3 memmove = __GI_memmove
4 memset = __GI_memset
5 memcpy = __GI_memcpy
6 #NO_APP
7 .p2align 4,,15
8 .globl __GI___sigpause
9 .hidden __GI___sigpause
10 .type __GI___sigpause, @function
11 __GI___sigpause:
12 pushq %rbp
13 pushq %rbx
14 movl %edi, %ebp
15 subq $136, %rsp
16 testl %esi, %esi
17 jne .L11
18 movl %edi, %eax
19 movq %rsp, %rbx
20 movq %rax, (%rsp)
21 leaq 8(%rbx), %rax
22 .p2align 4,,10
23 .p2align 3
24 .L7:
25 leaq 128(%rsp), %rcx
26 addq $8, %rax
27 movq $0, -8(%rax)
28 cmpq %rcx, %rax
29 jne .L7
30 .L6:
31 movq %rbx, %rdi
32 call __GI___sigsuspend
33 .L1:
34 addq $136, %rsp
35 popq %rbx
36 popq %rbp
37 ret
38 .p2align 4,,10
39 .p2align 3
40 .L11:
41 movq %rsp, %rbx
42 xorl %esi, %esi
43 xorl %edi, %edi
44 movq %rbx, %rdx
45 call __GI___sigprocmask
46 testl %eax, %eax
47 js .L5
48 movl %ebp, %esi
49 movq %rbx, %rdi
50 call __GI_sigdelset
51 testl %eax, %eax
52 jns .L6
53 .L5:
54 movl $-1, %eax
55 jmp .L1
56 .size __GI___sigpause, .-__GI___sigpause
57 .globl __sigpause
58 .set __sigpause,__GI___sigpause
59 .p2align 4,,15
60 .weak __default_sigpause
61 .type __default_sigpause, @function
62 __default_sigpause:
63 xorl %esi, %esi
64 jmp __GI___sigpause
65 .size __default_sigpause, .-__default_sigpause
66 .globl __libc_sigpause
67 .set __libc_sigpause,__default_sigpause
68 .weak sigpause
69 .set sigpause,__default_sigpause
70 .p2align 4,,15
71 .weak __xpg_sigpause
72 .type __xpg_sigpause, @function
73 __xpg_sigpause:
74 movl $1, %esi
75 jmp __GI___sigpause
76 .size __xpg_sigpause, .-__xpg_sigpause
77 .globl __libc___xpg_sigpause
78 .set __libc___xpg_sigpause,__xpg_sigpause