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