[uClibc]Some problem wit syscall5

Stanley stanley at alumni.com
Wed Jun 6 07:59:06 UTC 2001


Hi to all, 

I am compiling libc when the following errors occurs. Other functions that invokes syscall5 all have the same errors. I have attached a portion of syscall.c related to mount and a part of unistd.h that defines syscall5.
I counted the number of operands for syscall5 and they are the same. 

Hope someone can pinpoint me to the solution
Thanks 
stanley


--------errors----------
syscalls.c: In function `mount':
syscalls.c:196: matching constraint references invalid operand number
syscalls.c:196: warning: `__res' might be used uninitialized in this function
make[3]: *** [mount.o] Error 1
make[3]: Leaving directory `/opt/uClinux-LEON/uClibc/libc/sysdeps/linux/common'
make[2]: *** [_dir_common] Error 2
make[2]: Leaving directory `/opt/uClinux-LEON/uClibc/libc/sysdeps/linux'
make[1]: *** [_dir_linux] Error 2
make[1]: Leaving directory `/opt/uClinux-LEON/uClibc/libc/sysdeps'
make: *** [_dir_sysdeps] Error 2

---------syscall.c----------------
#ifdef L_mount
#include <sys/mount.h>
_syscall5(int, mount, const char *, specialfile, const char *, dir,
const char *, filesystemtype, unsigned long, rwflag,
const void *, data);
#endif

----------unistd.h----------------
#define _syscall5(type,name,type1,arg1,type2,arg2,type3,arg3,type4,arg4,type5,arg5) \
type name (type1 arg1,type2 arg2,type3 arg3,type4 arg4,type5 arg5) \
{ \
long __res; \
__asm__ volatile ("or %%g0, %1, %%o0\n\t" \
"or %%g0, %2, %%o1\n\t" \
"or %%g0, %3, %%o2\n\t" \
"or %%g0, %4, %%o3\n\t" \
"or %%g0, %5, %%o4\n\t" \
"or %%g0, %6, %%g1\n\t" \
"t 0x10\n\t" \
"bcc 1f\n\t" \
"or %%g0, %%o0, %0\n\t" \
"sub %%g0, %%o0, %0\n\t" \
"1:\n\t" \
: "=r" (__res) \
: "0" ((long)(arg1)),"1" ((long)(arg2)), \
"2" ((long)(arg3)),"3" ((long)(arg4)),"4" ((long)(arg5)), \
"i" (__NR_##name) \
: "g1", "o0", "o1", "o2", "o3", "o4"); \
if (__res>=0) \
return (type) __res; \
errno = -__res; \
return -1; \
}


-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.busybox.net/pipermail/uclibc/attachments/20010606/dcd1f9f4/attachment-0001.htm 


More information about the uClibc mailing list