clarify the purpose of this project
[nyanglibc.git] / libio / fseeko.shared.s
blob7ffa1523887b111fde1e8bd5903bc783f4725dc5
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 __fseeko
9 .type __fseeko, @function
10 __fseeko:
11 .LFB68:
12 pushq %r13
13 pushq %r12
14 movl %edx, %r12d
15 pushq %rbp
16 pushq %rbx
17 movq %rsi, %rbp
18 movq %rdi, %rbx
19 subq $8, %rsp
20 movl (%rdi), %edx
21 andl $32768, %edx
22 jne .L2
23 movq 136(%rdi), %rdi
24 movq %fs:16, %r13
25 cmpq %r13, 8(%rdi)
26 je .L3
27 #APP
28 # 39 "fseeko.c" 1
29 movl %fs:24,%eax
30 # 0 "" 2
31 #NO_APP
32 testl %eax, %eax
33 jne .L4
34 movl $1, %edx
35 #APP
36 # 47 "../sysdeps/unix/sysv/linux/x86/lowlevellock.h" 1
37 cmpxchgl %edx, (%rdi)
38 # 0 "" 2
39 #NO_APP
40 .L5:
41 movq 136(%rbx), %rdi
42 movq %r13, 8(%rdi)
43 .L3:
44 addl $1, 4(%rdi)
45 .L2:
46 movl $3, %ecx
47 movl %r12d, %edx
48 movq %rbp, %rsi
49 movq %rbx, %rdi
50 .LEHB0:
51 call _IO_seekoff_unlocked
52 xorl %r8d, %r8d
53 cmpq $-1, %rax
54 sete %r8b
55 negl %r8d
56 testl $32768, (%rbx)
57 jne .L1
58 movq 136(%rbx), %rdi
59 movl 4(%rdi), %eax
60 subl $1, %eax
61 testl %eax, %eax
62 movl %eax, 4(%rdi)
63 jne .L1
64 movq $0, 8(%rdi)
65 #APP
66 # 885 "libioP.h" 1
67 movl %fs:24,%edx
68 # 0 "" 2
69 #NO_APP
70 testl %edx, %edx
71 jne .L11
72 subl $1, (%rdi)
73 .L1:
74 addq $8, %rsp
75 movl %r8d, %eax
76 popq %rbx
77 popq %rbp
78 popq %r12
79 popq %r13
80 ret
81 .p2align 4,,10
82 .p2align 3
83 .L4:
84 movl $1, %ecx
85 movl %edx, %eax
86 lock cmpxchgl %ecx, (%rdi)
87 je .L5
88 call __lll_lock_wait_private
89 .LEHE0:
90 jmp .L5
91 .p2align 4,,10
92 .p2align 3
93 .L11:
94 #APP
95 # 885 "libioP.h" 1
96 xchgl %eax, (%rdi)
97 # 0 "" 2
98 #NO_APP
99 cmpl $1, %eax
100 jle .L1
101 xorl %r10d, %r10d
102 movl $1, %edx
103 movl $129, %esi
104 movl $202, %eax
105 #APP
106 # 885 "libioP.h" 1
107 syscall
109 # 0 "" 2
110 #NO_APP
111 jmp .L1
112 .L15:
113 testl $32768, (%rbx)
114 movq %rax, %r8
115 jne .L13
116 movq 136(%rbx), %rdi
117 movl 4(%rdi), %eax
118 subl $1, %eax
119 testl %eax, %eax
120 movl %eax, 4(%rdi)
121 jne .L13
122 movq $0, 8(%rdi)
123 #APP
124 # 885 "libioP.h" 1
125 movl %fs:24,%edx
126 # 0 "" 2
127 #NO_APP
128 testl %edx, %edx
129 jne .L14
130 subl $1, (%rdi)
131 .L13:
132 movq %r8, %rdi
133 .LEHB1:
134 call _Unwind_Resume@PLT
135 .LEHE1:
136 .L14:
137 #APP
138 # 885 "libioP.h" 1
139 xchgl %eax, (%rdi)
140 # 0 "" 2
141 #NO_APP
142 subl $1, %eax
143 jle .L13
144 xorl %r10d, %r10d
145 movl $1, %edx
146 movl $129, %esi
147 movl $202, %eax
148 #APP
149 # 885 "libioP.h" 1
150 syscall
152 # 0 "" 2
153 #NO_APP
154 jmp .L13
155 .LFE68:
156 .globl __gcc_personality_v0
157 .section .gcc_except_table,"a",@progbits
158 .LLSDA68:
159 .byte 0xff
160 .byte 0xff
161 .byte 0x1
162 .uleb128 .LLSDACSE68-.LLSDACSB68
163 .LLSDACSB68:
164 .uleb128 .LEHB0-.LFB68
165 .uleb128 .LEHE0-.LEHB0
166 .uleb128 .L15-.LFB68
167 .uleb128 0
168 .uleb128 .LEHB1-.LFB68
169 .uleb128 .LEHE1-.LEHB1
170 .uleb128 0
171 .uleb128 0
172 .LLSDACSE68:
173 .text
174 .size __fseeko, .-__fseeko
175 .globl __GI___fseeko64
176 .set __GI___fseeko64,__fseeko
177 .globl __fseeko64
178 .set __fseeko64,__fseeko
179 .weak fseeko64
180 .set fseeko64,__fseeko
181 .weak fseeko
182 .set fseeko,__fseeko
183 .hidden DW.ref.__gcc_personality_v0
184 .weak DW.ref.__gcc_personality_v0
185 .section .data.DW.ref.__gcc_personality_v0,"awG",@progbits,DW.ref.__gcc_personality_v0,comdat
186 .align 8
187 .type DW.ref.__gcc_personality_v0, @object
188 .size DW.ref.__gcc_personality_v0, 8
189 DW.ref.__gcc_personality_v0:
190 .quad __gcc_personality_v0
191 .hidden __lll_lock_wait_private
192 .hidden _IO_seekoff_unlocked