.intel_syntax noprefix .macro jmp_short_opcode .byte 0xeb .endmacro /* d0 = rax */ /* d1 = rbx */ /* d2 = r10 */ /* d3 = r11 */ /* d7 = r15 */ /* a0 = rcx */ /* a1 = rdx */ /* a2 = r8 */ /* a3 = r9 */ /* a4 = rsi */ /* a6 = rdi */ /* d0l = eax */ /* a2l = r8d */ /* a3l = r9d */ /* d1w = bx */ /* qw = qword ptr */ .text .globl ap_2 .globl ap_3 .globl ap_4 .globl ap_5 .globl ap_6 .globl ap_7 .globl ap_8 .globl ap_9 .globl ap_10 .globl ap_11 .globl ap_12 .globl ap_13 .globl ap_14 .globl ap_15 .globl ap_16 .globl ap_17 .globl ap_18 .globl ap_19 .globl ap_20 .globl ap_21 .globl ap_22 .globl ap_23 .globl ap_24 .globl ap_25 .globl ap_26 .globl ap_27 .globl ap_28 .globl ap_29 .globl ap_30 .globl ap_31 .globl ap_32 .globl add_empty_node_2 .globl add_empty_node_3 .globl add_empty_node_4 .globl add_empty_node_5 .globl add_empty_node_6 .globl add_empty_node_7 .globl add_empty_node_8 .globl add_empty_node_9 .globl add_empty_node_10 .globl add_empty_node_11 .globl add_empty_node_12 .globl add_empty_node_13 .globl add_empty_node_14 .globl add_empty_node_15 .globl add_empty_node_16 .globl add_empty_node_17 .globl add_empty_node_18 .globl add_empty_node_19 .globl add_empty_node_20 .globl add_empty_node_21 .globl add_empty_node_22 .globl add_empty_node_23 .globl add_empty_node_24 .globl add_empty_node_25 .globl add_empty_node_26 .globl add_empty_node_27 .globl add_empty_node_28 .globl add_empty_node_29 .globl add_empty_node_30 .globl add_empty_node_31 .globl add_empty_node_32 .globl yet_args_needed_5 .globl yet_args_needed_6 .globl yet_args_needed_7 .globl yet_args_needed_8 .globl yet_args_needed_9 .globl yet_args_needed_10 .globl yet_args_needed_11 .globl yet_args_needed_12 .globl yet_args_needed_13 .globl yet_args_needed_14 .globl yet_args_needed_15 .globl yet_args_needed_16 .globl yet_args_needed_17 .globl yet_args_needed_18 .globl yet_args_needed_19 .globl yet_args_needed_20 .globl yet_args_needed_21 .globl yet_args_needed_22 .globl yet_args_needed_23 .globl yet_args_needed_24 .globl yet_args_needed_25 .globl yet_args_needed_26 .globl yet_args_needed_27 .globl yet_args_needed_28 .globl yet_args_needed_29 .globl yet_args_needed_30 .globl yet_args_needed_31 ap_32: mov r9,qword ptr [r8] mov rbx,32*16 cmp word ptr [r9],bx je fast_ap mov qword ptr [rsi],rcx mov rcx,rdx mov rdx,r8 mov r8,qword ptr [r9+6] add rsi,8 jmp no_fast_ap32 ap_31: mov r9,qword ptr [r8] mov rbx,31*16 cmp word ptr [r9],bx att_je fast_ap mov qword ptr [rsi],rcx mov rcx,rdx mov rdx,r8 mov r8,qword ptr [r9+6] add rsi,8 jmp no_fast_ap31 ap_30: mov r9,qword ptr [r8] mov rbx,30*16 cmp word ptr [r9],bx att_je fast_ap mov qword ptr [rsi],rcx mov rcx,rdx mov rdx,r8 mov r8,qword ptr [r9+6] add rsi,8 jmp no_fast_ap30 ap_29: mov r9,qword ptr [r8] mov rbx,29*16 cmp word ptr [r9],bx att_je fast_ap mov qword ptr [rsi],rcx mov rcx,rdx mov rdx,r8 mov r8,qword ptr [r9+6] add rsi,8 jmp no_fast_ap29 ap_28: mov r9,qword ptr [r8] mov rbx,28*16 cmp word ptr [r9],bx att_je fast_ap mov qword ptr [rsi],rcx mov rcx,rdx mov rdx,r8 mov r8,qword ptr [r9+6] add rsi,8 jmp no_fast_ap28 ap_27: mov r9,qword ptr [r8] mov rbx,27*16 cmp word ptr [r9],bx att_je fast_ap mov qword ptr [rsi],rcx mov rcx,rdx mov rdx,r8 mov r8,qword ptr [r9+6] add rsi,8 jmp no_fast_ap27 ap_26: mov r9,qword ptr [r8] mov rbx,26*16 cmp word ptr [r9],bx att_je fast_ap mov qword ptr [rsi],rcx mov rcx,rdx mov rdx,r8 mov r8,qword ptr [r9+6] add rsi,8 jmp no_fast_ap26 ap_25: mov r9,qword ptr [r8] mov rbx,25*16 cmp word ptr [r9],bx att_je fast_ap mov qword ptr [rsi],rcx mov rcx,rdx mov rdx,r8 mov r8,qword ptr [r9+6] add rsi,8 jmp no_fast_ap25 ap_24: mov r9,qword ptr [r8] mov rbx,24*16 cmp word ptr [r9],bx att_je fast_ap mov qword ptr [rsi],rcx mov rcx,rdx mov rdx,r8 mov r8,qword ptr [r9+6] add rsi,8 jmp no_fast_ap24 ap_23: mov r9,qword ptr [r8] mov rbx,23*16 cmp word ptr [r9],bx att_je fast_ap mov qword ptr [rsi],rcx mov rcx,rdx mov rdx,r8 mov r8,qword ptr [r9+6] add rsi,8 jmp no_fast_ap23 ap_22: mov r9,qword ptr [r8] mov rbx,22*16 cmp word ptr [r9],bx att_je fast_ap mov qword ptr [rsi],rcx mov rcx,rdx mov rdx,r8 mov r8,qword ptr [r9+6] add rsi,8 jmp no_fast_ap22 ap_21: mov r9,qword ptr [r8] mov rbx,21*16 cmp word ptr [r9],bx att_je fast_ap mov qword ptr [rsi],rcx mov rcx,rdx mov rdx,r8 mov r8,qword ptr [r9+6] add rsi,8 jmp no_fast_ap21 ap_20: mov r9,qword ptr [r8] mov rbx,20*16 cmp word ptr [r9],bx att_je fast_ap mov qword ptr [rsi],rcx mov rcx,rdx mov rdx,r8 mov r8,qword ptr [r9+6] add rsi,8 jmp no_fast_ap20 ap_19: mov r9,qword ptr [r8] mov rbx,19*16 cmp word ptr [r9],bx att_je fast_ap mov qword ptr [rsi],rcx mov rcx,rdx mov rdx,r8 mov r8,qword ptr [r9+6] add rsi,8 jmp no_fast_ap19 ap_18: mov r9,qword ptr [r8] mov rbx,18*16 cmp word ptr [r9],bx att_je fast_ap mov qword ptr [rsi],rcx mov rcx,rdx mov rdx,r8 mov r8,qword ptr [r9+6] add rsi,8 jmp no_fast_ap18 ap_17: mov r9,qword ptr [r8] mov rbx,17*16 cmp word ptr [r9],bx att_je fast_ap mov qword ptr [rsi],rcx mov rcx,rdx mov rdx,r8 mov r8,qword ptr [r9+6] add rsi,8 jmp no_fast_ap17 ap_16: mov r9,qword ptr [r8] mov rbx,16*16 cmp word ptr [r9],bx att_je fast_ap mov qword ptr [rsi],rcx mov rcx,rdx mov rdx,r8 mov r8,qword ptr [r9+6] add rsi,8 jmp no_fast_ap16 ap_15: mov r9,qword ptr [r8] mov rbx,15*16 cmp word ptr [r9],bx att_je fast_ap mov qword ptr [rsi],rcx mov rcx,rdx mov rdx,r8 mov r8,qword ptr [r9+6] add rsi,8 jmp no_fast_ap15 ap_14: mov r9,qword ptr [r8] mov rbx,14*16 cmp word ptr [r9],bx att_je fast_ap mov qword ptr [rsi],rcx mov rcx,rdx mov rdx,r8 mov r8,qword ptr [r9+6] add rsi,8 jmp no_fast_ap14 ap_13: mov r9,qword ptr [r8] mov rbx,13*16 cmp word ptr [r9],bx att_je fast_ap mov qword ptr [rsi],rcx mov rcx,rdx mov rdx,r8 mov r8,qword ptr [r9+6] add rsi,8 jmp no_fast_ap13 ap_12: mov r9,qword ptr [r8] mov rbx,12*16 cmp word ptr [r9],bx att_je fast_ap mov qword ptr [rsi],rcx mov rcx,rdx mov rdx,r8 mov r8,qword ptr [r9+6] add rsi,8 jmp no_fast_ap12 ap_11: mov r9,qword ptr [r8] mov rbx,11*16 cmp word ptr [r9],bx att_je fast_ap mov qword ptr [rsi],rcx mov rcx,rdx mov rdx,r8 mov r8,qword ptr [r9+6] add rsi,8 jmp no_fast_ap11 ap_10: mov r9,qword ptr [r8] mov rbx,10*16 cmp word ptr [r9],bx att_je fast_ap mov qword ptr [rsi],rcx mov rcx,rdx mov rdx,r8 mov r8,qword ptr [r9+6] add rsi,8 jmp no_fast_ap10 ap_9: mov r9,qword ptr [r8] mov rbx,9*16 cmp word ptr [r9],bx att_je fast_ap mov qword ptr [rsi],rcx mov rcx,rdx mov rdx,r8 mov r8,qword ptr [r9+6] add rsi,8 jmp no_fast_ap9 ap_8: mov r9,qword ptr [r8] mov rbx,8*16 cmp word ptr [r9],bx att_je fast_ap mov qword ptr [rsi],rcx mov rcx,rdx mov rdx,r8 mov r8,qword ptr [r9+6] add rsi,8 jmp no_fast_ap8 ap_7: mov r9,qword ptr [r8] mov rbx,7*16 cmp word ptr [r9],bx att_je fast_ap mov qword ptr [rsi],rcx mov rcx,rdx mov rdx,r8 mov r8,qword ptr [r9+6] add rsi,8 jmp no_fast_ap7 ap_6: mov r9,qword ptr [r8] mov rbx,6*16 cmp word ptr [r9],bx att_je fast_ap mov qword ptr [rsi],rcx mov rcx,rdx mov rdx,r8 mov r8,qword ptr [r9+6] add rsi,8 jmp no_fast_ap6 ap_5: mov r9,qword ptr [r8] mov rbx,5*16 cmp word ptr [r9],bx att_je fast_ap mov qword ptr [rsi],rcx mov rcx,rdx mov rdx,r8 mov r8,qword ptr [r9+6] add rsi,8 jmp no_fast_ap5 ap_4: mov r9,qword ptr [r8] mov rbx,4*16 cmp word ptr [r9],bx att_je fast_ap mov qword ptr [rsi],rcx mov rcx,rdx mov rdx,r8 mov r8,qword ptr [r9+6] add rsi,8 jmp no_fast_ap4 ap_3: mov r9,qword ptr [r8] mov rbx,3*16 cmp word ptr [r9],bx att_je fast_ap mov qword ptr [rsi],rcx mov rcx,rdx mov rdx,r8 mov r8,qword ptr [r9+6] add rsi,8 jmp no_fast_ap3 ap_2: mov r9,qword ptr [r8] mov rbx,2*16 cmp word ptr [r9],bx jne no_fast_ap2_ fast_ap_2_2_: movzx rax,word ptr [r9-2] add rbx,r9 mov r9,qword ptr [rbx-10] .if PROFILE sub r9,24 .else sub r9,12 .endif cmp rax,1 jb repl_args_0_2 je repl_args_1 cmp rax,3 jb repl_args_2 mov qword ptr [rsi],rcx mov qword ptr [rsi+8],rdx lea rsi,[rsi+16] mov rdx,qword ptr [r8+16] jmp fast_ap_ no_fast_ap2_: mov qword ptr [rsi],rcx mov rcx,rdx mov rdx,r8 mov r8,qword ptr [r9+6] add rsi,8 jmp no_fast_ap2 fast_ap_2_2: mov r8,rdx mov rdx,rcx mov rcx,qword ptr [rsi-8] sub rsi,8 att_jmp fast_ap_2_2_ fast_ap_2: mov r8,rdx mov rdx,rcx mov rcx,qword ptr [rsi-8] sub rsi,8 fast_ap: movzx rax,word ptr [r9-2] add rbx,r9 mov r9,qword ptr [rbx-10] .if PROFILE sub r9,24 .else sub r9,12 .endif cmp rax,1 jb repl_args_0 att_je repl_args_1 cmp rax,3 att_jb repl_args_2 mov qword ptr [rsi],rcx mov qword ptr [rsi+8],rdx lea rsi,[rsi+16] mov rdx,qword ptr [r8+16] fast_ap_: mov r8,qword ptr [r8+8] je repl_args_3 cmp rax,5 jb repl_args_4 je repl_args_5 cmp rax,7 jb repl_args_6 repl_args_7_: mov rbp,qword ptr [rdx+rax*8-16] mov qword ptr [rsi],rbp sub rax,1 add rsi,8 cmp rax,6 att_jne repl_args_7_ repl_args_6: mov rax,qword ptr [rdx+32] mov qword ptr [rsi],rax mov rax,qword ptr [rdx+24] mov qword ptr [rsi+8],rax mov rax,qword ptr [rdx+16] mov qword ptr [rsi+16],rax mov rcx,qword ptr [rdx+8] mov rdx,qword ptr [rdx] add rsi,24 jmp r9 repl_args_0: mov r8,rdx mov rdx,rcx mov rcx,qword ptr [rsi-8] sub rsi,8 repl_args_0_2: jmp r9 repl_args_1: mov r8,qword ptr [r8+8] jmp r9 repl_args_2: mov qword ptr [rsi],rcx mov rcx,rdx add rsi,8 mov rdx,qword ptr [r8+16] mov r8,qword ptr [r8+8] jmp r9 repl_args_3: mov rcx,qword ptr [rdx+8] mov rdx,qword ptr [rdx] jmp r9 repl_args_4: mov rax,qword ptr [rdx+16] mov qword ptr [rsi],rax mov rcx,qword ptr [rdx+8] mov rdx,qword ptr [rdx] add rsi,8 jmp r9 repl_args_5: mov rax,qword ptr [rdx+24] mov qword ptr [rsi],rax mov rax,qword ptr [rdx+16] mov qword ptr [rsi+8],rax mov rcx,qword ptr [rdx+8] mov rdx,qword ptr [rdx] add rsi,16 jmp r9 no_fast_ap32: call r8 mov r9,qword ptr [rcx] mov rdx,rcx mov rcx,qword ptr [rsi-8] sub rsi,8 mov rbx,31*16 cmp word ptr [r9],bx att_je fast_ap_2 mov r8,qword ptr [r9+6] no_fast_ap31: call r8 mov r9,qword ptr [rcx] mov rdx,rcx mov rcx,qword ptr [rsi-8] sub rsi,8 mov rbx,30*16 cmp word ptr [r9],bx att_je fast_ap_2 mov r8,qword ptr [r9+6] no_fast_ap30: call r8 mov r9,qword ptr [rcx] mov rdx,rcx mov rcx,qword ptr [rsi-8] sub rsi,8 mov rbx,29*16 cmp word ptr [r9],bx att_je fast_ap_2 mov r8,qword ptr [r9+6] no_fast_ap29: call r8 mov r9,qword ptr [rcx] mov rdx,rcx mov rcx,qword ptr [rsi-8] sub rsi,8 mov rbx,28*16 cmp word ptr [r9],bx att_je fast_ap_2 mov r8,qword ptr [r9+6] no_fast_ap28: call r8 mov r9,qword ptr [rcx] mov rdx,rcx mov rcx,qword ptr [rsi-8] sub rsi,8 mov rbx,27*16 cmp word ptr [r9],bx att_je fast_ap_2 mov r8,qword ptr [r9+6] no_fast_ap27: call r8 mov r9,qword ptr [rcx] mov rdx,rcx mov rcx,qword ptr [rsi-8] sub rsi,8 mov rbx,26*16 cmp word ptr [r9],bx att_je fast_ap_2 mov r8,qword ptr [r9+6] no_fast_ap26: call r8 mov r9,qword ptr [rcx] mov rdx,rcx mov rcx,qword ptr [rsi-8] sub rsi,8 mov rbx,25*16 cmp word ptr [r9],bx att_je fast_ap_2 mov r8,qword ptr [r9+6] no_fast_ap25: call r8 mov r9,qword ptr [rcx] mov rdx,rcx mov rcx,qword ptr [rsi-8] sub rsi,8 mov rbx,24*16 cmp word ptr [r9],bx att_je fast_ap_2 mov r8,qword ptr [r9+6] no_fast_ap24: call r8 mov r9,qword ptr [rcx] mov rdx,rcx mov rcx,qword ptr [rsi-8] sub rsi,8 mov rbx,23*16 cmp word ptr [r9],bx att_je fast_ap_2 mov r8,qword ptr [r9+6] no_fast_ap23: call r8 mov r9,qword ptr [rcx] mov rdx,rcx mov rcx,qword ptr [rsi-8] sub rsi,8 mov rbx,22*16 cmp word ptr [r9],bx att_je fast_ap_2 mov r8,qword ptr [r9+6] no_fast_ap22: call r8 mov r9,qword ptr [rcx] mov rdx,rcx mov rcx,qword ptr [rsi-8] sub rsi,8 mov rbx,21*16 cmp word ptr [r9],bx att_je fast_ap_2 mov r8,qword ptr [r9+6] no_fast_ap21: call r8 mov r9,qword ptr [rcx] mov rdx,rcx mov rcx,qword ptr [rsi-8] sub rsi,8 mov rbx,20*16 cmp word ptr [r9],bx att_je fast_ap_2 mov r8,qword ptr [r9+6] no_fast_ap20: call r8 mov r9,qword ptr [rcx] mov rdx,rcx mov rcx,qword ptr [rsi-8] sub rsi,8 mov rbx,19*16 cmp word ptr [r9],bx att_je fast_ap_2 mov r8,qword ptr [r9+6] no_fast_ap19: call r8 mov r9,qword ptr [rcx] mov rdx,rcx mov rcx,qword ptr [rsi-8] sub rsi,8 mov rbx,18*16 cmp word ptr [r9],bx att_je fast_ap_2 mov r8,qword ptr [r9+6] no_fast_ap18: call r8 mov r9,qword ptr [rcx] mov rdx,rcx mov rcx,qword ptr [rsi-8] sub rsi,8 mov rbx,17*16 cmp word ptr [r9],bx att_je fast_ap_2 mov r8,qword ptr [r9+6] no_fast_ap17: call r8 mov r9,qword ptr [rcx] mov rdx,rcx mov rcx,qword ptr [rsi-8] sub rsi,8 mov rbx,16*16 cmp word ptr [r9],bx att_je fast_ap_2 mov r8,qword ptr [r9+6] no_fast_ap16: call r8 mov r9,qword ptr [rcx] mov rdx,rcx mov rcx,qword ptr [rsi-8] sub rsi,8 mov rbx,15*16 cmp word ptr [r9],bx att_je fast_ap_2 mov r8,qword ptr [r9+6] no_fast_ap15: call r8 mov r9,qword ptr [rcx] mov rdx,rcx mov rcx,qword ptr [rsi-8] sub rsi,8 mov rbx,14*16 cmp word ptr [r9],bx att_je fast_ap_2 mov r8,qword ptr [r9+6] no_fast_ap14: call r8 mov r9,qword ptr [rcx] mov rdx,rcx mov rcx,qword ptr [rsi-8] sub rsi,8 mov rbx,13*16 cmp word ptr [r9],bx att_je fast_ap_2 mov r8,qword ptr [r9+6] no_fast_ap13: call r8 mov r9,qword ptr [rcx] mov rdx,rcx mov rcx,qword ptr [rsi-8] sub rsi,8 mov rbx,12*16 cmp word ptr [r9],bx att_je fast_ap_2 mov r8,qword ptr [r9+6] no_fast_ap12: call r8 mov r9,qword ptr [rcx] mov rdx,rcx mov rcx,qword ptr [rsi-8] sub rsi,8 mov rbx,11*16 cmp word ptr [r9],bx att_je fast_ap_2 mov r8,qword ptr [r9+6] no_fast_ap11: call r8 mov r9,qword ptr [rcx] mov rdx,rcx mov rcx,qword ptr [rsi-8] sub rsi,8 mov rbx,10*16 cmp word ptr [r9],bx att_je fast_ap_2 mov r8,qword ptr [r9+6] no_fast_ap10: call r8 mov r9,qword ptr [rcx] mov rdx,rcx mov rcx,qword ptr [rsi-8] sub rsi,8 mov rbx,9*16 cmp word ptr [r9],bx att_je fast_ap_2 mov r8,qword ptr [r9+6] no_fast_ap9: call r8 mov r9,qword ptr [rcx] mov rdx,rcx mov rcx,qword ptr [rsi-8] sub rsi,8 mov rbx,8*16 cmp word ptr [r9],bx att_je fast_ap_2 mov r8,qword ptr [r9+6] no_fast_ap8: call r8 mov r9,qword ptr [rcx] mov rdx,rcx mov rcx,qword ptr [rsi-8] sub rsi,8 mov rbx,7*16 cmp word ptr [r9],bx att_je fast_ap_2 mov r8,qword ptr [r9+6] no_fast_ap7: call r8 mov r9,qword ptr [rcx] mov rdx,rcx mov rcx,qword ptr [rsi-8] sub rsi,8 mov rbx,6*16 cmp word ptr [r9],bx att_je fast_ap_2 mov r8,qword ptr [r9+6] no_fast_ap6: call r8 mov r9,qword ptr [rcx] mov rdx,rcx mov rcx,qword ptr [rsi-8] sub rsi,8 mov rbx,5*16 cmp word ptr [r9],bx att_je fast_ap_2 mov r8,qword ptr [r9+6] no_fast_ap5: call r8 mov r9,qword ptr [rcx] mov rdx,rcx mov rcx,qword ptr [rsi-8] sub rsi,8 mov rbx,4*16 cmp word ptr [r9],bx att_je fast_ap_2 mov r8,qword ptr [r9+6] no_fast_ap4: call r8 mov r9,qword ptr [rcx] mov rdx,rcx mov rcx,qword ptr [rsi-8] sub rsi,8 mov rbx,3*16 cmp word ptr [r9],bx att_je fast_ap_2 mov r8,qword ptr [r9+6] no_fast_ap3: call r8 mov r9,qword ptr [rcx] mov rdx,rcx mov rcx,qword ptr [rsi-8] sub rsi,8 mov rbx,2*16 cmp word ptr [r9],bx att_je fast_ap_2_2 mov r8,qword ptr [r9+6] no_fast_ap2: call r8 mov r9,qword ptr [rcx] mov rdx,rcx mov rcx,qword ptr [rsi-8] sub rsi,8 jmp qword ptr [r9+6] add_empty_node_2: sub r15,3 jb add_empty_node_2_gc add_empty_node_2_gc_: lea rbp,[rip+__cycle__in__spine] mov qword ptr [rdi],rbp mov r8,rdx mov rdx,rcx mov rcx,rdi add rdi,24 ret add_empty_node_2_gc: att_call collect_2 att_jmp add_empty_node_2_gc_ add_empty_node_3: sub r15,3 jb add_empty_node_3_gc add_empty_node_3_gc_: mov qword ptr [rsi],rdi lea rbp,[rip+__cycle__in__spine] mov qword ptr [rdi],rbp add rsi,8 add rdi,24 ret add_empty_node_3_gc: att_call collect_3 att_jmp add_empty_node_3_gc_ add_empty_node_4: sub r15,3 jb add_empty_node_4_gc add_empty_node_4_gc_: mov r9,qword ptr [rsi-8] mov qword ptr [rsi],r9 mov qword ptr [rsi-8],rdi lea rbp,[rip+__cycle__in__spine] mov qword ptr [rdi],rbp add rsi,8 add rdi,24 ret add_empty_node_4_gc: att_call collect_3 att_jmp add_empty_node_4_gc_ add_empty_node_5: sub r15,3 jb add_empty_node_5_gc add_empty_node_5_gc_: mov r9,qword ptr [rsi-8] mov qword ptr [rsi],r9 mov r9,qword ptr [rsi-16] mov qword ptr [rsi-8],r9 mov qword ptr [rsi-16],rdi lea rbp,[rip+__cycle__in__spine] mov qword ptr [rdi],rbp add rsi,8 add rdi,24 ret add_empty_node_5_gc: att_call collect_3 att_jmp add_empty_node_5_gc_ add_empty_node_6: sub r15,3 jb add_empty_node_6_gc add_empty_node_6_gc_: mov r9,qword ptr [rsi-8] mov qword ptr [rsi],r9 mov r9,qword ptr [rsi-16] mov qword ptr [rsi-8],r9 mov r9,qword ptr [rsi-24] mov qword ptr [rsi-16],r9 mov qword ptr [rsi-24],rdi lea rbp,[rip+__cycle__in__spine] mov qword ptr [rdi],rbp add rsi,8 add rdi,24 ret add_empty_node_6_gc: att_call collect_3 att_jmp add_empty_node_6_gc_ add_empty_node_7: sub r15,3 jb add_empty_node_7_gc add_empty_node_7_gc_: mov r9,qword ptr [rsi-8] mov qword ptr [rsi],r9 mov r9,qword ptr [rsi-16] mov qword ptr [rsi-8],r9 mov r9,qword ptr [rsi-24] mov qword ptr [rsi-16],r9 mov r9,qword ptr [rsi-32] mov qword ptr [rsi-24],r9 mov qword ptr [rsi-32],rdi lea rbp,[rip+__cycle__in__spine] mov qword ptr [rdi],rbp add rsi,8 add rdi,24 ret add_empty_node_7_gc: att_call collect_3 att_jmp add_empty_node_7_gc_ add_empty_node_8: sub r15,3 jb add_empty_node_8_gc add_empty_node_8_gc_: mov r9,qword ptr [rsi-8] mov qword ptr [rsi],r9 mov r9,qword ptr [rsi-16] mov qword ptr [rsi-8],r9 mov r9,qword ptr [rsi-24] mov qword ptr [rsi-16],r9 mov r9,qword ptr [rsi-32] mov qword ptr [rsi-24],r9 mov r9,qword ptr [rsi-40] mov qword ptr [rsi-32],r9 mov qword ptr [rsi-40],rdi lea rbp,[rip+__cycle__in__spine] mov qword ptr [rdi],rbp add rsi,8 add rdi,24 ret add_empty_node_8_gc: att_call collect_3 att_jmp add_empty_node_8_gc_ add_empty_node_9: sub r15,3 jb add_empty_node_9_gc add_empty_node_9_gc_: mov r9,qword ptr [rsi-8] mov qword ptr [rsi],r9 mov r9,qword ptr [rsi-16] mov qword ptr [rsi-8],r9 mov r9,qword ptr [rsi-24] mov qword ptr [rsi-16],r9 mov r9,qword ptr [rsi-32] mov qword ptr [rsi-24],r9 mov r9,qword ptr [rsi-40] mov qword ptr [rsi-32],r9 mov r9,qword ptr [rsi-48] mov qword ptr [rsi-40],r9 mov qword ptr [rsi-48],rdi lea rbp,[rip+__cycle__in__spine] mov qword ptr [rdi],rbp add rsi,8 add rdi,24 ret add_empty_node_9_gc: att_call collect_3 att_jmp add_empty_node_9_gc_ add_empty_node_10: sub r15,3 jb add_empty_node_10_gc add_empty_node_10_gc_: mov r9,qword ptr [rsi-8] mov qword ptr [rsi],r9 mov r9,qword ptr [rsi-16] mov qword ptr [rsi-8],r9 mov r9,qword ptr [rsi-24] mov qword ptr [rsi-16],r9 mov r9,qword ptr [rsi-32] mov qword ptr [rsi-24],r9 mov r9,qword ptr [rsi-40] mov qword ptr [rsi-32],r9 mov r9,qword ptr [rsi-48] mov qword ptr [rsi-40],r9 mov r9,qword ptr [rsi-56] mov qword ptr [rsi-48],r9 mov qword ptr [rsi-56],rdi lea rbp,[rip+__cycle__in__spine] mov qword ptr [rdi],rbp add rsi,8 add rdi,24 ret add_empty_node_10_gc: att_call collect_3 att_jmp add_empty_node_10_gc_ add_empty_node_11: sub r15,3 jb add_empty_node_11_gc add_empty_node_11_gc_: mov r9,qword ptr [rsi-8] mov qword ptr [rsi],r9 mov r9,qword ptr [rsi-16] mov qword ptr [rsi-8],r9 mov r9,qword ptr [rsi-24] mov qword ptr [rsi-16],r9 mov r9,qword ptr [rsi-32] mov qword ptr [rsi-24],r9 mov r9,qword ptr [rsi-40] mov qword ptr [rsi-32],r9 mov r9,qword ptr [rsi-48] mov qword ptr [rsi-40],r9 mov r9,qword ptr [rsi-56] mov qword ptr [rsi-48],r9 mov r9,qword ptr [rsi-64] mov qword ptr [rsi-56],r9 mov qword ptr [rsi-64],rdi lea rbp,[rip+__cycle__in__spine] mov qword ptr [rdi],rbp add rsi,8 add rdi,24 ret add_empty_node_11_gc: att_call collect_3 att_jmp add_empty_node_11_gc_ add_empty_node_32: mov rbx,7 att_jmp add_empty_node_12_ add_empty_node_28: mov rbx,6 att_jmp add_empty_node_12_ add_empty_node_24: mov rbx,5 att_jmp add_empty_node_12_ add_empty_node_20: mov rbx,4 att_jmp add_empty_node_12_ add_empty_node_16: mov rbx,3 att_jmp add_empty_node_12_ add_empty_node_12: mov rbx,2 add_empty_node_12_: sub r15,3 jb add_empty_node_12_gc add_empty_node_12_gc_: mov rax,rsi mov r9,qword ptr [rsi-8] mov qword ptr [rsi],r9 add_empty_node_12_lp: mov r9,qword ptr [rax-16] mov qword ptr [rax-8],r9 mov r9,qword ptr [rax-24] mov qword ptr [rax-16],r9 mov r9,qword ptr [rax-32] mov qword ptr [rax-24],r9 mov r9,qword ptr [rax-40] mov qword ptr [rax-32],r9 sub rax,32 sub rbx,1 att_jne add_empty_node_12_lp mov qword ptr [rax-8],rdi lea rbp,[rip+__cycle__in__spine] mov qword ptr [rdi],rbp add rsi,8 add rdi,24 ret add_empty_node_12_gc: att_call collect_3 att_jmp add_empty_node_12_gc_ add_empty_node_29: mov rbx,6 jmp add_empty_node_13_ add_empty_node_25: mov rbx,5 att_jmp add_empty_node_13_ add_empty_node_21: mov rbx,4 att_jmp add_empty_node_13_ add_empty_node_17: mov rbx,3 att_jmp add_empty_node_13_ add_empty_node_13: mov rbx,2 add_empty_node_13_: sub r15,3 jb add_empty_node_13_gc add_empty_node_13_gc_: mov rax,rsi mov r9,qword ptr [rsi-8] mov qword ptr [rsi],r9 mov r9,qword ptr [rsi-16] mov qword ptr [rsi-8],r9 add_empty_node_13_lp: mov r9,qword ptr [rax-24] mov qword ptr [rax-16],r9 mov r9,qword ptr [rax-32] mov qword ptr [rax-24],r9 mov r9,qword ptr [rax-40] mov qword ptr [rax-32],r9 mov r9,qword ptr [rax-48] mov qword ptr [rax-40],r9 sub rax,32 sub rbx,1 att_jne add_empty_node_13_lp mov qword ptr [rax-16],rdi lea rbp,[rip+__cycle__in__spine] mov qword ptr [rdi],rbp add rsi,8 add rdi,24 ret add_empty_node_13_gc: att_call collect_3 att_jmp add_empty_node_13_gc_ add_empty_node_30: mov rbx,6 att_jmp add_empty_node_14_ add_empty_node_26: mov rbx,5 att_jmp add_empty_node_14_ add_empty_node_22: mov rbx,4 att_jmp add_empty_node_14_ add_empty_node_18: mov rbx,3 att_jmp add_empty_node_14_ add_empty_node_14: mov rbx,2 add_empty_node_14_: sub r15,3 jb add_empty_node_14_gc add_empty_node_14_gc_: mov rax,rsi mov r9,qword ptr [rsi-8] mov qword ptr [rsi],r9 mov r9,qword ptr [rsi-16] mov qword ptr [rsi-8],r9 mov r9,qword ptr [rsi-24] mov qword ptr [rsi-16],r9 add_empty_node_14_lp: mov r9,qword ptr [rax-32] mov qword ptr [rax-24],r9 mov r9,qword ptr [rax-40] mov qword ptr [rax-32],r9 mov r9,qword ptr [rax-48] mov qword ptr [rax-40],r9 mov r9,qword ptr [rax-56] mov qword ptr [rax-48],r9 sub rax,32 sub rbx,1 att_jne add_empty_node_14_lp mov qword ptr [rax-24],rdi lea rbp,[rip+__cycle__in__spine] mov qword ptr [rdi],rbp add rsi,8 add rdi,24 ret add_empty_node_14_gc: att_call collect_3 att_jmp add_empty_node_14_gc_ add_empty_node_31: mov rbx,7 att_jmp add_empty_node_15_ add_empty_node_27: mov rbx,6 att_jmp add_empty_node_15_ add_empty_node_23: mov rbx,5 att_jmp add_empty_node_15_ add_empty_node_19: mov rbx,4 att_jmp add_empty_node_15_ add_empty_node_15: mov rbx,3 add_empty_node_15_: sub r15,3 jb add_empty_node_15_gc add_empty_node_15_gc_: mov rax,rsi add_empty_node_15_lp: mov r9,qword ptr [rax-8] mov qword ptr [rax],r9 mov r9,qword ptr [rax-16] mov qword ptr [rax-8],r9 mov r9,qword ptr [rax-24] mov qword ptr [rax-16],r9 mov r9,qword ptr [rax-32] mov qword ptr [rax-24],r9 sub rax,32 sub rbx,1 att_jne add_empty_node_15_lp mov qword ptr [rax],rdi lea rbp,[rip+__cycle__in__spine] mov qword ptr [rdi],rbp add rsi,8 add rdi,24 ret add_empty_node_15_gc: att_call collect_3 att_jmp add_empty_node_15_gc_ yet_args_needed_0: sub r15,2 jb yet_args_needed_0_gc yet_args_needed_0_gc_r: mov qword ptr [rdi+8],rcx mov rax,qword ptr [rdx] mov rcx,rdi add rax,16 mov qword ptr [rdi],rax add rdi,16 ret yet_args_needed_0_gc: att_call collect_2 att_jmp yet_args_needed_0_gc_r .p2align 3 nop nop nop nop nop nop nop nop jmp yet_args_needed_1_gc .p2align 3 nop nop nop nop sub r15,3 jae build_node_2_gc_r jmp_short_opcode .byte -24 .p2align 3 .if PROFILE nop nop nop nop nop nop nop nop nop nop nop nop .endif yet_args_needed_1: sub r15,3 jb yet_args_needed_1_gc_ /* yet_args_needed_1_gc_ to avoid a bug in the Mach-O assembler */ yet_args_needed_1_gc_r: mov qword ptr [rdi+16],rcx mov rax,qword ptr [rdx] mov rcx,rdi add rax,16 mov qword ptr [rdi],rax mov rbx,qword ptr [rdx+8] mov qword ptr [rdi+8],rbx add rdi,24 ret yet_args_needed_1_gc: yet_args_needed_1_gc_: att_call collect_2 att_jmp yet_args_needed_1_gc_r build_node_2_gc_r: mov qword ptr [rdi],rbx mov qword ptr [rdi+8],rdx mov qword ptr [rdi+16],rcx mov rcx,rdi add rdi,24 ret build_node_2_gc: att_call collect_2 att_jmp build_node_2_gc_r .p2align 3 nop nop nop nop nop nop nop nop jmp build_node_3_gc .p2align 3 nop nop nop nop sub r15,5 att_jae build_node_3_gc_r jmp_short_opcode .byte -24 .p2align 3 .if PROFILE nop nop nop nop nop nop nop nop nop nop nop nop .endif yet_args_needed_2: sub r15,5 jb gc_22 gc_r_22: mov rax,qword ptr [rdx] mov qword ptr [rdi+8],rcx add rax,16 mov r10,qword ptr [rdx+8] mov qword ptr [rdi+16],rax lea rcx,[rdi+16] mov rbp,qword ptr [rdx+16] mov qword ptr [rdi+24],r10 mov qword ptr [rdi],rbp mov qword ptr [rdi+32],rdi add rdi,40 ret gc_22: att_call collect_2 att_jmp gc_r_22 build_node_3_gc_r: mov qword ptr [rdi],rbx lea rbp,[rdi+24] mov qword ptr [rdi+8],r8 mov qword ptr [rdi+16],rbp mov qword ptr [rdi+24],rdx mov qword ptr [rdi+32],rcx mov rcx,rdi add rdi,40 ret build_node_3_gc: att_call collect_2 att_jmp build_node_3_gc_r .p2align 3 nop nop nop nop nop nop nop nop jmp build_node_4_gc .p2align 3 nop nop nop nop sub r15,6 jae build_node_4_gc_r jmp_short_opcode .byte -24 .p2align 3 .if PROFILE nop nop nop nop nop nop nop nop nop nop nop nop .endif yet_args_needed_3: sub r15,6 jb gc_23 gc_r_23: mov rax,qword ptr [rdx] mov qword ptr [rdi+16],rcx add rax,16 mov r10,qword ptr [rdx+8] mov qword ptr [rdi+24],rax mov rdx,qword ptr [rdx+16] mov qword ptr [rdi+32],r10 mov rbp,qword ptr [rdx] mov qword ptr [rdi+40],rdi mov qword ptr [rdi],rbp mov rbp,qword ptr [rdx+8] lea rcx,[rdi+24] mov qword ptr [rdi+8],rbp add rdi,48 ret gc_23: att_call collect_2 att_jmp gc_r_23 build_node_4_gc_r: mov qword ptr [rdi],rbx lea rbp,[rdi+24] mov qword ptr [rdi+8],r8 mov qword ptr [rdi+16],rbp mov qword ptr [rdi+24],rdx mov qword ptr [rdi+32],rcx mov rcx,rdi mov rbp,qword ptr [rsi-8] mov qword ptr [rdi+40],rbp sub rsi,8 add rdi,48 ret build_node_4_gc: att_call collect_2 att_jmp build_node_4_gc_r .p2align 3 nop nop nop nop nop nop nop nop jmp build_node_5_gc .p2align 3 nop nop nop nop sub r15,7 jae build_node_5_gc_r jmp_short_opcode .byte -24 .p2align 3 .if PROFILE nop nop nop nop nop nop nop nop nop nop nop nop .endif yet_args_needed_4: sub r15,7 jb gc_24 gc_r_24: mov rax,qword ptr [rdx] mov qword ptr [rdi+24],rcx add rax,16 mov r10,qword ptr [rdx+8] mov qword ptr [rdi+32],rax mov rdx,qword ptr [rdx+16] mov qword ptr [rdi+40],r10 mov rbp,qword ptr [rdx] mov [rdi+48],rdi mov qword ptr [rdi],rbp mov rbp,qword ptr [rdx+8] lea rcx,[rdi+32] mov qword ptr [rdi+8],rbp mov rbp,qword ptr [rdx+16] mov qword ptr [rdi+16],rbp add rdi,56 ret gc_24: att_call collect_2 att_jmp gc_r_24 build_node_5_gc_r: mov qword ptr [rdi],rbx lea rbp,[rdi+24] mov qword ptr [rdi+8],r8 mov qword ptr [rdi+16],rbp mov qword ptr [rdi+24],rdx mov qword ptr [rdi+32],rcx mov rcx,rdi mov rbp,qword ptr [rsi-8] mov qword ptr [rdi+40],rbp mov rbp,qword ptr [rsi-16] mov qword ptr [rdi+48],rbp sub rsi,16 add rdi,56 ret build_node_5_gc: att_call collect_2 att_jmp build_node_5_gc_r .align 2 mov eax,8 jmp build_node_ nop nop .align 2 .if PROFILE nop nop nop nop nop nop nop nop nop nop nop nop .endif yet_args_needed_5: mov rbx,qword ptr [rdx] mov rax,8 jmp yet_args_needed_ .align 2 mov eax,9 att_jmp build_node_ nop nop .align 2 .if PROFILE nop nop nop nop nop nop nop nop nop nop nop nop .endif yet_args_needed_6: mov rbx,qword ptr [rdx] mov rax,9 att_jmp yet_args_needed_ .align 2 mov eax,10 att_jmp build_node_ nop nop .align 2 .if PROFILE nop nop nop nop nop nop nop nop nop nop nop nop .endif yet_args_needed_7: mov rbx,qword ptr [rdx] mov rax,10 att_jmp yet_args_needed_ .align 2 mov eax,11 att_jmp build_node_ nop nop .align 2 .if PROFILE nop nop nop nop nop nop nop nop nop nop nop nop .endif yet_args_needed_8: mov rbx,qword ptr [rdx] mov rax,11 att_jmp yet_args_needed_ .align 2 mov eax,12 att_jmp build_node_ nop nop .align 2 .if PROFILE nop nop nop nop nop nop nop nop nop nop nop nop .endif yet_args_needed_9: mov rbx,qword ptr [rdx] mov rax,12 att_jmp yet_args_needed_ .align 2 mov eax,13 att_jmp build_node_ nop nop .align 2 .if PROFILE nop nop nop nop nop nop nop nop nop nop nop nop .endif yet_args_needed_10: mov rbx,qword ptr [rdx] mov rax,13 att_jmp yet_args_needed_ .align 2 mov eax,14 att_jmp build_node_ nop nop .align 2 .if PROFILE nop nop nop nop nop nop nop nop nop nop nop nop .endif yet_args_needed_11: mov rbx,qword ptr [rdx] mov rax,14 att_jmp yet_args_needed_ .align 2 mov eax,15 att_jmp build_node_ nop nop .align 2 .if PROFILE nop nop nop nop nop nop nop nop nop nop nop nop .endif yet_args_needed_12: mov rbx,qword ptr [rdx] mov rax,15 att_jmp yet_args_needed_ .align 2 mov eax,16 att_jmp build_node_ nop nop .align 2 .if PROFILE nop nop nop nop nop nop nop nop nop nop nop nop .endif yet_args_needed_13: mov rbx,qword ptr [rdx] mov rax,16 att_jmp yet_args_needed_ .align 2 mov eax,17 att_jmp build_node_ nop nop .align 2 .if PROFILE nop nop nop nop nop nop nop nop nop nop nop nop .endif yet_args_needed_14: mov rbx,qword ptr [rdx] mov rax,17 att_jmp yet_args_needed_ .align 2 mov eax,18 att_jmp build_node_ nop nop .align 2 .if PROFILE nop nop nop nop nop nop nop nop nop nop nop nop .endif yet_args_needed_15: mov rbx,qword ptr [rdx] mov rax,18 att_jmp yet_args_needed_ .align 2 mov eax,19 att_jmp build_node_ nop nop .align 2 .if PROFILE nop nop nop nop nop nop nop nop nop nop nop nop .endif yet_args_needed_16: mov rbx,qword ptr [rdx] mov rax,19 att_jmp yet_args_needed_ .align 2 mov eax,20 att_jmp build_node_ nop nop .align 2 .if PROFILE nop nop nop nop nop nop nop nop nop nop nop nop .endif yet_args_needed_17: mov rbx,qword ptr [rdx] mov rax,20 att_jmp yet_args_needed_ .align 2 mov eax,21 att_jmp build_node_ nop nop .align 2 .if PROFILE nop nop nop nop nop nop nop nop nop nop nop nop .endif yet_args_needed_18: mov rbx,qword ptr [rdx] mov rax,21 att_jmp yet_args_needed_ .align 2 mov eax,22 att_jmp build_node_ nop nop .align 2 .if PROFILE nop nop nop nop nop nop nop nop nop nop nop nop .endif yet_args_needed_19: mov rbx,qword ptr [rdx] mov rax,22 att_jmp yet_args_needed_ .align 2 mov eax,23 att_jmp build_node_ nop nop .align 2 .if PROFILE nop nop nop nop nop nop nop nop nop nop nop nop .endif yet_args_needed_20: mov rbx,qword ptr [rdx] mov rax,23 att_jmp yet_args_needed_ .align 2 mov eax,24 att_jmp build_node_ nop nop .align 2 .if PROFILE nop nop nop nop nop nop nop nop nop nop nop nop .endif yet_args_needed_21: mov rbx,qword ptr [rdx] mov rax,24 att_jmp yet_args_needed_ .align 2 mov eax,25 att_jmp build_node_ nop nop .align 2 .if PROFILE nop nop nop nop nop nop nop nop nop nop nop nop .endif yet_args_needed_22: mov rbx,qword ptr [rdx] mov rax,25 att_jmp yet_args_needed_ .align 2 mov eax,26 att_jmp build_node_ nop nop .align 2 .if PROFILE nop nop nop nop nop nop nop nop nop nop nop nop .endif yet_args_needed_23: mov rbx,qword ptr [rdx] mov rax,26 att_jmp yet_args_needed_ .align 2 mov eax,27 att_jmp build_node_ nop nop .align 2 .if PROFILE nop nop nop nop nop nop nop nop nop nop nop nop .endif yet_args_needed_24: mov rbx,qword ptr [rdx] mov rax,27 att_jmp yet_args_needed_ .align 2 mov eax,28 att_jmp build_node_ nop nop .align 2 .if PROFILE nop nop nop nop nop nop nop nop nop nop nop nop .endif yet_args_needed_25: mov rbx,qword ptr [rdx] mov rax,28 att_jmp yet_args_needed_ .align 2 mov eax,29 att_jmp build_node_ nop nop .align 2 .if PROFILE nop nop nop nop nop nop nop nop nop nop nop nop .endif yet_args_needed_26: mov rbx,qword ptr [rdx] mov rax,29 att_jmp yet_args_needed_ .align 2 mov eax,30 att_jmp build_node_ nop nop .align 2 .if PROFILE nop nop nop nop nop nop nop nop nop nop nop nop .endif yet_args_needed_27: mov rbx,qword ptr [rdx] mov rax,30 att_jmp yet_args_needed_ .align 2 mov eax,31 att_jmp build_node_ nop nop .align 2 .if PROFILE nop nop nop nop nop nop nop nop nop nop nop nop .endif yet_args_needed_28: mov rbx,qword ptr [rdx] mov rax,31 att_jmp yet_args_needed_ .align 2 mov eax,32 att_jmp build_node_ nop nop .align 2 .if PROFILE nop nop nop nop nop nop nop nop nop nop nop nop .endif yet_args_needed_29: mov rbx,qword ptr [rdx] mov rax,32 att_jmp yet_args_needed_ .align 2 mov eax,33 att_jmp build_node_ nop nop .align 2 .if PROFILE nop nop nop nop nop nop nop nop nop nop nop nop .endif yet_args_needed_30: mov rbx,qword ptr [rdx] mov rax,33 att_jmp yet_args_needed_ .align 2 mov eax,34 att_jmp build_node_ nop nop .align 2 .if PROFILE nop nop nop nop nop nop nop nop nop nop nop nop .endif yet_args_needed_31: mov rbx,qword ptr [rdx] mov rax,34 att_jmp yet_args_needed_ yet_args_needed: mov rbx,qword ptr [rdx] movzx rax,word ptr [rbx-2] add rax,3 yet_args_needed_: sub r15,rax jb yet_args_needed_gc yet_args_needed_gc_r: mov r11,qword ptr [rdx+8] sub rax,3+1+4 mov rdx,qword ptr [rdx+16] mov r10,rdi mov rbp,qword ptr [rdx] mov qword ptr [rdi],rbp mov rbp,qword ptr [rdx+8] mov qword ptr [rdi+8],rbp mov rbp,qword ptr [rdx+16] mov qword ptr [rdi+16],rbp add rdx,24 add rdi,24 yet_args_needed_cp_a: mov rbp,qword ptr [rdx] add rdx,8 mov qword ptr [rdi],rbp add rdi,8 sub rax,1 att_jge yet_args_needed_cp_a mov qword ptr [rdi],rcx add rbx,16 mov qword ptr [rdi+8],rbx lea rcx,[rdi+8] mov qword ptr [rdi+16],r11 mov qword ptr [rdi+24],r10 add rdi,32 ret yet_args_needed_gc: att_call collect_2 att_jmp yet_args_needed_gc_r build_node_: sub r15,rax jb build_node_gc build_node_gc_r: mov qword ptr [rdi],rbx lea rbp,[rdi+24] mov qword ptr [rdi+8],r8 mov qword ptr [rdi+16],rbp mov qword ptr [rdi+24],rdx mov qword ptr [rdi+32],rcx mov rcx,rdi mov r8,qword ptr [rsi-8] mov qword ptr [rdi+40],r8 mov r8,qword ptr [rsi-16] sub rsi,16 mov qword ptr [rdi+48],r8 add rdi,56 sub rax,5+2 build_node_cp_a: mov r8,qword ptr [rsi-8] sub rsi,8 mov qword ptr [rdi],r8 add rdi,8 sub rax,1 att_jne build_node_cp_a ret build_node_gc: att_call collect_3 att_jmp build_node_gc_r