Architectural Support: x86_64 (#37)
[lunaix-os.git] / lunaix-os / arch / x86 / includes / sys / syscall_utils.h
diff --git a/lunaix-os/arch/x86/includes/sys/syscall_utils.h b/lunaix-os/arch/x86/includes/sys/syscall_utils.h
new file mode 100644 (file)
index 0000000..551626d
--- /dev/null
@@ -0,0 +1,17 @@
+#ifndef __LUNAIX_ARCH_SYSCALL_UTILS_H
+#define __LUNAIX_ARCH_SYSCALL_UTILS_H
+
+#include <lunaix/types.h>
+#include <klibc/string.h>
+
+static inline void
+convert_valist(va_list* ap_ref, sc_va_list syscall_ap)
+{
+#ifdef CONFIG_ARCH_X86_64
+    memcpy(ap_ref, syscall_ap, sizeof(va_list));
+#else
+    *ap_ref = *syscall_ap;
+#endif
+}
+
+#endif /* __LUNAIX_ARCH_SYSCALL_UTILS_H */