1
0
mirror of https://sourceware.org/git/glibc.git synced 2025-12-24 17:51:17 +03:00

update from main archive 961011

Fri Oct 11 19:13:34 1996  Ulrich Drepper  <drepper@cygnus.com>

	* locale/Makefile (CPPFLAGS): Set CHARMAP_PATH to
 	"$(i18ndir)/charmaps".

Fri Oct 11 22:12:41 1996  NIIBE Yutaka  <gniibe@mri.co.jp>

	* sysdeps/unix/sysv/linux/sys/procfs.h: Include <asm/user.h>
	to get definition of FPU description struct.

	* sysdeps/unix/sysv/linux/Makefile [$(subdir)=socket] (subdir_headers):
	Add net/if.h, net/if_ppp.h, net/ppp-comp.h, net/ppp_defs.h,
 	net/if_arp.h, and net/route.h.
	* sysdeps/unix/sysv/linux/net/if_arp.h: New file.
	* sysdeps/unix/sysv/linux/net/route.h: New file.

Fri Oct 11 14:49:13 1996  Ulrich Drepper  <drepper@cygnus.com>

	* sysdeps/stub/readdir_r.c: New file.  We need a stub version.
	* sysdeps/stub/e_acosl.c: Likewise.
	* sysdeps/stub/e_asinl.c: Likewise.
	* sysdeps/stub/e_atan2l.c: Likewise.
	* sysdeps/stub/e_expl.c: Likewise.
	* sysdeps/stub/e_fmodl.c: Likewise.
	* sysdeps/stub/e_log10l.c: Likewise.
	* sysdeps/stub/e_logl.c: Likewise.
	* sysdeps/stub/e_sqrtl.c: Likewise.
	* sysdeps/stub/s_atanl.c: Likewise.
	* sysdeps/stub/s_log1pl.c: Likewise.

	* Makefile (distribute): Add nsswitch.h and netgroup.h.

	* nss/Makefile (generated): db-netgrp.c is not generated.

	* sysdeps/alpha/Dist: Add stxcpy.S and stxncpy.S.

	* Make-dist (+out): Add $(dont_distribute).

Fri Oct 11 00:27:18 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

	* stdio-common/Makefile (routines): Add tmpnam_r.

Fri Oct 11 05:32:51 1996  Ulrich Drepper  <drepper@cygnus.com>

	* version.h: Bump version to 1.96.

Fri Oct 11 18:13:47 1996  Andreas Jaeger  <aj@arthur.pfalz.de>

	* stdio-common/tst-printf.c: Some more cleanups.

Fri Oct 11 02:48:02 1996  Ulrich Drepper  <drepper@cygnus.com>

	* resolv/arpa/nameser.h: Update from bind-4.9.5-T6B.
	* resolv/resolv.h: Likewise.
	* resolv/gethnamaddr.c: Likewise.
	* resolv/res_comp.c: Likewise.
	* resolv/res_debug.c: Likewise.
	* resolv/res_init.c: Likewise.
	* resolv/res_send.c: Likewise.
	* resolv/Banner: Update version number.

	* nss/nss_dns/dns-host.c: Update according to change in
	resolv/gethnamaddr.c.

Fri Oct 10 20:52:28 1996  Ralph Loader  <loader@maths.ox.ac.uk>

	* crypt/md5.c (md5_stream): When reading the block in several
	pieces append to instead of replace previously read data.

Thu Oct 10 15:53:17 1996  Richard Henderson  <rth@tamu.edu>

	* sysdeps/alpha/stxcpy.S ($unaligned): In single word copy, correct
	last-byte-written bit for source word misalignment.
	* sysdeps/alpha/strchr.c: Removed.  There is now an assembler
 	version.

Thu Oct 10 17:17:23 1996  Ulrich Drepper  <drepper@cygnus.com>

	* sunrpc/Makefile (rpcsvc): Remove yp.x.  The corrected version
	comes with glibc-nis.
	* sunrpc/rpcsvc/yp.x: Removed.

	* nss/nss_files/files-netgr.c (_nss_netgroup_parseline): Test
	for *CURSOR to be NULL and dump a core if yes.

