Update of /cvsroot/linux-vax/kernel-2.4/include/asm-vax
In directory usw-pr-cvs1:/tmp/cvs-serv13097/include/asm-vax
Modified Files:
unistd.h
Log Message:
DA: fixed a couple of problems in syscall macros..
missing setting of r0 in syscall0
extra crap in syscall2 chmk line
Index: unistd.h
===================================================================
RCS file: /cvsroot/linux-vax/kernel-2.4/include/asm-vax/unistd.h,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- unistd.h 2001/05/27 23:20:11 1.8
+++ unistd.h 2001/06/08 21:55:00 1.9
@@ -245,6 +245,7 @@
long _sc_ret; \
{ \
register long _sc_0 __asm__("r0"); \
+ _sc_0 = __NR_##name; \
__asm__ __volatile__ ("pushl $0x0\n\t" \
"movl sp, ap\n\t" \
"chmk r0 # %0 %1\n\t" \
@@ -278,7 +279,7 @@
#define _syscall2(type,name,type1,arg1,type2,arg2) \
type name(type1 arg1,type2 arg2) \
{ \
- long _sc_ret; \
+ long _sc_ret; \
{ \
register long _sc_0 __asm__("r0"); \
_sc_0 = __NR_##name; \
@@ -286,7 +287,7 @@
"pushl %2\n\t" \
"pushl $0x2\n\t" \
"movl sp, ap\n\t" \
- "chmk r0 # %0 %1 %2 %3 %4\n\t" \
+ "chmk r0 # %0 %1 %2 %3\n\t" \
: "=r"(_sc_0) \
: "0"(_sc_0), "m"((long)arg1), "m"((long)arg2) \
: _syscall_clobbers); \
@@ -295,6 +296,8 @@
_syscall_return(type); \
}
+/* "movl sp, ap\n\t" \
+ */
#define _syscall3(type,name,type1,arg1,type2,arg2,type3,arg3) \
type name(type1 arg1,type2 arg2,type3 arg3) \
{ \
|