2000-05-22 Andreas Jaeger <aj@suse.de>
* math/Makefile: Add -D__FAST_MATH__ to CFLAGS-test-ifloat.c,
CFLAGS-test-idouble.c, CFLAGS-test-ildoubl.c.
* manual/math.texi (FP Function Optimizations): Document gcc
-ffast-math behaviour with mathinlines.
* sysdeps/i386/fpu/bits/mathinline.h: Only use save inline
functions unless -ffast-math is given to gcc.
2000-05-05 Ulrich Drepper <drepper@redhat.com>
* elf/dl-load.c (_dl_map_object_from_fd): Little of computation of
parameter to mprotect and for variable assignments.
2000-05-03 Jes Sorensen <jes@linuxcare.com>
* sysdeps/generic/ldsodefs.h (LOOKUP_VALUE_ADDRESS): Check the
validity of map before dereferencing it.
* elf/dl-reloc.c (RESOLVE_MAP): Define.
2000-05-02 Jes Sorensen <jes@linuxcare.com>
* elf/dl-runtime.c (fixup): Add the value returned in the symbol
lookup to the arguments to elf_machine_fixup_plt().
* sysdeps/ia64/dl-machine.h (elf_machine_fixup_plt): Add Link_map
of the symbol being resolved to input argument list and make the
function return the pointer to the reloc.
* sysdeps/alpha/dl-machine.h (elf_machine_fixup_plt): Change
return valuie to lookup_t and return the value.
* sysdeps/arm/dl-machine.h (elf_machine_fixup_plt): Likewise.
* sysdeps/generic/dl-machine.h (elf_machine_fixup_plt): Likewise.
* sysdeps/i386/dl-machine.h (elf_machine_fixup_plt): Likewise.
* sysdeps/m68k/dl-machine.h (elf_machine_fixup_plt): Likewise.
* sysdeps/sparc/sparc32/dl-machine.h (elf_machine_fixup_plt): Likewise.
* sysdeps/sparc/sparc64/dl-machine.h (elf_machine_fixup_plt): Likewise.
* sysdeps/powerpc/dl-machine.h (elf_machine_fixup_plt): Likewise.
Make it an inline function returning value after calling
__elf_machine_fixup_plt().
* elf/dl-sym.c (_dl_vsym): Use DL_SYMBOL_ADDRESS() to obtain the
symbol address.
* elf/dl-symbol.c (_dl_symbol_value): Use LOOKUP_VALUE_ADDRESS to
obtain the symbol address.
* sysdeps/generic/ldsodefs.h: Add generic DL_SYMBOL_ADDRESS() macro
depending on the definition of ELF_FUNCTION_PTR_IS_SPECIAL.
* sysdeps/ia64/dl-machine.h: Add DL_SYMBOL_ADDRESS() macro calling
_dl_symbol_address() - this way DL_SYMBOL_ADDRESS() turns into an
inline on non ia64.
2000-04-28 Jes Sorensen <jes@linuxcare.com>
* elf/dl-runtime.c (fixup): Use the portable macros to get the
symbol address of an object.
* elf/dl-runtime.c (fixup-profile): Use the portable macros to get
the symbol address of an object.
* elf/dl-libc.c (struct do_dlsym_args): Change loadbase to a lookup_t.
* elf/dl-lookup.c (_dl_lookup_symbol): Likewise.
(_dl_lookup_symbol_skip): Likewise.
(_dl_lookup_versioned_symbol): Likewise.
(_dl_lookup_versioned_symbol_skip): Likewise.
2000-04-27 Jes Sorensen <jes@linuxcare.com>
* elf/rtld.c (_dl_start): Get the function pointer return address
via _dl_start_address for architectures that need a function
pointer descriptor rather than just a pointer (ia64).
* sysdeps/generic/dl-lookupcfg.h: New file.
* sysdeps/ia64/dl-lookupcfg.h: New file.
* sysdeps/ia64/dl-machine.h: New file.
* sysdeps/ia64/dl-symaddr.c: New file.
* sysdeps/ia64/dl-fptr.c: New file.
* elf/elf.h: Add IA-64 specific definitions.
2000-04-27 Ulrich Drepper <drepper@redhat.com>
* elf/soinit.c (__libc_global_ctors): Call __pthread_initialize_minimal
if this function is available.
* sysdeps/i386/i486/atomicity.h (exchange_and_add): Use uint32_t for
all values.
<haible@clisp.cons.org>.
here, before we might move the stack.
(posixland_init): Set __libc_argc, __libc_argc, and __environ here.
(init1): And not here.
* sysdeps/i386/dl-machine.h (RTLD_START): Fix code broken by last
change, to restore argc value in call-clobbered register after
RTLD_START_SPECIAL_INIT, which will contain a call.
* elf/dl-deps.c (_dl_map_object_deps): Fix size calculations for
allocating and initializing L->l_initfini.
* resolv/Makefile (headers): Add bits/netdb.h, so it gets installed.
(init1): Don't initialize __environ here, since init already does it.
(first_init): New function, broken out of _init.
(_hurd_stack_setup): Use it.
[SHARED] (_dl_init_first): New function, renamed from old _init.
(init1) [SHARED]: Don't call posixland_init here.
(posixland_init): Take ENVP arg, so signature is usual for initializer.
[SHARED] (_init): Define as alias for posixland_init.
[! SHARED] (__libc_first_init): Define as alias for posixland_init.
* sysdeps/i386/dl-machine.h (RTLD_START): Insert the macro
RTLD_START_SPECIAL_INIT before calling initializers.
(RTLD_START_SPECIAL_INIT): Define to empty if undefined.
* sysdeps/mach/hurd/i386/dl-machine.h: New file.
* sysdeps/mach/hurd/dl-sysdep.c (_dl_init_first): New weak function.
* elf/Versions ({libc,ld.so}: GLIBC_2.2): Add _dl_init_first.
2000-03-31 Ulrich Drepper <drepper@redhat.com>
* sysdeps/i386/dl-machine.h (RTLD_START): Optimize for i686.
* elf/dl-support.c: Define _dl_starting_up.
* elf/dl-init.c (_dl_init): Clear _dl_starting_up at end of function.
* misc/sys/cdefs.h: Don't allow gcc in traditional mode to be used.
elements.
* elf/dl-init.c (_dl_init): Clear _dl_starting_up at end of
with size of dynamic sectionfunction.
* sysdeps/i386/dl-machine.h: Remove code to clear _dl_starting_up.
* misc/sys/cdefs.h: Don't allow gcc in traditional mode to be
with size of dynamic sectionused.
2000-03-30 Ulrich Drepper <drepper@redhat.com>
Implement dynamic determination of constructor/destructor order in
the dynamic linker.
* elf/Versions [ld.so] (GLIBC_2.0): Remove _dl_init_next.
(GLIBC_2.2): Add _dl_init.
* elf/dl-close.c: Also call all destructors in FINI_ARRAY.
r_duplist is not anymore allocated separately. l_initfini is and
therefore free it if necessary.
* elf/dl-deps.c: If a searchlist has to be allocated, put all in one
malloc block. Otherwise allocate l_initfini list only.
Put dependencies for the object in l_initfini list.
Sort dependencies for the object to be loaded topologically.
* elf/dl-fini.c: Before running the destructors sort the topologically.
* elf/dl-init.c (_dl_init): Renamed from _dl_init_next. Rewrite to
call constructors instead of iterating over the pointers. Get list of
objects for which to run constructors from l_initfini element. Accept
argc, argv, and env as parameters and pass them to the constructors.
* elf/ld-load.c (_dl_map_object_from_fd): Initialize l_ldnum member
with size of dynamic section.
* elf/dl-open.c (dl_open_worker): Only call _dl_init instead of
_dl_init_next and calling constructors ourself.
* elf/dl-preinit.c (_dl_preinit): Renamed from _dl_preinit_next.
Take argc, argv, and env as parameters and pass them to the
constructors. Rewrite to call all constructors and not iterate over
the pointers.
* elf/dynamic-link.h: Don't relocate DT_FINI_ARRAY entry. Don't
precompute l_initcount and l_preinitcount.
* elf/link.h (struct link_map): Add l_ldnum member.
Make l_phdr_allocated part of the bitfield. Remove l_runcount,
l_initcount, and l_preinitcount. Add l_initfini.
* sysdeps/generic/ldsodefs.h: Replace _dl_init_next prototype with
one for _dl_init.
* sysdeps/i386/dl-machine (RTLD_START): Rewrite to match new init
function interface.
* sysdeps/unix/sysv/linux/init-first.h: Removed.
* sysdeps/unix/sysv/linux/Dist: Delete file here as well.
* sysdeps/unix/sysv/linux/init-first.c [PIC]: Don't use
SYSDEP_CALL_INIT. Make _init a strong alias of init. The calling
conventions now match.
* sysdeps/generic/libc-start.c: Calling __libc_init_first has no
effect for shared objects. Don't emit message and call only for
static library.
2000-03-07 Andreas Jaeger <aj@suse.de>
* resolv/netdb.h: The descriptions of rresvport and rresvport_af
were swapped.
Patch by YOSHIFUJI Hideaki <yoshfuji@ecei.tohoku.ac.jp>, closes PR
libc/1636.
* sysdeps/i386/fpu/bits/mathinline.h: Fix union definition error
in __sgn1l, otherwise g++ fails to parse this.
Reported by Sean Chen <sean.chen@turbolinux.com>.
2000-02-15 Andreas Jaeger <aj@suse.de>
* sysdeps/i386/fpu/libm-test-ulps: Add one value for AMD K7.
2000-02-15 Andreas Jaeger <aj@suse.de>
* math/libm-test.inc (nearbyint_test): Add some tests.
(rint_test): Likewise.
2000-02-14 Ulrich Drepper <drepper@redhat.com>
* sysdeps/posix/sigwait.c: Don't look for signal 0 since it does
not exist. Patch by Miloslav Trmac <mitr@volny.cz> (PR libc/1601).
* sysdeps/i386/fpu/s_nearbyint.S: Disable raising exception, not
enable it. Patch by Miloslav Trmac <mitr@volny.cz> (PR libc/1600).
* sysdeps/i386/fpu/s_nearbyintf.S: Likewise.
* sysdeps/i386/fpu/s_nearbyintf.l: Likewise.
* sysdeps/i386/fpu/s_cosf.S: Domain of opcode is not large enough
so test for overflow and handle it.
* sysdeps/i386/fpu/s_sinf.S: Likewise.
* sysdeps/i386/fpu/s_tanf.S: Likewise.
Patch by Miloslav Trmac <mitr@volny.cz> (PR libc/1563).
2000-02-02 Andreas Schwab <schwab@suse.de>
* malloc/Makefile (distribute): Add memprof.h.
* malloc/memprof.c: Move definition of GETSP and GETTIME to new
header memprof.h.
* sysdeps/generic/memprof.h: New file.
* sysdeps/alpha/memprof.h: New file.
* sysdeps/i386/memprof.h: New file.
* sysdeps/m68k/memprof.h: New file.
* sysdeps/mips/memprof.h: New file.
* sysdeps/powerpc/memprof.h: New file.
* sysdeps/sparc/memprof.h: New file.
2000-01-03 Kaz Kylheku <kaz@ashi.footprints.net>
Redesigned how cancellation unblocks a thread from internal
cancellation points (sem_wait, pthread_join,
pthread_cond_{wait,timedwait}).
Cancellation won't eat a signal in any of these functions
(*required* by POSIX and Single Unix Spec!).
* condvar.c: spontaneous wakeup on pthread_cond_timedwait won't eat a
simultaneous condition variable signal (not required by POSIX
or Single Unix Spec, but nice).
* spinlock.c: __pthread_lock queues back any received restarts
that don't belong to it instead of assuming ownership of lock
upon any restart; fastlock can no longer be acquired by two threads
simultaneously.
* restart.h: restarts queue even on kernels that don't have
queued real time signals (2.0, early 2.1), thanks to atomic counter,
avoiding a rare race condition in pthread_cond_timedwait.
1999-12-17 Ulrich Drepper <drepper@cygnus.com>
* string/bits/string2.h (__strtok_r_1c): Help gcc optimizing string
access.
* locale/programs/ld-collate.c: Implement handling of absolute
ellipsis. Parsing of file and constructing the internal data
structures should now be complete.
(collate_finish): Start adding support to generate the data
structures which are written out to the file.
* intl/dcgettext.c: Rewrite to handle caching of previous results here
instead of in the dcgettext macro.
* intl/libintl.h (dcgettext): Don't define for systems using this
glibc or systems with tsearch.
* sysdeps/generic/mathdef.h: Protect definitions for math.h
against double inclusion.
* sysdeps/alpha/fpu/bits/mathdef.h: Likewise.
* sysdeps/i386/fpu/bits/mathdef.h: Likewise.
* sysdeps/m68k/fpu/bits/mathdef.h: Likewise.
* sysdeps/powerpc/fpu/bits/mathdef.h: Likewise.
* sysdeps/i386/fpu/libm-test-ulps: Add more deltas (are mobile PIIs
that different?).
1999-12-17 Andreas Jaeger <aj@suse.de>
* rt/aio.h (struct aiocb64): Add member __next_prio to sync the
struct with aiocb.
* rt/Makefile (tests): Added tst-aio64.
Added dependency rules for tst-aio64.
* rt/tst-aio64.c: New file, copied from tst-aio.c and changed for
64bit tests.
1999-12-15 Thorsten Kukuk <kukuk@suse.de>
* sysdeps/unix/sysv/linux/alpha/oldgetrlimit64.c: Removed.
* sysdeps/unix/sysv/linux/alpha/oldsetrlimit64.c: Removed.
* sysdeps/unix/sysv/linux/bits/resource.h: Change RLIM_INFINITY back to
old value (signed long).
* sysdeps/unix/sysv/linux/i386/bits/resource.h: New, with unsigned
long RLIM_INFINITY.
* sysdeps/unix/sysv/linux/getrlimit.c: Moved from here to ...
* sysdeps/unix/sysv/linux/i386/getrlimit.c: ... here.
* sysdeps/unix/sysv/linux/getrlimit64.c: Moved from here to ...
* sysdeps/unix/sysv/linux/i386/getrlimit64.c: ... here.
* sysdeps/unix/sysv/linux/oldgetrlimit64.c: Moved from here to ...
* sysdeps/unix/sysv/linux/i386/oldgetrlimit64.c: ... here.
* sysdeps/unix/sysv/linux/oldsetrlimit64.c: Moved from here to ...
* sysdeps/unix/sysv/linux/i386/oldsetrlimit64.c: ... here.
* sysdeps/unix/sysv/linux/setrlimit.c: Moved from here to ...
* sysdeps/unix/sysv/linux/i386/setrlimit.c: ... here.
* sysdeps/unix/sysv/linux/setrlimit64.c: Moved from here to ...
* sysdeps/unix/sysv/linux/i386/setrlimit64.c: ... here.
* sysdeps/unix/sysv/linux/sparc/bits/resource.h: New.
* sysdeps/unix/sysv/linux/sparc/sparc64/oldgetrlimit64.c: Removed.
* sysdeps/unix/sysv/linux/sparc/sparc64/oldsetrlimit64.c: Removed.
1999-12-17 Andreas Jaeger <aj@suse.de>
* elf/ldconfig.c: Add new option -l to manualy link shared
libraries.
(options): Added option.
(parse_opt): Set option.
(main): Handle option.
(manual_link): New function.
1999-12-17 Thorsten Kukuk <kukuk@suse.de>
* string/bits/string2.h: Fix patch from 1999-12-07.
1999-12-16 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/generic/strsep.c: If delim string has only one character
don't run over end of string.
* locale/programs/ld-collate.c (insert_weights): Also update next
pointer of last cursor element.
(insert_value): Return nonzero value if nothing got inserted.
(handle_ellipsis): Don't do anything if to-value cannot be inserted.
1999-12-10 Jakub Jelinek <jakub@redhat.com>
* stdlib/longlong.h (__sparc_v9__): Use %rDIGIT instead of %DIGIT
where appropriate.
1999-12-10 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/sparc/sparc64/sigaction.c (__sigaction):
Copy sa_flags into kernel sigaction structure.
1999-12-14 Andreas Jaeger <aj@suse.de>
* string/tester.c (test_strsep): More tests for access beyond
the final NUL. The first two tests come from PR libc/1486 by
martinea@iro.umontreal.ca.
1999-12-14 Thorsten Kukuk <kukuk@suse.de>
* nis/ypclnt.c: Correct handling of cached client handles.
(__xdr_ypresp_all): Call callback function for errors, too,
like Solaris does.
* nis/nss_compat/compat-grp.c: Make sure errno is always set correct.
* nis/nss_compat/compat-initgroups.c: Likewise.
* nis/nss_compat/compat-spwd.c: Likewise.
* nis/nss_nis/nis-alias.c: Likewise.
* nis/nss_nis/nis-ethers.c: Likewise.
* nis/nss_nis/nis-grp.c: Likewise.
* nis/nss_nis/nis-hosts.c: Likewise.
* nis/nss_nis/nis-netgrp.c: Likewise.
* nis/nss_nis/nis-publickey.c: Likewise.
* nis/nss_nis/nis-service.c: Likewise. Also use services.byservicename
Map if available, optimize query if name/port and protocol is known.
1999-12-09 Andreas Jaeger <aj@suse.de>
* nis/nss_compat/compat-pwd.c (internal_getpwuid_r): Always set
errno to ENOENT when returning NSS_STATUS_NOTFOUND.
Reported by Christian Starkjohann <cs@obdev.at>.
1999-12-09 Andreas Jaeger <aj@suse.de>
* sysdeps/i386/fpu/libm-test-ulps: Added some ulps.
1999-12-09 Jakub Jelinek <jakub@redhat.com>
* stdlib/longlong.h: Update from latest egcs version.
* sysdeps/sparc/fpu/fegetenv.c: Add semicolons.
* sysdeps/unix/sysv/linux/bits/errno.h (__errno_location): __THROW
has to preceede __attribute__, otherwise g++ barfs.
* sysdeps/unix/sysv/linux/sparc/sys/ptrace.h: Make things compile
on sparc64-*-linux.
* sysdeps/unix/sysv/linux/sparc/sparc64/register-dump.h: Changed to
use sigcontext.
* sysdeps/unix/sysv/linux/sparc/sparc64/sigcontextinfo.h: Likewise.
1999-12-05 Wolfram Gloger <wg@malloc.de>
* malloc/malloc.c (arena_get2): If generating a new arena fails,
try to generate a minimal one and hope for mmap_chunk() to succeed
later.
1999-11-07 Wolfram Gloger <wg@malloc.de>
* malloc/thread-m.h [NO_THREADS]: The mutex_* macros now let
mutex_t work as an `in-use' flag even without threads.
* malloc/malloc.c (USE_ARENAS): New feature flag, controls support
for multiple arenas separately from NO_THREADS.
(mALLOc, chunk_realloc, mEMALIGn, cALLOc) [USE_ARENAS]: try to
fall back to an mmap()ed arena when sbrk() has failed.
1999-10-25 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/i386/fpu/libm-test-ulps: Remove entries caused by +-0
problems.
* md5-crypt/md5.h: Remove prototypes for public interface. md5 is
only used internally.
1999-10-19 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/i386/fpu/s_nextafterl.c: Add __nextafterl and nextafterl
aliases.
* sysdeps/ieee754/flt-32/e_lgammaf_r.c: Don't handle -Inf special.
* sysdeps/ieee754/flt-32/e_gammaf_r.c (__ieee754_gammaf_r): Check
for -Inf and return NaN.
* math/gen-libm-test.pl: Fix program name in help message.
* math/libm-test.inc (check_complex): It's Imaginary, not Complex.
* math/libm-test.inc (gamma_test): Result of gamma(-inf) is +inf.
* sysdeps/i386/Implies: Correct order of libm directories.
1999-10-18 Andreas Jaeger <aj@suse.de>
Added improved math testsuite:
* math/libm-test.inc: New file, contains all tests from
libm-test.c but in a different form.
* math/libm-test.c: Removed.
* sysdeps/generic/libm-test-ulps: New file: Fallback ulps file.
* math/gen-libm-test.pl: New file: Preprocessor.
* math/test-double.c: Adopted to new testsuite.
* math/test-idouble.c: Likewise.
* math/test-float.c: Likewise.
* math/test-ifloat.c: Likewise.
* math/test-ldouble.c: Likewise.
* math/test-ildoubl.c: Likewise.
* math/Makefile: Added rules to generate new suite.
1999-10-04 Ulrich Drepper <drepper@cygnus.com>
* include/string.h: Add __memrchr declaration.
* string/string.h: Moce __memrchr declaration to include/string.h.
1999-10-03 Ulrich Drepper <drepper@cygnus.com>
* string/Makefile (routines): Add memrchr.
* sysdeps/generic/memrchr.c: Don't undef memchr, undef memrchr.
Correct order of tests for matching bytes.
* string/tester.c: Add tests for memrchr.
* sysdeps/i386/i486/bits/string.h (__memrchr): Correct implementation.
Start from the last character and take decrement not increment
into account for correction in return line. Add memrchr alias.
* sysdeps/i386/bits/string.h: Likewise.
1999-09-17 Andreas Jaeger <aj@suse.de>
* sysdeps/i386/Makefile (CFLAGS-initfini.s): Add also -mcpu=i386
to override user settings.
1999-09-17 Andreas Schwab <schwab@suse.de>
* sysdeps/unix/sysv/linux/semctl.c: Copy the argument instead of
using a pointer to it.
* sysdeps/i386/fpu/bits/mathinline.h (__finite): Mark constant as
unsigned to avoid warning. [PR libc/1271].
* conform/conformtest.pl: Allow testing regex.h which requires
sys/types.h being included.
* string/bits/string2.h: Fix aliasing problems.
* sysdeps/i386/i486/bits/string.h: Likewise.
* sysdeps/i386/bits/string.h: Likewise.
1998-12-28 Geoff Keating <geoffk@ozemail.com.au>
* sysdeps/powerpc/dl-machine.c: Handle shared library profiling.
* elf/rtld.c (dl_main): Don't call malloc() between
re-relocating the dynamic linker and running the application's crt0.
1999-07-21 Paul D. Smith <psmith@gnu.org>
* sysdeps/generic/glob.c: Move getlogin{,_r} prototypes below
glob.h to get __P() macro.
* posix/fnmatch.c (internal_fnmatch): Use K&R definition syntax,
not ANSI.
(__strchrnul): This won't exist outside GLIBC, so create one.
1999-07-25 Jakub Jelinek <jj@ultra.linux.cz>
* sysdeps/unix/sysv/linux/sparc/bits/types.h: Always define __qaddr_t.
__ino64_t should be 32bit unsigned type on sparc32.
Define __off64_t to __quad_t instead of __int64_t.
Make __pic_pid_t unsigned on sparc32.
1999-07-25 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* localedata/tst-rpmatch.sh: Use "&" instead of "" to avoid a bug
in bash 2.03.
1999-07-25 Ulrich Drepper <drepper@cygnus.com>
1999-07-09 Cristian Gafton <gafton@redhat.com>
* nscd/nscd_gethst_r.c (nscd_gethst_r): Make sure
resultbuf->h_addr_list addresses are correctly aligned.
* sysdeps/i386/bits/string.h (__memcpy_c): Help some stupid old
compilers.
(__memset_cc): Likewise.
1999-06-18 Thorsten Kukuk <kukuk@suse.de>
* sysdeps/alpha/atomicity.h: Correct counting of subsections.
1999-06-17 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* stdlib/tst-strtoll.c: Avoid warning about huge constant.
1999-06-20 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* stdio-common/vfprintf.c (group_member): Make parameters and
return types pointers to CHAR_T instead of UCHAR_T.
(vfprintf): Change type of work_buffer, workend and string to
CHAR_T pointer/array.
(process_arg, process_string_arg): Adjust/remove casts. Add
missing use of L_ macro.
(printf_unknown): Add missing uses of L_ macro.
1999-06-20 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* wcsmbs/wcschrnul.c: Explicitly cast return value to avoid
warning.
1999-06-20 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* libio/wgenops.c (__wuflow): Fix use of WEOF vs. EOF. Call
_IO_switch_to_wget_mode instead of _IO_switch_to_get_mode.
(__wunderflow): Likewise.
(_IO_switch_to_wget_mode): Likewise.
(_IO_init_wmarker): Likewise.
* libio/wfileops.c (_IO_wfile_seekoff): Call
_IO_switch_to_wget_mode, not _IO_switch_to_get_mode.
(_IO_wfile_jumps): Fix pbackfail entry.
* libio/iosetvbuf.c (_IO_setvbuf): Only call wide char setbuf
function if the stream is currently unoriented.
1999-06-19 Zack Weinberg <zack@rabi.columbia.edu>
* wcsmbs/wchar.h: Define __need___va_list before including stdarg.h.
Wrap all wide stream functions with #ifdef __USE_ISOC9X. Use
__gnuc_va_list in v*w(printf|scanf) prototypes.
1999-06-20 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* libio/oldiopopen.c (_IO_old_proc_open): Apply change from
1999-03-29 to iopopen also here.
Reported by Richard Braakman <dark@xs4all.nl>.
1999-06-20 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* include/features.h: Use __GNUC_PREREQ.
* sysdeps/i386/fpu/bits/mathinline.h: Likewise
1999-06-19 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* stdio-common/vfscanf.c (ungetc, inchar) [COMPILE_WPRINTF]:
Change EOF to WEOF and remove cast.
(UNGETC): Remove macro.
(_IO_vfwscanf): Change isspace to ISSPACE and UNGETC to ungetc.
* stdio-common/printf-parse.h (find_spec) [!COMPILE_WPRINTF]:
Change ISASCII to isascii and MBRLEN to mbrlen.
(parse_one_spec): Compare info.spec always against wchar_t
values.
* stdio-common/vfprintf.c: Remove unused ISASCII and MBRLEN.
(_itoa, _itoa_word) [COMPILE_WRPINTF]: Don't cast second argument.
(NOT_IN_JUMP_RANGE, CHAR_CLASS): Change (int) to (INT_T), use L_.
1999-06-19 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* libio/Makefile (shared-only-routines): Add oldiofgetpos,
oldiofgetpos64, oldiofsetpos and oldiofsetpos64.
(routines): Include oldiofgetpos, oldiofgetpos64, oldiofsetpos and
oldiofsetpos64 only if doing versioning.
1999-05-17 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* sysdeps/i386/i486/Versions: New file with inline functions from
sysdeps/i386/i486/bits/string.h for now.
* sysdeps/i386/Versions: Add inline functions from
sysdeps/i386/bits/string.h.
* string/Versions: Add inline functions from <bits/string2.h>.
* string/Makefile (routines): Add string-inlines.
* string/string-inlines.c: New file, used for implementation of
extern inline functions.
* sysdeps/i386/i486/bits/string.h: Use _FORCE_INLINES to generate
non inlined versions of functions.
* string/bits/string2.h: Likewise.
* sysdeps/i386/bits/string.h: Likewise.
1999-05-17 Ulrich Drepper <drepper@cygnus.com>
* inet/arpa/tftp.h: Add second packed attribute.
1999-05-01 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/i386/i486/bits/string.h: Don't use and define __memset_gg.
Prevent warnings from multiplication with 0x01010101 by another cast.
1999-03-01 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* sysdeps/i386/sys/ucontext.h (ucontext): Rename field uc_links to
uc_link which is the right name according to Unix98.
Reported by Craig Metz [PR libc/1001].
* sysdeps/arm/sys/ucontext.h (ucontext): Likewise.
* sysdeps/m68k/sys/ucontext.h (ucontext): Likewise.
* sysdeps/mips/sys/ucontext.h (ucontext): Likewise.
* sysdeps/unix/sysv/linux/alpha/sys/ucontext.h (ucontext): Likewise.
* sysdeps/unix/sysv/linux/i386/sys/ucontext.h (ucontext): Likewise
* sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h (ucontext): Likewise.
* elf/dynamic-link.h (elf_get_dynamic_info): Take new argument with
load address. Relocate d_ptr in DT_DTRTAB, DT_SYMTAB, DT_RELA, DT_REL,
DT_JMPREL, DT_PLTGOT, and DT_VERSYM l_info entry.
(_ELF_DYNAMIC_DO_RELOC): Take extra argument which specifies whether
rel and rela relocations can both happen and skip one test if this
is not possible.
(ELF_DYNAMIC_DO_RELA, ELF_DYNAMIC_DO_REL): Call _ELF_DYNAMIC_DO_RELOC
appropriately.
* elf/dl-addr.c (_dl_addr): DT_SYMTAB and DT_STRTAB entries are
already relocated.
* elf/dl-deps.c (_dl_map_object_deps): DT_STRTAB entry is already
relocated.
* elf/dl-load.c (_dl_init_paths): DT_STRTAB entry is already relocated.
(_dl_map_object_from_fd): Call elf_get_dynamic_info with new argument.
(_dl_map_object): DT_STRTAB entry is already relocated.
* elf/dl-lookup.c (do_lookup): DT_STRTAB and DT_SYMTAB entries are
already relocated.
* elf/dl-reloc.c (_dl_relocate_object): DT_STRTAB entry is already
relocated.
* elf/dl-runtime.c (fixup): DT_SYMTAB, DT_STRTAB, DT_JMPREL, and
DT_VERSYM entries are already relocated.
(profile_fixup): Likewise.
* elf/dl-version.c: Rename VERSTAG macro into VERSYMIDX. Replace
all users.
(match_symbol): DT_STRTAB entry is already relocated.
(_dl_check_map_versions): Likewise. Also fo DT_VERSYM.
* elf/do-rel.h (elf_dynamic_do_rel): reladdr is now assumed to be
relocated already. DT_SYMTAB and DT_VERSYM entries are also relocated.
* elf/rtld.c (_dl_start): Pass extra argument to elf_get_dynamic_info.
(find_needed): DT_STRTAB entry is already relocated.
(dl_main): Pass extra argument to elf_get_dynamic_info.
DT_STRTAB entry is already relocated.
* sysdeps/alpha/dl-machine.h (elf_machine_fixup_plt): DT_JMPREL and
DT_PLTGOT entries are already relocated.
(elf_machine_rela): Likewise for DT_SYMTAB.
* sysdeps/arm/dl-machine.h (elf_machine_rel): DT_STRTAB is already
relocated.
* sysdeps/i386/dl-machine.h (elf_machine_rel): Likewise.
* sysdeps/m68k/dl-machine.h (elf_machine_rela): Likewise.
* sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela): Likewise.
* sysdeps/sparc/sparc64/dl-machine.h (elf_machine_rela): Likewise.
* sysdeps/powerpc/dl-machine.c (__process_machine_rela): Likewise.
* sysdeps/mips/dl-machine.h (elf_machine_got_rel): Likewise.
(elf_machine_got_rel): Likewise for DT_SYMTAB and DT_STRTAB.
* grp/initgroups.c (initgroups): If function in current module was
successful don't stop but continue to process to get all the groups.
1999-02-20 Ulrich Drepper <drepper@cygnus.com>
* elf/dynamic-link.h (elf_get_dynamic_info): Use memset instead of
loop to clear `info'.
* sysdeps/i386/i486/bits/string.h: If fill byte is constant let gcc
do the work and don't use inline assembler.
1999-01-29 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/i386/Versions: Exports functions from libgcc sinc ethis
is what was done in glibc 2.0.
* sysdeps/m68k/Versions: Likewise. New file.
1999-01-13 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/i386/bits/string.h: Correct several bugs in various
functions which never worked.
Patch by Maciej W. Rozycki <macro@ds2.pg.gda.pl>.
1999-01-07 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/i386/bits/select.h (__FD_ZERO): Remove early clobbers
from c and D register output.
1999-01-07 Philip Blundell <philb@gnu.org>
* sysdeps/unix/sysv/linux/arm/sigcontextinfo.h: Fix bug in last change.
1999-01-07 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/unix/sysv/linux/alpha/bits/types.h: Correct type for
__fsfilcnt_t. Patch by Bruce Elliott <bde@nwlink.com>.
1999-01-05 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* manual/conf.texi: Remove pointers from first @node. Move old
@node spec inside comment.
* manual/lang.texi: Likewise.
* manual/libc-texinfo.sh: Also find `@node.*Top' in a comment.
* manual/stdio.texi: Fix typo.
1999-01-04 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* wcsmbs/btowc.c: Accept all values in the range [SCHAR_MIN
.. UCHAR_MAX]. Local var buf renamed to result and its type
changed from char[] to wchar_t to get proper alignment.
* posix/fnmatch.c: Also cast the arguments of the other ctype
functions to unsigned char.
1999-01-07 Ulrich Drepper <drepper@cygnus.com>
* Rules: Add rules for empty.{o,os,op} back.
1998-12-27 Ulrich Drepper <drepper@cygnus.com>
* elf/dl-lookup.c (_dl_num_relocations): New variable.
(do_lookup): Increment _dl_num_relocations for every call.
* elf/rtld.c (print_statistics): New function.
(_dl_debug_statistics): New variable. Set when statistics are asked
for.
(rtld_total_time, relocate_time, load_time): New variables. Used
in print_statistics.
(_dl_start): Record start and end time of startup. Call
print_statistics if needed.
(dk_main): Record times for relocations and loading.
(process_dl_debug): Recognize statistics.
Low-level, low-overhead, high-precision timing funcationality.
* sysdeps/generic/hp-timing.h: New file.
* sysdeps/i386/i686/Makefile: New file.
* sysdeps/i386/i686/hp-timing.h: New file.
* sysdeps/i386/i686/hp-timing.c: New file.
* sysdeps/i386/dl-machine.h (elf_machine_rel): Reverse order of OR
clauses to avoid accessing global variables during rtld relocation.
* sunrpc/rpc_main.c: Unify messages.
* sysdeps/unix/sysv/linux/arm/Dist: Add ioperm.c and sys/io.h.
1998-11-30 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* nscd/nscd_getpw_r.c: Include nscd_proto.h for prototypes.
* sysdeps/generic/errno-loc.c: Include <errno.h> for prototype,
undefine errno to get variable.
* sysdeps/unix/sysv/linux/i386/setfsuid.c: Include <sys/fsuid.h>
instead of <unistd.h> for prototype.
* sysdeps/unix/sysv/linux/i386/setfsgid.c: Likewise.
1998-11-30 Ulrich Drepper <drepper@cygnus.com>
* misc/err.h: Correct comments and use protected attribute keywords.
Reported by Joseph Myers <jsm28@cam.ac.uk>.
1998-11-29 Roland McGrath <roland@baalperazim.frob.com>
* malloc/thread-m.h [_LIBC]: Include <bits/libc-tsd.h>, and
remove tsd stuff from pthreads/cthreads libc sections.
Use __libc_tsd_define for MALLOC key.
[_LIBC] (tsd_key_t, tsd_key_create): Define to a zero-size type and a
no-op, respectively.
[_LIBC] (tsd_setspecific, tsd_getspecific): Use __libc_tsd_get/set.
* elf/dl-error.c: Include <bits/libc-tsd.h>.
Use __libc_tsd_define for DL_ERROR key.
(tsd_setspecific, tsd_getspecific): Rewritten using __libc_tsd_get/set.
* sysdeps/mach/hurd/bits/libc-tsd.h: New file.
* sysdeps/generic/bits/libc-tsd.h: New file.
* Makefile (distribute): Add bits/libc-tsd.h.
1998-10-12 Roland McGrath <roland@baalperazim.frob.com>
* elf/dl-error.c: Remove kludge to check for ld.so load address.
There is no need if weak undefined symbols are not used in ld.so;
see linuxthreads/ChangeLog for changes to files
linuxthreads/sysdeps/pthread/bits/libc-lock.h and
linuxthreads/sysdeps/pthread/bits/libc-tsd.h.
1998-11-30 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* sysdeps/i386/bits/string.h (__memset_cc): Fix typo (s->__s).
* sysdeps/i386/i486/bits/string.h: Add prototypes for all new
inline functions.
* sysdeps/i386/bits/string.h: Likewise.
1998-11-30 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* sysdeps/unix/sysv/linux/alpha/bits/ipc.h: Remove ipc_kludge.
1998-11-30 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* db2/progs/db_load/db_load.c (main): Avoid -Wparentheses warning.
* math/math.h: Unconditionally include bits/mathdef.h. Declare
long double functions only if __NO_LONG_DOUBLE_MATH is not
defined.
* sysdeps/generic/bits/mathdef.h: Define only if __USE_ISOC9X.
Define __NO_LONG_DOUBLE_MATH.
* sysdeps/m68k/fpu/bits/mathdef.h: Define only if __USE_ISOC9X.
* sysdeps/i386/fpu/bits/mathdef.h: Likewise.
1998-11-05 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/i386/fpu/bits/mathinline.h (__pow2): Fix fldl -> fld.
* sysdeps/libm-i387/s_fma.S: Optimize a bit.
* sysdeps/libm-i387/s_fmaf.S: Likewise.
1998-11-04 19:47 -0500 Zack Weinberg <zack@rabi.phys.columbia.edu>
* configure.in: Search for install-info and substitute it.
Determine whether install-info is the buggy Debian version
that doesn't understand INFO-DIR-SECTION.
* config.make.in: Add INSTALL_INFO and OLD_DEBIAN_INSTALL_INFO
to be substituted.
* manual/Makefile: If OLD_DEBIAN_INSTALL_INFO, give
install-info the --section argument it needs to work properly.
(dir-add.texinfo): Delete target.
(dir-add.info): Generate this directly. Sort entries. Put a
colon at the end of the INFO-DIR-SECTION line.
* manual/libc.texinfo: Put a colon at the end of the
@dircategory line.
1998-11-05 Paul Eggert <eggert@twinsun.com>
* time/mktime.c (__mktime_internal): Adopt the traditional (and
problematic) notion of what to do when tm_isdst doesn't match.
1998-11-04 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* posix/PTESTS: Fix spelling.
1998-11-04 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* elf/dlopenold.c: Compile only if DO_VERSIONING is also defined.
1998-11-03 H.J. Lu <hjl@gnu.org>
* libio/fileops.c (new_do_write): New function.
(_IO_new_do_write): Call new_do_write.
(_IO_new_file_xsputn): Likewise.
* libio/oldfileops.c (old_do_write): New function.
(_IO_old_do_write): Call old_do_write.
(_IO_old_file_xsputn): Likewise.
1998-10-27 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/i386/bits/select.h [!__USE_XOPEN]: Add special version
of __FD_* macros which use __fds_bits.
* sysdeps/generic/bits/select.h: Likewise.
Reported by Matt McLean <keys@yikes.com>.
1998-09-21 10:00 Ulrich Drepper <drepper@cygnus.com>
* string/bits/string2.h: Add mempcpy optimization.
* sysdeps/generic/mempcpy.c: Undefined __mempcpy.
* intl/localealias.c: Define mempcpy only if not already defined.
* sysdeps/i386/i486/bits/string.h: Define ffsl only if not already
defined.
1998-09-20 10:48 -0400 Zack Weinberg <zack@rabi.phys.columbia.edu>
* csu/abi-note.S: Emit the note directly instead of defining
a preprocessor macro that's only used once. Don't include sysdep.h.
* abi-tags: Generalize Solaris entry.
1998-09-18 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/unix/bsd/getpt.c (__libc_ptyname1, __libc_ptyname2):
Change to array to avoid runtime relocation.
* sysdeps/unix/sysv/linux/ptsname.c: Update declarations.
1998-09-21 12:22 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* malloc/Makefile ($(objpfx)libmcheck.a): Fix use of $(LN_S).
* math/Makefile ($(objpfx)libieee.a): Likewise.
1998-09-21 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/generic/getpt.c: Fix order of argument to weak_alias.
Patch by John Tobey <jtobey@banta-im.com>.
1998-09-12 Mark Kettenis <kettenis@phys.uva.nl>
* sysdeps/generic/segfault.c (install_handler): Install signal
handler with SA_ONSTACK instead of setting the stack flags to
SS_ONSTACK. Do not install handler for SIGSTKFLT if it is not
defined.
1998-09-12 14:24 -0400 Zack Weinberg <zack@rabi.phys.columbia.edu>
* signal/signal.h: Fix multiple inclusion guard to cover the
entire file.
* wcsmbs/wchar.h: Remove prototype of internal function
__mbsrtowcs.
* sysdeps/i386/i486/bits/string.h (memchr): Don't do
arithmetic on `void *'.
1998-08-25 11:43 Ulrich Drepper <drepper@cygnus.com>
* elf/elf.h: Add syminfo stuff and other DT_* from Solaris' ELF.
1998-08-25 Bernd Schmidt <crux@Pool.Informatik.RWTH-Aachen.DE>
* argp/argp.h: Use __inline__ not inline.
* sysdeps/i386/bits/select.h (FD_ZERO): Rewrite asm not to indicate
an input register as being clobbered.
* sysdeps/i386/memset.c (memset): Likewise.
* sysdeps/i386/bzero.c (__bzero): Likewise.
* sysdeps/i386/memcopy.h ({BYTE,WORD}_COPY_[FB]WD): Likewise.
1998-08-25 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* stdlib/jrand48_r.c (__jrand48_r): Set also upper half of result.
Fixes PR libc/757 (Reported by Michael Creutz <creutz@bnl.gov).
1998-07-02 21:51 Ulrich Drepper <drepper@cygnus.com>
* Makeconfig: Define list of subdirs as all-subdirs and make subdirs
a copy.
* Makefile: Add rules to generate map files.
(distribute): Remove libc.map, add Versions.def and versions.awk.
* Makerules: Change rules to find map files on common-objpfx.
* elf/Makefile: Likewise.
* md5-crypt/Makefile: Likewise.
* nis/Makefile (libnsl-map): Remove.
* Versions.def: New file.
* versions.awk: New file.
* argp/Versions: New file.
* assert/Versions: New file.
* catgets/Versions: New file.
* csu/Versions: New file.
* ctype/Versions: New file.
* db/Versions: New file.
* debug/Versions: New file.
* dirent/Versions: New file.
* elf/Versions: New file.
* gmon/Versions: New file.
* grp/Versions: New file.
* hesiod/Versions: New file.
* hurd/Versions: New file.
* iconv/Versions: New file.
* inet/Versions: New file.
* intl/Versions: New file.
* io/Versions: New file.
* libio/Versions: New file.
* linuxthreads/Versions: New file.
* locale/Versions: New file.
* login/Versions: New file.
* malloc/Versions: New file.
* math/Versions: New file.
* md5-crypt/Versions: New file.
* misc/Versions: New file.
* nis/Versions: New file.
* nss/Versions: New file.
* posix/Versions: New file.
* pwd/Versions: New file.
* resolv/Versions: New file.
* resource/Versions: New file.
* rt/Versions: New file.
* setjmp/Versions: New file.
* shadow/Versions: New file.
* signal/Versions: New file.
* socket/Versions: New file.
* stdio/Versions: New file.
* stdio-common/Versions: New file.
* stdlib/Versions: New file.
* streams/Versions: New file.
* string/Versions: New file.
* sunrpc/Versions: New file.
* sysdeps/alpha/Versions: New file.
* sysdeps/alpha/fpu/Versions: New file.
* sysdeps/i386/Versions: New file.
* sysdeps/sparc/Versions: New file.
* sysdeps/unix/sysv/Versions: New file.
* sysdeps/unix/sysv/linux/Versions: New file.
* sysdeps/unix/sysv/linux/alpha/Versions: New file.
* sysdeps/unix/sysv/linux/i386/Versions: New file.
* sysdeps/unix/sysv/linux/mips/Versions: New file.
* sysvipc/Versions: New file.
* termios/Versions: New file.
* time/Versions: New file.
* wcsmbs/Versions: New file.
* wctype/Versions: New file.
* libc.map: Removed.
* db/libdb.map: Removed.
* elf/libdl.map: Removed.
* hesiod/libnss_hesiod.map: Removed.
* hurd/libhurduser.map: Removed.
* hurd/libmachuser.map: Removed.
* linuxthreads/libpthread.map: Removed.
* locale/libBrokenLocale.map: Removed.
* login/libutil.map: Removed.
* math/libm.map: Removed.
* md5-crypt/libcrypt.map: Removed.
* nis/libnsl.map: Removed.
* nis/libnsl_compat.map: Removed.
* nis/libnss_nis.map: Removed.
* nis/libnss_nisplus.map: Removed.
* nss/libnss_db.map: Removed.
* nss/libnss_files.map: Removed.
* resolv/libnss_dns.map: Removed.
* resolv/libresolv.map: Removed.
* rt/librt.map: Removed.
* elf/dl-load.c (fillin_rpath): Fix test for trusted directory.
Fix typos.
* elf/rtld.c (process_dl_debug): Recognize 'all'.
(process_envvars): LD_BIND_NOW must be followed by y, Y, or 1.
* sysdeps/generic/elf/backtracesyms.c: Allocate string memory of
correct size.
* sysdeps/unix/sysv/linux/getsysstats.c (get_proc_path): Fix typo
in comment.
1998-06-01 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/i386/fpu/bits/mathinline.h: Use ((__unused__)) instead
of ((unused)). Reported by Bruno Haible.
1998-05-31 Philip Blundell <philb@gnu.org>
* sysdeps/unix/sysv/linux/arm/sysdep.S: Use C_SYMBOL_NAME when
referring to errno and _errno.
* sysdeps/arm/fpu/feholdexcpt.c: New file.
* sysdeps/i386/fpu_control.h: Fix typo.
* sysdeps/arm/bits/setjmp.h (__jmp_buf): Remove floating-point support.
(_JMPBUF_UNWINDS): Added.
* sysdeps/arm/fpu/bits/setjmp.h: New file.
1998-05-25 Gordon Matzigkeit <gord@profitpress.com>
* sysdeps/mach/hurd/Makefile: Use the `before-compile' target in
order to build header files, not `generated'.
* Rules (before-compile): New target which depends on all
$(before-compile) files.
1998-05-08 12:26 Ulrich Drepper <drepper@cygnus.com>
* iconv/gconv_int.h (struct gconv_module): Remove cost field and add
cost_hi and cost_lo.
* iconv/gconv_conf.c (builtin_modules): Initialize cost_hi from
Cost parameter and set cost_lo to INT_MAX.
(add_module): Take new parameter and use it to initialize cost_lo.
(read_conf_file): Count modules being loaded and use counter for
new parameter to add_module.
* iconv/gconv_db.c (find_derivation): When look for cost examine
cost_hi and cost_lo.
1998-05-08 10:52 Ulrich Drepper <drepper@cygnus.com>
* string/bits/string2.h: Don't use unsigned char * unless really
necessary since this disturbs C++.
* sysdeps/i386/i486/bits/string.h: Likewise.
Patch by Bernd Schmidt <crux@Pool.Informatik.RWTH-Aachen.DE>.
1998-05-08 13:53 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* malloc/malloc.c (top_check): Fix last change.
1997-05-07 13:26 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* Makerules (lib): Put back dependency on lib-noranlib.
($(subdirs-stamps)): Remove dependency on stamp.* again.
1998-05-07 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/i386/fpu/bits/mathinline.h: Use long long int also for
test in __pow2 implementation.
1998-05-07 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* malloc/malloc.c (top_check): Add void as parameter to silent gcc.
1998-05-06 12:51 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/i386/fpu/bits/mathinline.h (pow): Use long long int for
test for integer.
* sysdeps/libm-i387/e_pow.S: Correctly shift double word.
* sysdeps/libm-i387/e_powl.S: Likewise.
1998-03-31 Wolfram Gloger <wmglo@dent.med.uni-muenchen.de>
* malloc/malloc.c (chunk2mem_check, top_check): New functions.
(malloc_check, free_check, realloc_check, memalign_check): Use
them to improve overrun checking. Overruns of a single byte and
corruption of the top chunk are now detected much more reliably.
1998-05-06 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* math/libm-test.c (pow_test): Add test for special value from PR
libc/590.
1998-04-07 16:18 Ulrich Drepper <drepper@cygnus.com>
* libc.map: Add __asprintf to GLIBC_2.1.
* elf/dlerror.c: Use __asprintf, not asprintf.
* libio/stdio.h: Declare __asprintf.
* stdio-common/asprintf.c: Define as __asprintf and make asprintf
a weak alias.
* elf/dl-minimal.c: Add definition of strtol and strtoul (und friends)
to avoid inclusion from libc_pic.a.
* elf/dl-runtime.c: Undo last patch.
* stdlib/strtod.c: Don't use mbtowc, use btowc.
* sysdeps/i386/dl-machine.h (dl_platform_init): Don't use "i386"
as default, use NULL.
1998-04-03 16:29 Philip Blundell <pb@nexus.co.uk>
Based on patch from Pat Beirne:
* sysdeps/unix/sysv/linux/arm/sysdep.S (__syscall_error): Same for
PIC and non-PIC now. Correctly negate error number.
(errno): Use `%' not `@' in .type directives.
1998-04-03 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/i386/strtok.S: Change to use single exit point.
* sysdeps/i386/i686/strtok.S: Likewise.
1998-04-02 Ulrich Drepper <drepper@cygnus.com>
* stdlib/isomac.c: Use -isystem instead of -I for system include
dir.
1998-03-30 08:05 H.J. Lu <hjl@gnu.org>
* resolv/res_comp.c (underscorechar): New.
(middlechar): Allow '_'.
1998-04-02 Ulrich Drepper <drepper@cygnus.com>
* intl/explodename.c (stdlib.h): Include that file only if
STDC_HEADERS or _LIBC.
(string.h): Include that file only if HAVE_STRING_H or _LIBC.
Patch by Philippe De Muyter <phdm@macqel.be>.
1998-04-01 21:08 Zack Weinberg <zack@rabi.phys.columbia.edu>
* aclocal.m4 (AC_PROG_CC_LOCAL): Remove superfluous tests.
(AC_PROG_CHECK_VER): New macro.
* configure.in: Use AC_PROG_CHECK_VER to check versions of
gcc, gmake, msgfmt, makeinfo. Remove superfluous tests.
1998-04-02 15:13 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/unix/sysv/linux/i386/i686/sysdep.h: New file.
* sysdeps/i386/i686/strtok.S: New file
* sysdeps/i386/i686/strtok_r.S: New file
1998-04-02 Mark Kettenis <kettenis@phys.uva.nl>
* posix/unistd.h: [__USE_FILE_OFFSET64] (lseek): Change return
type to __off64_t.
* libio/stdio.h [__USE_FILE_OFFSET64] (fseeko): Declare offset
parameter as __off64_t instead of __off_t.
(ftello): Make alias for ftello64 instead of ftello. Change
return type to __off64_t.
1998-04-02 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/i386/bits/string.h: Fix various typos.
Patch by Horst von Brand <vonbrand@sleipnir.valparaiso.cl>.
* sysdeps/unix/sysv/linux/getcwd.c: Use getcwd syscall in Linux 2.1.92.
1998-04-02 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/unix/sysv/linux/i386/chown.c: Handle old kernels without
lchown syscall correctly. [PR libc/541].
1998-03-30 12:53 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/i386/i486/bits/string.h (__strcat_c) [__i686__]: Correct
scanning for \0.
(__strncat_g): Add i686 specific code.
1998-03-30 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* manual/install.texi (Reporting Bugs): Ask to include section
names in reports.
1998-03-28 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/unix/sysv/linux/Makefile ($(objpfx)syscall-%.h): Emit
guard against direct inclusion.
1998-03-28 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
Rework support for libc_nonshared.a:
* Makeconfig (object-suffixes-for-libc): New variable.
* Rules: Remove handling of static-only and shared-only routines.
* Makerules: Handle them here instead. Use
object-suffixes-for-libc instead of object-suffixes when dealing
with libc objects.
(object-suffixes-for-rules): Remove variable.
(elide-routines.oS): Elide all routines except static-only
routines.
($(objpfx)stamp.oS): Special rule for when static-only-routines is
empty.
(installed-libcs): Remove special case for .oS.
(rmobjs): Likewise.
1998-03-28 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* Makefile (do-collate-test, do-xfrm-test, do-tst-fmon,
do-tst-rpmatch): New targets.
(test): Use them.
(install-locales): Ignore comment lines.
1998-03-28 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* elf/Makefile ($(objpfx)ld.so): Depend on version script.
($(objpfx)trusted-dirs.h): Depend also on $(..)Makeconfig.
($(objpfx)rtldtbl.h): Likewise.
(CPPFLAGS-dl-load.c): Fix reference to object directory.
1998-03-30 09:36 Ulrich Drepper <drepper@cygnus.com>
* manual/string.texi (Finding Tokens in a String): Extend strsep
description and correct example.
1998-03-28 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* manual/socket.texi: Remove misguided explicit line breaks and
fix the formatting problem instead by reformulating the
paragraphs.
* manual/filesys.texi: Likewise.
* manual/conf.texi: Likewise. Don't typeset table with index
fonts, that looks worse than a minimally overfull line.
1998-03-28 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* nscd/Makefile (nscd-modules): Move definition outside of
conditional.
* pwd/Makefile: Use have-thread-library to test for thread
library.
1998-03-30 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* nss/getXXent_r.c (INTERNAL): Remove unused variable current_nip.
* iconvdata/uhc.c (gconv): Remove unused variable idx.
1998-03-30 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/unix/sysv/linux/Dist: Add lddlibc4.c.
1998-03-29 16:50 Ulrich Drepper <drepper@cygnus.com>
* config.make.in (ldd-rewrite-script): New variable.
* configure.in: Substitute ldd-rewrite-script.
* elf/Makefile: Rewrite rules to generate ldd script.
* elf/ldd.bash.in: Allow handling of non-ELF binaries.
* elf/ldd.sh.in: Likewise.
* sysdeps/unix/sysv/linux/Makefile: Remove rule to install lddlibc4.
* sysdeps/unix/sysv/linux/configure.in: Define ldd_rewrite_script to
point to sed script for libc4 handling insertion for ix86, m68, SPARC.
* sysdeps/unix/sysv/linux/i386/Makefile: Add rule to install lddlibc4.
1998-03-26 15:20 Zack Weinberg <zack@rabi.phys.columbia.edu>
* inet/rcmd.c (iruserok): Remain setuid to the local user
while .rhosts is actually read, to make .rhosts-over-NFS work
(PR libc/524). Use iruserfopen() for security checks on both
hosts.equiv and .rhosts. General cleanup.
(iruserfopen): New function, performs careful checking on
hosts.equiv/.rhosts files. Disallows all the old forbidden
stuff plus hard links to files.
1998-03-29 09:26 Ulrich Drepper <drepper@cygnus.com>
* setjmp/tst-setjmp.c: Don't test __setjmp, test _setjmp instead.
1998-03-29 02:02 H.J. Lu <hjl@gnu.org>
* sysdeps/i386/i486/bits/string.h: Fix typos.
* nss/nsswitch.c (__nss_lookup): Fix the bogus checking for
"adjusted for next function".
1998-03-28 00:13 H.J. Lu <hjl@gnu.org>
* sysdeps/unix/sysv/linux/alpha/readdir.c (__readdir64): New
strong alias.
* sysdeps/unix/sysv/linux/alpha/syscalls.list (socket): Added.
* libc.map (__ieee_get_fp_control, __ieee_set_fp_control):
Added. Used by libm.so on alpha.
1998-03-28 Thorsten Kukuk <kukuk@vt.uni-paderborn.de>
* intl/bindtextdom.c [_LIBC]: Define strdup only if not yet
defined.
1998-03-27 07:29 H.J. Lu <hjl@gnu.org>
* Makerules (object-suffixes-for-rules): Add .oS only for
building shared library.
Add ranlib rule for nonshared library.
(rmobjs): Fix typo.
* Makeconfig (libtype.oS, CFLAGS-.oS, CPPFLAGS-.oS): Moved
into for shared library only.
(CPPFLAGS-.oS): Add -DPIC.
(libtypes): Use $(object-suffixes-for-rules) instead of
$(object-suffixes).
1998-03-28 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/unix/sysv/linux/Makefile (inhibit-stdio_lim): Compile
and install lddlibc4.
1998-03-28 09:13 Zack Weinberg <zack@rabi.phys.columbia.edu>
* iconvdata/gap.pl: Gobble rest of line with a scalar, not a
hash.
* iconvdata/gaptab.pl: Likewise.
1998-03-25 Ulrich Drepper <drepper@cygnus.com>
* glibcbug.in: Create files safely when mktemp is not available.
* sysdeps/unix/sysv/linux/adjtime.c: Make weak alias appear again.
Patch by a sun <asun@saul1.u.washington.edu>.
1998-03-25 Thorsten Kukuk <kukuk@vt.uni-paderborn.de>
* libc.map: Rename getname to getnetname.
1998-03-25 13:35 Ulrich Drepper <drepper@cygnus.com>
* manual/maint.texi: Use supported platform in examples.
* manual/install.texi: Document some installation tips.
1998-03-25 10:56 Ulrich Drepper <drepper@cygnus.com>
* posix/wordexp.c: Fix some memory leaks and makes $* more efficient.
Fix a bug so that it returns an error if a numeric parameter is
unset and WRDE_UNDEF is set.
Patch by Andreas Schwab and Tim Waugh.
* posix/wordexp-test.c: Add new new test.
1998-03-25 Ulrich Drepper <drepper@cygnus.com>
* posix/regex.c (regex_compile): Last patch wasn't entirely
correct. Patch by Alain Magloire <alainm@rcsm.ece.mcgill.ca>.
1998-03-24 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* manual/filesys.texi (Scanning Directory Content): Fix typo.
1998-03-25 09:24 Bernd Schmidt <crux@Pool.Informatik.RWTH-Aachen.DE>
* sysdeps/i386/bits/string.h: Fix all assembler statements so that
clobbered registers don't appear as operands.
1998-03-09 08:21 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/unix/sysv/linux/chown.c: Moved to ...
* sysdeps/unix/sysv/linux/i386/chown.c: ...here.
* sysdeps/unix/sysv/linux/i386/chown.c: Correct versioning information.
* libc.map: Add chown to GLIBC_2.1.
* sysdeps/unix/sysv/linux/i386/syscalls.list: Add s_chown here.
* sysdeps/unix/sysv/linux/syscalls.list: Remove s_chown here.
1998-03-06 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/generic/ffs.S: Rename function to __ffs and make ffs a
weak alias.
* sysdeps/alpha/ffs.c: Likewise.
* sysdeps/am29k/ffs.c: Likewise.
* sysdeps/i386/ffs.c: Likewise.
* sysdeps/i960/ffs.c: Likewise.
* sysdeps/m68k/ffs.c: Likewise.
* sysdeps/m88k/ffs.c: Likewise.
* sysdeps/powerpc/ffs.c: Likewise.
* sysdeps/rs6000/ffs.c: Likewise.
* sysdeps/vax/ffs.s: Likewise.
* string/string.h: Declare __ffs.
* libc.map: Export it.
* elf/dl-profile.c (_dl_start_profile): Use __ffs instead of
__builtin_ffs, which is not guaranteed to be namespace clean.
1998-03-06 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* elf/sprof.c: Rewrite symbol handling to use the normal symbol
table, which is much more likely to exist than debugging symbols.
(printsym): Remove const.
(load_shobj): Don't use _dl_pagesize. Fix mapping of section
header table.
* libc.map: Export __profile_frequency, used by elf/sprof, to
avoid infinite recursion during startup.
1998-03-09 12:16 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
1998-03-08 14:58 Ulrich Drepper <drepper@cygnus.com>
* Makeconfig (nisobjdir): Set to path to nis directory.
(rpath-link): Add nisobjdir.
Patch by Sven Verdoolaege <skimo@kotnet.org>.
* elf/Makefile: Pretty print.
* elf/dl-lookup.c: Include unistd.h.
* elf/dl-runtime.c: Likewise.
* localedata/Makefile (test-srcs): Add tst-rpmatch.
(distribute): Add tst-rpmatch.sh.
(tests): Add tst-rpmatch to dependency list and run tst-rpmatch.sh.
New tests for rpmatch function by
Jochen Hein <jochen.hein@delphi.central.de>.
* localedata/tst-rpmatch.c: New file.
* localedata/tst-rpmatch.sh: New file.
* localedata/locales/de_DE: Correct yesexpr and noexpr.
* localedata/locales/de_AT: Likewise.
* posix/getopt.c: Update contact address.
* posix/getopt1.c: Pretty print.
* sysdeps/generic/libc-start.c: Do most of the initialization now
here instead of in start.S.
* sysdeps/unix/sysv/linux/libc-start.c: Likewise.
* sysdeps/i386/elf/start.S: Remove most of the initialization code.
* sysdeps/unix/sysv/linux/i386/profil-counter.h: No need for
profil_counter to be public.
1998-03-08 13:06 Tim Waugh <tim@cyberelk.demon.co.uk>
* posix/wordexp.c (parse_arith): Now works for negative numbers too.
(parse_param): Coded parameter length expansion (${#var}).
(parse_param): Handling for "=", "+", "-", and the ":" versions added.
(parse_param): Cleaned up (fixed) error handling.
* posix/wordexp-test.c: IFS now includes non-whitespace character
(comma). Added more tests.
1998-03-06 17:04 Ulrich Drepper <drepper@cygnus.com>
* libc.map: Add _dl_debug_impcalls, _dl_debug_fd, _dl_sysdep_output,
__libc_start_main.
* csu/Makefile (routines): Add libc-start.
* elf/dl-error.c: Remove declaration of _dl_argv. Include <unitsd.h>.
* elf/dl-lookup.c: Likewise.
* elf/dl-version.c: Likewise.
* sysdeps/i386/dl-machine.h: Likewise.
* elf/link.h: Declare _dl_argv, _dl_debug_fd.
Declare _dl_sysdep_output. Make _dl_sysdep_fatal, _dl_sysdep_error and
_dl_sysdep_message macros which use _dl_sysdep_output.
* elf/dl-fini.c: Write out which destructor is called while debugging.
* elf/dl-init.c: Likewise for constructor.
* elf/dl-load.c: Use _dl_debug_message instead of _dl_sysdep_message.
* elf/dl-misc.c: Remove _dl_sysdep_fatal, _dl_sysdep_error and
_dl_sysdep_message. Add _dl_sysdep_output.
* elf/rtld.c: Recognize LD_DEBUG_OUTPUT. Set _dl_debug_fd if
this file can be opened.
For LD_DEBUG=libs also set _dl_debug_impcalls.
* sysdeps/generic/dl-cache.c: Include unistd.h.
* sysdeps/generic/libc-start.c: New file.
* sysdeps/i386/elf/start.S: Don't call main directly, call
* sysdeps/unix/sysv/linux/libc-start.c: New file.
__libc_start_main instead.
* elf/Makefile ($(objpfx)ld.so): Add $(load-map-file) as dependency.
1998-03-06 11:35 Ulrich Drepper <drepper@cygnus.com>
* posix/wordexp-test.c: Change testsuite so that it can run even
for ~root != /root.
1998-03-06 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* math/libm-test.c (catanh_test): Change epsilon for gcc 2.8.1.
1998-03-05 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/unix/sysv/linux/i386/sysdep.h (SYSCALL_ERROR_HANDLER):
Don't store into global errno if we already store through
__errno_location.
* sysdeps/unix/i386/sysdep.S: Likewise.
* sysdeps/unix/alpha/sysdep.S: Likewise.
* sysdeps/unix/sysv/linux/sparc/sparc64/brk.S: Likewise.
* sysdeps/unix/sysv/linux/sparc/sparc64/clone.S: Likewise.
* sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h: Likewise. Add
missing return to SYSCALL_ERROR_HANDLER for (!_LIBC_REENTRANT &&
PIC).
1998-03-05 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/generic/sysdep.h (L): Remove definition.
* sysdeps/i386/sysdep.h (L): Define it here instead.
1998-03-05 Thorsten Kukuk <kukuk@vt.uni-paderborn.de>
* nss/getXXbyYY_r.c: Check __nss_not_use_nscd_* variable for
running nscd.
* nscd/nscd_getgr_r.c: Set __nss_not_use_nscd_group variable.
* nscd/nscd_getpw_r.c: Set __nss_not_use_nscd_passwd variable.
* nscd/nscd_proto.h: Declare __nss_not_use_nscd_* variables.