Thu Oct  9 20:09:53 1996  Matthew Jacob  <mjacob@feral.com>

	* sysdeps/unix/sysv/linux/alpha/brk.S: Define _ERRNO_H before
	including <errnos.h> to get error numbers.

Thu Oct 10 14:00:01 1996  Ulrich Drepper  <drepper@cygnus.com>

	* sysdeps/unix/sysv/linux/i386/sigcontext.h: Moved file...
	* sysdeps/unix/sysv/linux/sigcontext.h: ...to here.  So the
	Alpha people find a correct file.
	* sysdeps/libm-ieee754/w_cabs.c: We cannot make __cabsl simply
	an alias of __cabs since the structures have different names.
	* sysdeps/libm-ieee754/w_log10.c: Fix typo in weak_alias.
	Reported by Matthew Jacob <mjacob@feral.com>.

	simply a wrapper around the <linux/elfcore.h> file since the
This commit is contained in:
Ulrich Drepper
1996-10-12 00:56:05 +00:00
parent b33f91e91d
commit 1f64ac13c0
37 changed files with 295 additions and 502 deletions

View File

@@ -3,3 +3,5 @@ DEFS.h
divrem.h
divl.S divlu.S divq.S divqu.S reml.S remlu.S remq.S remqu.S
_mcount.S
stxcpy.S
stxncpy.S

View File

@@ -1,84 +0,0 @@
/* Copyright (C) 1992, 1993, 1994, 1995 Free Software Foundation, Inc.
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., 675 Mass Ave,
Cambridge, MA 02139, USA. */
#include <string.h>
/* Return the length of the null-terminated string STR. Scan for
the null terminator quickly by testing eight bytes at a time. */
char *
strchr (const char *str, int c)
{
const char *char_ptr;
const unsigned long int *longword_ptr;
unsigned long int charmask;
c = (unsigned char) c;
/* Handle the first few characters by reading one character at a time.
Do this until STR is aligned on a 8-byte border. */
for (char_ptr = str; ((unsigned long int) char_ptr & 7) != 0; ++char_ptr)
if (*char_ptr == c)
return (char *) char_ptr;
else if (*char_ptr == '\0')
return NULL;
longword_ptr = (unsigned long int *) char_ptr;
/* Set up a longword, each of whose bytes is C. */
charmask = c | (c << 8);
charmask |= charmask << 16;
charmask |= charmask << 32;
for (;;)
{
const unsigned long int longword = *longword_ptr++;
int ge, le, zero;
/* Set bits in ZERO if bytes in LONGWORD are zero. */
asm ("cmpbge $31, %1, %0" : "=r" (zero) : "r" (longword));
/* Set bits in GE if bytes in CHARMASK are >= bytes in LONGWORD. */
asm ("cmpbge %1, %2, %0" : "=r" (ge) : "r" (charmask), "r" (longword));
/* Set bits in LE if bytes in CHARMASK are <= bytes in LONGWORD. */
asm ("cmpbge %2, %1, %0" : "=r" (le) : "r" (charmask), "r" (longword));
/* Bytes that are both <= and >= are == to C. */
if (zero || (ge & le))
{
/* Which of the bytes was the C? */
char *cp = (char *) (longword_ptr - 1);
int i;
for (i = 0; i < 8; i++)
{
if (cp[i] == c)
return &cp[i];
if (cp[i] == 0)
return NULL;
}
return NULL;
}
}
}
#ifdef weak_alias
#undef index
weak_alias (strchr, index)
#endif

View File

