From 84217308cf704fda8a9db817b458ccadf444efe9 Mon Sep 17 00:00:00 2001 From: Jakob Kaivo Date: Fri, 8 Feb 2019 18:45:05 -0500 Subject: add headers and assembly --- src/nonstd/x86-64.s | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 src/nonstd/x86-64.s (limited to 'src/nonstd/x86-64.s') diff --git a/src/nonstd/x86-64.s b/src/nonstd/x86-64.s new file mode 100644 index 00000000..60aba7a1 --- /dev/null +++ b/src/nonstd/x86-64.s @@ -0,0 +1,19 @@ +.global __syscall +__syscall: + mov %rdi, %rax + mov %rsi, %rdi + mov %rdx, %rsi + mov %rcx, %rdx + mov %r8, %r10 + mov %r9, %r8 + mov 8(%rsp), %r9 + syscall + ret + +/* FIXME: this seems to be unpossible to put in a shared library */ +/* FIXME: it may be worthwhile to separate this into crt1.s */ +.global _start +_start: + popq %rdi + movq %rsp, %rsi + call __libc_start -- cgit v1.2.1