svn commit: trunk/uClibc/libc/sysdeps/linux/mips
sjhill at uclibc.org
sjhill at uclibc.org
Thu Jul 12 00:58:45 UTC 2007
Author: sjhill
Date: 2007-07-11 17:58:41 -0700 (Wed, 11 Jul 2007)
New Revision: 19068
Log:
Fix broken syscall() function since the original patch did not work.
Modified:
trunk/uClibc/libc/sysdeps/linux/mips/syscall.S
Changeset:
Modified: trunk/uClibc/libc/sysdeps/linux/mips/syscall.S
===================================================================
--- trunk/uClibc/libc/sysdeps/linux/mips/syscall.S 2007-07-11 15:01:42 UTC (rev 19067)
+++ trunk/uClibc/libc/sysdeps/linux/mips/syscall.S 2007-07-12 00:58:41 UTC (rev 19068)
@@ -29,6 +29,8 @@
.type syscall, at function
.ent syscall
syscall:
+ .set noreorder
+ .cpload t9;
move v0, a0 /* Load system call number from first arg. */
move a0, a1 /* Move the next three args up a register. */
move a1, a2
@@ -55,15 +57,15 @@
lw v0,7*4(sp) /* for system call restarts */
#endif
syscall /* Do the system call. */
+ bnez a3, 1f
#ifdef __mips64
daddiu sp,sp,16
#else
addiu sp,sp,32
#endif
- bnez a3, 1f
j ra /* Return to caller. */
1:
- move a0,v0 /* Pass return val to C function. */
+ move a0,v0 /* Pass return val to C function. */
#ifdef __PIC__
PTR_LA t9, __syscall_error
More information about the uClibc-cvs
mailing list