203203 CALL_INITED_MEMORY; \
204204 POSTCALL; \
2052051: \
206- movq address_reg, TEMP1; \
207- addq $length, TEMP1; \
206+ leaq length(address_reg), TEMP1; \
208207 subq $1 , TEMP1; \
209208 shr $CKB_VM_ASM_MEMORY_FRAME_SHIFTS, TEMP1; \
210209 movq CKB_VM_ASM_ASM_CORE_MACHINE_OFFSET_FRAMES_PTR(MACHINE), TEMP3; \
225224 movq CKB_VM_ASM_ASM_CORE_MACHINE_OFFSET_LAST_READ_FRAME(MACHINE), TEMP2; \
226225 cmp TEMP2, TEMP1; \
227226 jne 3f; \
228- movq address_reg, TEMP2; \
229- addq $length, TEMP2; \
227+ leaq length(address_reg), TEMP2; \
230228 shr $CKB_VM_ASM_MEMORY_FRAME_SHIFTS, TEMP2; \
231229 cmp TEMP2, TEMP1; \
232230 je 2f; \
245243 movq CKB_VM_ASM_ASM_CORE_MACHINE_OFFSET_LAST_READ_FRAME(MACHINE), TEMP2; \
246244 cmp TEMP2, TEMP1; \
247245 jne 3f; \
248- movq address_reg, TEMP2; \
249- addq $length, TEMP2; \
246+ leaq length(address_reg), TEMP2; \
250247 shr $CKB_VM_ASM_MEMORY_FRAME_SHIFTS, TEMP2; \
251248 cmp TEMP2, TEMP1; \
252249 je 2f; \
265262 movq CKB_VM_ASM_ASM_CORE_MACHINE_OFFSET_LAST_WRITE_PAGE(MACHINE), TEMP2; \
266263 cmp TEMP2, TEMP1; \
267264 jne 3f;\
268- movq address_reg, TEMP2; \
269- addq $length, TEMP2; \
265+ leaq length(address_reg), TEMP2; \
270266 shr $CKB_VM_ASM_RISCV_PAGE_SHIFTS, TEMP2; \
271267 cmp TEMP2, TEMP1; \
272268 je 2f;\
297293 CALL_INITED_MEMORY; \
298294 POSTCALL; \
2992951: \
300- movq TEMP2, TEMP1; \
301- addq $1 , TEMP1; \
296+ leaq 1 (TEMP2), TEMP1; \
302297 shl $CKB_VM_ASM_RISCV_PAGE_SHIFTS, TEMP1; \
303- movq address_reg, TEMP3; \
304- addq $length, TEMP3; \
298+ leaq length(address_reg), TEMP3; \
305299 cmp TEMP1, TEMP3; \
306300 jbe 2f; \
307301 shr $CKB_VM_ASM_RISCV_PAGE_SHIFTS, TEMP1; \
@@ -460,8 +454,7 @@ ckb_vm_x64_execute:
460454 movq CKB_VM_ASM_INVOKE_DATA_OFFSET_FIXED_TRACES(INVOKE_DATA), %rdx
461455 prefetcht2 0 (%rdx , %rax )
462456 lea CKB_VM_ASM_TRACE_OFFSET_THREADS(TRACE), INST_PC
463- mov INST_PC, INST_ARGS
464- add $8 , INST_ARGS
457+ lea 8 (INST_PC), INST_ARGS
465458 NEXT_INST
466459.p2align 3
467460.CKB_VM_ASM_LABEL_OP_CUSTOM_ASM_TRACE_JUMP:
@@ -478,8 +471,7 @@ ckb_vm_x64_execute:
478471 movq %rax , CKB_VM_ASM_ASM_CORE_MACHINE_OFFSET_CYCLES(MACHINE)
479472 addq %rdx , PC_ADDRESS
480473 lea CKB_VM_ASM_TRACE_OFFSET_THREADS(TRACE), INST_PC
481- mov INST_PC, INST_ARGS
482- add $8 , INST_ARGS
474+ lea 8 (INST_PC), INST_ARGS
483475 NEXT_INST
484476.p2align 3
485477.prepare_trace:
@@ -507,8 +499,7 @@ ckb_vm_x64_execute:
507499 movq %rax , CKB_VM_ASM_ASM_CORE_MACHINE_OFFSET_CYCLES(MACHINE)
508500 addq %rdx , PC_ADDRESS
509501 lea CKB_VM_ASM_TRACE_OFFSET_THREADS(TRACE), INST_PC
510- mov INST_PC, INST_ARGS
511- add $8 , INST_ARGS
502+ lea 8 (INST_PC), INST_ARGS
512503 NEXT_INST
513504.p2align 3
514505.CKB_VM_ASM_LABEL_OP_ADDI:
0 commit comments