clarify the purpose of this project
[nyanglibc.git] / libio / iofflush_u.shared.s
blob3abeda7294792e0a361970828d993354d4dd655c
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___fflush_unlocked
9 .hidden __GI___fflush_unlocked
10 .type __GI___fflush_unlocked, @function
11 __GI___fflush_unlocked:
12 testq %rdi, %rdi
13 je .L7
14 pushq %rbx
15 leaq __start___libc_IO_vtables(%rip), %rdx
16 leaq __stop___libc_IO_vtables(%rip), %rax
17 subq $16, %rsp
18 movq 216(%rdi), %rbx
19 subq %rdx, %rax
20 movq %rbx, %rcx
21 subq %rdx, %rcx
22 cmpq %rcx, %rax
23 jbe .L8
24 .L3:
25 call *96(%rbx)
26 testl %eax, %eax
27 setne %al
28 addq $16, %rsp
29 movzbl %al, %eax
30 negl %eax
31 popq %rbx
32 ret
33 .p2align 4,,10
34 .p2align 3
35 .L7:
36 jmp __GI__IO_flush_all
37 .p2align 4,,10
38 .p2align 3
39 .L8:
40 movq %rdi, 8(%rsp)
41 call _IO_vtable_check
42 movq 8(%rsp), %rdi
43 jmp .L3
44 .size __GI___fflush_unlocked, .-__GI___fflush_unlocked
45 .globl __fflush_unlocked
46 .set __fflush_unlocked,__GI___fflush_unlocked
47 .weak __GI_fflush_unlocked
48 .hidden __GI_fflush_unlocked
49 .set __GI_fflush_unlocked,__fflush_unlocked
50 .weak fflush_unlocked
51 .set fflush_unlocked,__GI_fflush_unlocked
52 .hidden _IO_vtable_check
53 .hidden __stop___libc_IO_vtables
54 .hidden __start___libc_IO_vtables