Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(451)

Side by Side Diff: third_party/boringssl/linux-x86/crypto/cpu-x86-asm.S

Issue 428753004: BoringSSL: roll DEPS and enable dynamic visibility. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fix quotes in GN file. Created 6 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 #if defined(__i386__) 1 #if defined(__i386__)
2 .file "crypto/cpu-x86-asm.S" 2 .file "crypto/cpu-x86-asm.S"
3 .text 3 .text
4 .globl OPENSSL_ia32_cpuid 4 .globl OPENSSL_ia32_cpuid
5 .hidden OPENSSL_ia32_cpuid
5 .type OPENSSL_ia32_cpuid,@function 6 .type OPENSSL_ia32_cpuid,@function
6 .align 16 7 .align 16
7 OPENSSL_ia32_cpuid: 8 OPENSSL_ia32_cpuid:
8 .L_OPENSSL_ia32_cpuid_begin: 9 .L_OPENSSL_ia32_cpuid_begin:
9 pushl %ebp 10 pushl %ebp
10 pushl %ebx 11 pushl %ebx
11 pushl %esi 12 pushl %esi
12 pushl %edi 13 pushl %edi
13 xorl %edx,%edx 14 xorl %edx,%edx
14 pushfl 15 pushfl
(...skipping 125 matching lines...) Expand 10 before | Expand all | Expand 10 after
140 movl %esi,%eax 141 movl %esi,%eax
141 movl %ebp,%edx 142 movl %ebp,%edx
142 .L000nocpuid: 143 .L000nocpuid:
143 popl %edi 144 popl %edi
144 popl %esi 145 popl %esi
145 popl %ebx 146 popl %ebx
146 popl %ebp 147 popl %ebp
147 ret 148 ret
148 .size OPENSSL_ia32_cpuid,.-.L_OPENSSL_ia32_cpuid_begin 149 .size OPENSSL_ia32_cpuid,.-.L_OPENSSL_ia32_cpuid_begin
149 .globl OPENSSL_rdtsc 150 .globl OPENSSL_rdtsc
151 .hidden OPENSSL_rdtsc
150 .type OPENSSL_rdtsc,@function 152 .type OPENSSL_rdtsc,@function
151 .align 16 153 .align 16
152 OPENSSL_rdtsc: 154 OPENSSL_rdtsc:
153 .L_OPENSSL_rdtsc_begin: 155 .L_OPENSSL_rdtsc_begin:
154 xorl %eax,%eax 156 xorl %eax,%eax
155 xorl %edx,%edx 157 xorl %edx,%edx
156 call .L009PIC_me_up 158 call .L009PIC_me_up
157 .L009PIC_me_up: 159 .L009PIC_me_up:
158 popl %ecx 160 popl %ecx
159 leal OPENSSL_ia32cap_P-.L009PIC_me_up(%ecx),%ecx 161 leal OPENSSL_ia32cap_P-.L009PIC_me_up(%ecx),%ecx
160 btl $4,(%ecx) 162 btl $4,(%ecx)
161 jnc .L010notsc 163 jnc .L010notsc
162 .byte 0x0f,0x31 164 .byte 0x0f,0x31
163 .L010notsc: 165 .L010notsc:
164 ret 166 ret
165 .size OPENSSL_rdtsc,.-.L_OPENSSL_rdtsc_begin 167 .size OPENSSL_rdtsc,.-.L_OPENSSL_rdtsc_begin
166 .globl OPENSSL_instrument_halt 168 .globl OPENSSL_instrument_halt
169 .hidden OPENSSL_instrument_halt
167 .type OPENSSL_instrument_halt,@function 170 .type OPENSSL_instrument_halt,@function
168 .align 16 171 .align 16
169 OPENSSL_instrument_halt: 172 OPENSSL_instrument_halt:
170 .L_OPENSSL_instrument_halt_begin: 173 .L_OPENSSL_instrument_halt_begin:
171 call .L011PIC_me_up 174 call .L011PIC_me_up
172 .L011PIC_me_up: 175 .L011PIC_me_up:
173 popl %ecx 176 popl %ecx
174 leal OPENSSL_ia32cap_P-.L011PIC_me_up(%ecx),%ecx 177 leal OPENSSL_ia32cap_P-.L011PIC_me_up(%ecx),%ecx
175 btl $4,(%ecx) 178 btl $4,(%ecx)
176 jnc .L012nohalt 179 jnc .L012nohalt
(...skipping 12 matching lines...) Expand all
189 subl (%esp),%eax 192 subl (%esp),%eax
190 sbbl 4(%esp),%edx 193 sbbl 4(%esp),%edx
191 addl $8,%esp 194 addl $8,%esp
192 ret 195 ret
193 .L012nohalt: 196 .L012nohalt:
194 xorl %eax,%eax 197 xorl %eax,%eax
195 xorl %edx,%edx 198 xorl %edx,%edx
196 ret 199 ret
197 .size OPENSSL_instrument_halt,.-.L_OPENSSL_instrument_halt_begin 200 .size OPENSSL_instrument_halt,.-.L_OPENSSL_instrument_halt_begin
198 .globl OPENSSL_far_spin 201 .globl OPENSSL_far_spin
202 .hidden OPENSSL_far_spin
199 .type OPENSSL_far_spin,@function 203 .type OPENSSL_far_spin,@function
200 .align 16 204 .align 16
201 OPENSSL_far_spin: 205 OPENSSL_far_spin:
202 .L_OPENSSL_far_spin_begin: 206 .L_OPENSSL_far_spin_begin:
203 pushfl 207 pushfl
204 popl %eax 208 popl %eax
205 btl $9,%eax 209 btl $9,%eax
206 jnc .L013nospin 210 jnc .L013nospin
207 movl 4(%esp),%eax 211 movl 4(%esp),%eax
208 movl 8(%esp),%ecx 212 movl 8(%esp),%ecx
209 .long 2430111262 213 .long 2430111262
210 xorl %eax,%eax 214 xorl %eax,%eax
211 movl (%ecx),%edx 215 movl (%ecx),%edx
212 jmp .L014spin 216 jmp .L014spin
213 .align 16 217 .align 16
214 .L014spin: 218 .L014spin:
215 incl %eax 219 incl %eax
216 cmpl (%ecx),%edx 220 cmpl (%ecx),%edx
217 je .L014spin 221 je .L014spin
218 .long 529567888 222 .long 529567888
219 ret 223 ret
220 .L013nospin: 224 .L013nospin:
221 xorl %eax,%eax 225 xorl %eax,%eax
222 xorl %edx,%edx 226 xorl %edx,%edx
223 ret 227 ret
224 .size OPENSSL_far_spin,.-.L_OPENSSL_far_spin_begin 228 .size OPENSSL_far_spin,.-.L_OPENSSL_far_spin_begin
225 .globl OPENSSL_wipe_cpu 229 .globl OPENSSL_wipe_cpu
230 .hidden OPENSSL_wipe_cpu
226 .type OPENSSL_wipe_cpu,@function 231 .type OPENSSL_wipe_cpu,@function
227 .align 16 232 .align 16
228 OPENSSL_wipe_cpu: 233 OPENSSL_wipe_cpu:
229 .L_OPENSSL_wipe_cpu_begin: 234 .L_OPENSSL_wipe_cpu_begin:
230 xorl %eax,%eax 235 xorl %eax,%eax
231 xorl %edx,%edx 236 xorl %edx,%edx
232 call .L015PIC_me_up 237 call .L015PIC_me_up
233 .L015PIC_me_up: 238 .L015PIC_me_up:
234 popl %ecx 239 popl %ecx
235 leal OPENSSL_ia32cap_P-.L015PIC_me_up(%ecx),%ecx 240 leal OPENSSL_ia32cap_P-.L015PIC_me_up(%ecx),%ecx
236 movl (%ecx),%ecx 241 movl (%ecx),%ecx
237 btl $1,(%ecx) 242 btl $1,(%ecx)
238 jnc .L016no_x87 243 jnc .L016no_x87
239 .long 4007259865,4007259865,4007259865,4007259865,2430851995 244 .long 4007259865,4007259865,4007259865,4007259865,2430851995
240 .L016no_x87: 245 .L016no_x87:
241 leal 4(%esp),%eax 246 leal 4(%esp),%eax
242 ret 247 ret
243 .size OPENSSL_wipe_cpu,.-.L_OPENSSL_wipe_cpu_begin 248 .size OPENSSL_wipe_cpu,.-.L_OPENSSL_wipe_cpu_begin
244 .globl OPENSSL_atomic_add 249 .globl OPENSSL_atomic_add
250 .hidden OPENSSL_atomic_add
245 .type OPENSSL_atomic_add,@function 251 .type OPENSSL_atomic_add,@function
246 .align 16 252 .align 16
247 OPENSSL_atomic_add: 253 OPENSSL_atomic_add:
248 .L_OPENSSL_atomic_add_begin: 254 .L_OPENSSL_atomic_add_begin:
249 movl 4(%esp),%edx 255 movl 4(%esp),%edx
250 movl 8(%esp),%ecx 256 movl 8(%esp),%ecx
251 pushl %ebx 257 pushl %ebx
252 nop 258 nop
253 movl (%edx),%eax 259 movl (%edx),%eax
254 .L017spin: 260 .L017spin:
255 leal (%eax,%ecx,1),%ebx 261 leal (%eax,%ecx,1),%ebx
256 nop 262 nop
257 .long 447811568 263 .long 447811568
258 jne .L017spin 264 jne .L017spin
259 movl %ebx,%eax 265 movl %ebx,%eax
260 popl %ebx 266 popl %ebx
261 ret 267 ret
262 .size OPENSSL_atomic_add,.-.L_OPENSSL_atomic_add_begin 268 .size OPENSSL_atomic_add,.-.L_OPENSSL_atomic_add_begin
263 .globl OPENSSL_indirect_call 269 .globl OPENSSL_indirect_call
270 .hidden OPENSSL_indirect_call
264 .type OPENSSL_indirect_call,@function 271 .type OPENSSL_indirect_call,@function
265 .align 16 272 .align 16
266 OPENSSL_indirect_call: 273 OPENSSL_indirect_call:
267 .L_OPENSSL_indirect_call_begin: 274 .L_OPENSSL_indirect_call_begin:
268 pushl %ebp 275 pushl %ebp
269 movl %esp,%ebp 276 movl %esp,%ebp
270 subl $28,%esp 277 subl $28,%esp
271 movl 12(%ebp),%ecx 278 movl 12(%ebp),%ecx
272 movl %ecx,(%esp) 279 movl %ecx,(%esp)
273 movl 16(%ebp),%edx 280 movl 16(%ebp),%edx
274 movl %edx,4(%esp) 281 movl %edx,4(%esp)
275 movl 20(%ebp),%eax 282 movl 20(%ebp),%eax
276 movl %eax,8(%esp) 283 movl %eax,8(%esp)
277 movl 24(%ebp),%eax 284 movl 24(%ebp),%eax
278 movl %eax,12(%esp) 285 movl %eax,12(%esp)
279 movl 28(%ebp),%eax 286 movl 28(%ebp),%eax
280 movl %eax,16(%esp) 287 movl %eax,16(%esp)
281 movl 32(%ebp),%eax 288 movl 32(%ebp),%eax
282 movl %eax,20(%esp) 289 movl %eax,20(%esp)
283 movl 36(%ebp),%eax 290 movl 36(%ebp),%eax
284 movl %eax,24(%esp) 291 movl %eax,24(%esp)
285 call *8(%ebp) 292 call *8(%ebp)
286 movl %ebp,%esp 293 movl %ebp,%esp
287 popl %ebp 294 popl %ebp
288 ret 295 ret
289 .size OPENSSL_indirect_call,.-.L_OPENSSL_indirect_call_begin 296 .size OPENSSL_indirect_call,.-.L_OPENSSL_indirect_call_begin
290 .globl OPENSSL_cleanse
291 .type OPENSSL_cleanse,@function
292 .align 16
293 OPENSSL_cleanse:
294 .L_OPENSSL_cleanse_begin:
295 movl 4(%esp),%edx
296 movl 8(%esp),%ecx
297 xorl %eax,%eax
298 cmpl $7,%ecx
299 jae .L018lot
300 cmpl $0,%ecx
301 je .L019ret
302 .L020little:
303 movb %al,(%edx)
304 subl $1,%ecx
305 leal 1(%edx),%edx
306 jnz .L020little
307 .L019ret:
308 ret
309 .align 16
310 .L018lot:
311 testl $3,%edx
312 jz .L021aligned
313 movb %al,(%edx)
314 leal -1(%ecx),%ecx
315 leal 1(%edx),%edx
316 jmp .L018lot
317 .L021aligned:
318 movl %eax,(%edx)
319 leal -4(%ecx),%ecx
320 testl $-4,%ecx
321 leal 4(%edx),%edx
322 jnz .L021aligned
323 cmpl $0,%ecx
324 jne .L020little
325 ret
326 .size OPENSSL_cleanse,.-.L_OPENSSL_cleanse_begin
327 .globl OPENSSL_ia32_rdrand 297 .globl OPENSSL_ia32_rdrand
298 .hidden OPENSSL_ia32_rdrand
328 .type OPENSSL_ia32_rdrand,@function 299 .type OPENSSL_ia32_rdrand,@function
329 .align 16 300 .align 16
330 OPENSSL_ia32_rdrand: 301 OPENSSL_ia32_rdrand:
331 .L_OPENSSL_ia32_rdrand_begin: 302 .L_OPENSSL_ia32_rdrand_begin:
332 movl $8,%ecx 303 movl $8,%ecx
333 .L022loop: 304 .L018loop:
334 .byte 15,199,240 305 .byte 15,199,240
335 » jc» .L023break 306 » jc» .L019break
336 » loop» .L022loop 307 » loop» .L018loop
337 .L023break: 308 .L019break:
338 cmpl $0,%eax 309 cmpl $0,%eax
339 cmovel %ecx,%eax 310 cmovel %ecx,%eax
340 ret 311 ret
341 .size OPENSSL_ia32_rdrand,.-.L_OPENSSL_ia32_rdrand_begin 312 .size OPENSSL_ia32_rdrand,.-.L_OPENSSL_ia32_rdrand_begin
342 .hidden OPENSSL_ia32cap_P 313 .hidden OPENSSL_ia32cap_P
343 #endif 314 #endif
OLDNEW
« no previous file with comments | « third_party/boringssl/linux-x86/crypto/bn/x86-mont.S ('k') | third_party/boringssl/linux-x86/crypto/md5/md5-586.S » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698