[patch] mips64 fixes

Guido Guenther agx@sigxcpu.org
Thu May 29 22:00:00 GMT 2003


Hi,
here are some (mostly) build fixes for n64/n32.
Regards,
 -- Guido
-------------- next part --------------
2003-05-29  Guido Guenther  <agx@sigxcpu.org>

	* sysdeps/mips/mips64/bsd-_setjmp.S: include <sys/asm.h> for
	  SETUP_GP64 and friends.
	* sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h: fix register names
	  in internal_syscall{6,7}.
	* sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h: likewise.
	* sysdeps/unix/sysv/linux/mips/pread.c [_MIPS_SIM == _ABI64]: fix
	  number of syscall arguments. 
	* sysdeps/unix/sysv/linux/mips/pwrite.c: likewise.
	* sysdeps/unix/sysv/linux/mips/pread64.c: likewise.
	* sysdeps/unix/sysv/linux/mips/pwrite64.c: likewise.

===================================================================
RCS file: /cvs/glibc/libc/sysdeps/mips/mips64/bsd-_setjmp.S,v
retrieving revision 1.6
diff -u -p -u -r1.6 bsd-_setjmp.S
--- sysdeps/mips/mips64/bsd-_setjmp.S	17 Mar 2003 15:47:12 -0000	1.6
+++ sysdeps/mips/mips64/bsd-_setjmp.S	29 May 2003 19:33:34 -0000
@@ -22,6 +22,7 @@
    in setjmp doesn't clobber the state restored by longjmp.  */
 
 #include <sysdep.h>
+#include <sys/asm.h>
 
 #ifdef __PIC__
 	.option pic2
Index: sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h
===================================================================
RCS file: /cvs/glibc/libc/sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h,v
retrieving revision 1.1
diff -u -p -u -r1.1 sysdep.h
--- sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h	17 Mar 2003 16:20:44 -0000	1.1
+++ sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h	29 May 2003 19:34:07 -0000
@@ -220,7 +220,7 @@
 	".set\treorder" 						\
 	: "=r" (__v0), "+r" (__a3) 					\
 	: "r" (__a0), "r" (__a1), "r" (__a2), "i" (SYS_ify(name)), 	\
-	  "r" (__a5), "r" (__a6)					\
+	  "r" (__a4), "r" (__a5)					\
 	: __SYSCALL_CLOBBERS); 						\
 	err = __a3;							\
 	_sys_result = __v0;						\
@@ -248,7 +248,7 @@
 	".set\treorder" 						\
 	: "=r" (__v0), "+r" (__a3) 					\
 	: "r" (__a0), "r" (__a1), "r" (__a2), "i" (SYS_ify(name)), 	\
-	  "r" (__a5), "r" (__a6), "r" (__a7)				\
+	  "r" (__a4), "r" (__a5), "r" (__a6)				\
 	: __SYSCALL_CLOBBERS); 						\
 	err = __a3;							\
 	_sys_result = __v0;						\
Index: sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h
===================================================================
RCS file: /cvs/glibc/libc/sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h,v
retrieving revision 1.1
diff -u -p -u -r1.1 sysdep.h
--- sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h	17 Mar 2003 16:20:44 -0000	1.1
+++ sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h	29 May 2003 19:34:08 -0000
@@ -220,7 +219,7 @@
 	".set\treorder" 						\
 	: "=r" (__v0), "+r" (__a3) 					\
 	: "r" (__a0), "r" (__a1), "r" (__a2), "i" (SYS_ify(name)), 	\
-	  "r" (__a5), "r" (__a6)					\
+	  "r" (__a4), "r" (__a5)					\
 	: __SYSCALL_CLOBBERS); 						\
 	err = __a3;							\
 	_sys_result = __v0;						\
@@ -248,7 +247,7 @@
 	".set\treorder" 						\
 	: "=r" (__v0), "+r" (__a3) 					\
 	: "r" (__a0), "r" (__a1), "r" (__a2), "i" (SYS_ify(name)), 	\
-	  "r" (__a5), "r" (__a6), "r" (__a7)				\
+	  "r" (__a4), "r" (__a5), "r" (__a6)				\
 	: __SYSCALL_CLOBBERS); 						\
 	err = __a3;							\
 	_sys_result = __v0;						\
Index: sysdeps/unix/sysv/linux/mips/pread.c
===================================================================
RCS file: /cvs/glibc/libc/sysdeps/unix/sysv/linux/mips/pread.c,v
retrieving revision 1.10
diff -u -p -r1.10 pread.c
--- sysdeps/unix/sysv/linux/mips/pread.c	20 Mar 2003 20:58:02 -0000	1.10
+++ sysdeps/unix/sysv/linux/mips/pread.c	29 May 2003 20:30:32 -0000
@@ -66,7 +71,7 @@ __libc_pread (fd, buf, count, offset)
      /* First try the syscall.  */
      assert (sizeof (offset) == 4);
 #if defined _ABI64 && _MIPS_SIM == _ABI64
