clarify the purpose of this project
[nyanglibc.git] / misc / usleep.shared.s
blob14e19312e3111fa915d6c850ec82f6439a5075cb
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 usleep
9 .type usleep, @function
10 usleep:
11 movl %edi, %eax
12 movl $1125899907, %edx
13 subq $24, %rsp
14 mull %edx
15 xorl %esi, %esi
16 shrl $18, %edx
17 movl %edx, %eax
18 imull $1000000, %edx, %edx
19 movq %rax, (%rsp)
20 subl %edx, %edi
21 imulq $1000, %rdi, %rdi
22 movq %rdi, 8(%rsp)
23 movq %rsp, %rdi
24 call __GI___nanosleep
25 addq $24, %rsp
26 ret
27 .size usleep, .-usleep