clarify the purpose of this project
[nyanglibc.git] / libio / fputwc_u.s
blob9cd98a74b0cf464c7c372290b83781f7303bbe33
1 .text
2 .p2align 4,,15
3 .globl fputwc_unlocked
4 .type fputwc_unlocked, @function
5 fputwc_unlocked:
6 pushq %rbp
7 pushq %rbx
8 movq %rsi, %rbx
9 movl %edi, %ebp
10 movl $1, %esi
11 movq %rbx, %rdi
12 subq $8, %rsp
13 call _IO_fwide@PLT
14 testl %eax, %eax
15 js .L5
16 movq 160(%rbx), %rdx
17 movl %ebp, %eax
18 testq %rdx, %rdx
19 je .L3
20 movq 32(%rdx), %rcx
21 cmpq 40(%rdx), %rcx
22 jnb .L3
23 leaq 4(%rcx), %rsi
24 movq %rsi, 32(%rdx)
25 movl %ebp, (%rcx)
26 addq $8, %rsp
27 popq %rbx
28 popq %rbp
29 ret
30 .p2align 4,,10
31 .p2align 3
32 .L5:
33 addq $8, %rsp
34 movl $-1, %eax
35 popq %rbx
36 popq %rbp
37 ret
38 .p2align 4,,10
39 .p2align 3
40 .L3:
41 addq $8, %rsp
42 movl %ebp, %esi
43 movq %rbx, %rdi
44 popq %rbx
45 popq %rbp
46 jmp __woverflow
47 .size fputwc_unlocked, .-fputwc_unlocked
48 .hidden __woverflow