clarify the purpose of this project
[nyanglibc.git] / dirent / scandir-cancel.shared.s
blob0d4324033c9bde776bd6e49ee06fec7da42f5bd0
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 __scandir_cancel_handler
9 .hidden __scandir_cancel_handler
10 .type __scandir_cancel_handler, @function
11 __scandir_cancel_handler:
12 pushq %r12
13 pushq %rbp
14 movq %rdi, %rbp
15 pushq %rbx
16 cmpq $0, 16(%rdi)
17 movq 8(%rdi), %r12
18 je .L2
19 xorl %ebx, %ebx
20 .p2align 4,,10
21 .p2align 3
22 .L3:
23 movq (%r12,%rbx,8), %rdi
24 addq $1, %rbx
25 call free@PLT
26 cmpq %rbx, 16(%rbp)
27 ja .L3
28 .L2:
29 movq %r12, %rdi
30 call free@PLT
31 popq %rbx
32 movq 0(%rbp), %rdi
33 popq %rbp
34 popq %r12
35 jmp __closedir
36 .size __scandir_cancel_handler, .-__scandir_cancel_handler
37 .hidden __closedir