clarify the purpose of this project
[nyanglibc.git] / string / strerror_l.shared.s
blob8650b2f03c082f235d73e71ffbd3d98d355a5dc8
1 .text
2 #APP
3 memmove = __GI_memmove
4 memset = __GI_memset
5 memcpy = __GI_memcpy
6 .section .rodata.str1.1,"aMS",@progbits,1
7 .LC0:
8 .string "Unknown error "
9 .LC1:
10 .string "%s%d"
11 #NO_APP
12 .text
13 .p2align 4,,15
14 .globl __GI___strerror_l
15 .hidden __GI___strerror_l
16 .type __GI___strerror_l, @function
17 __GI___strerror_l:
18 pushq %r15
19 pushq %r14
20 movq %rsi, %r14
21 pushq %r13
22 pushq %r12
23 movl %edi, %r12d
24 pushq %rbp
25 pushq %rbx
26 subq $24, %rsp
27 movq __libc_errno@gottpoff(%rip), %rbp
28 movl %fs:0(%rbp), %r13d
29 call __get_errlist
30 testq %rax, %rax
31 movq %rax, %rbx
32 je .L8
33 movq %r14, %rdi
34 call __GI___uselocale
35 leaq __GI__libc_intl_domainname(%rip), %rdi
36 movq %rax, %r12
37 movq %rbx, %rsi
38 movl $5, %edx
39 call __GI___dcgettext
40 movq %r12, %rdi
41 movq %rax, %rbx
42 call __GI___uselocale
43 .L5:
44 movl %r13d, %fs:0(%rbp)
45 addq $24, %rsp
46 movq %rbx, %rax
47 popq %rbx
48 popq %rbp
49 popq %r12
50 popq %r13
51 popq %r14
52 popq %r15
53 ret
54 .p2align 4,,10
55 .p2align 3
56 .L8:
57 movq %fs:16, %r15
58 movq 2432(%r15), %rdi
59 call free@PLT
60 movq %r14, %rdi
61 call __GI___uselocale
62 leaq .LC0(%rip), %rsi
63 leaq __GI__libc_intl_domainname(%rip), %rdi
64 movl $5, %edx
65 movq %rax, %r14
66 call __GI___dcgettext
67 movq %r14, %rdi
68 movq %rax, 8(%rsp)
69 call __GI___uselocale
70 movq 8(%rsp), %rdx
71 leaq 2432(%r15), %rdi
72 leaq .LC1(%rip), %rsi
73 xorl %eax, %eax
74 movl %r12d, %ecx
75 call __GI___asprintf
76 cmpl $-1, %eax
77 je .L3
78 movq 2432(%r15), %rbx
79 jmp .L5
80 .p2align 4,,10
81 .p2align 3
82 .L3:
83 movq $0, 2432(%r15)
84 jmp .L5
85 .size __GI___strerror_l, .-__GI___strerror_l
86 .weak strerror_l
87 .set strerror_l,__GI___strerror_l
88 .globl __strerror_l
89 .set __strerror_l,__GI___strerror_l
90 .hidden __get_errlist