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.