Update of /cvsroot/linux-vax/kernel-2.4/include/asm-vax
In directory usw-pr-cvs1:/tmp/cvs-serv16297/include/asm-vax
Modified Files:
unistd.h
Log Message:
DA: add syscall6 macro needed for mmap
Index: unistd.h
===================================================================
RCS file: /cvsroot/linux-vax/kernel-2.4/include/asm-vax/unistd.h,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- unistd.h 2001/06/08 21:55:00 1.9
+++ unistd.h 2001/06/10 14:51:14 1.10
@@ -369,6 +369,33 @@
_syscall_return(type); \
}
+#define _syscall6(type,name,type1,arg1,type2,arg2,type3,arg3,type4,arg4, \
+ type5,arg5, type6, arg6) \
+type name (type1 arg1,type2 arg2,type3 arg3,type4 arg4,type5 arg5,type6 args) \
+{ \
+ long _sc_ret; \
+ { \
+ register long _sc_0 __asm__("r0"); \
+ _sc_0 = __NR_##name; \
+ __asm__ __volatile__ ("pushl %7\n\t" \
+ "pushl %6\n\t" \
+ "pushl %5\n\t" \
+ "pushl %4\n\t" \
+ "pushl %3\n\t" \
+ "pushl %2\n\t" \
+ "pushl $0x6\n\t" \
+ "movl sp, ap\n\t" \
+ "chmk r0 # %0 %1 %2 %3 %4 %5 %6 %7\n\t" \
+ : "=r"(_sc_0) \
+ : "0"(_sc_0), "m"((long)arg1), "m"((long)arg2), \
+ "m"((long)arg3), "m"((long)arg4), \
+ "m"((long)arg5), "m"((long)arg6) \
+ : _syscall_clobbers); \
+ _sc_ret = _sc_0; \
+ } \
+ _syscall_return(type); \
+}
+
#ifdef __KERNEL_SYSCALLS__
/* This _must_ be inlined so that it picks up the correct AP value
|