@@ -36,7 +36,7 @@ Cambridge, MA 02139, USA. */
Furthermore, v0, a3-a5, t11, and t12 are untouched.
*/
/* This is generally scheduled for the EV5, but should still be pretty
/* This is generally scheduled for the EV5, but should still be pretty
good for the EV4 too. */
#include <sysdep.h>
@@ -65,7 +65,7 @@ stxcpy_aligned:
lda t2, -1 # e1 : build a mask against false zero
mskqh t2, a1, t2 # e0 : detection in the src word
mskqh t1, a1, t3 # e0 :
ornot t1, t2, t2 # .. e1 :
ornot t1, t2, t2 # .. e1 :
mskql t0, a1, t0 # e0 : assemble the first output word
cmpbge zero, t2, t7 # .. e1 : bits set iff null found
or t0, t3, t1 # e0 :
@@ -99,9 +99,9 @@ $a_eos:
/* We're doing a partial word store and so need to combine
our source and original destination words. */
ldq_u t0, 0(a0) # e0 :
subq t8, 1, t6 # .. e1 :
subq t8, 1, t6 # .. e1 :
zapnot t1, t6, t1 # e0 : clear src bytes >= null
or t8, t6, t7 # .. e1 :
or t8, t6, t7 # .. e1 :
zap t0, t7, t0 # e0 : clear dst bytes <= null
or t0, t1, t1 # e1 :
@@ -156,13 +156,13 @@ $u_head:
or t1, t4, t1 # .. e1 :
mskqh t1, a0, t1 # e0 :
or t0, t1, t1 # e1 :
or t1, t6, t6 # e0 :
cmpbge zero, t6, t7 # .. e1 :
lda t6, -1 # e0 : for masking just below
bne t7, $u_final # .. e1 :
mskql t6, a1, t6 # e0 : mask out the bits we have
mskql t6, a1, t6 # e0 : mask out the bits we have
or t6, t2, t2 # e1 : already extracted before
cmpbge zero, t2, t7 # e0 : testing eos
bne t7, $u_late_head_exit # .. e1 (zdb)
@@ -181,7 +181,7 @@ $u_head:
/* Unaligned copy main loop. In order to avoid reading too much,
the loop is structured to detect zeros in aligned source words.
This has, unfortunately, effectively pulled half of a loop
This has, unfortunately, effectively pulled half of a loop
iteration out into the head and half into the tail, but it does
prevent nastiness from accumulating in the very thing we want
to run as fast as possible.
@@ -207,7 +207,7 @@ $u_loop:
/* We've found a zero somewhere in the source word we just read.
If it resides in the lower half, we have one (probably partial)
word to write out, and if it resides in the upper half, we
word to write out, and if it resides in the upper half, we
have one full and one partial word left to write out.
On entry to this basic block:
@@ -234,7 +234,7 @@ $u_final:
negq t7, t6 # e0 : isolate low bit set
and t6, t7, t8 # e1 :
and t8, 0x80, t6 # e0 : avoid dest word load if we can
and t8, 0x80, t6 # e0 : avoid dest word load if we can
bne t6, 1f # .. e1 (zdb)
ldq_u t0, 0(a0) # e0 :
@@ -256,7 +256,7 @@ $unaligned:
and a0, 7, t4 # .. e1 : find dest misalignment
and a1, 7, t5 # e0 : find src misalignment
/* Conditionally load the first destination word and a bytemask
/* Conditionally load the first destination word and a bytemask
with 0xff indicating that the destination byte is sacrosanct. */
mov zero, t0 # .. e1 :
@@ -290,18 +290,19 @@ $unaligned:
negq t7, t6 # .. e1 : build bitmask of bytes <= zero
and t6, t7, t8 # e0 :
nop # .. e1 :
and a1, 7, t5 # .. e1 :
subq t8, 1, t6 # e0 :
or t6, t8, t7 # e1 :
srl t8, t5, t8 # e0 : adjust final null return value
zapnot t2, t7, t2 # e0 : prepare source word; mirror changes
zapnot t2, t7, t2 # .. e1 : prepare source word; mirror changes
and t1, t2, t1 # e1 : to source validity mask
extql t2, a1, t2 # e0 :
extql t2, a1, t2 # .. e0 :
extql t1, a1, t1 # e0 :
andnot t0, t2, t0 # e0 : zero place for source to reside
andnot t0, t2, t0 # .. e1 : zero place for source to reside
or t0, t1, t1 # e1 : and put it there
stq_u t1, 0(a0) # e0 :
ret (t9) # .. e1 :
stq_u t1, 0(a0) # .. e0 :
ret (t9)
.end __stxcpy

View File

