view dyncall/dyncall_call_arm64_masm.asm @ 425:2d9f1cb06352

- dynload: corrected comparison of size of optional PE header info to what is pointed to (ptr arithmetic was incorrect, only broke ReactOS builds and runtime, though)
author Tassilo Philipp
date Fri, 17 Dec 2021 18:50:58 +0100
parents 451299d50c1a
children
line wrap: on
line source

; auto-generated by gen-masm.sh
 AREA .text, CODE, ARM64
 EXPORT dcCall_arm64
dcCall_arm64 PROC
 stp x29, x30, [sp, #-16]!
 mov x29, sp
 ldr d0, [x3,#0 ]
 ldr d1, [x3,#8 ]
 ldr d2, [x3,#16]
 ldr d3, [x3,#24]
 ldr d4, [x3,#32]
 ldr d5, [x3,#40]
 ldr d6, [x3,#48]
 ldr d7, [x3,#56]
 sub sp, sp, x2
 eor x4, x4, x4
 mov x5, x1
 mov x6, sp
dcCall_arm64_next
 cmp x4, x2
 b.ge dcCall_arm64_done
 ldp x7, x9, [x5], #16
 stp x7, x9, [x6], #16
 add x4, x4, 16
 b dcCall_arm64_next
dcCall_arm64_done
 mov x9 , x0
 add x10, x3, 64
 ldr x0, [x10, #0]
 ldr x1, [x10, #8]
 ldr x2, [x10, #16]
 ldr x3, [x10, #24]
 ldr x4, [x10, #32]
 ldr x5, [x10, #40]
 ldr x6, [x10, #48]
 ldr x7, [x10, #56]
 blr x9
 mov sp, x29
 ldp x29, x30, [sp], 16
 ret
 ENDP
 END