2000-10-14 Ulrich Drepper <drepper@redhat.com>
* math/libm-test.inc (frexp_test): Add L suffix also to parameters.
(hypot_test): Likewise.
* sysdeps/generic/printf_fphex.c: Compute width of decimal point
string correctly. Handle padding correctly.
* sysdeps/ia64/fpu/printf_fphex.c: Use sizeof in _itowa parameters
correctly.
* sysdeps/ieee754/ldbl-128/printf_fphex.c: Likewise.
* sysdeps/ieee754/ldbl-96/printf_fphex.c: Likewise.
2000-10-12 Alan Modra <alan@linuxcare.com.au>
* FAQ.in: Add --start-group and --end-group.
2000-10-12 Alan Modra <alan@linuxcare.com.au>
* malloc/memusage.c: Conditionalize stack usage calculation on
stack direction.
2000-10-12 Alan Modra <alan@linuxcare.com.au>
* config.h.in: Add ASM_LINE_SEP.
* configure.in: Add test for comment and line separators.
* include/libc-symbols.h: Define and use ASM_LINE_SEP, and add tabs to
placate some hppa assemblers.
* sysdeps/hppa/sysdep.h: Likewise.
* sysdeps/gnu/siglist.c: Insert \n and \t into inline asm.
* sysdeps/unix/sysv/linux/errlist.c: Likewise.
2000-10-12 David Huggins-Daines <dhd@linuxcare.com>
* sysdeps/unix/sysv/linux/Makefile: Include <bits/initspin> in
$(sysdep_headers).
* sysdeps/unix/sysv/linux/bits/initspin.h: Dummy version for
non-threaded platforms.
2000-10-12 David Huggins-Daines <dhd@linuxcare.com>
* configure.in: Add definitions for hppa.
* elf/elf.h: Add PLABEL32 relocation for hppa ELF32, comments
for IPLT and EPLT relocations.
* shlib-versions: Version symbol definitions for hppa-linux.
* sysdeps/unix/sysv/linux/configure.in: Define $arch_minimum_kernel
for hppa.
2000-10-12 David Huggins-Daines <dhd@linuxcare.com>
* sysdeps/hppa/Makefile: New file.
* sysdeps/hppa/Versions: New file.
* sysdeps/hppa/setjmp.S: New file.
* sysdeps/hppa/__longjmp.S: New file.
* sysdeps/hppa/bits/setjmp.h: New file.
* sysdeps/hppa/frame.h: New file.
* sysdeps/hppa/add_n.s: Don't use %r19 (linkage table pointer).
* sysdeps/hppa/sub_n.s: Likewise.
* sysdeps/hppa/lshift.s: Likewise.
* sysdeps/hppa/rshift.s: Likewise.
* sysdeps/hppa/udiv_qrnnd.s: Likewise.
* sysdeps/hppa/hppa1.1/addmul_1.s: Likewise.
* sysdeps/hppa/hppa1.1/submul_1.s: Likewise.
* sysdeps/hppa/hppa1.1/mul_1.s: Likewise.
* sysdeps/hppa/hppa1.1/udiv_qrnnd.s: Likewise.
* sysdeps/hppa/dl-machine.h: New file.
* sysdeps/hppa/dl-fptr.c: New file (note that this is almost
identical to the IA-64 one).
* sysdeps/hppa/dl-lookupcfg.h: Likewise.
* sysdeps/hppa/dl-symaddr.c: Likewise.
* sysdeps/hppa/elf/initfini.c: New file.
* sysdeps/hppa/elf/start.S: New file.
* sysdeps/hppa/fpu/bits/fenv.h: New file.
* sysdeps/hppa/fpu/fclrexcpt.c: New file.
* sysdeps/hppa/fpu/fedisblxcpt.c: New file.
* sysdeps/hppa/fpu/feenablxcpt.c: New file.
* sysdeps/hppa/fpu/fegetenv.c: New file.
* sysdeps/hppa/fpu/fegetexcept.c: New file.
* sysdeps/hppa/fpu/fegetround.c: New file.
* sysdeps/hppa/fpu/feholdexcpt.c: New file.
* sysdeps/hppa/fpu/fesetenv.c: New file.
* sysdeps/hppa/fpu/fesetround.c: New file.
* sysdeps/hppa/fpu/feupdateenv.c: New file.
* sysdeps/hppa/fpu/fegetexcptflg.c: New file.
* sysdeps/hppa/fpu/fraiseexcpt.c: New file.
* sysdeps/hppa/fpu/fsetexcptflg.c: New file.
* sysdeps/hppa/fpu/ftestexcept.c: New file.
* sysdeps/unix/sysv/linux/hppa/Makefile: New file.
* sysdeps/unix/sysv/linux/hppa/Versions: New file.
* sysdeps/unix/sysv/linux/hppa/syscalls.list: New file.
* sysdeps/unix/sysv/linux/hppa/sysdep.c: New file.
* sysdeps/unix/sysv/linux/hppa/sysdep.h: New file.
* sysdeps/unix/sysv/linux/hppa/bits/fcntl.h: New file.
* sysdeps/unix/sysv/linux/hppa/bits/ioctls.h: New file.
* sysdeps/unix/sysv/linux/hppa/bits/mman.h: New file.
* sysdeps/unix/sysv/linux/hppa/bits/sigaction.h: New file.
* sysdeps/unix/sysv/linux/hppa/bits/signum.h: New file.
* sysdeps/unix/sysv/linux/hppa/brk.c: New file.
* sysdeps/unix/sysv/linux/hppa/clone.S: New file.
* sysdeps/unix/sysv/linux/hppa/socket.S: New file.
* sysdeps/unix/sysv/linux/hppa/syscall.S: New file.
* sysdeps/unix/sysv/linux/hppa/setrlimit.c: New file.
* sysdeps/unix/sysv/linux/hppa/getrlimit.c: New file.
* sysdeps/unix/sysv/linux/hppa/getrlimit64.c: New file.
* sysdeps/unix/sysv/linux/hppa/kernel_sigaction.h: New file.
* sysdeps/unix/sysv/linux/hppa/kernel_stat.h: New file.
* sysdeps/unix/sysv/linux/hppa/mmap.c: New file.
* sysdeps/unix/sysv/linux/hppa/profil-counter.h: New file.
* sysdeps/unix/sysv/linux/hppa/procfs.h: New file.
* sysdeps/unix/sysv/linux/hppa/ucontext.h: New file.
* sysdeps/unix/sysv/linux/hppa/umount.c: New file.
2000-10-12 Alan Modra <alan@linuxcare.com.au>
* sysdeps/hppa/hppa1.1/Implies: New file.
* sysdeps/hppa/memusage.h: New file.
2000-10-28 Jes Sorensen <jes@linuxcare.com>
* sysdeps/unix/sysv/linux/ia64/Versions: Export ioperm, iopl, inb,
inw, inl, _inb, _inw, _inl, outb, outw, outl, _outb, _outw,
_outl. Reported by Bill Nottingham.
2000-04-06 Andreas Schwab <schwab@suse.de>
* sysdeps/ia64/dl-machine.h (TRAMPOLINE_TEMPLATE): Save and
restore register r8 for functions that return a structure.
2000-10-12 Jakub Jelinek <jakub@redhat.com>
* math/libm-test.inc (M_PI_6l, M_E2l, M_E3l, M_2_SQRT_PIl,
M_SQRT_PIl): Increase precision.
(cbrt_test): If cbrt is not implemented, don't test it.
Add L suffix to double constants in results which differ from their
L suffixed counterparts.
(exp10_test, fmod_test, frexp_test, hypot_test, sqrt_test): Likewise.
* sysdeps/sparc/sparc64/fpu/libm-test-ulps: Update.
2000-10-11 Jakub Jelinek <jakub@redhat.com>
* inet/rexec.c (rexec_af): Convert rport to host order before
passing it to snprintf.
2000-10-14 Ulrich Drepper <drepper@redhat.com>
* sysdeps/gnu/netinet/tcp.h: Use u_intXX_t types instead of
uintXX_t since this is what <sys/types.h> defines and we include
this header. Reported by Bernhard Rosenkraenzer <bero@redhat.de>.
* intl/localealias.c (read_alias_file): Update string pointers
in map[] if realloc() changed the values.
Patch by Jakub Jelinek <jakub@redhat.com>.
* manual/stdio.texi: Update printf extension documentation after
z became a valid modifier.
Patch by Joseph S. Myers <jsm28@cam.ac.uk>.
* timezone/africa: Update from tzcode2000g and tzdata2000g.
* timezone/asia: Likewise.
* timezone/australasia: Likewise.
* timezone/backward: Likewise.
* timezone/europe: Likewise.
* timezone/iso3166.tab: Likewise.
* timezone/northamerica: Likewise.
* timezone/southamerica: Likewise.
* timezone/zone.tab: Likewise.
building with the default options.
2000-10-13 Geoffrey Keating <geoffk@cygnus.com>
* sysdeps/i386/fpu/libm-test-ulps: Update ULPs for my Pentium III
building with the default options.
2000-10-09 Jakub Jelinek <jakub@redhat.com>
* sysdeps/ieee754/ldbl-128/s_nexttoward.c (__nexttoward): If x == y,
return y not x.
* manual/arith.texi (nextafter): Document it.
* sysdeps/ieee754/ldbl-96/s_nexttoward.c: Fix a comment.
2000-10-07 Ulrich Drepper <drepper@redhat.com>
* include/features.h (__STDC_ISO_10646__): Set to correct date.
Patch by Markus Kuhn <Markus.Kuhn@cl.cam.ac.uk>.
2000-10-06 Jes Sorensen <jes@linuxcare.com>
* sysdeps/ia64/fpu/fraiseexcpt.c (feraiseexcept): Implement
overflow generation by adding DBL_MAX to DBL_MAX instead of
setting the bits manually in the fpsr and generating the exception
with kill() if necessary.
(feraiseexcept): Implement underflow by dividing DBL_MIN by
DBL_MIN - similar to the overflow change described above.
2000-08-27 H.J. Lu <hjl@gnu.org>
* sysdeps/unix/sysv/linux/ia64/clone.S: Make it a dummy as clone
is not supported under Linux/ia64, use clone2.
2000-10-06 Jakub Jelinek <jakub@redhat.com>
* malloc/malloc.h (__THROW): Define to nothing if not gcc.
* misc/sys/cdefs.h (__THROW): Likewise.
2000-10-05 Jakub Jelinek <jakub@redhat.com>
* sysdeps/sparc/sparc64/fpu/libm-test-ulps: New file.
2000-10-02 Jakub Jelinek <jakub@redhat.com>
* sunrpc/svc_udp.c (svcudp_recv): Set msg_controllen to all
remaining xp_pad space.
2000-10-05 Jakub Jelinek <jakub@redhat.com>
* elf/dl-close.c (_dl_close): Check imap's l_flags_1 for
DF_1_NODELETE, not list[i]'s.
2000-10-02 Jakub Jelinek <jakub@redhat.com>
* elf/nextmod1.c (failing_rtld_next_use): Ensure it is not tail call
optimized.
* sysdeps/sparc/sparc32/fpu/libm-test-ulps: New file.
2000-10-02 Andreas Jaeger <aj@suse.de>
* sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Synch with Linux
2.4.0-test9-pre8.
* sysdeps/unix/sysv/linux/alpha/bits/resource.h: Add RLIMIT_LOCKS.
2000-09-29 H.J. Lu <hjl@gnu.org>
* sysdeps/ia64/fpu/libm-test-ulps: Updated for long double.
2000-09-29 H.J. Lu <hjl@gnu.org>
* sysdeps/ia64/bits/huge_val.h: New file.
2000-09-29 H.J. Lu <hjl@gnu.org>
* sysdeps/unix/sysv/linux/ia64/dl-cache.h: New.
* elf/cache.c (print_entry): Replace 64bit with IA-64 in message
for x86/IA-64 binary.
2000-09-29 Andreas Schwab <schwab@suse.de>
* sysdeps/unix/sysv/linux/ia64/readelflib.c: New file.
* elf/cache.c (print_entry): Check for FLAG_IA64_LIB64.
Use nscd_ssize_t where appropriate.
* nscd/nscd_gethst_r.c (nscd_gethst_r): Use nscd_ssize_t instead of
ssize_t where appropriate.
* sysdeps/generic/nscd-types.h: New file.
* sysdeps/alpha/nscd-types.h: New file.
2000-09-29 Mark Kettenis <kettenis@gnu.org>
* sysdeps/mach/hurd/dl-sysdep.c (__access): New function. Dummy
implementation for use by the dynamic linker.
2000-09-29 David Mosberger <davidm@hpl.hp.com>
* sysdeps/unix/sysv/linux/ia64/sysdep.S (__ia64_syscall): Cleanup.
* sysdeps/unix/sysv/linux/ia64/sysdep.h (CALL_MCOUNT): Implement.
2000-06-10 David Mosberger <davidm@hpl.hp.com>
* sysdeps/unix/sysv/linux/ia64/setjmp.S: Fix it so it actually
works: call to __sigjmp_save must be done unconditionally to
ensure jmp_buf is initialized properly.
2000-09-27 Andreas Jaeger <aj@suse.de>
* sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Synch with Linux
2.4.0-test9-pre7.
2000-09-29 Jakub Jelinek <jakub@redhat.com>
* nscd/nscd-client.h (NSCD_VERSION): Bump to 3.
Use int32_t where appropriate.
* nscd/nscd_gethst_r.c (nscd_gethst_r): Use uint32_t instead of size_t
where appropriate.
* nscd/nscd_getgr_r.c (nscd_getgr_r): Likewise.
* nscd/hstcache.c (cache_addhst): Likewise.
* nscd/grpcache.c (cache_addgr): Likewise.
2000-09-28 Ulrich Drepper <drepper@redhat.com>
* sysdeps/alpha/dl-machine.h (elf_machine_rela): Handle unaligned
relocation also for R_ALPHA_RELATIVE.
Reported by Ivan Kokshaysky <ink@jurassic.park.msu.ru>.
2000-09-28 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
* sysdeps/unix/sysv/linux/kernel-features.h: Add __ASSUME_IPC64, only
define it for powerpc for kernel >= 2.4.0.
* sysdeps/unix/sysv/linux/msgctl.c: Test for __ASSUME_IPC64, not
__ASSUME_32BITUIDS.
* sysdeps/unix/sysv/linux/semctl.c: Likewise.
* sysdeps/unix/sysv/linux/shmctl.c: Likewise.
* sysdeps/unix/sysv/linux/powerpc/bits/ipc.h: Sync with kernel.
* sysdeps/unix/sysv/linux/powerpc/bits/msq.h: New file.
* sysdeps/unix/sysv/linux/powerpc/bits/sem.h: New file.
* sysdeps/unix/sysv/linux/powerpc/bits/shm.h: New file.
2000-09-28 Martin Schwidefsksy <schwidefsky@de.ibm.com>
* sysdeps/s390/atomicity.h: Fix compare_and_swap.
* sysdeps/unix/sysv/linux/s390/bits/fcntl.h
(F_GETLK64,F_SETLK64,F_SETLKW64): Use values from 2.4.0-test8.
2000-09-28 Denis Joseph Barrow <djbarrow@de.ibm.com>
* sysdeps/unix/sysv/linux/s390/sys/procfs.h: Use definitions from
ucontext.h.
* sysdeps/unix/sysv/linux/s390/sys/ucontext.h: Fix ucontext structure.
2000-09-27 Andreas Schwab <schwab@suse.de>
* math/Makefile (distribute): Explicitly add the long double test
sources, to get them included even if long double is not supported.
2000-09-27 Jes Sorensen <jes@linuxcare.com>
* elf/soinit.c (struct object): Move definition to gccframe.h and
include it. Problem identified by HJ Lu.
* sysdeps/ia64/gccframe.h: New file. ia64 specific version of
struct object to be searched for frame unwind info.
* sysdeps/generic/gccframe.h: New file. Generic version of
struct object to be searched for frame unwind info.
2000-09-28 Ulrich Drepper <drepper@redhat.com>
* manual/errno.texi: Correct error text for ENXIO.
Reported by Jrg Schilling <schilling@fokus.gmd.de>.
2000-09-27 Jes Sorensen <jes@linuxcare.com>
* sysdeps/ia64/fpu/fsetexcptflg.c (fesetexceptflag): Set the
exception status bits rather than the exception disable bits.
Don't include math.h.
* sysdeps/ia64/fpu/fgetexcptflg.c (fegetexceptflag): Report the
status of exceptions currently raised rather than which exceptions
are enabled.
* sysdeps/ia64/fpu/fclrexcpt.c (feclearexcept): Typecase to fenv_t
rather than unsigned long int.
* sysdeps/ia64/fpu/fedisblxcpt.c (fedisableexcept): Only disable
the exceptions actually requested by the caller and not just
disable all exceptions.
* sysdeps/ia64/fpu/feenablxcpt.c (feenableexcept): Exceptions on
the ia64 are enabled by clearing the respective bits in the fpsr,
not setting them.
* sysdeps/ia64/bits/fenv.h: typedef fexcept_t and fenv_t to
unsigned long int rather than unsigned long to be consistent with
the coding conventions.
2000-09-20 H.J. Lu <hjl@gnu.org>
* sysdeps/ia64/fpu/fesetenv.c (fesetenv): Use fenv_t instead of
unsigned long int.
* sysdeps/ia64/fpu/fesetround.c (fesetround): Likewise.
2000-09-28 Ulrich Drepper <drepper@redhat.com>
* string/bits/string2.h: Unify #if usage.
2000-09-27 Jakub Jelinek <jakub@redhat.com>
* math/test-fenv.c (feexcp_mask_test): If enabling all exceptions
and disabling underflow or overflow, disable inexact as well.
* sysdeps/gnu/netinet/tcp.h: Add tcp_info defines and types.
2000-09-26 Jakub Jelinek <jakub@redhat.com>
* sysdeps/sparc/sparc32/bits/endian.h: Remove.
* sysdeps/sparc/sparc32/ieee754.h: New.
* sysdeps/sparc/sparc64/bits/endian.h: Move...
* sysdeps/sparc/bits/endian.h: ...here.
* sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__clone): Optimize.
* sysdeps/unix/sysv/linux/sparc/sparc64/clone.S (__clone): Check
%o1, not %o0 to see if we're parent or child. Optimize.
2000-09-26 Jes Sorensen <jes@linuxcare.com>
* sysdeps/unix/sysv/linux/ia64/fork.S: New file (based on code
by Hans Boehm).
* sysdeps/unix/sysv/linux/ia64/vfork.S: New file (based on
code by Hans Boehm).
* sysdeps/unix/sysv/linux/ia64/fork.c: Deleted (obsoleted by fork.S).
2000-09-20 H.J. Lu <hjl@gnu.org>
* sysdeps/ia64/fpu/printf_fphex.c: New file.
* sysdeps/ia64/fpu/libm-test-ulps: New file.
2000-09-17 H.J. Lu <hjl@gnu.org>
* sysdeps/ia64/Makefile (long-double-fcts): New. Defined as yes.
* sysdeps/ia64/fpu/s_isinfl.c: New file. Include
sysdeps/i386/fpu/s_isinfl.c.
* sysdeps/ia64/fpu/s_isnanl.c: New file. Include
sysdeps/i386/fpu/s_isnanl.c.
* sysdeps/ia64/fpu/s_nextafterl.c: New file. Include
sysdeps/i386/fpu/s_nextafterl.c.
* sysdeps/ia64/fpu/bits/mathdef.h: New file. Copied from
sysdeps/i386/fpu/bits/mathdef.h.
2000-09-16 H.J. Lu <hjl@gnu.org>
* sysdeps/generic/ldsodefs.h (DL_UNMAP): New. Defined if
DL_UNMAP_IS_SPECIAL is not defined.
* sysdeps/ia64/dl-lookupcfg.h (DL_UNMAP_IS_SPECIAL): Defined.
(_dl_unmap): New prototype.
(DL_UNMAP): New. Defined as _dl_unmap.
* sysdeps/ia64/Versions [ld] (GLIBC_2.2): Add _dl_unmap.
* elf/dl-close.c (_dl_close): Replace __munmap with DL_UNMAP.
2000-09-16 H.J. Lu <hjl@gnu.org>
* sysdeps/generic/ldsodefs.h (DL_LOOKUP_ADDRESS): New. Defined
if ELF_FUNCTION_PTR_IS_SPECIAL is not defined.
* sysdeps/ia64/dl-lookupcfg.h (_dl_lookup_address): New
prototype.
(DL_LOOKUP_ADDRESS): New. Defined as _dl_lookup_address.
* sysdeps/ia64/dl-fptr.c (_dl_lookup_address): New. Lookup
the memory location of a function from a function descriptor.
* sysdeps/ia64/Versions [ld] (GLIBC_2.2): Add _dl_lookup_address.
* elf/dl-addr.c (_dl_addr): Use DL_LOOKUP_ADDRESS to get the
memory location.
2000-09-14 Jes Sorensen <jes@linuxcare.com>
* sysdeps/ia64/bits/byteswap.h (__bswap_16): Don't mark output
variable as input argument.
(__bswap_32): Likewise.
* sysdeps/ia64/dl-machine.h: Add missing stop bit in RTLD_START()
- found by Jim Wilson <wilson@cygnus.com>
2000-09-26 Ulrich Drepper <drepper@redhat.com>
* string/strxfrm.c: Only require alignment on __alignof__ (int32_t)
instead of 4.
2000-09-26 Andreas Schwab <schwab@suse.de>
* locale/programs/ld-collate.c (collate_output): Only require
alignment on __alignof__ (int32_t) instead of 4.
* locale/loadlocale.c (_nl_load_locale): Likewise.
* string/strcoll.c: Likewise.
2000-09-26 Jes Sorensen <jes@linuxcare.com>
* sysdeps/ieee754/ldbl-96/e_atan2l.c (__ieee754_atan2l): Add
parentheses around arithmetic used in | statement to kill compiler
warning.
* math/math_private.h: Add prototype for __finitel.
(__ilogbl): Likewise.
(__isinfl): Likewise.
(__isnanl): Likewise.
(__atanl): Likewise.
(__copysignl): Likewise.
(__expm1l): Likewise.
(__floorl): Likewise.
(__frexpl): Likewise.
(__ldexpl): Likewise.
(__log1pl): Likewise.
(__nanl): Likewise.
(__rintl): Likewise.
(__scalbnl): Likewise.
(__sqrtl): Likewise.
(fabsl): Likewise.
(__sincosl): Likewise.
(si_isr) [USE_GNU]: Likewise.
(ILL_BREAK) [USE_GNU]: Likewise.
(FPE_DECOVF) [USE_GNU]: Likewise.
(FPE_DECDIV) [USE_GNU]: Likewise.
(FPE_DECERR) [USE_GNU]: Likewise.
(FPE_INVASC) [USE_GNU]: Likewise.
(FPE_INVDEC) [USE_GNU]: Likewise.
(TRAP_BRANCH) [USE_GNU]: Likewise.
(TRAP_HWBKPT) [USE_GNU]: Likewise.
* sysdeps/ieee754/flt-32/s_exp2f.c: Likewise.
* misc/daemon.c (daemon): Fail if !noclose and we cannot open the
real /dev/null device.
* sysdeps/generic/check_fds.c: Include device-nrs.h.
* sysdeps/generic/device-nrs.h: New file.
* sysdeps/unix/sysv/linux/device-nrs.h: New file.
* misc/Makefile (distribute): Add device-nrs.h.
* posix/wordexp.c (exec_comm_child): Likewise.
* locale/nl_langinfo.c: Allow use of file for __nl_langinfo_l
definition.
2000-09-26 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/gethostid.c (sethostid): Use O_TRUNC to
remove possible garbage at the end of the file.
* stdio-common/tmpnam_r.c: Warn about insecure tmpnam_r.
* stdio-common/tmpnam.c: Warn about insecure tmpnam.
* stdio-common/tempnam.c: Warn about insecure tempnam.
* misc/mktemp.c: Warn about insecure mktemp.
* elf/ldconfig.c (add_dir): Move logic to add entry to list to new
function add_single_dir.
(add_single_dir): New function.
(search_dir): Use add_single_dir instead of recursing.
2000-09-18 Mark Kettenis <kettenis@gnu.org>
* sysdeps/mach/hurd/bits/time.h: (CLOCKS_PER_SEC): Make a long int
constant since that is what clock_t is.
* sysdeps/mach/hurd/i386/bits/time.h: Likewise.
2000-09-16 Ralf Baechle <ralf@gnu.org>
* sysdeps/mips/dl-machine.h (_RTLD_PROLOGUE): Reformat. Declare
as function.
(_RTLD_EPILOGUE): Reformat. Declare size of entry function.
(ELF_MACHINE_BEFORE_RTLD_RELOC): Relocate the dynamic linker itself so
it will even work when not loaded to the standard address.
(RTLD_START): Reformat. Call _dl_start in a way that is safe even
before the dynamic linker itself is relocated.
2000-09-18 Andreas Jaeger <aj@suse.de>
* sysdeps/unix/sysv/linux/kernel-features.h: Always define
__ASSUME_32BITUIDS for MIPS.
* sysdeps/unix/sysv/linux/mips/ipc_priv.h: New file.
* sysdeps/unix/sysv/linux/mips/Dist: Add ipc_priv.h.
2000-09-16 Jakub Jelinek <jakub@redhat.com>
* sysdeps/ia64/Implies: Reorder ieee754 implies so that ldbl-* comes
first.
* sysdeps/m68k/Implies: Likewise.
* sysdeps/sparc/sparc64/Implies: Likewise.
2000-09-16 Jakub Jelinek <jakub@redhat.com>
* elf/readlib.c (process_file): Don't error for stale .so links either.
* elf/dl-load.c (_dl_map_object_from_fd): Add one more
__builtin_expect.
* sysdeps/unix/sysv/linux/ia64/bits/stat.h: Correct position of
st_blocks member in stat and stat64 structs.
Patch by Bill Nottingham <notting@redhat.com>.
2000-09-15 Andreas Jaeger <aj@suse.de>
* sysdeps/mips/fpu/feenablxcpt.c: New file.
* sysdeps/mips/fpu/fegetexcept.c: New file.
* sysdeps/mips/fpu/fedisblxcpt.c: New file.
2000-09-14 Jakub Jelinek <jakub@redhat.com>
* posix/regex.c (compile_range): Cast collseq index to unsigned char
to avoid accessing data before collseq.
* sysdeps/sparc/fpu/bits/mathinline.h (__unordered_v9cmp): Avoid
pasting strings together.
* sysdeps/unix/sysv/linux/bits/time.h (CLOCKS_PER_SEC): Make a long int
constant since this is what clock_t is.
* sysdeps/unix/sysv/linux/alpha/bits/time.h: Likewise.
* sysdeps/unix/sysv/linux/i386/bits/time.h: Likewise.
* sysdeps/unix/sysv/linux/ia64/bits/time.h: Likewise.
* sysdeps/unix/sysv/linux/s390/bits/time.h: Likewise.
2000-09-10 David S. Miller <davem@redhat.com>
* sysdeps/sparc/sparc32/__longjmp.S (__longjmp): Correct %fp
frame pointer offset for non-fast path.
2000-09-10 Ulrich Drepper <drepper@redhat.com>
* locale/programs/3level.h (*_init): Initialize level1, level2,
and level3 as well.
(*_add): Remove a few unnecessary conditionals.
2000-09-10 Ulrich Drepper <drepper@redhat.com>
* shlib-versions: Simplify libm entries. Correct a few Hurd entries.
* sysdeps/generic/initfini.c: Rewrite slightly to get rid of the
ugly GMON_WEAK_START hack.
Patch by Philip Blundell <philb@gnu.org>.
* sysdeps/i386/i486/bits/string.h: Pretty printing.
* sysdeps/ia64/memchr.S: Add .pred.rel to avoid wrong assembler
warnings.
* sysdeps/ia64/memccpy.S: Likewise.
Patches by Jim Wilson <wilson@redhat.com>.
2000-09-09 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/dl-osinfo.h (DL_SYSDEP_OSCHECK): Use uname
before trying to read /proc.
Patch by Matt Wilson <msw@redhat.com>.
* include/sys/utsname.h: Declare __uname.
* sysdeps/generic/uname.c: Make uname a weak alias of __uname.
* sysdeps/mach/hurd/uname.c: Likewise.
* sysdeps/unix/syscalls.list: Likewise.
* iconv/gconv_dl.c (do_release_shlib): Rewrite condition for
unloading a bit.
2000-09-08 Ulrich Drepper <drepper@redhat.com>
* posix/getopt.c (_getopt_internal): When long_only is set always
recognize conflicts just like before.
2000-09-08 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
* sysdeps/ia64/Makefile (sysdep-rtld-routines): New variable.
* sysdeps/unix/sysv/linux/arm/fcntl.c: New file.
* sysdeps/unix/sysv/linux/arm/bits/fcntl.h
(F_GETLK64,F_SETLK64,F_SETLKW64): Use values from 2.4.0-test8.
(F_GETLK,F_SETLK,F_SETLKW): Handle __USE_FILE_OFFSET64 correctly.
* sysdeps/unix/opendir.c: If O_DIRECTORY_WORKS is defined don't
use the hack with tryopen_o_directory to determine at runtime
whether it works.
* sysdeps/unix/sysv/linux/opendir.c: New file.
* sysdeps/unix/sysv/linux/kernel-features.h: Define
__ASSUME_O_DIRECTORY if kernel knows O_DIRECTORY.
2000-09-06 Andreas Jaeger <aj@suse.de>
* sysdeps/alpha/soft-fp/Dist: New file.
* sysdeps/i386/soft-fp/Dist: New file.
* sysdeps/mips/mips64/soft-fp/Dist: New file.
* sysdeps/mips/soft-fp/Dist: New file.
* sysdeps/powerpc/soft-fp/Dist: New file.
* sysdeps/sparc/sparc32/soft-fp/Dist: New file.
* sysdeps/sparc/sparc64/soft-fp/Dist: New file.
* sysdeps/sparc/sparc64/soft-fp/Makefile [$(subdir) = soft-fp]:
Use sysdep_routines instead of routines to fix make dist failure.
* sysdeps/sparc/sparc32/soft-fp/Makefile: Likewise (in commented
out code).
* sysdeps/powerpc/soft-fp/Makefile [$(subdir) = soft-fp]: Likewise.
* sysdeps/mips/Makefile [$(subdir) = misc]: Use
sysdep_headers instead of headers for make dist.
* sysdeps/unix/sysv/linux/mips/Makefile [$(subdir) = misc]:
Likewise.
2000-09-06 Andreas Jaeger <aj@suse.de>
* sysdeps/powerpc/Makefile [$(subdir) = elf]: Modify
sysdep-dl-routines and sysdep_routines instead of rtld-routines
and dl-routines.
* soft-fp/ChangeLog: Merged with this file.
2000-06-13 Ulrich Drepper <drepper@redhat.com>
* soft-fp/Makefile (distribute): Add op-8.h and testit.c.
* soft-fp/Makefile (distribute): Add the math functions, too.
* soft-fp/Makefile (distribute): Add ChangeLog, Banner, and configure.
2000-03-03 Geoff Keating <geoffk@cygnus.com>
* soft-fp/soft-fp.h (_FP_ROUND_ZERO): Cast 0 to void before using it
as a statement.
* soft-fp/sysdeps/powerpc/Makefile (routines): New file.
* soft-fp/sysdeps/powerpc/q_*: New files.
2000-09-05 Andreas Jaeger <aj@suse.de>
* sysdeps/unix/sysv/linux/mips/bits/stat.h: Use st_pad5.
* sysdeps/unix/sysv/linux/mips/xstatconv.c: Fix assignments.
Patch by Maciej W. Rozycki <macro@ds2.pg.gda.pl>.
2000-09-05 Andreas Jaeger <aj@suse.de>
* sysdeps/sparc/sparc64/soft-fp/Versions: Use version glibc 2.2.
* soft-fp/configure: Remove.
* soft-fp/sysdeps/sparc/sparc64/qp_neg.S: Move from here...
* sysdeps/sparc/sparc64/soft-fp/qp_neg.S: ... to here.
* soft-fp/sysdeps/sparc/sparc32/Makefile: Move from here...
* sysdeps/sparc/sparc32/soft-fp/Makefile: ... to here.
* soft-fp/sysdeps/powerpc/Makefile: Move from here...
* sysdeps/powerpc/soft-fp/Makefile: ... to here.
* soft-fp/sysdeps/sparc/sparc64/Makefile: Move from here...
* sysdeps/sparc/sparc64/soft-fp/Makefile: ... to here.
* soft-fp/sysdeps/sparc/sparc64/qp_neg.S: Move from here...
* sysdeps/sparc/sparc64/soft-fp/qp_neg.S: ... to here.
* soft-fp/sysdeps/powerpc/q_add.c: Move from here...
* sysdeps/powerpc/soft-fp/q_add.c: ... to here.
* soft-fp/sysdeps/powerpc/q_cmp.c: Move from here...
* sysdeps/powerpc/soft-fp/q_cmp.c: ... to here.
* soft-fp/sysdeps/powerpc/q_cmpe.c: Move from here...
* sysdeps/powerpc/soft-fp/q_cmpe.c: ... to here.
* soft-fp/sysdeps/powerpc/q_div.c: Move from here...
* sysdeps/powerpc/soft-fp/q_div.c: ... to here.
* soft-fp/sysdeps/powerpc/q_dtoq.c: Move from here...
* sysdeps/powerpc/soft-fp/q_dtoq.c: ... to here.
* soft-fp/sysdeps/powerpc/q_feq.c: Move from here...
* sysdeps/powerpc/soft-fp/q_feq.c: ... to here.
* soft-fp/sysdeps/powerpc/q_fge.c: Move from here...
* sysdeps/powerpc/soft-fp/q_fge.c: ... to here.
* soft-fp/sysdeps/powerpc/q_fgt.c: Move from here...
* sysdeps/powerpc/soft-fp/q_fgt.c: ... to here.
* soft-fp/sysdeps/powerpc/q_fle.c: Move from here...
* sysdeps/powerpc/soft-fp/q_fle.c: ... to here.
* soft-fp/sysdeps/powerpc/q_flt.c: Move from here...
* sysdeps/powerpc/soft-fp/q_flt.c: ... to here.
* soft-fp/sysdeps/powerpc/q_fne.c: Move from here...
* sysdeps/powerpc/soft-fp/q_fne.c: ... to here.
* soft-fp/sysdeps/powerpc/q_itoq.c: Move from here...
* sysdeps/powerpc/soft-fp/q_itoq.c: ... to here.
* soft-fp/sysdeps/powerpc/q_lltoq.c: Move from here...
* sysdeps/powerpc/soft-fp/q_lltoq.c: ... to here.
* soft-fp/sysdeps/powerpc/q_mul.c: Move from here...
* sysdeps/powerpc/soft-fp/q_mul.c: ... to here.
* soft-fp/sysdeps/powerpc/q_neg.c: Move from here...
* sysdeps/powerpc/soft-fp/q_neg.c: ... to here.
* soft-fp/sysdeps/powerpc/q_qtod.c: Move from here...
* sysdeps/powerpc/soft-fp/q_qtod.c: ... to here.
* soft-fp/sysdeps/powerpc/q_qtoi.c: Move from here...
* sysdeps/powerpc/soft-fp/q_qtoi.c: ... to here.
* soft-fp/sysdeps/powerpc/q_qtoll.c: Move from here...
* sysdeps/powerpc/soft-fp/q_qtoll.c: ... to here.
* soft-fp/sysdeps/powerpc/q_qtos.c: Move from here...
* sysdeps/powerpc/soft-fp/q_qtos.c: ... to here.
* soft-fp/sysdeps/powerpc/q_qtou.c: Move from here...
* sysdeps/powerpc/soft-fp/q_qtou.c: ... to here.
* soft-fp/sysdeps/powerpc/q_qtoull.c: Move from here...
* sysdeps/powerpc/soft-fp/q_qtoull.c: ... to here.
* soft-fp/sysdeps/powerpc/q_sqrt.c: Move from here...
* sysdeps/powerpc/soft-fp/q_sqrt.c: ... to here.
* soft-fp/sysdeps/powerpc/q_stoq.c: Move from here...
* sysdeps/powerpc/soft-fp/q_stoq.c: ... to here.
* soft-fp/sysdeps/powerpc/q_sub.c: Move from here...
* sysdeps/powerpc/soft-fp/q_sub.c: ... to here.
* soft-fp/sysdeps/powerpc/q_ulltoq.c: Move from here...
* sysdeps/powerpc/soft-fp/q_ulltoq.c: ... to here.
* soft-fp/sysdeps/powerpc/q_util.c: Move from here...
* sysdeps/powerpc/soft-fp/q_util.c: ... to here.
* soft-fp/sysdeps/powerpc/q_utoq.c: Move from here...
* sysdeps/powerpc/soft-fp/q_utoq.c: ... to here.
* soft-fp/sysdeps/sparc/sparc32/q_add.c: Move from here...
* sysdeps/sparc/sparc32/soft-fp/q_add.c: ... to here.
* soft-fp/sysdeps/sparc/sparc32/q_cmp.c: Move from here...
* sysdeps/sparc/sparc32/soft-fp/q_cmp.c: ... to here.
* soft-fp/sysdeps/sparc/sparc32/q_cmpe.c: Move from here...
* sysdeps/sparc/sparc32/soft-fp/q_cmpe.c: ... to here.
* soft-fp/sysdeps/sparc/sparc32/q_div.c: Move from here...
* sysdeps/sparc/sparc32/soft-fp/q_div.c: ... to here.
* soft-fp/sysdeps/sparc/sparc32/q_dtoq.c: Move from here...
* sysdeps/sparc/sparc32/soft-fp/q_dtoq.c: ... to here.
* soft-fp/sysdeps/sparc/sparc32/q_feq.c: Move from here...
* sysdeps/sparc/sparc32/soft-fp/q_feq.c: ... to here.
* soft-fp/sysdeps/sparc/sparc32/q_fge.c: Move from here...
* sysdeps/sparc/sparc32/soft-fp/q_fge.c: ... to here.
* soft-fp/sysdeps/sparc/sparc32/q_fgt.c: Move from here...
* sysdeps/sparc/sparc32/soft-fp/q_fgt.c: ... to here.
* soft-fp/sysdeps/sparc/sparc32/q_fle.c: Move from here...
* sysdeps/sparc/sparc32/soft-fp/q_fle.c: ... to here.
* soft-fp/sysdeps/sparc/sparc32/q_flt.c: Move from here...
* sysdeps/sparc/sparc32/soft-fp/q_flt.c: ... to here.
* soft-fp/sysdeps/sparc/sparc32/q_fne.c: Move from here...
* sysdeps/sparc/sparc32/soft-fp/q_fne.c: ... to here.
* soft-fp/sysdeps/sparc/sparc32/q_itoq.c: Move from here...
* sysdeps/sparc/sparc32/soft-fp/q_itoq.c: ... to here.
* soft-fp/sysdeps/sparc/sparc32/q_mul.c: Move from here...
* sysdeps/sparc/sparc32/soft-fp/q_mul.c: ... to here.
* soft-fp/sysdeps/sparc/sparc32/q_neg.c: Move from here...
* sysdeps/sparc/sparc32/soft-fp/q_neg.c: ... to here.
* soft-fp/sysdeps/sparc/sparc32/q_qtod.c: Move from here...
* sysdeps/sparc/sparc32/soft-fp/q_qtod.c: ... to here.
* soft-fp/sysdeps/sparc/sparc32/q_qtoi.c: Move from here...
* sysdeps/sparc/sparc32/soft-fp/q_qtoi.c: ... to here.
* soft-fp/sysdeps/sparc/sparc32/q_qtos.c: Move from here...
* sysdeps/sparc/sparc32/soft-fp/q_qtos.c: ... to here.
* soft-fp/sysdeps/sparc/sparc32/q_qtoui.c: Move from here...
* sysdeps/sparc/sparc32/soft-fp/q_qtoui.c: ... to here.
* soft-fp/sysdeps/sparc/sparc32/q_qtoux.c: Move from here...
* sysdeps/sparc/sparc32/soft-fp/q_qtoux.c: ... to here.
* soft-fp/sysdeps/sparc/sparc32/q_qtox.c: Move from here...
* sysdeps/sparc/sparc32/soft-fp/q_qtox.c: ... to here.
* soft-fp/sysdeps/sparc/sparc32/q_sqrt.c: Move from here...
* sysdeps/sparc/sparc32/soft-fp/q_sqrt.c: ... to here.
* soft-fp/sysdeps/sparc/sparc32/q_stoq.c: Move from here...
* sysdeps/sparc/sparc32/soft-fp/q_stoq.c: ... to here.
* soft-fp/sysdeps/sparc/sparc32/q_sub.c: Move from here...
* sysdeps/sparc/sparc32/soft-fp/q_sub.c: ... to here.
* soft-fp/sysdeps/sparc/sparc32/q_uitoq.c: Move from here...
* sysdeps/sparc/sparc32/soft-fp/q_uitoq.c: ... to here.
* soft-fp/sysdeps/sparc/sparc32/q_util.c: Move from here...
* sysdeps/sparc/sparc32/soft-fp/q_util.c: ... to here.
* soft-fp/sysdeps/sparc/sparc32/q_uxtoq.c: Move from here...
* sysdeps/sparc/sparc32/soft-fp/q_uxtoq.c: ... to here.
* soft-fp/sysdeps/sparc/sparc32/q_xtoq.c: Move from here...
* sysdeps/sparc/sparc32/soft-fp/q_xtoq.c: ... to here.
* soft-fp/sysdeps/sparc/sparc64/qp_add.c: Move from here...
* sysdeps/sparc/sparc64/soft-fp/qp_add.c: ... to here.
* soft-fp/sysdeps/sparc/sparc64/qp_cmp.c: Move from here...
* sysdeps/sparc/sparc64/soft-fp/qp_cmp.c: ... to here.
* soft-fp/sysdeps/sparc/sparc64/qp_cmpe.c: Move from here...
* sysdeps/sparc/sparc64/soft-fp/qp_cmpe.c: ... to here.
* soft-fp/sysdeps/sparc/sparc64/qp_div.c: Move from here...
* sysdeps/sparc/sparc64/soft-fp/qp_div.c: ... to here.
* soft-fp/sysdeps/sparc/sparc64/qp_dtoq.c: Move from here...
* sysdeps/sparc/sparc64/soft-fp/qp_dtoq.c: ... to here.
* soft-fp/sysdeps/sparc/sparc64/qp_feq.c: Move from here...
* sysdeps/sparc/sparc64/soft-fp/qp_feq.c: ... to here.
* soft-fp/sysdeps/sparc/sparc64/qp_fge.c: Move from here...
* sysdeps/sparc/sparc64/soft-fp/qp_fge.c: ... to here.
* soft-fp/sysdeps/sparc/sparc64/qp_fgt.c: Move from here...
* sysdeps/sparc/sparc64/soft-fp/qp_fgt.c: ... to here.
* soft-fp/sysdeps/sparc/sparc64/qp_fle.c: Move from here...
* sysdeps/sparc/sparc64/soft-fp/qp_fle.c: ... to here.
* soft-fp/sysdeps/sparc/sparc64/qp_flt.c: Move from here...
* sysdeps/sparc/sparc64/soft-fp/qp_flt.c: ... to here.
* soft-fp/sysdeps/sparc/sparc64/qp_fne.c: Move from here...
* sysdeps/sparc/sparc64/soft-fp/qp_fne.c: ... to here.
* soft-fp/sysdeps/sparc/sparc64/qp_itoq.c: Move from here...
* sysdeps/sparc/sparc64/soft-fp/qp_itoq.c: ... to here.
* soft-fp/sysdeps/sparc/sparc64/qp_mul.c: Move from here...
* sysdeps/sparc/sparc64/soft-fp/qp_mul.c: ... to here.
* soft-fp/sysdeps/sparc/sparc64/qp_qtod.c: Move from here...
* sysdeps/sparc/sparc64/soft-fp/qp_qtod.c: ... to here.
* soft-fp/sysdeps/sparc/sparc64/qp_qtoi.c: Move from here...
* sysdeps/sparc/sparc64/soft-fp/qp_qtoi.c: ... to here.
* soft-fp/sysdeps/sparc/sparc64/qp_qtos.c: Move from here...
* sysdeps/sparc/sparc64/soft-fp/qp_qtos.c: ... to here.
* soft-fp/sysdeps/sparc/sparc64/qp_qtoui.c: Move from here...
* sysdeps/sparc/sparc64/soft-fp/qp_qtoui.c: ... to here.
* soft-fp/sysdeps/sparc/sparc64/qp_qtoux.c: Move from here...
* sysdeps/sparc/sparc64/soft-fp/qp_qtoux.c: ... to here.
* soft-fp/sysdeps/sparc/sparc64/qp_qtox.c: Move from here...
* sysdeps/sparc/sparc64/soft-fp/qp_qtox.c: ... to here.
* soft-fp/sysdeps/sparc/sparc64/qp_sqrt.c: Move from here...
* sysdeps/sparc/sparc64/soft-fp/qp_sqrt.c: ... to here.
* soft-fp/sysdeps/sparc/sparc64/qp_stoq.c: Move from here...
* sysdeps/sparc/sparc64/soft-fp/qp_stoq.c: ... to here.
* soft-fp/sysdeps/sparc/sparc64/qp_sub.c: Move from here...
* sysdeps/sparc/sparc64/soft-fp/qp_sub.c: ... to here.
* soft-fp/sysdeps/sparc/sparc64/qp_uitoq.c: Move from here...
* sysdeps/sparc/sparc64/soft-fp/qp_uitoq.c: ... to here.
* soft-fp/sysdeps/sparc/sparc64/qp_util.c: Move from here...
* sysdeps/sparc/sparc64/soft-fp/qp_util.c: ... to here.
* soft-fp/sysdeps/sparc/sparc64/qp_uxtoq.c: Move from here...
* sysdeps/sparc/sparc64/soft-fp/qp_uxtoq.c: ... to here.
* soft-fp/sysdeps/sparc/sparc64/qp_xtoq.c: Move from here...
* sysdeps/sparc/sparc64/soft-fp/qp_xtoq.c: ... to here.
* soft-fp/sysdeps/sparc/sparc64/s_frexpl.c: Move from here...
* sysdeps/sparc/sparc64/soft-fp/s_frexpl.c: ... to here.
* soft-fp/sysdeps/sparc/sparc64/s_ilogbl.c: Move from here...
* sysdeps/sparc/sparc64/soft-fp/s_ilogbl.c: ... to here.
* soft-fp/sysdeps/sparc/sparc64/s_scalblnl.c: Move from here...
* sysdeps/sparc/sparc64/soft-fp/s_scalblnl.c: ... to here.
* soft-fp/sysdeps/sparc/sparc64/s_scalbnl.c: Move from here...
* sysdeps/sparc/sparc64/soft-fp/s_scalbnl.c: ... to here.
* soft-fp/sysdeps/alpha/sfp-machine.h: Move from here...
* sysdeps/alpha/soft-fp/sfp-machine.h: ... to here.
* soft-fp/sysdeps/i386/sfp-machine.h: Move from here...
* sysdeps/i386/soft-fp/sfp-machine.h: ... to here.
* soft-fp/sysdeps/mips/mips64/sfp-machine.h: Move from here...
* sysdeps/mips/mips64/soft-fp/sfp-machine.h: ... to here.
* soft-fp/sysdeps/mips/sfp-machine.h: Move from here...
* sysdeps/mips/soft-fp/sfp-machine.h: ... to here.
* soft-fp/sysdeps/powerpc/sfp-machine.h: Move from here...
* sysdeps/powerpc/soft-fp/sfp-machine.h: ... to here.
* soft-fp/sysdeps/sparc/sparc32/sfp-machine.h: Move from here...
* sysdeps/sparc/sparc32/soft-fp/sfp-machine.h: ... to here.
* soft-fp/sysdeps/sparc/sparc64/sfp-machine.h: Move from here...
* sysdeps/sparc/sparc64/soft-fp/sfp-machine.h: ... to here.
* soft-fp/sysdeps/powerpc/Versions: Move from here...
* sysdeps/powerpc/soft-fp/Versions: ... to here.
* soft-fp/sysdeps/sparc/sparc64/Versions: Move from here...
* sysdeps/sparc/sparc64/soft-fp/Versions: ... to here.
* libio/oldiofsetpos64.c: iofsetpos was introduced in glibc 2.1,
change symbol version.
* libio/oldiofgetpos64.c: Likewise.
Reported by Martin v. Loewis <martin@loewis.home.cs.tu-berlin.de>.
* locale/programs/ld-ctype.c (charclass_charcode_ellipsis): Fix
typo.
Reported by dyky@kondara.org, closes PR libc/1886.
* stdlib/tst-strtod.c: Add testcases for denormal numbers from PR
libc/1880.
* stdlib/Makefile (headers): Add bits/wchar.h.
* sysdeps/unix/sysv/linux/i386/bits/wchar.h: New file.
* sysdeps/generic/bits/wchar.h: New file.
* sysdeps/generic/stdint.h: Include <bits/wchar.h>. Use values in this
file to define WCHAR_MIN and WCHAR_MAX.
Change UINT*8_MAX and UIN*16_MAX value to type int.
* wcsmbs/wchar.h: Include <bits/wchar.h>. Use values in this
file to define WCHAR_MIN and WCHAR_MAX.
* sysdeps/alpha/fpu/bits/mathdef.h: Make FP_ILOGB0 and FP_ILOGBNAN
int values.
* sysdeps/arm/fpu/bits/mathdef.h: Likewise.
* sysdeps/generic/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/sparc/fpu/bits/mathdef.h: Likewise.
* locale/locale.h (struct lconv): Add __ prefix to the new members
if not C99.
* sysdeps/generic/inttypes.h: Remove unnecessary imaxabs and
imaxdiv optimizations.
* sysdeps/wordsize-32/lldiv.c: Add hack to make alias work.
* sysdeps/wordsize-64/ldiv.c: Likewise.
* sysdeps/alpha/fpu/bits/fenv.h: Change type of FE_*_ENV macros to
const fenv_t*.
* sysdeps/generic/bits/fenv.h: Likewise.
* sysdeps/i386/fpu/bits/fenv.h: Likewise.
* sysdeps/ia64/bits/fenv.h: Likewise.
* sysdeps/m68k/fpu/bits/fenv.h: Likewise.
* sysdeps/mips/bits/fenv.h: Likewise.
* sysdeps/s390/fpu/bits/fenv.h: Likewise.
* sysdeps/sparc/fpu/bits/fenv.h: Likewise.
Reported by Joseph S. Myers <jsm28@cam.ac.uk>.
* catgets/open_catalog.c: Likewise.
* sysdeps/generic/ldsodefs.h: Add declaration for _dl_all_dirs and
_dl_all_init_dirs.
* include/link.h (struct r_search_path_struct): New.
(struct link_map): Use it for l_rpath_dirs and l_runpath_dirs.
* elf/Versions [ld] (GLIBC_2.2): Add _dl_all_dirs and
_dl_all_init_dirs.
* elf/dl-close.c (_dl_close): Free l_rpath_dirs and l_runpath_dirs.
* elf/dl-libc.c (free_mem): Free _dl_all_dirs list except elements
added at startup time.
* elf/dl-load.c: Fix memory handling. r_search_path_struct
contains element to remember fact that we can free memory.
(all_dirs): Renamed to _dl_all_dirs. Made global.
(_dl_init_all_dirs): New variable.
(fillin_rpath): Save one malloc call.
(decompose_rpath): Change interface. New first parameter points to
r_search_path_struct.
(_dl_init_paths): Adjust for changes. Mark all memory as not
deletable. Set _dl_init_all_paths value.
(open_path): Remove may_free_dirs parameter. r_search_path_elem ***
parameter replaced with r_search_path_struct *. Information about
freeing now contained in r_search_path_struct.
(_dl_map_object): Adjust for above changes.
* elf/dl-open.c (dl_open_worker): Change format of debug info a bit.
2000-08-27 Bruno Haible <haible@clisp.cons.org>
* string/strxfrm.c (strxfrm, wcsxfrm): Include <sys/param.h>.
If nrules == 0 and srclen < n, copy only srclen + 1 characters.
* sysdeps/generic/getdomain.c (getdomainname): Include <sys/param.h>.
If the result is fits in the buffer, copy only as many bytes as needed.
* sysdeps/generic/_strerror.c (__strerror_r): Don't zero-fill the
buffer after copying numbuf into it.
* sysdeps/mach/_strerror.c (__strerror_r): Likewise.
2000-08-27 Bruno Haible <haible@clisp.cons.org>
* posix/confstr.c (confstr): When string_len > len, NUL-terminate
the result. When string_len < len, don't clear the rest of the buffer.
2000-08-27 Bruno Haible <haible@clisp.cons.org>
Support for new LC_COLLATE format.
* locale/coll-lookup.h: New file.
* locale/weightwc.h (findidx): When size == 0, call
collidx_table_lookup.
* wcsmbs/wcscoll.c: Include coll-lookup.h.
* wcsmbs/wcsxfrm.c: Likewise.
* posix/fnmatch.c: Likewise.
* posix/fnmatch_loop.c (internal_fnwmatch): When size == 0, call
collseq_table_lookup.
* locale/programs/3level.h: New file.
* locale/programs/ld-ctype.c: (wcwidth_table, wctrans_table): Define
by including "3level.h".
* locale/programs/ld-collate.c (wchead_table, collidx_table,
collseq_table): New types, defined by including "3level.h".
(locale_collate_t): New wcheads_3level, wcseqorder_3level fields.
(encoding_mask, encoding_byte): Remove.
(utf8_encode): Use simple shifts instead.
(collate_finish): When !oldstyle_tables, set plane_size and plane_cnt
to 0, and initialize and fill wcheads_3level and wcseqorder_3level.
(collate_output): New local variable tablewc_3level. When
!oldstyle_tables, set table_size to 0 and names to NULL and fill
tablewc_3level instead of tablewc. Change format of TABLEWC and
COLLSEQWC entries written to the file.
* locale/C-collate.c (collseqwc): Change format.
(_nl_C_LC_COLLATE): Set HASH_SIZE and HASH_LAYERS to 0, change format
of COLLSEQWC.
* locale/Makefile (distribute): Add coll-lookup.h, programs/3level.h.
2000-08-27 Bruno Haible <haible@clisp.cons.org>
* locale/programs/ld-ctype.c (MAX_CHARNAMES_IDX): New macro.
(locale_ctype_t): New charnames_idx field.
(ctype_startup): Initialize charnames_idx field.
(find_idx): Speed up dramatically by using charnames_idx inverse table.
2000-08-27 Bruno Haible <haible@clisp.cons.org>
* locale/C-ctype.c: Switch to new locale format.
(_nl_C_LC_CTYPE_names): Remove array.
(STRUCT_CTYPE_CLASS): New macro.
(_nl_C_LC_CTYPE_class_{upper,lower,alpha,digit,xdigit,space,print,
graph,blank,cntrl,punct,alnum}, _nl_C_LC_CTYPE_map_{toupper,tolower}):
New three-level tables.
(_nl_C_LC_CTYPE_width): Change from array to three-level table.
(_nl_C_LC_CTYPE): Fix nstrings value. Set HASH_SIZE and HASH_LAYERS
to 0. Change WIDTH format. Set CLASS_OFFSET and MAP_OFFSET. Add
12 class tables and 2 map tables at the end.
* ctype/ctype-info.c (_nl_C_LC_CTYPE_names): Remove declaration.
(_nl_C_LC_CTYPE_class_{upper,lower,alpha,digit,xdigit,space,print,
graph,blank,cntrl,punct,alnum}, _nl_C_LC_CTYPE_map_{toupper,tolower}):
New declarations.
(b): Remove trailing semicolon.
(__ctype_names, __ctype_width): Don't initialize.
(__ctype32_wctype, __ctype32_wctrans, __ctype32_width): Initialize.
2000-08-27 Bruno Haible <haible@clisp.cons.org>
* elf/dl-load.c (open_path): Add a argument telling whether *dirsp
is guaranteed to be allocated with the same malloc() and may be
passed to free().
(_dl_map_object): Update open_path calls. If rtld_search_dirs has
been set to empty by an earlier open_path call, don't pass it again.
2000-08-28 Mark Kettenis <kettenis@gnu.org>
* sysdeps/mach/hurd/getpeername.c (__getpeername): Renamed from
getpeername. Use ISO C style function definition.
(getpeername): Provide weak alias.
* sysdeps/mach/hurd/setrlimit.c (__setrlimit): Renamed from
setrlimit. Use ISO C style function definition.
(setrlimit): Provide weak alias.
2000-08-28 Martin Schwidefsky <schwidefsky@de.ibm.com>
* shlib-versions: Add a rule for S/390 to the libm version list.
* sysdeps/s390/Versions: New file.
* sysdeps/unix/sysv/linux/s390/Dist: Add oldgetrlimit64.c.
* sysdeps/unix/sysv/linux/s390/Makefile: Add oldgetrlimit64.
* sysdeps/unix/sysv/linux/s390/Versions: New file.
* sysdeps/unix/sysv/linux/s390/alphasort64.c: New file.
* sysdeps/unix/sysv/linux/s390/chown.c: New file.
* sysdeps/unix/sysv/linux/s390/fxstat.c: New file.
* sysdeps/unix/sysv/linux/s390/getdents64.c: New file.
* sysdeps/unix/sysv/linux/s390/getrlimit.c: New file.
* sysdeps/unix/sysv/linux/s390/getrlimit64.c: New file.
* sysdeps/unix/sysv/linux/s390/lxstat.c: New file.
* sysdeps/unix/sysv/linux/s390/oldgetrlimit64.c: New file.
* sysdeps/unix/sysv/linux/s390/readdir64.c: New file.
* sysdeps/unix/sysv/linux/s390/readdir64_r.c: New file.
* sysdeps/unix/sysv/linux/s390/scandir64.c: New file.
* sysdeps/unix/sysv/linux/s390/setrlimit.c: New file.
* sysdeps/unix/sysv/linux/s390/syscalls.list: New file.
* sysdeps/unix/sysv/linux/s390/versionsort64.c: New file.
* sysdeps/unix/sysv/linux/s390/xstat.c: New file.
* sysdeps/powerpc/fpu/feenablxcpt.c: New file.
* sysdeps/powerpc/fpu/fegetexcept.c: New file.
* sysdeps/unix/sysv/linux/powerpc/fe_nomask.c: New file.
2000-08-27 Geoff Keating <geoffk@cygnus.com>
* sysdeps/powerpc/fpu/fedisblxcpt.c: New file.
* sysdeps/powerpc/fpu/feenablxcpt.c: New file.
* sysdeps/powerpc/fpu/fegetexcept.c: New file.
* sysdeps/unix/sysv/linux/powerpc/fe_nomask.c: New file.
2000-08-26 Ulrich Drepper <drepper@redhat.com>
* elf/Makefile (distribute): Add unloadmod.c, reldepmod1.c,
reldepmod2.c, reldepmod3.c, and reldepmod4.c.
(tests): Add unload, reldep, reldep2, and reldep3.
(modules-names): Add unloadmod, reldepmod1, reldepmod2, reldepmod3,
and reldepmod4.
Add rules to build and run unload, reldep, reldep2, and reldep3.
* elf/dl-lookup.c (_dl_lookup_symbol): Add new parameter explicit.
Don't create relocation dependency if it is nonzero.
(_dl_lookup_symbol_skip): Remove relocation dependency stuff. This
can never happen here.
(_dl_lookup_versioned_symbol): Add new parameter explicit.
Don't create relocation dependency if it is nonzero.
(_dl_lookup_versioned_symbol_skip): Remove relocation dependency
stuff. This can never happen here.
* sysdeps/generic/ldsodefs.h: Change prototypes.
* elf/dl-reloc.c (RESOLVE_MAP): Pass 0 in explicit parameter to
_dl_lookup_up and _dl_lookup_versioned_symbol.
(RESOLV): Likewise.
* elf/dl-runtime.c (fixup): Likewise.
(profile_fixup): Likewise.
* elf/dl-libc.c (do_dlsym): Pass 1 in explicit parameter to
_dl_lookup_symbol.
* elf/dl-symbol.c (_dl_symbol_value): Likewise.
* elf/rtld.c (dl_main): Likewise.
* elf/dl-sym.c (_dl_sym): Pass 1 in explicit parameter to
_dl_lookup_symbol if handle is not RTLD_DEFAULT. Always compute
and pass down the caller map.
(_dl_vsym): Likewise.
* elf/reldep.c: New file.
* elf/reldep2.c: New file.
* elf/reldep3.c: New file.
* elf/reldepmod1.c: New file.
* elf/reldepmod2.c: New file.
* elf/reldepmod3.c: New file.
* elf/reldepmod4.c: New file.
* elf/unload.c: New file.
* elf/unloadmod.c: New file.
* elf/do-lookup.h: Remove unused undef_name parameter.
* elf/dl-lookup.c: Adjust callers.
chars actually scanned.
* sysdeps/i386/memcmp.S: Likewise.
* sysdeps/i386/stpncpy.S: Adjust high-bound check to
account for pointers that lie one beyond end-of-buffer.
2000-08-21 Jes Sorensen <jes@linuxcare.com>
* sysdeps/unix/sysv/linux/ia64/syscalls.list: Add getrlimit and
getrlimit to the list.
2000-08-18 Jes Sorensen <jes@linuxcare.com>
* sysdeps/ia64/Implies: gcc now has support for the Intel 80 bit
long double format so use ldbl-96 instead of ldbl-128.
* sysdeps/unix/sysv/linux/i386/mmap.S (__mmap): Return -EINVAL
even if bits 10 a 11 are non-zero.
* sysdeps/unix/sysv/linux/i386/mmap64.S (__mmap64): Likewise.
2000-08-25 Ulrich Drepper <drepper@redhat.com>
* sysdeps/posix/system.c (__libc_system): We cannot use vfork here
since we call sigaction in the child.
2000-08-24 Denis Joseph Barrow <djbarrow@de.ibm.com>
* sysdeps/s390/fpu/fedisblxcpt.c: New file.
* sysdeps/s390/fpu/feenablxcpt.c: New file.
* sysdeps/s390/fpu/fegetexcept.c: New file.
* sysdeps/s390/fpu/fenv_libc.h: Some reordering, new definition
FPC_VALID_MASK.
2000-08-23 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list: Use
__setrlimit as strong name. Takes only 2 arguments.
* sysdeps/unix/sysv/linux/sh/syscalls.list: __syscall_setrlimit
takes only 2 arguments.
2000-08-23 Andreas Jaeger <aj@suse.de>
* sysdeps/unix/sysv/linux/dl-osinfo.h: Include "kernel-features.h",
otherwise __LINUX_KERNEL_VERSION might not be defined.
(MIN): Define if not already defined.
* elf/Makefile (distribute): Add dl-osinfo.h.
* sysdeps/generic/dl-osinfo.h: New file.
* sysdeps/unix/sysv/linux/dl-osinfo.h: New file.
* sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Use DL_SYSDEP_OSCHECK
if defined.
* sysdeps/unix/sysv/linux/init-first.c: Perform kernel version test
only for !SHARED case. Get the code from dl-osinfo.h.
* sysdeps/i370/Implies: Removed.
* sysdeps/mvs/Implies: Removed.
* catgets/catgets.c (catopen): Filter out env_var values with / if
necessary.
* locale/findlocale.c (_nl_find_locale): Move test for unusable
locale name after all getenvs.
2000-08-19 Ulrich Drepper <drepper@redhat.com>
* elf/Versions [ld] (GLIBC_2.2): Export _dl_check_map_versions.
* elf/dl-deps.c (_dl_map_object_deps): If object was dependency of
a dynamically loaded object remove old l_initfini list.
* elf/dl-libc.c (free_mem): Used as __libc_subfreeres callback to
remove some dynamically allocated memory blocks in the dynamic
loading data structures.
* elf/dl-load.c (add_name_to_object): Initialize dont_free to 0.
* elf/dl-open.c (dl_open_workder): Don't call _dl_check_all_versions.
Instead call _dl_check_map_versions only for the dependencies.
* elf/rtld.c: Avoid unneccessary initializations. Mark l_libname
information of initial objects as not free-able.
* sysdeps/generic/ldsodefs.h (struct libname_list): Add dont_free
element.
* elf/filter.c: Call mtrace.
* elf/restest1.c: Likewise. Close the objects.
* elf/loadtest.c: Call mtrace. Check result of dlclose. Print more
debug information.
* elf/constload1.c: Add comment explaining not freed memory.
2000-08-16 Jakub Jelinek <jakub@redhat.com>
* sysdeps/sparc/fpu/fedisblxcpt.c: New file.
* sysdeps/sparc/fpu/feenablxcpt.c: New file.
* sysdeps/sparc/fpu/fegetexcept.c: New file.
* sysdeps/sparc/sparc64/fpu/e_sqrtl.c: New file.
* sysdeps/sparc/sparc64/dl-machine.h: Subtract 4 .rela.plt entries
to match Solaris.
2000-08-17 Ulrich Drepper <drepper@redhat.com>
* stdio-common/printf_fp.c: Fix chars_needed computation.
Patch by Greg McGary <greg@mcgary.org>.
2000-08-17 Jakub Jelinek <jakub@redhat.com>
* elf/dl-load.c (_dl_map_object): Don't crash if both loader and
_dl_loaded are NULL.
2000-08-17 Jakub Jelinek <jakub@redhat.com>
* manual/arith.texi (feholdexcept): Returns 0 on success.
2000-08-17 Andreas Jaeger <aj@suse.de>
* sysdeps/gnu/net/if.h (struct ifreq): Add ifru_newname.
(ifr_newname): New.
Reported by Andi Kleen <ak@suse.de>.
2000-08-17 Jakub Jelinek <jakub@redhat.com>
* sysdeps/alpha/fpu/fedisblxcpt.c: New file.
* sysdeps/alpha/fpu/feenablxcpt.c: New file.
* sysdeps/alpha/fpu/fegetexcept.c: New file.
2000-08-16 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/xstatconv.c (xstat32_conv): Test sizes
of buf->st_ino and kbuf->st_ino, not __st_ino.
If _HAVE_STAT64___ST_INO is not defined, don't use __st_ino at all.
* sysdeps/unix/sysv/linux/getdents64.c: Change path in #include
directive so that only linux/getdents.c is used, not some
architecture specific one.
2000-08-16 Jakub Jelinek <jakub@redhat.com>
* sysdeps/i386/fpu/fegetexcept.c (fegetexcept): Return currently
enabled, not disabled exceptions.
* sysdeps/i386/fpu/fedisblxcpt.c (fedisableexcept): Likewise.
* sysdeps/i386/fpu/feenablxcpt.c (feenableexcept): Likewise.
($(addprefix $(objpfx),$(tests)),
$(addprefix $(objpfx),$(librt-tests))):
* include/link.h: Undo last patches. Hurd now has stat64.
2000-08-16 Andreas Schwab <schwab@suse.de>
* sysdeps/m68k/fpu/fegetexcept.c: New file.
* sysdeps/m68k/fpu/fedisblxcpt.c: New file.
* sysdeps/m68k/fpu/feenablxcpt.c: New file.
* sysdeps/mach/hurd/xstatconv.c: New file.
* sysdeps/mach/hurd/fxstat64.c: New file.
* sysdeps/mach/hurd/lxstat64.c: New file.
* sysdeps/mach/hurd/xstat64.c: New file.
* sysdeps/mach/hurd/Dist: Add xstatconv.c.
2000-08-15 Mark Kettenis <kettenis@gnu.org>
2000-08-15 Mark Kettenis <kettenis@gnu.org>
* sysdeps/mach/hurd/dl-sysdep.c (__libc_multiple_libcs):
Initialize, needed for change in common symbol handling in newer
binutils. Mirrors 2000-01-03 change made by Andreas Schwab.
* include/link.h: Include sysd-link.h.
* sysdeps/generic/sysd-link.h: New file.
* sysdeps/unix/sysv/linux/sysd-link.h: New file.
* elf/Makefile (distribute): Add sysd-link.h.
* elf/dl-load.c: Use definitions from sysd-link.h instead of stat
types and functions directly.
* elf/dl-misc.c: Likewise.
* elf/dl-profile.c: Likewise.
* elf/loadfail.c (main): Close all successfully loaded objects.
* sysdeps/posix/ttyname.c: Make name variable from getttyname function
global (with file scope). Add __libc_subfreeres function to free the
string.
* sysdeps/unix/sysv/linux/ttyname.c: Likewise. Also for buf variable
in ttyname function.
* sysdeps/generic/strtok.c: Remove initializer for olds variable.
* crypt/md5-crypt.c: Let destructor deallocate static buffer.
* iconvdata/sjis.c (from_ucs4_lat1): Handle U005C and U007E by
mapping them to /x5c and /x7e respectively.
2000-08-12 Andreas Jaeger <aj@suse.de>
* include/features.h (__STDC_ISO_10646__): Define.
Reported by Markus Kuhn <Markus.Kuhn@cl.cam.ac.uk>.
* include/features.h (__USE_ISOC99): Define for _XOPEN_SOURCE >= 600.
* locale/langinfo.h: Define YESSTR and NOSTR also for XPG4 (but not
for revision 6 and up).
* posix/sys/types.h: Define __need_timer_t and __need_clockid_t before
including <time.h>.
* time/time.h: Allow __need_timer_t and __need_clockid_t to be defined
to get definitions of just these types.
* signal/signal.h: Define thread signal handling functions also for
POSIX95.
* sysdeps/unix/sysv/linux/bits/types.h: Define thread types also for
POSIX95.
* sysdeps/unix/sysv/linux/alpha/bits/types.h: Likewise.
* sysdeps/unix/sysv/linux/ia64/bits/types.h: Likewise.
* sysdeps/unix/sysv/linux/mips/bits/types.h: Likewise.
* sysdeps/unix/sysv/linux/sparc/bits/types.h: Likewise.
* sysvipc/sys/shm.h: Define pid_t for XPG.
* wcsmbs/wchar.h: Make the various wide char string and stream
functions available for the respective XPG versions.
2000-08-12 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_FCNTL64):
Define for 2.4.1 on sparc as well.
* sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Fill in correct values
for F_GETLK64, F_SETLK64, and F_SETLKW64.
* sysdeps/unix/sysv/linux/sparc/sparc32/fcntl.c: New file.
* sysdeps/unix/sysv/linux/sparc/sparc32/lockf64.c: New file.
2000-08-12 Andreas Jaeger <aj@suse.de>
* sysdeps/unix/sysv/linux/i386/fcntl.c (__libc_fcntl): Try fcntl
if fnctl64 is not available for F_*LK*64.
* sysdeps/unix/sysv/linux/i386/lockf64.c: New file.
2000-08-12 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_FCNTL64):
Define for 2.4.1 on x86.
* sysdeps/unix/sysv/linux/i386/fcntl.c: New file.
* sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Fill in correct values
for F_GETLK64, F_SETLK64, and F_SETLKW64.
* dirent/dirent.h: Define DT_WHT.
* sysdeps/unix/sysv/linux/arm/alphasort64.c: New file.
* sysdeps/unix/sysv/linux/arm/getdents64.c: New file.
* sysdeps/unix/sysv/linux/arm/readdir64.c: New file.
* sysdeps/unix/sysv/linux/arm/readdir64_r.c: New file.
* sysdeps/unix/sysv/linux/arm/scandir64.c: New file.
* sysdeps/unix/sysv/linux/arm/versionsort64.c: New file.
2000-08-01 Mark Kettenis <kettenis@gnu.org>
* sysdeps/unix/sysv/linux/i386/sys/elf.h (elf_greg_t, ELF_NGREG,
elf_gregset_t, elf_fpregset_t, elf_fpxregset_t): Moved to
sysdeps/unix/sysv/linux/i386/sys/procfs.h.
Remove the junk that's only relevant in the Linux kernel itself.
Add a warning saying that this file is now obsolete, and include
<sys/procfs.h>.
* sysdeps/unix/sysv/linux/i386/sys/procfs.h (elf_greg_t,
ELF_NGREG, elf_gregset_t, elf_fpregset_t, elf_fpxregset_t): Moved
here from sysdeps/unix/sysv/linux/i386/sys/elf.h. Don't include
<signal.h>, <sys/ucontext.h> and <sys/elf.h>. Remove parts of
`struct elf_prstatus' that are #ifdef'ed out. Improve comments
and add the notice that the file is primarily there for GDB.
* sysdeps/unix/sysv/linux/i386/sys/user.h: Fix comment.
2000-08-09 Jakub Jelinek <jakub@redhat.com>
* time/tzfile.c (__tzfile_compute): __tzstring zones
from zone_names.
2000-08-09 Jakub Jelinek <jakub@redhat.com>
* resolv/resolv.h (__res_state): Surround prototype with
__BEGIN_DECLS/__END_DECLS.
* sysdeps/unix/sysv/linux/m68k/chown.c: Include kernel-features.h.
2000-08-04 Jes Sorensen <jes@linuxcare.com>
* sysdeps/unix/sysv/linux/ia64/bits/resource.h (__rlimit_resource):
Make independant of asm/resource.h from the Linux kernel.
2000-08-06 Bruno Haible <haible@clisp.cons.org>
* iconv/gconv_conf.c (__gconv_read_conf): Don't call realpath.
2000-08-06 Bruno Haible <haible@clisp.cons.org>
* intl/Makefile (CPPFLAGS): Remove $(i18ndir) from LOCALE_ALIAS_PATH.
* locale/Makefile (locale-CPPFLAGS): Likewise.
2000-08-09 Ulrich Drepper <drepper@redhat.com>
* sysdeps/i386/fpu/libm-test-ulps: Increase several error values
for AMD processors.
2000-08-03 Jakub Jelinek <jakub@redhat.com>
* misc/Versions (mincore): Export at GLIBC_2.2.
2000-08-03 Bruno Haible <haible@clisp.cons.org>
* intl/libintl.h (gettext, dgettext, dcgettext): Add back __THROW.
2000-08-02 Mark Kettenis <kettenis@gnu.org>
* sysdeps/mach/hurd/socketpair.c (__socketpair): Renamed from
socketpair. Made socketpair a weak alias.
* sysdeps/mach/hurd/pipe.c (__pipe): Reimplemented using
__socketpair. Use S_IFIFO protocol to make pipes POSIX
conforming, but fall back on the old protocol if the socket server
doesn't support it.
* include/sys/socket.h: Add prototype for __socketpair.
frame pointer early so that we save caller's frame pointer.
* sysdeps/i386/elf/setjmp.S: Likewise.
* sysdeps/i386/setjmp.S (__sigsetjmp): Pop our
frame pointer early so that we save caller's frame pointer.
* sysdeps/i386/elf/setjmp.S: Likewise.
2000-08-02 Andreas Jaeger <aj@suse.de>
* sysdeps/unix/sysv/linux/s390/Dist: New file.
* sysdeps/unix/sysv/linux/s390/sysdep.h: New file.
* sysdeps/unix/sysv/linux/s390/sysdep.S: New file.
* sysdeps/unix/sysv/linux/s390/syscall.S: New file.
* sysdeps/unix/sysv/linux/s390/sys/user.h: New file.
* sysdeps/unix/sysv/linux/s390/sys/ucontext.h: New file.
* sysdeps/unix/sysv/linux/s390/sys/ptrace.h: New file.
* sysdeps/unix/sysv/linux/s390/sys/elf.h: New file.
* sysdeps/unix/sysv/linux/s390/socket.S: New file.
* sysdeps/unix/sysv/linux/s390/sigcontextinfo.h: New file.
* sysdeps/unix/sysv/linux/s390/shmctl.c: New file.
* sysdeps/unix/sysv/linux/s390/setreuid.c: New file.
* sysdeps/unix/sysv/linux/s390/setresuid.c: New file.
* sysdeps/unix/sysv/linux/s390/setresgid.c: New file.
* sysdeps/unix/sysv/linux/s390/setregid.c: New file.
* sysdeps/unix/sysv/linux/s390/setgroups.c: New file.
* sysdeps/unix/sysv/linux/s390/setgid.c: New file.
* sysdeps/unix/sysv/linux/s390/setfsuid.c: New file.
* sysdeps/unix/sysv/linux/s390/setfsgid.c: New file.
* sysdeps/unix/sysv/linux/s390/seteuid.c: New file.
* sysdeps/unix/sysv/linux/s390/setegid.c: New file.
* sysdeps/unix/sysv/linux/s390/semctl.c: New file.
* sysdeps/unix/sysv/linux/s390/register-dump.h: New file.
* sysdeps/unix/sysv/linux/s390/putpmsg.c: New file.
* sysdeps/unix/sysv/linux/s390/putmsg.c: New file.
* sysdeps/unix/sysv/linux/s390/profil-counter.h: New file.
* sysdeps/unix/sysv/linux/s390/msgctl.c: New file.
* sysdeps/unix/sysv/linux/s390/mmap.S: New file.
* sysdeps/unix/sysv/linux/s390/getuid.c: New file.
* sysdeps/unix/sysv/linux/s390/getresuid.c: New file.
* sysdeps/unix/sysv/linux/s390/getresgid.c: New file.
* sysdeps/unix/sysv/linux/s390/getpmsg.c: New file.
* sysdeps/unix/sysv/linux/s390/getmsg.c: New file.
* sysdeps/unix/sysv/linux/s390/getgroups.c: New file.
* sysdeps/unix/sysv/linux/s390/getegid.c: New file.
* sysdeps/unix/sysv/linux/s390/geteuid.c: New file.
* sysdeps/unix/sysv/linux/s390/fchown.c: New file.
* sysdeps/unix/sysv/linux/s390/clone.S: New file.
* sysdeps/unix/sysv/linux/s390/brk.c: New file.
* sysdeps/unix/sysv/linux/s390/bits/time.h: New file.
* sysdeps/unix/sysv/linux/s390/bits/resource.h: New file.
* sysdeps/unix/sysv/linux/s390/bits/mman.h: New file.
* sysdeps/unix/sysv/linux/s390/bits/fcntl.h: New file.
* sysdeps/unix/sysv/linux/s390/Makefile: New file.
* sysdeps/s390/sysdep.h: New file.
* sysdeps/s390/sys/ucontext.h: New file.
* sysdeps/s390/sub_n.S: New file.
* sysdeps/s390/strncpy.S: New file.
* sysdeps/s390/strcpy.S: New file.
* sysdeps/s390/stackinfo.h: New file.
* sysdeps/s390/setjmp.S: New file.
* sysdeps/s390/s390-mcount.S: New file.
* sysdeps/s390/mul_1.S: New file.
* sysdeps/s390/memusage.h: New file.
* sysdeps/s390/memset.S: New file.
* sysdeps/s390/memcpy.S: New file.
* sysdeps/s390/memchr.S: New file.
* sysdeps/s390/machine-gmon.h: New file.
* sysdeps/s390/ldbl2mpn.c: New file.
* sysdeps/s390/gmp-mparam.h: New file.
* sysdeps/s390/fpu/fpu_control.h: New file.
* sysdeps/s390/fpu/fesetround.c: New file.
* sysdeps/s390/fpu/fegetround.c: New file.
* sysdeps/s390/fpu/fclrexcpt.c: New file.
* sysdeps/s390/fpu/bits/fenv.h: New file.
* sysdeps/s390/ffs.c: New file.
* sysdeps/s390/elf/start.S: New file.
* sysdeps/s390/elf/setjmp.S: New file.
* sysdeps/s390/elf/bsd-setjmp.S: New file.
* sysdeps/s390/elf/bsd-_setjmp.S: New file.
* sysdeps/s390/dl-machine.h: New file.
* sysdeps/s390/bzero.S: New file.
* sysdeps/s390/bsd-setjmp.S: New file.
* sysdeps/s390/bsd-_setjmp.S: New file.
* sysdeps/s390/bits/string.h: New file.
* sysdeps/s390/bits/setjmp.h: New file.
* sysdeps/s390/bits/huge_val.h: New file.
* sysdeps/s390/bits/endian.h: New file.
* sysdeps/s390/bits/byteswap.h: New file.
* sysdeps/s390/bcopy.S: New file.
* sysdeps/s390/backtrace.c: New file.
* sysdeps/s390/atomicity.h: New file.
* sysdeps/s390/asm-syntax.h: New file.
* sysdeps/s390/addmul_1.S: New file.
* sysdeps/s390/add_n.S: New file.
* sysdeps/s390/abort-instr.h: New file.
* sysdeps/s390/__longjmp.c: New file.
* sysdeps/s390/Makefile: New file.
* sysdeps/s390/Implies: New file.
* sysdeps/s390/Dist: New file.
Patches by Martin Schwidefsky <schwidefsky@de.ibm.com>.
* sysdeps/ia64/bits/byteswap.h: New file.
Patch by Dan Pop <Dan.Pop@cern.ch>.
* misc/sys/cdefs.h: Define __attribute_format_arg__.
* intl/libintl.h: Use it here instead of using __attribute__ directly.
2000-07-13 H.J. Lu <hjl@gnu.org>
* posix/regex.c (re_max_failures): Set to 4000.
2000-08-01 Ulrich Drepper <drepper@redhat.com>
2000-07-29 Mark Kettenis <kettenis@gnu.org>
* sysdeps/mach/hurd/dl-sysdep.c (_dl_sysdep_start): Take into
acount that elf/rtld's main program might remove some varibales
from the environment if we're trying to be secure. Move the Hurd
startup data if necessary, or, if we there is no startup data,
make sure the magical convention that ARGV[0] is stored just after
the environment list.
2000-08-01 Philip Blundell <philb@gnu.org>
* sysdeps/unix/sysv/linux/arm/Makefile [subdir=resource]
(sysdep_routines): Add oldgetrlimit, oldsetrlimit.
* sysdeps/unix/sysv/linux/arm/syscalls.list: Add oldgetrlimit,
oldsetrlimit for GLIBC_2.0.
(LINE_PARSER): Allow any number of spaces between ip address and
number. Fixes PR libc/1833, reported by rp010gf@voruta.vu.lt.
* nis/nss_nisplus/nisplus-hosts.c (_nss_nisplus_getipnodebyname_r):
Likewise.
* Make-dist (dist): Resolve `..' in file names.
2000-07-31 Jes Sorensen <jes@linuxcare.com>
* sysdeps/ia64/elf/initfini.c: Kill dummy section since align and
endp statements have already been added.
2000-04-18 David Mosberger <davidm@hpl.hp.com>
* sysdeps/unix/sysv/linux/ia64/sysdep.h: Include
<sysdeps/ia64/sysdep.h>.
* sysdeps/ia64/_mcount.S: New file.
* sysdeps/ia64/elf/initfini.c (_init): Preserve gp around call to
__gmon_start__. Fix up extraneous whitespace.
2000-01-12 H.J. Lu <hjl@gnu.org>
* sysdeps/ia64/elf/initfini.c: New file.
2000-07-31 Jes Sorensen <jes@linuxcare.com>
* sysdeps/unix/sysv/linux/ia64/clone.S: Add stop bit to avoid WAW
dependency between branch and ar.pfs write.
2000-07-26 Philip Blundell <philb@gnu.org>
* sysdeps/arm/dl-machine.h (fix_bad_pc24): New function.
(elf_machine_rel): Use it for out-of-range PC24 relocs.
2000-07-28 Philip Blundell <philb@gnu.org>
* math/test-fpucw.c: Ignore reserved bits in control word.
2000-07-28 Philip Blundell <philb@gnu.org>
* sysdeps/unix/sysv/linux/arm/sysdep.h (PSEUDO_RET): New macro.
(ret): Redefine to PSEUDO_RET.
(PSEUDO): Remove jump to syscall_error.
2000-07-29 Mark Kettenis <kettenis@gnu.org>
* resolv/README: Add some information about using the resolver in
multi-threaded code and with C++. Spelling fixes.
2000-07-29 Mark Kettenis <kettenis@gnu.org>
* resolv/resolv.h (struct __sockaddr_in): Remove.
(struct __res_state) [!_LIBC]: Remove reference to __sockaddr_in.
* sysdeps/powerpc/backtrace.c (struct layout): Make pointers
__unbounded.
2000-07-27 Jakub Jelinek <jakub@redhat.com>
* locale/indigits.h (indigit_value): Correct.
* locale/indigitswc.h (indigitwc_value): Correct.
* stdio-common/vfscanf.c (__vfscanf): Fix I18N number
conversion, add GROUP checking for it, fix GROUP number
conversion with strlen(thousands) > 1.
Honour width correctly in the presence of floating
decimal points and thousands separators.
* stdio-common/tst-sscanf.c: New test.
* stdio-common/Makefile: Add it to tests.
* sysdeps/generic/strtol.c (strtol): Fix conversion if there are
thousands separators and group argument is non-zero.
Reported by Andi Kleen <ak@suse.de>.
2000-07-12 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
* sysdeps/unix/sysv/linux/mips/Dist: Add sys/tas.h.
* sysdeps/unix/sysv/linux/mips/Makefile (sysdep_routines): Add
_test_and_set.
(headers): Add sys/tas.h.
* sysdeps/unix/sysv/linux/mips/Versions: Export _test_and_set for
GLIBC_2.2 from libc.
* sysdeps/unix/sysv/linux/mips/_test_and_set.c: New file.
* sysdeps/unix/sysv/linux/mips/sys/tas.h: New file for
_test_and_set.
2000-07-27 Jes Sorensen <jes@linuxcare.com>
* sysdeps/unix/sysv/linux/ia64/fork.c: Make __libc_fork the strong
name and add weak alias for __fork.
* sysdeps/unix/sysv/linux/ia64/syscalls.list: Change llseek, pread
& pwrite to use __libc_<name> as strong names instead of
__syscall_<name>.
* include/sched.h: Add clone2 prototype.
2000-07-26 Jes Sorensen <jes@linuxcare.com>
* sysdeps/unix/sysv/linux/ia64/sysdep.h (ENTRY): Don't declare the
procedure name twice.
2000-07-27 Philip Blundell <philb@gnu.org>
* malloc/malloc.c (HAVE_MREMAP): Undo change of 1997-12-04.
* sysdeps/unix/sysv/linux/bits/socket.h: Rename MSG_URG TO
MSG_CONFIRM following kernel 2.4.0 (MSG_URG was never used).
* sysdeps/unix/sysv/linux/mips/bits/socket.h: Likewise.
Reported by Andi Kleen <ak@suse.de>.
* sysdeps/generic/bp-semctl.h (check_semctl): Fix syntax error
in union init. Pass zero for ignored semnum arg to semctl.
* sysdeps/unix/sysv/linux/shmat.c (shmat): Fix typo.
2000-07-27 Greg McGary <greg@mcgary.org>
* sysdeps/generic/bp-checks.h (BOUNDED_N): Make it work for void*.
* sysdeps/generic/bp-semctl.h (check_semctl): Fix syntax error
in union init. Pass zero for ignored semnum arg to semctl.
* sysdeps/unix/sysv/linux/shmat.c (shmat): Fix typo.
2000-07-26 Andreas Jaeger <aj@suse.de>
* rt/tst-aio4.c: New file, slighlty modified version of tst-aio2.
* rt/tst-aio5.c: New file, slighlty modified version of tst-aio2.
* rt/Makefile: Add rules to build and run tst-aio4 and tst-aio5.
* rt/tst-aio.c (test_file): Fix typo.
* rt/tst-aio64.c (test_file): Likewise.
* rt/tst-aio3.c: New file, slightly modified version of tst-aio2.
* rt/Makefile: Add rules to build and run tst-aio3.
* sysdeps/unix/sysv/linux/netinet/ip.h: Removed ip_options since
it's not needed and confuses only.
2000-07-25 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
* sysdeps/mips/dl-machine.h (_RTLD_PROLOGUE): Stringify using
__STRING(entry) and not #entry.
(_RTLD_EPILOGUE): Likewise.
* sysdeps/mips/mips64/dl-machine.h: Likewise.
2000-07-25 Andreas Jaeger <aj@suse.de>
* stdio-common/Makefile ($(objpfx)tst-unbputc.out): Change parameter
according to changes in test program, run also with static only
builds.
($(objpfx)tst-printf.out): Likewise.
* stdio-common/tst-unbputc.sh: Likewise.
* stdio-common/tst-printf.sh: Likewise.
2000-07-22 Mark Kettenis <kettenis@gnu.org>
* sysdeps/mach/hurd/brk.c (_hurd_set_brk): When shrinking the
program's data space, reallocate only the space that was just
deallocated to release its backing space.
* sysdeps/powerpc/bits/setjmp.h (JB_SIZE): New constant.
* sysdeps/powerpc/elf/libc-start.c (__libc_start_main):
Wrap bounds around argv & envp and each of their string members.
* sysdeps/powerpc/elf/start.S: Designate BP symbols.
* sysdeps/unix/sysv/linux/powerpc/brk.S: Wrap entry-point
symbol in BP_SYM (). Discard bounds of address arg.
* sysdeps/unix/sysv/linux/powerpc/clone.S: Likewise.
* sysdeps/unix/sysv/linux/powerpc/mmap64.c (__mmap64):
Discard bounds on address arg, add bounds to return value.
2000-07-21 Greg McGary <greg@mcgary.org>
* sysdeps/powerpc/bp-asm.h (DISCARD_BOUNDS): Rename from UNCHECK_BOUNDS.
* sysdeps/powerpc/bits/setjmp.h (JB_SIZE): New constant.
* sysdeps/powerpc/elf/libc-start.c (__libc_start_main):
Wrap bounds around argv & envp and each of their string members.
* sysdeps/powerpc/elf/start.S: Designate BP symbols.
* sysdeps/unix/sysv/linux/powerpc/brk.S: Wrap entry-point
symbol in BP_SYM (). Discard bounds of address arg.
* sysdeps/unix/sysv/linux/powerpc/clone.S: Likewise.
* sysdeps/unix/sysv/linux/powerpc/mmap64.c (__mmap64):
Discard bounds on address arg, add bounds to return value.
* elf/Makefile (tests): Add nodlopen. Add rules to generate nodlopen.
* include/dlfcn.h: Define __RTLD_DLOPEN.
* elf/dl-load.c (_dl_map_object_from_fd): If DF_1_NOOPEN is set
and this is a dlopen() call, do not load the binary.
* dlfcn/dlopen.c: Add __RTLD_DLOPEN to mode passed down to _dl_open.
* dlfcn/dlopenold.c: Likewise.
* configure.in: Add test for -z nodelete option.
* config.make.in: Define have-z-nodelete with libc_cv_z_nodelete.
2000-07-20 Mark Kettenis <kettenis@gnu.org>
Make Hesiod NSS module thread-safe.
* hesiod/README.hesiod: Update.
* hesiod/Versions [GLIBC_2.2]: Add _nss_hesiod_getservbyport_r,
_nss_hesiod_setprotoent, _nss_hesiod_endprotoent,
_nss_hesiod_getprotobyname_r, and _nss_hesiod_getprotobynumber_r.
* hesiod/Makefile (libnss_hesiod-routines): Add hesiod-init and
hesiod-proto.
* hesiod/nss_hesiod/hesiod-init.c: New file.
* hesiod/nss_hesiod/hesiod-pwd.c: Rewritten for thread-safeness.
* hesiod/nss_hesiod/hesiod-grp.c: Likewise.
* hesiod/nss_hesiod/nss_hesiod.h: New file.
* hesiod/nss_hesiod/hesiod-service.c
(_nss_hesiod_getservbyport_r): New function. Provide support for
looking up services by port number.
* hesiod/nss_hesiod/hesiod-proto.c: New file.
* hesiod/hesiod.c: Update from BIND 8.2.3-T5B.
* hesiod/hesiod.h: Likewise.
* hesiod/hesiod_p.h: Likewise.
2000-07-20 Mark Kettenis <kettenis@gnu.org>
Fix problems with `struct __res_state' getting too big.
* resolv/resolv.h (struct __sockaddr_in): New definition.
(struct __res_state): Use __sockaddr_in instead of sockaddr_in in
the private parts of the structure to save some space.
* resolv/res_send.c (res_nsend): Cast &EXT(statp).nsaddrs[ns] to
(struct sockaddr_in *) in call to sock_eq.
Use memcpy to copy statp->nsaddr_list[ns] to &EXT(statp).nsaddrs[ns].
2000-07-20 Ulrich Drepper <drepper@redhat.com>
* sysdeps/mach/hurd/dl-sysdep.c: Likewise.
* elf/elf.h: Add various DF_1_*, DTF_1_*, and DF_P1_* entries.
* elf/dl-close.c (_dl_close): Don't close an object if it is marked
with nodelete.
* elf/dl-open.c (dl_open_worker): Pass RTLD_NOLOAD as new parameter
to _dl_map_object. Return immediately if no object loaded.
Set DF_1_NODELETE bit in l_flags_1 if RTLD_NODELETE was passed.
* elf/dynamic-link.h (elf_get_dynamic_info): Copy DT_FLAGS_1 entry
if it exists into l_flags_1 word.
* elf/dl-load.c (_dl_map_object_from_fd): Take no parameter and use
it to determine whether loading is wanted or not.
(_dl_map_object): Likewise.
Call _dl_map_object_from_fd with new parameter.
* sysdeps/generic/ldsodefs.h: Update prototype.
* elf/dl-deps.c: Add new parameter to _dl_map_object calls.
* elf/rtld.c: Likewise.
* elf/Makefile (tests): Add noload. Add rules to generate noload.
* elf/noload.c: New file.
* include/link.h (struct link_map): Add l_feature_1 and l_flags_1.
* sysdeps/generic/bits/dlfcn.h: Define RTLD_NOLOAD and RTLD_NODELETE.
* sysdeps/mips/bits/dlfcn.h: Likewise.
2000-07-18 Kaz Kylheku <kaz@ashi.footprints.net>
* spinlock.c (__pthread_alt_lock, __pthread_alt_timedlock): Fixed
bug whereby thr field of waitnode structure would not be correctly
set unless a null self pointer is passed to the functions.
Eliminated redundant calls to thread_self().
(profile_fixup): Don't define for __BOUNDED_POINTERS__.
* sysdeps/i386/dl-machine.h: Don't use regparm attribute for
__BOUNDED_POINTERS__.
(ELF_MACHINE_RUNTIME_TRAMPOLINE): Use non-regparm version
for __BOUNDED_POINTERS__.
* iconv/gconv_trans.c: Add #include <stdlib.h> to get malloc decl.
* elf/dl-runtime.c (fixup): Trampoline passes unbounded pointer.
(profile_fixup): Don't define for __BOUNDED_POINTERS__.
* sysdeps/i386/dl-machine.h: Don't use regparm attribute for
__BOUNDED_POINTERS__.
(ELF_MACHINE_RUNTIME_TRAMPOLINE): Use non-regparm version
for __BOUNDED_POINTERS__.