diff options
author | John van Groningen | 2015-09-28 11:29:19 +0000 |
---|---|---|
committer | John van Groningen | 2015-09-28 11:29:19 +0000 |
commit | 2fe7c51acbe92c93fa7c41a3f029fcd078a6898a (patch) | |
tree | 01665c70092207e580b5fdc36f2a192071b56090 /macho64 | |
parent | change syntax to workaround limitations of the llvm assembler (diff) |
change syntax to workaround limitations of the llvm assembler
Diffstat (limited to 'macho64')
-rw-r--r-- | macho64/acompact.s | 268 |
1 files changed, 134 insertions, 134 deletions
diff --git a/macho64/acompact.s b/macho64/acompact.s index 8909c6e..c597fe2 100644 --- a/macho64/acompact.s +++ b/macho64/acompact.s @@ -1,29 +1,29 @@ /* mark used nodes and pointers in argument parts and link backward pointers */ - mov rax,qword ptr heap_size_65[rip] + mov rax,qword ptr [rip+heap_size_65] shl rax,6 - mov qword ptr heap_size_64_65[rip],rax + mov qword ptr [rip+heap_size_64_65],rax - lea rax,(-16000)[rsp] - mov qword ptr end_stack[rip],rax + lea rax,[rsp-16000] + mov qword ptr [rip+end_stack],rax - mov rax,qword ptr caf_list[rip] + mov rax,qword ptr [rip+caf_list] - test qword ptr _flags[rip],4096 + test qword ptr [rip+_flags],4096 jne pmarkr test rax,rax je end_mark_cafs mark_cafs_lp: - push (-8)[rax] + push [rax-8] - lea rsi,8[rax] + lea rsi,[rax+8] mov rax,qword ptr [rax] lea rcx,[rsi+rax*8] - mov qword ptr end_vector[rip],rcx + mov qword ptr [rip+end_vector],rcx call rmark_stack_nodes @@ -32,10 +32,10 @@ mark_cafs_lp: att_jne mark_cafs_lp end_mark_cafs: - mov rsi,qword ptr stack_p[rip] + mov rsi,qword ptr [rip+stack_p] - mov rcx,qword ptr stack_top[rip] - mov qword ptr end_vector[rip],rcx + mov rcx,qword ptr [rip+stack_top] + mov qword ptr [rip+end_vector],rcx att_call rmark_stack_nodes @@ -48,13 +48,13 @@ pmarkr: je end_rmarkp_cafs rmarkp_cafs_lp: - push (-8)[rax] + push [rax-8] - lea rsi,8[rax] + lea rsi,[rax+8] mov rax,qword ptr [rax] lea rcx,[rsi+rax*8] - mov qword ptr end_vector[rip],rcx + mov qword ptr [rip+end_vector],rcx call rmarkp_stack_nodes @@ -63,10 +63,10 @@ rmarkp_cafs_lp: att_jne rmarkp_cafs_lp end_rmarkp_cafs: - mov rsi,qword ptr stack_p[rip] + mov rsi,qword ptr [rip+stack_p] - mov rcx,qword ptr stack_top[rip] - mov qword ptr end_vector[rip],rcx + mov rcx,qword ptr [rip+stack_top] + mov qword ptr [rip+end_vector],rcx att_call rmarkp_stack_nodes @@ -84,21 +84,21 @@ end_rmarkp_cafs: compact_heap: - lea rcx,finalizer_list[rip] - lea rdx,free_finalizer_list[rip] + lea rcx,[rip+finalizer_list] + lea rdx,[rip+free_finalizer_list] mov rbp,qword ptr [rcx] determine_free_finalizers_after_compact1: - lea r9,__Nil-8[rip] + lea r9,[rip+__Nil-8] cmp rbp,r9 je end_finalizers_after_compact1 - mov rax,qword ptr neg_heap_p3[rip] + mov rax,qword ptr [rip+neg_heap_p3] add rax,rbp mov rbx,rax and rax,31*8 shr rbx,8 - lea r9,bit_set_table2[rip] + lea r9,[rip+bit_set_table2] mov esi,dword ptr [r9+rax] test esi,dword ptr [rdi+rbx*4] je finalizer_not_used_after_compact1 @@ -115,30 +115,30 @@ finalizer_find_descriptor: test rax,1 att_jne finalizer_find_descriptor_lp - lea r9,e____system__kFinalizerGCTemp+2[rip] + lea r9,[rip+e____system__kFinalizerGCTemp+2] mov qword ptr [rsi],r9 cmp rbp,rcx ja finalizer_no_reverse mov rax,qword ptr [rbp] - lea rsi,1[rcx] + lea rsi,[rcx+1] mov qword ptr [rbp],rsi mov qword ptr [rcx],rax finalizer_no_reverse: - lea rcx,8[rbp] - mov rbp,qword ptr 8[rbp] + lea rcx,[rbp+8] + mov rbp,qword ptr [rbp+8] att_jmp determine_free_finalizers_after_compact1 finalizer_not_used_after_compact1: - lea r9,e____system__kFinalizerGCTemp+2[rip] + lea r9,[rip+e____system__kFinalizerGCTemp+2] mov qword ptr [rbp],r9 mov qword ptr [rdx],rbp - lea rdx,8[rbp] + lea rdx,[rbp+8] - mov rbp ,qword ptr 8[rbp] + mov rbp ,qword ptr [rbp+8] mov qword ptr [rcx],rbp att_jmp determine_free_finalizers_after_compact1 @@ -146,28 +146,28 @@ finalizer_not_used_after_compact1: end_finalizers_after_compact1: mov qword ptr [rdx],rbp - mov rcx,qword ptr finalizer_list[rip] - lea r9,__Nil-8[rip] + mov rcx,qword ptr [rip+finalizer_list] + lea r9,[rip+__Nil-8] cmp rcx,r9 je finalizer_list_empty test rcx,3 jne finalizer_list_already_reversed mov rax ,qword ptr [rcx] - lea r9,finalizer_list+1[rip] + lea r9,[rip+finalizer_list+1] mov qword ptr [rcx],r9 - mov qword ptr finalizer_list[rip],rax + mov qword ptr [rip+finalizer_list],rax finalizer_list_already_reversed: finalizer_list_empty: - lea rbp,free_finalizer_list[rip] - lea r9,__Nil-8[rip] + lea rbp,[rip+free_finalizer_list] + lea r9,[rip+__Nil-8] cmp qword ptr [rbp],r9 je free_finalizer_list_empty - lea r9,free_finalizer_list+8[rip] - mov qword ptr end_vector[rip],r9 + lea r9,[rip+free_finalizer_list+8] + mov qword ptr [rip+end_vector],r9 - test qword ptr _flags[rip],4096 + test qword ptr [rip+_flags],4096 je no_pmarkr att_call rmarkp_stack_nodes att_jmp free_finalizer_list_empty @@ -176,25 +176,25 @@ no_pmarkr: free_finalizer_list_empty: - mov rax,qword ptr heap_size_65[rip] + mov rax,qword ptr [rip+heap_size_65] mov rbx,rax shl rbx,6 - add rbx,qword ptr heap_p3[rip] + add rbx,qword ptr [rip+heap_p3] - mov qword ptr end_heap_p3[rip],rbx + mov qword ptr [rip+end_heap_p3],rbx add rax,3 shr rax,2 mov r12,rax - mov r8,qword ptr heap_vector[rip] + mov r8,qword ptr [rip+heap_vector] - lea rbx,4[r8] + lea rbx,[r8+4] neg rbx - mov qword ptr neg_heap_vector_plus_4[rip],rbx + mov qword ptr [rip+neg_heap_vector_plus_4],rbx - mov rdi,qword ptr heap_p3[rip] + mov rdi,qword ptr [rip+heap_p3] xor rsi,rsi jmp skip_zeros @@ -209,16 +209,16 @@ skip_zeros: att_je skip_zeros /* %rbp : free */ end_skip_zeros: - mov rbp,qword ptr neg_heap_vector_plus_4[rip] + mov rbp,qword ptr [rip+neg_heap_vector_plus_4] add rbp,r8 shl rbp,6 - add rbp,qword ptr heap_p3[rip] + add rbp,qword ptr [rip+heap_p3] bsf_and_copy_nodes: movzx rax,sil - lea r9,first_one_bit_table[rip] + lea r9,[rip+first_one_bit_table] test rax,rax jne found_bit1 movzx rcx,si @@ -250,7 +250,7 @@ found_bit1: copy_nodes: mov rax,qword ptr [rbp+rcx*8] shr esi,1 - lea rbp,8[rbp+rcx*8] + lea rbp,[rbp+rcx*8+8] shr esi,cl mov rcx,rbp @@ -260,7 +260,7 @@ copy_nodes: je begin_update_list_2 move_argument_part: - mov rbx,qword ptr (-18)[rax] + mov rbx,qword ptr [rax-18] sub rax,2 test rbx,1 @@ -273,11 +273,11 @@ find_descriptor_2: end_list_2: mov rdx,rbx - movzx rbx,word ptr (-2)[rbx] + movzx rbx,word ptr [rbx-2] cmp rbx,256 jb no_record_arguments - movzx rdx,word ptr (-2+2)[rdx] + movzx rdx,word ptr [rdx-2+2] sub rdx,2 jae copy_record_arguments_aa @@ -285,11 +285,11 @@ end_list_2: copy_record_arguments_all_b: push rbx - mov rbx,qword ptr heap_vector[rip] + mov rbx,qword ptr [rip+heap_vector] update_up_list_1r: mov rdx,rax - add rax,qword ptr neg_heap_p3[rip] + add rax,qword ptr [rip+neg_heap_p3] push rcx @@ -298,7 +298,7 @@ update_up_list_1r: shr rax,8 and rcx,31*8 - lea r9,bit_set_table2[rip] + lea r9,[rip+bit_set_table2] mov ecx,dword ptr [r9+rcx*1] mov eax,dword ptr [rbx+rax*4] @@ -318,7 +318,7 @@ copy_argument_part_1r: mov qword ptr [rdi],rax add rdi,8 - mov rax,qword ptr neg_heap_p3[rip] + mov rax,qword ptr [rip+neg_heap_p3] add rax,rcx shr rax,3 @@ -331,10 +331,10 @@ copy_argument_part_1r: mov esi,dword ptr [r8] add r8,4 - mov rbp,qword ptr neg_heap_vector_plus_4[rip] + mov rbp,qword ptr [rip+neg_heap_vector_plus_4] add rbp,r8 shl rbp,6 - add rbp,qword ptr heap_p3[rip] + add rbp,qword ptr [rip+heap_p3] bit_in_this_word: shr esi,1 @@ -378,12 +378,12 @@ copy_argument_part_2r: cmp rax,rcx jb copy_record_argument_2 - cmp rax,qword ptr end_heap_p3[rip] + cmp rax,qword ptr [rip+end_heap_p3] att_jae copy_record_argument_2 mov rdx,rax mov rax,qword ptr [rdx] - lea rbx,1[rdi] + lea rbx,[rdi+1] mov qword ptr [rdx],rbx copy_record_argument_2: mov qword ptr [rdi],rax @@ -399,7 +399,7 @@ copy_record_pointers: cmp rdx,rcx jb copy_record_pointers_2 - cmp rdx,qword ptr end_heap_p3[rip] + cmp rdx,qword ptr [rip+end_heap_p3] att_jae copy_record_pointers_2 mov rax,qword ptr [rdx] @@ -451,7 +451,7 @@ copy_argument_part_2: cmp rax,rcx jc copy_arguments_1 - cmp rax,qword ptr end_heap_p3[rip] + cmp rax,qword ptr [rip+end_heap_p3] att_jnc copy_arguments_1 mov rdx,rax @@ -469,7 +469,7 @@ copy_argument_part_arguments: cmp rdx,rcx jc copy_arguments_2 - cmp rdx,qword ptr end_heap_p3[rip] + cmp rdx,qword ptr [rip+end_heap_p3] att_jnc copy_arguments_2 mov rax,qword ptr [rdx] @@ -498,8 +498,8 @@ update_list__2: jz end_update_list_2 test rax,2 att_jz update_list_2_ - lea rdx,(-3)[rax] - mov rax,qword ptr (-3)[rax] + lea rdx,[rax-3] + mov rax,qword ptr [rax-3] att_jmp update_list__2 end_update_list_2: @@ -511,7 +511,7 @@ end_update_list_2: test al,2 je move_lazy_node - movzx rbx,word ptr (-2)[rax] + movzx rbx,word ptr [rax-2] test rbx,rbx je move_hnf_0 @@ -528,10 +528,10 @@ move_hnf_3: cmp rdx,rcx jc move_hnf_3_1 - cmp rdx,qword ptr end_heap_p3[rip] + cmp rdx,qword ptr [rip+end_heap_p3] att_jnc move_hnf_3_1 - lea rax,1[rdi] + lea rax,[rdi+1] mov rbx,qword ptr [rdx] mov qword ptr [rdx],rax mov rdx,rbx @@ -543,15 +543,15 @@ move_hnf_3_1: cmp rdx,rcx jc move_hnf_3_2 - cmp rdx,qword ptr end_heap_p3[rip] + cmp rdx,qword ptr [rip+end_heap_p3] att_jnc move_hnf_3_2 - lea rax,(8+2+1)[rdi] + lea rax,[rdi+8+2+1] mov rbx,qword ptr [rdx] mov qword ptr [rdx],rax mov rdx,rbx move_hnf_3_2: - mov qword ptr 8[rdi],rdx + mov qword ptr [rdi+8],rdx add rdi,16 test rsi,rsi @@ -564,10 +564,10 @@ move_hnf_2: cmp rdx,rcx jc move_hnf_2_1 - cmp rdx,qword ptr end_heap_p3[rip] + cmp rdx,qword ptr [rip+end_heap_p3] att_jnc move_hnf_2_1 - lea rax,1[rdi] + lea rax,[rdi+1] mov rbx,qword ptr [rdx] mov qword ptr [rdx],rax mov rdx,rbx @@ -579,15 +579,15 @@ move_hnf_2_1: cmp rdx,rcx jc move_hnf_2_2 - cmp rdx,qword ptr end_heap_p3[rip] + cmp rdx,qword ptr [rip+end_heap_p3] att_jnc move_hnf_2_2 - lea rax,(8+1)[rdi] + lea rax,[rdi+8+1] mov rbx ,qword ptr [rdx] mov qword ptr [rdx],rax mov rdx,rbx move_hnf_2_2: - mov qword ptr 8[rdi],rdx + mov qword ptr [rdi+8],rdx add rdi,16 test rsi,rsi @@ -600,10 +600,10 @@ move_hnf_1: cmp rdx,rcx jc move_hnf_1_ - cmp rdx,qword ptr end_heap_p3[rip] + cmp rdx,qword ptr [rip+end_heap_p3] att_jnc move_hnf_1_ - lea rax,1[rdi] + lea rax,[rdi+1] mov rbx,qword ptr [rdx] mov qword ptr [rdx],rax mov rdx,rbx @@ -621,22 +621,22 @@ move_record: je move_record_2 move_record_3: - movzx rbx,word ptr (-2+2)[rax] + movzx rbx,word ptr [rax-2+2] sub rbx,1 att_ja move_hnf_3 mov rdx,qword ptr [rcx] - lea rcx,8[rcx] + lea rcx,[rcx+8] jb move_record_3_1b move_record_3_1a: cmp rdx,rcx att_jb move_record_3_1b - cmp rdx,qword ptr end_heap_p3[rip] + cmp rdx,qword ptr [rip+end_heap_p3] att_jae move_record_3_1b - lea rax,1[rdi] + lea rax,[rdi+1] mov rbx,qword ptr [rdx] mov qword ptr [rdx],rax mov rdx,rbx @@ -649,26 +649,26 @@ move_record_3_1b: cmp rdx,rcx jb move_record_3_2 - cmp rdx,qword ptr end_heap_p3[rip] + cmp rdx,qword ptr [rip+end_heap_p3] att_jae move_record_3_2 - mov rax,qword ptr neg_heap_p3[rip] + mov rax,qword ptr [rip+neg_heap_p3] push rbp add rax,rdx - mov rbx,qword ptr heap_vector[rip] + mov rbx,qword ptr [rip+heap_vector] add rax,8 mov rbp,rax and rbp,31*8 shr rax,8 - lea r9,bit_set_table2[rip] + lea r9,[rip+bit_set_table2] mov ebp,dword ptr [r9+rbp] test ebp,dword ptr [rbx+rax*4] je not_linked_record_argument_part_3_b - mov rax,qword ptr neg_heap_p3[rip] + mov rax,qword ptr [rip+neg_heap_p3] add rax,rdi mov rbp,rax @@ -683,27 +683,27 @@ move_record_3_1b: not_linked_record_argument_part_3_b: or dword ptr [rbx+rax*4],ebp - mov rax,qword ptr neg_heap_p3[rip] + mov rax,qword ptr [rip+neg_heap_p3] add rax,rdi mov rbp,rax and rbp,31*8 shr rax,8 - lea r9,bit_clear_table2[rip] + lea r9,[rip+bit_clear_table2] mov ebp,dword ptr [r9+rbp] and dword ptr [rbx+rax*4],ebp pop rbp linked_record_argument_part_3_b: mov rbx,qword ptr [rdx] - lea rax,(2+1)[rdi] + lea rax,[rdi+2+1] mov qword ptr [rdx],rax mov rdx,rbx move_record_3_2: mov qword ptr [rdi],rdx add rdi,8 - mov rbx,qword ptr neg_heap_p3[rip] + mov rbx,qword ptr [rip+neg_heap_p3] add rbx,rcx shr rbx,3 dec rbx @@ -723,7 +723,7 @@ bit_in_next_word: mov esi,dword ptr [r8] add r8,4 - lea r9,bit_clear_table[rip] + lea r9,[rip+bit_clear_table] and esi,dword ptr [r9+rbx*4] test rsi,rsi @@ -731,7 +731,7 @@ bit_in_next_word: att_jmp end_skip_zeros move_record_2: - cmp word ptr (-2+2)[rax],1 + cmp word ptr [rax-2+2],1 att_ja move_hnf_2 jb move_record_2bb @@ -741,10 +741,10 @@ move_record_2_ab: cmp rdx,rcx jb move_record_2_1 - cmp rdx,qword ptr end_heap_p3[rip] + cmp rdx,qword ptr [rip+end_heap_p3] att_jae move_record_2_1 - lea rax,1[rdi] + lea rax,[rdi+1] mov rbx ,qword ptr [rdx] mov qword ptr [rdx],rax mov rdx,rbx @@ -752,7 +752,7 @@ move_record_2_1: mov qword ptr [rdi],rdx mov rbx,qword ptr [rcx] add rcx,8 - mov qword ptr 8[rdi],rbx + mov qword ptr [rdi+8],rbx add rdi,16 test rsi,rsi @@ -760,7 +760,7 @@ move_record_2_1: att_jmp find_non_zero_long move_record_1: - movzx rbx,word ptr (-2+2)[rax] + movzx rbx,word ptr [rax-2+2] test rbx,rbx att_jne move_hnf_1 jmp move_real_int_bool_or_char @@ -782,10 +782,10 @@ copy_normal_hnf_0: att_jmp find_non_zero_long move_hnf_0: - lea r9,__STRING__+2[rip] + lea r9,[rip+__STRING__+2] cmp rax,r9 att_jbe move_string_or_array - lea r9,CHAR+2[rip] + lea r9,[rip+CHAR+2] cmp rax,r9 att_jbe move_real_int_bool_or_char @@ -824,16 +824,16 @@ skip_zeros_a: test rsi,rsi att_je skip_zeros_a - mov rbp,qword ptr neg_heap_vector_plus_4[rip] + mov rbp,qword ptr [rip+neg_heap_vector_plus_4] add rbp,r8 shl rbp,6 - add rbp,qword ptr heap_p3[rip] + add rbp,qword ptr [rip+heap_p3] bsf_and_end_array_bit: mov rax,rsi - lea r9,first_one_bit_table[rip] + lea r9,[rip+first_one_bit_table] mov rdx,rsi and rax,0x0ff jne a_found_bit1 @@ -863,7 +863,7 @@ a_found_bit1: end_array_bit: lea rbx,[rbp+rcx*8] shr esi,1 - lea rbp,8[rbp+rcx*8] + lea rbp,[rbp+rcx*8+8] shr esi,cl pop rcx @@ -873,10 +873,10 @@ end_array_bit: move_b_array: mov rdx,qword ptr [rcx] mov qword ptr [rdi],rdx - mov rbx,qword ptr 8[rcx] + mov rbx,qword ptr [rcx+8] add rcx,8 - movzx rax,word ptr (-2)[rbx] + movzx rax,word ptr [rbx-2] add rdi,8 test rax,rax je move_strict_basic_array @@ -888,10 +888,10 @@ move_b_array: move_strict_basic_array: mov rax,rdx - lea r9,dINT+2[rip] + lea r9,[rip+dINT+2] cmp rbx,r9 att_jle cp_s_arg_lp3 - lea r9,BOOL+2[rip] + lea r9,[rip+BOOL+2] cmp rbx,r9 je move_bool_array @@ -915,26 +915,26 @@ move_a_array: jb end_array mov rsi,qword ptr [rcx] - mov rax,qword ptr (-8)[rdx] - mov qword ptr (-8)[rdx],rsi + mov rax,qword ptr [rdx-8] + mov qword ptr [rdx-8],rsi mov qword ptr [rdi],rax mov rax,qword ptr [rdx] - mov rsi,qword ptr 8[rcx] + mov rsi,qword ptr [rcx+8] add rcx,16 mov qword ptr [rdx],rsi - mov qword ptr 8[rdi],rax + mov qword ptr [rdi+8],rax add rdi,16 test rax,rax je st_move_array_lp - movzx rsi,word ptr (-2+2)[rax] - movzx rax,word ptr (-2)[rax] + movzx rsi,word ptr [rax-2+2] + movzx rax,word ptr [rax-2] sub rax,256 cmp rax,rsi att_je st_move_array_lp @@ -942,7 +942,7 @@ move_a_array: move_array_ab: push rcx - mov rdx,qword ptr (-16)[rdi] + mov rdx,qword ptr [rdi-16] mov rbx,rsi imul rdx,rax shl rdx,3 @@ -957,18 +957,18 @@ move_array_ab: push rbx push rax - push (-16)[rdi] + push [rdi-16] jmp st_move_array_lp_ab move_array_ab_lp1: - mov rax,qword ptr 16[rsp] + mov rax,qword ptr [rsp+16] move_array_ab_a_elements: mov rbx,qword ptr [rcx] add rcx,8 cmp rbx,rcx jb move_array_element_ab - cmp rbx,qword ptr end_heap_p3[rip] + cmp rbx,qword ptr [rip+end_heap_p3] att_jnc move_array_element_ab mov rdx,rbx @@ -982,7 +982,7 @@ move_array_element_ab: sub rax,1 att_jnc move_array_ab_a_elements - mov rax,qword ptr 8[rsp] + mov rax,qword ptr [rsp+8] move_array_ab_b_elements: mov rbx,qword ptr [rcx] add rcx,8 @@ -1005,13 +1005,13 @@ move_array_lp1: cmp rax,rcx jb move_array_element - cmp rax,qword ptr end_heap_p3[rip] + cmp rax,qword ptr [rip+end_heap_p3] att_jnc move_array_element mov rsi,qword ptr [rax] mov rdx,rax - mov qword ptr (-8)[rdi],rsi - lea rax,(-8+1)[rdi] + mov qword ptr [rdi-8],rsi + lea rax,[rdi-8+1] mov qword ptr [rdx],rax sub rbx,1 @@ -1020,7 +1020,7 @@ move_array_lp1: att_jmp end_array move_array_element: - mov qword ptr (-8)[rdi],rax + mov qword ptr [rdi-8],rax st_move_array_lp: sub rbx,1 att_jnc move_array_lp1 @@ -1034,7 +1034,7 @@ end_array: move_lazy_node: mov rdx,rax - movsxd rbx,dword ptr (-4)[rdx] + movsxd rbx,dword ptr [rdx-4] test rbx,rbx je move_lazy_node_0 @@ -1050,12 +1050,12 @@ move_lazy_node_arguments: cmp rdx,rcx jc move_lazy_node_arguments_ - cmp rdx,qword ptr end_heap_p3[rip] + cmp rdx,qword ptr [rip+end_heap_p3] att_jnc move_lazy_node_arguments_ mov rax,qword ptr [rdx] mov qword ptr [rdi],rax - lea rax,1[rdi] + lea rax,[rdi+1] add rdi,8 mov qword ptr [rdx],rax sub rbx,1 @@ -1081,10 +1081,10 @@ move_lazy_node_1: cmp rdx,rcx jc move_lazy_node_1_ - cmp rdx,qword ptr end_heap_p3[rip] + cmp rdx,qword ptr [rip+end_heap_p3] att_jnc move_lazy_node_1_ - lea rax,1[rdi] + lea rax,[rdi+1] mov rbx,qword ptr [rdx] mov qword ptr [rdx],rax mov rdx,rbx @@ -1120,12 +1120,12 @@ move_closure_with_unboxed_arguments_lp: cmp rdx,rcx jc move_closure_with_unboxed_arguments_ - cmp rdx,qword ptr end_heap_p3[rip] + cmp rdx,qword ptr [rip+end_heap_p3] att_jnc move_closure_with_unboxed_arguments_ mov rax,qword ptr [rdx] mov qword ptr [rdi],rax - lea rax,1[rdi] + lea rax,[rdi+1] add rdi,8 mov qword ptr [rdx],rax sub rbx,1 @@ -1165,16 +1165,16 @@ move_closure_with_unboxed_arguments_1: end_move: - mov rcx,qword ptr finalizer_list[rip] + mov rcx,qword ptr [rip+finalizer_list] restore_finalizer_descriptors: - lea r9,__Nil-8[rip] + lea r9,[rip+__Nil-8] cmp rcx,r9 je end_restore_finalizer_descriptors - lea r9,e____system__kFinalizer+2[rip] + lea r9,[rip+e____system__kFinalizer+2] mov qword ptr [rcx],r9 - mov rcx,qword ptr 8[rcx] + mov rcx,qword ptr [rcx+8] att_jmp restore_finalizer_descriptors end_restore_finalizer_descriptors: |