-     result = INLINE_SYSCALL (pread, 6, fd, CHECK_N (buf, count), count, 0,
+     result = INLINE_SYSCALL (pread, 5, fd, CHECK_N (buf, count), count, 0,
 			      offset);
 #else
      result = INLINE_SYSCALL (pread, 6, fd, CHECK_N (buf, count), count, 0,
@@ -85,7 +90,7 @@ __libc_pread (fd, buf, count, offset)
   /* First try the syscall.  */
   assert (sizeof (offset) == 4);
 #if defined _ABI64 && _MIPS_SIM == _ABI64
-  result = INLINE_SYSCALL (pread, 6, fd, CHECK_N (buf, count), count, 0,
+  result = INLINE_SYSCALL (pread, 5, fd, CHECK_N (buf, count), count, 0,
 			   offset);
 #else
   result = INLINE_SYSCALL (pread, 6, fd, CHECK_N (buf, count), count, 0,
Index: sysdeps/unix/sysv/linux/mips/pread64.c
===================================================================
RCS file: /cvs/glibc/libc/sysdeps/unix/sysv/linux/mips/pread64.c,v
retrieving revision 1.10
diff -u -p -r1.10 pread64.c
--- sysdeps/unix/sysv/linux/mips/pread64.c	20 Mar 2003 20:58:02 -0000	1.10
+++ sysdeps/unix/sysv/linux/mips/pread64.c	29 May 2003 20:30:32 -0000
@@ -66,7 +70,7 @@ __libc_pread64 (fd, buf, count, offset)
     {
      /* First try the syscall.  */
 #if defined _ABI64 && _MIPS_SIM == _ABI64
-      result = INLINE_SYSCALL (pread, 6, fd, CHECK_N (buf, count), count, 0,
+      result = INLINE_SYSCALL (pread, 5, fd, CHECK_N (buf, count), count, 0,
 			       offset);
 #else
      result = INLINE_SYSCALL (pread, 6, fd, CHECK_N (buf, count), count, 0,
@@ -85,7 +89,7 @@ __libc_pread64 (fd, buf, count, offset)
 
   /* First try the syscall.  */
 #if defined _ABI64 && _MIPS_SIM == _ABI64
-  result = INLINE_SYSCALL (pread, 6, fd, CHECK_N (buf, count), count, 0,
+  result = INLINE_SYSCALL (pread, 5, fd, CHECK_N (buf, count), count, 0,
 			   offset);
 #else
   result = INLINE_SYSCALL (pread, 6, fd, CHECK_N (buf, count), count, 0,
Index: sysdeps/unix/sysv/linux/mips/pwrite.c
===================================================================
RCS file: /cvs/glibc/libc/sysdeps/unix/sysv/linux/mips/pwrite.c,v
retrieving revision 1.10
diff -u -p -r1.10 pwrite.c
--- sysdeps/unix/sysv/linux/mips/pwrite.c	20 Mar 2003 20:58:02 -0000	1.10
+++ sysdeps/unix/sysv/linux/mips/pwrite.c	29 May 2003 20:30:33 -0000
@@ -65,7 +69,7 @@ __libc_pwrite (fd, buf, count, offset)
       /* First try the syscall.  */
      assert (sizeof (offset) == 4);
 #if defined _ABI64 && _MIPS_SIM == _ABI64
-     result = INLINE_SYSCALL (pwrite, 6, fd, CHECK_N (buf, count), count, 0,
+     result = INLINE_SYSCALL (pwrite, 5, fd, CHECK_N (buf, count), count, 0,
 			      offset);
 #else
      result = INLINE_SYSCALL (pwrite, 6, fd, CHECK_N (buf, count), count, 0,
@@ -85,7 +89,7 @@ __libc_pwrite (fd, buf, count, offset)
   /* First try the syscall.  */
   assert (sizeof (offset) == 4);
 #if defined _ABI64 && _MIPS_SIM == _ABI64
-  result = INLINE_SYSCALL (pwrite, 6, fd, CHECK_N (buf, count), count, 0,
+  result = INLINE_SYSCALL (pwrite, 5, fd, CHECK_N (buf, count), count, 0,
 			   offset);
 #else
   result = INLINE_SYSCALL (pwrite, 6, fd, CHECK_N (buf, count), count, 0,
Index: sysdeps/unix/sysv/linux/mips/pwrite64.c
===================================================================
RCS file: /cvs/glibc/libc/sysdeps/unix/sysv/linux/mips/pwrite64.c,v
retrieving revision 1.11
diff -u -p -r1.11 pwrite64.c
--- sysdeps/unix/sysv/linux/mips/pwrite64.c	20 Mar 2003 20:58:02 -0000	1.11
+++ sysdeps/unix/sysv/linux/mips/pwrite64.c	29 May 2003 20:30:34 -0000
@@ -63,7 +67,7 @@ __libc_pwrite64 (fd, buf, count, offset)
     {
      /* First try the syscall.  */
 #if defined _ABI64 && _MIPS_SIM == _ABI64
-      result = INLINE_SYSCALL (pwrite, 6, fd, CHECK_N (buf, count), count, 0,
+      result = INLINE_SYSCALL (pwrite, 5, fd, CHECK_N (buf, count), count, 0,
 			       offset);
 #else
      result = INLINE_SYSCALL (pwrite, 6, fd, CHECK_N (buf, count), count, 0,
@@ -83,7 +87,7 @@ __libc_pwrite64 (fd, buf, count, offset)
 
   /* First try the syscall.  */
 #if defined _ABI64 && _MIPS_SIM == _ABI64
-  result = INLINE_SYSCALL (pwrite, 6, fd, CHECK_N (buf, count), count, 0,
+  result = INLINE_SYSCALL (pwrite, 5, fd, CHECK_N (buf, count), count, 0,
 			   offset);
 #else
   result = INLINE_SYSCALL (pwrite, 6, fd, CHECK_N (buf, count), count, 0,


More information about the Libc-alpha mailing list