clarify the purpose of this project
[nyanglibc.git] / nptl / pthread_create.shared.s
blob5bc79adf551f92f0ddf6fdc2df6735b336dc4176
1 .text
2 #APP
3 .symver __pthread_create_2_1,pthread_create@@GLIBC_2.2.5
4 #NO_APP
5 .p2align 4,,15
6 .type free_stacks, @function
7 free_stacks:
8 pushq %r13
9 pushq %r12
10 leaq stack_cache(%rip), %r12
11 pushq %rbp
12 pushq %rbx
13 movq %rdi, %r13
14 subq $8, %rsp
15 movq 8+stack_cache(%rip), %rbx
16 cmpq %r12, %rbx
17 movq 8(%rbx), %rbp
18 jne .L4
19 jmp .L1
20 .p2align 4,,10
21 .p2align 3
22 .L6:
23 cmpq %r12, %rbp
24 movq 8(%rbp), %rax
25 movq %rbp, %rbx
26 je .L1
27 movq %rax, %rbp
28 .L4:
29 movl 16(%rbx), %eax
30 testl %eax, %eax
31 jg .L6
32 movq %rbx, in_flight_stack(%rip)
33 movq 8(%rbx), %rdx
34 movq (%rbx), %rax
35 movq %rdx, 8(%rax)
36 movq 8(%rbx), %rdx
37 movq %rax, (%rdx)
38 leaq -704(%rbx), %rdi
39 xorl %esi, %esi
40 movq 984(%rbx), %rax
41 movq $0, in_flight_stack(%rip)
42 subq %rax, stack_cache_actsize(%rip)
43 call _dl_deallocate_tls@PLT
44 movq 984(%rbx), %rsi
45 movq 976(%rbx), %rdi
46 call __munmap@PLT
47 testl %eax, %eax
48 jne .L11
49 cmpq %r13, stack_cache_actsize(%rip)
50 ja .L6
51 .L1:
52 addq $8, %rsp
53 popq %rbx
54 popq %rbp
55 popq %r12
56 popq %r13
57 ret
58 .L11:
59 call abort@PLT
60 .size free_stacks, .-free_stacks
61 .p2align 4,,15
62 .type change_stack_perm, @function
63 change_stack_perm:
64 subq $8, %rsp
65 movq 1696(%rdi), %rax
66 movq 1688(%rdi), %rsi
67 movl $7, %edx
68 subq %rax, %rsi
69 addq 1680(%rdi), %rax
70 movq %rax, %rdi
71 call __mprotect@PLT
72 testl %eax, %eax
73 je .L12
74 movq errno@gottpoff(%rip), %rax
75 movl %fs:(%rax), %eax
76 .L12:
77 addq $8, %rsp
78 ret
79 .size change_stack_perm, .-change_stack_perm
80 .section .rodata.str1.8,"aMS",@progbits,1
81 .align 8
82 .LC0:
83 .string "../sysdeps/unix/sysv/linux/createthread.c"
84 .section .rodata.str1.1,"aMS",@progbits,1
85 .LC1:
86 .string "*stopped_start"
87 .text
88 .p2align 4,,15
89 .type create_thread, @function
90 create_thread:
91 pushq %r14
92 pushq %r13
93 movq %r8, %r14
94 pushq %r12
95 pushq %rbp
96 movq %rsi, %rbp
97 pushq %rbx
98 movq %rdx, %r12
99 movq %rdi, %rbx
100 movq %rcx, %rsi
101 subq $16, %rsp
102 testq %rbp, %rbp
103 je .L23
104 movq 40(%rbp), %rax
105 testq %rax, %rax
106 je .L21
107 cmpq $0, (%rax)
108 movl $1, %r13d
109 je .L21
110 .L22:
111 movl $1, %eax
112 movb $1, (%r12)
113 movb %al, 1555(%rbx)
114 cmpb $0, (%r12)
115 je .L25
116 .p2align 4,,10
117 .p2align 3
118 .L51:
119 leaq 1560(%rbx), %rdi
120 xorl %eax, %eax
121 movl $1, %edx
122 lock cmpxchgl %edx, (%rdi)
123 je .L25
124 movq %rsi, 8(%rsp)
125 call __lll_lock_wait_private
126 movq 8(%rsp), %rsi
127 jmp .L25
128 .p2align 4,,10
129 .p2align 3
130 .L21:
131 testb $2, 8(%rbp)
132 jne .L50
133 .L23:
134 movzbl (%r12), %eax
135 xorl %r13d, %r13d
136 movb %al, 1555(%rbx)
137 cmpb $0, (%r12)
138 jne .L51
139 .L25:
140 leaq 720(%rbx), %r8
141 subq $8, %rsp
142 leaq start_thread(%rip), %rdi
143 movq %rbx, %rcx
144 movl $4001536, %edx
145 xorl %eax, %eax
146 pushq %r8
147 movq %rbx, %r9
148 call __clone@PLT
149 cmpl $-1, %eax
150 popq %rdx
151 popq %rcx
152 je .L52
153 testq %rbp, %rbp
154 movb $1, (%r14)
155 je .L33
156 testl %r13d, %r13d
157 je .L30
158 cmpb $0, (%r12)
159 je .L53
160 movq 40(%rbp), %rax
161 movl 720(%rbx), %edi
162 movq 8(%rax), %rsi
163 movq (%rax), %rdx
164 movl $203, %eax
165 #APP
166 # 122 "../sysdeps/unix/sysv/linux/createthread.c" 1
167 syscall
169 # 0 "" 2
170 #NO_APP
171 cmpl $-4096, %eax
172 ja .L49
173 .L30:
174 testb $2, 8(%rbp)
175 je .L33
176 cmpb $0, (%r12)
177 je .L54
178 movl 1596(%rbx), %esi
179 movl 720(%rbx), %edi
180 leaq 1592(%rbx), %rdx
181 movl $144, %eax
182 #APP
183 # 144 "../sysdeps/unix/sysv/linux/createthread.c" 1
184 syscall
186 # 0 "" 2
187 #NO_APP
188 cmpl $-4096, %eax
189 ja .L49
190 .L33:
191 xorl %eax, %eax
192 .L18:
193 addq $16, %rsp
194 popq %rbx
195 popq %rbp
196 popq %r12
197 popq %r13
198 popq %r14
200 .p2align 4,,10
201 .p2align 3
202 .L49:
203 .L32:
204 movl %eax, %ebp
205 call __getpid@PLT
206 movl 720(%rbx), %esi
207 movl %eax, %edi
208 movl $32, %edx
209 movl $234, %eax
210 #APP
211 # 133 "../sysdeps/unix/sysv/linux/createthread.c" 1
212 syscall
214 # 0 "" 2
215 #NO_APP
216 movl %ebp, %eax
217 negl %eax
218 jmp .L18
219 .p2align 4,,10
220 .p2align 3
221 .L52:
222 movq errno@gottpoff(%rip), %rax
223 movl %fs:(%rax), %eax
224 addq $16, %rsp
225 popq %rbx
226 popq %rbp
227 popq %r12
228 popq %r13
229 popq %r14
231 .p2align 4,,10
232 .p2align 3
233 .L50:
234 xorl %r13d, %r13d
235 jmp .L22
236 .L54:
237 leaq __PRETTY_FUNCTION__.13521(%rip), %rcx
238 leaq .LC0(%rip), %rsi
239 leaq .LC1(%rip), %rdi
240 movl $142, %edx
241 call __assert_fail@PLT
242 .L53:
243 leaq __PRETTY_FUNCTION__.13521(%rip), %rcx
244 leaq .LC0(%rip), %rsi
245 leaq .LC1(%rip), %rdi
246 movl $120, %edx
247 call __assert_fail@PLT
248 .size create_thread, .-create_thread
249 .section .rodata.str1.8
250 .align 8
251 .LC2:
252 .string "The futex facility returned an unexpected error code.\n"
253 .text
254 .p2align 4,,15
255 .type setxid_mark_thread.isra.0, @function
256 setxid_mark_thread.isra.0:
257 pushq %r12
258 pushq %rbp
259 movq %rdi, %r8
260 pushq %rbx
261 cmpl $-1, 1564(%rdi)
262 je .L71
263 .L56:
264 movl $0, 1564(%r8)
265 .L63:
266 movl 776(%r8), %eax
267 testb $16, %al
268 jne .L72
269 movl %eax, %edx
270 orl $64, %edx
271 lock cmpxchgl %edx, 776(%r8)
272 jne .L63
273 .L55:
274 popq %rbx
275 popq %rbp
276 popq %r12
278 .p2align 4,,10
279 .p2align 3
280 .L71:
281 leaq 1564(%rdi), %rbx
282 movl $-2, %r9d
283 movl $-1, %eax
284 lock cmpxchgl %r9d, (%rbx)
285 jne .L56
286 movl $202, %ebp
287 movl $1, %r12d
288 jmp .L59
289 .p2align 4,,10
290 .p2align 3
291 .L57:
292 cmpl $-2, 1564(%r8)
293 jne .L56
294 .L59:
295 xorl %r10d, %r10d
296 movl %r9d, %edx
297 movl $128, %esi
298 movq %rbx, %rdi
299 movl %ebp, %eax
300 #APP
301 # 146 "../sysdeps/nptl/futex-internal.h" 1
302 syscall
304 # 0 "" 2
305 #NO_APP
306 cmpq $-4096, %rax
307 jbe .L57
308 leal 11(%rax), %ecx
309 cmpl $11, %ecx
310 ja .L58
311 movq %r12, %rax
312 salq %cl, %rax
313 testl $2177, %eax
314 jne .L57
315 jmp .L58
316 .p2align 4,,10
317 .p2align 3
318 .L72:
319 testb $64, %al
320 jne .L55
321 movl $1, 1564(%r8)
322 leaq 1564(%r8), %rdi
323 xorl %r10d, %r10d
324 movl $1, %edx
325 movl $129, %esi
326 movl $202, %eax
327 #APP
328 # 209 "../sysdeps/nptl/futex-internal.h" 1
329 syscall
331 # 0 "" 2
332 #NO_APP
333 cmpq $-4096, %rax
334 jbe .L55
335 cmpl $-22, %eax
336 je .L55
337 cmpl $-14, %eax
338 je .L55
339 .L58:
340 leaq .LC2(%rip), %rdi
341 call __libc_fatal@PLT
342 .size setxid_mark_thread.isra.0, .-setxid_mark_thread.isra.0
343 .p2align 4,,15
344 .type setxid_unmark_thread.isra.2, @function
345 setxid_unmark_thread.isra.2:
346 .L75:
347 movl 776(%rdi), %eax
348 testb $64, %al
349 je .L73
350 movl %eax, %edx
351 andl $-65, %edx
352 lock cmpxchgl %edx, 776(%rdi)
353 jne .L75
354 movl $1, 1564(%rdi)
355 xorl %r10d, %r10d
356 addq $1564, %rdi
357 movl $1, %edx
358 movl $129, %esi
359 movl $202, %eax
360 #APP
361 # 209 "../sysdeps/nptl/futex-internal.h" 1
362 syscall
364 # 0 "" 2
365 #NO_APP
366 cmpq $-4096, %rax
367 ja .L86
368 .L73:
369 rep ret
370 .p2align 4,,10
371 .p2align 3
372 .L86:
373 cmpl $-22, %eax
374 je .L73
375 cmpl $-14, %eax
376 je .L73
377 leaq .LC2(%rip), %rdi
378 subq $8, %rsp
379 call __libc_fatal@PLT
380 .size setxid_unmark_thread.isra.2, .-setxid_unmark_thread.isra.2
381 .p2align 4,,15
382 .type setxid_signal_thread.part.4, @function
383 setxid_signal_thread.part.4:
384 pushq %rbp
385 pushq %rbx
386 movq %rsi, %rbp
387 movq %rdi, %rbx
388 subq $8, %rsp
389 call __getpid@PLT
390 movl 720(%rbp), %esi
391 movl %eax, %edi
392 movl $33, %edx
393 movl $234, %eax
394 #APP
395 # 1031 "allocatestack.c" 1
396 syscall
398 # 0 "" 2
399 #NO_APP
400 xorl %edx, %edx
401 cmpl $-4096, %eax
402 ja .L87
403 #APP
404 # 1036 "allocatestack.c" 1
405 lock;incl 32(%rbx)
406 # 0 "" 2
407 #NO_APP
408 movl $1, %edx
409 .L87:
410 addq $8, %rsp
411 movl %edx, %eax
412 popq %rbx
413 popq %rbp
415 .size setxid_signal_thread.part.4, .-setxid_signal_thread.part.4
416 .p2align 4,,15
417 .type __nptl_deallocate_tsd.part.5, @function
418 __nptl_deallocate_tsd.part.5:
419 pushq %r15
420 pushq %r14
421 pushq %r13
422 pushq %r12
423 leaq __GI___pthread_keys(%rip), %r13
424 pushq %rbp
425 pushq %rbx
426 subq $24, %rsp
427 movq $4, 8(%rsp)
428 .L100:
429 #APP
430 # 269 "pthread_create.c" 1
431 movb $0,%fs:1552
432 # 0 "" 2
433 #NO_APP
434 movl $32, %r12d
435 xorl %ebp, %ebp
436 .p2align 4,,10
437 .p2align 3
438 .L98:
439 #APP
440 # 275 "pthread_create.c" 1
441 movq %fs:1296(,%rbp,8),%rbx
442 # 0 "" 2
443 #NO_APP
444 testq %rbx, %rbx
445 je .L93
446 movq %rbp, %r15
447 movq %r12, %rax
448 addq $8, %rbx
449 salq $9, %r15
450 salq $4, %rax
451 addq %r13, %r15
452 leaq (%rax,%r13), %r14
453 jmp .L97
454 .p2align 4,,10
455 .p2align 3
456 .L95:
457 addq $16, %r15
458 addq $16, %rbx
459 cmpq %r14, %r15
460 je .L93
461 .L97:
462 movq (%rbx), %rdi
463 testq %rdi, %rdi
464 je .L95
465 movq (%r15), %rax
466 cmpq %rax, -8(%rbx)
467 movq $0, (%rbx)
468 jne .L95
469 movq 8(%r15), %rdx
470 testq %rdx, %rdx
471 je .L95
472 addq $16, %r15
473 addq $16, %rbx
474 call *%rdx
475 cmpq %r14, %r15
476 jne .L97
477 .p2align 4,,10
478 .p2align 3
479 .L93:
480 addq $1, %rbp
481 addq $32, %r12
482 cmpq $32, %rbp
483 jne .L98
484 xorl %eax, %eax
485 #APP
486 # 311 "pthread_create.c" 1
487 movb %fs:1552,%al
488 # 0 "" 2
489 #NO_APP
490 testb %al, %al
491 je .L99
492 subq $1, 8(%rsp)
493 movq 8(%rsp), %rsi
494 jne .L100
495 movq %fs:16, %rax
496 leaq 792(%rax), %rdi
497 movq $0, 784(%rax)
498 movq $0, 1288(%rax)
499 andq $-8, %rdi
500 subl %edi, %eax
501 leal 1296(%rax), %ecx
502 movq %rsi, %rax
503 shrl $3, %ecx
504 rep stosq
505 .L99:
506 movl $1, %ebx
507 .p2align 4,,10
508 .p2align 3
509 .L102:
510 #APP
511 # 328 "pthread_create.c" 1
512 movq %fs:1296(,%rbx,8),%rdi
513 # 0 "" 2
514 #NO_APP
515 testq %rdi, %rdi
516 je .L101
517 call free@PLT
518 #APP
519 # 334 "pthread_create.c" 1
520 movq $0,%fs:1296(,%rbx,8)
521 # 0 "" 2
522 #NO_APP
523 .L101:
524 addq $1, %rbx
525 cmpq $32, %rbx
526 jne .L102
527 #APP
528 # 338 "pthread_create.c" 1
529 movb $0,%fs:1552
530 # 0 "" 2
531 #NO_APP
532 addq $24, %rsp
533 popq %rbx
534 popq %rbp
535 popq %r12
536 popq %r13
537 popq %r14
538 popq %r15
540 .size __nptl_deallocate_tsd.part.5, .-__nptl_deallocate_tsd.part.5
541 .p2align 4,,15
542 .globl __nptl_stacks_freeres
543 .hidden __nptl_stacks_freeres
544 .type __nptl_stacks_freeres, @function
545 __nptl_stacks_freeres:
546 xorl %edi, %edi
547 jmp free_stacks
548 .size __nptl_stacks_freeres, .-__nptl_stacks_freeres
549 .p2align 4,,15
550 .globl __deallocate_stack
551 .hidden __deallocate_stack
552 .type __deallocate_stack, @function
553 __deallocate_stack:
554 pushq %rbp
555 pushq %rbx
556 xorl %eax, %eax
557 movq %rdi, %rbx
558 movl $1, %edx
559 subq $8, %rsp
560 movq _rtld_global@GOTPCREL(%rip), %rbp
561 lock cmpxchgl %edx, 4144(%rbp)
562 jne .L127
563 .L122:
564 leaq 704(%rbx), %rax
565 movq %rax, in_flight_stack(%rip)
566 movq 712(%rbx), %rcx
567 movq 704(%rbx), %rdx
568 movq %rcx, 8(%rdx)
569 movq 712(%rbx), %rcx
570 movq %rdx, (%rcx)
571 cmpb $0, 1554(%rbx)
572 movq $0, in_flight_stack(%rip)
573 jne .L123
574 movq %rax, %rdx
575 orq $1, %rdx
576 movq %rdx, in_flight_stack(%rip)
577 movq stack_cache(%rip), %rdx
578 leaq stack_cache(%rip), %rsi
579 movq %rsi, 712(%rbx)
580 movq %rdx, 704(%rbx)
581 movq %rax, 8(%rdx)
582 movq %rax, stack_cache(%rip)
583 movq stack_cache_actsize(%rip), %rax
584 addq 1688(%rbx), %rax
585 movq $0, in_flight_stack(%rip)
586 cmpq $41943040, %rax
587 movq %rax, stack_cache_actsize(%rip)
588 ja .L128
589 .L124:
590 xorl %eax, %eax
591 #APP
592 # 806 "allocatestack.c" 1
593 xchgl %eax, 4144(%rbp)
594 # 0 "" 2
595 #NO_APP
596 cmpl $1, %eax
597 jg .L129
598 addq $8, %rsp
599 popq %rbx
600 popq %rbp
602 .p2align 4,,10
603 .p2align 3
604 .L127:
605 leaq 4144(%rbp), %rdi
606 call __lll_lock_wait_private
607 jmp .L122
608 .p2align 4,,10
609 .p2align 3
610 .L123:
611 xorl %esi, %esi
612 movq %rbx, %rdi
613 call _dl_deallocate_tls@PLT
614 jmp .L124
615 .p2align 4,,10
616 .p2align 3
617 .L129:
618 leaq 4144(%rbp), %rdi
619 xorl %r10d, %r10d
620 movl $1, %edx
621 movl $129, %esi
622 movl $202, %eax
623 #APP
624 # 806 "allocatestack.c" 1
625 syscall
627 # 0 "" 2
628 #NO_APP
629 addq $8, %rsp
630 popq %rbx
631 popq %rbp
633 .p2align 4,,10
634 .p2align 3
635 .L128:
636 movl $41943040, %edi
637 call free_stacks
638 jmp .L124
639 .size __deallocate_stack, .-__deallocate_stack
640 .p2align 4,,15
641 .globl __make_stacks_executable
642 .hidden __make_stacks_executable
643 .type __make_stacks_executable, @function
644 __make_stacks_executable:
645 pushq %r13
646 pushq %r12
647 pushq %rbp
648 pushq %rbx
649 subq $8, %rsp
650 call _dl_make_stack_executable@PLT
651 testl %eax, %eax
652 movl %eax, %ebp
653 je .L144
654 .L130:
655 addq $8, %rsp
656 movl %ebp, %eax
657 popq %rbx
658 popq %rbp
659 popq %r12
660 popq %r13
662 .p2align 4,,10
663 .p2align 3
664 .L144:
665 movq _rtld_global@GOTPCREL(%rip), %r12
666 movl $1, %edx
667 lock cmpxchgl %edx, 4144(%r12)
668 jne .L145
669 .L132:
670 movq 4112(%r12), %rbx
671 leaq 4112(%r12), %r13
672 cmpq %r13, %rbx
673 jne .L135
674 jmp .L133
675 .p2align 4,,10
676 .p2align 3
677 .L146:
678 movq (%rbx), %rbx
679 cmpq %r13, %rbx
680 je .L133
681 .L135:
682 leaq -704(%rbx), %rdi
683 call change_stack_perm
684 testl %eax, %eax
685 je .L146
686 .L139:
687 movl %eax, %ebp
688 .L134:
689 xorl %eax, %eax
690 #APP
691 # 851 "allocatestack.c" 1
692 xchgl %eax, 4144(%r12)
693 # 0 "" 2
694 #NO_APP
695 cmpl $1, %eax
696 jle .L130
697 leaq 4144(%r12), %rdi
698 xorl %r10d, %r10d
699 movl $1, %edx
700 movl $129, %esi
701 movl $202, %eax
702 #APP
703 # 851 "allocatestack.c" 1
704 syscall
706 # 0 "" 2
707 #NO_APP
708 jmp .L130
709 .p2align 4,,10
710 .p2align 3
711 .L133:
712 movq stack_cache(%rip), %rbx
713 leaq stack_cache(%rip), %r13
714 cmpq %r13, %rbx
715 jne .L136
716 jmp .L134
717 .p2align 4,,10
718 .p2align 3
719 .L147:
720 movq (%rbx), %rbx
721 cmpq %r13, %rbx
722 je .L134
723 .L136:
724 leaq -704(%rbx), %rdi
725 call change_stack_perm
726 testl %eax, %eax
727 je .L147
728 jmp .L139
729 .p2align 4,,10
730 .p2align 3
731 .L145:
732 leaq 4144(%r12), %rdi
733 call __lll_lock_wait_private
734 jmp .L132
735 .size __make_stacks_executable, .-__make_stacks_executable
736 .section .rodata.str1.1
737 .LC3:
738 .string "allocatestack.c"
739 .LC4:
740 .string "l->next->prev == elem"
741 .text
742 .p2align 4,,15
743 .globl __reclaim_stacks
744 .hidden __reclaim_stacks
745 .type __reclaim_stacks, @function
746 __reclaim_stacks:
747 movq in_flight_stack(%rip), %rax
748 movq %fs:16, %r10
749 testq %rax, %rax
750 je .L172
751 movq %rax, %rdx
752 andq $-2, %rdx
753 testb $1, %al
754 je .L151
755 movq _rtld_global@GOTPCREL(%rip), %r9
756 movq 4112(%r9), %rsi
757 leaq 4112(%r9), %rax
758 movq 8(%rsi), %rcx
759 cmpq %rax, %rcx
760 je .L173
761 .L152:
762 cmpq %rcx, %rdx
763 jne .L174
764 movq %rsi, (%rdx)
765 movq %rax, 8(%rdx)
766 movq %rdx, (%rax)
767 movq 4112(%r9), %rsi
768 jmp .L150
769 .p2align 4,,10
770 .p2align 3
771 .L151:
772 movq (%rdx), %rax
773 movq 8(%rdx), %rcx
774 movq %rcx, 8(%rax)
775 movq 8(%rdx), %rdx
776 movq %rax, (%rdx)
777 .L172:
778 movq _rtld_global@GOTPCREL(%rip), %r9
779 movq 4112(%r9), %rsi
780 .L150:
781 leaq 4112(%r9), %rdx
782 xorl %eax, %eax
783 cmpq %rdx, %rsi
784 movq %rdx, %r11
785 je .L155
786 .p2align 4,,10
787 .p2align 3
788 .L154:
789 leaq -704(%rsi), %rdx
790 cmpq %rdx, %r10
791 je .L156
792 movq 984(%rsi), %rdx
793 addq %rdx, stack_cache_actsize(%rip)
794 cmpb $0, 848(%rsi)
795 movl $0, 16(%rsi)
796 jne .L175
797 .L156:
798 movq (%rsi), %rsi
799 cmpq %r11, %rsi
800 jne .L154
801 movq 4112(%r9), %rax
802 cmpq %rsi, %rax
803 je .L155
804 leaq stack_cache(%rip), %rsi
805 movq stack_cache(%rip), %rdx
806 movq %rsi, 8(%rax)
807 movq 4120(%r9), %rax
808 movq %rdx, (%rax)
809 movq stack_cache(%rip), %rdx
810 movq %rax, 8(%rdx)
811 movq 4112(%r9), %rax
812 movq %rax, stack_cache(%rip)
813 .L155:
814 leaq 704(%r10), %rcx
815 movq %rcx, in_flight_stack(%rip)
816 movq 712(%r10), %rdx
817 movq 704(%r10), %rax
818 movq %rdx, 8(%rax)
819 movq 712(%r10), %rdx
820 movq %rax, (%rdx)
821 leaq 4112(%r9), %rax
822 leaq 4128(%r9), %rsi
823 movq $0, in_flight_stack(%rip)
824 xorl %edx, %edx
825 movq %rax, 4120(%r9)
826 movq %rax, 4112(%r9)
827 movq %rsi, 4136(%r9)
828 movq %rsi, 4128(%r9)
829 #APP
830 # 950 "allocatestack.c" 1
831 movb %fs:1554,%dl
832 # 0 "" 2
833 #NO_APP
834 testb %dl, %dl
835 jne .L176
836 movq %rax, 704(%r10)
837 movq %rax, 712(%r10)
838 movq 4112(%r9), %rax
839 movq %rcx, 8(%rax)
840 movq %rcx, 4112(%r9)
841 .L161:
842 movl $1, __nptl_nthreads(%rip)
843 movq $0, in_flight_stack(%rip)
844 movl $0, 4144(%r9)
845 movl $0, __default_pthread_attr_lock(%rip)
847 .p2align 4,,10
848 .p2align 3
849 .L175:
850 leaq 88(%rsi), %rdi
851 movl %esi, %ecx
852 leaq 600(%rsi), %rdx
853 leaq 848(%rsi), %r8
854 movq $0, 80(%rsi)
855 andq $-8, %rdi
856 movq $0, -16(%rdx)
857 subl %edi, %ecx
858 addl $592, %ecx
859 shrl $3, %ecx
860 rep stosq
861 movb $0, 848(%rsi)
862 .p2align 4,,10
863 .p2align 3
864 .L158:
865 movq (%rdx), %rcx
866 testq %rcx, %rcx
867 je .L157
868 leaq 8(%rcx), %rdi
869 movq $0, (%rcx)
870 movq $0, 504(%rcx)
871 andq $-8, %rdi
872 subq %rdi, %rcx
873 addl $512, %ecx
874 shrl $3, %ecx
875 rep stosq
876 movb $1, 848(%rsi)
877 .L157:
878 addq $8, %rdx
879 cmpq %r8, %rdx
880 jne .L158
881 jmp .L156
882 .L173:
883 movq stack_cache(%rip), %rdi
884 leaq stack_cache(%rip), %rax
885 movq 8(%rdi), %rcx
886 cmpq %rax, %rcx
887 je .L150
888 movq %rdi, %rsi
889 jmp .L152
890 .L176:
891 movq %rsi, 704(%r10)
892 movq %rsi, 712(%r10)
893 movq 4128(%r9), %rax
894 movq %rcx, 8(%rax)
895 movq %rcx, 4128(%r9)
896 jmp .L161
897 .L174:
898 leaq __PRETTY_FUNCTION__.13328(%rip), %rcx
899 leaq .LC3(%rip), %rsi
900 leaq .LC4(%rip), %rdi
901 subq $8, %rsp
902 movl $889, %edx
903 call __assert_fail@PLT
904 .size __reclaim_stacks, .-__reclaim_stacks
905 .p2align 4,,15
906 .globl __nptl_setxid_error
907 .hidden __nptl_setxid_error
908 .type __nptl_setxid_error, @function
909 __nptl_setxid_error:
910 .L180:
911 movl 36(%rdi), %eax
912 cmpl %esi, %eax
913 je .L177
914 cmpl $-1, %eax
915 jne .L186
916 lock cmpxchgl %esi, 36(%rdi)
917 jne .L180
918 .L177:
919 rep ret
920 .L186:
921 subq $24, %rsp
922 movl %esi, 12(%rsp)
923 call abort@PLT
924 .size __nptl_setxid_error, .-__nptl_setxid_error
925 .p2align 4,,15
926 .globl __nptl_setxid
927 .hidden __nptl_setxid
928 .type __nptl_setxid, @function
929 __nptl_setxid:
930 pushq %r15
931 pushq %r14
932 xorl %eax, %eax
933 pushq %r13
934 pushq %r12
935 movl $1, %edx
936 pushq %rbp
937 pushq %rbx
938 movq %rdi, %rbx
939 subq $24, %rsp
940 movq _rtld_global@GOTPCREL(%rip), %r13
941 lock cmpxchgl %edx, 4144(%r13)
942 jne .L243
943 .L188:
944 movq 4112(%r13), %rbp
945 leaq 4112(%r13), %r12
946 movl $0, 32(%rbx)
947 movq %rbx, __xidcmd(%rip)
948 movl $-1, 36(%rbx)
949 movq %fs:16, %r15
950 cmpq %r12, %rbp
951 je .L189
952 .p2align 4,,10
953 .p2align 3
954 .L191:
955 leaq -704(%rbp), %rdi
956 cmpq %rdi, %r15
957 je .L190
958 call setxid_mark_thread.isra.0
959 .L190:
960 movq 0(%rbp), %rbp
961 cmpq %r12, %rbp
962 jne .L191
963 .L189:
964 movq 4128(%r13), %rbp
965 leaq 4128(%r13), %r12
966 cmpq %r12, %rbp
967 je .L192
968 .p2align 4,,10
969 .p2align 3
970 .L194:
971 leaq -704(%rbp), %rdi
972 cmpq %rdi, %r15
973 je .L193
974 call setxid_mark_thread.isra.0
975 .L193:
976 movq 0(%rbp), %rbp
977 cmpq %r12, %rbp
978 jne .L194
979 .L192:
980 leaq 4112(%r13), %r12
981 leaq 32(%rbx), %rbp
982 .p2align 4,,10
983 .p2align 3
984 .L211:
985 movq 4112(%r13), %rdx
986 cmpq %r12, %rdx
987 je .L195
988 xorl %r14d, %r14d
989 jmp .L198
990 .p2align 4,,10
991 .p2align 3
992 .L196:
993 movq (%rdx), %rdx
994 cmpq %r12, %rdx
995 je .L244
996 .L198:
997 leaq -704(%rdx), %rsi
998 cmpq %rsi, %r15
999 je .L196
1000 testb $64, 72(%rdx)
1001 je .L196
1002 movq %rbx, %rdi
1003 movq %rdx, (%rsp)
1004 call setxid_signal_thread.part.4
1005 movq (%rsp), %rdx
1006 addl %eax, %r14d
1007 movq (%rdx), %rdx
1008 cmpq %r12, %rdx
1009 jne .L198
1010 .L244:
1011 movq 4128(%r13), %rdx
1012 leaq 4128(%r13), %rax
1013 cmpq %rax, %rdx
1014 je .L203
1015 .L200:
1016 leaq 4128(%r13), %rcx
1017 jmp .L206
1018 .p2align 4,,10
1019 .p2align 3
1020 .L204:
1021 movq (%rdx), %rdx
1022 cmpq %rcx, %rdx
1023 je .L203
1024 .L206:
1025 leaq -704(%rdx), %rsi
1026 cmpq %rsi, %r15
1027 je .L204
1028 testb $64, 72(%rdx)
1029 je .L204
1030 movq %rbx, %rdi
1031 movq %rcx, 8(%rsp)
1032 movq %rdx, (%rsp)
1033 call setxid_signal_thread.part.4
1034 movq (%rsp), %rdx
1035 movq 8(%rsp), %rcx
1036 addl %eax, %r14d
1037 movq (%rdx), %rdx
1038 cmpq %rcx, %rdx
1039 jne .L206
1040 .L203:
1041 movl 32(%rbx), %edx
1042 testl %edx, %edx
1043 je .L207
1044 .L201:
1045 movl $202, %r8d
1046 jmp .L210
1047 .p2align 4,,10
1048 .p2align 3
1049 .L208:
1050 movl 32(%rbx), %edx
1051 testl %edx, %edx
1052 je .L207
1053 .L210:
1054 xorl %r10d, %r10d
1055 movl $128, %esi
1056 movq %rbp, %rdi
1057 movl %r8d, %eax
1058 #APP
1059 # 146 "../sysdeps/nptl/futex-internal.h" 1
1060 syscall
1062 # 0 "" 2
1063 #NO_APP
1064 cmpq $-4096, %rax
1065 jbe .L208
1066 leal 11(%rax), %ecx
1067 cmpl $11, %ecx
1068 ja .L209
1069 movl $1, %eax
1070 salq %cl, %rax
1071 testl $2177, %eax
1072 jne .L208
1073 .L209:
1074 leaq .LC2(%rip), %rdi
1075 call __libc_fatal@PLT
1076 .p2align 4,,10
1077 .p2align 3
1078 .L207:
1079 testl %r14d, %r14d
1080 jne .L211
1081 movq 4112(%r13), %rbp
1082 leaq 4112(%r13), %rax
1083 movq %rax, %r12
1084 cmpq %rax, %rbp
1085 je .L242
1086 .p2align 4,,10
1087 .p2align 3
1088 .L212:
1089 leaq -704(%rbp), %rdi
1090 cmpq %rdi, %r15
1091 je .L214
1092 call setxid_unmark_thread.isra.2
1093 .L214:
1094 movq 0(%rbp), %rbp
1095 cmpq %r12, %rbp
1096 jne .L212
1097 .L242:
1098 movq 4128(%r13), %rbp
1099 leaq 4128(%r13), %r12
1100 cmpq %r12, %rbp
1101 je .L202
1102 .p2align 4,,10
1103 .p2align 3
1104 .L216:
1105 leaq -704(%rbp), %rdi
1106 cmpq %rdi, %r15
1107 je .L215
1108 call setxid_unmark_thread.isra.2
1109 .L215:
1110 movq 0(%rbp), %rbp
1111 cmpq %r12, %rbp
1112 jne .L216
1113 .L202:
1114 movq 16(%rbx), %rsi
1115 movq 8(%rbx), %rdi
1116 movq 24(%rbx), %rdx
1117 movl (%rbx), %eax
1118 #APP
1119 # 1160 "allocatestack.c" 1
1120 syscall
1122 # 0 "" 2
1123 #NO_APP
1124 xorl %esi, %esi
1125 cmpl $-4096, %eax
1126 movl %eax, %ebp
1127 ja .L245
1128 .L217:
1129 movq %rbx, %rdi
1130 call __nptl_setxid_error
1131 xorl %eax, %eax
1132 #APP
1133 # 1171 "allocatestack.c" 1
1134 xchgl %eax, 4144(%r13)
1135 # 0 "" 2
1136 #NO_APP
1137 cmpl $1, %eax
1138 jg .L246
1139 .L187:
1140 addq $24, %rsp
1141 movl %ebp, %eax
1142 popq %rbx
1143 popq %rbp
1144 popq %r12
1145 popq %r13
1146 popq %r14
1147 popq %r15
1149 .L195:
1150 movq 4128(%r13), %rdx
1151 leaq 4128(%r13), %rax
1152 xorl %r14d, %r14d
1153 cmpq %rax, %rdx
1154 jne .L200
1155 movl 32(%rbx), %edx
1156 testl %edx, %edx
1157 jne .L201
1158 jmp .L202
1159 .L243:
1160 leaq 4144(%r13), %rdi
1161 call __lll_lock_wait_private
1162 jmp .L188
1163 .L245:
1164 movl %eax, %esi
1165 movq errno@gottpoff(%rip), %rax
1166 movl $-1, %ebp
1167 negl %esi
1168 movl %esi, %fs:(%rax)
1169 jmp .L217
1170 .L246:
1171 leaq 4144(%r13), %rdi
1172 xorl %r10d, %r10d
1173 movl $1, %edx
1174 movl $129, %esi
1175 movl $202, %eax
1176 #APP
1177 # 1171 "allocatestack.c" 1
1178 syscall
1180 # 0 "" 2
1181 #NO_APP
1182 jmp .L187
1183 .size __nptl_setxid, .-__nptl_setxid
1184 .p2align 4,,15
1185 .globl __pthread_init_static_tls
1186 .hidden __pthread_init_static_tls
1187 .type __pthread_init_static_tls, @function
1188 __pthread_init_static_tls:
1189 pushq %r14
1190 pushq %r13
1191 xorl %eax, %eax
1192 movq _rtld_global@GOTPCREL(%rip), %r13
1193 pushq %r12
1194 movl $1, %edx
1195 pushq %rbp
1196 pushq %rbx
1197 movq %rdi, %rbx
1198 lock cmpxchgl %edx, 4144(%r13)
1199 jne .L257
1200 .L248:
1201 movq 4112(%r13), %rbp
1202 leaq 4112(%r13), %rax
1203 cmpq %rax, %rbp
1204 je .L249
1205 movq $-704, %r14
1206 .p2align 4,,10
1207 .p2align 3
1208 .L250:
1209 movq %r14, %rdi
1210 subq 1112(%rbx), %rdi
1211 movq 1080(%rbx), %rdx
1212 movq 1088(%rbx), %r12
1213 movq 1072(%rbx), %rsi
1214 addq %rbp, %rdi
1215 subq %rdx, %r12
1216 call __mempcpy@PLT
1217 xorl %esi, %esi
1218 movq %r12, %rdx
1219 movq %rax, %rdi
1220 call memset@PLT
1221 movq 0(%rbp), %rbp
1222 leaq 4112(%r13), %rax
1223 cmpq %rax, %rbp
1224 jne .L250
1225 .L249:
1226 movq 4128(%r13), %rbp
1227 leaq 4128(%r13), %rax
1228 cmpq %rax, %rbp
1229 je .L251
1230 movq $-704, %r14
1231 .p2align 4,,10
1232 .p2align 3
1233 .L252:
1234 movq %r14, %rdi
1235 subq 1112(%rbx), %rdi
1236 movq 1080(%rbx), %rdx
1237 movq 1088(%rbx), %r12
1238 movq 1072(%rbx), %rsi
1239 addq %rbp, %rdi
1240 subq %rdx, %r12
1241 call __mempcpy@PLT
1242 xorl %esi, %esi
1243 movq %r12, %rdx
1244 movq %rax, %rdi
1245 call memset@PLT
1246 movq 0(%rbp), %rbp
1247 leaq 4128(%r13), %rax
1248 cmpq %rax, %rbp
1249 jne .L252
1250 .L251:
1251 xorl %eax, %eax
1252 #APP
1253 # 1206 "allocatestack.c" 1
1254 xchgl %eax, 4144(%r13)
1255 # 0 "" 2
1256 #NO_APP
1257 cmpl $1, %eax
1258 jg .L258
1259 popq %rbx
1260 popq %rbp
1261 popq %r12
1262 popq %r13
1263 popq %r14
1265 .p2align 4,,10
1266 .p2align 3
1267 .L257:
1268 leaq 4144(%r13), %rdi
1269 call __lll_lock_wait_private
1270 jmp .L248
1271 .p2align 4,,10
1272 .p2align 3
1273 .L258:
1274 leaq 4144(%r13), %rdi
1275 xorl %r10d, %r10d
1276 movl $1, %edx
1277 movl $129, %esi
1278 movl $202, %eax
1279 #APP
1280 # 1206 "allocatestack.c" 1
1281 syscall
1283 # 0 "" 2
1284 #NO_APP
1285 popq %rbx
1286 popq %rbp
1287 popq %r12
1288 popq %r13
1289 popq %r14
1291 .size __pthread_init_static_tls, .-__pthread_init_static_tls
1292 .p2align 4,,15
1293 .globl __find_in_stack_list
1294 .hidden __find_in_stack_list
1295 .type __find_in_stack_list, @function
1296 __find_in_stack_list:
1297 pushq %rbp
1298 pushq %rbx
1299 xorl %eax, %eax
1300 movq %rdi, %rbx
1301 movl $1, %edx
1302 subq $8, %rsp
1303 movq _rtld_global@GOTPCREL(%rip), %rbp
1304 lock cmpxchgl %edx, 4144(%rbp)
1305 jne .L274
1306 .L260:
1307 movq 4112(%rbp), %rax
1308 leaq 4112(%rbp), %rcx
1309 cmpq %rcx, %rax
1310 jne .L264
1311 jmp .L261
1312 .p2align 4,,10
1313 .p2align 3
1314 .L275:
1315 movq (%rax), %rax
1316 cmpq %rcx, %rax
1317 je .L261
1318 .L264:
1319 leaq -704(%rax), %rdx
1320 cmpq %rdx, %rbx
1321 jne .L275
1322 testq %rbx, %rbx
1323 je .L261
1324 .L265:
1325 xorl %eax, %eax
1326 #APP
1327 # 243 "pthread_create.c" 1
1328 xchgl %eax, 4144(%rbp)
1329 # 0 "" 2
1330 #NO_APP
1331 cmpl $1, %eax
1332 jg .L276
1333 addq $8, %rsp
1334 movq %rbx, %rax
1335 popq %rbx
1336 popq %rbp
1338 .p2align 4,,10
1339 .p2align 3
1340 .L261:
1341 movq 4128(%rbp), %rax
1342 leaq 4128(%rbp), %rcx
1343 cmpq %rcx, %rax
1344 je .L269
1345 .p2align 4,,10
1346 .p2align 3
1347 .L267:
1348 leaq -704(%rax), %rdx
1349 cmpq %rdx, %rbx
1350 je .L265
1351 movq (%rax), %rax
1352 cmpq %rcx, %rax
1353 jne .L267
1354 .L269:
1355 xorl %ebx, %ebx
1356 jmp .L265
1357 .p2align 4,,10
1358 .p2align 3
1359 .L276:
1360 leaq 4144(%rbp), %rdi
1361 xorl %r10d, %r10d
1362 movl $1, %edx
1363 movl $129, %esi
1364 movl $202, %eax
1365 #APP
1366 # 243 "pthread_create.c" 1
1367 syscall
1369 # 0 "" 2
1370 #NO_APP
1371 addq $8, %rsp
1372 movq %rbx, %rax
1373 popq %rbx
1374 popq %rbp
1376 .p2align 4,,10
1377 .p2align 3
1378 .L274:
1379 leaq 4144(%rbp), %rdi
1380 call __lll_lock_wait_private
1381 jmp .L260
1382 .size __find_in_stack_list, .-__find_in_stack_list
1383 .p2align 4,,15
1384 .globl __nptl_deallocate_tsd
1385 .hidden __nptl_deallocate_tsd
1386 .type __nptl_deallocate_tsd, @function
1387 __nptl_deallocate_tsd:
1388 xorl %eax, %eax
1389 #APP
1390 # 258 "pthread_create.c" 1
1391 movb %fs:1552,%al
1392 # 0 "" 2
1393 #NO_APP
1394 testb %al, %al
1395 je .L277
1396 jmp __nptl_deallocate_tsd.part.5
1397 .p2align 4,,10
1398 .p2align 3
1399 .L277:
1400 rep ret
1401 .size __nptl_deallocate_tsd, .-__nptl_deallocate_tsd
1402 .p2align 4,,15
1403 .globl __free_tcb
1404 .hidden __free_tcb
1405 .type __free_tcb, @function
1406 __free_tcb:
1407 #APP
1408 # 349 "pthread_create.c" 1
1409 lock;btsl $5, 776(%rdi); setc %al
1410 # 0 "" 2
1411 #NO_APP
1412 testb %al, %al
1413 jne .L279
1414 pushq %rbx
1415 movq %rdi, %rbx
1416 movq 1712(%rdi), %rdi
1417 testq %rdi, %rdi
1418 jne .L288
1419 .L281:
1420 movq %rbx, %rdi
1421 popq %rbx
1422 jmp __deallocate_stack
1423 .p2align 4,,10
1424 .p2align 3
1425 .L279:
1426 rep ret
1427 .p2align 4,,10
1428 .p2align 3
1429 .L288:
1430 movq $0, 1712(%rbx)
1431 call free@PLT
1432 jmp .L281
1433 .size __free_tcb, .-__free_tcb
1434 .section .rodata.str1.1
1435 .LC5:
1436 .string "freesize < size"
1437 .text
1438 .p2align 4,,15
1439 .type start_thread, @function
1440 start_thread:
1441 pushq %r12
1442 pushq %rbp
1443 leaq 1720(%rdi), %rdx
1444 pushq %rbx
1445 movq %rdi, %rbx
1446 addq $-128, %rsp
1447 movq __resp@gottpoff(%rip), %rax
1448 movq %rdx, %fs:(%rax)
1449 call __ctype_init@PLT
1450 movq %rbx, 8(%rsp)
1451 leaq 736(%rbx), %rdi
1452 movl $24, %esi
1453 movl $273, %eax
1454 #APP
1455 # 395 "pthread_create.c" 1
1456 syscall
1458 # 0 "" 2
1459 #NO_APP
1460 leaq 16(%rsp), %rdi
1461 call _setjmp@PLT
1462 movq 8(%rsp), %r8
1463 movl %eax, %ebx
1464 movq $0, 88(%rsp)
1465 movq $0, 96(%rsp)
1466 movl $8, %r10d
1467 xorl %edx, %edx
1468 movl $2, %edi
1469 movl $14, %eax
1470 leaq 2288(%r8), %rsi
1471 #APP
1472 # 105 "../sysdeps/unix/sysv/linux/internal-signals.h" 1
1473 syscall
1475 # 0 "" 2
1476 # 432 "pthread_create.c" 1
1477 xchgl %edx, 1564(%r8)
1478 # 0 "" 2
1479 #NO_APP
1480 cmpl $-2, %edx
1481 je .L329
1482 .L293:
1483 testl %ebx, %ebx
1484 jne .L294
1485 leaq 16(%rsp), %rax
1486 #APP
1487 # 438 "pthread_create.c" 1
1488 movq %rax,%fs:768
1489 # 0 "" 2
1490 #NO_APP
1491 movq 8(%rsp), %rax
1492 cmpb $0, 1555(%rax)
1493 jne .L295
1494 .L302:
1495 movq 8(%rsp), %rcx
1496 cmpb $0, 2416(%rcx)
1497 movq 1600(%rcx), %rax
1498 movq 1608(%rcx), %rdi
1499 jne .L296
1500 call *%rax
1501 .L303:
1502 #APP
1503 # 474 "pthread_create.c" 1
1504 movq %rax,%fs:1584
1505 # 0 "" 2
1506 #NO_APP
1507 .L294:
1508 call __call_tls_dtors@PLT
1509 xorl %eax, %eax
1510 #APP
1511 # 258 "pthread_create.c" 1
1512 movb %fs:1552,%al
1513 # 0 "" 2
1514 #NO_APP
1515 testb %al, %al
1516 jne .L304
1517 .L306:
1518 call __libc_thread_freeres@PLT
1519 #APP
1520 # 492 "pthread_create.c" 1
1521 lock;decl __nptl_nthreads(%rip); sete %al
1522 # 0 "" 2
1523 #NO_APP
1524 testb %al, %al
1525 jne .L330
1526 movq 8(%rsp), %rax
1527 cmpb $0, 1553(%rax)
1528 jne .L308
1529 .L311:
1530 movq 8(%rsp), %rax
1531 #APP
1532 # 528 "pthread_create.c" 1
1533 lock;orl $16, 776(%rax)
1534 # 0 "" 2
1535 #NO_APP
1536 cmpb $0, 1554(%rax)
1537 jne .L309
1538 movq 8(%rsp), %rbp
1539 call __getpagesize@PLT
1540 movq %rsp, %rdx
1541 negl %eax
1542 movq 1680(%rbp), %rbx
1543 cltq
1544 subq %rbx, %rdx
1545 andq %rdx, %rax
1546 cmpq %rax, 1688(%rbp)
1547 jbe .L331
1548 cmpq $16384, %rax
1549 ja .L332
1550 .L309:
1551 movq 8(%rsp), %rax
1552 testb $64, 776(%rax)
1553 jne .L333
1554 .L315:
1555 movq 8(%rsp), %rax
1556 cmpq %rax, 1576(%rax)
1557 je .L319
1558 .L321:
1559 movl $60, %edx
1560 .p2align 4,,10
1561 .p2align 3
1562 .L320:
1563 xorl %edi, %edi
1564 movl %edx, %eax
1565 #APP
1566 # 35 "../sysdeps/unix/sysv/linux/exit-thread.h" 1
1567 syscall
1569 # 0 "" 2
1570 #NO_APP
1571 jmp .L320
1572 .L296:
1573 call *%rax
1574 cltq
1575 jmp .L303
1576 .L329:
1577 movq 8(%rsp), %rax
1578 xorl %r10d, %r10d
1579 movl $1, %edx
1580 movl $129, %esi
1581 leaq 1564(%rax), %rdi
1582 movl $202, %eax
1583 #APP
1584 # 209 "../sysdeps/nptl/futex-internal.h" 1
1585 syscall
1587 # 0 "" 2
1588 #NO_APP
1589 cmpq $-4096, %rax
1590 jbe .L293
1591 cmpl $-22, %eax
1592 je .L293
1593 cmpl $-14, %eax
1594 je .L293
1595 .L318:
1596 leaq .LC2(%rip), %rdi
1597 call __libc_fatal@PLT
1598 .L295:
1599 call __pthread_enable_asynccancel
1600 movl %eax, %r12d
1601 movq 8(%rsp), %rax
1602 movl $1, %edx
1603 leaq 1560(%rax), %rbp
1604 movl %ebx, %eax
1605 lock cmpxchgl %edx, 0(%rbp)
1606 jne .L298
1607 .L301:
1608 xorl %eax, %eax
1609 movq 8(%rsp), %rcx
1610 #APP
1611 # 454 "pthread_create.c" 1
1612 xchgl %eax, 1560(%rcx)
1613 # 0 "" 2
1614 #NO_APP
1615 subl $1, %eax
1616 jle .L300
1617 xorl %r10d, %r10d
1618 movl $1, %edx
1619 movl $129, %esi
1620 movq %rbp, %rdi
1621 movl $202, %eax
1622 #APP
1623 # 454 "pthread_create.c" 1
1624 syscall
1626 # 0 "" 2
1627 #NO_APP
1628 .L300:
1629 movl %r12d, %edi
1630 call __pthread_disable_asynccancel
1631 jmp .L302
1632 .L304:
1633 call __nptl_deallocate_tsd.part.5
1634 jmp .L306
1635 .L330:
1636 xorl %edi, %edi
1637 call exit@PLT
1638 .L319:
1639 movq 8(%rsp), %rdi
1640 call __free_tcb
1641 jmp .L321
1642 .L333:
1643 leaq 1564(%rax), %rbx
1644 movl $202, %r9d
1645 movl $1, %r8d
1646 jmp .L314
1647 .L317:
1648 movq 8(%rsp), %rax
1649 testb $64, 776(%rax)
1650 je .L334
1651 .L314:
1652 xorl %r10d, %r10d
1653 xorl %edx, %edx
1654 movl $128, %esi
1655 movq %rbx, %rdi
1656 movl %r9d, %eax
1657 #APP
1658 # 146 "../sysdeps/nptl/futex-internal.h" 1
1659 syscall
1661 # 0 "" 2
1662 #NO_APP
1663 cmpq $-4096, %rax
1664 jbe .L317
1665 addl $11, %eax
1666 cmpl $11, %eax
1667 ja .L318
1668 movl %eax, %ecx
1669 movq %r8, %rsi
1670 salq %cl, %rsi
1671 movq %rsi, %rax
1672 testl $2177, %eax
1673 je .L318
1674 jmp .L317
1675 .L298:
1676 movq %rbp, %rdi
1677 call __lll_lock_wait_private
1678 jmp .L301
1679 .L308:
1680 movq 8(%rsp), %rcx
1681 movl __nptl_threads_events(%rip), %eax
1682 orl 1616(%rcx), %eax
1683 testb $1, %ah
1684 je .L311
1685 cmpq $0, 1640(%rcx)
1686 je .L335
1687 .L312:
1688 call __GI___nptl_death_event
1689 jmp .L311
1690 .L332:
1691 leaq -16384(%rax), %rsi
1692 movl $4, %edx
1693 movq %rbx, %rdi
1694 call __madvise@PLT
1695 jmp .L309
1696 .L334:
1697 movl $0, 1564(%rax)
1698 jmp .L315
1699 .L331:
1700 leaq __PRETTY_FUNCTION__.13177(%rip), %rcx
1701 leaq .LC3(%rip), %rsi
1702 leaq .LC5(%rip), %rdi
1703 movl $379, %edx
1704 call __assert_fail@PLT
1705 .L335:
1706 movq %rcx, %rax
1707 movl $9, 1624(%rcx)
1708 movq %rcx, 1632(%rax)
1709 .L313:
1710 movq __nptl_last_event(%rip), %rax
1711 movq 8(%rsp), %rcx
1712 movq %rax, 1640(%rcx)
1713 lock cmpxchgq %rcx, __nptl_last_event(%rip)
1714 je .L312
1715 jmp .L313
1716 .size start_thread, .-start_thread
1717 .section .rodata.str1.1
1718 .LC6:
1719 .string "powerof2 (pagesize_m1 + 1)"
1720 .LC7:
1721 .string "size > adj + TLS_TCB_SIZE"
1722 .LC8:
1723 .string "errno == ENOMEM"
1724 .LC9:
1725 .string "size != 0"
1726 .LC10:
1727 .string "mem != NULL"
1728 .LC11:
1729 .string "pthread_create.c"
1730 .LC12:
1731 .string "stopped_start"
1732 .LC13:
1733 .string "pd->stopped_start"
1734 .text
1735 .p2align 4,,15
1736 .globl __pthread_create_2_1
1737 .type __pthread_create_2_1, @function
1738 __pthread_create_2_1:
1739 pushq %r15
1740 pushq %r14
1741 pushq %r13
1742 pushq %r12
1743 movq %rsi, %r13
1744 pushq %rbp
1745 pushq %rbx
1746 subq $296, %rsp
1747 movq __libc_single_threaded@GOTPCREL(%rip), %rax
1748 movq %rdi, 8(%rsp)
1749 movq %rdx, 16(%rsp)
1750 movq %rcx, 24(%rsp)
1751 cmpb $0, (%rax)
1752 je .L337
1753 movb $0, (%rax)
1754 .L337:
1755 leaq -1(%r13), %rax
1756 cmpq $-3, %rax
1757 jbe .L413
1758 leaq 96(%rsp), %rbp
1759 movq %rbp, %rdi
1760 call __GI___pthread_getattr_default_np
1761 testl %eax, %eax
1762 movl %eax, %r15d
1763 jne .L336
1764 movb $1, 59(%rsp)
1765 jmp .L338
1766 .p2align 4,,10
1767 .p2align 3
1768 .L413:
1769 movq %r13, %rbp
1770 movb $0, 59(%rsp)
1771 .L338:
1772 call __getpagesize@PLT
1773 leal -1(%rax), %r14d
1774 movl %eax, %r12d
1775 movslq %r14d, %r14
1776 leaq 1(%r14), %r8
1777 movq %r14, %r15
1778 andq %r8, %r15
1779 jne .L483
1780 movq 32(%rbp), %rbx
1781 testq %rbx, %rbx
1782 je .L484
1783 testb $8, 8(%rbp)
1784 jne .L485
1785 .L344:
1786 movq __static_tls_align_m1(%rip), %rax
1787 notq %rax
1788 andq %rax, %rbx
1789 je .L486
1790 movq 16(%rbp), %rdx
1791 negl %r12d
1792 movslq %r12d, %rax
1793 leaq (%r14,%rdx), %r12
1794 andq %rax, %r12
1795 cmpq %r12, %rdx
1796 jbe .L487
1797 .L353:
1798 movl $22, %r15d
1799 .L346:
1800 cmpb $0, 59(%rsp)
1801 je .L336
1802 leaq 96(%rsp), %rdi
1803 call __pthread_attr_destroy@PLT
1804 .L336:
1805 addq $296, %rsp
1806 movl %r15d, %eax
1807 popq %rbx
1808 popq %rbp
1809 popq %r12
1810 popq %r13
1811 popq %r14
1812 popq %r15
1814 .p2align 4,,10
1815 .p2align 3
1816 .L487:
1817 addq %r12, %rbx
1818 movq %rbx, 32(%rsp)
1819 jc .L353
1820 movq __static_tls_size(%rip), %rdx
1821 leaq 2048(%r14,%rdx), %rdx
1822 addq %r12, %rdx
1823 andq %rdx, %rax
1824 cmpq %rax, %rbx
1825 jb .L353
1826 movq _rtld_global@GOTPCREL(%rip), %rbx
1827 xorl %eax, %eax
1828 movl $1, %ecx
1829 movl 4016(%rbx), %r14d
1830 lock cmpxchgl %ecx, 4144(%rbx)
1831 jne .L488
1832 .L356:
1833 leal 0(,%r14,4), %eax
1834 leaq stack_cache(%rip), %rdx
1835 andl $4, %eax
1836 movl %eax, 64(%rsp)
1837 orl $3, %eax
1838 movl %eax, 60(%rsp)
1839 movq stack_cache(%rip), %rax
1840 cmpq %rdx, %rax
1841 je .L357
1842 xorl %r14d, %r14d
1843 movq 32(%rsp), %rdi
1844 jmp .L360
1845 .p2align 4,,10
1846 .p2align 3
1847 .L358:
1848 movq (%rax), %rax
1849 cmpq %rdx, %rax
1850 je .L359
1851 .L360:
1852 movl 16(%rax), %ecx
1853 testl %ecx, %ecx
1854 jg .L358
1855 movq 984(%rax), %rcx
1856 cmpq %rcx, %rdi
1857 ja .L358
1858 cmpq %rcx, %rdi
1859 leaq -704(%rax), %rsi
1860 je .L414
1861 testq %r14, %r14
1862 je .L415
1863 cmpq 1688(%r14), %rcx
1864 movq (%rax), %rax
1865 cmovb %rsi, %r14
1866 cmpq %rdx, %rax
1867 jne .L360
1868 .p2align 4,,10
1869 .p2align 3
1870 .L359:
1871 testq %r14, %r14
1872 je .L357
1873 movq 32(%rsp), %rax
1874 salq $2, %rax
1875 cmpq %rax, 1688(%r14)
1876 ja .L357
1877 leaq 704(%r14), %rdi
1878 movl $-1, 1564(%r14)
1879 movq %rdi, 72(%rsp)
1880 movq %rdi, in_flight_stack(%rip)
1881 movq 712(%r14), %rdx
1882 movq 704(%r14), %rax
1883 movq %rdx, 8(%rax)
1884 movq 712(%r14), %rdx
1885 movq %rax, (%rdx)
1886 movq %rdi, %rax
1887 orq $1, %rax
1888 movq %rax, in_flight_stack(%rip)
1889 movq 4112(%rbx), %rax
1890 movq %rax, 704(%r14)
1891 leaq 4112(%rbx), %rax
1892 movq %rax, 712(%r14)
1893 movq 4112(%rbx), %rax
1894 movq %rdi, 8(%rax)
1895 movq %rdi, 4112(%rbx)
1896 movq $0, in_flight_stack(%rip)
1897 movq 1688(%r14), %r8
1898 xorl %eax, %eax
1899 subq %r8, stack_cache_actsize(%rip)
1900 #APP
1901 # 215 "allocatestack.c" 1
1902 xchgl %eax, 4144(%rbx)
1903 # 0 "" 2
1904 #NO_APP
1905 cmpl $1, %eax
1906 jg .L489
1907 .L363:
1908 movq 8(%r14), %rcx
1909 pxor %xmm0, %xmm0
1910 movq 1680(%r14), %rax
1911 movq %r8, 40(%rsp)
1912 movl $0, 776(%r14)
1913 movq $0, 760(%r14)
1914 cmpq $0, -16(%rcx)
1915 movq $0, 1640(%r14)
1916 movq %rax, 48(%rsp)
1917 movups %xmm0, 2424(%r14)
1918 je .L417
1919 movq %rbx, 64(%rsp)
1920 movq %rcx, %rbx
1921 .p2align 4,,10
1922 .p2align 3
1923 .L365:
1924 addq $1, %r15
1925 movq %r15, %rax
1926 salq $4, %rax
1927 movq 8(%rbx,%rax), %rdi
1928 call free@PLT
1929 movq -16(%rbx), %rax
1930 cmpq %rax, %r15
1931 jb .L365
1932 movq %rbx, %rcx
1933 leaq 1(%rax), %rdx
1934 movq 64(%rsp), %rbx
1935 salq $4, %rdx
1936 .L364:
1937 movq %rcx, %rdi
1938 xorl %esi, %esi
1939 call memset@PLT
1940 movq %r14, %rdi
1941 call _dl_allocate_tls_init@PLT
1942 .L366:
1943 movq 1696(%r14), %rsi
1944 cmpq %rsi, %r12
1945 ja .L490
1946 movq 40(%rsp), %rax
1947 subq 32(%rsp), %rax
1948 subq %r12, %rsi
1949 cmpq %rax, %rsi
1950 ja .L491
1951 .L382:
1952 movq %r12, 1704(%r14)
1953 .L351:
1954 leaq 736(%r14), %rax
1955 movl $0, 1560(%r14)
1956 movq $-32, 744(%r14)
1957 movq $0, 752(%r14)
1958 movq %r14, 16(%r14)
1959 movq %rax, 728(%r14)
1960 movq %rax, 736(%r14)
1961 movq %r14, %rax
1962 subq __static_tls_size(%rip), %rax
1963 cmpq $-1, %r13
1964 movq %r14, (%r14)
1965 sete 2416(%r14)
1966 movl 8(%rbp), %esi
1967 leaq 2496(%rax), %rbx
1968 movq 16(%rsp), %rax
1969 movl %esi, %ecx
1970 andl $-97, %ecx
1971 movq %rax, 1600(%r14)
1972 movq 24(%rsp), %rax
1973 movq %rax, 1608(%r14)
1974 movq %fs:16, %rdx
1975 movl 780(%rdx), %eax
1976 movdqa 1616(%rdx), %xmm0
1977 andl $96, %eax
1978 orl %ecx, %eax
1979 testb $1, %sil
1980 movl $0, %ecx
1981 cmovne %r14, %rcx
1982 movl %eax, 780(%r14)
1983 movq %rcx, 1576(%r14)
1984 movaps %xmm0, 1616(%r14)
1985 movq 1632(%rdx), %rcx
1986 movq %rcx, 1632(%r14)
1987 movl 1596(%rdx), %ecx
1988 movl 1592(%rdx), %edx
1989 movl %ecx, 1596(%r14)
1990 movl %edx, 1592(%r14)
1991 #APP
1992 # 697 "pthread_create.c" 1
1993 movq %fs:40,%rdx
1994 # 0 "" 2
1995 #NO_APP
1996 movq %rdx, 40(%r14)
1997 #APP
1998 # 702 "pthread_create.c" 1
1999 movq %fs:48,%rdx
2000 # 0 "" 2
2001 #NO_APP
2002 movq %rdx, 48(%r14)
2003 #APP
2004 # 22 "../sysdeps/x86/nptl/tls-setup.h" 1
2005 movl %fs:72,%edx
2006 # 0 "" 2
2007 #NO_APP
2008 testb $2, %sil
2009 movl %edx, 72(%r14)
2010 jne .L492
2011 .L389:
2012 cmpl $1, __nptl_nthreads(%rip)
2013 je .L493
2014 .L394:
2015 movq 8(%rsp), %rax
2016 movq %r14, (%rax)
2017 #APP
2018 # 751 "pthread_create.c" 1
2019 lock;incl __nptl_nthreads(%rip)
2020 # 0 "" 2
2021 #NO_APP
2022 leaq 160(%rsp), %r12
2023 movb $0, 94(%rsp)
2024 movb $0, 95(%rsp)
2025 movl $8, %r10d
2026 leaq sigall_set(%rip), %rsi
2027 xorl %edi, %edi
2028 movq %r12, %rdx
2029 movl $14, %eax
2030 #APP
2031 # 71 "../sysdeps/unix/sysv/linux/internal-signals.h" 1
2032 syscall
2034 # 0 "" 2
2035 #NO_APP
2036 movq 40(%rbp), %rax
2037 testq %rax, %rax
2038 je .L395
2039 cmpb $0, 144(%rax)
2040 je .L395
2041 movdqu 16(%rax), %xmm0
2042 movaps %xmm0, 2288(%r14)
2043 movdqu 32(%rax), %xmm0
2044 movaps %xmm0, 2304(%r14)
2045 movdqu 48(%rax), %xmm0
2046 movaps %xmm0, 2320(%r14)
2047 movdqu 64(%rax), %xmm0
2048 movaps %xmm0, 2336(%r14)
2049 movdqu 80(%rax), %xmm0
2050 movaps %xmm0, 2352(%r14)
2051 movdqu 96(%rax), %xmm0
2052 movaps %xmm0, 2368(%r14)
2053 movdqu 112(%rax), %xmm0
2054 movaps %xmm0, 2384(%r14)
2055 movdqu 128(%rax), %xmm0
2056 movaps %xmm0, 2400(%r14)
2057 .L396:
2058 xorl %eax, %eax
2059 #APP
2060 # 606 "pthread_create.c" 1
2061 movb %fs:1553,%al
2062 # 0 "" 2
2063 #NO_APP
2064 testb %al, %al
2065 jne .L494
2066 .L397:
2067 leaq 94(%rsp), %rdx
2068 leaq 95(%rsp), %r8
2069 movq %rbx, %rcx
2070 movq %rbp, %rsi
2071 movq %r14, %rdi
2072 call create_thread
2073 movl %eax, %r15d
2074 .L398:
2075 movl $8, %r10d
2076 xorl %edx, %edx
2077 movq %r12, %rsi
2078 movl $2, %edi
2079 movl $14, %eax
2080 #APP
2081 # 105 "../sysdeps/unix/sysv/linux/internal-signals.h" 1
2082 syscall
2084 # 0 "" 2
2085 #NO_APP
2086 testl %r15d, %r15d
2087 jne .L495
2088 .L402:
2089 cmpb $0, 94(%rsp)
2090 je .L409
2091 leaq 1560(%r14), %rdi
2092 xorl %eax, %eax
2093 #APP
2094 # 870 "pthread_create.c" 1
2095 xchgl %eax, 1560(%r14)
2096 # 0 "" 2
2097 #NO_APP
2098 cmpl $1, %eax
2099 jg .L496
2100 .L409:
2101 #APP
2102 # 875 "pthread_create.c" 1
2103 movl $1,%fs:24
2104 # 0 "" 2
2105 #NO_APP
2106 xorl %r15d, %r15d
2107 jmp .L346
2108 .p2align 4,,10
2109 .p2align 3
2110 .L484:
2111 xorl %eax, %eax
2112 movl $1, %edx
2113 lock cmpxchgl %edx, __default_pthread_attr_lock(%rip)
2114 jne .L497
2115 .L342:
2116 movq 32+__default_pthread_attr(%rip), %rbx
2117 xorl %eax, %eax
2118 #APP
2119 # 419 "allocatestack.c" 1
2120 xchgl %eax, __default_pthread_attr_lock(%rip)
2121 # 0 "" 2
2122 #NO_APP
2123 cmpl $1, %eax
2124 jg .L498
2125 .L343:
2126 testb $8, 8(%rbp)
2127 je .L344
2128 movq 32(%rbp), %rax
2129 movq 24(%rbp), %rdx
2130 testq %rax, %rax
2131 jne .L411
2132 .L345:
2133 movq __static_tls_align_m1(%rip), %rax
2134 leaq -2496(%rdx), %r9
2135 andq %r9, %rax
2136 leaq 2496(%rax), %rcx
2137 cmpq %rcx, %rbx
2138 jbe .L499
2139 subq %rax, %r9
2140 xorl %eax, %eax
2141 subq %rbx, %rdx
2142 leaq 8(%r9), %rdi
2143 movq %r9, %rcx
2144 movq $0, (%r9)
2145 movq $0, 2488(%r9)
2146 movq %r9, %r14
2147 andq $-8, %rdi
2148 subq %rdi, %rcx
2149 addl $2496, %ecx
2150 shrl $3, %ecx
2151 rep stosq
2152 leaq 784(%r9), %rax
2153 movq %rdx, 1680(%r9)
2154 movq %rbx, 1688(%r9)
2155 movb $1, 1554(%r9)
2156 movl $1, 24(%r9)
2157 movq %r9, %rdi
2158 movq %rax, 1296(%r9)
2159 movq __libc_multiple_threads_ptr(%rip), %rax
2160 movl $1, (%rax)
2161 movl $-1, 1564(%r9)
2162 movl $1, __pthread_multiple_threads(%rip)
2163 call _dl_allocate_tls@PLT
2164 testq %rax, %rax
2165 je .L500
2166 movq _rtld_global@GOTPCREL(%rip), %rbx
2167 xorl %eax, %eax
2168 movl $1, %edx
2169 lock cmpxchgl %edx, 4144(%rbx)
2170 jne .L501
2171 .L350:
2172 movq 4128(%rbx), %rdx
2173 leaq 704(%r14), %rax
2174 movq %rdx, 704(%r14)
2175 leaq 4128(%rbx), %rdx
2176 movq %rdx, 712(%r14)
2177 movq 4128(%rbx), %rdx
2178 movq %rax, 8(%rdx)
2179 movq %rax, 4128(%rbx)
2180 xorl %eax, %eax
2181 #APP
2182 # 506 "allocatestack.c" 1
2183 xchgl %eax, 4144(%rbx)
2184 # 0 "" 2
2185 #NO_APP
2186 cmpl $1, %eax
2187 jle .L351
2188 leaq 4144(%rbx), %rdi
2189 xorl %r10d, %r10d
2190 movl $1, %edx
2191 movl $129, %esi
2192 movl $202, %eax
2193 #APP
2194 # 506 "allocatestack.c" 1
2195 syscall
2197 # 0 "" 2
2198 #NO_APP
2199 jmp .L351
2200 .p2align 4,,10
2201 .p2align 3
2202 .L395:
2203 movdqa 160(%rsp), %xmm0
2204 movabsq $-2147483649, %rax
2205 movaps %xmm0, 2288(%r14)
2206 andq %rax, 2288(%r14)
2207 movdqa 176(%rsp), %xmm0
2208 movaps %xmm0, 2304(%r14)
2209 movdqa 192(%rsp), %xmm0
2210 movaps %xmm0, 2320(%r14)
2211 movdqa 208(%rsp), %xmm0
2212 movaps %xmm0, 2336(%r14)
2213 movdqa 224(%rsp), %xmm0
2214 movaps %xmm0, 2352(%r14)
2215 movdqa 240(%rsp), %xmm0
2216 movaps %xmm0, 2368(%r14)
2217 movdqa 256(%rsp), %xmm0
2218 movaps %xmm0, 2384(%r14)
2219 movdqa 272(%rsp), %xmm0
2220 movaps %xmm0, 2400(%r14)
2221 jmp .L396
2222 .p2align 4,,10
2223 .p2align 3
2224 .L415:
2225 movq %rsi, %r14
2226 jmp .L358
2227 .p2align 4,,10
2228 .p2align 3
2229 .L493:
2230 call _IO_enable_locks@PLT
2231 jmp .L394
2232 .p2align 4,,10
2233 .p2align 3
2234 .L495:
2235 cmpb $0, 95(%rsp)
2236 jne .L502
2237 #APP
2238 # 844 "pthread_create.c" 1
2239 lock;decl __nptl_nthreads(%rip)
2240 # 0 "" 2
2241 #NO_APP
2242 xorl %eax, %eax
2243 #APP
2244 # 848 "pthread_create.c" 1
2245 xchgl %eax, 1564(%r14)
2246 # 0 "" 2
2247 #NO_APP
2248 cmpl $-2, %eax
2249 je .L503
2250 .L407:
2251 movq %r14, %rdi
2252 call __deallocate_stack
2253 .L404:
2254 cmpl $12, %r15d
2255 jne .L346
2256 .L387:
2257 movl $11, %r15d
2258 jmp .L346
2259 .p2align 4,,10
2260 .p2align 3
2261 .L494:
2262 movl __nptl_threads_events(%rip), %eax
2263 orl 1616(%r14), %eax
2264 testb $-128, %al
2265 je .L397
2266 leaq 94(%rsp), %rdx
2267 leaq 95(%rsp), %r8
2268 movq %rbx, %rcx
2269 movq %rbp, %rsi
2270 movq %r14, %rdi
2271 movb $1, 94(%rsp)
2272 call create_thread
2273 testl %eax, %eax
2274 movl %eax, %r15d
2275 jne .L398
2276 cmpb $0, 94(%rsp)
2277 je .L504
2278 cmpb $0, 1555(%r14)
2279 je .L505
2280 movl $8, 1624(%r14)
2281 movq %r14, 1632(%r14)
2282 .L401:
2283 movq __nptl_last_event(%rip), %rax
2284 movq %rax, 1640(%r14)
2285 lock cmpxchgq %r14, __nptl_last_event(%rip)
2286 jne .L401
2287 call __GI___nptl_create_event
2288 movl $8, %r10d
2289 xorl %edx, %edx
2290 movq %r12, %rsi
2291 movl $2, %edi
2292 movl $14, %eax
2293 #APP
2294 # 105 "../sysdeps/unix/sysv/linux/internal-signals.h" 1
2295 syscall
2297 # 0 "" 2
2298 #NO_APP
2299 jmp .L402
2300 .p2align 4,,10
2301 .p2align 3
2302 .L492:
2303 testb $96, %sil
2304 je .L389
2305 testb $64, %sil
2306 je .L391
2307 movl 4(%rbp), %edx
2308 orl $64, %eax
2309 movl %eax, 780(%r14)
2310 movl %edx, 1596(%r14)
2311 .L391:
2312 andl $32, %esi
2313 je .L392
2314 movl 0(%rbp), %edx
2315 orl $32, %eax
2316 movl %eax, 780(%r14)
2317 movl %edx, 1592(%r14)
2318 .L392:
2319 movl %eax, %edx
2320 andl $96, %edx
2321 cmpl $96, %edx
2322 je .L389
2323 testb $64, %al
2324 jne .L393
2325 xorl %edi, %edi
2326 movl $145, %eax
2327 #APP
2328 # 31 "../sysdeps/unix/sysv/linux/default-sched.h" 1
2329 syscall
2331 # 0 "" 2
2332 #NO_APP
2333 movl %eax, 1596(%r14)
2334 movl 780(%r14), %eax
2335 orl $64, %eax
2336 movl %eax, 780(%r14)
2337 .L393:
2338 testb $32, %al
2339 jne .L389
2340 leaq 1592(%r14), %rsi
2341 xorl %edi, %edi
2342 movl $143, %eax
2343 #APP
2344 # 37 "../sysdeps/unix/sysv/linux/default-sched.h" 1
2345 syscall
2347 # 0 "" 2
2348 #NO_APP
2349 orl $32, 780(%r14)
2350 jmp .L389
2351 .p2align 4,,10
2352 .p2align 3
2353 .L485:
2354 movq 24(%rbp), %rdx
2355 movq %rbx, %rax
2356 .L411:
2357 movq __static_tls_size(%rip), %rsi
2358 leaq 2048(%rsi), %rcx
2359 cmpq %rax, %rcx
2360 jbe .L345
2361 jmp .L353
2362 .p2align 4,,10
2363 .p2align 3
2364 .L502:
2365 cmpb $0, 94(%rsp)
2366 jne .L404
2367 leaq __PRETTY_FUNCTION__.13693(%rip), %rcx
2368 leaq .LC11(%rip), %rsi
2369 leaq .LC12(%rip), %rdi
2370 movl $837, %edx
2371 call __assert_fail@PLT
2372 .p2align 4,,10
2373 .p2align 3
2374 .L488:
2375 leaq 4144(%rbx), %rdi
2376 movq %r8, 40(%rsp)
2377 call __lll_lock_wait_private
2378 movq 40(%rsp), %r8
2379 jmp .L356
2380 .p2align 4,,10
2381 .p2align 3
2382 .L357:
2383 xorl %eax, %eax
2384 #APP
2385 # 197 "allocatestack.c" 1
2386 xchgl %eax, 4144(%rbx)
2387 # 0 "" 2
2388 #NO_APP
2389 cmpl $1, %eax
2390 jg .L506
2391 .L362:
2392 movq 32(%rsp), %rax
2393 movl $0, %edx
2394 movl $131106, %ecx
2395 addq %rax, %r8
2396 testw %ax, %ax
2397 cmovne %rax, %r8
2398 testq %r12, %r12
2399 cmove 60(%rsp), %edx
2400 movq %r8, %rsi
2401 movq %r8, 40(%rsp)
2402 xorl %r9d, %r9d
2403 xorl %edi, %edi
2404 movl $-1, %r8d
2405 call __mmap@PLT
2406 cmpq $-1, %rax
2407 movq %rax, 48(%rsp)
2408 je .L481
2409 cmpq $0, 48(%rsp)
2410 je .L507
2411 movq 48(%rsp), %rdi
2412 movq 40(%rsp), %rsi
2413 movq __static_tls_align_m1(%rip), %rax
2414 leaq -2496(%rdi,%rsi), %r9
2415 notq %rax
2416 andq %rax, %r9
2417 testq %r12, %r12
2418 movq %r9, %r14
2419 je .L372
2420 movl 60(%rsp), %edx
2421 subq %r12, %rsi
2422 addq %r12, %rdi
2423 call __mprotect@PLT
2424 testl %eax, %eax
2425 je .L372
2426 movq errno@gottpoff(%rip), %r15
2427 movl %fs:(%r15), %edx
2428 testl %edx, %edx
2429 jne .L508
2430 .L372:
2431 movq 48(%rsp), %rax
2432 movq %r12, 1696(%r14)
2433 movq %r14, %rdi
2434 movl $1, 24(%r14)
2435 movq %rax, 1680(%r14)
2436 movq 40(%rsp), %rax
2437 movq %rax, 1688(%r14)
2438 leaq 784(%r14), %rax
2439 movq %rax, 1296(%r14)
2440 movq __libc_multiple_threads_ptr(%rip), %rax
2441 movl $1, (%rax)
2442 movl $-1, 1564(%r14)
2443 movl $1, __pthread_multiple_threads(%rip)
2444 call _dl_allocate_tls@PLT
2445 testq %rax, %rax
2446 je .L509
2447 xorl %eax, %eax
2448 movl $1, %edx
2449 lock cmpxchgl %edx, 4144(%rbx)
2450 jne .L510
2451 .L375:
2452 leaq 704(%r14), %rsi
2453 movq %rsi, %rax
2454 movq %rsi, 72(%rsp)
2455 orq $1, %rax
2456 movq %rax, in_flight_stack(%rip)
2457 movq 4112(%rbx), %rax
2458 movq %rax, 704(%r14)
2459 leaq 4112(%rbx), %rax
2460 movq %rax, 712(%r14)
2461 movq 4112(%rbx), %rax
2462 movq %rsi, 8(%rax)
2463 movq %rsi, 4112(%rbx)
2464 movq $0, in_flight_stack(%rip)
2465 xorl %eax, %eax
2466 #APP
2467 # 640 "allocatestack.c" 1
2468 xchgl %eax, 4144(%rbx)
2469 # 0 "" 2
2470 #NO_APP
2471 cmpl $1, %eax
2472 jg .L511
2473 .L376:
2474 testb $1, 4016(%rbx)
2475 je .L366
2476 movl 64(%rsp), %eax
2477 testl %eax, %eax
2478 jne .L366
2479 movq %r14, %rdi
2480 call change_stack_perm
2481 testl %eax, %eax
2482 movl %eax, %r15d
2483 je .L366
2484 movq 40(%rsp), %rsi
2485 movq 48(%rsp), %rdi
2486 call __munmap@PLT
2487 jmp .L404
2488 .p2align 4,,10
2489 .p2align 3
2490 .L496:
2491 xorl %r10d, %r10d
2492 movl $1, %edx
2493 movl $129, %esi
2494 movl $202, %eax
2495 #APP
2496 # 870 "pthread_create.c" 1
2497 syscall
2499 # 0 "" 2
2500 #NO_APP
2501 jmp .L409
2502 .p2align 4,,10
2503 .p2align 3
2504 .L500:
2505 movq errno@gottpoff(%rip), %rax
2506 cmpl $12, %fs:(%rax)
2507 je .L387
2508 leaq __PRETTY_FUNCTION__.13186(%rip), %rcx
2509 leaq .LC3(%rip), %rsi
2510 leaq .LC8(%rip), %rdi
2511 movl $495, %edx
2512 call __assert_fail@PLT
2513 .p2align 4,,10
2514 .p2align 3
2515 .L414:
2516 movq %rsi, %r14
2517 jmp .L359
2518 .p2align 4,,10
2519 .p2align 3
2520 .L497:
2521 leaq __default_pthread_attr_lock(%rip), %rdi
2522 movq %r8, 32(%rsp)
2523 call __lll_lock_wait_private
2524 movq 32(%rsp), %r8
2525 jmp .L342
2526 .p2align 4,,10
2527 .p2align 3
2528 .L498:
2529 xorl %r10d, %r10d
2530 movl $1, %edx
2531 movl $129, %esi
2532 leaq __default_pthread_attr_lock(%rip), %rdi
2533 movl $202, %eax
2534 #APP
2535 # 419 "allocatestack.c" 1
2536 syscall
2538 # 0 "" 2
2539 #NO_APP
2540 jmp .L343
2541 .p2align 4,,10
2542 .p2align 3
2543 .L417:
2544 movl $16, %edx
2545 jmp .L364
2546 .L490:
2547 movq 48(%rsp), %rdi
2548 xorl %edx, %edx
2549 movq %r12, %rsi
2550 call __mprotect@PLT
2551 testl %eax, %eax
2552 je .L480
2553 .L383:
2554 xorl %eax, %eax
2555 movl $1, %edx
2556 lock cmpxchgl %edx, 4144(%rbx)
2557 jne .L512
2558 .L380:
2559 movq 72(%rsp), %rax
2560 movq %rax, in_flight_stack(%rip)
2561 movq 712(%r14), %rdx
2562 movq 704(%r14), %rax
2563 movq %rdx, 8(%rax)
2564 movq 712(%r14), %rdx
2565 movq %rax, (%rdx)
2566 movq $0, in_flight_stack(%rip)
2567 xorl %eax, %eax
2568 #APP
2569 # 686 "allocatestack.c" 1
2570 xchgl %eax, 4144(%rbx)
2571 # 0 "" 2
2572 #NO_APP
2573 cmpl $1, %eax
2574 jg .L513
2575 .L381:
2576 xorl %esi, %esi
2577 movq %r14, %rdi
2578 call _dl_deallocate_tls@PLT
2579 movq 40(%rsp), %rsi
2580 movq 48(%rsp), %rdi
2581 call __munmap@PLT
2582 .L481:
2583 movq errno@gottpoff(%rip), %rax
2584 movl %fs:(%rax), %r15d
2585 .L370:
2586 testl %r15d, %r15d
2587 jne .L404
2588 movq $0, 16
2590 .p2align 4,,10
2591 .p2align 3
2592 .L509:
2593 movq errno@gottpoff(%rip), %rbx
2594 cmpl $12, %fs:(%rbx)
2595 jne .L514
2596 movq 40(%rsp), %rsi
2597 movq 48(%rsp), %rdi
2598 call __munmap@PLT
2599 movl %fs:(%rbx), %r15d
2600 jmp .L370
2601 .L489:
2602 leaq 4144(%rbx), %rdi
2603 xorl %r10d, %r10d
2604 movl $1, %edx
2605 movl $129, %esi
2606 movl $202, %eax
2607 #APP
2608 # 215 "allocatestack.c" 1
2609 syscall
2611 # 0 "" 2
2612 #NO_APP
2613 movq 1688(%r14), %r8
2614 jmp .L363
2615 .L491:
2616 movq 48(%rsp), %rax
2617 movl 60(%rsp), %edx
2618 leaq (%rax,%r12), %rdi
2619 call __mprotect@PLT
2620 testl %eax, %eax
2621 jne .L383
2622 .L480:
2623 movq %r12, 1696(%r14)
2624 jmp .L382
2625 .L508:
2626 movq 40(%rsp), %rsi
2627 movq 48(%rsp), %rdi
2628 call __munmap@PLT
2629 movl %fs:(%r15), %r15d
2630 jmp .L370
2631 .L501:
2632 leaq 4144(%rbx), %rdi
2633 call __lll_lock_wait_private
2634 jmp .L350
2635 .L506:
2636 leaq 4144(%rbx), %rdi
2637 xorl %r10d, %r10d
2638 movl $1, %edx
2639 movl $129, %esi
2640 movl $202, %eax
2641 #APP
2642 # 197 "allocatestack.c" 1
2643 syscall
2645 # 0 "" 2
2646 #NO_APP
2647 jmp .L362
2648 .L503:
2649 leaq 1564(%r14), %rdi
2650 xorl %r10d, %r10d
2651 movl $1, %edx
2652 movl $129, %esi
2653 movl $202, %eax
2654 #APP
2655 # 209 "../sysdeps/nptl/futex-internal.h" 1
2656 syscall
2658 # 0 "" 2
2659 #NO_APP
2660 cmpq $-4096, %rax
2661 jbe .L407
2662 cmpl $-22, %eax
2663 je .L407
2664 cmpl $-14, %eax
2665 je .L407
2666 leaq .LC2(%rip), %rdi
2667 call __libc_fatal@PLT
2668 .p2align 4,,10
2669 .p2align 3
2670 .L511:
2671 leaq 4144(%rbx), %rdi
2672 xorl %r10d, %r10d
2673 movl $1, %edx
2674 movl $129, %esi
2675 movl $202, %eax
2676 #APP
2677 # 640 "allocatestack.c" 1
2678 syscall
2680 # 0 "" 2
2681 #NO_APP
2682 jmp .L376
2683 .L510:
2684 leaq 4144(%rbx), %rdi
2685 call __lll_lock_wait_private
2686 jmp .L375
2687 .L512:
2688 leaq 4144(%rbx), %rdi
2689 call __lll_lock_wait_private
2690 jmp .L380
2691 .L513:
2692 leaq 4144(%rbx), %rdi
2693 xorl %r10d, %r10d
2694 movl $1, %edx
2695 movl $129, %esi
2696 movl $202, %eax
2697 #APP
2698 # 686 "allocatestack.c" 1
2699 syscall
2701 # 0 "" 2
2702 #NO_APP
2703 jmp .L381
2704 .L486:
2705 leaq __PRETTY_FUNCTION__.13186(%rip), %rcx
2706 leaq .LC3(%rip), %rsi
2707 leaq .LC9(%rip), %rdi
2708 movl $520, %edx
2709 call __assert_fail@PLT
2710 .L483:
2711 leaq __PRETTY_FUNCTION__.13186(%rip), %rcx
2712 leaq .LC3(%rip), %rsi
2713 leaq .LC6(%rip), %rdi
2714 movl $408, %edx
2715 call __assert_fail@PLT
2716 .L499:
2717 leaq __PRETTY_FUNCTION__.13186(%rip), %rcx
2718 leaq .LC3(%rip), %rsi
2719 leaq .LC7(%rip), %rdi
2720 movl $444, %edx
2721 call __assert_fail@PLT
2722 .L507:
2723 leaq __PRETTY_FUNCTION__.13186(%rip), %rcx
2724 leaq .LC3(%rip), %rsi
2725 leaq .LC10(%rip), %rdi
2726 movl $570, %edx
2727 call __assert_fail@PLT
2728 .L514:
2729 leaq __PRETTY_FUNCTION__.13186(%rip), %rcx
2730 leaq .LC3(%rip), %rsi
2731 leaq .LC8(%rip), %rdi
2732 movl $625, %edx
2733 call __assert_fail@PLT
2734 .L505:
2735 leaq __PRETTY_FUNCTION__.13693(%rip), %rcx
2736 leaq .LC11(%rip), %rsi
2737 leaq .LC13(%rip), %rdi
2738 movl $799, %edx
2739 call __assert_fail@PLT
2740 .L504:
2741 leaq __PRETTY_FUNCTION__.13693(%rip), %rcx
2742 leaq .LC11(%rip), %rsi
2743 leaq .LC12(%rip), %rdi
2744 movl $798, %edx
2745 call __assert_fail@PLT
2746 .size __pthread_create_2_1, .-__pthread_create_2_1
2747 .section .rodata.str1.16,"aMS",@progbits,1
2748 .align 16
2749 .type __PRETTY_FUNCTION__.13177, @object
2750 .size __PRETTY_FUNCTION__.13177, 19
2751 __PRETTY_FUNCTION__.13177:
2752 .string "advise_stack_range"
2753 .section .rodata.str1.8
2754 .align 8
2755 .type __PRETTY_FUNCTION__.13521, @object
2756 .size __PRETTY_FUNCTION__.13521, 14
2757 __PRETTY_FUNCTION__.13521:
2758 .string "create_thread"
2759 .align 8
2760 .type __PRETTY_FUNCTION__.13186, @object
2761 .size __PRETTY_FUNCTION__.13186, 15
2762 __PRETTY_FUNCTION__.13186:
2763 .string "allocate_stack"
2764 .section .rodata.str1.16
2765 .align 16
2766 .type __PRETTY_FUNCTION__.13693, @object
2767 .size __PRETTY_FUNCTION__.13693, 21
2768 __PRETTY_FUNCTION__.13693:
2769 .string "__pthread_create_2_1"
2770 .align 16
2771 .type __PRETTY_FUNCTION__.13328, @object
2772 .size __PRETTY_FUNCTION__.13328, 17
2773 __PRETTY_FUNCTION__.13328:
2774 .string "__reclaim_stacks"
2775 .globl _thread_db_const_thread_area
2776 .section .rodata.cst4,"aM",@progbits,4
2777 .align 4
2778 .type _thread_db_const_thread_area, @object
2779 .size _thread_db_const_thread_area, 4
2780 _thread_db_const_thread_area:
2781 .long 25
2782 .globl _thread_db_dtv_slotinfo_list_slotinfo
2783 .section .rodata
2784 .align 8
2785 .type _thread_db_dtv_slotinfo_list_slotinfo, @object
2786 .size _thread_db_dtv_slotinfo_list_slotinfo, 12
2787 _thread_db_dtv_slotinfo_list_slotinfo:
2788 .long 128
2789 .long 0
2790 .long 16
2791 .globl _thread_db_rtld_global__dl_stack_used
2792 .align 8
2793 .type _thread_db_rtld_global__dl_stack_used, @object
2794 .size _thread_db_rtld_global__dl_stack_used, 12
2795 _thread_db_rtld_global__dl_stack_used:
2796 .long 128
2797 .long 1
2798 .long 4112
2799 .globl _thread_db_rtld_global__dl_stack_user
2800 .align 8
2801 .type _thread_db_rtld_global__dl_stack_user, @object
2802 .size _thread_db_rtld_global__dl_stack_user, 12
2803 _thread_db_rtld_global__dl_stack_user:
2804 .long 128
2805 .long 1
2806 .long 4128
2807 .globl _thread_db_rtld_global__dl_tls_dtv_slotinfo_list
2808 .align 8
2809 .type _thread_db_rtld_global__dl_tls_dtv_slotinfo_list, @object
2810 .size _thread_db_rtld_global__dl_tls_dtv_slotinfo_list, 12
2811 _thread_db_rtld_global__dl_tls_dtv_slotinfo_list:
2812 .long 64
2813 .long 1
2814 .long 4032
2815 .globl _thread_db__rtld_global
2816 .align 8
2817 .type _thread_db__rtld_global, @object
2818 .size _thread_db__rtld_global, 12
2819 _thread_db__rtld_global:
2820 .long 33216
2821 .long 1
2822 .long 0
2823 .globl _thread_db_sizeof_rtld_global
2824 .section .rodata.cst4
2825 .align 4
2826 .type _thread_db_sizeof_rtld_global, @object
2827 .size _thread_db_sizeof_rtld_global, 4
2828 _thread_db_sizeof_rtld_global:
2829 .long 4152
2830 .globl _thread_db_dtv_dtv
2831 .section .rodata
2832 .align 8
2833 .type _thread_db_dtv_dtv, @object
2834 .size _thread_db_dtv_dtv, 12
2835 _thread_db_dtv_dtv:
2836 .long 128
2837 .long 134217727
2838 .long 0
2839 .globl _thread_db_link_map_l_tls_offset
2840 .align 8
2841 .type _thread_db_link_map_l_tls_offset, @object
2842 .size _thread_db_link_map_l_tls_offset, 12
2843 _thread_db_link_map_l_tls_offset:
2844 .long 64
2845 .long 1
2846 .long 1112
2847 .globl _thread_db_link_map_l_tls_modid
2848 .align 8
2849 .type _thread_db_link_map_l_tls_modid, @object
2850 .size _thread_db_link_map_l_tls_modid, 12
2851 _thread_db_link_map_l_tls_modid:
2852 .long 64
2853 .long 1
2854 .long 1120
2855 .globl _thread_db_pthread_key_data_level2_data
2856 .align 8
2857 .type _thread_db_pthread_key_data_level2_data, @object
2858 .size _thread_db_pthread_key_data_level2_data, 12
2859 _thread_db_pthread_key_data_level2_data:
2860 .long 128
2861 .long 32
2862 .long 0
2863 .globl _thread_db_sizeof_pthread_key_data_level2
2864 .section .rodata.cst4
2865 .align 4
2866 .type _thread_db_sizeof_pthread_key_data_level2, @object
2867 .size _thread_db_sizeof_pthread_key_data_level2, 4
2868 _thread_db_sizeof_pthread_key_data_level2:
2869 .long 512
2870 .globl _thread_db___pthread_keys
2871 .section .rodata
2872 .align 8
2873 .type _thread_db___pthread_keys, @object
2874 .size _thread_db___pthread_keys, 12
2875 _thread_db___pthread_keys:
2876 .long 128
2877 .long 1024
2878 .long 0
2879 .globl _thread_db___nptl_initial_report_events
2880 .align 8
2881 .type _thread_db___nptl_initial_report_events, @object
2882 .size _thread_db___nptl_initial_report_events, 12
2883 _thread_db___nptl_initial_report_events:
2884 .long 8
2885 .long 1
2886 .long 0
2887 .globl _thread_db___nptl_nthreads
2888 .align 8
2889 .type _thread_db___nptl_nthreads, @object
2890 .size _thread_db___nptl_nthreads, 12
2891 _thread_db___nptl_nthreads:
2892 .long 32
2893 .long 1
2894 .long 0
2895 .globl _thread_db_td_eventbuf_t_eventdata
2896 .align 8
2897 .type _thread_db_td_eventbuf_t_eventdata, @object
2898 .size _thread_db_td_eventbuf_t_eventdata, 12
2899 _thread_db_td_eventbuf_t_eventdata:
2900 .long 64
2901 .long 1
2902 .long 16
2903 .globl _thread_db_td_eventbuf_t_eventnum
2904 .align 8
2905 .type _thread_db_td_eventbuf_t_eventnum, @object
2906 .size _thread_db_td_eventbuf_t_eventnum, 12
2907 _thread_db_td_eventbuf_t_eventnum:
2908 .long 32
2909 .long 1
2910 .long 8
2911 .globl _thread_db_sizeof_td_eventbuf_t
2912 .section .rodata.cst4
2913 .align 4
2914 .type _thread_db_sizeof_td_eventbuf_t, @object
2915 .size _thread_db_sizeof_td_eventbuf_t, 4
2916 _thread_db_sizeof_td_eventbuf_t:
2917 .long 24
2918 .globl _thread_db_td_thr_events_t_event_bits
2919 .section .rodata
2920 .align 8
2921 .type _thread_db_td_thr_events_t_event_bits, @object
2922 .size _thread_db_td_thr_events_t_event_bits, 12
2923 _thread_db_td_thr_events_t_event_bits:
2924 .long 32
2925 .long 2
2926 .long 0
2927 .globl _thread_db_sizeof_td_thr_events_t
2928 .section .rodata.cst4
2929 .align 4
2930 .type _thread_db_sizeof_td_thr_events_t, @object
2931 .size _thread_db_sizeof_td_thr_events_t, 4
2932 _thread_db_sizeof_td_thr_events_t:
2933 .long 8
2934 .globl _thread_db_list_t_prev
2935 .section .rodata
2936 .align 8
2937 .type _thread_db_list_t_prev, @object
2938 .size _thread_db_list_t_prev, 12
2939 _thread_db_list_t_prev:
2940 .long 64
2941 .long 1
2942 .long 8
2943 .globl _thread_db_dtv_slotinfo_map
2944 .set _thread_db_dtv_slotinfo_map,_thread_db_list_t_prev
2945 .globl _thread_db_dtv_slotinfo_list_next
2946 .set _thread_db_dtv_slotinfo_list_next,_thread_db_list_t_prev
2947 .globl _thread_db_pthread_dtvp
2948 .set _thread_db_pthread_dtvp,_thread_db_list_t_prev
2949 .globl _thread_db_pthread_key_data_data
2950 .set _thread_db_pthread_key_data_data,_thread_db_list_t_prev
2951 .globl _thread_db_pthread_key_struct_destr
2952 .set _thread_db_pthread_key_struct_destr,_thread_db_list_t_prev
2953 .globl _thread_db_list_t_next
2954 .align 8
2955 .type _thread_db_list_t_next, @object
2956 .size _thread_db_list_t_next, 12
2957 _thread_db_list_t_next:
2958 .long 64
2959 .long 1
2960 .long 0
2961 .globl _thread_db_dtv_slotinfo_gen
2962 .set _thread_db_dtv_slotinfo_gen,_thread_db_list_t_next
2963 .globl _thread_db_dtv_slotinfo_list_len
2964 .set _thread_db_dtv_slotinfo_list_len,_thread_db_list_t_next
2965 .globl _thread_db_dtv_t_counter
2966 .set _thread_db_dtv_t_counter,_thread_db_list_t_next
2967 .globl _thread_db_dtv_t_pointer_val
2968 .set _thread_db_dtv_t_pointer_val,_thread_db_list_t_next
2969 .globl _thread_db_pthread_key_data_seq
2970 .set _thread_db_pthread_key_data_seq,_thread_db_list_t_next
2971 .globl _thread_db_pthread_key_struct_seq
2972 .set _thread_db_pthread_key_struct_seq,_thread_db_list_t_next
2973 .globl _thread_db___nptl_last_event
2974 .set _thread_db___nptl_last_event,_thread_db_list_t_next
2975 .globl _thread_db_sizeof_list_t
2976 .section .rodata.cst4
2977 .align 4
2978 .type _thread_db_sizeof_list_t, @object
2979 .size _thread_db_sizeof_list_t, 4
2980 _thread_db_sizeof_list_t:
2981 .long 16
2982 .globl _thread_db_sizeof_dtv_slotinfo
2983 .set _thread_db_sizeof_dtv_slotinfo,_thread_db_sizeof_list_t
2984 .globl _thread_db_sizeof_dtv_slotinfo_list
2985 .set _thread_db_sizeof_dtv_slotinfo_list,_thread_db_sizeof_list_t
2986 .globl _thread_db_sizeof_pthread_key_data
2987 .set _thread_db_sizeof_pthread_key_data,_thread_db_sizeof_list_t
2988 .globl _thread_db_sizeof_pthread_key_struct
2989 .set _thread_db_sizeof_pthread_key_struct,_thread_db_sizeof_list_t
2990 .globl _thread_db_pthread_nextevent
2991 .section .rodata
2992 .align 8
2993 .type _thread_db_pthread_nextevent, @object
2994 .size _thread_db_pthread_nextevent, 12
2995 _thread_db_pthread_nextevent:
2996 .long 64
2997 .long 1
2998 .long 1640
2999 .globl _thread_db_pthread_eventbuf_eventmask_event_bits
3000 .align 8
3001 .type _thread_db_pthread_eventbuf_eventmask_event_bits, @object
3002 .size _thread_db_pthread_eventbuf_eventmask_event_bits, 12
3003 _thread_db_pthread_eventbuf_eventmask_event_bits:
3004 .long 32
3005 .long 2
3006 .long 1616
3007 .globl _thread_db_pthread_eventbuf_eventmask
3008 .align 8
3009 .type _thread_db_pthread_eventbuf_eventmask, @object
3010 .size _thread_db_pthread_eventbuf_eventmask, 12
3011 _thread_db_pthread_eventbuf_eventmask:
3012 .long 64
3013 .long 1
3014 .long 1616
3015 .globl _thread_db_pthread_eventbuf
3016 .align 8
3017 .type _thread_db_pthread_eventbuf, @object
3018 .size _thread_db_pthread_eventbuf, 12
3019 _thread_db_pthread_eventbuf:
3020 .long 192
3021 .long 1
3022 .long 1616
3023 .globl _thread_db_pthread_specific
3024 .align 8
3025 .type _thread_db_pthread_specific, @object
3026 .size _thread_db_pthread_specific, 12
3027 _thread_db_pthread_specific:
3028 .long 2048
3029 .long 1
3030 .long 1296
3031 .globl _thread_db_pthread_schedparam_sched_priority
3032 .align 8
3033 .type _thread_db_pthread_schedparam_sched_priority, @object
3034 .size _thread_db_pthread_schedparam_sched_priority, 12
3035 _thread_db_pthread_schedparam_sched_priority:
3036 .long 32
3037 .long 1
3038 .long 1592
3039 .globl _thread_db_pthread_schedpolicy
3040 .align 8
3041 .type _thread_db_pthread_schedpolicy, @object
3042 .size _thread_db_pthread_schedpolicy, 12
3043 _thread_db_pthread_schedpolicy:
3044 .long 32
3045 .long 1
3046 .long 1596
3047 .globl _thread_db_pthread_cancelhandling
3048 .align 8
3049 .type _thread_db_pthread_cancelhandling, @object
3050 .size _thread_db_pthread_cancelhandling, 12
3051 _thread_db_pthread_cancelhandling:
3052 .long 32
3053 .long 1
3054 .long 776
3055 .globl _thread_db_pthread_start_routine
3056 .align 8
3057 .type _thread_db_pthread_start_routine, @object
3058 .size _thread_db_pthread_start_routine, 12
3059 _thread_db_pthread_start_routine:
3060 .long 64
3061 .long 1
3062 .long 1600
3063 .globl _thread_db_pthread_tid
3064 .align 8
3065 .type _thread_db_pthread_tid, @object
3066 .size _thread_db_pthread_tid, 12
3067 _thread_db_pthread_tid:
3068 .long 32
3069 .long 1
3070 .long 720
3071 .globl _thread_db_pthread_report_events
3072 .align 8
3073 .type _thread_db_pthread_report_events, @object
3074 .size _thread_db_pthread_report_events, 12
3075 _thread_db_pthread_report_events:
3076 .long 8
3077 .long 1
3078 .long 1553
3079 .globl _thread_db_pthread_list
3080 .align 8
3081 .type _thread_db_pthread_list, @object
3082 .size _thread_db_pthread_list, 12
3083 _thread_db_pthread_list:
3084 .long 128
3085 .long 1
3086 .long 704
3087 .globl _thread_db_sizeof_pthread
3088 .section .rodata.cst4
3089 .align 4
3090 .type _thread_db_sizeof_pthread, @object
3091 .size _thread_db_sizeof_pthread, 4
3092 _thread_db_sizeof_pthread:
3093 .long 2496
3094 .local in_flight_stack
3095 .comm in_flight_stack,8,8
3096 .section .data.rel.local,"aw",@progbits
3097 .align 16
3098 .type stack_cache, @object
3099 .size stack_cache, 16
3100 stack_cache:
3101 .quad stack_cache
3102 .quad stack_cache
3103 .local stack_cache_actsize
3104 .comm stack_cache_actsize,8,8
3105 .hidden __nptl_nthreads
3106 .globl __nptl_nthreads
3107 .data
3108 .align 4
3109 .type __nptl_nthreads, @object
3110 .size __nptl_nthreads, 4
3111 __nptl_nthreads:
3112 .long 1
3113 .local __nptl_last_event
3114 .comm __nptl_last_event,8,8
3115 .local __nptl_threads_events
3116 .comm __nptl_threads_events,8,8
3117 .hidden __pthread_debug
3118 .comm __pthread_debug,4,4
3119 .section .rodata
3120 .align 32
3121 .type sigall_set, @object
3122 .size sigall_set, 128
3123 sigall_set:
3124 .quad -1
3125 .quad -1
3126 .quad -1
3127 .quad -1
3128 .quad -1
3129 .quad -1
3130 .quad -1
3131 .quad -1
3132 .quad -1
3133 .quad -1
3134 .quad -1
3135 .quad -1
3136 .quad -1
3137 .quad -1
3138 .quad -1
3139 .quad -1
3140 .hidden __pthread_multiple_threads
3141 .hidden __libc_multiple_threads_ptr
3142 .hidden __default_pthread_attr
3143 .hidden __static_tls_size
3144 .hidden __static_tls_align_m1
3145 .hidden __pthread_disable_asynccancel
3146 .hidden __pthread_enable_asynccancel
3147 .hidden __xidcmd
3148 .hidden __default_pthread_attr_lock
3149 .hidden __lll_lock_wait_private