[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