clarify the purpose of this project
[nyanglibc.git] / elf / dl-reloc-static-pie.s
blob6487a3ef12a1760b676d9b59b30eb19e4b693a09
1 .text
2 .section .rodata.str1.8,"aMS",@progbits,1
3 .align 8
4 .LC0:
5 .string "%s: Symbol `%s' causes overflow in R_X86_64_32 relocation\n"
6 .align 8
7 .LC1:
8 .string "%s: Symbol `%s' causes overflow in R_X86_64_PC32 relocation\n"
9 .section .rodata.str1.1,"aMS",@progbits,1
10 .LC2:
11 .string "<program name unknown>"
12 .LC3:
13 .string "get-dynamic-info.h"
14 .section .rodata.str1.8
15 .align 8
16 .LC4:
17 .string "info[DT_PLTREL]->d_un.d_val == DT_RELA"
18 .align 8
19 .LC5:
20 .string "info[DT_RELAENT]->d_un.d_val == sizeof (ElfW(Rela))"
21 .section .rodata.str1.1
22 .LC6:
23 .string "info[DT_RUNPATH] == NULL"
24 .LC7:
25 .string "info[DT_RPATH] == NULL"
26 .section .rodata.str1.8
27 .align 8
28 .LC8:
29 .string "../sysdeps/x86_64/dl-machine.h"
30 .align 8
31 .LC9:
32 .string "ELFW(R_TYPE) (reloc->r_info) == R_X86_64_RELATIVE"
33 .text
34 .p2align 4,,15
35 .globl _dl_relocate_static_pie
36 .hidden _dl_relocate_static_pie
37 .type _dl_relocate_static_pie, @function
38 _dl_relocate_static_pie:
39 pushq %r15
40 pushq %r14
41 pushq %r13
42 pushq %r12
43 pushq %rbp
44 pushq %rbx
45 subq $56, %rsp
46 call _dl_get_dl_main_map
47 leaq _DYNAMIC(%rip), %rdx
48 movq %rax, %r12
49 leaq 64(%rax), %rcx
50 movq %rdx, %r13
51 subq _GLOBAL_OFFSET_TABLE_(%rip), %r13
52 movq %rdx, 16(%rax)
53 movq %r13, (%rax)
54 movq _DYNAMIC(%rip), %rax
55 testq %rax, %rax
56 je .L2
57 movl $1879048191, %edi
58 movl $1879047679, %r10d
59 movl $1879047935, %ebx
60 movl $1879048001, %ebp
61 movl $1879047733, %r11d
62 movl $50, %r9d
63 movl $1879048226, %r8d
64 jmp .L8
65 .p2align 4,,10
66 .p2align 3
67 .L229:
68 movq %r8, %rsi
69 subq %rax, %rsi
70 movq %rsi, %rax
71 .L3:
72 movq %rdx, (%rcx,%rax,8)
73 .L7:
74 addq $16, %rdx
75 movq (%rdx), %rax
76 testq %rax, %rax
77 je .L2
78 .L8:
79 cmpq $34, %rax
80 jbe .L3
81 movq %rdi, %rsi
82 subq %rax, %rsi
83 cmpq $15, %rsi
84 jbe .L229
85 leal (%rax,%rax), %esi
86 sarl %esi
87 cmpl $-4, %esi
88 jbe .L5
89 movl %r9d, %eax
90 subl %esi, %eax
91 jmp .L3
92 .p2align 4,,10
93 .p2align 3
94 .L2:
95 testq %r13, %r13
96 je .L10
97 movq 96(%r12), %rax
98 testq %rax, %rax
99 je .L11
100 addq %r13, 8(%rax)
101 .L11:
102 movq 88(%r12), %rax
103 testq %rax, %rax
104 je .L12
105 addq %r13, 8(%rax)
106 .L12:
107 movq 104(%r12), %rax
108 testq %rax, %rax
109 je .L13
110 addq %r13, 8(%rax)
111 .L13:
112 movq 112(%r12), %rax
113 testq %rax, %rax
114 je .L14
115 addq %r13, 8(%rax)
116 .L14:
117 movq 120(%r12), %rax
118 testq %rax, %rax
119 je .L15
120 addq %r13, 8(%rax)
121 .L15:
122 movq 248(%r12), %rax
123 testq %rax, %rax
124 je .L16
125 addq %r13, 8(%rax)
126 .L16:
127 movq 464(%r12), %rax
128 testq %rax, %rax
129 je .L17
130 addq %r13, 8(%rax)
131 .L17:
132 movq 672(%r12), %rax
133 testq %rax, %rax
134 je .L10
135 addq %r13, 8(%rax)
136 .L10:
137 movq 224(%r12), %rsi
138 testq %rsi, %rsi
139 je .L19
140 cmpq $7, 8(%rsi)
141 jne .L230
142 .L19:
143 movq 120(%r12), %rax
144 testq %rax, %rax
145 je .L20
146 movq 136(%r12), %rdx
147 cmpq $24, 8(%rdx)
148 jne .L231
149 .L20:
150 cmpq $0, 296(%r12)
151 jne .L232
152 cmpq $0, 184(%r12)
153 jne .L233
154 testq %rax, %rax
155 je .L103
156 movq 8(%rax), %rcx
157 movq 128(%r12), %rax
158 movq 392(%r12), %rdi
159 movq 8(%rax), %rdx
160 movq %rcx, %rbx
161 movq %rcx, %rax
162 testq %rdi, %rdi
163 leaq (%rcx,%rdx), %r15
164 je .L23
165 movq 8(%rdi), %rdi
166 leaq (%rdi,%rdi,2), %rdi
167 leaq (%rcx,%rdi,8), %rbx
168 .L23:
169 testq %rsi, %rsi
170 je .L24
171 movq 248(%r12), %rdi
172 movq 80(%r12), %rsi
173 movq 8(%rdi), %r8
174 movq 8(%rsi), %rsi
175 movq %rdx, %rdi
176 addq %rsi, %r8
177 subq %rsi, %rdi
178 cmpq %r15, %r8
179 leaq (%rsi,%rcx), %r15
180 cmove %rdi, %rdx
181 addq %rdx, %r15
182 .L24:
183 cmpq _dl_rtld_map@GOTPCREL(%rip), %r12
184 movq 112(%r12), %rdx
185 movq 8(%rdx), %r9
186 je .L26
187 testq %r13, %r13
188 je .L234
189 .L27:
190 cmpq %rax, %rbx
191 jbe .L26
192 .p2align 4,,10
193 .p2align 3
194 .L31:
195 movl 8(%rax), %edx
196 movq (%rax), %rcx
197 addq %r13, %rcx
198 cmpq $38, %rdx
199 je .L30
200 cmpq $8, %rdx
201 jne .L235
202 .L30:
203 movq 16(%rax), %rdx
204 addq $24, %rax
205 addq %r13, %rdx
206 cmpq %rbx, %rax
207 movq %rdx, (%rcx)
208 jb .L31
209 .L26:
210 cmpq $0, 464(%r12)
211 je .L236
212 .L32:
213 cmpq %rbx, %r15
214 jbe .L34
215 xorl %r14d, %r14d
216 leaq .L44(%rip), %r8
217 xorl %r10d, %r10d
218 movq %r14, %r11
219 movq %r12, %rcx
220 movq %r13, %r14
221 movq %r15, %r13
222 .p2align 4,,10
223 .p2align 3
224 .L61:
225 movq 8(%rbx), %rsi
226 movl %esi, %ebp
227 cmpq $37, %rbp
228 je .L237
229 movq (%rbx), %r12
230 addq %r14, %r12
231 cmpq $8, %rbp
232 je .L221
233 cmpq $38, %rbp
234 je .L221
235 testq %rbp, %rbp
236 je .L36
237 movq %rsi, %rax
238 shrq $32, %rax
239 leaq (%rax,%rax,2), %rax
240 leaq (%r9,%rax,8), %r15
241 xorl %eax, %eax
242 testq %r15, %r15
243 je .L40
244 movzwl 6(%r15), %edi
245 movzbl 4(%r15), %edx
246 movq 8(%r15), %rax
247 andl $15, %edx
248 cmpw $-15, %di
249 je .L41
250 addq (%rcx), %rax
251 cmpb $10, %dl
252 je .L238
253 .L40:
254 cmpq $37, %rbp
255 ja .L42
256 movslq (%r8,%rbp,4), %rdx
257 addq %r8, %rdx
258 jmp *%rdx
259 .section .rodata
260 .align 4
261 .align 4
262 .L44:
263 .long .L42-.L44
264 .long .L43-.L44
265 .long .L45-.L44
266 .long .L42-.L44
267 .long .L42-.L44
268 .long .L46-.L44
269 .long .L43-.L44
270 .long .L43-.L44
271 .long .L42-.L44
272 .long .L42-.L44
273 .long .L48-.L44
274 .long .L42-.L44
275 .long .L42-.L44
276 .long .L42-.L44
277 .long .L42-.L44
278 .long .L42-.L44
279 .long .L49-.L44
280 .long .L50-.L44
281 .long .L51-.L44
282 .long .L42-.L44
283 .long .L42-.L44
284 .long .L42-.L44
285 .long .L42-.L44
286 .long .L42-.L44
287 .long .L42-.L44
288 .long .L42-.L44
289 .long .L42-.L44
290 .long .L42-.L44
291 .long .L42-.L44
292 .long .L42-.L44
293 .long .L42-.L44
294 .long .L42-.L44
295 .long .L52-.L44
296 .long .L53-.L44
297 .long .L42-.L44
298 .long .L42-.L44
299 .long .L54-.L44
300 .long .L55-.L44
301 .text
302 .p2align 4,,10
303 .p2align 3
304 .L53:
305 movq 16(%r15), %rax
306 .L43:
307 addq 16(%rbx), %rax
308 movq %rax, (%r12)
309 .p2align 4,,10
310 .p2align 3
311 .L36:
312 addq $24, %rbx
313 cmpq %rbx, %r13
314 ja .L61
315 testq %r11, %r11
316 movq %r14, %r13
317 movq %rcx, %r12
318 movq %r11, %r14
319 je .L34
320 cmpq %r10, %r11
321 ja .L34
322 movq %r9, %rbp
323 movq %r10, %r15
324 jmp .L66
325 .p2align 4,,10
326 .p2align 3
327 .L62:
328 addq $24, %r14
329 cmpq %r15, %r14
330 ja .L34
331 .L66:
332 movq 8(%r14), %rax
333 cmpl $37, %eax
334 jne .L62
335 shrq $32, %rax
336 movq (%r14), %rbx
337 leaq (%rax,%rax,2), %rax
338 leaq 0(%rbp,%rax,8), %rax
339 addq %r13, %rbx
340 testq %rax, %rax
341 je .L223
342 movzwl 6(%rax), %ecx
343 movzbl 4(%rax), %edx
344 movq 8(%rax), %rsi
345 andl $15, %edx
346 cmpw $-15, %cx
347 je .L65
348 cmpb $10, %dl
349 movq (%r12), %rax
350 je .L239
351 .L64:
352 addq 16(%r14), %rax
353 addq $24, %r14
354 call *%rax
355 cmpq %r15, %r14
356 movq %rax, (%rbx)
357 jbe .L66
358 .p2align 4,,10
359 .p2align 3
360 .L34:
361 orb $4, 796(%r12)
362 xorl %esi, %esi
363 xorl %edi, %edi
364 call _dl_debug_initialize
365 movq 232(%r12), %rdx
366 movl $0, 24(%rax)
367 testq %rdx, %rdx
368 je .L1
369 movq %rax, 8(%rdx)
370 .L1:
371 addq $56, %rsp
372 popq %rbx
373 popq %rbp
374 popq %r12
375 popq %r13
376 popq %r14
377 popq %r15
379 .p2align 4,,10
380 .p2align 3
381 .L52:
382 movq 16(%r15), %rax
383 .L48:
384 addq 16(%rbx), %rax
385 movl $4294967295, %edi
386 cmpq %rdi, %rax
387 movl %eax, (%r12)
388 jbe .L36
389 leaq .LC0(%rip), %rdi
390 .L59:
391 movq 104(%rcx), %rax
392 movl (%r15), %edx
393 movq %r10, 32(%rsp)
394 movq %r11, 24(%rsp)
395 movq %r9, 16(%rsp)
396 movq %r8, 8(%rsp)
397 addq 8(%rax), %rdx
398 movq _dl_argv(%rip), %rax
399 movq %rcx, (%rsp)
400 movq (%rax), %rsi
401 leaq .LC2(%rip), %rax
402 testq %rsi, %rsi
403 cmove %rax, %rsi
404 xorl %eax, %eax
405 call _dl_error_printf
406 jmp .L222
407 .p2align 4,,10
408 .p2align 3
409 .L237:
410 testq %r11, %r11
411 movq %rbx, %r10
412 jne .L36
413 movq %rbx, %r11
414 jmp .L36
415 .p2align 4,,10
416 .p2align 3
417 .L221:
418 movq 16(%rbx), %rax
419 addq (%rcx), %rax
420 movq %rax, (%r12)
421 jmp .L36
422 .p2align 4,,10
423 .p2align 3
424 .L5:
425 movq %r10, %rsi
426 subq %rax, %rsi
427 cmpq $11, %rsi
428 jbe .L240
429 movq %rbx, %rsi
430 subq %rax, %rsi
431 cmpq $10, %rsi
432 ja .L7
433 movq %rbp, %rsi
434 subq %rax, %rsi
435 movq %rsi, %rax
436 jmp .L3
437 .p2align 4,,10
438 .p2align 3
439 .L54:
440 testq %r15, %r15
441 je .L241
442 movq 1112(%rcx), %rdx
443 leaq 1(%rdx), %rax
444 cmpq $1, %rax
445 jbe .L242
446 .L57:
447 movq 16(%rbx), %rax
448 addq 8(%r15), %rax
449 subq %rdx, %rax
450 movq %rax, 8(%r12)
451 leaq _dl_tlsdesc_return(%rip), %rax
452 movq %rax, (%r12)
453 jmp .L36
454 .p2align 4,,10
455 .p2align 3
456 .L51:
457 testq %r15, %r15
458 je .L36
459 movq 1112(%rcx), %rdx
460 leaq 1(%rdx), %rax
461 cmpq $1, %rax
462 jbe .L243
463 .L58:
464 movq 16(%rbx), %rax
465 addq 8(%r15), %rax
466 subq %rdx, %rax
467 movq %rax, (%r12)
468 jmp .L36
469 .p2align 4,,10
470 .p2align 3
471 .L50:
472 testq %r15, %r15
473 je .L36
474 movq 16(%rbx), %rax
475 addq 8(%r15), %rax
476 movq %rax, (%r12)
477 jmp .L36
478 .p2align 4,,10
479 .p2align 3
480 .L49:
481 movq 1120(%rcx), %rax
482 movq %rax, (%r12)
483 jmp .L36
484 .p2align 4,,10
485 .p2align 3
486 .L55:
487 movq 16(%rbx), %rax
488 addq (%rcx), %rax
489 movq %r10, 32(%rsp)
490 movq %r11, 24(%rsp)
491 movq %r9, 16(%rsp)
492 movq %r8, 8(%rsp)
493 movq %rcx, (%rsp)
494 call *%rax
495 movq %rax, (%r12)
496 .L222:
497 movq (%rsp), %rcx
498 movq 8(%rsp), %r8
499 movq 16(%rsp), %r9
500 movq 24(%rsp), %r11
501 movq 32(%rsp), %r10
502 jmp .L36
503 .p2align 4,,10
504 .p2align 3
505 .L46:
506 testq %r15, %r15
507 je .L36
508 movq 16(%r15), %rdx
509 movq %rax, %rsi
510 movq %r12, %rdi
511 movq %r10, 32(%rsp)
512 movq %r11, 24(%rsp)
513 movq %r9, 16(%rsp)
514 movq %rcx, 8(%rsp)
515 movq %r8, (%rsp)
516 call memcpy@PLT
517 movq (%rsp), %r8
518 movq 8(%rsp), %rcx
519 movq 16(%rsp), %r9
520 movq 24(%rsp), %r11
521 movq 32(%rsp), %r10
522 jmp .L36
523 .p2align 4,,10
524 .p2align 3
525 .L45:
526 movq 16(%rbx), %rsi
527 subq %r12, %rsi
528 addq %rsi, %rax
529 movslq %eax, %rdx
530 movl %eax, (%r12)
531 cmpq %rdx, %rax
532 je .L36
533 leaq .LC1(%rip), %rdi
534 jmp .L59
535 .p2align 4,,10
536 .p2align 3
537 .L240:
538 movq %r11, %rsi
539 subq %rax, %rsi
540 movq %rsi, %rax
541 jmp .L3
542 .p2align 4,,10
543 .p2align 3
544 .L234:
545 cmpq $0, 576(%r12)
546 je .L27
547 cmpq $0, 464(%r12)
548 jne .L32
549 .L236:
550 xorl %r10d, %r10d
551 xorl %r14d, %r14d
552 cmpq %rbx, %r15
553 leaq .L76(%rip), %r8
554 jbe .L34
555 movq %r14, %r11
556 movq %r12, %rcx
557 movq %r13, %r14
558 movq %r15, %r13
559 .p2align 4,,10
560 .p2align 3
561 .L33:
562 movq 8(%rbx), %r15
563 movl %r15d, %ebp
564 cmpq $37, %rbp
565 je .L244
566 movq (%rbx), %r12
567 addq %r14, %r12
568 cmpq $8, %rbp
569 je .L224
570 cmpq $38, %rbp
571 je .L224
572 testq %rbp, %rbp
573 je .L68
574 movq %r15, %rax
575 shrq $32, %rax
576 leaq (%rax,%rax,2), %rax
577 leaq (%r9,%rax,8), %rdx
578 xorl %eax, %eax
579 testq %rdx, %rdx
580 je .L72
581 movzwl 6(%rdx), %edi
582 movzbl 4(%rdx), %esi
583 movq 8(%rdx), %rax
584 andl $15, %esi
585 cmpw $-15, %di
586 je .L73
587 addq (%rcx), %rax
588 cmpb $10, %sil
589 je .L245
590 .L72:
591 cmpq $37, %rbp
592 ja .L74
593 movslq (%r8,%rbp,4), %rsi
594 addq %r8, %rsi
595 jmp *%rsi
596 .section .rodata
597 .align 4
598 .align 4
599 .L76:
600 .long .L74-.L76
601 .long .L75-.L76
602 .long .L77-.L76
603 .long .L74-.L76
604 .long .L74-.L76
605 .long .L78-.L76
606 .long .L75-.L76
607 .long .L75-.L76
608 .long .L74-.L76
609 .long .L74-.L76
610 .long .L80-.L76
611 .long .L74-.L76
612 .long .L74-.L76
613 .long .L74-.L76
614 .long .L74-.L76
615 .long .L74-.L76
616 .long .L81-.L76
617 .long .L82-.L76
618 .long .L83-.L76
619 .long .L74-.L76
620 .long .L74-.L76
621 .long .L74-.L76
622 .long .L74-.L76
623 .long .L74-.L76
624 .long .L74-.L76
625 .long .L74-.L76
626 .long .L74-.L76
627 .long .L74-.L76
628 .long .L74-.L76
629 .long .L74-.L76
630 .long .L74-.L76
631 .long .L74-.L76
632 .long .L84-.L76
633 .long .L85-.L76
634 .long .L74-.L76
635 .long .L74-.L76
636 .long .L86-.L76
637 .long .L87-.L76
638 .text
639 .L239:
640 testw %cx, %cx
641 je .L64
642 addq %rax, %rsi
643 .L100:
644 call *%rsi
645 .p2align 4,,10
646 .p2align 3
647 .L223:
648 movq (%r12), %rax
649 jmp .L64
650 .p2align 4,,10
651 .p2align 3
652 .L41:
653 cmpb $10, %dl
654 jne .L40
655 .p2align 4,,10
656 .p2align 3
657 .L99:
658 movq %rsi, 40(%rsp)
659 movq %r10, 32(%rsp)
660 movq %r11, 24(%rsp)
661 movq %r9, 16(%rsp)
662 movq %rcx, 8(%rsp)
663 movq %r8, (%rsp)
664 call *%rax
665 movq 40(%rsp), %rsi
666 movq 32(%rsp), %r10
667 movq 24(%rsp), %r11
668 movq 16(%rsp), %r9
669 movq 8(%rsp), %rcx
670 movq (%rsp), %r8
671 jmp .L40
672 .p2align 4,,10
673 .p2align 3
674 .L238:
675 testw %di, %di
676 jne .L99
677 jmp .L40
678 .p2align 4,,10
679 .p2align 3
680 .L103:
681 xorl %ebx, %ebx
682 xorl %eax, %eax
683 xorl %r15d, %r15d
684 xorl %edx, %edx
685 xorl %ecx, %ecx
686 jmp .L23
687 .p2align 4,,10
688 .p2align 3
689 .L85:
690 movq 16(%rdx), %rax
691 .L75:
692 addq 16(%rbx), %rax
693 movq %rax, (%r12)
694 .p2align 4,,10
695 .p2align 3
696 .L68:
697 addq $24, %rbx
698 cmpq %rbx, %r13
699 ja .L33
700 testq %r11, %r11
701 movq %r14, %r13
702 movq %rcx, %r12
703 movq %r11, %r14
704 je .L34
705 cmpq %r10, %r11
706 ja .L34
707 movq %r9, %rbp
708 movq %r10, %r15
709 jmp .L97
710 .p2align 4,,10
711 .p2align 3
712 .L93:
713 addq $24, %r14
714 cmpq %r15, %r14
715 ja .L34
716 .L97:
717 movq 8(%r14), %rax
718 cmpl $37, %eax
719 jne .L93
720 shrq $32, %rax
721 movq (%r14), %rbx
722 leaq (%rax,%rax,2), %rax
723 leaq 0(%rbp,%rax,8), %rax
724 addq %r13, %rbx
725 testq %rax, %rax
726 je .L226
727 movzwl 6(%rax), %ecx
728 movzbl 4(%rax), %edx
729 movq 8(%rax), %rsi
730 andl $15, %edx
731 cmpw $-15, %cx
732 je .L96
733 cmpb $10, %dl
734 movq (%r12), %rax
735 je .L246
736 .L95:
737 addq 16(%r14), %rax
738 call *%rax
739 movq %rax, (%rbx)
740 jmp .L93
741 .p2align 4,,10
742 .p2align 3
743 .L84:
744 movq 16(%rdx), %rax
745 .L80:
746 addq 16(%rbx), %rax
747 movl $4294967295, %edi
748 cmpq %rdi, %rax
749 movl %eax, (%r12)
750 jbe .L68
751 leaq .LC0(%rip), %rdi
752 .L91:
753 movq 104(%rcx), %rax
754 movl (%rdx), %edx
755 movq %r10, 32(%rsp)
756 movq %r11, 24(%rsp)
757 movq %r9, 16(%rsp)
758 movq %r8, 8(%rsp)
759 addq 8(%rax), %rdx
760 movq _dl_argv(%rip), %rax
761 movq %rcx, (%rsp)
762 movq (%rax), %rsi
763 leaq .LC2(%rip), %rax
764 testq %rsi, %rsi
765 cmove %rax, %rsi
766 xorl %eax, %eax
767 call _dl_error_printf
768 jmp .L225
769 .p2align 4,,10
770 .p2align 3
771 .L244:
772 testq %r11, %r11
773 movq %rbx, %r10
774 jne .L68
775 movq %rbx, %r11
776 jmp .L68
777 .p2align 4,,10
778 .p2align 3
779 .L224:
780 movq 16(%rbx), %rax
781 addq (%rcx), %rax
782 movq %rax, (%r12)
783 jmp .L68
784 .p2align 4,,10
785 .p2align 3
786 .L86:
787 testq %rdx, %rdx
788 je .L247
789 movq 1112(%rcx), %rsi
790 leaq 1(%rsi), %rax
791 cmpq $1, %rax
792 jbe .L248
793 .L89:
794 movq 16(%rbx), %rax
795 addq 8(%rdx), %rax
796 subq %rsi, %rax
797 movq %rax, 8(%r12)
798 leaq _dl_tlsdesc_return(%rip), %rax
799 movq %rax, (%r12)
800 jmp .L68
801 .p2align 4,,10
802 .p2align 3
803 .L83:
804 testq %rdx, %rdx
805 je .L68
806 movq 1112(%rcx), %rsi
807 leaq 1(%rsi), %rax
808 cmpq $1, %rax
809 jbe .L249
810 .L90:
811 movq 16(%rbx), %rax
812 addq 8(%rdx), %rax
813 subq %rsi, %rax
814 movq %rax, (%r12)
815 jmp .L68
816 .p2align 4,,10
817 .p2align 3
818 .L82:
819 testq %rdx, %rdx
820 je .L68
821 movq 16(%rbx), %rax
822 addq 8(%rdx), %rax
823 movq %rax, (%r12)
824 jmp .L68
825 .p2align 4,,10
826 .p2align 3
827 .L81:
828 movq 1120(%rcx), %rax
829 movq %rax, (%r12)
830 jmp .L68
831 .p2align 4,,10
832 .p2align 3
833 .L87:
834 movq 16(%rbx), %rax
835 addq (%rcx), %rax
836 movq %r10, 32(%rsp)
837 movq %r11, 24(%rsp)
838 movq %r9, 16(%rsp)
839 movq %r8, 8(%rsp)
840 movq %rcx, (%rsp)
841 call *%rax
842 movq %rax, (%r12)
843 .L225:
844 movq (%rsp), %rcx
845 movq 8(%rsp), %r8
846 movq 16(%rsp), %r9
847 movq 24(%rsp), %r11
848 movq 32(%rsp), %r10
849 jmp .L68
850 .p2align 4,,10
851 .p2align 3
852 .L78:
853 testq %rdx, %rdx
854 je .L68
855 movq 16(%rdx), %rdx
856 movq %rax, %rsi
857 movq %r12, %rdi
858 movq %r10, 32(%rsp)
859 movq %r11, 24(%rsp)
860 movq %r9, 16(%rsp)
861 movq %rcx, 8(%rsp)
862 movq %r8, (%rsp)
863 call memcpy@PLT
864 movq (%rsp), %r8
865 movq 8(%rsp), %rcx
866 movq 16(%rsp), %r9
867 movq 24(%rsp), %r11
868 movq 32(%rsp), %r10
869 jmp .L68
870 .p2align 4,,10
871 .p2align 3
872 .L77:
873 movq 16(%rbx), %rsi
874 subq %r12, %rsi
875 addq %rsi, %rax
876 movslq %eax, %rsi
877 movl %eax, (%r12)
878 cmpq %rsi, %rax
879 je .L68
880 leaq .LC1(%rip), %rdi
881 jmp .L91
882 .L246:
883 testw %cx, %cx
884 je .L95
885 addq %rax, %rsi
886 .L102:
887 call *%rsi
888 .p2align 4,,10
889 .p2align 3
890 .L226:
891 movq (%r12), %rax
892 jmp .L95
893 .p2align 4,,10
894 .p2align 3
895 .L241:
896 movq 16(%rbx), %rax
897 movq %rax, 8(%r12)
898 leaq _dl_tlsdesc_undefweak(%rip), %rax
899 movq %rax, (%r12)
900 jmp .L36
901 .p2align 4,,10
902 .p2align 3
903 .L73:
904 cmpb $10, %sil
905 jne .L72
906 .p2align 4,,10
907 .p2align 3
908 .L101:
909 movq %r10, 40(%rsp)
910 movq %r11, 32(%rsp)
911 movq %r9, 24(%rsp)
912 movq %rcx, 16(%rsp)
913 movq %r8, 8(%rsp)
914 movq %rdx, (%rsp)
915 call *%rax
916 movq 40(%rsp), %r10
917 movq 32(%rsp), %r11
918 movq 24(%rsp), %r9
919 movq 16(%rsp), %rcx
920 movq 8(%rsp), %r8
921 movq (%rsp), %rdx
922 jmp .L72
923 .p2align 4,,10
924 .p2align 3
925 .L245:
926 testw %di, %di
927 jne .L101
928 jmp .L72
929 .L65:
930 cmpb $10, %dl
931 jne .L223
932 jmp .L100
933 .L42:
934 xorl %edx, %edx
935 movq %rcx, %rdi
936 call _dl_reloc_bad_type
937 .p2align 4,,10
938 .p2align 3
939 .L247:
940 movq 16(%rbx), %rax
941 movq %rax, 8(%r12)
942 leaq _dl_tlsdesc_undefweak(%rip), %rax
943 movq %rax, (%r12)
944 jmp .L68
945 .L242:
946 movq %rcx, %rdi
947 movq %r10, 32(%rsp)
948 movq %r11, 24(%rsp)
949 movq %r9, 16(%rsp)
950 movq %r8, 8(%rsp)
951 movq %rcx, (%rsp)
952 call _dl_allocate_static_tls
953 movq (%rsp), %rcx
954 movq 32(%rsp), %r10
955 movq 24(%rsp), %r11
956 movq 16(%rsp), %r9
957 movq 8(%rsp), %r8
958 movq 1112(%rcx), %rdx
959 jmp .L57
960 .L243:
961 movq %rcx, %rdi
962 movq %r10, 32(%rsp)
963 movq %r11, 24(%rsp)
964 movq %r9, 16(%rsp)
965 movq %r8, 8(%rsp)
966 movq %rcx, (%rsp)
967 call _dl_allocate_static_tls
968 movq (%rsp), %rcx
969 movq 32(%rsp), %r10
970 movq 24(%rsp), %r11
971 movq 16(%rsp), %r9
972 movq 8(%rsp), %r8
973 movq 1112(%rcx), %rdx
974 jmp .L58
975 .L96:
976 cmpb $10, %dl
977 jne .L226
978 jmp .L102
979 .L249:
980 movq %rcx, %rdi
981 movq %r10, 40(%rsp)
982 movq %r11, 32(%rsp)
983 movq %r9, 24(%rsp)
984 movq %r8, 16(%rsp)
985 movq %rdx, 8(%rsp)
986 movq %rcx, (%rsp)
987 call _dl_allocate_static_tls
988 movq (%rsp), %rcx
989 movq 40(%rsp), %r10
990 movq 32(%rsp), %r11
991 movq 24(%rsp), %r9
992 movq 16(%rsp), %r8
993 movq 8(%rsp), %rdx
994 movq 1112(%rcx), %rsi
995 jmp .L90
996 .L248:
997 movq %rcx, %rdi
998 movq %r10, 40(%rsp)
999 movq %r11, 32(%rsp)
1000 movq %r9, 24(%rsp)
1001 movq %r8, 16(%rsp)
1002 movq %rdx, 8(%rsp)
1003 movq %rcx, (%rsp)
1004 call _dl_allocate_static_tls
1005 movq (%rsp), %rcx
1006 movq 40(%rsp), %r10
1007 movq 32(%rsp), %r11
1008 movq 24(%rsp), %r9
1009 movq 16(%rsp), %r8
1010 movq 8(%rsp), %rdx
1011 movq 1112(%rcx), %rsi
1012 jmp .L89
1013 .L235:
1014 leaq __PRETTY_FUNCTION__.10198(%rip), %rcx
1015 leaq .LC8(%rip), %rsi
1016 leaq .LC9(%rip), %rdi
1017 movl $546, %edx
1018 call __assert_fail
1019 .L74:
1020 movq %r15, %rsi
1021 xorl %edx, %edx
1022 movq %rcx, %rdi
1023 call _dl_reloc_bad_type
1024 .L230:
1025 leaq __PRETTY_FUNCTION__.10256(%rip), %rcx
1026 leaq .LC3(%rip), %rsi
1027 leaq .LC4(%rip), %rdi
1028 movl $118, %edx
1029 call __assert_fail
1030 .L232:
1031 leaq __PRETTY_FUNCTION__.10256(%rip), %rcx
1032 leaq .LC3(%rip), %rsi
1033 leaq .LC6(%rip), %rdi
1034 movl $141, %edx
1035 call __assert_fail
1036 .L231:
1037 leaq __PRETTY_FUNCTION__.10256(%rip), %rcx
1038 leaq .LC3(%rip), %rsi
1039 leaq .LC5(%rip), %rdi
1040 movl $126, %edx
1041 call __assert_fail
1042 .L233:
1043 leaq __PRETTY_FUNCTION__.10256(%rip), %rcx
1044 leaq .LC3(%rip), %rsi
1045 leaq .LC7(%rip), %rdi
1046 movl $142, %edx
1047 call __assert_fail
1048 .size _dl_relocate_static_pie, .-_dl_relocate_static_pie
1049 .section .rodata.str1.16,"aMS",@progbits,1
1050 .align 16
1051 .type __PRETTY_FUNCTION__.10198, @object
1052 .size __PRETTY_FUNCTION__.10198, 26
1053 __PRETTY_FUNCTION__.10198:
1054 .string "elf_machine_rela_relative"
1055 .align 16
1056 .type __PRETTY_FUNCTION__.10256, @object
1057 .size __PRETTY_FUNCTION__.10256, 21
1058 __PRETTY_FUNCTION__.10256:
1059 .string "elf_get_dynamic_info"
1060 .weak _dl_rtld_map
1061 .hidden __assert_fail
1062 .hidden _dl_allocate_static_tls
1063 .hidden _dl_reloc_bad_type
1064 .hidden _dl_tlsdesc_undefweak
1065 .hidden _dl_tlsdesc_return
1066 .hidden _dl_error_printf
1067 .hidden _dl_argv
1068 .hidden _dl_debug_initialize
1069 .hidden _dl_rtld_map
1070 .hidden _GLOBAL_OFFSET_TABLE_
1071 .hidden _DYNAMIC
1072 .hidden _dl_get_dl_main_map