aboutsummaryrefslogtreecommitdiff
path: root/sysdeps
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>1998-12-31 18:19:19 +0000
committerUlrich Drepper <drepper@redhat.com>1998-12-31 18:19:19 +0000
commit118bad87bd098285be80cd32268c36668b4aea2b (patch)
treef2ad4c7200d2c3e2a88c541301f7950112042489 /sysdeps
parentc046e7a5a6007631882a7a1838fe804bc66882b9 (diff)
downloadglibc-118bad87bd098285be80cd32268c36668b4aea2b.tar.xz
glibc-118bad87bd098285be80cd32268c36668b4aea2b.zip
Update.
1998-12-31 Ulrich Drepper <drepper@cygnus.com> * iconvdata/Makefile: Use rpath $ORIGIN for modules which use any of the conversion libraries. * include/features.h: Mention latest extensions in _POSIX_C_SOURCE description. * libio/genops.c (list_all_lock): New variable. (_IO_un_link, _IO_link_in): Acquire lock before modifying _IO_list_all. [PR libc/911]. * sysdeps/i386/i686/strtok.s: Add missing cld. * sysdeps/i386/i686/mempcpy.S: New file. 1998-12-30 Geoff Keating <geoffk@ozemail.com.au> Suppress parentheses warnings: * sysdeps/unix/sysv/linux/powerpc/dl-sysdep.c (DL_FIND_ARG_COMPONENTS): here, * sysdeps/powerpc/dl-machine.c: here, * sysdeps/powerpc/fclrexcpt.c (feclearexcept): here, * sysdeps/powerpc/fesetround.c (fesetround): here, * sysdeps/powerpc/feupdateenv.c (feupdateenv): here, * sysdeps/powerpc/fraiseexcpt.c (feraiseexcept): here, * sysdeps/powerpc/fsetexcptflg.c (fesetexceptflag): here, * sysdeps/powerpc/s_rint.c (__rint): here, * sysdeps/powerpc/s_rintf.c (__rintf): here, * sysdeps/powerpc/w_sqrt.c (__sqrt): here, * sysdeps/powerpc/w_sqrtf.c (__sqrtf): and here. 1998-12-30 Geoff Keating <geoffk@ozemail.com.au> * wcsmbs/wcstold.c [__NO_LONG_DOUBLE_MATH]: Include wchar.h. * wcsmbs/wcstold_l.c [__NO_LONG_DOUBLE_MATH]: Likewise. Also define appropropriate prototypes, correct procedure names. 1998-12-30 Geoff Keating <geoffk@ozemail.com.au> * sysdeps/generic/crypt-entry.c: Prototype __crypt_r, suppress warning. (__crypt_r): Add __restrict. * sysdeps/generic/crypt.h: Remove internal routine. Add __restrict. 1998-12-31 Ulrich Drepper <drepper@cygnus.com> * stdlib/longlong.h: Add missing #else in SPARC definitions. 1998-12-30 Andreas Jaeger <aj@arthur.rhein-neckar.de> Patches by Ralf Baechle <ralf@gnu.org>: * sysdeps/unix/sysv/linux/mips/sgidefs.h: Removed. * sysdeps/unix/sysv/linux/mips/sys/asm.h: Removed. * sysdeps/unix/sysv/linux/mips/sys/regdef.h: Removed. * sysdeps/unix/sysv/linux/mips/sys/fpregdef.h: Removed. * sysdeps/unix/sysv/linux/mips/regdef.h: Removed. * sysdeps/unix/sysv/linux/mips/fpregdef.h: Removed. * sysdeps/unix/sysv/linux/mips/Makefile: Remove delete files. * sysdeps/unix/sysv/linux/mips/Dist: Remove deleted files. * sysdeps/mips/sys/fpregdef.h: New files, enhanced versions of deleted linux specific files. * sysdeps/mips/sys/asm.h: Likewise. * sysdeps/mips/sgidefs.h: Likewise. * sysdeps/mips/fpregdef.h: Likewise. * sysdeps/mips/regdef.h: Likewise. * sysdeps/mips/Makefile: Add new headers. * sysdeps/mips/Dist: Add new files. * sysdeps/mips/fpu_control.h (_FPU_DEFAULT): Change value. 1998-12-28 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> * iconvdata/Makefile: Remove variable assignments and rules that are now auto-generated. Include $(objpfx)iconv-rules instead. Btw, that removes a few typos. (charmaps): New variable. ($(objpfx)iconv-rules): New target. (gen-8bit-modules): Renamed from sed-generated-headers, remove .h suffixes. (gen-8bit-gap-modules): Renamed from awk-generated-headers, remove .h suffixes. (gen-special-modules): New variable. (generated-modules): New variable. (headers): Use it. (before-compile): Likewise. (generated): Likewise, and add iconv-rules. * iconvdata/euc-cn.c: Renamed from euccn.c. * iconvdata/euc-jp.c: Renamed from eucjp.c. * iconvdata/euc-kr.c: Renamed from euckr.c. * iconvdata/euc-tw.c: Renamed from euctw.c. * iconvdata/iso_6937.c: Renamed from iso6937.c. * iconvdata/iso_6937-2.c: Renamed from iso6937-2.c. * iconvdata/t.61.c: Renamed from t61.c. * iconvdata/Makefile (distribute): Adjusted for those renames. Remove $(objpfx) from names. 1998-12-28 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> * sysdeps/generic/hp-timing.h: Fix comment. * sysdeps/generic/dl-hash.h: Likewise. * sysdeps/i386/i686/hp-timing.h: Likewise. 1998-12-28 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> * posix/fnmatch.c (fnmatch): Always pass unsigned char values to FOLD macro. 1998-12-28 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> * nss/db-Makefile ($(VAR_DB)/shadow.db): Fix last change. 1998-12-29 Andreas Jaeger <aj@arthur.rhein-neckar.de> * sysdeps/unix/sysv/linux/mips/bits/sigaction.h: Sync with current Linux 2.1.132 kernel sources. 1998-12-28 Andreas Jaeger <aj@arthur.rhein-neckar.de> Patches by Ralf Baechle <ralf@gnu.org> for Linux/MIPS: * sysdeps/unix/sysv/linux/mips/syscalls.list: Add ipc, change pread/pwrite and llseek calls. * sysdeps/unix/sysv/linux/mips/sysdep.S: New file. 1998-12-29 Wolfram Gloger <wmglo@dent.med.uni-muenchen.de> * malloc/thread-m.h [_LIBC] : Fix for NO_THREADS case.
Diffstat (limited to 'sysdeps')
-rw-r--r--sysdeps/generic/crypt-entry.c6
-rw-r--r--sysdeps/generic/crypt.h6
-rw-r--r--sysdeps/generic/dl-hash.h2
-rw-r--r--sysdeps/generic/hp-timing.h2
-rw-r--r--sysdeps/i386/i686/hp-timing.h2
-rw-r--r--sysdeps/i386/i686/mempcpy.S51
-rw-r--r--sysdeps/i386/i686/strtok.S1
-rw-r--r--sysdeps/mips/Dist6
-rw-r--r--sysdeps/mips/Makefile4
-rw-r--r--sysdeps/mips/fpregdef.h (renamed from sysdeps/unix/sysv/linux/mips/sys/fpregdef.h)13
-rw-r--r--sysdeps/mips/fpu_control.h4
-rw-r--r--sysdeps/mips/regdef.h (renamed from sysdeps/unix/sysv/linux/mips/sys/asm.h)17
-rw-r--r--sysdeps/mips/sgidefs.h (renamed from sysdeps/unix/sysv/linux/mips/sgidefs.h)24
-rw-r--r--sysdeps/mips/sys/asm.h377
-rw-r--r--sysdeps/mips/sys/fpregdef.h61
-rw-r--r--sysdeps/powerpc/dl-machine.c24
-rw-r--r--sysdeps/powerpc/fclrexcpt.c4
-rw-r--r--sysdeps/powerpc/fesetround.c2
-rw-r--r--sysdeps/powerpc/feupdateenv.c2
-rw-r--r--sysdeps/powerpc/fraiseexcpt.c4
-rw-r--r--sysdeps/powerpc/fsetexcptflg.c6
-rw-r--r--sysdeps/powerpc/s_rint.c22
-rw-r--r--sysdeps/powerpc/s_rintf.c24
-rw-r--r--sysdeps/powerpc/w_sqrt.c6
-rw-r--r--sysdeps/powerpc/w_sqrtf.c6
-rw-r--r--sysdeps/unix/sysv/linux/mips/Dist6
-rw-r--r--sysdeps/unix/sysv/linux/mips/Makefile3
-rw-r--r--sysdeps/unix/sysv/linux/mips/bits/sigaction.h29
-rw-r--r--sysdeps/unix/sysv/linux/mips/fpregdef.h1
-rw-r--r--sysdeps/unix/sysv/linux/mips/regdef.h1
-rw-r--r--sysdeps/unix/sysv/linux/mips/syscalls.list7
-rw-r--r--sysdeps/unix/sysv/linux/mips/sysdep.S (renamed from sysdeps/unix/sysv/linux/mips/sys/regdef.h)27
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/dl-sysdep.c2
33 files changed, 642 insertions, 110 deletions
diff --git a/sysdeps/generic/crypt-entry.c b/sysdeps/generic/crypt-entry.c
index e6c2554019..8248ed9ba3 100644
--- a/sysdeps/generic/crypt-entry.c
+++ b/sysdeps/generic/crypt-entry.c
@@ -1,5 +1,5 @@
/* Wrapper around MD5 sum replacement for crypt function.
- Copyright (C) 1996, 1997 Free Software Foundation, Inc.
+ Copyright (C) 1996, 1997, 1998 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1996.
@@ -34,6 +34,8 @@ extern char *__md5_crypt_r (const char *key, const char *salt, char *buffer,
int buflen);
extern char *__md5_crypt (const char *key, const char *salt);
+extern char *__crypt_r (const char *key, const char *salt,
+ struct crypt_data *__restrict data);
/* We recognize an intended call of the MD5 crypt replacement function
by the first 3 characters of the salt string. If they match the
@@ -42,7 +44,7 @@ char *
__crypt_r (key, salt, data)
const char *key;
const char *salt;
- struct crypt_data *data;
+ struct crypt_data *__restrict data;
{
if (strncmp (md5_salt_prefix, salt, sizeof (md5_salt_prefix) - 1) == 0)
return __md5_crypt_r (key, salt, (char *) data,
diff --git a/sysdeps/generic/crypt.h b/sysdeps/generic/crypt.h
index c14554c829..0713e950ba 100644
--- a/sysdeps/generic/crypt.h
+++ b/sysdeps/generic/crypt.h
@@ -1,7 +1,7 @@
/*
* UFC-crypt: ultra fast crypt(3) implementation
*
- * Copyright (C) 1991, 1992, 1993, 1996, 1997 Free Software Foundation, Inc.
+ * Copyright (C) 1991, 92, 93, 96, 97, 98 Free Software Foundation, Inc.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Library General Public
@@ -50,10 +50,8 @@ struct crypt_data
int direction, initialized;
};
-extern char *__crypt_r __P ((__const char *__key, __const char *__salt,
- struct crypt_data *__data));
extern char *crypt_r __P ((__const char *__key, __const char *__salt,
- struct crypt_data *__data));
+ struct crypt_data *__restrict __data));
#endif
__END_DECLS
diff --git a/sysdeps/generic/dl-hash.h b/sysdeps/generic/dl-hash.h
index fc17793324..c3b8aa62b3 100644
--- a/sysdeps/generic/dl-hash.h
+++ b/sysdeps/generic/dl-hash.h
@@ -1,4 +1,4 @@
-/* Compute hash alue for given string according to ELF standard.
+/* Compute hash value for given string according to ELF standard.
Copyright (C) 1995, 1996, 1997, 1998 Free Software Foundation, Inc.
This file is part of the GNU C Library.
diff --git a/sysdeps/generic/hp-timing.h b/sysdeps/generic/hp-timing.h
index 7795f510d5..35f3291e63 100644
--- a/sysdeps/generic/hp-timing.h
+++ b/sysdeps/generic/hp-timing.h
@@ -1,4 +1,4 @@
-/* High precision, low overhead timing functions. i686 version.
+/* High precision, low overhead timing functions. Generic version.
Copyright (C) 1998 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998.
diff --git a/sysdeps/i386/i686/hp-timing.h b/sysdeps/i386/i686/hp-timing.h
index ffbeb277e5..004cfff77f 100644
--- a/sysdeps/i386/i686/hp-timing.h
+++ b/sysdeps/i386/i686/hp-timing.h
@@ -84,7 +84,7 @@
/* We use 64bit values for the times. */
typedef unsigned long long int hp_timing_t;
-/* Internal variabled used to store the overhead of the measurement
+/* Internal variable used to store the overhead of the measurement
opcodes. */
extern hp_timing_t __libc_hp_timing_overhead;
diff --git a/sysdeps/i386/i686/mempcpy.S b/sysdeps/i386/i686/mempcpy.S
new file mode 100644
index 0000000000..5760d9f940
--- /dev/null
+++ b/sysdeps/i386/i686/mempcpy.S
@@ -0,0 +1,51 @@
+/* Copy memory block and return pointer to following byte.
+ For Intel 80x86, x>=6.
+ This file is part of the GNU C Library.
+ Copyright (C) 1998 Free Software Foundation, Inc.
+ Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Library General Public License as
+ published by the Free Software Foundation; either version 2 of the
+ License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Library General Public License for more details.
+
+ You should have received a copy of the GNU Library General Public
+ License along with the GNU C Library; see the file COPYING.LIB. If not,
+ write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ Boston, MA 02111-1307, USA. */
+
+#include <sysdep.h>
+#include "asm-syntax.h"
+
+/* strtok:
+ INPUT PARAMETER:
+ dest (sp + 4)
+ src (sp + 8)
+ len (sp + 12)
+*/
+
+ENTRY(__mempcpy)
+ movl %edi, %eax
+ movl 4(%esp), %edi
+ movl %esi, %edx
+ movl 8(%esp), %esi
+ movl 12(%esp), %ecx
+ cld
+ shrl $1, %ecx
+ jnc 1f
+ movsb
+1: shrl $1, %ecx
+ jnc 2f
+ movsw
+2: rep
+ movsl
+ xchgl %edi, %eax
+ movl %edx, %esi
+ ret
+END(mempcpy)
+weak_alias (__mempcpy, mempcpy)
diff --git a/sysdeps/i386/i686/strtok.S b/sysdeps/i386/i686/strtok.S
index c7a058eb41..18aa7c8c7b 100644
--- a/sysdeps/i386/i686/strtok.S
+++ b/sysdeps/i386/i686/strtok.S
@@ -73,6 +73,7 @@ ENTRY (FUNCTION)
movl $64, %ecx
movl %esp, %edi
xorl %eax, %eax
+ cld
rep
stosl
diff --git a/sysdeps/mips/Dist b/sysdeps/mips/Dist
index 9b6fd71f01..7ccfb1bfe6 100644
--- a/sysdeps/mips/Dist
+++ b/sysdeps/mips/Dist
@@ -1,3 +1,9 @@
setjmp_aux.c
rtld-ldscript.in
rtld-parms
+regdef.h
+sgidefs.h
+fpregdef.h
+sys/regdef.h
+sys/fpregdef.h
+sys/asm.h
diff --git a/sysdeps/mips/Makefile b/sysdeps/mips/Makefile
index 5585c61f03..54b3520c84 100644
--- a/sysdeps/mips/Makefile
+++ b/sysdeps/mips/Makefile
@@ -1,3 +1,7 @@
+ifeq ($(subdir),misc)
+headers += regdef.h fpregdef.h sys/regdef.h sys/fpregdef.h sys/asm.h sgidefs.h
+endif
+
ifeq ($(subdir),setjmp)
sysdep_routines += setjmp_aux
endif
diff --git a/sysdeps/unix/sysv/linux/mips/sys/fpregdef.h b/sysdeps/mips/fpregdef.h
index 48d8f7513e..25b93cade4 100644
--- a/sysdeps/unix/sysv/linux/mips/sys/fpregdef.h
+++ b/sysdeps/mips/fpregdef.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991, 92, 94, 95, 96, 97 Free Software Foundation, Inc.
+/* Copyright (C) 1991, 92, 94, 95, 96 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -16,12 +16,9 @@
write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
-#ifndef _SYS_FPREGDEF_H
-#define _SYS_FPREGDEF_H
+#ifndef _FPREGDEF_H
+#define _FPREGDEF_H
-/*
- * The real definitions come from the Linux kernel sources
- */
-#include <asm/fpregdef.h>
+#include <sys/fpregdef.h>
-#endif /* sys/fpregdef.h */
+#endif /* _FPREGDEF_H */
diff --git a/sysdeps/mips/fpu_control.h b/sysdeps/mips/fpu_control.h
index e271ae1fcc..471c68e413 100644
--- a/sysdeps/mips/fpu_control.h
+++ b/sysdeps/mips/fpu_control.h
@@ -1,5 +1,5 @@
/* FPU control word bits. Mips version.
- Copyright (C) 1996, 1997 Free Software Foundation, Inc.
+ Copyright (C) 1996, 1997, 1998 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Olaf Flebbe and Ralf Baechle.
@@ -80,7 +80,7 @@
/* The fdlibm code requires strict IEEE double precision arithmetic,
and no interrupts for exceptions, rounding to nearest. */
-#define _FPU_DEFAULT 0x00000600
+#define _FPU_DEFAULT 0x00000000
/* IEEE: same as above, but exceptions */
#define _FPU_IEEE 0x00000F80
diff --git a/sysdeps/unix/sysv/linux/mips/sys/asm.h b/sysdeps/mips/regdef.h
index 346a9c4ec2..0fa50f0926 100644
--- a/sysdeps/unix/sysv/linux/mips/sys/asm.h
+++ b/sysdeps/mips/regdef.h
@@ -1,6 +1,6 @@
-/* Copyright (C) 1997 Free Software Foundation, Inc.
+/* Copyright (C) 1994, 1995, 1996, 1997, 1998 Free Software Foundation, Inc.
This file is part of the GNU C Library.
- Contributed by Ralf Baechle <ralf@gnu.ai.mit.edu>.
+ Contributed by Ralf Baechle <ralf@gnu.org>.
The GNU C Library is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public License as
@@ -17,12 +17,11 @@
write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
-#ifndef _SYS_ASM_H
-#define _SYS_ASM_H
+#ifndef _REGDEF_H
+#define _REGDEF_H
-/*
- * The real definitions come from the Linux kernel sources
- */
-#include <asm/asm.h>
+#include <sys/regdef.h>
+#include <sys/fpregdef.h>
+
+#endif /* _REGDEF_H */
-#endif /* sys/asm.h */
diff --git a/sysdeps/unix/sysv/linux/mips/sgidefs.h b/sysdeps/mips/sgidefs.h
index a36ece0175..56567e884e 100644
--- a/sysdeps/unix/sysv/linux/mips/sgidefs.h
+++ b/sysdeps/mips/sgidefs.h
@@ -1,6 +1,6 @@
-/* Copyright (C) 1996, 1997 Free Software Foundation, Inc.
+/* Copyright (C) 1996, 1997, 1998 Free Software Foundation, Inc.
This file is part of the GNU C Library.
- Contributed by Ralf Baechle <ralf@gnu.ai.mit.edu>.
+ Contributed by Ralf Baechle <ralf@gnu.org>.
The GNU C Library is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public License as
@@ -21,8 +21,24 @@
#define _SGIDEFS_H 1
/*
- * The real definitions come from the Linux kernel sources
+ * Definitions for the ISA level
*/
-#include <asm/sgidefs.h>
+#define _MIPS_ISA_MIPS1 1
+#define _MIPS_ISA_MIPS2 2
+#define _MIPS_ISA_MIPS3 3
+#define _MIPS_ISA_MIPS4 4
+#define _MIPS_ISA_MIPS5 5
+
+/*
+ * Subprogram calling convention
+ *
+ * At the moment only _MIPS_SIM_ABI32 is in use. This will change rsn.
+ * Until GCC 2.8.0 is released don't rely on this definitions because the
+ * 64bit code is essentially using the 32bit interface model just with
+ * 64bit registers.
+ */
+#define _MIPS_SIM_ABI32 1
+#define _MIPS_SIM_NABI32 2
+#define _MIPS_SIM_ABI64 3
#endif /* sgidefs.h */
diff --git a/sysdeps/mips/sys/asm.h b/sysdeps/mips/sys/asm.h
new file mode 100644
index 0000000000..b90a331ab7
--- /dev/null
+++ b/sysdeps/mips/sys/asm.h
@@ -0,0 +1,377 @@
+/* Copyright (C) 1997, 1998 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+ Contributed by Ralf Baechle <ralf@gnu.org>.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Library General Public License as
+ published by the Free Software Foundation; either version 2 of the
+ License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Library General Public License for more details.
+
+ You should have received a copy of the GNU Library General Public
+ License along with the GNU C Library; see the file COPYING.LIB. If not,
+ write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ Boston, MA 02111-1307, USA. */
+
+#ifndef _SYS_ASM_H
+#define _SYS_ASM_H
+
+#include <sgidefs.h>
+
+#ifndef CAT
+#ifdef __STDC__
+#define __CAT(str1,str2) str1##str2
+#else
+#define __CAT(str1,str2) str1/**/str2
+#endif
+#defi