61 lines
1.1 KiB
Text
61 lines
1.1 KiB
Text
$NetBSD: patch-az,v 1.1 1998/12/28 22:22:03 bad Exp $
|
|
|
|
--- /dev/null Sun Dec 27 17:07:36 1998
|
|
+++ machdep/syscall-template-i386-netbsd-1.3.S Sun Dec 27 17:21:41 1998
|
|
@@ -0,0 +1,56 @@
|
|
+#include <machine/asm.h>
|
|
+#include <sys/syscall.h>
|
|
+
|
|
+#ifdef SYS___sigsuspend14
|
|
+#define SYS_sigsuspend SYS___sigsuspend14
|
|
+#endif
|
|
+#ifdef SYS___sigprocmask14
|
|
+#define SYS_sigprocmask SYS___sigprocmask14
|
|
+#endif
|
|
+
|
|
+#ifdef __STDC__
|
|
+
|
|
+#define SYSCALL(x) \
|
|
+ .globl _machdep_sys_##x; \
|
|
+ \
|
|
+_machdep_sys_##x:; \
|
|
+ \
|
|
+ movl $(SYS_##x), %eax; \
|
|
+ int $0x80; \
|
|
+ jb 1b; \
|
|
+ ret;
|
|
+
|
|
+#else
|
|
+
|
|
+#define SYSCALL(x) \
|
|
+ .globl _machdep_sys_/**/x; \
|
|
+ \
|
|
+_machdep_sys_/**/x:; \
|
|
+ \
|
|
+ movl $(SYS_/**/x), %eax; \
|
|
+ int $0x80; \
|
|
+ jb 1b; \
|
|
+ ret;
|
|
+
|
|
+#endif
|
|
+
|
|
+
|
|
+/*
|
|
+ * Initial asm stuff for all functions.
|
|
+ */
|
|
+ .text
|
|
+ .align 2
|
|
+
|
|
+
|
|
+/* ==========================================================================
|
|
+ * error code for all syscalls. The error value is returned as the negative
|
|
+ * of the errno value.
|
|
+ */
|
|
+
|
|
+1:
|
|
+ neg %eax
|
|
+ ret
|
|
+
|
|
+#define XSYSCALL(NAME) SYSCALL(NAME)
|
|
+
|
|
+XSYSCALL(SYSCALL_NAME)
|