clarify the purpose of this project
[nyanglibc.git] / stdlib / strtold_l.s
blob4e5e6f1fbe0f259848561828247d6c8e0b36a6c6
1 .text
2 .p2align 4,,15
3 .type round_away, @function
4 round_away:
5 cmpl $1024, %r8d
6 je .L3
7 jle .L18
8 cmpl $2048, %r8d
9 je .L6
10 cmpl $3072, %r8d
11 jne .L2
12 xorl %eax, %eax
13 ret
14 .p2align 4,,10
15 .p2align 3
16 .L6:
17 orl %edx, %ecx
18 movl $0, %eax
19 testb %dil, %dil
20 cmove %ecx, %eax
21 ret
22 .p2align 4,,10
23 .p2align 3
24 .L18:
25 testl %r8d, %r8d
26 jne .L2
27 orl %esi, %ecx
28 movl $0, %eax
29 testb %dl, %dl
30 cmovne %ecx, %eax
31 ret
32 .p2align 4,,10
33 .p2align 3
34 .L3:
35 orl %edx, %ecx
36 movl $0, %eax
37 testb %dil, %dil
38 cmovne %ecx, %eax
39 ret
40 .L2:
41 subq $8, %rsp
42 call abort
43 .size round_away, .-round_away
44 .p2align 4,,15
45 .type round_and_return, @function
46 round_and_return:
47 pushq %r15
48 pushq %r14
49 movl %edx, %r15d
50 pushq %r13
51 pushq %r12
52 movq %rcx, %rdx
53 pushq %rbp
54 pushq %rbx
55 movq %rdi, %rbp
56 movq %rsi, %rbx
57 subq $56, %rsp
58 #APP
59 # 94 "../sysdeps/generic/get-rounding-mode.h" 1
60 fnstcw 46(%rsp)
61 # 0 "" 2
62 #NO_APP
63 movzwl 46(%rsp), %eax
64 andw $3072, %ax
65 cmpw $1024, %ax
66 je .L21
67 jbe .L60
68 cmpw $2048, %ax
69 je .L24
70 cmpw $3072, %ax
71 jne .L20
72 movl $3072, %r10d
73 .L23:
74 cmpq $-16382, %rbx
75 jge .L26
76 .L62:
77 cmpq $-16446, %rbx
78 jge .L27
79 movq __libc_errno@gottpoff(%rip), %rax
80 testl %r15d, %r15d
81 fldt .LC0(%rip)
82 movl $34, %fs:(%rax)
83 jne .L61
84 .L45:
85 addq $56, %rsp
86 popq %rbx
87 popq %rbp
88 popq %r12
89 popq %r13
90 popq %r14
91 fmul %st(0), %st
92 popq %r15
93 ret
94 .p2align 4,,10
95 .p2align 3
96 .L24:
97 cmpq $-16382, %rbx
98 movl $2048, %r10d
99 jl .L62
100 .L26:
101 cmpq $16383, %rbx
102 jle .L63
103 .L37:
104 movq __libc_errno@gottpoff(%rip), %rax
105 testl %r15d, %r15d
106 fldt .LC2(%rip)
107 movl $34, %fs:(%rax)
108 je .L45
109 fldt .LC3(%rip)
110 addq $56, %rsp
111 popq %rbx
112 popq %rbp
113 popq %r12
114 popq %r13
115 popq %r14
116 popq %r15
117 fmulp %st, %st(1)
119 .p2align 4,,10
120 .p2align 3
121 .L60:
122 testw %ax, %ax
123 jne .L20
124 xorl %r10d, %r10d
125 jmp .L23
126 .p2align 4,,10
127 .p2align 3
128 .L27:
129 movq $-1, %r14
130 movl %r8d, %ecx
131 movq $-16382, %rax
132 movq %r14, %rdi
133 subq %rbx, %rax
134 movq 0(%rbp), %r11
135 salq %cl, %rdi
136 movq %rdi, %rcx
137 notq %rcx
138 testq %rdx, %rcx
139 setne %cl
140 movzbl %cl, %ecx
141 orl %ecx, %r9d
142 movl %r9d, %edi
143 andl $1, %edi
144 cmpq $64, %rax
145 movb %dil, 27(%rsp)
146 je .L64
147 movq $-16383, %rcx
148 subq %rbx, %rcx
149 movq %r11, %rbx
150 shrq %cl, %rbx
151 movl %ecx, 4(%rsp)
152 movl %ebx, %r13d
153 andl $1, %r13d
154 cmpq $1, %rax
155 je .L32
156 movq %rbp, %rsi
157 movl %eax, %ecx
158 movl $1, %edx
159 movq %rbp, %rdi
160 movl %r9d, 28(%rsp)
161 movq %r11, 16(%rsp)
162 movl %r10d, 8(%rsp)
163 call __mpn_rshift
164 movq 0(%rbp), %r12
165 movl 8(%rsp), %r10d
166 movq 16(%rsp), %r11
167 movl 28(%rsp), %r9d
168 movl %r12d, %esi
169 andl $1, %esi
170 .L31:
171 andl $1, %ebx
172 jne .L35
173 cmpb $0, 27(%rsp)
174 je .L65
175 .L35:
176 fldt .LC0(%rip)
177 movq __libc_errno@gottpoff(%rip), %rax
178 movl $34, %fs:(%rax)
179 fmul %st(0), %st
180 fstp %st(0)
181 movq $-16383, %rbx
182 jmp .L34
183 .p2align 4,,10
184 .p2align 3
185 .L21:
186 movl $1024, %r10d
187 jmp .L23
188 .p2align 4,,10
189 .p2align 3
190 .L61:
191 fldt .LC1(%rip)
192 addq $56, %rsp
193 popq %rbx
194 popq %rbp
195 popq %r12
196 popq %r13
197 popq %r14
198 popq %r15
199 fmulp %st, %st(1)
201 .p2align 4,,10
202 .p2align 3
203 .L32:
204 movl %r8d, %ecx
205 movq %r11, %rsi
206 movl %r10d, %r8d
207 shrq %cl, %rdx
208 andl $1, %esi
209 movl %r9d, %ecx
210 andl $1, %edx
211 movl %r15d, %edi
212 movl %r10d, 28(%rsp)
213 movl %r9d, 16(%rsp)
214 movq %r11, 8(%rsp)
215 call round_away
216 movq 8(%rsp), %r11
217 movq %rbp, %rsi
218 movl $1, %ecx
219 movl $1, %edx
220 movq %rbp, %rdi
221 cmpq $-1, %r11
222 sete %r12b
223 andl %eax, %r12d
224 call __mpn_rshift
225 testb %r12b, %r12b
226 movq 0(%rbp), %r12
227 movq 8(%rsp), %r11
228 movl 16(%rsp), %r9d
229 movl 28(%rsp), %r10d
230 movl %r12d, %esi
231 je .L33
232 andl $1, %esi
233 movq %r14, %r11
234 movq $-16383, %rbx
235 .L34:
236 testl %r9d, %r9d
237 movl $1, %r14d
238 jne .L38
239 movzbl 4(%rsp), %ecx
240 movq $-1, %rax
241 salq %cl, %rax
242 notq %rax
243 andq %r11, %rax
244 .L36:
245 testq %rax, %rax
246 setne %r14b
247 movzbl %r14b, %r9d
248 .L38:
249 movzbl %r13b, %edx
250 movl %r10d, %r8d
251 movl %r9d, %ecx
252 movl %r15d, %edi
253 call round_away
254 testb %al, %al
255 je .L39
256 addq $1, %r12
257 movq %r12, 0(%rbp)
258 jc .L66
259 .L42:
260 cmpq $-16383, %rbx
261 je .L44
262 .L39:
263 movl %ebx, %esi
264 .L43:
265 testb %r14b, %r14b
266 jne .L52
267 testb %r13b, %r13b
268 jne .L52
269 .L46:
270 movl %r15d, %edx
271 movq %rbp, %rdi
272 call __mpn_construct_long_double
273 addq $56, %rsp
274 popq %rbx
275 popq %rbp
276 popq %r12
277 popq %r13
278 popq %r14
279 popq %r15
281 .p2align 4,,10
282 .p2align 3
283 .L52:
284 fld1
285 fldt .LC0(%rip)
286 faddp %st, %st(1)
287 fstp %st(0)
288 jmp .L46
289 .p2align 4,,10
290 .p2align 3
291 .L63:
292 movq 0(%rbp), %r12
293 movq %rdx, %r13
294 movl %r8d, %ecx
295 shrq %cl, %r13
296 movl %r8d, 4(%rsp)
297 movq %rdx, %r11
298 andl $1, %r13d
299 movl %r12d, %esi
300 andl $1, %esi
301 jmp .L34
302 .p2align 4,,10
303 .p2align 3
304 .L66:
305 addq $1, %rbx
306 movl $1, %ecx
307 movl $1, %edx
308 movq %rbp, %rsi
309 movq %rbp, %rdi
310 call __mpn_rshift
311 movabsq $-9223372036854775808, %rax
312 orq %rax, 0(%rbp)
313 cmpq $16384, %rbx
314 je .L37
315 jmp .L39
316 .p2align 4,,10
317 .p2align 3
318 .L44:
319 shrq $63, %r12
320 leal -16383(%r12), %esi
321 jmp .L43
322 .p2align 4,,10
323 .p2align 3
324 .L65:
325 movzbl 4(%rsp), %ecx
326 movq $-1, %rax
327 salq %cl, %rax
328 notq %rax
329 andq %r11, %rax
330 jne .L35
331 movq $-16383, %rbx
332 jmp .L36
333 .p2align 4,,10
334 .p2align 3
335 .L64:
336 movq %r11, %rbx
337 movq $0, 0(%rbp)
338 xorl %esi, %esi
339 shrq $63, %rbx
340 xorl %r12d, %r12d
341 movl $63, 4(%rsp)
342 movl %ebx, %r13d
343 andl $1, %r13d
344 jmp .L31
345 .L33:
346 andl $1, %esi
347 jmp .L31
348 .L20:
349 call abort
350 .size round_and_return, .-round_and_return
351 .section .rodata.str1.1,"aMS",@progbits,1
352 .LC6:
353 .string "../stdlib/strtod_l.c"
354 .LC7:
355 .string "digcnt > 0"
356 .LC8:
357 .string "*nsize < MPNSIZE"
358 .text
359 .p2align 4,,15
360 .type str_to_mpn.isra.0, @function
361 str_to_mpn.isra.0:
362 pushq %r15
363 pushq %r14
364 pushq %r13
365 pushq %r12
366 pushq %rbp
367 pushq %rbx
368 subq $24, %rsp
369 testl %esi, %esi
370 movq $0, (%rcx)
371 movq 80(%rsp), %r14
372 jle .L111
373 movq %rdi, %rbx
374 movl %esi, %r15d
375 movq %rdx, %r12
376 movq %rcx, %r13
377 .L110:
378 xorl %ebp, %ebp
379 xorl %edx, %edx
380 .p2align 4,,10
381 .p2align 3
382 .L68:
383 movsbq (%rbx), %rax
384 leal -48(%rax), %ecx
385 cmpb $9, %cl
386 jbe .L77
387 testq %r14, %r14
388 je .L78
389 cmpb (%r14), %al
390 je .L112
391 .L78:
392 addq %r9, %rbx
393 movsbq (%rbx), %rax
394 .L77:
395 leaq 0(%rbp,%rbp,4), %rcx
396 addq $1, %rbx
397 addl $1, %edx
398 subl $1, %r15d
399 leaq -48(%rax,%rcx,2), %rbp
400 je .L113
401 cmpl $19, %edx
402 jne .L68
403 movq 0(%r13), %rdx
404 testq %rdx, %rdx
405 jne .L70
406 movq %rbp, (%r12)
407 movq $1, 0(%r13)
408 xorl %ebp, %ebp
409 jmp .L68
410 .p2align 4,,10
411 .p2align 3
412 .L70:
413 movabsq $-8446744073709551616, %rcx
414 movq %r12, %rsi
415 movq %r12, %rdi
416 movq %r9, 8(%rsp)
417 movq %r8, (%rsp)
418 call __mpn_mul_1
419 xorl %ecx, %ecx
420 movq %rbp, %rdx
421 addq (%r12), %rdx
422 movq 0(%r13), %rsi
423 movq (%rsp), %r8
424 movq 8(%rsp), %r9
425 setc %cl
426 movq %rdx, (%r12)
427 testq %rcx, %rcx
428 jne .L114
429 .L73:
430 testq %rax, %rax
431 je .L110
432 movq 0(%r13), %rdx
433 cmpq $858, %rdx
434 jg .L115
435 movq %rax, (%r12,%rdx,8)
436 xorl %ebp, %ebp
437 addq $1, 0(%r13)
438 xorl %edx, %edx
439 jmp .L68
440 .p2align 4,,10
441 .p2align 3
442 .L113:
443 movq (%r8), %rcx
444 testq %rcx, %rcx
445 jle .L84
446 movl $19, %eax
447 subl %edx, %eax
448 cltq
449 cmpq %rax, %rcx
450 jle .L116
451 .L84:
452 movslq %edx, %rax
453 leaq _tens_in_limb(%rip), %rdx
454 movq (%rdx,%rax,8), %rcx
455 movq 0(%r13), %rdx
456 testq %rdx, %rdx
457 jne .L86
458 .L117:
459 movq %rbp, (%r12)
460 movq $1, 0(%r13)
461 .L100:
462 addq $24, %rsp
463 movq %rbx, %rax
464 popq %rbx
465 popq %rbp
466 popq %r12
467 popq %r13
468 popq %r14
469 popq %r15
471 .p2align 4,,10
472 .p2align 3
473 .L112:
474 movzbl 1(%r14), %eax
475 testb %al, %al
476 je .L79
477 cmpb 1(%rbx), %al
478 jne .L78
479 leaq 2(%rbx), %rcx
480 leaq 2(%r14), %rsi
481 jmp .L80
482 .p2align 4,,10
483 .p2align 3
484 .L81:
485 addq $1, %rcx
486 addq $1, %rsi
487 cmpb %al, %dil
488 jne .L78
489 .L80:
490 movzbl (%rsi), %edi
491 movq %rcx, %r10
492 movsbq (%rcx), %rax
493 testb %dil, %dil
494 jne .L81
495 .L82:
496 movq %r10, %rbx
497 jmp .L77
498 .p2align 4,,10
499 .p2align 3
500 .L114:
501 subq $1, %rsi
502 xorl %edx, %edx
503 jmp .L74
504 .p2align 4,,10
505 .p2align 3
506 .L75:
507 movq 8(%r12,%rdx,8), %rdi
508 leaq 1(%rdi), %rcx
509 movq %rcx, 8(%r12,%rdx,8)
510 addq $1, %rdx
511 testq %rcx, %rcx
512 jne .L73
513 .L74:
514 cmpq %rdx, %rsi
515 jne .L75
516 addq $1, %rax
517 jmp .L73
518 .p2align 4,,10
519 .p2align 3
520 .L116:
521 movslq %edx, %rax
522 movq $0, (%r8)
523 movq 0(%r13), %rdx
524 leaq _tens_in_limb(%rip), %rsi
525 imulq (%rsi,%rcx,8), %rbp
526 addq %rax, %rcx
527 testq %rdx, %rdx
528 movq (%rsi,%rcx,8), %rcx
529 je .L117
530 .L86:
531 movq %r12, %rsi
532 movq %r12, %rdi
533 call __mpn_mul_1
534 xorl %ecx, %ecx
535 movq %rbp, %rdx
536 addq (%r12), %rdx
537 movq 0(%r13), %rsi
538 setc %cl
539 movq %rdx, (%r12)
540 testq %rcx, %rcx
541 je .L90
542 subq $1, %rsi
543 xorl %edx, %edx
544 jmp .L91
545 .p2align 4,,10
546 .p2align 3
547 .L92:
548 movq 8(%r12,%rdx,8), %rdi
549 leaq 1(%rdi), %rcx
550 movq %rcx, 8(%r12,%rdx,8)
551 addq $1, %rdx
552 testq %rcx, %rcx
553 jne .L90
554 .L91:
555 cmpq %rsi, %rdx
556 jne .L92
557 addq $1, %rax
558 .L90:
559 testq %rax, %rax
560 je .L100
561 movq 0(%r13), %rdx
562 cmpq $858, %rdx
563 jg .L118
564 leaq 1(%rdx), %rcx
565 movq %rcx, 0(%r13)
566 movq %rax, (%r12,%rdx,8)
567 jmp .L100
568 .L79:
569 leaq 1(%rbx), %r10
570 movsbq 1(%rbx), %rax
571 jmp .L82
572 .L118:
573 leaq __PRETTY_FUNCTION__.11822(%rip), %rcx
574 leaq .LC6(%rip), %rsi
575 leaq .LC8(%rip), %rdi
576 movl $453, %edx
577 call __assert_fail
578 .L115:
579 leaq __PRETTY_FUNCTION__.11822(%rip), %rcx
580 leaq .LC6(%rip), %rsi
581 leaq .LC8(%rip), %rdi
582 movl $397, %edx
583 call __assert_fail
584 .L111:
585 leaq __PRETTY_FUNCTION__.11822(%rip), %rcx
586 leaq .LC6(%rip), %rsi
587 leaq .LC7(%rip), %rdi
588 movl $380, %edx
589 call __assert_fail
590 .size str_to_mpn.isra.0, .-str_to_mpn.isra.0
591 .section .rodata.str1.1
592 .LC13:
593 .string "decimal_len > 0"
594 .LC14:
595 .string "inf"
596 .LC15:
597 .string "inity"
598 .LC16:
599 .string "nan"
600 .section .rodata.str1.8,"aMS",@progbits,1
601 .align 8
602 .LC17:
603 .string "dig_no <= (uintmax_t) INTMAX_MAX"
604 .align 8
605 .LC18:
606 .string "int_no <= (uintmax_t) (INTMAX_MAX + MIN_EXP - MANT_DIG) / 4"
607 .align 8
608 .LC19:
609 .string "lead_zero == 0 && int_no <= (uintmax_t) INTMAX_MAX / 4"
610 .align 8
611 .LC20:
612 .string "lead_zero <= (uintmax_t) (INTMAX_MAX - MAX_EXP - 3) / 4"
613 .align 8
614 .LC21:
615 .string "int_no <= (uintmax_t) (INTMAX_MAX + MIN_10_EXP - MANT_DIG)"
616 .align 8
617 .LC22:
618 .string "lead_zero == 0 && int_no <= (uintmax_t) INTMAX_MAX"
619 .align 8
620 .LC23:
621 .string "lead_zero <= (uintmax_t) (INTMAX_MAX - MAX_10_EXP - 1)"
622 .section .rodata.str1.1
623 .LC24:
624 .string "dig_no >= int_no"
625 .section .rodata.str1.8
626 .align 8
627 .LC25:
628 .string "lead_zero <= (base == 16 ? (uintmax_t) INTMAX_MAX / 4 : (uintmax_t) INTMAX_MAX)"
629 .align 8
630 .LC26:
631 .string "lead_zero <= (base == 16 ? ((uintmax_t) exponent - (uintmax_t) INTMAX_MIN) / 4 : ((uintmax_t) exponent - (uintmax_t) INTMAX_MIN))"
632 .section .rodata.str1.1
633 .LC27:
634 .string "bits != 0"
635 .section .rodata.str1.8
636 .align 8
637 .LC28:
638 .string "int_no <= (uintmax_t) (exponent < 0 ? (INTMAX_MAX - bits + 1) / 4 : (INTMAX_MAX - exponent - bits + 1) / 4)"
639 .align 8
640 .LC29:
641 .string "dig_no > int_no && exponent <= 0 && exponent >= MIN_10_EXP - (DIG + 2)"
642 .section .rodata.str1.1
643 .LC30:
644 .string "int_no > 0 && exponent == 0"
645 .section .rodata.str1.8
646 .align 8
647 .LC31:
648 .string "int_no == 0 && *startp != L_('0')"
649 .section .rodata.str1.1
650 .LC32:
651 .string "need_frac_digits > 0"
652 .LC33:
653 .string "numsize == 1 && n < d"
654 .LC34:
655 .string "empty == 1"
656 .LC35:
657 .string "numsize == densize"
658 .LC36:
659 .string "cy != 0"
660 .text
661 .p2align 4,,15
662 .globl ____strtold_l_internal
663 .hidden ____strtold_l_internal
664 .type ____strtold_l_internal, @function
665 ____strtold_l_internal:
666 pushq %r15
667 pushq %r14
668 xorl %r10d, %r10d
669 pushq %r13
670 pushq %r12
671 movq %rdi, %r14
672 pushq %rbp
673 pushq %rbx
674 movq %rcx, %r8
675 subq $13912, %rsp
676 testl %edx, %edx
677 movq 8(%rcx), %rax
678 movq %rsi, 8(%rsp)
679 movq $0, 16(%rsp)
680 jne .L629
681 .L120:
682 movq 64(%rax), %r13
683 movq %r8, 32(%rsp)
684 movq %r10, 24(%rsp)
685 movq %r13, %rdi
686 call strlen
687 testq %rax, %rax
688 movq %rax, 40(%rsp)
689 movq 24(%rsp), %r10
690 movq 32(%rsp), %r8
691 je .L630
692 movq $0, 128(%rsp)
693 leaq -1(%r14), %rax
694 movq 104(%r8), %rdi
695 jmp .L122
696 .p2align 4,,10
697 .p2align 3
698 .L389:
699 movq %r11, %rax
700 .L122:
701 movsbq 1(%rax), %rcx
702 leaq 1(%rax), %r11
703 testb $32, 1(%rdi,%rcx,2)
704 movq %rcx, %rdx
705 jne .L389
706 cmpb $45, %cl
707 je .L631
708 cmpb $43, %cl
709 movl $0, 24(%rsp)
710 je .L632
711 .L124:
712 movzbl 0(%r13), %eax
713 testb %al, %al
714 je .L391
715 cmpb %al, %dl
716 jne .L126
717 movl $1, %esi
718 jmp .L127
719 .p2align 4,,10
720 .p2align 3
721 .L128:
722 addq $1, %rsi
723 cmpb %r9b, %cl
724 jne .L126
725 .L127:
726 movzbl 0(%r13,%rsi), %ecx
727 movzbl (%r11,%rsi), %r9d
728 testb %cl, %cl
729 jne .L128
730 .L125:
731 subl $48, %r9d
732 cmpb $9, %r9b
733 jbe .L129
734 .L126:
735 leal -48(%rdx), %esi
736 cmpb $9, %sil
737 jbe .L129
738 movq 112+_nl_C_locobj(%rip), %rax
739 movl (%rax,%rdx,4), %eax
740 cmpb $105, %al
741 je .L633
742 cmpb $110, %al
743 je .L634
744 .L169:
745 cmpq $0, 8(%rsp)
746 jne .L635
747 .L138:
748 fldz
749 .L119:
750 addq $13912, %rsp
751 popq %rbx
752 popq %rbp
753 popq %r12
754 popq %r13
755 popq %r14
756 popq %r15
758 .p2align 4,,10
759 .p2align 3
760 .L129:
761 cmpb $48, %dl
762 movq 112(%r8), %rsi
763 je .L636
764 testq %r10, %r10
765 movl $10, %r9d
766 je .L637
767 .L143:
768 movsbq %dl, %r12
769 movzbl (%r10), %ebp
770 movq %r11, %rbx
771 cmpb $48, %r12b
772 movq $-1, %r15
773 je .L397
774 .p2align 4,,10
775 .p2align 3
776 .L638:
777 testb %bpl, %bpl
778 je .L398
779 cmpb %bpl, (%rbx)
780 jne .L144
781 movl $1, %edx
782 jmp .L148
783 .p2align 4,,10
784 .p2align 3
785 .L149:
786 addq $1, %rdx
787 cmpb %cl, -1(%rbx,%rdx)
788 jne .L144
789 .L148:
790 movzbl (%r10,%rdx), %ecx
791 testb %cl, %cl
792 jne .L149
793 subq $1, %rdx
794 .L147:
795 addq %rbx, %rdx
796 .L146:
797 movsbq 1(%rdx), %r12
798 leaq 1(%rdx), %rbx
799 cmpb $48, %r12b
800 jne .L638
801 .L397:
802 movq %rbx, %rdx
803 jmp .L146
804 .p2align 4,,10
805 .p2align 3
806 .L632:
807 movsbq 1(%r11), %rdx
808 leaq 2(%rax), %r11
809 jmp .L124
810 .p2align 4,,10
811 .p2align 3
812 .L637:
813 movsbq %dl, %r12
814 movq %r11, %rbx
815 movl $10, %r9d
816 .p2align 4,,10
817 .p2align 3
818 .L144:
819 leal -48(%r12), %edx
820 cmpb $9, %dl
821 jbe .L401
822 movsbq %r12b, %rdx
823 movl (%rsi,%rdx,4), %edi
824 leal -97(%rdi), %edx
825 cmpb $5, %dl
826 ja .L435
827 cmpl $16, %r9d
828 je .L401
829 .L435:
830 testb %al, %al
831 je .L152
832 cmpb (%rbx), %al
833 jne .L153
834 movl $1, %edx
835 jmp .L154
836 .p2align 4,,10
837 .p2align 3
838 .L155:
839 addq $1, %rdx
840 cmpb %cl, -1(%rbx,%rdx)
841 jne .L153
842 .L154:
843 movzbl 0(%r13,%rdx), %ecx
844 testb %cl, %cl
845 jne .L155
846 .L152:
847 cmpl $16, %r9d
848 jne .L401
849 cmpq %r11, %rbx
850 jne .L401
851 movq 40(%rsp), %rdi
852 movsbq (%rbx,%rdi), %rdx
853 leal -48(%rdx), %edi
854 cmpb $9, %dil
855 ja .L639
856 .p2align 4,,10
857 .p2align 3
858 .L401:
859 movq %rbx, %rbp
860 xorl %r15d, %r15d
861 .L150:
862 movq $-1, %rcx
863 .L166:
864 leal -48(%r12), %edx
865 cmpb $9, %dl
866 jbe .L159
867 cmpl $16, %r9d
868 je .L640
869 .L160:
870 testq %r10, %r10
871 jne .L641
872 .L162:
873 cmpq $0, 16(%rsp)
874 je .L167
875 cmpq %r11, %rbp
876 ja .L642
877 .L167:
878 xorl %esi, %esi
879 testq %r15, %r15
880 sete %sil
881 negq %rsi
882 testb %al, %al
883 je .L177
884 cmpb %al, 0(%rbp)
885 jne .L407
886 movl $1, %eax
887 jmp .L179
888 .p2align 4,,10
889 .p2align 3
890 .L180:
891 addq $1, %rax
892 cmpb %dl, -1(%rbp,%rax)
893 jne .L407
894 .L179:
895 movzbl 0(%r13,%rax), %edx
896 testb %dl, %dl
897 jne .L180
898 .L177:
899 movq 40(%rsp), %rax
900 movq %r15, %rdx
901 leaq 0(%rbp,%rax), %rcx
902 movsbq (%rcx), %r12
903 movq %rcx, %rbp
904 subq %rcx, %rdx
905 jmp .L373
906 .p2align 4,,10
907 .p2align 3
908 .L643:
909 movq 112(%r8), %rdi
910 movsbq %r12b, %rax
911 movl (%rdi,%rax,4), %eax
912 subl $97, %eax
913 cmpb $5, %al
914 ja .L178
915 .L182:
916 cmpb $48, %r12b
917 je .L181
918 cmpq $-1, %rsi
919 movq %rbp, %rax
920 sete %dil
921 subq %rcx, %rax
922 testb %dil, %dil
923 cmovne %rax, %rsi
924 .L181:
925 addq $1, %rbp
926 movsbq 0(%rbp), %r12
927 .L373:
928 leal -48(%r12), %eax
929 leaq (%rdx,%rbp), %r14
930 cmpb $9, %al
931 jbe .L182
932 cmpl $16, %r9d
933 je .L643
934 .L178:
935 testq %r14, %r14
936 js .L644
937 movq 112(%r8), %rax
938 cmpl $16, %r9d
939 movl (%rax,%r12,4), %eax
940 jne .L436
941 cmpb $112, %al
942 jne .L436
943 .L184:
944 movsbl 1(%rbp), %ecx
945 cmpb $45, %cl
946 je .L645
947 cmpb $43, %cl
948 je .L646
949 leal -48(%rcx), %eax
950 cmpb $9, %al
951 ja .L411
952 cmpl $16, %r9d
953 leaq 1(%rbp), %rdi
954 je .L191
955 .L192:
956 testq %r15, %r15
957 je .L200
958 testq %rsi, %rsi
959 jne .L438
960 testq %r15, %r15
961 js .L438
962 movl $4933, %r11d
963 subq %r15, %r11
964 jmp .L197
965 .p2align 4,,10
966 .p2align 3
967 .L640:
968 movsbq %r12b, %rdx
969 movl (%rsi,%rdx,4), %edx
970 subl $97, %edx
971 cmpb $5, %dl
972 ja .L160
973 .p2align 4,,10
974 .p2align 3
975 .L159:
976 addq $1, %r15
977 movq %rbp, %rdx
978 .L161:
979 leaq 1(%rdx), %rbp
980 movsbq 1(%rdx), %r12
981 jmp .L166
982 .p2align 4,,10
983 .p2align 3
984 .L631:
985 movsbq 1(%r11), %rdx
986 movl $1, 24(%rsp)
987 leaq 2(%rax), %r11
988 jmp .L124
989 .p2align 4,,10
990 .p2align 3
991 .L436:
992 cmpl $16, %r9d
993 je .L411
994 cmpb $101, %al
995 je .L184
996 .L411:
997 movq %rbp, %rdi
998 .L186:
999 cmpq %r15, %r14
1000 jbe .L217
1001 cmpb $48, -1(%rbp)
1002 jne .L176
1003 movq %rbp, %rax
1004 .p2align 4,,10
1005 .p2align 3
1006 .L218:
1007 subq $1, %rax
1008 leaq (%rax,%r14), %rdx
1009 subq %rbp, %rdx
1010 cmpb $48, -1(%rax)
1011 je .L218
1012 cmpq %rdx, %r15
1013 ja .L647
1014 movq %rdx, %r14
1015 movq %rax, %rbp
1016 .L217:
1017 cmpq %r15, %r14
1018 jne .L176
1019 testq %r14, %r14
1020 je .L176
1021 movq 128(%rsp), %rcx
1022 testq %rcx, %rcx
1023 js .L648
1024 cmpq $0, 8(%rsp)
1025 je .L227
1026 .L376:
1027 movq 8(%rsp), %rax
1028 movq %rdi, (%rax)
1029 .L226:
1030 testq %r14, %r14
1031 jne .L227
1032 .L157:
1033 movl 24(%rsp), %r14d
1034 testl %r14d, %r14d
1035 je .L138
1036 fldz
1037 fchs
1038 jmp .L119
1039 .L667:
1040 testb %dl, %dl
1041 movq 16(%rsp), %rsi
1042 je .L176
1043 .L619:
1044 movq %rcx, 128(%rsp)
1045 .p2align 4,,10
1046 .p2align 3
1047 .L176:
1048 cmpq $0, 8(%rsp)
1049 jne .L376
1050 jmp .L226
1051 .L635:
1052 movq 8(%rsp), %rax
1053 fldz
1054 movq %r14, (%rax)
1055 jmp .L119
1056 .p2align 4,,10
1057 .p2align 3
1058 .L407:
1059 movq %r15, %r14
1060 jmp .L178
1061 .p2align 4,,10
1062 .p2align 3
1063 .L636:
1064 movsbq 1(%r11), %rdi
1065 cmpl $120, (%rsi,%rdi,4)
1066 movq %rdi, %r12
1067 je .L140
1068 testq %r10, %r10
1069 movl $10, %r9d
1070 jne .L143
1071 .L141:
1072 movq %r11, %rbx
1073 jmp .L145
1074 .p2align 4,,10
1075 .p2align 3
1076 .L649:
1077 movsbq 1(%rbx), %r12
1078 .L145:
1079 addq $1, %rbx
1080 cmpb $48, %r12b
1081 je .L649
1082 jmp .L144
1083 .p2align 4,,10
1084 .p2align 3
1085 .L227:
1086 testq %rsi, %rsi
1087 je .L228
1088 movzbl 0(%r13), %ecx
1089 movzbl (%rbx), %eax
1090 movzbl 1(%r13), %edi
1091 jmp .L234
1092 .p2align 4,,10
1093 .p2align 3
1094 .L229:
1095 movzbl 1(%rbx), %eax
1096 .L231:
1097 addq $1, %rbx
1098 .L234:
1099 cmpb %al, %cl
1100 jne .L229
1101 testb %dil, %dil
1102 je .L230
1103 movzbl 1(%rbx), %eax
1104 cmpb %dil, %al
1105 jne .L231
1106 movl $2, %eax
1107 jmp .L232
1108 .p2align 4,,10
1109 .p2align 3
1110 .L233:
1111 addq $1, %rax
1112 cmpb %dl, -1(%rbx,%rax)
1113 jne .L416
1114 .L232:
1115 movzbl 0(%r13,%rax), %edx
1116 testb %dl, %dl
1117 jne .L233
1118 .L230:
1119 cmpl $16, %r9d
1120 je .L650
1121 testq %rsi, %rsi
1122 movq %rsi, %rcx
1123 js .L379
1124 movq 128(%rsp), %rax
1125 movabsq $-9223372036854775808, %rdx
1126 addq %rax, %rdx
1127 cmpq %rsi, %rdx
1128 jb .L236
1129 .L237:
1130 movq 40(%rsp), %rdi
1131 subq %rcx, %rax
1132 subq %rsi, %r14
1133 movq %rax, 128(%rsp)
1134 leaq (%rdi,%rsi), %rdx
1135 addq %rdx, %rbx
1136 .L228:
1137 cmpl $16, %r9d
1138 je .L651
1139 movq 128(%rsp), %rcx
1140 testq %rcx, %rcx
1141 js .L652
1142 movq %r14, %rax
1143 subq %r15, %rax
1144 cmpq %rcx, %rax
1145 cmovg %rcx, %rax
1146 .L261:
1147 addq %rax, %r15
1148 subq %rax, %rcx
1149 movl $4933, %eax
1150 subq %r15, %rax
1151 movq %rcx, 128(%rsp)
1152 cmpq %rax, %rcx
1153 jg .L623
1154 cmpq $-4951, %rcx
1155 jl .L653
1156 testq %r15, %r15
1157 jne .L266
1158 testq %r14, %r14
1159 je .L269
1160 leaq 4951(%rcx), %rax
1161 cmpq $4951, %rax
1162 ja .L269
1163 cmpb $48, (%rbx)
1164 je .L291
1165 movl $1, %eax
1166 movabsq $-6148914691236517205, %rsi
1167 subq %rcx, %rax
1168 leaq (%rax,%rax,4), %rdx
1169 addq %rdx, %rdx
1170 movq %rdx, %rax
1171 mulq %rsi
1172 movl $16447, %esi
1173 shrq %rdx
1174 leal 65(%rdx), %eax
1175 movl %ecx, %edx
1176 cmpl $16447, %eax
1177 cmovg %esi, %eax
1178 addl %eax, %ecx
1179 testl %ecx, %ecx
1180 jle .L654
1181 leaq 128(%rsp), %rax
1182 movq $0, 56(%rsp)
1183 xorl %ebp, %ebp
1184 movq %rax, 104(%rsp)
1185 leaq 120(%rsp), %rax
1186 movq %rax, 96(%rsp)
1187 leaq 144(%rsp), %rax
1188 movq %rax, 8(%rsp)
1189 .L293:
1190 movslq %ecx, %rax
1191 movq %r14, %rsi
1192 movl %r14d, %ecx
1193 subl %r15d, %ecx
1194 subq %r15, %rsi
1195 movl $0, 92(%rsp)
1196 cmpq %rsi, %rax
1197 movslq %ecx, %rcx
1198 cmovg %rcx, %rax
1199 addq %r15, %rax
1200 cmpq %rax, %r14
1201 jle .L295
1202 movq %rax, %r14
1203 movl $1, 92(%rsp)
1204 .L295:
1205 movl %r14d, %eax
1206 xorl %r14d, %r14d
1207 movl %ebp, 72(%rsp)
1208 subl %r15d, %eax
1209 movq %rbx, 80(%rsp)
1210 leaq _fpioconst_pow10(%rip), %r13
1211 movl %eax, %r15d
1212 movl %eax, 48(%rsp)
1213 movq 8(%rsp), %rax
1214 subl %edx, %r15d
1215 movl $1, %r12d
1216 movq %r10, 64(%rsp)
1217 movq %r14, %rbx
1218 movq %rax, 32(%rsp)
1219 leaq 7024(%rsp), %rax
1220 movq %rax, 16(%rsp)
1221 movq %rax, %rbp
1222 jmp .L298
1223 .p2align 4,,10
1224 .p2align 3
1225 .L656:
1226 leaq 0(,%r14,8), %rdx
1227 movq %rbp, %rdi
1228 movq %r14, %rbx
1229 call memcpy@PLT
1230 .L296:
1231 addl %r12d, %r12d
1232 addq $24, %r13
1233 testl %r15d, %r15d
1234 je .L655
1235 .L298:
1236 testl %r15d, %r12d
1237 je .L296
1238 movq 8(%r13), %rax
1239 leaq __tens(%rip), %rdi
1240 xorl %r12d, %r15d
1241 testq %rbx, %rbx
1242 leaq -1(%rax), %r14
1243 movq 0(%r13), %rax
1244 leaq 8(%rdi,%rax,8), %rsi
1245 je .L656
1246 movq %r14, %rdx
1247 movq 32(%rsp), %r14
1248 movq %rbx, %r8
1249 movq %rbp, %rcx
1250 movq %r14, %rdi
1251 call __mpn_mul
1252 movq 8(%r13), %rdx
1253 testq %rax, %rax
1254 leaq -1(%rbx,%rdx), %rbx
1255 jne .L426
1256 movq %rbp, %rax
1257 subq $1, %rbx
1258 movq %r14, %rbp
1259 movq %rax, 32(%rsp)
1260 jmp .L296
1261 .p2align 4,,10
1262 .p2align 3
1263 .L646:
1264 movsbl 2(%rbp), %ecx
1265 leal -48(%rcx), %eax
1266 cmpb $9, %al
1267 ja .L411
1268 cmpl $16, %r9d
1269 leaq 2(%rbp), %rdi
1270 jne .L192
1271 .L191:
1272 testq %r15, %r15
1273 je .L657
1274 testq %rsi, %rsi
1275 jne .L437
1276 movabsq $2305843009213693951, %rax
1277 cmpq %rax, %r15
1278 ja .L437
1279 movl $4096, %eax
1280 subq %r15, %rax
1281 leaq 3(,%rax,4), %r11
1282 .L197:
1283 testq %r11, %r11
1284 movl $0, %eax
1285 cmovs %rax, %r11
1286 .L616:
1287 movq %r11, %rax
1288 movabsq $-3689348814741910323, %rdx
1289 movl $0, 16(%rsp)
1290 mulq %rdx
1291 shrq $3, %rdx
1292 leaq (%rdx,%rdx,4), %rax
1293 addq %rax, %rax
1294 subq %rax, %r11
1295 movq %r11, 32(%rsp)
1296 jmp .L194
1297 .p2align 4,,10
1298 .p2align 3
1299 .L416:
1300 movl %edi, %eax
1301 jmp .L231
1302 .p2align 4,,10
1303 .p2align 3
1304 .L645:
1305 movsbl 2(%rbp), %ecx
1306 leaq 2(%rbp), %rdi
1307 leal -48(%rcx), %eax
1308 cmpb $9, %al
1309 ja .L411
1310 cmpl $16, %r9d
1311 je .L658
1312 movabsq $9223372036854770812, %rax
1313 cmpq %rax, %r15
1314 ja .L659
1315 leaq 4995(%r15), %r11
1316 .L617:
1317 movq %r11, %rax
1318 movabsq $-3689348814741910323, %rdx
1319 movl $1, 16(%rsp)
1320 mulq %rdx
1321 shrq $3, %rdx
1322 leaq (%rdx,%rdx,4), %rax
1323 addq %rax, %rax
1324 subq %rax, %r11
1325 movq %r11, 32(%rsp)
1326 .L194:
1327 movq 128(%rsp), %rax
1328 xorl %r12d, %r12d
1329 jmp .L208
1330 .p2align 4,,10
1331 .p2align 3
1332 .L204:
1333 subl $48, %ecx
1334 cmpq %rdx, %rax
1335 movslq %ecx, %rcx
1336 je .L660
1337 .L206:
1338 leaq (%rax,%rax,4), %rax
1339 addq $1, %rdi
1340 movl $1, %r12d
1341 leaq (%rcx,%rax,2), %rax
1342 movsbl (%rdi), %ecx
1343 leal -48(%rcx), %r11d
1344 cmpb $9, %r11b
1345 ja .L661
1346 .L208:
1347 cmpq %rdx, %rax
1348 jle .L204
1349 .L207:
1350 testb %r12b, %r12b
1351 jne .L662
1352 .L205:
1353 cmpq $-1, %rsi
1354 je .L663
1355 movl 16(%rsp), %r12d
1356 movq __libc_errno@gottpoff(%rip), %rax
1357 testl %r12d, %r12d
1358 movl $34, %fs:(%rax)
1359 jne .L664
1360 movl 24(%rsp), %ebx
1361 fldt .LC2(%rip)
1362 testl %ebx, %ebx
1363 je .L214
1364 fldt .LC3(%rip)
1365 fmulp %st, %st(1)
1366 .p2align 4,,10
1367 .p2align 3
1368 .L215:
1369 addq $1, %rdi
1370 movzbl (%rdi), %eax
1371 subl $48, %eax
1372 cmpb $9, %al
1373 jbe .L215
1374 movq 8(%rsp), %rax
1375 testq %rax, %rax
1376 je .L119
1377 movq %rdi, (%rax)
1378 jmp .L119
1379 .p2align 4,,10
1380 .p2align 3
1381 .L660:
1382 cmpq %rcx, 32(%rsp)
1383 jge .L206
1384 jmp .L207
1385 .p2align 4,,10
1386 .p2align 3
1387 .L153:
1388 cmpl $16, %r9d
1389 je .L665
1390 xorl %r15d, %r15d
1391 cmpb $101, %dil
1392 movq %rbx, %rbp
1393 je .L150
1394 jmp .L156
1395 .p2align 4,,10
1396 .p2align 3
1397 .L629:
1398 movq 80(%rax), %rdi
1399 movq %rdi, 16(%rsp)
1400 movzbl (%rdi), %edi
1401 leal -1(%rdi), %edx
1402 movb %dil, 24(%rsp)
1403 cmpb $125, %dl
1404 ja .L387
1405 movq 72(%rax), %r10
1406 cmpb $0, (%r10)
1407 jne .L120
1408 movq $0, 16(%rsp)
1409 xorl %r10d, %r10d
1410 jmp .L120
1411 .p2align 4,,10
1412 .p2align 3
1413 .L633:
1414 leaq _nl_C_locobj(%rip), %rcx
1415 leaq .LC14(%rip), %rsi
1416 movl $3, %edx
1417 movq %r11, %rdi
1418 movq %r11, 16(%rsp)
1419 call __strncasecmp_l
1420 testl %eax, %eax
1421 jne .L169
1422 movq 8(%rsp), %r15
1423 testq %r15, %r15
1424 je .L132
1425 movq 16(%rsp), %r11
1426 leaq _nl_C_locobj(%rip), %rcx
1427 leaq .LC15(%rip), %rsi
1428 movl $5, %edx
1429 leaq 3(%r11), %rbx
1430 movq %r11, 8(%rsp)
1431 movq %rbx, %rdi
1432 call __strncasecmp_l
1433 movq 8(%rsp), %r11
1434 addq $8, %r11
1435 testl %eax, %eax
1436 cmove %r11, %rbx
1437 movq %rbx, (%r15)
1438 .L132:
1439 movl 24(%rsp), %eax
1440 testl %eax, %eax
1441 je .L392
1442 flds .LC12(%rip)
1443 jmp .L119
1444 .p2align 4,,10
1445 .p2align 3
1446 .L634:
1447 leaq _nl_C_locobj(%rip), %rcx
1448 leaq .LC16(%rip), %rsi
1449 movl $3, %edx
1450 movq %r11, %rdi
1451 movq %r11, 16(%rsp)
1452 call __strncasecmp_l
1453 testl %eax, %eax
1454 jne .L169
1455 movq 16(%rsp), %r11
1456 cmpb $40, 3(%r11)
1457 leaq 3(%r11), %rbx
1458 je .L666
1459 flds .LC5(%rip)
1460 .L135:
1461 movq 8(%rsp), %rax
1462 testq %rax, %rax
1463 je .L137
1464 movq %rbx, (%rax)
1465 .L137:
1466 movl 24(%rsp), %r15d
1467 testl %r15d, %r15d
1468 je .L119
1469 fchs
1470 jmp .L119
1471 .p2align 4,,10
1472 .p2align 3
1473 .L391:
1474 movl %edx, %r9d
1475 jmp .L125
1476 .p2align 4,,10
1477 .p2align 3
1478 .L648:
1479 xorl %eax, %eax
1480 cmpl $16, %r9d
1481 movq %rsi, 16(%rsp)
1482 sete %al
1483 subq $1, %rbp
1484 xorl %edx, %edx
1485 leaq 1(%rax,%rax,2), %r12
1486 jmp .L220
1487 .p2align 4,,10
1488 .p2align 3
1489 .L221:
1490 movsbl %al, %r11d
1491 subl $48, %r11d
1492 cmpl $9, %r11d
1493 seta %r11b
1494 .L222:
1495 testb %r11b, %r11b
1496 jne .L223
1497 cmpb $48, %al
1498 jne .L667
1499 addq %r12, %rcx
1500 subq $1, %r15
1501 subq $1, %r14
1502 movq %rcx, %rax
1503 setne %dl
1504 shrq $63, %rax
1505 andb %al, %dl
1506 je .L668
1507 .L223:
1508 subq $1, %rbp
1509 .L220:
1510 cmpl $16, %r9d
1511 movzbl 0(%rbp), %eax
1512 jne .L221
1513 movq 104(%r8), %rsi
1514 movsbq %al, %r11
1515 movzwl (%rsi,%r11,2), %r11d
1516 shrw $12, %r11w
1517 xorl $1, %r11d
1518 andl $1, %r11d
1519 jmp .L222
1520 .L651:
1521 movsbq (%rbx), %rax
1522 movq 104(%r8), %r9
1523 testb $16, 1(%r9,%rax,2)
1524 movq %rax, %rdx
1525 jne .L620
1526 .p2align 4,,10
1527 .p2align 3
1528 .L240:
1529 addq $1, %rbx
1530 movsbq (%rbx), %rax
1531 testb $16, 1(%r9,%rax,2)
1532 movq %rax, %rdx
1533 je .L240
1534 jmp .L620
1535 .p2align 4,,10
1536 .p2align 3
1537 .L242:
1538 addq $1, %rbx
1539 movsbq (%rbx), %rdx
1540 .L620:
1541 cmpb $48, %dl
1542 je .L242
1543 movsbl %dl, %r10d
1544 leaq 1(%rbx), %rax
1545 subl $48, %r10d
1546 cmpl $9, %r10d
1547 ja .L243
1548 .L621:
1549 leaq nbits.11960(%rip), %rdx
1550 movslq %r10d, %r10
1551 movl (%rdx,%r10,4), %edx
1552 testl %edx, %edx
1553 je .L669
1554 movq 128(%rsp), %rsi
1555 movl $64, %ecx
1556 movl $63, %edi
1557 subl %edx, %ecx
1558 subl %edx, %edi
1559 movslq %edx, %r11
1560 salq %cl, %r10
1561 testq %rsi, %rsi
1562 movq %r10, 136(%rsp)
1563 js .L670
1564 movabsq $9223372036854775807, %rcx
1565 subq %rsi, %rcx
1566 subq %r11, %rcx
1567 leaq 4(%rcx), %r11
1568 addq $1, %rcx
1569 cmovs %r11, %rcx
1570 sarq $2, %rcx
1571 .L247:
1572 cmpq %r15, %rcx
1573 jb .L671
1574 subl $1, %edx
1575 movslq %edx, %rdx
1576 leaq -4(%rdx,%r15,4), %rdx
1577 addq %rdx, %rsi
1578 subq $1, %r14
1579 movq %rsi, 128(%rsp)
1580 je .L249
1581 movq %r10, %rbx
1582 xorl %ebp, %ebp
1583 movq 40(%rsp), %r12
1584 jmp .L254
1585 .p2align 4,,10
1586 .p2align 3
1587 .L673:
1588 leal -3(%rdi), %ecx
1589 subl $4, %edi
1590 movq %r11, %rax
1591 movl $1, %ebp
1592 salq %cl, %rdx
1593 orq %rdx, %rbx
1594 testq %r14, %r14
1595 je .L672
1596 .L254:
1597 movsbq (%rax), %rdx
1598 testb $16, 1(%r9,%rdx,2)
1599 movq %rdx, %rcx
1600 jne .L250
1601 addq %r12, %rax
1602 movsbq (%rax), %rcx
1603 .L250:
1604 movsbl %cl, %edx
1605 leaq 1(%rax), %r11
1606 subl $48, %edx
1607 cmpl $9, %edx
1608 jbe .L622
1609 movq 112(%r8), %rdx
1610 movl (%rdx,%rcx,4), %edx
1611 subl $87, %edx
1612 .L622:
1613 subq $1, %r14
1614 cmpl $2, %edi
1615 movslq %edx, %rdx
1616 jg .L673
1617 testb %bpl, %bpl
1618 movl $3, %ecx
1619 cmovne %rbx, %r10
1620 subl %edi, %ecx
1621 movq %rdx, %rbx
1622 shrq %cl, %rbx
1623 leal 61(%rdi), %ecx
1624 orq %rbx, %r10
1625 salq %cl, %rdx
1626 testq %r14, %r14
1627 movq %r10, 136(%rsp)
1628 movq %rdx, %rcx
1629 je .L418
1630 cmpb $48, 1(%rax)
1631 jne .L420
1632 addq $2, %rax
1633 addq %r11, %r14
1634 jmp .L258
1635 .p2align 4,,10
1636 .p2align 3
1637 .L259:
1638 addq $1, %rax
1639 cmpb $48, -1(%rax)
1640 jne .L420
1641 .L258:
1642 cmpq %r14, %rax
1643 jne .L259
1644 .L418:
1645 xorl %r9d, %r9d
1646 .L257:
1647 movl 24(%rsp), %edx
1648 leaq 136(%rsp), %rdi
1649 movl $63, %r8d
1650 call round_and_return
1651 jmp .L119
1652 .L140:
1653 testq %r10, %r10
1654 leaq 2(%r11), %rbx
1655 movzbl 2(%r11), %edx
1656 jne .L395
1657 cmpb $48, %dl
1658 jne .L396
1659 movsbq 3(%r11), %r12
1660 movq $0, 16(%rsp)
1661 movq %rbx, %r11
1662 movl $16, %r9d
1663 jmp .L141
1664 .L641:
1665 movzbl (%r10), %edx
1666 testb %dl, %dl
1667 je .L404
1668 cmpb %dl, 0(%rbp)
1669 jne .L162
1670 movl $1, %edx
1671 jmp .L164
1672 .p2align 4,,10
1673 .p2align 3
1674 .L165:
1675 addq $1, %rdx
1676 cmpb %dil, -1(%rbp,%rdx)
1677 jne .L162
1678 .L164:
1679 movzbl (%r10,%rdx), %edi
1680 testb %dil, %dil
1681 jne .L165
1682 subq $1, %rdx
1683 .L163:
1684 addq %rbp, %rdx
1685 jmp .L161
1686 .L661:
1687 movl 16(%rsp), %r11d
1688 movq %rax, %rdx
1689 negq %rdx
1690 testl %r11d, %r11d
1691 cmovne %rdx, %rax
1692 movq %rax, 128(%rsp)
1693 jmp .L186
1694 .L387:
1695 movq $0, 16(%rsp)
1696 jmp .L120
1697 .L664:
1698 movl 24(%rsp), %ebp
1699 fldt .LC0(%rip)
1700 testl %ebp, %ebp
1701 je .L214
1702 fldt .LC1(%rip)
1703 fmulp %st, %st(1)
1704 jmp .L215
1705 .L243:
1706 movq 112(%r8), %rcx
1707 movl (%rcx,%rdx,4), %r10d
1708 subl $87, %r10d
1709 jmp .L621
1710 .L200:
1711 cmpq $-1, %rsi
1712 je .L413
1713 movabsq $9223372036854770874, %rax
1714 cmpq %rax, %rsi
1715 ja .L674
1716 leaq 4933(%rsi), %r11
1717 jmp .L616
1718 .L639:
1719 movl (%rsi,%rdx,4), %edx
1720 subl $97, %edx
1721 cmpb $5, %dl
1722 jbe .L401
1723 .L156:
1724 movq 16(%rsp), %rcx
1725 movq %r10, %rdx
1726 movq %rbx, %rsi
1727 movq %r11, %rdi
1728 movl %r9d, 32(%rsp)
1729 movq %r11, 16(%rsp)
1730 call __correctly_grouped_prefixmb
1731 cmpq $0, 8(%rsp)
1732 je .L157
1733 movq 16(%rsp), %r11
1734 movl 32(%rsp), %r9d
1735 cmpq %rax, %r11
1736 je .L675
1737 .L158:
1738 movq 8(%rsp), %rdi
1739 .L627:
1740 movq %rax, (%rdi)
1741 jmp .L157
1742 .L670:
1743 movabsq $-9223372036854775808, %rcx
1744 subq %r11, %rcx
1745 sarq $2, %rcx
1746 jmp .L247
1747 .L658:
1748 movabsq $2305843009213689840, %rax
1749 cmpq %rax, %r15
1750 ja .L676
1751 leaq 16445(,%r15,4), %r11
1752 jmp .L617
1753 .p2align 4,,10
1754 .p2align 3
1755 .L655:
1756 movq %rbp, %r9
1757 cmpq 8(%rsp), %r9
1758 movq %rbx, %r14
1759 movq 64(%rsp), %r10
1760 movl 72(%rsp), %ebp
1761 movq 80(%rsp), %rbx
1762 movl %r15d, 88(%rsp)
1763 je .L677
1764 .L299:
1765 subq $8, %rsp
1766 movq %rbx, %rdi
1767 pushq %r10
1768 movq 56(%rsp), %r9
1769 movq 120(%rsp), %r8
1770 movq 112(%rsp), %rcx
1771 movq 24(%rsp), %rdx
1772 movl 64(%rsp), %esi
1773 call str_to_mpn.isra.0
1774 leaq -1(%r14), %rax
1775 bsrq 7040(%rsp,%rax,8), %rbx
1776 movq %rax, 64(%rsp)
1777 popq %rcx
1778 popq %rsi
1779 xorq $63, %rbx
1780 testl %ebx, %ebx
1781 jne .L300
1782 .L624:
1783 movq 120(%rsp), %rdx
1784 .L301:
1785 movq 56(%rsp), %rax
1786 cmpq $1, %r14
1787 movq %rax, 128(%rsp)
1788 je .L304
1789 cmpq $2, %r14
1790 jne .L678
1791 cmpq $1, %rdx
1792 movq 7024(%rsp), %rdi
1793 movq 7032(%rsp), %rsi
1794 movq 144(%rsp), %r12
1795 jg .L312
1796 cmpq %r12, %rsi
1797 jbe .L427
1798 testl %ebp, %ebp
1799 je .L679
1800 movl $64, %eax
1801 leaq 136(%rsp), %rdi
1802 subl %ebp, %eax
1803 movq %rdi, 56(%rsp)
1804 movl %eax, %ebp
1805 je .L316
1806 movl %eax, %ecx
1807 movl $1, %edx
1808 movq %rdi, %rsi
1809 call __mpn_lshift
1810 movq 144(%rsp), %r12
1811 .L316:
1812 movq %r12, %rbx
1813 xorl %r13d, %r13d
1814 xorl %r12d, %r12d
1815 .L317:
1816 orq %r13, %rbx
1817 movq 128(%rsp), %rax
1818 movl $63, %r8d
1819 setne %r9b
1820 orb 92(%rsp), %r9b
1821 subl %ebp, %r8d
1822 leaq -1(%rax), %rsi
1823 andl $1, %r9d
1824 .L626:
1825 movl 24(%rsp), %edx
1826 movq 56(%rsp), %rdi
1827 movslq %r8d, %r8
1828 movq %r12, %rcx
1829 call round_and_return
1830 jmp .L119
1831 .L426:
1832 movq %rbp, %rax
1833 movq 32(%rsp), %rbp
1834 movq %rax, 32(%rsp)
1835 jmp .L296
1836 .L663:
1837 movl 24(%rsp), %r13d
1838 fldz
1839 testl %r13d, %r13d
1840 je .L215
1841 fchs
1842 jmp .L215
1843 .L214:
1844 fmul %st(0), %st
1845 jmp .L215
1846 .L652:
1847 movq %r15, %rax
1848 negq %rax
1849 cmpq %rcx, %rax
1850 cmovl %rcx, %rax
1851 jmp .L261
1852 .L300:
1853 movq 16(%rsp), %rdi
1854 movl %ebx, %ecx
1855 movq %r14, %rdx
1856 movq %rdi, %rsi
1857 call __mpn_lshift
1858 movq 8(%rsp), %rdi
1859 movq 120(%rsp), %rdx
1860 movl %ebx, %ecx
1861 movq %rdi, %rsi
1862 call __mpn_lshift
1863 testq %rax, %rax
1864 je .L624
1865 movq 120(%rsp), %rcx
1866 leaq 1(%rcx), %rdx
1867 movq %rax, 144(%rsp,%rcx,8)
1868 movq %rdx, 120(%rsp)
1869 jmp .L301
1870 .L672:
1871 movq %rbx, 136(%rsp)
1872 .L249:
1873 movl 24(%rsp), %edx
1874 leaq 136(%rsp), %rdi
1875 xorl %r9d, %r9d
1876 xorl %r8d, %r8d
1877 xorl %ecx, %ecx
1878 call round_and_return
1879 jmp .L119
1880 .L266:
1881 leaq 128(%rsp), %r8
1882 leaq 144(%rsp), %rdx
1883 leaq 120(%rsp), %rcx
1884 subq $8, %rsp
1885 movq %rbx, %rdi
1886 movl %r15d, %esi
1887 movq %r8, 112(%rsp)
1888 movq %rcx, 104(%rsp)
1889 movq %rdx, 16(%rsp)
1890 pushq %r10
1891 movq 56(%rsp), %r9
1892 movq %r10, 32(%rsp)
1893 call str_to_mpn.isra.0
1894 movq 144(%rsp), %rdx
1895 movq %rax, %rbx
1896 popq %rdi
1897 popq %r8
1898 testq %rdx, %rdx
1899 movq 120(%rsp), %r12
1900 movq 16(%rsp), %r10
1901 jle .L271
1902 leaq 7024(%rsp), %rax
1903 movl $1, %r9d
1904 leaq _fpioconst_pow10(%rip), %rbp
1905 movq %r12, %rdi
1906 movl %r9d, %r13d
1907 movq %rbx, %r12
1908 movq %rax, 16(%rsp)
1909 movq %rax, %r11
1910 movq 8(%rsp), %rax
1911 movq %rax, 32(%rsp)
1912 .L272:
1913 movslq %r13d, %rax
1914 testq %rdx, %rax
1915 je .L273
1916 .L681:
1917 movq 8(%rbp), %rsi
1918 xorq %rdx, %rax
1919 movq %r10, 56(%rsp)
1920 movq %rax, 128(%rsp)
1921 movq 0(%rbp), %rax
1922 leaq -1(%rsi), %rbx
1923 leaq __tens(%rip), %rsi
1924 cmpq %rdi, %rbx
1925 leaq 8(%rsi,%rax,8), %rsi
1926 jg .L274
1927 movq %rsi, %rcx
1928 movq 32(%rsp), %rsi
1929 movq %rdi, %rdx
1930 movq %rbx, %r8
1931 movq %r11, %rdi
1932 movq %r11, 48(%rsp)
1933 call __mpn_mul
1934 movq 48(%rsp), %r11
1935 movq 56(%rsp), %r10
1936 .L275:
1937 movq 120(%rsp), %rdi
1938 movq 128(%rsp), %rdx
1939 addq %rbx, %rdi
1940 testq %rax, %rax
1941 movq %rdi, 120(%rsp)
1942 jne .L276
1943 subq $1, %rdi
1944 movq %rdi, 120(%rsp)
1945 .L276:
1946 addl %r13d, %r13d
1947 addq $24, %rbp
1948 testq %rdx, %rdx
1949 je .L680
1950 movq 32(%rsp), %rax
1951 movq %r11, 32(%rsp)
1952 movq %rax, %r11
1953 movslq %r13d, %rax
1954 testq %rdx, %rax
1955 jne .L681
1956 .L273:
1957 addl %r13d, %r13d
1958 addq $24, %rbp
1959 jmp .L272
1960 .L274:
1961 movq 32(%rsp), %rcx
1962 movq %rdi, %r8
1963 movq %rbx, %rdx
1964 movq %r11, %rdi
1965 movq %r11, 48(%rsp)
1966 call __mpn_mul
1967 movq 56(%rsp), %r10
1968 movq 48(%rsp), %r11
1969 jmp .L275
1970 .L680:
1971 cmpq 16(%rsp), %r11
1972 movq %r12, %rbx
1973 movq %rdi, %r12
1974 jne .L271
1975 leaq 0(,%rdi,8), %rdx
1976 movq 8(%rsp), %rdi
1977 movq %r11, %rsi
1978 movq %r10, 16(%rsp)
1979 call memcpy@PLT
1980 movq 16(%rsp), %r10
1981 .L271:
1982 leaq -1(%r12), %rdx
1983 movl %r12d, %r13d
1984 sall $6, %r13d
1985 bsrq 144(%rsp,%rdx,8), %rax
1986 xorq $63, %rax
1987 subl %eax, %r13d
1988 cmpl $16384, %r13d
1989 movl %r13d, %ebp
1990 jg .L623
1991 cmpl $64, %r13d
1992 jle .L280
1993 leal -64(%r13), %ecx
1994 movl %ecx, %eax
1995 sarl $6, %eax
1996 andl $63, %ecx
1997 movslq %eax, %rsi
1998 movq 144(%rsp,%rsi,8), %r10
1999 jne .L281
2000 subq $1, %rsi
2001 movq %r10, 136(%rsp)
2002 movl $63, %r8d
2003 movq 144(%rsp,%rsi,8), %r10
2004 .L282:
2005 cmpq $0, 144(%rsp)
2006 jne .L422
2007 movq 8(%rsp), %rcx
2008 movl $1, %eax
2009 .p2align 4,,10
2010 .p2align 3
2011 .L284:
2012 movslq %eax, %rdx
2013 addq $1, %rax
2014 cmpq $0, -8(%rcx,%rax,8)
2015 je .L284
2016 .L283:
2017 cmpq %r15, %r14
2018 movl $1, %r9d
2019 ja .L285
2020 xorl %r9d, %r9d
2021 cmpq %rsi, %rdx
2022 setl %r9b
2023 .L285:
2024 leal -1(%r13), %esi
2025 movl 24(%rsp), %edx
2026 leaq 136(%rsp), %rdi
2027 movq %r10, %rcx
2028 movslq %esi, %rsi
2029 call round_and_return
2030 jmp .L119
2031 .p2align 4,,10
2032 .p2align 3
2033 .L650:
2034 movabsq $2305843009213693951, %rax
2035 cmpq %rax, %rsi
2036 ja .L379
2037 movq 128(%rsp), %rax
2038 movabsq $-9223372036854775808, %rdx
2039 addq %rax, %rdx
2040 shrq $2, %rdx
2041 cmpq %rsi, %rdx
2042 jb .L236
2043 leaq 0(,%rsi,4), %rcx
2044 jmp .L237
2045 .L668:
2046 movq 16(%rsp), %rsi
2047 jmp .L619
2048 .L398:
2049 movq %r15, %rdx
2050 jmp .L147
2051 .L665:
2052 cmpb $112, %dil
2053 jne .L156
2054 cmpq %r11, %rbx
2055 jne .L401
2056 jmp .L156
2057 .L678:
2058 movq 48(%rsp), %rax
2059 movq 16(%rsp), %rdi
2060 movq 7024(%rsp,%rax,8), %r13
2061 leaq -2(%r14), %rax
2062 movq %rax, 96(%rsp)
2063 movq 7024(%rsp,%rax,8), %r15
2064 movq %r14, %rax
2065 subq %rdx, %rax
2066 leaq (%rdi,%rax,8), %rsi
2067 movq 8(%rsp), %rdi
2068 call __mpn_cmp
2069 testl %eax, %eax
2070 movq 120(%rsp), %rdx
2071 js .L334
2072 movq 120(%rsp), %rax
2073 leaq 1(%rax), %rdx
2074 movq $0, 144(%rsp,%rax,8)
2075 movq %rdx, 120(%rsp)
2076 .L334:
2077 cmpq %rdx, %r14
2078 jle .L335
2079 movq %r14, %rbx
2080 subq %rdx, %rbx
2081 movq %rbx, %rax
2082 salq $6, %rax
2083 testl %ebp, %ebp
2084 je .L682
2085 addq 56(%rsp), %rax
2086 cmpq $64, %rax
2087 jne .L338
2088 cmpq $1, %rbx
2089 jne .L683
2090 leaq 136(%rsp), %rax
2091 movq $0, 136(%rsp)
2092 movq %rax, 56(%rsp)
2093 .L340:
2094 movl %ebx, %eax
2095 sall $6, %eax
2096 addl %eax, %ebp
2097 .L337:
2098 testl %edx, %edx
2099 movslq %edx, %rcx
2100 jle .L344
2101 subl $1, %edx
2102 movq 8(%rsp), %rax
2103 addq %rbx, %rcx
2104 movslq %edx, %rdi
2105 movl %edx, %edx
2106 leaq 0(,%rdi,8), %rsi
2107 salq $3, %rdx
2108 subq %rdi, %rcx
2109 addq %rsi, %rax
2110 addq 56(%rsp), %rsi
2111 subq %rdx, %rsi
2112 .p2align 4,,10
2113 .p2align 3
2114 .L343:
2115 movq (%rax), %rdx
2116 movq %rdx, (%rax,%rcx,8)
2117 subq $8, %rax
2118 cmpq %rax, %rsi
2119 jne .L343
2120 .L344:
2121 movq 8(%rsp), %rax
2122 movq %rax, %rdx
2123 addq $8, %rax
2124 leaq (%rax,%rbx,8), %rcx
2125 jmp .L342
2126 .L684:
2127 addq $8, %rax
2128 .L342:
2129 cmpq %rax, %rcx
2130 movq $0, (%rdx)
2131 movq %rax, %rdx
2132 jne .L684
2133 cmpl $64, %ebp
2134 movq $0, 7024(%rsp,%r14,8)
2135 movq 144(%rsp,%r14,8), %rbx
2136 jg .L430
2137 .L348:
2138 leaq 1(%r14), %rax
2139 movq 8(%rsp), %rdi
2140 movq %rax, 72(%rsp)
2141 leal -2(%r14), %eax
2142 movslq %eax, %rcx
2143 movl %eax, %eax
2144 leaq 0(,%rcx,8), %rdx
2145 salq $3, %rax
2146 addq %rdx, %rdi
2147 movq %rdi, 64(%rsp)
2148 movq 56(%rsp), %rdi
2149 leaq (%rdi,%rdx), %r8
2150 subq %rax, %r8
2151 leal -1(%r14), %eax
2152 movq %r8, %rdi
2153 movl %ebp, %r8d
2154 movslq %eax, %r9
2155 movl %eax, 80(%rsp)
2156 movq %rdi, %rbp
2157 subq %rcx, %r9
2158 movq %r9, %rax
2159 movq %r14, %r9
2160 movq %rax, %r14
2161 .p2align 4,,10
2162 .p2align 3
2163 .L352:
2164 cmpq %rbx, %r13
2165 movq $-1, %r12
2166 je .L353
2167 movq 48(%rsp), %rax
2168 movq %rbx, %rdx
2169 movq 96(%rsp), %rsi
2170 movq 144(%rsp,%rax,8), %rax
2171 movq %rax, 32(%rsp)
2172 #APP
2173 # 1727 "../stdlib/strtod_l.c" 1
2174 divq %r13
2175 # 0 "" 2
2176 #NO_APP
2177 movq %rax, %r12
2178 movq %rdx, %rbx
2179 movq %r15, %rax
2180 #APP
2181 # 1728 "../stdlib/strtod_l.c" 1
2182 mulq %r12
2183 # 0 "" 2
2184 #NO_APP
2185 movq %rdx, %rcx
2186 jmp .L354
2187 .p2align 4,,10
2188 .p2align 3
2189 .L685:
2190 xorl %edx, %edx
2191 cmpq %r15, %rax
2192 setb %dl
2193 subq %r15, %rax
2194 subq %rdx, %rcx
2195 .L354:
2196 cmpq %rbx, %rcx
2197 ja .L357
2198 jne .L353
2199 cmpq %rax, 144(%rsp,%rsi,8)
2200 jnb .L353
2201 .L357:
2202 subq $1, %r12
2203 addq %r13, %rbx
2204 jnc .L685
2205 .L353:
2206 movq 8(%rsp), %rbx
2207 movq 72(%rsp), %rdx
2208 movq %r12, %rcx
2209 movq 16(%rsp), %rsi
2210 movq %r9, 40(%rsp)
2211 movl %r8d, 32(%rsp)
2212 movq %rbx, %rdi
2213 call __mpn_submul_1
2214 movq 40(%rsp), %r9
2215 movl 32(%rsp), %r8d
2216 cmpq %rax, 144(%rsp,%r9,8)
2217 je .L358
2218 movq 16(%rsp), %rdx
2219 movq %r9, %rcx
2220 movq %rbx, %rsi
2221 movq %rbx, %rdi
2222 movl %r8d, 40(%rsp)
2223 movq %r9, 32(%rsp)
2224 call __mpn_add_n
2225 testq %rax, %rax
2226 movq 32(%rsp), %r9
2227 movl 40(%rsp), %r8d
2228 je .L686
2229 subq $1, %r12
2230 .L358:
2231 movq 48(%rsp), %rax
2232 movl 80(%rsp), %edx
2233 movq 144(%rsp,%rax,8), %rbx
2234 testl %edx, %edx
2235 movq 64(%rsp), %rax
2236 movq %rbx, 144(%rsp,%r9,8)
2237 jle .L363
2238 .p2align 4,,10
2239 .p2align 3
2240 .L360:
2241 movq (%rax), %rdx
2242 movq %rdx, (%rax,%r14,8)
2243 subq $8, %rax
2244 cmpq %rax, %rbp
2245 jne .L360
2246 .L363:
2247 testl %r8d, %r8d
2248 movq $0, 144(%rsp)
2249 jne .L687
2250 testq %r12, %r12
2251 jne .L364
2252 subq $64, 128(%rsp)
2253 movq $0, 136(%rsp)
2254 jmp .L352
2255 .p2align 4,,10
2256 .p2align 3
2257 .L687:
2258 testl %r8d, %r8d
2259 leal 64(%r8), %r10d
2260 jle .L688
2261 movl $64, %r11d
2262 movl %r11d, %eax
2263 movl %r11d, 32(%rsp)
2264 subl %r8d, %eax
2265 movl %eax, 88(%rsp)
2266 je .L367
2267 movq 56(%rsp), %rdi
2268 movl %eax, %ecx
2269 movl $1, %edx
2270 movq %r9, 104(%rsp)
2271 movl %r10d, 40(%rsp)
2272 movq %rdi, %rsi
2273 call __mpn_lshift
2274 movl 32(%rsp), %r11d
2275 movq %r12, %rax
2276 movq 104(%rsp), %r9
2277 movl 40(%rsp), %r10d
2278 movl %r11d, %ecx
2279 subl 88(%rsp), %ecx
2280 shrq %cl, %rax
2281 orq %rax, 136(%rsp)
2282 .L367:
2283 cmpl $64, %r10d
2284 jg .L689
2285 movl %r10d, %r8d
2286 jmp .L352
2287 .p2align 4,,10
2288 .p2align 3
2289 .L364:
2290 bsrq %r12, %rax
2291 movl $64, %r8d
2292 movq %r12, 136(%rsp)
2293 xorq $63, %rax
2294 subl %eax, %r8d
2295 cltq
2296 subq %rax, 128(%rsp)
2297 jmp .L352
2298 .L688:
2299 movq %r12, 136(%rsp)
2300 jmp .L367
2301 .L689:
2302 movq %r9, %r14
2303 .L351:
2304 testl %r14d, %r14d
2305 movl %r14d, %edx
2306 js .L368
2307 movslq %r14d, %rax
2308 cmpq $0, 144(%rsp,%rax,8)
2309 jne .L368
2310 leal -1(%r14), %eax
2311 movl %r14d, %r14d
2312 movq 8(%rsp), %rsi
2313 cltq
2314 movq %rax, %rcx
2315 subq %r14, %rcx
2316 jmp .L369
2317 .p2align 4,,10
2318 .p2align 3
2319 .L690:
2320 subq $1, %rax
2321 cmpq $0, 8(%rsi,%rax,8)
2322 jne .L368
2323 .L369:
2324 cmpq %rax, %rcx
2325 movl %eax, %edx
2326 jne .L690
2327 .L368:
2328 movq 128(%rsp), %rax
2329 notl %edx
2330 movl $63, %r8d
2331 shrl $31, %edx
2332 subl 88(%rsp), %r8d
2333 movl %edx, %r9d
2334 orl 92(%rsp), %r9d
2335 leaq -1(%rax), %rsi
2336 jmp .L626
2337 .L304:
2338 movq 144(%rsp), %rcx
2339 movq 7024(%rsp), %rsi
2340 cmpq %rsi, %rcx
2341 jnb .L439
2342 cmpq $1, %rdx
2343 jne .L439
2344 xorl %edi, %edi
2345 movl $64, %r8d
2346 .L306:
2347 movq %rcx, %rdx
2348 movq %rdi, %rax
2349 #APP
2350 # 1501 "../stdlib/strtod_l.c" 1
2351 divq %rsi
2352 # 0 "" 2
2353 #NO_APP
2354 testl %ebp, %ebp
2355 movq %rax, %r9
2356 movq %rdx, %rcx
2357 je .L691
2358 movl $64, %r13d
2359 movq %rax, %rbx
2360 leaq 136(%rsp), %rdi
2361 movl %r13d, %eax
2362 movq %rdx, %r12
2363 subl %ebp, %eax
2364 movq %rdi, 56(%rsp)
2365 movl %eax, %ebp
2366 je .L311
2367 movl %eax, %ecx
2368 movl $1, %edx
2369 movq %rdi, %rsi
2370 call __mpn_lshift
2371 movl %r13d, %ecx
2372 movq %rbx, %rax
2373 subl %ebp, %ecx
2374 shrq %cl, %rax
2375 orq %rax, 136(%rsp)
2376 .L311:
2377 testq %r12, %r12
2378 movq 128(%rsp), %rax
2379 movl $63, %r8d
2380 setne %r9b
2381 orb 92(%rsp), %r9b
2382 movl 24(%rsp), %edx
2383 movq 56(%rsp), %rdi
2384 subl %ebp, %r8d
2385 movq %rbx, %rcx
2386 leaq -1(%rax), %rsi
2387 movslq %r8d, %r8
2388 andl $1, %r9d
2389 call round_and_return
2390 jmp .L119
2391 .L691:
2392 testq %r9, %r9
2393 jne .L309
2394 .L692:
2395 movq %r9, %rax
2396 movq %rcx, %rdx
2397 subq $64, 128(%rsp)
2398 #APP
2399 # 1501 "../stdlib/strtod_l.c" 1
2400 divq %rsi
2401 # 0 "" 2
2402 #NO_APP
2403 movq %rax, %r9
2404 movq %rdx, %rcx
2405 testq %r9, %r9
2406 je .L692
2407 .L309:
2408 bsrq %r9, %rax
2409 movl %r8d, %ebp
2410 movq %r9, 136(%rsp)
2411 xorq $63, %rax
2412 movslq %eax, %rdx
2413 subl %eax, %ebp
2414 subq %rdx, 128(%rsp)
2415 jmp .L306
2416 .L392:
2417 flds .LC11(%rip)
2418 jmp .L119
2419 .L642:
2420 movq 16(%rsp), %rcx
2421 movq %r10, %rdx
2422 movq %r11, %rdi
2423 movq %rbp, %rsi
2424 movq %r8, 56(%rsp)
2425 movl %r9d, 48(%rsp)
2426 movq %r10, 32(%rsp)
2427 movq %r11, 16(%rsp)
2428 call __correctly_grouped_prefixmb
2429 cmpq %rax, %rbp
2430 movq 16(%rsp), %r11
2431 movq 32(%rsp), %r10
2432 movl 48(%rsp), %r9d
2433 movq 56(%rsp), %r8
2434 je .L693
2435 cmpq %rax, %r11
2436 je .L169
2437 cmpq %rax, %rbx
2438 ja .L590
2439 movq %rbx, %rdi
2440 movl $0, %r14d
2441 jnb .L590
2442 .L171:
2443 movzbl (%rdi), %esi
2444 leal -48(%rsi), %edx
2445 cmpb $10, %dl
2446 adcq $0, %r14
2447 addq $1, %rdi
2448 cmpq %rdi, %rax
2449 jne .L171
2450 movq %r14, %r15
2451 xorl %esi, %esi
2452 jmp .L176
2453 .L657:
2454 cmpq $-1, %rsi
2455 je .L412
2456 movabsq $2305843009213689855, %rax
2457 cmpq %rax, %rsi
2458 ja .L694
2459 leaq 16387(,%rsi,4), %r11
2460 jmp .L616
2461 .L623:
2462 movl 24(%rsp), %r10d
2463 movq __libc_errno@gottpoff(%rip), %rax
2464 fldt .LC2(%rip)
2465 testl %r10d, %r10d
2466 movl $34, %fs:(%rax)
2467 je .L265
2468 fldt .LC3(%rip)
2469 fmulp %st, %st(1)
2470 jmp .L119
2471 .L280:
2472 cmpq %r15, %r14
2473 jne .L286
2474 subl $1, %r13d
2475 movl $1, %ebx
2476 leaq 136(%rsp), %rdi
2477 movl %r13d, %edx
2478 movq %rbx, %rbp
2479 sarl $31, %edx
2480 subq %r12, %rbp
2481 movq %rdi, 56(%rsp)
2482 shrl $26, %edx
2483 leaq (%rdi,%rbp,8), %rdi
2484 leal 0(%r13,%rdx), %eax
2485 andl $63, %eax
2486 subl %edx, %eax
2487 cmpl $63, %eax
2488 je .L695
2489 movq 8(%rsp), %rsi
2490 movl $63, %ecx
2491 movq %r12, %rdx
2492 subl %eax, %ecx
2493 call __mpn_lshift
2494 subq 120(%rsp), %rbx
2495 testq %rbx, %rbx
2496 jle .L289
2497 .L288:
2498 movq $0, 136(%rsp)
2499 .L289:
2500 movl 24(%rsp), %edx
2501 movq 56(%rsp), %rdi
2502 movslq %r13d, %rsi
2503 xorl %r9d, %r9d
2504 xorl %r8d, %r8d
2505 xorl %ecx, %ecx
2506 call round_and_return
2507 jmp .L119
2508 .L420:
2509 movl $1, %r9d
2510 jmp .L257
2511 .L677:
2512 movq 8(%rsp), %rsi
2513 movq 16(%rsp), %rdi
2514 leaq 0(,%r14,8), %rdx
2515 movq %r10, 32(%rsp)
2516 call memcpy@PLT
2517 movq 32(%rsp), %r10
2518 jmp .L299
2519 .L265:
2520 fmul %st(0), %st
2521 jmp .L119
2522 .L335:
2523 jne .L696
2524 testl %r14d, %r14d
2525 jle .L697
2526 leal -1(%r14), %ecx
2527 movq 8(%rsp), %rax
2528 leaq 136(%rsp), %rdi
2529 movslq %ecx, %rdx
2530 movl %ecx, %ecx
2531 movq %rdi, 56(%rsp)
2532 salq $3, %rdx
2533 salq $3, %rcx
2534 addq %rdx, %rax
2535 addq %rdi, %rdx
2536 subq %rcx, %rdx
2537 movq %rdx, %rcx
2538 .p2align 4,,10
2539 .p2align 3
2540 .L349:
2541 movq (%rax), %rdx
2542 subq $8, %rax
2543 movq %rdx, 16(%rax)
2544 cmpq %rax, %rcx
2545 jne .L349
2546 .L350:
2547 movq $0, 144(%rsp)
2548 movq $0, 7024(%rsp,%r14,8)
2549 movq 144(%rsp,%r14,8), %rbx
2550 jmp .L348
2551 .L312:
2552 movq 152(%rsp), %rbx
2553 .L315:
2554 movq %rdi, %r9
2555 xorl %r8d, %r8d
2556 movl $64, %r10d
2557 negq %r9
2558 .L331:
2559 cmpq %rbx, %rsi
2560 jne .L318
2561 addq %r12, %rbx
2562 jnc .L321
2563 subq %rdi, %rbx
2564 movq %r8, %r13
2565 #APP
2566 # 1607 "../stdlib/strtod_l.c" 1
2567 addq %rdi,%r13
2568 adcq $0,%rbx
2569 # 0 "" 2
2570 #NO_APP
2571 testl %ebp, %ebp
2572 je .L428
2573 movq $-1, %r12
2574 .L323:
2575 movl $64, %r14d
2576 movl %r14d, %eax
2577 subl %ebp, %eax
2578 movl %eax, %ebp
2579 leaq 136(%rsp), %rax
2580 jne .L385
2581 movq %rax, 56(%rsp)
2582 jmp .L317
2583 .p2align 4,,10
2584 .p2align 3
2585 .L318:
2586 movq %r12, %rax
2587 movq %rbx, %rdx
2588 #APP
2589 # 1615 "../stdlib/strtod_l.c" 1
2590 divq %rsi
2591 # 0 "" 2
2592 #NO_APP
2593 movq %rax, %r12
2594 movq %rdx, %rbx
2595 movq %rdi, %rax
2596 #APP
2597 # 1616 "../stdlib/strtod_l.c" 1
2598 mulq %r12
2599 # 0 "" 2
2600 .p2align 4,,10
2601 .p2align 3
2602 #NO_APP
2603 .L329:
2604 cmpq %rbx, %rdx
2605 ja .L325
2606 jne .L326
2607 testq %rax, %rax
2608 je .L326
2609 .L325:
2610 subq $1, %r12
2611 #APP
2612 # 1625 "../stdlib/strtod_l.c" 1
2613 subq %rdi,%rax
2614 sbbq $0,%rdx
2615 # 0 "" 2
2616 #NO_APP
2617 addq %rsi, %rbx
2618 jnc .L329
2619 .L326:
2620 movq %r8, %r13
2621 #APP
2622 # 1630 "../stdlib/strtod_l.c" 1
2623 subq %rax,%r13
2624 sbbq %rdx,%rbx
2625 # 0 "" 2
2626 #NO_APP
2627 testl %ebp, %ebp
2628 jne .L323
2629 testq %r12, %r12
2630 movl $64, %eax
2631 jne .L698
2632 .L330:
2633 movq %r12, 136(%rsp)
2634 subq %rax, 128(%rsp)
2635 movq %r13, %r12
2636 jmp .L331
2637 .L321:
2638 xorl %eax, %eax
2639 testq %rdi, %rdi
2640 movq %rdi, %rdx
2641 setne %al
2642 movq $-1, %r12
2643 subq %rax, %rdx
2644 movq %r9, %rax
2645 jmp .L329
2646 .L428:
2647 movl $64, %ebp
2648 xorl %eax, %eax
2649 movq $-1, %r12
2650 jmp .L330
2651 .L385:
2652 movl %ebp, %ecx
2653 movq %rax, %rdi
2654 movl $1, %edx
2655 movq %rax, %rsi
2656 movq %rax, 56(%rsp)
2657 call __mpn_lshift
2658 movl %r14d, %ecx
2659 movq %r12, %rax
2660 subl %ebp, %ecx
2661 shrq %cl, %rax
2662 orq %rax, 136(%rsp)
2663 jmp .L317
2664 .L413:
2665 movq $3, 32(%rsp)
2666 movl $493, %edx
2667 movl $0, 16(%rsp)
2668 jmp .L194
2669 .L653:
2670 movl 24(%rsp), %r9d
2671 movq __libc_errno@gottpoff(%rip), %rax
2672 fldt .LC0(%rip)
2673 testl %r9d, %r9d
2674 movl $34, %fs:(%rax)
2675 je .L265
2676 fldt .LC1(%rip)
2677 fmulp %st, %st(1)
2678 jmp .L119
2679 .L666:
2680 leaq 7024(%rsp), %rsi
2681 leaq 4(%r11), %rdi
2682 movl $41, %edx
2683 call __strtold_nan
2684 movq 7024(%rsp), %rax
2685 cmpb $41, (%rax)
2686 leaq 1(%rax), %rdx
2687 cmove %rdx, %rbx
2688 jmp .L135
2689 .L286:
2690 movq 8(%rsp), %rsi
2691 leaq 136(%rsp), %rdi
2692 leaq 0(,%r12,8), %rdx
2693 movq %r10, 16(%rsp)
2694 call memcpy@PLT
2695 cmpq %r15, %r14
2696 jbe .L269
2697 movq 128(%rsp), %rax
2698 leaq 4951(%rax), %rdx
2699 cmpq $4951, %rdx
2700 ja .L269
2701 testl %r13d, %r13d
2702 jle .L291
2703 testq %rax, %rax
2704 movq 16(%rsp), %r10
2705 jne .L699
2706 movl $65, %ecx
2707 movslq %r13d, %rax
2708 xorl %edx, %edx
2709 subl %r13d, %ecx
2710 movq %rax, 56(%rsp)
2711 jmp .L293
2712 .L281:
2713 movslq %ecx, %r8
2714 movq %r10, %rdi
2715 subq $1, %r8
2716 shrq %cl, %rdi
2717 cmpq %rsi, %rdx
2718 jg .L382
2719 movq %rdi, 136(%rsp)
2720 jmp .L282
2721 .L675:
2722 leaq -1(%rbx), %rax
2723 cmpl $16, %r9d
2724 cmovne %r14, %rax
2725 jmp .L158
2726 .L427:
2727 xorl %ebx, %ebx
2728 jmp .L315
2729 .L693:
2730 movzbl 0(%r13), %eax
2731 jmp .L167
2732 .L412:
2733 movq $7, 32(%rsp)
2734 movl $1638, %edx
2735 movl $0, 16(%rsp)
2736 jmp .L194
2737 .L590:
2738 movq 8(%rsp), %rdi
2739 testq %rdi, %rdi
2740 jne .L627
2741 jmp .L157
2742 .L682:
2743 subq %rax, 128(%rsp)
2744 leaq 136(%rsp), %rax
2745 movl $0, 88(%rsp)
2746 movq %rax, 56(%rsp)
2747 jmp .L337
2748 .L338:
2749 movl $64, %eax
2750 leaq 136(%rsp), %rdi
2751 subl %ebp, %eax
2752 movq %rdi, 56(%rsp)
2753 movl %eax, %ecx
2754 movl %eax, 88(%rsp)
2755 je .L340
2756 movl $1, %edx
2757 movq %rdi, %rsi
2758 call __mpn_lshift
2759 movq 120(%rsp), %rdx
2760 jmp .L340
2761 .L404:
2762 movq %rcx, %rdx
2763 jmp .L163
2764 .L382:
2765 addl $1, %eax
2766 movl $64, %edx
2767 cltq
2768 subl %ecx, %edx
2769 movq 144(%rsp,%rax,8), %rax
2770 movl %edx, %ecx
2771 salq %cl, %rax
2772 orq %rax, %rdi
2773 movq %rdi, 136(%rsp)
2774 jmp .L282
2775 .L695:
2776 movq 8(%rsp), %rsi
2777 leaq 0(,%r12,8), %rdx
2778 call memcpy@PLT
2779 testq %rbp, %rbp
2780 jle .L289
2781 jmp .L288
2782 .L679:
2783 movq 56(%rsp), %rax
2784 movq %r12, %rbx
2785 xorl %r12d, %r12d
2786 subq $64, %rax
2787 movq %rax, 128(%rsp)
2788 jmp .L315
2789 .L697:
2790 leaq 136(%rsp), %rax
2791 movq %rax, 56(%rsp)
2792 jmp .L350
2793 .L422:
2794 xorl %edx, %edx
2795 jmp .L283
2796 .L430:
2797 xorl %r12d, %r12d
2798 jmp .L351
2799 .L698:
2800 bsrq %r12, %rdx
2801 movl %r10d, %ebp
2802 xorq $63, %rdx
2803 movslq %edx, %rax
2804 subl %edx, %ebp
2805 jmp .L330
2806 .L630:
2807 leaq __PRETTY_FUNCTION__.11872(%rip), %rcx
2808 leaq .LC6(%rip), %rsi
2809 leaq .LC13(%rip), %rdi
2810 movl $598, %edx
2811 call __assert_fail
2812 .L291:
2813 leaq __PRETTY_FUNCTION__.11872(%rip), %rcx
2814 leaq .LC6(%rip), %rsi
2815 leaq .LC31(%rip), %rdi
2816 movl $1376, %edx
2817 call __assert_fail
2818 .L269:
2819 leaq __PRETTY_FUNCTION__.11872(%rip), %rcx
2820 leaq .LC6(%rip), %rsi
2821 leaq .LC29(%rip), %rdi
2822 movl $1360, %edx
2823 call __assert_fail
2824 .L437:
2825 leaq __PRETTY_FUNCTION__.11872(%rip), %rcx
2826 leaq .LC6(%rip), %rsi
2827 leaq .LC19(%rip), %rdi
2828 movl $914, %edx
2829 call __assert_fail
2830 .L696:
2831 leaq __PRETTY_FUNCTION__.11872(%rip), %rcx
2832 leaq .LC6(%rip), %rsi
2833 leaq .LC35(%rip), %rdi
2834 movl $1708, %edx
2835 call __assert_fail
2836 .L676:
2837 leaq __PRETTY_FUNCTION__.11872(%rip), %rcx
2838 leaq .LC6(%rip), %rsi
2839 leaq .LC18(%rip), %rdi
2840 movl $906, %edx
2841 call __assert_fail
2842 .L686:
2843 leaq __PRETTY_FUNCTION__.11872(%rip), %rcx
2844 leaq .LC6(%rip), %rsi
2845 leaq .LC36(%rip), %rdi
2846 movl $1750, %edx
2847 call __assert_fail
2848 .L662:
2849 movq %rax, 128(%rsp)
2850 jmp .L205
2851 .L669:
2852 leaq __PRETTY_FUNCTION__.11872(%rip), %rcx
2853 leaq .LC6(%rip), %rsi
2854 leaq .LC27(%rip), %rdi
2855 movl $1100, %edx
2856 call __assert_fail
2857 .L694:
2858 leaq __PRETTY_FUNCTION__.11872(%rip), %rcx
2859 leaq .LC6(%rip), %rsi
2860 leaq .LC20(%rip), %rdi
2861 movl $926, %edx
2862 call __assert_fail
2863 .L699:
2864 leaq __PRETTY_FUNCTION__.11872(%rip), %rcx
2865 leaq .LC6(%rip), %rsi
2866 leaq .LC30(%rip), %rdi
2867 movl $1370, %edx
2868 call __assert_fail
2869 .L438:
2870 leaq __PRETTY_FUNCTION__.11872(%rip), %rcx
2871 leaq .LC6(%rip), %rsi
2872 leaq .LC22(%rip), %rdi
2873 movl $946, %edx
2874 call __assert_fail
2875 .L683:
2876 leaq __PRETTY_FUNCTION__.11872(%rip), %rcx
2877 leaq .LC6(%rip), %rsi
2878 leaq .LC34(%rip), %rdi
2879 movl $1671, %edx
2880 call __assert_fail
2881 .L396:
2882 movq %rbx, %r11
2883 movq $0, 16(%rsp)
2884 movsbq %dl, %r12
2885 movl $16, %r9d
2886 jmp .L144
2887 .L439:
2888 leaq __PRETTY_FUNCTION__.11872(%rip), %rcx
2889 leaq .LC6(%rip), %rsi
2890 leaq .LC33(%rip), %rdi
2891 movl $1497, %edx
2892 call __assert_fail
2893 .L659:
2894 leaq __PRETTY_FUNCTION__.11872(%rip), %rcx
2895 leaq .LC6(%rip), %rsi
2896 leaq .LC21(%rip), %rdi
2897 movl $938, %edx
2898 call __assert_fail
2899 .L674:
2900 leaq __PRETTY_FUNCTION__.11872(%rip), %rcx
2901 leaq .LC6(%rip), %rsi
2902 leaq .LC23(%rip), %rdi
2903 movl $958, %edx
2904 call __assert_fail
2905 .L644:
2906 leaq __PRETTY_FUNCTION__.11872(%rip), %rcx
2907 leaq .LC6(%rip), %rsi
2908 leaq .LC17(%rip), %rdi
2909 movl $875, %edx
2910 call __assert_fail
2911 .L647:
2912 leaq __PRETTY_FUNCTION__.11872(%rip), %rcx
2913 leaq .LC6(%rip), %rsi
2914 leaq .LC24(%rip), %rdi
2915 movl $1021, %edx
2916 call __assert_fail
2917 .L654:
2918 leaq __PRETTY_FUNCTION__.11872(%rip), %rcx
2919 leaq .LC6(%rip), %rsi
2920 leaq .LC32(%rip), %rdi
2921 movl $1397, %edx
2922 call __assert_fail
2923 .L236:
2924 leaq __PRETTY_FUNCTION__.11872(%rip), %rcx
2925 leaq .LC6(%rip), %rsi
2926 leaq .LC26(%rip), %rdi
2927 movl $1076, %edx
2928 call __assert_fail
2929 .L379:
2930 leaq __PRETTY_FUNCTION__.11872(%rip), %rcx
2931 leaq .LC6(%rip), %rsi
2932 leaq .LC25(%rip), %rdi
2933 movl $1072, %edx
2934 call __assert_fail
2935 .L671:
2936 leaq __PRETTY_FUNCTION__.11872(%rip), %rcx
2937 leaq .LC6(%rip), %rsi
2938 leaq .LC28(%rip), %rdi
2939 movl $1121, %edx
2940 call __assert_fail
2941 .L395:
2942 movq %rbx, %r11
2943 movl $16, %r9d
2944 movq $0, 16(%rsp)
2945 jmp .L143
2946 .size ____strtold_l_internal, .-____strtold_l_internal
2947 .p2align 4,,15
2948 .weak __strtold_l
2949 .hidden __strtold_l
2950 .type __strtold_l, @function
2951 __strtold_l:
2952 movq %rdx, %rcx
2953 xorl %edx, %edx
2954 jmp ____strtold_l_internal
2955 .size __strtold_l, .-__strtold_l
2956 .weak strtold_l
2957 .set strtold_l,__strtold_l
2958 .weak strtof64x_l
2959 .set strtof64x_l,strtold_l
2960 .section .rodata.str1.8
2961 .align 8
2962 .type __PRETTY_FUNCTION__.11822, @object
2963 .size __PRETTY_FUNCTION__.11822, 11
2964 __PRETTY_FUNCTION__.11822:
2965 .string "str_to_mpn"
2966 .section .rodata
2967 .align 32
2968 .type nbits.11960, @object
2969 .size nbits.11960, 64
2970 nbits.11960:
2971 .long 0
2972 .long 1
2973 .long 2
2974 .long 2
2975 .long 3
2976 .long 3
2977 .long 3
2978 .long 3
2979 .long 4
2980 .long 4
2981 .long 4
2982 .long 4
2983 .long 4
2984 .long 4
2985 .long 4
2986 .long 4
2987 .section .rodata.str1.16,"aMS",@progbits,1
2988 .align 16
2989 .type __PRETTY_FUNCTION__.11872, @object
2990 .size __PRETTY_FUNCTION__.11872, 23
2991 __PRETTY_FUNCTION__.11872:
2992 .string "____strtold_l_internal"
2993 .section .rodata.cst16,"aM",@progbits,16
2994 .align 16
2995 .LC0:
2996 .long 0
2997 .long 2147483648
2998 .long 1
2999 .long 0
3000 .align 16
3001 .LC1:
3002 .long 0
3003 .long 2147483648
3004 .long 32769
3005 .long 0
3006 .align 16
3007 .LC2:
3008 .long 4294967295
3009 .long 4294967295
3010 .long 32766
3011 .long 0
3012 .align 16
3013 .LC3:
3014 .long 4294967295
3015 .long 4294967295
3016 .long 65534
3017 .long 0
3018 .section .rodata.cst4,"aM",@progbits,4
3019 .align 4
3020 .LC5:
3021 .long 2143289344
3022 .align 4
3023 .LC11:
3024 .long 2139095040
3025 .align 4
3026 .LC12:
3027 .long 4286578688
3028 .hidden __strtold_nan
3029 .hidden __mpn_add_n
3030 .hidden __mpn_submul_1
3031 .hidden __mpn_cmp
3032 .hidden __mpn_lshift
3033 .hidden __correctly_grouped_prefixmb
3034 .hidden __strncasecmp_l
3035 .hidden __mpn_mul
3036 .hidden __tens
3037 .hidden _fpioconst_pow10
3038 .hidden _nl_C_locobj
3039 .hidden strlen
3040 .hidden __assert_fail
3041 .hidden __mpn_mul_1
3042 .hidden __mpn_construct_long_double
3043 .hidden __mpn_rshift
3044 .hidden abort