|
jit_without_flto.bundle: |
|
(__TEXT,__text) section |
|
__mjit0: |
|
0000000000000e30 pushq %rbp |
|
0000000000000e31 movq %rsp, %rbp |
|
0000000000000e34 pushq %r15 |
|
0000000000000e36 pushq %r14 |
|
0000000000000e38 pushq %r13 |
|
0000000000000e3a pushq %r12 |
|
0000000000000e3c pushq %rbx |
|
0000000000000e3d pushq %rax |
|
0000000000000e3e movq %rsi, %rbx |
|
0000000000000e41 movabsq $0x7f9b97904908, %r15 |
|
0000000000000e4b movq 0x20(%rsi), %rax |
|
0000000000000e4f movq -0x18(%rax), %r14 |
|
0000000000000e53 movq -0x8(%rax), %rax |
|
0000000000000e57 andq $-0x4, %rax |
|
0000000000000e5b movq -0x18(%rax), %r12 |
|
0000000000000e5f movq -0x8(%rax), %rax |
|
0000000000000e63 andq $-0x4, %rax |
|
0000000000000e67 movq -0x18(%rax), %r13 |
|
0000000000000e6b leaq 0x18(%r15), %rax |
|
0000000000000e6f movq %rax, (%rsi) |
|
0000000000000e72 testb $0x7, %r13b |
|
0000000000000e76 jne 0xf14 |
|
0000000000000e7c movq %r13, %rax |
|
0000000000000e7f andq $-0x9, %rax |
|
0000000000000e83 je 0xf14 |
|
0000000000000e89 movq 0x8(%r13), %rax |
|
0000000000000e8d movq 0x1194(%rip), %rcx ## literal pool symbol address: _rb_cArray |
|
0000000000000e94 cmpq (%rcx), %rax |
|
0000000000000e97 jne 0xed9 |
|
0000000000000e99 testb $0x1, %r12b |
|
0000000000000e9d je 0xed9 |
|
0000000000000e9f movq 0x11e2(%rip), %rcx ## literal pool symbol address: _ruby_current_vm_ptr |
|
0000000000000ea6 movq (%rcx), %rcx |
|
0000000000000ea9 movzwl 0x436(%rcx), %ecx |
|
0000000000000eb0 andl $0x8, %ecx |
|
0000000000000eb3 testw %cx, %cx |
|
0000000000000eb6 jne 0xed9 |
|
0000000000000eb8 movq %rdi, -0x30(%rbp) |
|
0000000000000ebc movq %r12, %rsi |
|
0000000000000ebf sarq %rsi |
|
0000000000000ec2 movq %r13, %rdi |
|
0000000000000ec5 movq %r14, %rdx |
|
0000000000000ec8 callq 0x1c92 ## symbol stub for: _rb_ary_store |
|
0000000000000ecd cmpq $0x34, %r14 |
|
0000000000000ed1 movq -0x30(%rbp), %rcx |
|
0000000000000ed5 je 0xf14 |
|
0000000000000ed7 jmp 0xf4b |
|
0000000000000ed9 movq 0x1160(%rip), %rcx ## literal pool symbol address: _rb_cHash |
|
0000000000000ee0 cmpq (%rcx), %rax |
|
0000000000000ee3 jne 0xf14 |
|
0000000000000ee5 movq 0x119c(%rip), %rax ## literal pool symbol address: _ruby_current_vm_ptr |
|
0000000000000eec movq (%rax), %rax |
|
0000000000000eef testb $0x10, 0x436(%rax) |
|
0000000000000ef6 jne 0xf14 |
|
0000000000000ef8 movq %rdi, -0x30(%rbp) |
|
0000000000000efc movq %r13, %rdi |
|
0000000000000eff movq %r12, %rsi |
|
0000000000000f02 movq %r14, %rdx |
|
0000000000000f05 callq 0x1ce0 ## symbol stub for: _rb_hash_aset |
|
0000000000000f0a cmpq $0x34, %r14 |
|
0000000000000f0e movq -0x30(%rbp), %rcx |
|
0000000000000f12 jne 0xf4b |
|
0000000000000f14 movq 0x30(%rbx), %rax |
|
0000000000000f18 leaq 0x28(%rax), %rcx |
|
0000000000000f1c movq %rcx, 0x8(%rbx) |
|
0000000000000f20 movq %r15, (%rbx) |
|
0000000000000f23 movq %r14, 0x8(%rax) |
|
0000000000000f27 movq %r13, 0x10(%rax) |
|
0000000000000f2b movq %r12, 0x18(%rax) |
|
0000000000000f2f movq %r14, 0x20(%rax) |
|
0000000000000f33 movl $0x34, %r14d |
|
0000000000000f39 movq %r14, %rax |
|
0000000000000f3c addq $0x8, %rsp |
|
0000000000000f40 popq %rbx |
|
0000000000000f41 popq %r12 |
|
0000000000000f43 popq %r13 |
|
0000000000000f45 popq %r14 |
|
0000000000000f47 popq %r15 |
|
0000000000000f49 popq %rbp |
|
0000000000000f4a retq |
|
0000000000000f4b movq 0x113e(%rip), %rax ## literal pool symbol address: _ruby_vm_event_enabled_global_flags |
|
0000000000000f52 testl $0x3031f, (%rax) |
|
0000000000000f58 jne 0xf81 |
|
0000000000000f5a addq $0x30, %r15 |
|
0000000000000f5e movq %r15, (%rbx) |
|
0000000000000f61 movq 0x30(%rbx), %rax |
|
0000000000000f65 addq $0x8, %rax |
|
0000000000000f69 movq %rax, 0x8(%rbx) |
|
0000000000000f6d movl 0x2c(%rcx), %eax |
|
0000000000000f70 notl %eax |
|
0000000000000f72 testl %eax, 0x28(%rcx) |
|
0000000000000f75 jne 0xf92 |
|
0000000000000f77 addq $0x38, %rbx |
|
0000000000000f7b movq %rbx, 0x10(%rcx) |
|
0000000000000f7f jmp 0xf39 |
|
0000000000000f81 movq 0x30(%rbx), %rax |
|
0000000000000f85 leaq 0x18(%rax), %rcx |
|
0000000000000f89 movq %rcx, 0x8(%rbx) |
|
0000000000000f8d movq %r14, %r13 |
|
0000000000000f90 jmp 0xf23 |
|
0000000000000f92 movq %rcx, %r15 |
|
0000000000000f95 movq 0x38(%rcx), %rdi |
|
0000000000000f99 xorl %esi, %esi |
|
0000000000000f9b callq 0x1d34 ## symbol stub for: _rb_threadptr_execute_interrupts |
|
0000000000000fa0 movq %r15, %rcx |
|
0000000000000fa3 jmp 0xf77 |
|
0000000000000fa5 nop |
|
0000000000000fa6 nop |
|
0000000000000fa7 nop |
|
0000000000000fa8 nop |
|
0000000000000fa9 nop |
|
0000000000000faa nop |
|
0000000000000fab nop |
|
0000000000000fac nop |
|
0000000000000fad nop |
|
0000000000000fae nop |
|
0000000000000faf nop |
|
__mjit1: |
|
0000000000000fb0 pushq %rbp |
|
0000000000000fb1 movq %rsp, %rbp |
|
0000000000000fb4 pushq %r15 |
|
0000000000000fb6 pushq %r14 |
|
0000000000000fb8 pushq %r13 |
|
0000000000000fba pushq %r12 |
|
0000000000000fbc pushq %rbx |
|
0000000000000fbd subq $0x48, %rsp |
|
0000000000000fc1 movq %rsi, %r12 |
|
0000000000000fc4 movq %rdi, %r15 |
|
0000000000000fc7 movq 0x1042(%rip), %rax ## literal pool symbol address: ___stack_chk_guard |
|
0000000000000fce movq (%rax), %rax |
|
0000000000000fd1 movq %rax, -0x30(%rbp) |
|
0000000000000fd5 movabsq $0x7f9b97034258, %r14 |
|
0000000000000fdf movq 0x20(%rsi), %rax |
|
0000000000000fe3 movq -0x8(%rax), %rcx |
|
0000000000000fe7 andq $-0x4, %rcx |
|
0000000000000feb movq -0x18(%rcx), %rcx |
|
0000000000000fef movq %rcx, -0x50(%rbp) |
|
0000000000000ff3 movq -0x18(%rax), %rax |
|
0000000000000ff7 movq %rax, -0x48(%rbp) |
|
0000000000000ffb leaq -0x40(%rbp), %rsi |
|
0000000000000fff xorl %edi, %edi |
|
0000000000001001 callq 0x1c80 ## symbol stub for: _rb_ary_new_from_values |
|
0000000000001006 movq %rax, %rbx |
|
0000000000001009 movq %rax, -0x40(%rbp) |
|
000000000000100d movq -0x50(%rbp), %rdi |
|
0000000000001011 movq -0x48(%rbp), %rsi |
|
0000000000001015 leaq 0x8d0408(%r14), %rax |
|
000000000000101c movq %rax, (%r12) |
|
0000000000001020 testb $0x7, %dil |
|
0000000000001024 jne 0x111a |
|
000000000000102a movq %rdi, %rax |
|
000000000000102d andq $-0x9, %rax |
|
0000000000001031 je 0x111a |
|
0000000000001037 movq 0x8(%rdi), %rax |
|
000000000000103b movq 0xfe6(%rip), %rcx ## literal pool symbol address: _rb_cArray |
|
0000000000001042 cmpq (%rcx), %rax |
|
0000000000001045 jne 0x10e5 |
|
000000000000104b testb $0x1, %sil |
|
000000000000104f je 0x10e5 |
|
0000000000001055 movq 0x102c(%rip), %rcx ## literal pool symbol address: _ruby_current_vm_ptr |
|
000000000000105c movq (%rcx), %rcx |
|
000000000000105f movzwl 0x436(%rcx), %ecx |
|
0000000000001066 andl $0x8, %ecx |
|
0000000000001069 testw %cx, %cx |
|
000000000000106c jne 0x10e5 |
|
000000000000106e sarq %rsi |
|
0000000000001071 movq %rbx, %rdx |
|
0000000000001074 callq 0x1c92 ## symbol stub for: _rb_ary_store |
|
0000000000001079 cmpq $0x34, %rbx |
|
000000000000107d je 0x1116 |
|
0000000000001083 movq %rbx, -0x50(%rbp) |
|
0000000000001087 movq 0x1002(%rip), %r13 ## literal pool symbol address: _ruby_vm_event_enabled_global_flags |
|
000000000000108e testl $0x3031f, (%r13) |
|
0000000000001096 jne 0x1510 |
|
000000000000109c movq %r14, -0x50(%rbp) |
|
00000000000010a0 leaq 0x8d0440(%r14), %rax |
|
00000000000010a7 movq %rax, (%r12) |
|
00000000000010ab movq 0x30(%r12), %rax |
|
00000000000010b0 leaq 0x10(%rax), %rcx |
|
00000000000010b4 movq %rcx, 0x8(%r12) |
|
00000000000010b9 movq %r14, 0x8(%rax) |
|
00000000000010bd testb $0x2, 0x8d0470(%r14) |
|
00000000000010c5 jne 0x1175 |
|
00000000000010cb leaq 0x18(%r12), %rbx |
|
00000000000010d0 leaq 0xf0(%r14), %rax |
|
00000000000010d7 movq %rax, 0x28(%r12) |
|
00000000000010dc orq $0x1, %rbx |
|
00000000000010e0 jmp 0x120f |
|
00000000000010e5 movq 0xf54(%rip), %rcx ## literal pool symbol address: _rb_cHash |
|
00000000000010ec cmpq (%rcx), %rax |
|
00000000000010ef jne 0x111a |
|
00000000000010f1 movq 0xf90(%rip), %rax ## literal pool symbol address: _ruby_current_vm_ptr |
|
00000000000010f8 movq (%rax), %rax |
|
00000000000010fb testb $0x10, 0x436(%rax) |
|
0000000000001102 jne 0x111a |
|
0000000000001104 movq %rbx, %rdx |
|
0000000000001107 callq 0x1ce0 ## symbol stub for: _rb_hash_aset |
|
000000000000110c cmpq $0x34, %rbx |
|
0000000000001110 jne 0x1083 |
|
0000000000001116 movq -0x50(%rbp), %rdi |
|
000000000000111a movq 0x30(%r12), %rax |
|
000000000000111f leaq 0x20(%rax), %rcx |
|
0000000000001123 movq %rcx, 0x8(%r12) |
|
0000000000001128 addq $0x8d03f0, %r14 |
|
000000000000112f movq %r14, (%r12) |
|
0000000000001133 movq %rdi, %rbx |
|
0000000000001136 movq %rbx, 0x8(%rax) |
|
000000000000113a movq -0x48(%rbp), %rcx |
|
000000000000113e movq %rcx, 0x10(%rax) |
|
0000000000001142 movq -0x40(%rbp), %rcx |
|
0000000000001146 movq %rcx, 0x18(%rax) |
|
000000000000114a movl $0x34, %ebx |
|
000000000000114f movq 0xeba(%rip), %rax ## literal pool symbol address: ___stack_chk_guard |
|
0000000000001156 movq (%rax), %rax |
|
0000000000001159 cmpq -0x30(%rbp), %rax |
|
000000000000115d jne 0x1391 |
|
0000000000001163 movq %rbx, %rax |
|
0000000000001166 addq $0x48, %rsp |
|
000000000000116a popq %rbx |
|
000000000000116b popq %r12 |
|
000000000000116d popq %r13 |
|
000000000000116f popq %r14 |
|
0000000000001171 popq %r15 |
|
0000000000001173 popq %rbp |
|
0000000000001174 retq |
|
0000000000001175 addq $0x8, %rax |
|
0000000000001179 movq %rax, 0x8(%r12) |
|
000000000000117e movq (%r14), %rax |
|
0000000000001181 andl $0x1f, %eax |
|
0000000000001184 cmpq $0x14, %rax |
|
0000000000001188 jne 0x11fb |
|
000000000000118a movq 0xec7(%rip), %rax ## literal pool symbol address: _rb_cSymbol |
|
0000000000001191 movq (%rax), %rdi |
|
0000000000001194 movl $0xc61, %esi |
|
0000000000001199 callq 0x1cfe ## symbol stub for: _rb_method_basic_definition_p |
|
000000000000119e testl %eax, %eax |
|
00000000000011a0 je 0x11fb |
|
00000000000011a2 movq 0x20(%r12), %rcx |
|
00000000000011a7 jmp 0x11b8 |
|
00000000000011a9 nopl (%rax) |
|
00000000000011b0 movq -0x8(%rcx), %rcx |
|
00000000000011b4 andq $-0x4, %rcx |
|
00000000000011b8 movq -0x10(%rcx), %rax |
|
00000000000011bc testq %rax, %rax |
|
00000000000011bf sete %dl |
|
00000000000011c2 testb $0x2, (%rcx) |
|
00000000000011c5 jne 0x13a8 |
|
00000000000011cb testb $0x1, %dl |
|
00000000000011ce jne 0x11b0 |
|
00000000000011d0 movq (%rax), %rdx |
|
00000000000011d3 shrq $0xc, %rdx |
|
00000000000011d7 andb $0xf, %dl |
|
00000000000011da cmpb $0x1, %dl |
|
00000000000011dd je 0x11f1 |
|
00000000000011df cmpb $0x6, %dl |
|
00000000000011e2 jne 0x11b0 |
|
00000000000011e4 movq 0x10(%rax), %rax |
|
00000000000011e8 testb $0xf, (%rax) |
|
00000000000011eb jne 0x11b0 |
|
00000000000011ed movq 0x10(%rax), %rax |
|
00000000000011f1 testq %rax, %rax |
|
00000000000011f4 je 0x11b0 |
|
00000000000011f6 jmp 0x1462 |
|
00000000000011fb movq %r14, %rdi |
|
00000000000011fe callq 0x1d1c ## symbol stub for: _rb_obj_is_proc |
|
0000000000001203 movq %r14, %rbx |
|
0000000000001206 testq %rax, %rax |
|
0000000000001209 je 0x154b |
|
000000000000120f movq %rbx, -0x70(%rbp) |
|
0000000000001213 movq 0x8(%r12), %rax |
|
0000000000001218 movslq 0x8d0474(%r14), %rcx |
|
000000000000121f movl %ecx, -0x60(%rbp) |
|
0000000000001222 shlq $0x3, %rcx |
|
0000000000001226 negq %rcx |
|
0000000000001229 movq -0x8(%rax,%rcx), %rax |
|
000000000000122e movq %rax, -0x68(%rbp) |
|
0000000000001232 testb $0x7, %al |
|
0000000000001234 je 0x1251 |
|
0000000000001236 testb $0x1, %al |
|
0000000000001238 jne 0x1263 |
|
000000000000123a movl %eax, %ecx |
|
000000000000123c andl $0x3, %ecx |
|
000000000000123f cmpl $0x2, %ecx |
|
0000000000001242 jne 0x1396 |
|
0000000000001248 movq 0xde9(%rip), %rax ## literal pool symbol address: _rb_cFloat |
|
000000000000124f jmp 0x126a |
|
0000000000001251 testq $-0x9, %rax |
|
0000000000001257 je 0x13f8 |
|
000000000000125d addq $0x8, %rax |
|
0000000000001261 jmp 0x126a |
|
0000000000001263 movq 0xdde(%rip), %rax ## literal pool symbol address: _rb_cInteger |
|
000000000000126a movq (%rax), %rdx |
|
000000000000126d movq 0xe24(%rip), %rax ## literal pool symbol address: _ruby_vm_global_method_state |
|
0000000000001274 movq (%rax), %rax |
|
0000000000001277 cmpq 0x8d04a0(%r14), %rax |
|
000000000000127e jne 0x1523 |
|
0000000000001284 movq 0x18(%rdx), %rax |
|
0000000000001288 movq 0x38(%rax), %rax |
|
000000000000128c cmpq 0x8d04a8(%r14), %rax |
|
0000000000001293 jne 0x1523 |
|
0000000000001299 leaq 0x8d0468(%r14), %rcx |
|
00000000000012a0 leaq 0x8d04a0(%r14), %r8 |
|
00000000000012a7 leaq -0x70(%rbp), %rdx |
|
00000000000012ab movq %r15, %rdi |
|
00000000000012ae movq %r12, %rsi |
|
00000000000012b1 callq *0x8d04b8(%r14) |
|
00000000000012b8 movq %rax, %rbx |
|
00000000000012bb cmpq $0x34, %rax |
|
00000000000012bf jne 0x133a |
|
00000000000012c1 movq 0x10(%r15), %rsi |
|
00000000000012c5 movq 0x10(%rsi), %rdi |
|
00000000000012c9 movq 0x10(%rdi), %rbx |
|
00000000000012cd cmpb $0x0, 0x120(%rbx) |
|
00000000000012d4 je 0x12e5 |
|
00000000000012d6 movq 0x20(%rsi), %rax |
|
00000000000012da orq $0x20, (%rax) |
|
00000000000012de movl $0x1, %esi |
|
00000000000012e3 jmp 0x132f |
|
00000000000012e5 movq 0xd2c(%rip), %rax ## literal pool symbol address: _mjit_call_p |
|
00000000000012ec cmpl $0x0, (%rax) |
|
00000000000012ef je 0x1321 |
|
00000000000012f1 movq 0x108(%rbx), %rax |
|
00000000000012f8 movq 0x110(%rbx), %rcx |
|
00000000000012ff incq %rcx |
|
0000000000001302 movq %rcx, 0x110(%rbx) |
|
0000000000001309 cmpq $0x3, %rax |
|
000000000000130d jbe 0x15e6 |
|
0000000000001313 movq %r15, %rdi |
|
0000000000001316 callq *%rax |
|
0000000000001318 movq %rax, %rbx |
|
000000000000131b cmpq $0x34, %rax |
|
000000000000131f jne 0x133a |
|
0000000000001321 movq 0x10(%r15), %rax |
|
0000000000001325 movq 0x20(%rax), %rax |
|
0000000000001329 orq $0x20, (%rax) |
|
000000000000132d xorl %esi, %esi |
|
000000000000132f movq %r15, %rdi |
|
0000000000001332 callq 0x1d40 ## symbol stub for: _rb_vm_exec |
|
0000000000001337 movq %rax, %rbx |
|
000000000000133a movq %rbx, -0x50(%rbp) |
|
000000000000133e testl $0x3031f, (%r13) |
|
0000000000001346 jne 0x1510 |
|
000000000000134c addq $0x8d0458, %r14 |
|
0000000000001353 movq %r14, (%r12) |
|
0000000000001357 movq 0x30(%r12), %rax |
|
000000000000135c addq $0x8, %rax |
|
0000000000001360 movq %rax, 0x8(%r12) |
|
0000000000001365 movl 0x2c(%r15), %eax |
|
0000000000001369 notl %eax |
|
000000000000136b testl %eax, 0x28(%r15) |
|
000000000000136f jne 0x153b |
|
0000000000001375 addq $0x38, %r12 |
|
0000000000001379 movq %r12, 0x10(%r15) |
|
000000000000137d movq 0xc8c(%rip), %rax ## literal pool symbol address: ___stack_chk_guard |
|
0000000000001384 movq (%rax), %rax |
|
0000000000001387 cmpq -0x30(%rbp), %rax |
|
000000000000138b je 0x1163 |
|
0000000000001391 callq 0x1c62 ## symbol stub for: ___stack_chk_fail |
|
0000000000001396 cmpq $0x14, %rax |
|
000000000000139a jne 0x1413 |
|
000000000000139c movq 0xcbd(%rip), %rax ## literal pool symbol address: _rb_cTrueClass |
|
00000000000013a3 jmp 0x126a |
|
00000000000013a8 movq %r14, %rbx |
|
00000000000013ab testb %dl, %dl |
|
00000000000013ad jne 0x120f |
|
00000000000013b3 movq (%rax), %rcx |
|
00000000000013b6 shrq $0xc, %rcx |
|
00000000000013ba andb $0xf, %cl |
|
00000000000013bd cmpb $0x1, %cl |
|
00000000000013c0 je 0x1456 |
|
00000000000013c6 cmpb $0x2, %cl |
|
00000000000013c9 je 0x1433 |
|
00000000000013cb movq %r14, %rbx |
|
00000000000013ce cmpb $0x6, %cl |
|
00000000000013d1 jne 0x120f |
|
00000000000013d7 movq 0x10(%rax), %rax |
|
00000000000013db testb $0xf, (%rax) |
|
00000000000013de movq %r14, %rbx |
|
00000000000013e1 jne 0x120f |
|
00000000000013e7 movq 0x10(%rax), %rax |
|
00000000000013eb movq %r14, %rbx |
|
00000000000013ee testq %rax, %rax |
|
00000000000013f1 jne 0x1462 |
|
00000000000013f3 jmp 0x120f |
|
00000000000013f8 cmpq $0x8, %rax |
|
00000000000013fc je 0x1427 |
|
00000000000013fe testq %rax, %rax |
|
0000000000001401 jne 0x125d |
|
0000000000001407 movq 0xc22(%rip), %rax ## literal pool symbol address: _rb_cFalseClass |
|
000000000000140e jmp 0x126a |
|
0000000000001413 cmpb $0xc, %al |
|
0000000000001415 jne 0x125d |
|
000000000000141b movq 0xc36(%rip), %rax ## literal pool symbol address: _rb_cSymbol |
|
0000000000001422 jmp 0x126a |
|
0000000000001427 movq 0xc22(%rip), %rax ## literal pool symbol address: _rb_cNilClass |
|
000000000000142e jmp 0x126a |
|
0000000000001433 movq 0x8(%rax), %rax |
|
0000000000001437 movq %r14, %rbx |
|
000000000000143a testq %rax, %rax |
|
000000000000143d je 0x120f |
|
0000000000001443 movq (%rax), %rcx |
|
0000000000001446 shrq $0xc, %rcx |
|
000000000000144a andb $0xf, %cl |
|
000000000000144d cmpb $0x1, %cl |
|
0000000000001450 jne 0x13cb |
|
0000000000001456 movq %r14, %rbx |
|
0000000000001459 testq %rax, %rax |
|
000000000000145c je 0x120f |
|
0000000000001462 movq 0x8(%rax), %rdi |
|
0000000000001466 movq %r14, %rbx |
|
0000000000001469 cmpq $0x8, %rdi |
|
000000000000146d je 0x120f |
|
0000000000001473 movq %r14, %rsi |
|
0000000000001476 movq %rdi, -0x58(%rbp) |
|
000000000000147a callq 0x1ce6 ## symbol stub for: _rb_hash_lookup |
|
000000000000147f movq %rax, %rbx |
|
0000000000001482 cmpq $0x8, %rax |
|
0000000000001486 jne 0x120f |
|
000000000000148c movl $0x2, %edi |
|
0000000000001491 callq 0x1c98 ## symbol stub for: _rb_ary_tmp_new |
|
0000000000001496 movq %rax, %rbx |
|
0000000000001499 movq %rax, %rdi |
|
000000000000149c callq 0x1c8c ## symbol stub for: _rb_ary_ptr_use_start |
|
00000000000014a1 movq %r14, (%rax) |
|
00000000000014a4 movq %rbx, %rdi |
|
00000000000014a7 movq %r14, %rsi |
|
00000000000014aa callq 0x1cda ## symbol stub for: _rb_gc_writebarrier |
|
00000000000014af movq %rbx, %rdi |
|
00000000000014b2 callq 0x1c86 ## symbol stub for: _rb_ary_ptr_use_end |
|
00000000000014b7 movq %rbx, %rdi |
|
00000000000014ba callq 0x1c8c ## symbol stub for: _rb_ary_ptr_use_start |
|
00000000000014bf movq -0x58(%rbp), %rsi |
|
00000000000014c3 movq %rsi, 0x8(%rax) |
|
00000000000014c7 testb $0x7, %sil |
|
00000000000014cb jne 0x14de |
|
00000000000014cd movq %rsi, %rax |
|
00000000000014d0 andq $-0x9, %rax |
|
00000000000014d4 je 0x14de |
|
00000000000014d6 movq %rbx, %rdi |
|
00000000000014d9 callq 0x1cda ## symbol stub for: _rb_gc_writebarrier |
|
00000000000014de movq %rbx, %rdi |
|
00000000000014e1 callq 0x1c86 ## symbol stub for: _rb_ary_ptr_use_end |
|
00000000000014e6 orb $0x8, 0x1(%rbx) |
|
00000000000014ea leaq _refine_sym_proc_call(%rip), %rdi |
|
00000000000014f1 movq %rbx, %rsi |
|
00000000000014f4 callq 0x1cd4 ## symbol stub for: _rb_func_proc_new |
|
00000000000014f9 movq %rax, %rbx |
|
00000000000014fc movq -0x58(%rbp), %rdi |
|
0000000000001500 movq %r14, %rsi |
|
0000000000001503 movq %rax, %rdx |
|
0000000000001506 callq 0x1ce0 ## symbol stub for: _rb_hash_aset |
|
000000000000150b jmp 0x120f |
|
0000000000001510 movq 0x30(%r12), %rax |
|
0000000000001515 leaq 0x10(%rax), %rcx |
|
0000000000001519 movq %rcx, 0x8(%r12) |
|
000000000000151e jmp 0x1136 |
|
0000000000001523 leaq 0x8d0468(%r14), %rdi |
|
000000000000152a leaq 0x8d04a0(%r14), %rsi |
|
0000000000001531 callq 0x1d46 ## symbol stub for: _rb_vm_search_method_slowpath |
|
0000000000001536 jmp 0x1299 |
|
000000000000153b movq 0x38(%r15), %rdi |
|
000000000000153f xorl %esi, %esi |
|
0000000000001541 callq 0x1d34 ## symbol stub for: _rb_threadptr_execute_interrupts |
|
0000000000001546 jmp 0x1375 |
|
000000000000154b movq 0x8(%r14), %rdi |
|
000000000000154f movl $0xc61, %esi |
|
0000000000001554 xorl %edx, %edx |
|
0000000000001556 callq 0x1ca4 ## symbol stub for: _rb_callable_method_entry_with_refinements |
|
000000000000155b testq %rax, %rax |
|
000000000000155e je 0x158a |
|
0000000000001560 movq 0xb19(%rip), %rcx ## literal pool symbol address: _ruby_current_execution_context_ptr |
|
0000000000001567 movq (%rcx), %rdi |
|
000000000000156a movl $0xc61, %edx |
|
000000000000156f xorl %ecx, %ecx |
|
0000000000001571 xorl %r8d, %r8d |
|
0000000000001574 movq %r14, %rsi |
|
0000000000001577 movq %rax, %r9 |
|
000000000000157a callq 0x1d3a ## symbol stub for: _rb_vm_call0 |
|
000000000000157f movq %rax, %rbx |
|
0000000000001582 cmpq $0x8, %rax |
|
0000000000001586 jne 0x15ac |
|
0000000000001588 jmp 0x15bd |
|
000000000000158a leaq 0x9c7(%rip), %rdx ## literal pool for: "Proc" |
|
0000000000001591 movl $0xc, %esi |
|
0000000000001596 movl $0xc61, %ecx |
|
000000000000159b movq %r14, %rdi |
|
000000000000159e callq 0x1caa ## symbol stub for: _rb_check_convert_type_with_id |
|
00000000000015a3 movq %rax, %rbx |
|
00000000000015a6 cmpq $0x8, %rax |
|
00000000000015aa je 0x15bd |
|
00000000000015ac movq %rbx, %rdi |
|
00000000000015af callq 0x1d1c ## symbol stub for: _rb_obj_is_proc |
|
00000000000015b4 testq %rax, %rax |
|
00000000000015b7 jne 0x120f |
|
00000000000015bd movq 0xab4(%rip), %rax ## literal pool symbol address: _rb_eTypeError |
|
00000000000015c4 movq (%rax), %rbx |
|
00000000000015c7 movq %r14, %rdi |
|
00000000000015ca callq 0x1d10 ## symbol stub for: _rb_obj_classname |
|
00000000000015cf movq %rax, %rcx |
|
00000000000015d2 leaq 0x984(%rip), %rsi ## literal pool for: "wrong argument type %s (expected Proc)" |
|
00000000000015d9 xorl %eax, %eax |
|
00000000000015db movq %rbx, %rdi |
|
00000000000015de movq %rcx, %rdx |
|
00000000000015e1 callq 0x1d22 ## symbol stub for: _rb_raise |
|
00000000000015e6 leal -0x1(%rax), %edx |
|
00000000000015e9 cmpl $0x2, %edx |
|
00000000000015ec jb 0x1321 |
|
00000000000015f2 testl %eax, %eax |
|
00000000000015f4 jne 0x1313 |
|
00000000000015fa movq 0xa1f(%rip), %rax ## literal pool symbol address: _mjit_opts |
|
0000000000001601 movl 0x8(%rax), %eax |
|
0000000000001604 cmpq %rax, %rcx |
|
0000000000001607 jne 0x1321 |
|
000000000000160d movl (%rbx), %eax |
|
000000000000160f decl %eax |
|
0000000000001611 cmpl $0x1, %eax |
|
0000000000001614 ja 0x1321 |
|
000000000000161a cmpl $0x3e7, 0x4(%rbx) |
|
0000000000001621 ja 0x1321 |
|
0000000000001627 callq 0x1c6e ## symbol stub for: _mjit_add_iseq_to_process |
|
000000000000162c movq 0x9ed(%rip), %rax ## literal pool symbol address: _mjit_opts |
|
0000000000001633 cmpl $0x0, 0x4(%rax) |
|
0000000000001637 je 0x1321 |
|
000000000000163d movq %r15, %rdi |
|
0000000000001640 movq %rbx, %rsi |
|
0000000000001643 callq 0x1c74 ## symbol stub for: _mjit_wait_call |
|
0000000000001648 movq %rax, %rbx |
|
000000000000164b cmpq $0x34, %rax |
|
000000000000164f je 0x1321 |
|
0000000000001655 jmp 0x133a |
|
000000000000165a nopw (%rax,%rax) |
|
_refine_sym_proc_call: |
|
0000000000001660 pushq %rbp |
|
0000000000001661 movq %rsp, %rbp |
|
0000000000001664 pushq %r15 |
|
0000000000001666 pushq %r14 |
|
0000000000001668 pushq %r13 |
|
000000000000166a pushq %r12 |
|
000000000000166c pushq %rbx |
|
000000000000166d subq $0x18, %rsp |
|
0000000000001671 movq %r8, -0x30(%rbp) |
|
0000000000001675 movq %rcx, %r14 |
|
0000000000001678 movl %edx, %r12d |
|
000000000000167b testb $0x20, 0x1(%rsi) |
|
000000000000167f jne 0x168f |
|
0000000000001681 movq 0x20(%rsi), %rsi |
|
0000000000001685 testl %r12d, %r12d |
|
0000000000001688 jg 0x169c |
|
000000000000168a jmp 0x1806 |
|
000000000000168f addq $0x10, %rsi |
|
0000000000001693 testl %r12d, %r12d |
|
0000000000001696 jle 0x1806 |
|
000000000000169c movq 0x8(%rsi), %r15 |
|
00000000000016a0 movq (%rsi), %rdi |
|
00000000000016a3 movq (%r14), %r13 |
|
00000000000016a6 callq 0x1d2e ## symbol stub for: _rb_sym2id |
|
00000000000016ab movq %rax, %rbx |
|
00000000000016ae testb $0x7, %r13b |
|
00000000000016b2 movq %r14, -0x38(%rbp) |
|
00000000000016b6 je 0x16e1 |
|
00000000000016b8 testb $0x1, %r13b |
|
00000000000016bc jne 0x16ff |
|
00000000000016be movl %r13d, %eax |
|
00000000000016c1 andl $0x3, %eax |
|
00000000000016c4 cmpl $0x2, %eax |
|
00000000000016c7 jne 0x1713 |
|
00000000000016c9 movq 0x968(%rip), %rax ## literal pool symbol address: _rb_cFloat |
|
00000000000016d0 movq (%rax), %r14 |
|
00000000000016d3 testq %r14, %r14 |
|
00000000000016d6 jne 0x1779 |
|
00000000000016dc jmp 0x179b |
|
00000000000016e1 testq $-0x9, %r13 |
|
00000000000016e8 je 0x172a |
|
00000000000016ea leaq 0x8(%r13), %rax |
|
00000000000016ee movq (%rax), %r14 |
|
00000000000016f1 testq %r14, %r14 |
|
00000000000016f4 jne 0x1779 |
|
00000000000016fa jmp 0x179b |
|
00000000000016ff movq 0x942(%rip), %rax ## literal pool symbol address: _rb_cInteger |
|
0000000000001706 movq (%rax), %r14 |
|
0000000000001709 testq %r14, %r14 |
|
000000000000170c jne 0x1779 |
|
000000000000170e jmp 0x179b |
|
0000000000001713 cmpq $0x14, %r13 |
|
0000000000001717 jne 0x1746 |
|
0000000000001719 movq 0x940(%rip), %rax ## literal pool symbol address: _rb_cTrueClass |
|
0000000000001720 movq (%rax), %r14 |
|
0000000000001723 testq %r14, %r14 |
|
0000000000001726 jne 0x1779 |
|
0000000000001728 jmp 0x179b |
|
000000000000172a cmpq $0x8, %r13 |
|
000000000000172e je 0x175d |
|
0000000000001730 testq %r13, %r13 |
|
0000000000001733 jne 0x16ea |
|
0000000000001735 movq 0x8f4(%rip), %rax ## literal pool symbol address: _rb_cFalseClass |
|
000000000000173c movq (%rax), %r14 |
|
000000000000173f testq %r14, %r14 |
|
0000000000001742 jne 0x1779 |
|
0000000000001744 jmp 0x179b |
|
0000000000001746 cmpb $0xc, %r13b |
|
000000000000174a jne 0x16ea |
|
000000000000174c movq 0x905(%rip), %rax ## literal pool symbol address: _rb_cSymbol |
|
0000000000001753 movq (%rax), %r14 |
|
0000000000001756 testq %r14, %r14 |
|
0000000000001759 jne 0x1779 |
|
000000000000175b jmp 0x179b |
|
000000000000175d movq 0x8ec(%rip), %rax ## literal pool symbol address: _rb_cNilClass |
|
0000000000001764 movq (%rax), %r14 |
|
0000000000001767 testq %r14, %r14 |
|
000000000000176a jne 0x1779 |
|
000000000000176c jmp 0x179b |
|
000000000000176e nop |
|
0000000000001770 movq 0x10(%r14), %r14 |
|
0000000000001774 testq %r14, %r14 |
|
0000000000001777 je 0x179b |
|
0000000000001779 movq %r14, %rdi |
|
000000000000177c movq %rbx, %rsi |
|
000000000000177f callq 0x1c9e ## symbol stub for: _rb_callable_method_entry |
|
0000000000001784 testq %rax, %rax |
|
0000000000001787 je 0x1770 |
|
0000000000001789 movq %r15, %rdi |
|
000000000000178c movq %rax, %rsi |
|
000000000000178f callq 0x1d28 ## symbol stub for: _rb_resolve_refined_method_callable |
|
0000000000001794 testq %rax, %rax |
|
0000000000001797 je 0x1770 |
|
0000000000001799 jmp 0x179d |
|
000000000000179b xorl %eax, %eax |
|
000000000000179d movq 0x8dc(%rip), %rcx ## literal pool symbol address: _ruby_current_execution_context_ptr |
|
00000000000017a4 movq (%rcx), %rdi |
|
00000000000017a7 movq -0x30(%rbp), %rcx |
|
00000000000017ab cmpq $0x8, %rcx |
|
00000000000017af movq -0x38(%rbp), %r8 |
|
00000000000017b3 je 0x17bc |
|
00000000000017b5 movq %rcx, 0x80(%rdi) |
|
00000000000017bc decl %r12d |
|
00000000000017bf addq $0x8, %r8 |
|
00000000000017c3 testq %rax, %rax |
|
00000000000017c6 je 0x17e7 |
|
00000000000017c8 movq %r13, %rsi |
|
00000000000017cb movq %rbx, %rdx |
|
00000000000017ce movl %r12d, %ecx |
|
00000000000017d1 movq %rax, %r9 |
|
00000000000017d4 addq $0x18, %rsp |
|
00000000000017d8 popq %rbx |
|
00000000000017d9 popq %r12 |
|
00000000000017db popq %r13 |
|
00000000000017dd popq %r14 |
|
00000000000017df popq %r15 |
|
00000000000017e1 popq %rbp |
|
00000000000017e2 jmp 0x1d3a ## symbol stub for: _rb_vm_call0 |
|
00000000000017e7 movq %r13, %rdi |
|
00000000000017ea movq %rbx, %rsi |
|
00000000000017ed movl %r12d, %edx |
|
00000000000017f0 movq %r8, %rcx |
|
00000000000017f3 addq $0x18, %rsp |
|
00000000000017f7 popq %rbx |
|
00000000000017f8 popq %r12 |
|
00000000000017fa popq %r13 |
|
00000000000017fc popq %r14 |
|
00000000000017fe popq %r15 |
|
0000000000001800 popq %rbp |
|
0000000000001801 jmp _method_missing |
|
0000000000001806 movq 0x85b(%rip), %rax ## literal pool symbol address: _rb_eArgError |
|
000000000000180d movq (%rax), %rdi |
|
0000000000001810 leaq 0x6eb(%rip), %rsi ## literal pool for: "no receiver given" |
|
0000000000001817 xorl %eax, %eax |
|
0000000000001819 callq 0x1d22 ## symbol stub for: _rb_raise |
|
000000000000181e nop |
|
_method_missing: |
|
0000000000001820 pushq %rbp |
|
0000000000001821 movq %rsp, %rbp |
|
0000000000001824 pushq %r15 |
|
0000000000001826 pushq %r14 |
|
0000000000001828 pushq %r13 |
|
000000000000182a pushq %r12 |
|
000000000000182c pushq %rbx |
|
000000000000182d subq $0x28, %rsp |
|
0000000000001831 movq %rcx, -0x40(%rbp) |
|
0000000000001835 movl %edx, %r13d |
|
0000000000001838 movq %rdi, %r14 |
|
000000000000183b movq 0x7ce(%rip), %rax ## literal pool symbol address: ___stack_chk_guard |
|
0000000000001842 movq (%rax), %rax |
|
0000000000001845 movq %rax, -0x30(%rbp) |
|
0000000000001849 movq 0x830(%rip), %rax ## literal pool symbol address: _ruby_current_execution_context_ptr |
|
0000000000001850 movq (%rax), %r12 |
|
0000000000001853 movq 0x80(%r12), %rcx |
|
000000000000185b movq $0x0, 0x80(%r12) |
|
0000000000001867 movb $0x0, 0x89(%r12) |
|
0000000000001870 cmpq $0xac1, %rsi |
|
0000000000001877 je 0x1a44 |
|
000000000000187d movq %rsi, %r15 |
|
0000000000001880 leal 0x1(%r13), %eax |
|
0000000000001884 movslq %eax, %rdx |
|
0000000000001887 cmpl $0x7f, %edx |
|
000000000000188a movl %eax, -0x34(%rbp) |
|
000000000000188d movq %rcx, -0x50(%rbp) |
|
0000000000001891 ja 0x18b2 |
|
0000000000001893 movq $0x0, -0x48(%rbp) |
|
000000000000189b movq %rsp, %rbx |
|
000000000000189e leaq 0xf(,%rdx,8), %rax |
|
00000000000018a6 andq $-0x10, %rax |
|
00000000000018aa subq %rax, %rbx |
|
00000000000018ad movq %rbx, %rsp |
|
00000000000018b0 jmp 0x18ce |
|
00000000000018b2 testl %eax, %eax |
|
00000000000018b4 js 0x1a5d |
|
00000000000018ba leaq (,%rdx,8), %rsi |
|
00000000000018c2 leaq -0x48(%rbp), %rdi |
|
00000000000018c6 callq 0x1c7a ## symbol stub for: _rb_alloc_tmp_buffer_with_count |
|
00000000000018cb movq %rax, %rbx |
|
00000000000018ce movq %r15, %rdi |
|
00000000000018d1 callq 0x1cec ## symbol stub for: _rb_id2sym |
|
00000000000018d6 movq %rax, (%rbx) |
|
00000000000018d9 leaq 0x8(%rbx), %rdi |
|
00000000000018dd movslq %r13d, %rdx |
|
00000000000018e0 shlq $0x3, %rdx |
|
00000000000018e4 movq -0x40(%rbp), %rsi |
|
00000000000018e8 callq 0x1c68 ## symbol stub for: _memcpy |
|
00000000000018ed testb $0x7, %r14b |
|
00000000000018f1 je 0x191c |
|
00000000000018f3 testb $0x1, %r14b |
|
00000000000018f7 jne 0x193a |
|
00000000000018f9 movl %r14d, %eax |
|
00000000000018fc andl $0x3, %eax |
|
00000000000018ff cmpl $0x2, %eax |
|
0000000000001902 jne 0x19c8 |
|
0000000000001908 movq 0x729(%rip), %rax ## literal pool symbol address: _rb_cFloat |
|
000000000000190f movq (%rax), %rdi |
|
0000000000001912 testq %rdi, %rdi |
|
0000000000001915 jne 0x194d |
|
0000000000001917 jmp 0x1a39 |
|
000000000000191c testq $-0x9, %r14 |
|
0000000000001923 je 0x19e3 |
|
0000000000001929 leaq 0x8(%r14), %rax |
|
000000000000192d movq (%rax), %rdi |
|
0000000000001930 testq %rdi, %rdi |
|
0000000000001933 jne 0x194d |
|
0000000000001935 jmp 0x1a39 |
|
000000000000193a movq 0x707(%rip), %rax ## literal pool symbol address: _rb_cInteger |
|
0000000000001941 movq (%rax), %rdi |
|
0000000000001944 testq %rdi, %rdi |
|
0000000000001947 je 0x1a39 |
|
000000000000194d movl $0xac1, %esi |
|
0000000000001952 callq 0x1c9e ## symbol stub for: _rb_callable_method_entry |
|
0000000000001957 testq %rax, %rax |
|
000000000000195a je 0x1a39 |
|
0000000000001960 testb $0x4, 0x2(%rax) |
|
0000000000001964 jne 0x1a39 |
|
000000000000196a movq -0x50(%rbp), %rcx |
|
000000000000196e movq %rcx, 0x80(%r12) |
|
0000000000001976 movl $0xac1, %edx |
|
000000000000197b movq %r12, %rdi |
|
000000000000197e movq %r14, %rsi |
|
0000000000001981 movl -0x34(%rbp), %ecx |
|
0000000000001984 movq %rbx, %r8 |
|
0000000000001987 movq %rax, %r9 |
|
000000000000198a callq 0x1d3a ## symbol stub for: _rb_vm_call0 |
|
000000000000198f movq %rax, %rbx |
|
0000000000001992 cmpq $0x0, -0x48(%rbp) |
|
0000000000001997 je 0x19a2 |
|
0000000000001999 leaq -0x48(%rbp), %rdi |
|
000000000000199d callq 0x1cce ## symbol stub for: _rb_free_tmp_buffer |
|
00000000000019a2 movq 0x667(%rip), %rax ## literal pool symbol address: ___stack_chk_guard |
|
00000000000019a9 movq (%rax), %rax |
|
00000000000019ac cmpq -0x30(%rbp), %rax |
|
00000000000019b0 jne 0x1a3f |
|
00000000000019b6 movq %rbx, %rax |
|
00000000000019b9 leaq -0x28(%rbp), %rsp |
|
00000000000019bd popq %rbx |
|
00000000000019be popq %r12 |
|
00000000000019c0 popq %r13 |
|
00000000000019c2 popq %r14 |
|
00000000000019c4 popq %r15 |
|
00000000000019c6 popq %rbp |
|
00000000000019c7 retq |
|
00000000000019c8 cmpq $0x14, %r14 |
|
00000000000019cc jne 0x1a07 |
|
00000000000019ce movq 0x68b(%rip), %rax ## literal pool symbol address: _rb_cTrueClass |
|
00000000000019d5 movq (%rax), %rdi |
|
00000000000019d8 testq %rdi, %rdi |
|
00000000000019db jne 0x194d |
|
00000000000019e1 jmp 0x1a39 |
|
00000000000019e3 cmpq $0x8, %r14 |
|
00000000000019e7 je 0x1a26 |
|
00000000000019e9 testq %r14, %r14 |
|
00000000000019ec jne 0x1929 |
|
00000000000019f2 movq 0x637(%rip), %rax ## literal pool symbol address: _rb_cFalseClass |
|
00000000000019f9 movq (%rax), %rdi |
|
00000000000019fc testq %rdi, %rdi |
|
00000000000019ff jne 0x194d |
|
0000000000001a05 jmp 0x1a39 |
|
0000000000001a07 cmpb $0xc, %r14b |
|
0000000000001a0b jne 0x1929 |
|
0000000000001a11 movq 0x640(%rip), %rax ## literal pool symbol address: _rb_cSymbol |
|
0000000000001a18 movq (%rax), %rdi |
|
0000000000001a1b testq %rdi, %rdi |
|
0000000000001a1e jne 0x194d |
|
0000000000001a24 jmp 0x1a39 |
|
0000000000001a26 movq 0x623(%rip), %rax ## literal pool symbol address: _rb_cNilClass |
|
0000000000001a2d movq (%rax), %rdi |
|
0000000000001a30 testq %rdi, %rdi |
|
0000000000001a33 jne 0x194d |
|
0000000000001a39 movq %rbx, -0x40(%rbp) |
|
0000000000001a3d jmp 0x1a4b |
|
0000000000001a3f callq 0x1c62 ## symbol stub for: ___stack_chk_fail |
|
0000000000001a44 movl %r13d, %eax |
|
0000000000001a47 movl %r13d, -0x34(%rbp) |
|
0000000000001a4b movq %r12, %rdi |
|
0000000000001a4e movl -0x34(%rbp), %esi |
|
0000000000001a51 movq -0x40(%rbp), %rdx |
|
0000000000001a55 movq %r14, %rcx |
|
0000000000001a58 callq _raise_method_missing |
|
0000000000001a5d movl $0x8, %esi |
|
0000000000001a62 movq %rdx, %rdi |
|
0000000000001a65 callq 0x1d4c ## symbol stub for: _ruby_malloc_size_overflow |
|
0000000000001a6a nopw (%rax,%rax) |
|
_raise_method_missing: |
|
0000000000001a70 pushq %rbp |
|
0000000000001a71 movq %rsp, %rbp |
|
0000000000001a74 pushq %r15 |
|
0000000000001a76 pushq %r14 |
|
0000000000001a78 pushq %r12 |
|
0000000000001a7a pushq %rbx |
|
0000000000001a7b testl %esi, %esi |
|
0000000000001a7d jne 0x1a97 |
|
0000000000001a7f movq 0x5e2(%rip), %rax ## literal pool symbol address: _rb_eArgError |
|
0000000000001a86 movq (%rax), %rdi |
|
0000000000001a89 leaq 0x484(%rip), %rsi ## literal pool for: "no method name given" |
|
0000000000001a90 xorl %eax, %eax |
|
0000000000001a92 callq 0x1d22 ## symbol stub for: _rb_raise |
|
0000000000001a97 movq %rcx, %r14 |
|
0000000000001a9a movq %rdx, %r15 |
|
0000000000001a9d movl %esi, %ebx |
|
0000000000001a9f movq 0x5ca(%rip), %rax ## literal pool symbol address: _rb_eNoMethodError |
|
0000000000001aa6 movq (%rax), %r12 |
|
0000000000001aa9 movq (%rdx), %rax |
|
0000000000001aac cmpb $0xc, %al |
|
0000000000001aae je 0x1ac9 |
|
0000000000001ab0 testb $0x7, %al |
|
0000000000001ab2 jne 0x1aeb |
|
0000000000001ab4 movq %rax, %rcx |
|
0000000000001ab7 andq $-0x9, %rcx |
|
0000000000001abb je 0x1aeb |
|
0000000000001abd movq (%rax), %rcx |
|
0000000000001ac0 andl $0x1f, %ecx |
|
0000000000001ac3 cmpq $0x14, %rcx |
|
0000000000001ac7 jne 0x1aeb |
|
0000000000001ac9 callq _stack_check |
|
0000000000001ace xorl %esi, %esi |
|
0000000000001ad0 xorl %r9d, %r9d |
|
0000000000001ad3 movq %r12, %rdi |
|
0000000000001ad6 movq %r14, %rdx |
|
0000000000001ad9 movl %ebx, %ecx |
|
0000000000001adb movq %r15, %r8 |
|
0000000000001ade callq 0x1cf8 ## symbol stub for: _rb_make_no_method_exception |
|
0000000000001ae3 movq %rax, %rdi |
|
0000000000001ae6 callq 0x1cc8 ## symbol stub for: _rb_exc_raise |
|
0000000000001aeb movq 0x576(%rip), %rcx ## literal pool symbol address: _rb_eArgError |
|
0000000000001af2 movq (%rcx), %rbx |
|
0000000000001af5 movq %rax, %rdi |
|
0000000000001af8 callq 0x1d0a ## symbol stub for: _rb_obj_class |
|
0000000000001afd movq %rax, %rcx |
|
0000000000001b00 leaq 0x422(%rip), %rsi ## literal pool for: "method name must be a Symbol but %li\013 is given" |
|
0000000000001b07 xorl %eax, %eax |
|
0000000000001b09 movq %rbx, %rdi |
|
0000000000001b0c movq %rcx, %rdx |
|
0000000000001b0f callq 0x1d22 ## symbol stub for: _rb_raise |
|
0000000000001b14 nopw %cs:(%rax,%rax) |
|
0000000000001b1e nop |
|
_stack_check: |
|
0000000000001b20 pushq %rbp |
|
0000000000001b21 movq %rsp, %rbp |
|
0000000000001b24 pushq %rbx |
|
0000000000001b25 pushq %rax |
|
0000000000001b26 testb $0x2, 0x88(%rdi) |
|
0000000000001b2d jne 0x1b3b |
|
0000000000001b2f movq %rdi, %rbx |
|
0000000000001b32 callq 0x1cc2 ## symbol stub for: _rb_ec_stack_check |
|
0000000000001b37 testl %eax, %eax |
|
0000000000001b39 jne 0x1b42 |
|
0000000000001b3b addq $0x8, %rsp |
|
0000000000001b3f popq %rbx |
|
0000000000001b40 popq %rbp |
|
0000000000001b41 retq |
|
0000000000001b42 orb $0x2, 0x88(%rbx) |
|
0000000000001b49 movq %rbx, %rdi |
|
0000000000001b4c callq _rb_ec_stack_overflow |
|
0000000000001b51 nopw %cs:(%rax,%rax) |
|
0000000000001b5b nopl (%rax,%rax) |
|
_rb_ec_stack_overflow: |
|
0000000000001b60 pushq %rbp |
|
0000000000001b61 movq %rsp, %rbp |
|
0000000000001b64 pushq %rbx |
|
0000000000001b65 pushq %rax |
|
0000000000001b66 movq %rdi, %rbx |
|
0000000000001b69 callq 0x1cb6 ## symbol stub for: _rb_during_gc |
|
0000000000001b6e testl %eax, %eax |
|
0000000000001b70 jne 0x1b7a |
|
0000000000001b72 movq %rbx, %rdi |
|
0000000000001b75 callq _ec_stack_overflow |
|
0000000000001b7a movb $0x2, 0x88(%rbx) |
|
0000000000001b81 movq 0x18(%rbx), %rdi |
|
0000000000001b85 movq 0x38(%rbx), %rax |
|
0000000000001b89 movq 0x18(%rax), %rax |
|
0000000000001b8d movq 0x1b0(%rax), %rax |
|
0000000000001b94 movq %rax, 0x78(%rbx) |
|
0000000000001b98 callq _rb_ec_tag_jump |
|
0000000000001b9d nopl (%rax) |
|
_rb_ec_tag_jump: |
|
0000000000001ba0 pushq %rbp |
|
0000000000001ba1 movq %rsp, %rbp |
|
0000000000001ba4 movl $0x6, 0xb0(%rdi) |
|
0000000000001bae addq $0x10, %rdi |
|
0000000000001bb2 movl $0x1, %esi |
|
0000000000001bb7 callq 0x1d52 ## symbol stub for: _siglongjmp |
|
0000000000001bbc nopl (%rax) |
|
_ec_stack_overflow: |
|
0000000000001bc0 pushq %rbp |
|
0000000000001bc1 movq %rsp, %rbp |
|
0000000000001bc4 pushq %r15 |
|
0000000000001bc6 pushq %r14 |
|
0000000000001bc8 pushq %rbx |
|
0000000000001bc9 pushq %rax |
|
0000000000001bca movq %rdi, %rbx |
|
0000000000001bcd movq 0x38(%rdi), %rax |
|
0000000000001bd1 movq 0x18(%rax), %rax |
|
0000000000001bd5 movq 0x1a8(%rax), %r14 |
|
0000000000001bdc movb $0x2, 0x88(%rdi) |
|
0000000000001be3 callq 0x1cbc ## symbol stub for: _rb_ec_backtrace_object |
|
0000000000001be8 movq %rax, %r15 |
|
0000000000001beb movq %r14, %rdi |
|
0000000000001bee callq _ruby_vm_special_exception_copy |
|
0000000000001bf3 movq %rax, %r14 |
|
0000000000001bf6 movl $0xcd1, %esi |
|
0000000000001bfb movq %rax, %rdi |
|
0000000000001bfe movq %r15, %rdx |
|
0000000000001c01 callq 0x1cf2 ## symbol stub for: _rb_ivar_set |
|
0000000000001c06 movl $0xce1, %esi |
|
0000000000001c0b movq %r14, %rdi |
|
0000000000001c0e movq %r15, %rdx |
|
0000000000001c11 callq 0x1cf2 ## symbol stub for: _rb_ivar_set |
|
0000000000001c16 movq %r14, 0x78(%rbx) |
|
0000000000001c1a movq 0x18(%rbx), %rdi |
|
0000000000001c1e callq _rb_ec_tag_jump |
|
0000000000001c23 nopw %cs:(%rax,%rax) |
|
0000000000001c2d nopl (%rax) |
|
_ruby_vm_special_exception_copy: |
|
0000000000001c30 pushq %rbp |
|
0000000000001c31 movq %rsp, %rbp |
|
0000000000001c34 pushq %r14 |
|
0000000000001c36 pushq %rbx |
|
0000000000001c37 movq %rdi, %r14 |
|
0000000000001c3a movq 0x8(%rdi), %rdi |
|
0000000000001c3e callq 0x1cb0 ## symbol stub for: _rb_class_real |
|
0000000000001c43 movq %rax, %rdi |
|
0000000000001c46 callq 0x1d04 ## symbol stub for: _rb_obj_alloc |
|
0000000000001c4b movq %rax, %rbx |
|
0000000000001c4e movq %rax, %rdi |
|
0000000000001c51 movq %r14, %rsi |
|
0000000000001c54 callq 0x1d16 ## symbol stub for: _rb_obj_copy_ivar |
|
0000000000001c59 movq %rbx, %rax |
|
0000000000001c5c popq %rbx |
|
0000000000001c5d popq %r14 |
|
0000000000001c5f popq %rbp |
|
0000000000001c60 retq |