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.
1999-12-30 Geoffrey Keating <geoffk@cygnus.com>
* sysdeps/powerpc/dl-machine.c: Many minor formatting changes.
(OPCODE_LWZU): New macro.
(OPCODE_ADDIS_HI): New macro.
(OPCODE_LIS_HI): New macro.
(__elf_machine_runtime_setup): Change PLT code-generation scheme
for thread safety even with very large PLTs, better efficiency,
and to fix a cache-flushing bug. Also support the Motorola
8xx processors which have a different cache line size than all
the others.
(__elf_machine_fixup_plt): Likewise.
(__process_machine_rela): Don't use elf_machine_fixup_plt.
the (void) casts as now feraiseexcept returns a value.
(feclearexcept): Likewise.
* sysdeps/unix/sysv/linux/powerpc/sysdep.h: Don't use '%r0',
it interferes with the macros for AIX.
1999-12-30 Geoff Keating <geoffk@cygnus.com>
* sysdeps/powerpc/fpu/bits/fenvinline.h (feraiseexcept): Remove
the (void) casts as now feraiseexcept returns a value.
(feclearexcept): Likewise.
* sysdeps/unix/sysv/linux/powerpc/sysdep.h: Don't use '%r0',
it interferes with the macros for AIX.
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-11-08 Andreas Jaeger <aj@suse.de>
* locale/findlocale.c (_nl_find_locale): Free normalized_codeset;
this fixes a memory leak (closes PR libc/1435).
* intl/l10nflist.c (_nl_normalize_codeset): Update comment to
reflect memory allocation.
* intl/loadinfo.h: Comment _nl_normalize_codeset, comment memory
allocation in _nl_explode_name.
1999-11-06 Andreas Jaeger <aj@suse.de>
* time/tzset.c: Use __libc_lock_define_initialized for tzset_lock
to initialize it.
Reported by wes@surety.com, closes PR libc/1432.
1999-11-05 Geoff Keating <geoffk@cygnus.com>
* sysdeps/powerpc/fpu/bits/fenv.h: Don't put commas at the end of
enumerator lists (-pedantic complains).
(feraiseexcept): Use i#*X as the constraint. Fix a bug in the
test for 'one bit set'.
(feclearexcept): Likewise.
1999-10-10 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/powerpc/sysdep.h: New file.
* sysdeps/unix/powerpc/sysdep.h: New file.
* sysdeps/unix/sysv/linux/powerpc/sysdep.h: Include
sysdeps/unix/powerpc/sysdep.h, not sysdeps/unix/sysdep.h.
* sysdeps/powerpc/fpu/s_copysign.S: Use symbolic names for registers
instead of bare numbers.
* sysdeps/powerpc/fpu/s_fabs.S: Likewise.
* sysdeps/powerpc/fpu/s_fmax.S: Likewise.
* sysdeps/powerpc/fpu/s_fmin.S: Likewise.
* sysdeps/hppa/sysdep.h: New file.
* 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>
* 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.
1998-12-28 Ulrich Drepper <drepper@cygnus.com>
* stdlib/fpioconst.c: If __NO_LONG_DOUBLE_MATH don't define constants
beyond range of double.
* stdlib/fpioconst.h (_fpioconst_pow10): Reduce size according to
fpioconst.c change.
* stdlib/strtold.c: Fall back on double functions if
__NO_LONG_DOUBLE_MATH.
* stdlib/strtold_l.c: Likewise.
* wcsmbs/wcstold.c: Likewise.
* wcsmbs/wcstold_l.c: Likewise.
* sysdeps/ieee754/ldbl2mpn.c: Don't generate code if
__NO_LONG_DOUBLE_MATH.
* sysdeps/ieee754/mpn2ldbl.c: Likewise.
1998-12-28 Geoff Keating <geoffk@ozemail.com.au>
* sysdeps/powerpc/bits/endian.h: Use #warning, not #error, if
the endianness can't be determined, for makedepend.
* sysdeps/powerpc/dl-machine.h (elf_machine_matches_host): Mark
static inline, not extern inline.
(elf_machine_dynamic): Likewise.
(elf_machine_lazy_rel): Likewise.
(elf_machine_plt_value): Likewise.
* sysdeps/powerpc/backtrace.c: Include stddef.h to get NULL
definition.
Patches by Franz Sirl <Franz.Sirl-kernel@lauterbach.com>.
1998-11-17 Ulrich Drepper <drepper@cygnus.com>
* stdio-common/printf_fphex.c (__printf_fphex): Correct printing
of denormalized numbers.
1998-10-06 Geoff Keating <geoffk@ozemail.com.au>
* sysdeps/powerpc/dl-machine.h (elf_machine_load_address): Suppress
another parentheses warning, make nano-optimisation.
* sysdeps/powerpc/dl-machine.h (_dl_runtime_resolve): Preserve
saved LR on stack so _mcount works.
(_dl_prof_resolve): Likewise.
* sysdeps/powerpc/register-dump.h: Print FPRs. Adjust for correct
signal handler calling convention.
* sysdeps/unix/sysv/linux/powerpc/sigcontextinfo.h: Adjust for
correct signal handler calling convention---more like x86 linux and
mklinux, less like linux-ppc versions between 2.1 and 2.1.126.
1998-11-17 Ulrich Drepper <drepper@cygnus.com>
* configure.in: Correct allowed makeinfo version.
1998-11-17 Philip Blundell <pb@nexus.co.uk>
* sysdeps/generic/bits/mathdef.h: Fix typo.
* intl/locale.alias: Change `japanese' alias to match X11R6's.
1998-09-13 18:04 Geoff Keating <geoffk@ozemail.com.au>
* sysdeps/powerpc/dl-machine.c (PPC_DCBST,PPC_SYNC,PPC_ISYNC,PPC_ICBI):
Don't mark asm `volatile'.
(__elf_machine_runtime_setup): Clear the last partial block in the PLT
from the data cache too. Assume it isn't in the instruction cache yet.
(__elf_machine_fixup_plt): Clear the modified address from the caches.
1998-09-09 18:48 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/powerpc/dl-start.S (_start): Pass pointer to
_dl_main_searchlist not _dl_default_scope to _dl_init_next.
Patch by Benjamin Kosnik <bkoz@cygnus.com>.
1998-08-09 Geoff Keating <geoffk@ozemail.com.au>
* sysdeps/powerpc/Makefile [subdir=elf]: Add new files split out of
dl-machine.h.
* sysdeps/powerpc/dl-machine.c: New file.
* sysdeps/powerpc/dl-machine.h: Move much stuff into separate
files. Revise ELF_PREFERRED_ADDRESS to take account of
the new mapping information (fixes bug involving huge bloated
web browser). Set ELF_MACHINE_PLTREL_OVERLAP.
* sysdeps/powerpc/dl-start.S: New file.
* elf/dl-load.c (_dl_map_object_from_fd): Initialise l_map_start,
l_map_end.
* elf/do-rel.h: Call elf_machine_rel only once (to save space).
* elf/dynamic-link.h: Allow PLT relocs to be in the middle of the
others. Call elf_dynamic_do_##reloc only once (to save even more
space).
* elf/link.h: Add new members l_map_start and l_map_end to keep
track of the memory map.
* elf/rtld.c (_dl_start): Initialise l_map_start for ld.so and
the executable.
1998-09-01 11:53 Ulrich Drepper <drepper@cygnus.com>
* debug/Makefile (catchsegv): We need not rewrite SOVER anymore.
Reported by Andreas Jaeger.
* posix/glob.h: Use __size_t instead of size_t in definitions and
make sure this is defined.
* manual/locale.texi: Almost complete rewrite. Document more functions
1998-08-26 17:48 Ulrich Drepper <drepper@cygnus.com>
* elf/dl-close.c (_dl_close): Move map->l_nsearchlist value into local
variable so that map can be freed.
Reported by Philippe Troin <phil@fifi.org>.
* elf/dl-open.c (dl_open_worker): Correct test for extending global
scope array.
Patch by Philippe Troin <phil@fifi.org>.
1998-08-26 Geoff Keating <geoffk@ozemail.com.au>
* sysdeps/powerpc/register-dump.h: Rewrite. Much nicer this way.
Don't call writev() with a 100-element vector.
* sysdeps/generic/segfault.c (catch_segfault): Skip top-level NULL
return address.
* sysdeps/powerpc/elf/libc-start.c: Sync up with generic version.
In particular, set __libc_stack_end.
* sysdeps/powerpc/elf/start.S: Allow _init and _fini to be
undefined. Fix copyright notice.
1998-08-25 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* math/Makefile (gmp-objs): New variable.
($(objpfx)atest-exp, $(objpfx)atest-sincos, $(objpfx)atest-exp2):
Depend on it.
(tests): Add atest-exp atest-sincos atest-exp2.
(tests-static): Remove atest-exp atest-sincos atest-exp2.
* elf/rtld.c (dl_main): Unload map file before jumping to user code.
1998-08-14 10:08 Ulrich Drepper <drepper@cygnus.com>
* manual/texinfo.tex: Update.
1998-08-07 Geoff Keating <geoffk@ozemail.com.au>
* sysdeps/powerpc/backtrace.c: New file.
1998-08-14 Philip Blundell <pb@nexus.co.uk>
* sysdeps/arm/fpu/setjmp.S: Correct value of R0 before calling
sigjmp_save.
* sysdeps/arm/elf/setjmp.S: Obsolete, deleted.
1998-08-11 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* Makefile (install-symbolic-link): Fix spelling.
1998-08-11 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* elf/elf.h (SHT_HIOS): Fix value.
1998-08-10 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* posix/regex.c (WIDE_CHAR_SUPPORT): Don't generate defined as
part of the expansion, this is undefined by the standard.
1998-06-03 03:09 Geoff Keating <geoffk@ozemail.com.au>
* sysdeps/unix/sysv/linux/pread.c: Detect missing syscall, like poll().
* sysdeps/unix/sysv/linux/pread64.c: Likewise.
* sysdeps/unix/sysv/linux/pwrite.c: Likewise.
* sysdeps/unix/sysv/linux/pwrite64.c: Likewise.
1998-06-03 03:09 Geoff Keating <geoffk@ozemail.com.au>
* sysdeps/powerpc/Makefile: Use -G0 on the startup file; this
makes it easier to undump emacs.
* sysdeps/powerpc/bits/endian.h: Use more informative error message
for when the endianness can't be determined.
1998-06-04 13:19 Geoff Keating <geoffk@ozemail.com.au>
* nss/Makefile: Add files publickey database support.
* nss/libnss_files.map: Export the required functions.
* nss/nss_files/files-key.c: Implement it.
* sunrpc/rpc/auth_des.h: Correct typos in comments.
1998-04-16 07:42 Geoff Keating <geoffk@ozemail.com.au>
* Makeconfig [!build-static]: Link `static' binaries with libc_pic.a.
Still need *FLAGS-.o because we still sometimes build .o files.
* db2/Makefile: Don't build libndbm.a if !build-static.
1998-04-16 07:42 Geoff Keating <geoffk@ozemail.com.au>
* configure.in: New test for broken gcc on PowerPC.
* sysdeps/powerpc/atomicity.h: Use result of test.
* linuxthreads/sysdeps/powerpc/pt-machine.h: Use result of test.
* math/libm-test.c: Update many of the epsilon to match actual
performance.
* sysdeps/libm-ieee754/e_exp.c: Reduce the number of branches.
* sysdeps/libm-ieee754/e_expf.c: Likewise.
* sysdeps/libm-ieee754/s_exp2.c: Likewise.
* sysdeps/libm-ieee754/s_exp2f.c: Likewise.
* sysdeps/libm-ieee754/e_pow.c: Correct typo.
* sysdeps/powerpc/elf/libc-start.c: New file.
* sysdeps/powerpc/elf/start.S: New file, use libc-start.
* sysdeps/powerpc/elf/start.c: Delete.
* sysdeps/unix/sysv/linux/powerpc/Dist: Remove syscall.h
* sysdeps/unix/sysv/linux/powerpc/syscall.h: Delete. It was unused.
* sysdeps/unix/sysv/linux/powerpc/dl-sysdep.c: Correct previous
few patches.