clarify the purpose of this project
[nyanglibc.git] / wctype / wctrans.shared.s
blobae820f2743bc28a9c47af1b3be133baa14737a80
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 __wctrans
9 .type __wctrans, @function
10 __wctrans:
11 pushq %r13
12 pushq %r12
13 pushq %rbp
14 pushq %rbx
15 subq $8, %rsp
16 movq __libc_tsd_LOCALE@gottpoff(%rip), %rax
17 movq %fs:(%rax), %rax
18 movq (%rax), %r13
19 movq 152(%r13), %rbx
20 cmpb $0, (%rbx)
21 je .L5
22 movq %rdi, %r12
23 xorl %ebp, %ebp
24 jmp .L4
25 .p2align 4,,10
26 .p2align 3
27 .L9:
28 movq %rbx, %rdi
29 addq $1, %rbp
30 call __GI_strlen@PLT
31 leaq 1(%rbx,%rax), %rbx
32 cmpb $0, (%rbx)
33 je .L5
34 .L4:
35 movq %rbx, %rsi
36 movq %r12, %rdi
37 call __GI_strcmp
38 testl %eax, %eax
39 jne .L9
40 movl 208(%r13), %eax
41 leaq 8(%rbp,%rax), %rax
42 movq 0(%r13,%rax,8), %rax
43 addq $8, %rsp
44 popq %rbx
45 popq %rbp
46 popq %r12
47 popq %r13
48 ret
49 .p2align 4,,10
50 .p2align 3
51 .L5:
52 addq $8, %rsp
53 xorl %eax, %eax
54 popq %rbx
55 popq %rbp
56 popq %r12
57 popq %r13
58 ret
59 .size __wctrans, .-__wctrans
60 .weak wctrans
61 .set wctrans,__wctrans