@@ -14,7 +14,13 @@ __cabs(z)
return __hypot(z.x, z.y);
}
weak_alias (__cabs, cabs)
#ifdef NO_LONG_DOUBLE
strong_alias (__cabs, __cabsl)
weak_alias (__cabs, cabsl)
double
__cabsl(z)
struct __cabs_complexl z;
{
return __hypotl(z.x, z.y);
}
weak_alias (__cabsl, cabsl)
#endif

View File

@@ -47,5 +47,5 @@ static char rcsid[] = "$NetBSD: w_log10.c,v 1.6 1995/05/10 20:49:35 jtc Exp $";
weak_alias (__log10, log10)
#ifdef NO_LONG_DOUBLE
strong_alias (__log10, __log10l)
weak_alias (__log10, log10)
weak_alias (__log10, log10l)
#endif

11
sysdeps/stub/e_log10l.c Normal file
View File

@@ -0,0 +1,11 @@
#include <math.h>
#include <stdio.h>
long double
__ieee754_log10l (long double x)
{
fputs ("__ieee754_log10l not implemented\n", stderr);
return 0.0;
}
stub_warning (__ieee754_log10l)

11
sysdeps/stub/e_logl.c Normal file
View File

@@ -0,0 +1,11 @@
#include <math.h>
#include <stdio.h>
long double
__ieee754_logl (long double x)
{
fputs ("__ieee754_logl not implemented\n", stderr);
return 0.0;
}
stub_warning (__ieee754_logl)

11
sysdeps/stub/e_sqrtl.c Normal file
View File

@@ -0,0 +1,11 @@
#include <math.h>
#include <stdio.h>
long double
__ieee754_sqrtl (long double x)
{
fputs ("__ieee754_sqrtl not implemented\n", stderr);
return 0.0;
}
stub_warning (__ieee754_sqrtl)

12
sysdeps/stub/s_atanl.c Normal file
View File

@@ -0,0 +1,12 @@
#include <math.h>
#include <stdio.h>
long double
__atanl (long double x)
{
fputs ("__atanl not implemented\n", stderr);
return 0.0;
}
weak_alias (__atanl, atanl)
stub_warning (atanl)

12
sysdeps/stub/s_log1pl.c Normal file
View File

@@ -0,0 +1,12 @@
#include <math.h>
#include <stdio.h>
long double
__log1pl (long double x)
{
fputs ("__log1pl not implemented\n", stderr);
return 0.0;
}
weak_alias (__log1pl, log1pl)
stub_warning (log1pl)

View File

@@ -1,12 +1,17 @@
init-first.h
sysctl.c
termio.h
net/if.h
net/if_arp.h
net/if_ppp.h
net/ppp-comp.h
net/ppp_defs.h
net/route.h
nfs/nfs.h
sys/acct.h
sys/debugreg.h
sys/io.h
sys/kd.h
sys/kdaemon.h
sys/klog.h
sys/module.h
@@ -14,9 +19,10 @@ sys/mount.h
sys/procfs.h
sys/quota.h
sys/socketcall.h
sys/soundcard.h
sys/sysctl.h
sys/sysinfo.h
sys/sysmacros.h
sys/timex.h
sys/user.h
termio.h
sys/vt.h

View File

@@ -31,7 +31,8 @@ sysdep_headers += sys/timex.h
endif
ifeq ($(subdir), socket)
sysdep_headers += sys/socketcall.h net/if.h
sysdep_headers += sys/socketcall.h net/if.h net/if_ppp.h net/ppp-comp.h \
net/ppp_defs.h net/if_arp.h net/route.h
endif
ifeq ($(subdir), sunrpc)

View File

@@ -21,6 +21,7 @@ error. Instead, the error condition is indicated by returning the old
break value (instead of the new, requested one). */
#include <sysdep.h>
#define _ERRNO_H
#include <errnos.h>
#ifdef PIC

View File

@@ -28,6 +28,7 @@ Boston, MA 02111-1307, USA. */
#include <signal.h>
#include <sys/time.h>
#include <sys/types.h>
#include <asm/user.h>
#include <asm/elf.h>
struct elf_siginfo