diff options
Diffstat (limited to 'zap/source/amd64/sys/syscall.s')
-rw-r--r-- | zap/source/amd64/sys/syscall.s | 27 |
1 files changed, 0 insertions, 27 deletions
diff --git a/zap/source/amd64/sys/syscall.s b/zap/source/amd64/sys/syscall.s deleted file mode 100644 index f6a615a..0000000 --- a/zap/source/amd64/sys/syscall.s +++ /dev/null @@ -1,27 +0,0 @@ -# Copyright 2022-2023 Gabriel Jensen. -# This Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0. -# If a copy of the MPL was not distributed with this file, You can obtain one at <https://mozilla.org/MPL/2.0>. - -.globl zap_syscall - -zap_syscall: - # System calls on AMD64 use the following registers: - # rax : System call identifier - # rdi : First parameter - # rsi : Second parameter - # rdx : Third parameter - # r10 : Fourth parameter - # r8 : Fifth parameter - # r9 : Sixth parameter - # eax : Return value - # No registers to save. - movq %rdi,%rax # Move the first parameter (the identifier) to rax. - movq %rsi,%rdi # Move parameters into their designated registers. - movq %rdx,%rsi - movq %rcx,%rdx - movq %r8,%r10 # System calls use r10 instead of rcx. - movq %r9,%r8 - movq 0x8(%rsp),%r9 # Extract the sixth argument from the stack. - syscall # Slime incident - # No need to move the return value. - ret |