Switch branches/tags
aj/revert-sunrpc aj/shared-linux-fcntl allan/config-files andros/avx512f-mem andros/libmvec andros/pr19654 archlinux/2.18/master azanella/bz12683 carlos/dlmopen carlos/master cmetcalf/tile-2.15 cvs/fedora-2_3-branch cvs/fedora-2_5-branch cvs/fedora-branch cvs/glibc-2-1-branch cvs/glibc-2-2-branch cvs/glibc-2_0_x cvs/glibc-2_3-branch cvs/glibc-2_5-branch cvs/glibc-2_6-branch cvs/glibc-2_7-branch cvs/glibc-2_8-branch cvs/glibc-2_9-branch cvs/glibc-2_10-branch cvs/master cvs/sparc-2_0_x-branch cvs/thomas-posix1996 davem/sparc dj/malloc fedora/master fedora/2.10/master fedora/2.11/master fedora/2.12/master fedora/2.13/master fedora/2.14/master fedora/2.22/master fw/extend_alloca gentoo/2.18 gentoo/2.19 gentoo/2.20 gentoo/2.21 gentoo/2.22 gentoo/2.23 hjl/avx128 hjl/avx512f-mem/master hjl/avx512f-mem/old hjl/avx512f-mem/prefetcht1 hjl/cpuid/master hjl/cpuid/2.21 hjl/cpuid/2.22 hjl/ctor/release/2.11 hjl/ctor/release/2.12 hjl/erms/i386 hjl/erms/ifunc hjl/erms/master hjl/erms/nt hjl/erms/2.22 hjl/erms/2.23 hjl/fma/master hjl/global hjl/gold hjl/i386/master hjl/i486/multiarch-old hjl/i486/multiarch hjl/implies hjl/init hjl/ hjl/memcpy/dpdk/master hjl/mempcpy hjl/plt/master hjl/plt/2.21 hjl/plt/2.22 hjl/pr13862 hjl/pr14370 hjl/pr14562/master hjl/pr14562/2.16 hjl/pr14654 hjl/pr14716 hjl/pr14831 hjl/pr14937 hjl/pr14941 hjl/pr14955 hjl/pr14995 hjl/pr17711/2.18 hjl/pr17711/2.19 hjl/pr17711/2.20 hjl/pr17711/2.21 hjl/pr17841/master hjl/pr17841/2.21 hjl/pr18078 hjl/pr18422 hjl/pr18661 hjl/pr18696 hjl/pr18858/master hjl/pr19122 hjl/pr19178/master hjl/pr19363/clobber hjl/pr19363/master hjl/pr19363/2.22 hjl/pr19371/master hjl/pr19463 hjl/pr19583 hjl/pr19590 hjl/pr19679/2.23 hjl/pr19776/master hjl/pthread/2.21 hjl/pthread/2.22 hjl/release/2.20/master hjl/secondary/master hjl/secondary/2.21 hjl/size/master hjl/tst-plt hjl/unaligned hjl/x32/master hjl/x32/release/2.12 hjl/x32/release/2.15 hjl/x86 hjl/32bit/master hjl/32bit/2.22 ibm/master ibm/2.8/master ibm/2.10/master ibm/2.11/master ibm/2.12/master ibm/2.13/master ibm/2.16/master ibm/2.18/master ibm/2.19/master ibm/2.20/master ibm/2.22/master ldmitrie/intel_mpx linaro/master lxoliva/getaddrinfo master neleai/string-x64 neleai/strlen origin/ibm/2.8/master pasky/fixes-overdue pasky/fixes release/2.10/master release/2.11/master release/2.12/master release/2.13/master release/2.14/master release/2.15/master release/2.16/master release/2.17/master release/2.18/master release/2.19/master release/2.20/master release/2.21/master release/2.22/master release/2.23/master roland/Wshadow roland/add-on-abi-tags roland/backtrace-syms roland/cancelhandling roland/disable-nis roland/getpid roland/gold-vs-libc roland/hwcap_mask roland/manual-check roland/nacl-debug-hack roland/nacl-exit-stacks roland/nacl-port/master roland/nptl_db roland/pthread_attr_getstack roland/stat64 roland/sysconf-clocks roland/tempname roland/x86_64-crt1-cfi rsa/hwcap2_v3 rsa/hwcap2_v4 rsa/hwcap2_v5 rsa/hwcap2_v6 rsa/power8_partial rsa/power8 rsa/stdint_headers rsa/stdint_noheaders rsa/stdint rsa/2.17_backports_v2 rsa/2.17_backports_v3 rsa/2.17_backports rth/aa-memset rth/aa-opt rth/execl rth/tramp siddhesh/is_in_module siddhesh/mmap-fallback siddhesh/posix-wundef siddhesh/sem_timedwait siddhesh/tunables tuliom/multilib
Nothing to show
Find file Copy path
1233be7 Feb 12, 2016
0 contributors

Users who have contributed to this file

16760 lines (12862 sloc) 627 KB
2004-04-19 Roland McGrath <>
* rt/tst-mqueue9.c (do_test): Initialize RESULT.
2004-04-19 Jakub Jelinek <>
* sysdeps/unix/sysv/linux/mq_unlink.c (mq_unlink): Change EPERM into
* rt/Makefile (tests): Add tst-mqueue9.
* rt/tst-mqueue9.c: New test.
* rt/tst-mqueue4.c (do_test): Add test for mq_unlink of a too long
name component.
2004-04-19 Ulrich Drepper <>
* rt/tst-mqueue7.c (do_test): Make newargv const.
2004-04-18 Randolph Chung <>
* sysdeps/hppa/elf/entry.h: New file.
* sysdeps/hppa/machine-gmon.h: New file.
* sysdeps/unix/sysv/linux/hppa/profil-counter.h: Don't use x86 version.
2004-04-18 Ulrich Drepper <>
* sysdeps/unix/sysv/linux/powerpc/rt-sysdep.c: New file.
* sysdeps/unix/sysv/linux/powerpc/Makefile (librt-routines): Add
* rt/tst-mqueue5.c (mqsend): Don't inline.
(mqrecv): Likewise.
* rt/tst-timer4.c: Include <string.h>.
2004-04-17 Jakub Jelinek <>
* rt/Makefile (tests): Add tst-mqueue8.
* rt/tst-mqueue8.c: New test.
* sysdeps/unix/sysv/linux/s390/Makefile (librt-routines): Add
* sysdeps/unix/sysv/linux/s390/rt-sysdep.S: New file.
2004-03-26 H.J. Lu <>
* sysdeps/unix/sysv/linux/wordsize-64/fxstat.c (__fxstat): Don't
use "struct kernel_stat".
2004-04-02 H.J. Lu <>
* sysdeps/ia64/memcmp.S: Fix symbol.
2004-04-04 Carlos O'Donell <>
* sysdeps/hppa/Dist: Add bits/link.h elf/entry.h.
* sysdeps/hppa/bits/link.h: New file.
* sysdeps/hppa/dl-machine.h (__hppa_init_bootstrap_fdesc_table):
Initialze the fdesc table for the generic code.
(elf_machine_dynamic): Use asm version.
(elf_machine_load_addresss): Simplify asm by calling
(elf_machine_fixup_plt): Correct comment.
(elf_machine_profile_fixup_plt): New.
(elf_machine_runtime_setup): Check PLT exists, if lazy=1 process
normally, else relocate all the absolute entries.
(RTLD_START): Fix comments.
(TRAMPOLINE_TEMPLATE): Reformat assembly, add return pointer for
calls to profile_fixup.
(dl_platform_init): New.
(elf_machine_rela): Use generic fdesc code, and process all COPY
relocations. Use __attribute__((always_inline)).
(elf_machine_rela_relative): Add sanity checks, remove IPLT
processing, print error message in default case. Use
(elf_machine_lazy_rel): Use __attribute__((always_inline)).
2004-04-05 Carlos O'Donell <>
* sysdeps/hppa/fpu/feupdateenv.c (feupdateenv): Use only sw[0]
and call feraiseexcept.
2003-11-15 Randolph Chung <>
* gmon/gmon.c (__monstartup): Round kcountsize to multiples of
the froms[] array so the array is properly aligned.
2004-04-05 H.J. Lu <>
* Makeconfig (libgcc_eh): Add -Wl,.
* Add -lgcc_s for --as-needed check.
2004-04-16 Kaz Kojima <>
* sysdeps/sh/elf/ New file.
2004-04-17 Ulrich Drepper <>
* iconvdata/gconv-modules: Add PT154 and RK1048 entries.
* iconvdata/ Add PT154 and RK1048.
* iconvdata/Makefile (modules): Add PT154 anhd RK1048.
(distribute): Add pt154.c and rk1048.c.
(gen-8bit-gap-modules): Add pt154 and rk1048.
* icondata/pt154.c: New file.
* iconvdata/rk1048.c: New file.
* rt/tst-timer4.c: Disable some tests, mark errors better.
2004-04-16 Ulrich Drepper <>
* rt/tst-mqueue6.c (mqsend): Don't inline.
(mqrecv): Likewise.
* rt/tst-mqueue3.c (do_test): Cope with kernel without mq support.
* sysdeps/ieee754/bits/nan.h (__nan_union): Add __attribute_used__
attribute to keep gcc quiet.
2004-04-16 Jakub Jelinek <>
* misc/syslog.c (vsyslog): Avoid freeing failbuf.
2004-04-15 Jakub Jelinek <>
* rt/Makefile (tests): Add tst-timer4.
* rt/tst-timer4.c: New test.
2004-04-15 Jakub Jelinek <>
* rt/tst-mqueue5.c (rtmin_code): New variable.
(rtmin_handler): Set it.
(thr, do_child, do_test): Also check rtmin_code.
2004-04-14 Jakub Jelinek <>
* rt/Makefile (tests): Add tst-mqueue7.
(tst-mqueue7-ARGS): Set.
* rt/tst-mqueue7.c: New test.
2004-04-13 Jakub Jelinek <>
* rt/Makefile (tests): Add tst-mqueue5 and tst-mqueue6.
* rt/tst-mqueue1.c (do_one_test): Bitwise or check_attrs () into
result instead of replacing it. Use TEMP_FAILURE_RETRY around
waitpid, kill child if waitpid failed.
(do_test): Bitwise or check_attrs () into result instead of replacing
it. Change temp mq name.
* rt/tst-mqueue5.c: New test.
* rt/tst-mqueue6.c: New test.
* rt/tst-mqueue.h: Include stdio.h, unistd.h, sys/uio.h.
(temp_mq_list, delete_temp_mqs): Remove.
(temp_mq_fd): New variable.
(do_cleanup, do_prepare): New functions.
(add_temp_mq): Rewritten to use a temp file.
(PREPARE): Define.
(CLEANUP_HANDLER): Change to do_cleanup ().
* rt/tst-timer3.c: Don't fail if _POSIX_THREADS is not available.
2004-04-13 Thorsten Kukuk <>
* sysdeps/s390/ffs.c: Include limits.h
2004-04-13 Kaz Kojima <>
* sysdeps/unix/sysv/linux/sh/sysdep.h (SUBSTITUTE_ARGS_1,
argument values into temporary variables.
2004-04-15 Atsushi Nemoto <>
* sysdeps/mips/dl-machine.h (RTLD_START): Do not use nested .end.
2004-04-12 Ulrich Drepper <>
* rt/Makefile (tests): Add tst-timer3.
* rt/tst-timer3.c: New file. By Roland McGrath.
2004-04-08 Ulrich Drepper <>
* rt/tst-mqueue3.c: New file.
* rt/Makefile (tests): Add tst-mqueue3.
2004-04-08 Jakub Jelinek <>
* rt/tst-mqueue1.c: New file.
* rt/tst-mqueue2.c: New file.
* rt/tst-mqueue4.c: New file.
* rt/Makefile (tests): Add tst-mqueue1, tst-mqueue2, tst-mqueue4.
* rt/Versions (librt): Add mq_*@@GLIBC_2.3.4.
* rt/Makefile (headers): Add mqueue.h and bits/mqueue.h.
(mq-routines): Set.
(librt-routines): Use it.
* rt/mqueue.h: New file.
* include/mqueue.h: New file.
* sysdeps/generic/bits/mqueue.h: New file.
* sysdeps/generic/mq_setattr.c: New file.
* sysdeps/generic/mq_getattr.c: New file.
* sysdeps/generic/mq_notify.c: New file.
* sysdeps/generic/mq_close.c: New file.
* sysdeps/generic/mq_send.c: New file.
* sysdeps/generic/mq_unlink.c: New file.
* sysdeps/generic/mq_receive.c: New file.
* sysdeps/generic/mq_timedreceive.c: New file.
* sysdeps/generic/mq_timedsend.c: New file.
* sysdeps/generic/mq_open.c: New file.
* sysdeps/unix/sysv/linux/bits/local_lim.h (MQ_PRIO_MAX): Define.
* sysdeps/unix/sysv/linux/bits/mqueue.h: New file.
* sysdeps/unix/sysv/linux/syscalls.list: Add mq_timedsend,
mq_timedreceive and mq_setattr.
* sysdeps/unix/sysv/linux/mq_getattr.c: New file.
* sysdeps/unix/sysv/linux/mq_notify.c: New file.
* sysdeps/unix/sysv/linux/mq_close.c: New file.
* sysdeps/unix/sysv/linux/mq_send.c: New file.
* sysdeps/unix/sysv/linux/mq_unlink.c: New file.
* sysdeps/unix/sysv/linux/mq_receive.c: New file.
* sysdeps/unix/sysv/linux/mq_open.c: New file.
2004-04-09 Andreas Schwab <>
* sysdeps/unix/sysv/linux/ia64/sysdep.h (DO_INLINE_SYSCALL): Move
LOAD_ARGS_##nr up front and add LOAD_REGS_##nr.
(LOAD_ARGS_5, LOAD_ARGS_6): Load argument values into temporary
(LOAD_REGS_5, LOAD_REGS_6): New macros to actually load the
syscall argument registers.
* sysdeps/unix/sysv/linux/x86_64/sysdep.h (INTERNAL_SYSCALL): Add
(LOAD_ARGS_5, LOAD_ARGS_6): Load argument values into temporary
(LOAD_REGS_5, LOAD_REGS_6): New macros to actually load the
syscall argument registers.
2004-04-09 Andreas Schwab <>
* sysdeps/unix/sysv/linux/m68k/sysdep.h (INTERNAL_SYSCALL): Add
(LOAD_ARGS_5, LOAD_ARGS_6): Load argument values into temporary
(LOAD_REGS_5, LOAD_REGS_6): New macros to actually load the
syscall argument registers.
2004-04-09 Thorsten Kukuk <>
* sysdeps/s390/ffs.c: Don't add ffsl weak alias on s390x.
2004-04-09 Steven Munroe <>
* sysdeps/unix/sysv/linux/powerpc/powerpc64/umount.c: New file.
2004-04-08 Ulrich Drepper <>
* po/nl.po: Update from translation team.
2004-04-04 Ulrich Drepper <>
* math/test-tgmath.c: Declare compile_testl inly if we will define it.
2004-04-03 Ulrich Drepper <>
* sysdeps/powerpc/powerpc64/ffsll.c: New file.
* string/test-ffs.c: Also test ffsl and ffsll.
* sysdeps/powerpc/ffs.c: Don't define ffsl for ppc64.
* sysdeps/powerpc/powerpc64/bits/atomic.h: Never use matching
constraints for asm mem parameters.
* sysdeps/powerpc/bits/atomic.h: Likewise.
* sysdeps/powerpc/elf/libc-start.c: No need for a separate
function for __aux_init_cache.
* inet/test-ifaddrs.c: Fight warnings.
* argp/argp-help.c: Fight warnings.
* include/time.h: Declare __difftime.
* sysdeps/unix/sysv/linux/internal_statvfs.c: Restructure to avoid
duplication in 64-bit version.
* sysdeps/unix/sysv/linux/wordsize-64/internal_statvfs64.c: New file.
2004-04-03 Andreas Jaeger <>
* nis/nss-nis.c: Include <string.h> for strncmp.
2004-03-30 H.J. Lu <>
* Makeconfig (link-libc-static): Use $(static-gnulib) instead
of $(gnulib).
(libgcc_eh): New variable.
(gnulib): Use it variable.
(static-gnulib): New variable.
* Makerules ( Use $(static-gnulib) instead of $(gnulib).
* (have-as-needed): New variable.
* Check if linker supports --as-needed.
2004-04-02 Ulrich Drepper <>
* sysdeps/unix/sysv/linux/internal_statvfs64.c: New file.
* sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines):
Add internal_statvfs64.
* sysdeps/unix/sysv/linux/internal_statvfs.c: Allow to be used to
compile 64bit version.
* sysdeps/unix/sysv/linux/statvfs64.c: Use __fstatfs64 and skip
compatibility code if __ASSUME_STATFS64 is defined.
* sysdeps/unix/sysv/linux/fstatvfs64.c: Likewise.
* sysdeps/unix/sysv/linux/statfs64.c: Don't add __no_statfs64 if
2004-04-02 Thorsten Kukuk <>
* nis/nss_nis/nis-ethers.c (saveit): Fix return codes in error case.
* nis/nss_nis/nis-initgroups.c (saveit): Likewise.
* nis/nss_nis/nis-proto.c (saveit): Likewise.
* nis/nss_nis/nis-rpc.c (saveit): Likewise.
* nis/nss_nis/nis-service.c (saveit): Likewise.
2004-04-02 Jakub Jelinek <>
(_nis_default_nss_flags, _nis_check_default_nss): New decls.
(_nis_default_nss): New inline.
* nis/nss-nis.c: Include ctype.h, stdio.h and stdio_ext.h.
(_nis_default_nss_flags, default_nss): New variables.
(_nis_check_default_nss): New function.
* nis/nss_nis/nis-initgroups.c: Don't include stdio.h and
(check_default_nss, default_nss): Move to nss-nis.c.
(init): Removed.
(_nss_nis_initgroups_dyn): Use _nis_default_nss ().
* nis/nss_nis/nis-services.c (_nss_nis_getservbyname_r): If
NSS_FLAG_SERVICES_AUTHORITATIVE and services.byservicename lookup
fails, return immediately.
2004-04-01 Roland McGrath <>
* elf/tst-execstack.c (do_test): Make F static.
2004-04-01 Ulrich Drepper <>
* sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Use
__sigprocmask not sigprocmask.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Likewise.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Likewise.
* include/string.h: Add libc_hidden_builtin_proto for memcmp.
* sysdeps/generic/memcmp.c: Add libc_hidden_builtin_def.
* sysdeps/i386/memcmp.S: Likewise.
* sysdeps/i386/i686/memcmp.S: Likewise.
* sysdeps/ia64/memcmp.S: Likewise.
* sysdeps/sparc/sparc64/memcmp.S: Likewise.
* sysdeps/unix/sysv/linux/sigprocmask.c: Include <string.h>.
* time/mktime.c: Likewise.
* misc/getpass.c: Likewise.
* time/difftime.c (__difftime): New renamed. Make old name alias.
Use __difftime in recursive call.
* sysdeps/unix/sysv/linux/powerpc/ioctl.c (__ioctl): Use
__tcgetattr() instead of tcgetattr().
* sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S [SHARED]:
Use __GI_exit.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S [SHARED]: Use
* sysdeps/powerpc/fpu/bits/mathinline.h: Add __signbitf and
__signbit inlines.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: Use
__sigprocmask not sigprocmask.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: Likewise.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Likewise.
* elf/elf.h: Define more ppc64 specific dynamic tags.
2004-04-01 Jakub Jelinek <>
* nis/nss_nis/nis-service.c (_nss_nis_getservbyname_r): If protocol
is NULL, instead of trying yp_match (name/tcp), yp_match (name/udp),
yp_all, try yp_match (name), yp_all.
2004-04-01 Ulrich Drepper <>
* sysdeps/generic/dl-sysdep.c (_dl_show_auxv): Add handling for
ignored entries. Ignore AT_IGNOREPPC.
2004-03-31 Andreas Jaeger <>
* libio/fileops.c (new_do_write): Return _IO_size_t to make 64-bit
2004-03-31 Ulrich Drepper <>
* locale/programs/localedef.c (construct_output_path): Remove
remnants of CEN locale names.
2004-03-30 Thorsten Kukuk <>
* sysdeps/unix/sysv/linux/alpha/bits/termios.h: Add IUTF8.
* sysdeps/unix/sysv/linux/bits/termios.h: Likewise.
* sysdeps/unix/sysv/linux/mips/bits/termios.h: Likewise.
* sysdeps/unix/sysv/linux/powerpc/bits/termios.h: Likewise.
* sysdeps/unix/sysv/linux/sparc/bits/termios.h: Likewise.
2004-03-30 Richard Henderson <>
* sysdeps/alpha/remqu.S: Detect power-of-two special case.
2004-03-30 Ulrich Drepper <>
* sysdeps/generic/libc-start.c (LIBC_START_MAIN)
[HAVE_CLEANUP_JMP_BUF]: Call __nptl_deallocate_tsd.
2004-03-30 Jakub Jelinek <>
* nis/nss_nis/nis-service.c (_nss_nis_getservbyname_r): If protocol
== NULL, try name/tcp and name/udp first before falling back into
the sequential scanning. Use services.byname database for
sequential scanning.
(_nss_nis_getservbyport_r): Likewise. Just allocate sizeof (int) * 3
chars for integer.
* nis/nss_nis/nis-service.c (_nss_nis_getservbyport_r): Convert
proto to host by order for snprintf.
2004-03-30 Ulrich Drepper <>
* nss/getent.c (services_keys): Don't implement lookups with
missing protocol using getservent loop, just pass NULL.
* sysdeps/unix/sysv/linux/i386/setgroups.c (setgroups): Avoid
comparison with limit if we can rely on the syscall being available.
* nis/nss_nis/nis-initgroups.c: Implement getting the information
from the netid.byname map if the system administrator allows this.
* nis/Makefile (distribute): Add nss.
* nis/nss: New file.
* grp/initgroups.c (initgroups): Limit the initial allocation to 64
entries to not allocate too much on systems with really high limits.
2004-03-30 Jakub Jelinek <>
* nis/nss_nis/nis-service.c (struct search_t): New type.
(dosearch): New function.
(_nss_nis_getservbyname_r): Use it. Call yp_get_default_domain
(_nss_nis_getservbyport_r): Likewise.
2004-03-29 Alexandre Oliva <>
* sysdeps/unix/sysv/linux/sched_getaffinity.c: Prepend GLIBC_ to
version names is SHLIB_COMPAT check.
* sysdeps/unix/sysv/linux/sched_setaffinity.c: Likewise.
2004-03-29 Ulrich Drepper <>
* nis/nss_nis/nis-rpc.c (saveit): Improve memory handling. No need to
allocate multiple blocks.
(internal_nis_endrpcent): Adjust accordingly.
* nis/nss_nis/nis-proto.c (saveit): Improve memory handling. No need
to allocate multiple blocks.
(internal_nis_endprotoent): Adjust accordingly.
* nis/nss_nis/nis-initgroups.c (saveit): Improve memory handling. No
need to allocate multiple blocks.
(_nss_nis_initgroups_dyn): Adjust accordingly.
* nis/nss_nis/nis-ethers.c (saveit): Improve memory handling. No need
to allocate multiple blocks.
(internal_nis_endetherent): Adjust accordingly.
* nis/nss_nis/nis-service.c (saveit): Improve memory handling. No need
to allocate multiple blocks.
(internal_nis_endservent): Adjust accordingly.
* nss/getXXbyYY_r.c: Return 0 for NSS_STATUS_NOTFOUND.
2004-03-26 Thorsten Kukuk <>
* nis/nss_nis/nis-grp.c (_nss_nis_getgrnam_r): Don't
set errno if group does not exist.
2004-03-28 Ulrich Drepper <>
* sysdeps/unix/sysv/linux/sysconf.c (__sysconf): Handle
2004-03-26 Ulrich Drepper <>
* elf/dl-caller.c: New file.
* include/caller.h: New file.
* Makefile (distribute): Add include/caller.h.
* elf/Makefile (dl-routines): Add dl-caller.
* elf/dl-load.c (_dl_map_object_from_fd): Record l_text_end.
* elf/dl-open.c (check_libc_caller): Removed.
(dl_open_worker): Use __check_caller instead.
* elf/rtld.c (_rtld_global_ro): Initialize _dl_check_caller.
(_dl_start_final): Record l_text_end for map.
(dl_main): Record l_text_end for main object and vdso.
* include/link.h (struct link_map): Add l_text_end field.
* sysdeps/generic/ldsodefs.h (struct rtld_global_ro): Add
_dl_check_caller field.
Define enum allowmask. Add declaration of _dl_check_caller.
* sysdeps/unix/sysv/linux/dl-execstack.c: Also use __check_caller test.
2004-03-26 Richard Henderson <>
* sysdeps/alpha/Makefile <gnulib> (sysdep_routines): Merge divrem
variable, add unsigned variants.
* sysdeps/alpha/divrem.h: Remove file.
* sysdeps/alpha/div_libc.h: New file.
* sysdeps/alpha/divl.S: Rewrite from scratch.
* sysdeps/alpha/reml.S: Likewise.
* sysdeps/alpha/divq.S: Likewise.
* sysdeps/alpha/remq.S: Likewise.
* sysdeps/alpha/divlu.S: New file.
* sysdeps/alpha/remlu.S: New file.
* sysdeps/alpha/divqu.S: New file.
* sysdeps/alpha/remqu.S: New file.
2004-03-26 Ulrich Drepper <>
* elf/dl-open.c (check_libc_caller): Fix typo.
2004-03-26 Jakub Jelinek <>
* elf/tst-dlmodcount.c: Include stddef.h and stdlib.h.
2003-03-25 Richard Henderson <>
* sysdeps/alpha/backtrace.c: New file.
2004-03-25 Ulrich Drepper <>
* iconvdata/utf-7.c: Remove inline from isdirect, isxdirect, and
2004-03-25 Richard Henderson <>
* sysdeps/generic/strtol_l.c (__strtol_ul_max_tab,
__strtol_ull_max_tab, __strtol_ull_rem_tab, __strtol_ul_rem_tab,
cutoff_tab, cutlim_tab, jmax_tab): New.
(__strtol_l): Use them to avoid runtime division.
2004-03-24 Roland McGrath <>
* Makerules ($(common-objpfx) Don't use \n in rhs of sed
substitutions; the semicolon terminators are enough for ld anyway.
* elf/dl-deps.c (_dl_map_object_deps): Use alloca instead of
dynamically sized auto array in function already using alloca.
* locale/programs/ld-ctype.c (ctype_output): Likewise.
* locale/programs/ld-time.c (time_output): Likewise.
* elf/dl-misc.c (_dl_debug_vdprintf): Use macro instead of const for
IOV array size.
* locale/programs/charmap.c (charmap_read): Avoid alloca (or strdupa)
when also using dynamically-sized auto array.
* locale/programs/locfile.c (locfile_read): Likewise.
* locale/programs/repertoire.c (repertoire_read): Likewise.
* nis/nis_print_group_entry.c (nis_print_group_entry): Likewise.
* locale/programs/locarchive.c (enlarge_archive): Likewise.
* posix/annexc.c (check_header): Likewise.
* iconv/gconv_int.h (norm_add_slashes): Don't handle null SUFFIX.
strlen ("") gets optimized away just as well.
* intl/loadmsgcat.c (_nl_init_domain_conv): Update caller.
* wcsmbs/wcsmbsload.c (__wcsmbs_load_conv): Likewise.
* Makefile ($(objpfx)c++-types-check.out): Reduce duplication in
defining this target. Also elide -Wstrict-prototypes from CFLAGS.
2004-03-24 Ulrich Drepper <>
* stdio-common/vfscanf.c [!COMPILE_WSCANF] (TOLOWER): Cast first
parameter to unsigned char.
* sysdeps/generic/strcasestr.c [_LIBC] (TOLOWER): Likewise.
2004-03-24 Jakub Jelinek <>
* stdlib/strtod_l.c (INTERNAL (__STRTOF)): Clear the rest of retval,
not just one limb if RETURN_LIMB_SIZE > 2. Fix shifting up if
* stdio-common/printf_fp.c (__printf_fp): For IEEE quad long double
on 32-bit architectures reserve 8 limbs instead of 4.
2004-03-23 Jakub Jelinek <>
* sysdeps/unix/sysv/linux/alpha/sysdep.h (__NR_pread, __NR_pwrite):
Define to __NR_p{read,write}64 if not defined.
* sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (__NR_pread,
__NR_pwrite): Define to __NR_p{read,write}64 if not defined instead
of defining it the other way around.
* sysdeps/unix/sysv/linux/alpha/syscalls.list: Move common syscalls
for 64bit arches to sysdeps/unix/sysv/linux/wordsize-64/syscalls.list.
* sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
* sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
* sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
* sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
* sysdeps/unix/sysv/linux/alpha/pread64.c: Removed.
* sysdeps/unix/sysv/linux/alpha/getrlimit64.c: Removed.
* sysdeps/unix/sysv/linux/alpha/glob64.c: Removed.
* sysdeps/unix/sysv/linux/alpha/truncate64.c: Removed.
* sysdeps/unix/sysv/linux/alpha/xstat64.c: Removed.
* sysdeps/unix/sysv/linux/alpha/pwrite64.c: Removed.
* sysdeps/unix/sysv/linux/alpha/posix_fadvise.c: Removed.
* sysdeps/unix/sysv/linux/alpha/mmap64.c: Removed.
* sysdeps/unix/sysv/linux/alpha/fxstat64.c: Removed.
* sysdeps/unix/sysv/linux/alpha/setrlimit64.c: Removed.
* sysdeps/unix/sysv/linux/alpha/ftruncate64.c: Removed.
* sysdeps/unix/sysv/linux/alpha/sendfile64.c: Removed.
* sysdeps/unix/sysv/linux/alpha/lxstat64.c: Removed.
* sysdeps/unix/sysv/linux/alpha/posix_fadvise64.c: Removed.
* sysdeps/unix/sysv/linux/alpha/statfs64.c: Removed.
* sysdeps/unix/sysv/linux/alpha/fstatfs64.c: Removed.
* sysdeps/unix/sysv/linux/s390/s390-64/pread64.c: Removed.
* sysdeps/unix/sysv/linux/s390/s390-64/getrlimit64.c: Removed.
* sysdeps/unix/sysv/linux/s390/s390-64/glob64.c: Removed.
* sysdeps/unix/sysv/linux/s390/s390-64/readdir64_r.c: Removed.
* sysdeps/unix/sysv/linux/s390/s390-64/truncate64.c: Removed.
* sysdeps/unix/sysv/linux/s390/s390-64/xstat64.c: Removed.
* sysdeps/unix/sysv/linux/s390/s390-64/pwrite64.c: Removed.
* sysdeps/unix/sysv/linux/s390/s390-64/getdents64.c: Removed.
* sysdeps/unix/sysv/linux/s390/s390-64/readdir_r.c: Removed.
* sysdeps/unix/sysv/linux/s390/s390-64/lxstat.c: Removed.
* sysdeps/unix/sysv/linux/s390/s390-64/readdir.c: Removed.
* sysdeps/unix/sysv/linux/s390/s390-64/posix_fadvise.c: Removed.
* sysdeps/unix/sysv/linux/s390/s390-64/mmap64.c: Removed.
* sysdeps/unix/sysv/linux/s390/s390-64/xstat.c: Removed.
* sysdeps/unix/sysv/linux/s390/s390-64/fxstat64.c: Removed.
* sysdeps/unix/sysv/linux/s390/s390-64/setrlimit64.c: Removed.
* sysdeps/unix/sysv/linux/s390/s390-64/ftruncate64.c: Removed.
* sysdeps/unix/sysv/linux/s390/s390-64/getdents.c: Removed.
* sysdeps/unix/sysv/linux/s390/s390-64/lxstat64.c: Removed.
* sysdeps/unix/sysv/linux/s390/s390-64/posix_fadvise64.c: Removed.
* sysdeps/unix/sysv/linux/s390/s390-64/readdir64.c: Removed.
* sysdeps/unix/sysv/linux/s390/s390-64/fxstat.c: Removed.
* sysdeps/unix/sysv/linux/s390/s390-64/statfs64.c: Removed.
* sysdeps/unix/sysv/linux/s390/s390-64/fstatfs64.c: Removed.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/glob64.c: Removed.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/truncate64.c: Removed.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/xstat64.c: Removed.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/posix_fadvise.c: Removed.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/fxstat64.c: Removed.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/ftruncate64.c: Removed.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/lxstat64.c: Removed.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/posix_fadvise64.c: Removed.
* sysdeps/unix/sysv/linux/sparc/sparc64/pread64.c: Removed.
* sysdeps/unix/sysv/linux/sparc/sparc64/getrlimit64.c: Removed.
* sysdeps/unix/sysv/linux/sparc/sparc64/glob64.c: Removed.
* sysdeps/unix/sysv/linux/sparc/sparc64/readdir64_r.c: Removed.
* sysdeps/unix/sysv/linux/sparc/sparc64/truncate64.c: Removed.
* sysdeps/unix/sysv/linux/sparc/sparc64/xstat64.c: Removed.
* sysdeps/unix/sysv/linux/sparc/sparc64/pwrite64.c: Removed.
* sysdeps/unix/sysv/linux/sparc/sparc64/getdents64.c: Removed.
* sysdeps/unix/sysv/linux/sparc/sparc64/readdir_r.c: Removed.
* sysdeps/unix/sysv/linux/sparc/sparc64/readdir.c: Removed.
* sysdeps/unix/sysv/linux/sparc/sparc64/posix_fadvise.c: Removed.
* sysdeps/unix/sysv/linux/sparc/sparc64/mmap64.c: Removed.
* sysdeps/unix/sysv/linux/sparc/sparc64/fxstat64.c: Removed.
* sysdeps/unix/sysv/linux/sparc/sparc64/setrlimit64.c: Removed.
* sysdeps/unix/sysv/linux/sparc/sparc64/ftruncate64.c: Removed.
* sysdeps/unix/sysv/linux/sparc/sparc64/sendfile64.c: Removed.
* sysdeps/unix/sysv/linux/sparc/sparc64/getdents.c: Removed.
* sysdeps/unix/sysv/linux/sparc/sparc64/lxstat64.c: Removed.
* sysdeps/unix/sysv/linux/sparc/sparc64/posix_fadvise64.c: Removed.
* sysdeps/unix/sysv/linux/sparc/sparc64/readdir64.c: Removed.
* sysdeps/unix/sysv/linux/sparc/sparc64/statfs64.c: Removed.
* sysdeps/unix/sysv/linux/sparc/sparc64/fstatfs64.c: Removed.
* sysdeps/unix/sysv/linux/ia64/pread64.c: Removed.
* sysdeps/unix/sysv/linux/ia64/getrlimit64.c: Removed.
* sysdeps/unix/sysv/linux/ia64/glob64.c: Removed.
* sysdeps/unix/sysv/linux/ia64/readdir64_r.c: Removed.
* sysdeps/unix/sysv/linux/ia64/truncate64.c: Removed.
* sysdeps/unix/sysv/linux/ia64/xstat64.c: Removed.
* sysdeps/unix/sysv/linux/ia64/pwrite64.c: Removed.
* sysdeps/unix/sysv/linux/ia64/getdents64.c: Removed.
* sysdeps/unix/sysv/linux/ia64/readdir_r.c: Removed.
* sysdeps/unix/sysv/linux/ia64/lxstat.c: Removed.
* sysdeps/unix/sysv/linux/ia64/readdir.c: Removed.
* sysdeps/unix/sysv/linux/ia64/posix_fadvise.c: Removed.
* sysdeps/unix/sysv/linux/ia64/mmap64.c: Removed.
* sysdeps/unix/sysv/linux/ia64/xstat.c: Removed.
* sysdeps/unix/sysv/linux/ia64/fxstat64.c: Removed.
* sysdeps/unix/sysv/linux/ia64/setrlimit64.c: Removed.
* sysdeps/unix/sysv/linux/ia64/ftruncate64.c: Removed.
* sysdeps/unix/sysv/linux/ia64/sendfile64.c: Removed.
* sysdeps/unix/sysv/linux/ia64/getdents.c: Removed.
* sysdeps/unix/sysv/linux/ia64/lxstat64.c: Removed.
* sysdeps/unix/sysv/linux/ia64/posix_fadvise64.c: Removed.
* sysdeps/unix/sysv/linux/ia64/readdir64.c: Removed.
* sysdeps/unix/sysv/linux/ia64/fxstat.c: Removed.
* sysdeps/unix/sysv/linux/ia64/statfs64.c: Removed.
* sysdeps/unix/sysv/linux/ia64/fstatfs64.c: Removed.
* sysdeps/unix/sysv/linux/x86_64/pread64.c: Removed.
* sysdeps/unix/sysv/linux/x86_64/getrlimit64.c: Removed.
* sysdeps/unix/sysv/linux/x86_64/glob64.c: Removed.
* sysdeps/unix/sysv/linux/x86_64/readdir64_r.c: Removed.
* sysdeps/unix/sysv/linux/x86_64/truncate64.c: Removed.
* sysdeps/unix/sysv/linux/x86_64/xstat64.c: Removed.
* sysdeps/unix/sysv/linux/x86_64/pwrite64.c: Removed.
* sysdeps/unix/sysv/linux/x86_64/getdents64.c: Removed.
* sysdeps/unix/sysv/linux/x86_64/readdir_r.c: Removed.
* sysdeps/unix/sysv/linux/x86_64/lxstat.c: Removed.
* sysdeps/unix/sysv/linux/x86_64/readdir.c: Removed.
* sysdeps/unix/sysv/linux/x86_64/posix_fadvise.c: Removed.
* sysdeps/unix/sysv/linux/x86_64/mmap64.c: Removed.
* sysdeps/unix/sysv/linux/x86_64/xstat.c: Removed.
* sysdeps/unix/sysv/linux/x86_64/fxstat64.c: Removed.
* sysdeps/unix/sysv/linux/x86_64/setrlimit64.c: Removed.
* sysdeps/unix/sysv/linux/x86_64/ftruncate64.c: Removed.
* sysdeps/unix/sysv/linux/x86_64/sendfile64.c: Removed.
* sysdeps/unix/sysv/linux/x86_64/getdents.c: Removed.
* sysdeps/unix/sysv/linux/x86_64/lxstat64.c: Removed.
* sysdeps/unix/sysv/linux/x86_64/posix_fadvise64.c: Removed.
* sysdeps/unix/sysv/linux/x86_64/readdir64.c: Removed.
* sysdeps/unix/sysv/linux/x86_64/fxstat.c: Removed.
* sysdeps/unix/sysv/linux/x86_64/statfs64.c: Removed.
* sysdeps/unix/sysv/linux/x86_64/fstatfs64.c: Removed.
* sysdeps/unix/sysv/linux/alpha/Implies: New file.
* sysdeps/unix/sysv/linux/alpha/getdents64.c: New file.
* sysdeps/unix/sysv/linux/s390/s390-64/Implies: New file.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/Implies: New file.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: New file.
* sysdeps/unix/sysv/linux/sparc/sparc64/Implies: New file.
* sysdeps/unix/sysv/linux/sparc/sparc64/lxstat.c: New file.
* sysdeps/unix/sysv/linux/sparc/sparc64/xstat.c: New file.
* sysdeps/unix/sysv/linux/sparc/sparc64/fxstat.c: New file.
* sysdeps/unix/sysv/linux/wordsize-64/statvfs64.c: New file.
* sysdeps/unix/sysv/linux/wordsize-64/fstatvfs64.c: New file.
* sysdeps/unix/sysv/linux/wordsize-64/pread64.c: New file.
* sysdeps/unix/sysv/linux/wordsize-64/fstatvfs.c: New file.
* sysdeps/unix/sysv/linux/wordsize-64/getrlimit64.c: New file.
* sysdeps/unix/sysv/linux/wordsize-64/glob64.c: New file.
* sysdeps/unix/sysv/linux/wordsize-64/readdir64_r.c: New file.
* sysdeps/unix/sysv/linux/wordsize-64/truncate64.c: New file.
* sysdeps/unix/sysv/linux/wordsize-64/xstat64.c: New file.
* sysdeps/unix/sysv/linux/wordsize-64/pwrite64.c: New file.
* sysdeps/unix/sysv/linux/wordsize-64/getdents64.c: New file.
* sysdeps/unix/sysv/linux/wordsize-64/readdir_r.c: New file.
* sysdeps/unix/sysv/linux/wordsize-64/lxstat.c: New file.
* sysdeps/unix/sysv/linux/wordsize-64/readdir.c: New file.
* sysdeps/unix/sysv/linux/wordsize-64/posix_fadvise.c: New file.
* sysdeps/unix/sysv/linux/wordsize-64/mmap64.c: New file.
* sysdeps/unix/sysv/linux/wordsize-64/xstat.c: New file.
* sysdeps/unix/sysv/linux/wordsize-64/fxstat64.c: New file.
* sysdeps/unix/sysv/linux/wordsize-64/setrlimit64.c: New file.
* sysdeps/unix/sysv/linux/wordsize-64/ftruncate64.c: New file.
* sysdeps/unix/sysv/linux/wordsize-64/sendfile64.c: New file.
* sysdeps/unix/sysv/linux/wordsize-64/getdents.c: New file.
* sysdeps/unix/sysv/linux/wordsize-64/statvfs.c: New file.
* sysdeps/unix/sysv/linux/wordsize-64/lxstat64.c: New file.
* sysdeps/unix/sysv/linux/wordsize-64/posix_fadvise64.c: New file.
* sysdeps/unix/sysv/linux/wordsize-64/readdir64.c: New file.
* sysdeps/unix/sysv/linux/wordsize-64/syscalls.list: New file.
* sysdeps/unix/sysv/linux/wordsize-64/fxstat.c: New file.
* sysdeps/unix/sysv/linux/wordsize-64/statfs64.c: New file.
* sysdeps/unix/sysv/linux/wordsize-64/fstatfs64.c: New file.
* sysdeps/unix/sysv/linux/ia64/Implies: New file.
* sysdeps/unix/sysv/linux/x86_64/Implies: New file.
2004-03-22 Richard Henderson <>
* sysdeps/alpha/s_fabs.S: Remove file.
* sysdeps/alpha/s_copysign.S: Remove file.
2004-03-22 Jakub Jelinek <>
* sysdeps/unix/sysv/linux/sparc/sparc32/getpagesize.c
(__getpagesize): Avoid warning about writing into read-only memory.
* string/Makefile (routines): Add xpg-strerror.
* string/string.h (strerror_r): If __USE_XOPEN2K but not __USE_GNU,
redirect strerror_r to __xpg_strerror_r.
* string/Versions (libc): Add __xpg_strerror_r@@GLIBC_2.3.4.
* sysdeps/generic/xpg-strerror.c: New file.
* sysdeps/mach/xpg-strerror.c: New file.
2004-03-22 Joseph S. Myers <>
* sunrpc/rpc/xdr.h (IXDR_GET_LONG, IXDR_PUT_LONG): Do not use
casts as lvalues.
2004-03-22 Andreas Jaeger <>
* elf/tst-dlmodcount.c (unload): Remove unused variable.
* misc/tst-mntent.c (main): Use tmpfile instead of tmpnam.
2004-03-20 Roland McGrath <>
* sysdeps/mach/hurd/dl-execstack.c: New file.
2004-03-20 Ulrich Drepper <>
* po/ca.po: Update from translation team.
2004-03-20 Andreas Jaeger <>
* sysdeps/unix/sysv/linux/sched_getaffinity.c
(__sched_getaffinity_old): Fix interface.
* sysdeps/unix/sysv/linux/sched_setaffinity.c
(__sched_setaffinity_old): Likewise.
* sysdeps/unix/sysv/linux/sched_setaffinity.c: Include <alloca.h>.
2004-03-17 Kaz Kojima <>
* sysdeps/unix/sysv/linux/kernel-features.h
(__ASSUME_CLONE_THREAD_FLAGS ): Define for newer SH kernel.
* sysdeps/unix/sysv/linux/sh/socket.S: Add unwind information.
2004-03-19 Ulrich Drepper <>
* time/tzfile.c (__tzfile_default): Correct setting of rule_stdoff
and rule_dstoff after reading the posixrules file.
2004-03-18 Ulrich Drepper <>
* malloc/malloc.c (__posix_memalign): Correct alignment check.
Reported by Don Heller <>.
2004-03-18 Jakub Jelinek <>
* sysdeps/generic/dl-cache.c (_dl_load_cache_lookup): Remove hwcap
variable and weak_extern for _dl_hwcap.
(HWCAP_CHECK): Fix checking of non-platform hwcap bits. Use
lib->osversion instead of cache_new->libs[middle].osversion.
* stdio-common/asprintf.c: Remove USE_IN_LIBIO conditionals.
* stdio-common/dprintf.c: Likewise.
* stdio-common/fprintf.c: Likewise.
* stdio-common/getline.c: Likewise.
* stdio-common/getw.c: Likewise.
* stdio-common/perror.c: Likewise.
* stdio-common/printf-prs.c: Likewise.
* stdio-common/printf.c: Likewise.
* stdio-common/printf_size.c: Likewise.
* stdio-common/psignal.c: Likewise.
* stdio-common/putw.c: Likewise.
* stdio-common/scanf.c: Likewise.
* stdio-common/snprintf.c: Likewise.
* stdio-common/sprintf.c: Likewise.
* stdio-common/sscanf.c: Likewise.
* stdio-common/tstgetln.c: Likewise.
* stdio-common/vfprintf.c: Likewise.
2004-03-18 Paul Eggert <>
* posix/getopt.h (__GNUC_PREREQ) [!defined __THROW]: Define
if not defined, fixing a typo (it used to be defined if
__GNUC__ was not defined).
2004-03-18 Ulrich Drepper <>
* posix/sched.h: Change sched_getaffinity and sched_setaffinity
interfaces: add new second parameter.
* sysdeps/generic/sched_getaffinity.c: Implement interface change.
* sysdeps/generic/sched_setaffinity.c: Likewise.
* sysdeps/unix/sysv/linux/sched_getaffinity.c: Likewise. Add
compatibility interface.
* sysdeps/unix/sysv/linux/sched_setaffinity.c: Likewise.
* sysdeps/unix/sysv/linux/Versions: Add versions for changed
2004-03-18 Roland McGrath <>
* manual/Makefile (stamp-summary): Use -k option to sort,
not traditional key selection syntax.
Reported by Jim Gifford <>.
2004-03-18 Jakub Jelinek <>
* elf/ldconfig.c: Include stdbool.h.
2004-03-18 Roland McGrath <>
* elf/ldconfig.c (parse_conf_include): New function.
(parse_conf): Call it to parse lines starting with "include".
Remaining words are glob patterns for more config files to read.
Take additional bool argument to disable opt_chroot processing.
(main): Update caller.
2004-03-17 Ulrich Drepper <>
* sysdeps/unix/sysv/linux/ia64/ioperm.c (_iopl): Match EPERM error
the x86 code produces in case of mission permissions.
Patch by Bernd Schmidt <>.
* resolv/netdb.h: Define AI_IDN_ALLOW_UNASSIGNED,
* inet/getnameinfo.c (getnameinfo): Implement handling of
* sysdeps/posix/getaddrinfo.c (gaih_inet): Implement handling of
2004-03-17 Jakub Jelinek <>
* sysdeps/x86_64/hp-timing.h (HP_TIMING_NOW): Make asm volatile.
2004-03-16 Jakub Jelinek <>
* sysdeps/powerpc/powerpc32/fpu/__longjmp.S: Spelling.
(JB_SIZE): Undefine before including __longjmp-common.S again.
* sysdeps/powerpc/powerpc32/fpu/setjmp.S: Spelling.
(JB_SIZE): Undefine before including setjmp-common.S again.
* sysdeps/powerpc/powerpc64/bsd-_setjmp.S: Spelling.
* sysdeps/powerpc/powerpc64/bsd-setjmp.S: Spelling.
* sysdeps/powerpc/powerpc32/bsd-_setjmp.S: Spelling.
* sysdeps/powerpc/powerpc32/bsd-setjmp.S: Spelling.
* sysdeps/powerpc/sigjmp.c: Spelling.
2004-03-16 Ulrich Drepper <>
* include/ctype.h: For libc, define isdigit, isdigit_l, and
__isdigit_l as simple comparison macros.
* include/wctype.h: For libc, define iswdigit, iswdigit_l, and
__iswdigit_l as simple comparison macros.
* wctype/wcfuncs_l.c: #undef iswdigit and __iswdigit.
2004-03-15 Ulrich Drepper <>
* sysdeps/sparc/fpu/bits/mathinline.h: Restore missing #ifdef.
Patch by Richard Henderson.
2004-03-16 Jakub Jelinek <>
* sysdeps/generic/strtold_l.c (STRING_TYPE, STRTOLD, __STRTOLD,
__STRTOD, INTERNAL, INTERNAL1): Define, use them.
[! USE_WIDE_CHAR] (INTERNAL (__STRTOLD)): Add libc_hidden_def.
* inet/getnameinfo.c: Include stdlib.h.
2004-03-15 Richard Henderson <>
* math/Makefile (headers): Add bits/huge_valf.h, bits/huge_vall.h,
and bits/inf.h.
* math/math.h: Include them.
* sysdeps/alpha/fpu/bits/mathdef.h: Remove INFINITY.
* sysdeps/arm/fpu/bits/mathdef.h: Likewise.
* sysdeps/generic/bits/mathdef.h: Likewise.
* sysdeps/i386/fpu/bits/mathdef.h: Likewise.
* sysdeps/ia64/fpu/bits/mathdef.h: Likewise.
* sysdeps/m68k/fpu/bits/mathdef.h: Likewise.
* sysdeps/mips/fpu/bits/mathdef.h: Likewise.
* sysdeps/powerpc/fpu/bits/mathdef.h: Likewise.
* sysdeps/sh/sh4/fpu/bits/mathdef.h: Likewise.
* sysdeps/sparc/fpu/bits/mathdef.h: Likewise.
* sysdeps/x86_64/fpu/bits/mathdef.h: Likewise.
* sysdeps/arm/bits/huge_val.h (HUGE_VAL): Use __builtin_huge_val.
* sysdeps/ieee754/bits/huge_val.h: Likewise.
* sysdeps/sh/bits/huge_val.h: Likewise.
* sysdeps/generic/bits/huge_val.h (HUGE_VAL): Use __builtin_huge_val.
* sysdeps/generic/bits/huge_valf.h: New file.
* sysdeps/generic/bits/huge_vall.h: New file.
* sysdeps/generic/bits/inf.h: New file.
* sysdeps/ieee754/bits/huge_valf.h: New file.
* sysdeps/ieee754/bits/inf.h: New file.
* sysdeps/i386/bits/huge_val.h: Remove file.
* sysdeps/i386/bits/huge_vall.h: New file.
* sysdeps/ia64/bits/huge_val.h: Remove file.
* sysdeps/ia64/bits/huge_vall.h: New file.
* sysdeps/ieee754/ldbl-128/bits/huge_vall.h: New file.
* sysdeps/m68k/bits/huge_val.h: Remove file.
* sysdeps/m68k/bits/huge_vall.h: New file.
* sysdeps/s390/bits/huge_val.h: Remove file.
* sysdeps/sh/sh4/fpu/bits/huge_val.h: Remove file.
* sysdeps/sparc/bits/huge_vall.h: New file.
* sysdeps/sparc/sparc32/fpu/bits/huge_val.h: Remove file.
* sysdeps/sparc/sparc64/fpu/bits/huge_val.h: Remove file.
* sysdeps/ieee754/bits/nan.h (NAN): Use __builtin_nanf.
* sysdeps/mips/bits/nan.h (NAN): Likewise.
2004-03-15 Ulrich Drepper <>
* iconv/gconv_simple.c (__gconv_transform_utf8_internal): Use only
one copy of error handling code.
* stdio-common/vfscanf.c: Simplify error handling macros. Use
direct locale access functions.
* sysdeps/generic/strcasestr.c (__strcasestr): Optimize use of
tolower function.
2004-03-13 Jakub Jelinek <>
* sysdeps/unix/sysv/linux/i386/sysconf.c (intel_02_known): Add const.
(handle_amd): New function.
(__sysconf): Handle _SC_LEVEL4_CACHE_LINESIZE here, not in
linux_sysconf. Call handle_amd on AuthenticAMD.
* sysdeps/unix/sysv/linux/x86_64/sysconf.c: Likewise.
2004-03-14 Ulrich Drepper <>
* wcsmbs/mbsrtowcs.c: Just a wrapper around __mbsrtowcs_l.
* wcsmbs/mbsrtowcs_l.c (__mbsrtowcs_l): Add real implementation here.
Make the non-_l functions wrappers around the _l functions.
* include/monetary.h: Declare __vstrmon_l.
* include/string.h: Add libc_hidden_proto for __strcoll_l and
* include/time.h: Define ptime_locale_status. Declare
* include/wchar.h: Add libc_hidden_proto for __wcscoll_l and
* stdlib/strfmon.c: Move the code to strfmon_l.c. Add little
wrapper around __vstrfmon_l.
* stdlib/strfmon_l.c: Add real implementation. Split into new
function __vstrfmon_l to allow calling it from strfmon.
* stdlib/strtod.c: Move real code to strtod_l.c and add wrapper.
* stdlib/strtod_l.c: Add real implementation.
* stdlib/strtof.c: Adjust to changed strtod.c.
* stdlib/strtof_l.c: Include strtod_l.c now.
* stdlib/strtold.c: New file.
* stdlib/strtold_l.c: Removed.
* string/strcoll.c: Move real code to strcoll_l.c: Add wrapper.
* string/strcoll_l.c: Add real implementation.
* string/strxfrm.c: Move real code to strxfrm_l.c: Add wrapper.
* string/strxfrm_l.c: Add real implementation.
* sysdeps/generic/strtol.c: Move real implementation to strtol_l.c.
Add wrappers.
* sysdeps/generic/strtol_l.c: Add real implementation.
* sysdeps/generic/strtold.c: Removed.
* sysdeps/generic/strtold_l.c: New file.
* sysdeps/generic/strtoll_l.c: Include strtol_l.c now. Adjust
* sysdeps/generic/strtoul_l.c: Likewise.
* sysdeps/generic/strtoull_l.c: Likewise.
* sysdeps/generic/wcstol_l.c: Likewise.
* sysdeps/generic/wcstoll_l.c: Likewise.
* sysdeps/generic/wcstoul_l.c: Likewise.
* sysdeps/generic/wcstoull_l.c: Likewise.
* sysdeps/ieee754/ldbl-128/strtold.c: Removed.
* sysdeps/ieee754/ldbl-128/strtold_l.c: New file.
* sysdeps/ieee754/ldbl-96/strtold.c: Removed.
* sysdeps/ieee754/ldbl-96/strtold_l.c: New file.
* sysdeps/m68k/strtold.c: Removed.
* sysdeps/m68k/strtold_l.c: New file.
* time/strftime.c: Move real code to strftime_l.c. Add wrapper.
* time/strftime_l.c: Add real implementation.
* time/strptime.c: Move real code to strptime_l.c. Add wrapper.
* time/strptime_l.c: Add real implementation.
* time/wcsftime.c: Simplify since only wrappers are defined in
* time/wcsftime_l.c: Include strftime_l.c.
* wcsmbs/wcscoll.c: Simplify since the file is not used by wcscoll_l.c
* wcsmbs/wcscoll_l.c: Include strcoll_l.c.
* wcsmbs/wcsxfrm.c: Simplify since the file is not used by wcsxfrm_l.c
* wcsmbs/wcsxfrm_l.c: Include strxfrm_l.c.
* wcsmbs/wcstod.c: Prepare to include new strtod.c.
* wcsmbs/wcstod_l.c: Include strtod_l.c.
* wcsmbs/wcstof.c: Prepare to include new strtof.c.
* wcsmbs/wcstof_l.c: Include strtof_l.c.
* wcsmbs/wcstold.c: Prepare to include new strtold.c.
* wcsmbs/wcstold_l.c: Include strtold_l.c.
* locale/uselocale.c: Use _NL_CURRENT_LOCALE instead of __libc_tsd_get.
* sysdeps/generic/strcasecmp.c: Optimize a bit. It's better to get
a reference to the current locale and then use the _l functions.
* sysdeps/generic/strncase.c: Likewise.
2004-03-11 Jeroen Dekkers <>
* Change libof-$(cpp-src) to
libof-$(notdir $(cpp-src)).
2004-03-13 Ulrich Drepper <>
* resolv/netdb.h (EAI_OVERFLOW): Define.
(NI_IDN): Define.
* inet/getnameinfo.c (getnameinfo): Return error in case argument
buffers overflow. Implement NI_IDN.
2004-03-12 Ulrich Drepper <>
* resolv/netdb.h: Define AI_CANONIDN.
* sysdeps/posix/getaddrinfo.c: Implement AI_CANONIDN.
2004-03-12 Richard Henderson <>
* sysdeps/unix/sysv/linux/alpha/select.S: Fix unwind. Propagate
oldvalue from CENABLE to CDISABLE.
2004-03-12 Ulrich Drepper <>
* sysdeps/unix/sysv/linux/x86_64/sysconf.c: New file.
* sysdeps/unix/sysv/linux/bits/local_lim.h: Define HOST_NAME_MAX.
* posix/getconf.c (vars): Add _SC_ values for cache information.
* sysdeps/generic/bits/confname.h: Add _SC_* values for cache
* sysdeps/unix/sysv/linux/sysconf.c (__sysconf): Reorganize to
allow yet another sysconf function to include the one in this file.
* sysdeps/unix/sysv/linux/i386/sysconf.c: New file.
* sysdeps/generic/sysconf.c: Add default handling for cache line info.
2004-03-11 Ulrich Drepper <>
* sysdeps/posix/sysconf.c (__sysconf): Add missing support for
some _SC_* values.
2004-03-10 Chris Heath <>
* iconvdata/ Add gconv_end (fixes memory leak).
2004-03-11 Jakub Jelinek <>
* sysdeps/powerpc/powerpc32/__longjmp.S (JB_SIZE): Undefine before
including __longjmp-common.S again.
* sysdeps/powerpc/powerpc64/__longjmp.S (JB_SIZE): Likewise.
* sysdeps/powerpc/powerpc32/setjmp.S (JB_SIZE): Undefine before
including setjmp-common.S again.
* sysdeps/powerpc/powerpc64/setjmp.S (JB_SIZE): Likewise.
* sysdeps/powerpc/novmxsetjmp.h (__novmx__longjmp): Fix type of
first argument in the prototype.
* sysdeps/powerpc/longjmp.c (__vmx__longjmp, __vmx__libc_longjmp):
Remove bogus semicolons.
* sysdeps/s390/dl-tls.h: Only add __tls_get_offset assembly if
(__TLS_GET_ADDR): Use __tls_get_offset, not __tls_get_addr.
2004-03-11 Ulrich Drepper <>
* resolv/ns_ttl.c: Don't add ns_parse_ttl for
2004-03-10 Ulrich Drepper <>
* sysdeps/generic/errno.c: Include <dl-sysdep.h>. Use
RTLD_PRIVATE_ERRNO to decide whether errno compat symbols are needed.
* elf/dl-sym.c: Unify _dl_sym and _dl_vsym code and make the entry
points wrappers around the unified code.
2004-03-11 Richard Henderson <>
* sysdeps/unix/sysv/linux/alpha/kernel_stat.h (kernel_stat64): New.
(glibc21_stat): New.
* sysdeps/unix/sysv/linux/alpha/fxstat.c: New file.
* sysdeps/unix/sysv/linux/alpha/lxstat.c: New file.
* sysdeps/unix/sysv/linux/alpha/xstat.c: New file.
* sysdeps/unix/sysv/linux/alpha/xstatconv.c (__xstat_conv): Add
code for _STAT_VER_GLIBC2_3_4.
(__libc_missing_axp_stat64): New.
* sysdeps/unix/sysv/linux/alpha/xstatconv.h: New file.
* sysdeps/unix/sysv/linux/alpha/bits/stat.h (__ST_TIME): New.
(struct stat, struct stat64): Update to new format.
2004-03-11 Jakub Jelinek <>
* sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S
(__novec_swapcontext): Branch to novec_* labels.
2004-03-10 Ulrich Drepper <>
* posix/getopt.c (_): Don't define here for glibc.
2004-03-10 Jakub Jelinek <>
* include/libc-symbols.h [__ASSEMBLY__] (compat_text_section,
compat_data_section): Define.
* sysdeps/unix/sysv/linux/alpha/adjtime.c (ADJTIME): Add
* sysdeps/unix/sysv/linux/alpha/wordexp.c (__old_wordexp): Likewise.
* sysdeps/unix/sysv/linux/alpha/oldglob.c (__old_glob,
__old_globfree): Likewise.
* sysdeps/unix/sysv/linux/s390/s390-32/chown.c (__chown_is_lchown):
* sysdeps/unix/sysv/linux/s390/s390-32/posix_fadvise64.c
(__posix_fadvise64_l32): Likewise.
* sysdeps/unix/sysv/linux/msgctl.c (__old_msgctl): Likewise.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/posix_fadvise64.c
(__posix_fadvise64_l32): Likewise.
* sysdeps/unix/sysv/linux/sparc/sparc32/semctl.c (__old_semctl):
* sysdeps/unix/sysv/linux/semctl.c (__old_semctl): Likewise.
* sysdeps/unix/sysv/linux/posix_fadvise64.c (__posix_fadvise64_l32):
* sysdeps/unix/sysv/linux/shmctl.c (__old_shmctl): Likewise.
* hurd/compat-20.c (_hurd_proc_init_compat_20): Likewise.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S
(__swapcontext, __novec_swapcontext): Use END instead of PSEUDO_END.
(__novec_swapcontext, __swapcontext_stub): Add compat_text_section.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S
(__makecontext_stub): Likewise.
(__novec_makecontext): Likewise. Fix name in END () to match
function name.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S
(__setcontext): Use END instead of PSEUDO_END.
(__novec_setcontext): Add compat_text_section. Use END instead of
PSEUDO_END, fix the name in END () to match function name.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S
(__getcontext, __novec_getcontext): Use END instead of PSEUDO_END.
(__novec_getcontext, __getcontext_stub): Add compat_text_section.
2004-03-10 Kaz Kojima <>
* sysdeps/sh/dl-machine.h: Don't use GL macro if not appropriate.
(COPY_UNALIGNED_WORD): Remove cast used as lvalue.
2004-03-10 Ulrich Drepper <>
* sysdeps/i386/dl-procinfo.h (HWCAP_IMPORTANT): Remove mmx, add sse2.
2004-03-10 Richard Henderson <>
* sysdeps/generic/errno.c: Disable versioning for rtld.
* sysdeps/generic/Makefile (elf/shared): Add unwind-pe.
* sysdeps/generic/unwind-pe.c: New file.
* sysdeps/generic/unwind-pe.h: Only prototypes for _LIBC without
2004-03-10 Ulrich Drepper <>
* include/libc-symbols.h: Define attribute_compat_text_section and
* io/ftw.c: Mark compat code with attribute_compat_text_section.
* libio/iofopncook.c: Likewise.
* libio/oldfileops.c: Likewise.
* libio/oldiofclose.c: Likewise.
* libio/oldiofdopen.c: Likewise.
* libio/oldiofgetpos.c: Likewise.
* libio/oldiofgetpos64.c: Likewise.
* libio/oldiofopen.c: Likewise.
* libio/oldiofsetpos.c: Likewise.
* libio/oldiofsetpos64.c: Likewise.
* libio/oldiopopen.c: Likewise.
* libio/oldpclose.c: Likewise.
* libio/oldtmpfile.c: Likewise.
* nptl/forward.c: Likewise.
* nss/getXXbyYY_r.c: Likewise.
* nss/getXXent_r.c: Likewise.
* posix/tst-vfork1.c: Likewise.
* stdlib/canonicalize.c: Likewise.
* stdlib/old_atexit.c: Likewise.
* sysdeps/generic/glob.c: Likewise.
* sysdeps/posix/posix_fallocate64.c: Likewise.
* sysdeps/unix/sysv/linux/i386/alphasort64.c: Likewise.
* sysdeps/unix/sysv/linux/i386/chown.c: Likewise.
* sysdeps/unix/sysv/linux/i386/glob64.c: Likewise.
* sysdeps/unix/sysv/linux/i386/msgctl.c: Likewise.
* sysdeps/unix/sysv/linux/i386/oldgetrlimit64.c: Likewise.
* sysdeps/unix/sysv/linux/i386/posix_fadvise64.S: Likewise.
* sysdeps/unix/sysv/linux/i386/readdir64.c: Likewise.
* sysdeps/unix/sysv/linux/i386/readdir64_r.c: Likewise.
* sysdeps/unix/sysv/linux/i386/scandir64.c: Likewise.
* sysdeps/unix/sysv/linux/i386/semctl.c: Likewise.
* sysdeps/unix/sysv/linux/i386/shmctl.c: Likewise.
* sysdeps/unix/sysv/linux/i386/versionsort64.c: Likewise.
* posix/regexec.c: Likewise.
* sysdeps/unix/sysv/linux/i386/syscalls.list: vm86@@GLIBC_2.3.4
should be the default symbol. Having none misses the point.
2004-03-09 Ulrich Drepper <>
* stdlib/qsort.c (_quicksort): Initialize first stack element [BZ #16].
2004-03-05 Jakub Jelinek <>
* posix/regexec.c (regexec): Return with error on unknown eflags.
Replace weak_alias with versioned_symbol.
(__compat_regexec): New.
* posix/Versions (libc): Add regexec@GLIBC_2.3.4.
2004-03-09 Richard Henderson <>
* math/math.h (isgreater, isgreaterequal, isless, islessequal,
islessgreater, isunordered): Use builtins if available.
* sysdeps/i386/fpu/bits/mathinline.h: Don't define via builtins.
* sysdeps/m68k/fpu/bits/mathinline.h: Likewise.
* sysdeps/powerpc/fpu/bits/mathinline.h: Likewise.
* sysdeps/sparc/fpu/bits/mathinline.h: Likewise.
* sysdeps/x86_64/fpu/bits/mathinline.h: Likewise.
* sysdeps/alpha/fpu/bits/mathinline.h (isgreater, isgreaterequal,
isless, islessequal, islessgreater): Remove; use default.
(isunordered): Convert inputs to double.
2004-02-09 Jakub Jelinek <>
* posix/Makefile (tests): Add tst-vfork2.
* posix/tst-vfork1.c (do_test): Fix comment.
* posix/tst-vfork2.c: New test.
2004-03-09 Ulrich Drepper <>
* elf/dl-lookup.c (_dl_lookup_symbol_x): Fix possible NULL pointer
derefernce in error message. Pretty printing.
* po/nl.po: Update from translation team.
2004-03-08 Andreas Schwab <>
* sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Don't truncate
sysinfo pointer value.
2004-03-08 Paul Eggert <>
Merge from gnulib. We now assume C89 or better.
* posix/getopt1.c (const): Remove.
* posix/getopt.c (const): Likewise.
* posix/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
_getopt_long_only_r, main): Use prototypes, not old-style definitions.
* posix/getopt.c (exchange, _getopt_initialize, _getopt_internal_r,
_getopt_internal, getopt, main): Likewise.
* posix/getopt.h (getopt, getopt_long, getopt_long_only): Likewise.
* posix/getopt.c [!defined VMS || !HAVE_STRING_H]:
Include <string.h> regardless. No need for <strings.h>.
[!defined _LIBC]: Include "gettext.h" rather than rolling it ourselves.
(_): Define to gettext always.
(my_index): Remove: all uses changed to strchr.
(strlen): Remove declaration.
* posix/getopt.h (struct Always const char *.
2004-03-08 Marcus Brinkmann <>
* posix/getopt.h (_getopt_internal): Move to ...
* posix/getopt_int.h: ... here. New file.
* include/getopt_int.h: New file.
* include/getopt.h: Remove libc_hidden_proto for getopt_long
and getopt_long_only.
* posix/getopt1.c: Include "getopt_int.h". Remove
libc_hidden_def for getopt_long and getopt_long_only.
(_getopt_long_r, _getopt_long_only_r): New functions.
* posix/getopt.c: Include "getopt_int.h".
(__getopt_initialized): Variable removed.
(nextchar, ordering, posixly_correct, first_nonopt, last_nonopt):
Static variables removed.
(nonoption_flags_max_len, nonoption_flags_len) [_LIBC &&
USE_NONOPTION_FLAGS]: Static variables removed.
(getopt_data): New static variable.
(SWAP_FLAGS): Use d->__nonoption_flags_len instead
(exchange): Add new argument D of type struct getopt_data *.
Replace optind with d->optind, optarg with d->optarg, opterr with
d->opterr, optopt with d->optopt, nextchar with d->__nextchar,
first_nonopt with d->__first_nonopt, last_nonopt with
d->__last_nonopt, d->ordering with d->__ordering,
d->posixly_correct with d->__posixly_correct (which is now an
int instead a string, so fix users), nonoption_flags_len
with d->__nonoption_flags_len, nonoption_flags_max_len with
(_getopt_initialize): Likewise.
(_getopt_internal): Rename to ...
(_getopt_internal_r): ... this. Also add new argument D of type
struct getopt_data * and use of members of D rather than global or
static variables as described for exchange() above. Add new argument
to invocations of _getopt_initialize and exchange.
(_getopt_internal): Reimplement in terms of _getopt_internal_r.
* argp/argp-parse.c: Include <getopt_int.h>.
[_LIBC]: Do not include <bits/libc-lock.h>.
[!_LIBC && HAVE_CTHREADS_H]: Do not include <cthreads.h>.
[!_LIBC] (_argp_hang): Make static.
(getopt_lock, LOCK_GETOPT, UNLOCK_GETOPT): Remove.
(_argp_unlock_xxx): Remove.
(parser_init): Do not use LOCK_GETOPT.
(parser_finalize): Do not use UNLOCK_GETOPT.
(struct parser): New member OPT_DATA.
(parser_init): Initialize parser->opt_data. Use
parser->opt_data.opterr instead of opterr.
(parser_parse_opt): Use parser->opt_data.optarg instead optarg.
(parser_parse_next): Likewise. Use parser->opt_data.optind
instead optind. Use parser->opt_data.optopt instead of optopt.
Call _getopt_long_only_r and _getopt_long_r instead of
getopt_long_only and getopt_long, and pass the extra argument.
2004-03-09 Ulrich Drepper <>
* iconv/gconv_db.c: Don't define lock as static. Rename to
__gconv_lock and export from the file.
* iconv/gconv_int.h: Declare __gconv_lock.
* libio/iofclose.c [_LIBC] (_IO_new_fclose): Lock gconv lock
before __gconv_release_step calls.
Patch by Shunichi Sagawa <>.
* iconv/gconv_simple.c (internal_ucs4_loop): Fix typo in last change.
* posix/Makefile (tests): Add tst-vfork1.
* posix/tst-vfork1.c: New file.
2004-03-08 Ulrich Drepper <>
* sysdeps/i386/dl-machine.h: Define ARCH_FIXUP_ATTRIBUTE and use
it in the fixup function declarations.
* elf/dl-runtime.c: If ARCH_FIXUP_ATTRIBUTE is not defined,
provide dummy definition. Use macro in fixup function
* sysdeps/unix/sysv/linux/i386/vfork.S: If SAVE_PID and
RESTORE_PID are defined, use it.
* sysdeps/unix/sysv/linux/x86_64/vfork.S: Likewise.
* sysdeps/posix/gai_strerror.c: Add error string for EAI_IDN_ENCODE.
* Makerules: Use if modules-names is defined.
* New file.
* dlfcn/Makefile (CPPFLAGS-modcxaatexit.c): Removed.
* elf/Makefile (CFLAGS-interp.c): Add -DNOT_IN_libc=1.
* csu/Makefile ($(objpfx)version-info.h): Pass -DNOT_IN_libc=1 to
* Makefile (distribute): Add symbol-hacks.h and
* sysdeps/generic/symbol-hacks.h: New file.
* sysdeps/wordsize-32/symbol-hacks.h: New file.
* sysdeps/wordsize-32/divdi3.c: Define *_internal aliases for __divdi3,
__moddi3, __udivdi3, and __umoddi3.
* include/libc-symbols.h: Include <symbol-hacks.h>.
2004-03-08 Jeroen Dekkers <>
* elf/rtld.c (_rtld_global_ro) [MAP_COPY]: Don't set _dl_unload_cache.
* sysdeps/mach/hurd/dl-sysdep.c (_dl_important_hwcaps):
Don't use INTUSE with _dl_signal_error.
2004-03-08 Ulrich Drepper <>
* sysdeps/powerpc/powerpc64/dl-machine.c (_dl_reloc_overflow):
Don't use INTUSE with _dl_signal_error.
2004-03-08 Richard Henderson <>
* sysdeps/alpha/soft-fp/ots_cvtxt.c (_OtsConvertFloatXT): Fix typo
in name.
2004-03-07 Ulrich Drepper <>
* Add entry for HAVE_LIBIDN.
* If libidn add-on present define HAVE_LIBIDN.
* Versions.def: Add entry for libcidn.
2004-03-07 Simon Josefsson <>
* resolv/netdb.h [__USE_GNU]: Add new AI_IDN ai_flags for addrinfo.
[__USE_GNU]: Add new error code EAI_IDN_ENCODE for getaddrinfo.
* sysdeps/posix/getaddrinfo.c: Add prototype for __idna_to_ascii_lz
and define IDNA_SUCCESS.
(gaih_inet): If ai_flags have AI_IDN, invoke __idna_to_ascii_lz.
(getaddrinfo): Fix EAI_BADFLAGS test to include AI_IDN.
All changes only applicable when glibc is compiled with the libidn
2004-03-07 Ulrich Drepper <>
* sysdeps/unix/sysv/linux/ia64/dl-static.c (_dl_static_init): Call
_dl_lookup_symbol_x not _dl_lookup_symbol.
* sysdeps/powerpc/elf/rtld-global-offsets.sym: Adjust for moving
_dl_hwcap into _rtld_global_ro.
* sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S: Likewise.
* sysdeps/powerpc/powerpc32/fpu/setjmp-common.S: Likewise.
* sysdeps/powerpc/powerpc64/__longjmp-common.S: Likewise.
* sysdeps/powerpc/powerpc64/setjmp-common.S: Likewise.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Likewise.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Likewise.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Likewise.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: Likewise.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: Likewise.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Likewise.
2004-03-07 Andreas Schwab <>
* elf/dl-sym.c: Include <dl-tls.h> only when USE_TLS.
2004-03-07 Andreas Jaeger <>
* iconvdata/iso-2022-cn-ext.c (BODY): Remove cast used as lvalue.
* iconvdata/tcvn5712-1.c (EMIT_SHIFT_TO_INIT): Likewise.
* iconvdata/euc-jisx0213.c (EMIT_SHIFT_TO_INIT): Likewise.
* iconvdata/shift_jisx0213.c (EMIT_SHIFT_TO_INIT): Likewise.
* iconvdata/tscii.c (EMIT_SHIFT_TO_INIT): Likewise.
2004-03-07 Ulrich Drepper <>
* sysdeps/generic/ldsodefs.h: Move _dl_initial_searclist,
_dl_hp_timing_overhead, _dl_init_all_dirs, and the content of
dl-procinfo.c from _rtld_global to _rtld_global_ro.
* elf/rtld.c: Adjust initializer for _rtld_global_ro.
* elf/dl-close.c: Use GLRO instead of GL where appropriate.
* elf/dl-libc.c: Likewise.
* elf/dl-load.c: Likewise.
* sysdeps/i386/dl-procinfo.h: Likewise.
* sysdeps/i386/i686/hp-timing.h: Likewise.
* sysdeps/ia64/hp-timing.h: Likewise.
* sysdeps/sparc/sparc32/sparcv9/hp-timing.h: Likewise.
* sysdeps/sparc/sparc64/hp-timing.h: Likewise.
* sysdeps/unix/sysv/linux/arm/dl-procinfo.h: Likewise.
* sysdeps/unix/sysv/linux/i386/dl-procinfo.h: Likewise.
* sysdeps/unix/sysv/linux/sparc/sparc32/dl-procinfo.h: Likewise.
* sysdeps/unix/sysv/linux/sparc/sparc64/dl-procinfo.h: Likewise.
* string/test-string.h: Define GLRO.
2004-03-06 Ulrich Drepper <>
* elf/dl-lookup.c: We don't need for specialized lookup functions.
Combining the functionality does not slow down relocation processing,
it might even speed it up a little.
* sysdeps/generic/ldsodefs.h: Adjust prototypes for lookup function.
Add only one function pointer to rtlf_global_ro.
* elf/do-lookup.h: Replace #ifs with ifs.
* elf/dl-libc.c: Adjust _dl_lookup_* callers.
* elf/dl-reloc.c: Likewise.
* elf/dl-runtime.c: Likewise.
* elf/dl-sym.c: Likewise.
* elf/rtld.c: Likewise. Adjust _rtld_global_ro initialization.
2004-03-06 Richard Henderson <>
* sysdeps/generic/ldsodefs.h (__rtld_local_attribute__,
__rtld_global_attribute__): Undef after use.
(_rtld_local_ro): Define __rtld_local_attribute__ with just hidden
if available.
* soft-fp/quad.h (union _FP_UNION_Q): Add longs structure.
* sysdeps/alpha/Implies: Add alpha/soft-fp.
* sysdeps/alpha/soft-fp/sfp-machine.h: Rewrite for GEM interface.
* sysdeps/alpha/Subdirs: New file.
* sysdeps/alpha/soft-fp/Makefile: New file.
* sysdeps/alpha/soft-fp/Versions: New file.
* sysdeps/alpha/soft-fp/local-soft-fp.h: New file.
* sysdeps/alpha/soft-fp/ots_add.c: New file.
* sysdeps/alpha/soft-fp/ots_cmp.c: new file.
* sysdeps/alpha/soft-fp/ots_cmpe.c: New file.
* sysdeps/alpha/soft-fp/ots_cvtqux.c: New file.
* sysdeps/alpha/soft-fp/ots_cvtqx.c: New file.
* sysdeps/alpha/soft-fp/ots_cvttx.c: New file.
* sysdeps/alpha/soft-fp/ots_cvtxq.c: New file.
* sysdeps/alpha/soft-fp/ots_cvtxt.c: New file.
* sysdeps/alpha/soft-fp/ots_div.c: New file.
* sysdeps/alpha/soft-fp/ots_mul.c: New file.
* sysdeps/alpha/soft-fp/ots_nintxq.c: New file.
* sysdeps/alpha/soft-fp/ots_sub.c: New file.
2004-03-06 Ulrich Drepper <>
* Recognize --enable-bind-now.
* elf/dynamic-link.h (elf_get_dynamic_info): Allow bind-now flags
* Makerules ( Add -z now if so configured.
* elf/Makefile ($(objpfx) Likewise.
* (bind-now): New definition.
* elf/dl-fini.c (_dl_fini): Combine _dl_debug_printf calls.
* elf/rtld.c (print_statistics): Likewise.
* elf/dl-open.c: No need to pass any parameter to _dl_start_profile.
They are the same in both places.
* elf/dl-profile.c: Likewise.
* elf/rtld.c: Likewise.
* sysdeps/generic/ldsodefs.h: Likewise.
* elf/dl-support.c: Define _dl_profile_output variable. Initialize it.
2004-03-05 Ulrich Drepper <>
* elf/Versions: Remove functions which are not exported anymore.
* dlfcn/dlerror.c: Call functions through GLSO.
* dlfcn/dlinfo.c: Likewise.
* elf/dl-close.c: Likewise.
* elf/dl-libc.c: Likewise.
* elf/dl-open.c: Likewise.
* elf/dl-sym.c: Likewise.
* sysdeps/generic/libc-start.c: Likewise.
* elf/dl-debug.c: Remove *_internal definition. Don't use INTUSE for
functions which are not exported anymore.
* elf/dl-deps.c: Likewise.
* elf/dl-dst.h: Likewise.
* elf/dl-error.c: Likewise.
* elf/dl-fini.c: Likewise.
* elf/dl-init.c: Likewise.
* elf/dl-load.c: Likewise.
* elf/dl-lookup.c: Likewise.
* elf/dl-misc.c: Likewise.
* elf/dl-profile.c: Likewise.
* elf/dl-profstub.c: Likewise.
* elf/dl-reloc.c: Likewise.
* elf/dl-runtime.c: Likewise.
* elf/dl-version.c: Likewise.
* elf/do-lookup.h: Likewise.
* include/dlfcn.h: Likewise.
* sysdeps/generic/dl-cache.c: Likewise.
* sysdeps/generic/dl-fptr.c: Likewise.
* sysdeps/generic/dl-origin.c: Likewise.
* sysdeps/generic/dl-sysdep.c: Likewise.
* sysdeps/generic/dl-tls.c: Likewise.
* sysdeps/generic/ldsodefs.h: Likewise.
* sysdeps/i386/dl-tls.h: Likewise.
* sysdeps/unix/sysv/linux/dl-origin.c: Likewise.
* elf/rtld.c: Likewise. Export function though _rtld_global_ro.
* sysdeps/generic/ldsodefs.h (struct rtld_global): Move
dl_debug_fd to rtld_global_ro.
* elf/rtld.c: Use GLRO instead of GL for dl_debug_fd.
* elf/dl-misc.c: Likewise.
* malloc/malloc.c: Don't call exported interface in the implementation.
* include/wctype.h: Add libc_hidden_proto for __towctrans.
* wctype/towctrans.c: Add libc_hidden_def.
* libio/memstream.c (open_memstream): Use _IO_init with INTUSE.
* posix/regexec.c (transit_state): Remove unused variable
* posix/regcomp.c (init_dfa): Use __btowc instead of btowc.
* sysdeps/generic/ldsodefs.h: Define new structure rtld_global_ro.
Declare _rtld_global_ro and _rtld_local_ro. Move members of
rtld_global structure into the new one if they are modified only
at startup time. Define GLRO to access _rtld_global_ro.
* elf/Versions: Export _rtld_global_ro.
* elf/dl-close.c: Use GLRO instead of GL where appropriate.
* elf/dl-conflict.c: Likewise.
* elf/dl-deps.c: Likewise.
* elf/dl-dst.h: Likewise.
* elf/dl-error.c: Likewise.
* elf/dl-fini.c: Likewise.
* elf/dl-init.c: Likewise.
* elf/dl-load.c: Likewise.
* elf/dl-lookup.c: Likewise.
* elf/dl-minimal.c: Likewise.
* elf/dl-open.c: Likewise.
* elf/dl-profile.c: Likewise.
* elf/dl-reloc.c: Likewise.
* elf/dl-runtime.c: Likewise.
* elf/dl-support.c: Likewise.
* elf/dl-version.c: Likewise.
* elf/do-lookup.h: Likewise.
* elf/rtld.c: Likewise.
* sysdeps/generic/dl-cache.c: Likewise.
* sysdeps/generic/dl-origin.c: Likewise.
* sysdeps/generic/dl-sysdep.c: Likewise.
* sysdeps/generic/libc-start.c: Likewise.
* sysdeps/generic/dl-cache.c: Likewise.
* sysdeps/i386/dl-machine.h: Likewise.
* sysdeps/i386/setfpucw.c: Likewise.
* sysdeps/i386/fpu/fclrexcpt.c: Likewise.
* sysdeps/i386/fpu/fedisblexcpt.c: Likewise.
* sysdeps/i386/fpu/feenablxcpt.c: Likewise.
* sysdeps/i386/fpu/feholdexcpt.c: Likewise.
* sysdeps/i386/fpu/fesetround.c: Likewise.
* sysdeps/i386/fpu/fsetexcptflg.c: Likewise.
* sysdeps/i386/fpu/ftestexcept.c: Likewise.
* sysdeps/unix/sysv/linux/dl-execstat.c: Likewise.
* sysdeps/unix/sysv/linux/dl-librecon.h: Likewise.
* sysdeps/unix/sysv/linux/dl-origin.c: Likewise.
* sysdeps/unix/sysv/linux/dl-osinfo.h: Likewise.
* sysdeps/unix/sysv/linux/getclktck.c: Likewise.
* sysdeps/unix/sysv/linux/getpagesize.c: Likewise.
* sysdeps/unix/sysv/linux/init-first.c: Likewise.
* sysdeps/unix/sysv/linux/prof-freq.c: Likewise.
* sysdeps/unix/sysv/linux/i386/dl-librecon.h: Likewise.
* sysdeps/unix/sysv/linux/i386/sigaction.h: Likewise.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Likewise.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Likewise.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: Likewise.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Likewise.
* sysdeps/x86_64/dl-machine.h: Likewise.
* sysdeps/sparc/sparc64/dl-machine.h: Likewise.
* sysdeps/sparc/sparc32/dl-machine.h: Likewise.
* sysdeps/s390/s390-64/dl-machine.h: Likewise.
* sysdeps/s390/s390-32/dl-machine.h: Likewise.
* sysdeps/powerpc/powerpc64/dl-machine.h: Likewise.
* sysdeps/powerpc/powerpc32/dl-machine.c: Likewise.
* sysdeps/m68k/dl-machine.h: Likewise.
* sysdeps/ia64/dl-machine.h: Likewise.
* sysdeps/arm/dl-machine.h: Likewise.
* sysdeps/alpha/dl-machine.h: Likewise.
* generic/dl-fptr.c: Likewise.
* mach/hurd/dl-sysdep.c: Likewise.
* unix/sysv/linux/ia64/dl-static.c: Likewise.
* unix/sysv/linux/ia64/getpagesize.c: Likewise.
* unix/sysv/linux/m68k/getpagesize.c: Likewise.
* unix/sysv/linux/sparc/sparc32/getpagesize.c: Likewise.
2004-03-04 Ulrich Drepper <>
* sysdeps/generic/ldsodefs.h: Don't define _dl_name_match_p as inline.
* elf/dl-misc.c: Define _dl_name_match_p here.
* elf/dl-open.c (check_libc_caller): Don't use _dl_name_match_p.
* elf/dl-open.c (dl_open_worker): Check that _dl_open is called
from the right place.
2004-01-15 Paolo Bonzini <>
* posix/regex.h (REG_STARTEND): Define.
* posix/regexec.c (regexec): Check for REG_STARTEND.
2004-02-29 Paolo Bonzini <>
* posix/regexec.c (transit_state): Don't handle state == NULL.
Move state log and backreference management...
(merge_state_with_log): ... to this function.
(find_recover_state): New function.
(check_matching): Use find_recover_state to get a non-NULL
state when an invalid state is reached. Compute the amount
of initial characters to be skipped less conservatively when
multi-byte character sets are in use. Do not check
dfa->nbackref if the state log is NULL. Initialize err.
(acquire_init_state_context): Expect err to be initialized.
Fix spacing.
2004-03-05 Jakub Jelinek <>
* sysdeps/sparc/sparc32/elf/start.S: Handle PIEs.
* sysdeps/sparc/sparc64/elf/start.S: Likewise.
2004-03-04 Jakub Jelinek <>
* iconv/iconv_prog.c (process_block): Handle omit_invalid.
If iconv returns EILSEQ with omit_invalid, continue converting
and return 1 if no other errors are seen.
(main): Set status to EXIT_FAILURE whenever process_* returns
nonzero, but only stop processing further files if iy returns
negative value.
2004-03-03 Jakub Jelinek <>
* sysdeps/unix/sysv/linux/x86_64/posix_fadvise.c: New file.
* sysdeps/unix/sysv/linux/x86_64/posix_fadvise64.c: New file.
* sysdeps/unix/sysv/linux/x86_64/syscalls.list (posix_fadvise64):
* sysdeps/unix/sysv/linux/alpha/posix_fadvise.c: New file.
* sysdeps/unix/sysv/linux/alpha/posix_fadvise64.c: New file.
* sysdeps/unix/sysv/linux/alpha/syscalls.list (posix_fadvise64):
* sysdeps/unix/sysv/linux/ia64/posix_fadvise.c: New file.
* sysdeps/unix/sysv/linux/ia64/posix_fadvise64.c: New file.
* sysdeps/unix/sysv/linux/ia64/syscalls.list (posix_fadvise64):
* sysdeps/unix/sysv/linux/powerpc/powerpc64/posix_fadvise.c: New file.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/posix_fadvise64.c: New
* sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Removed.
* sysdeps/unix/sysv/linux/s390/s390-64/posix_fadvise.c: New file.
* sysdeps/unix/sysv/linux/s390/s390-64/posix_fadvise64.c: New file.
* sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list
(posix_fadvise64): Remove.
* sysdeps/unix/sysv/linux/sparc/sparc64/posix_fadvise.c: New file.
* sysdeps/unix/sysv/linux/sparc/sparc64/posix_fadvise64.c: New file.
* sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list
(posix_fadvise64): Remove.
2004-03-02 Andreas Schwab <>
* sysdeps/unix/sysv/linux/powerpc/powerpc32/xstat.c: New file.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/fxstat.c: New file.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/lxstat.c: New file.
2004-03-01 Ulrich Drepper <>
* nscd/nscd_getgr_r.c (nscd_getgr_r): Add missing initialization
of return value.
* nscd/nscd_gethst_r.c (nscd_gethst_r): Likewise.
* sysdeps/unix/sysv/linux/kernel-features.h: Add support for
* sysdeps/unix/sysv/linux/getdents.c: For 2.6.4+ kernels use
getdents syscall again since it provides d_type information.
2004-02-29 Andreas Jaeger <>
* manual/install.texi (Tools for Compilation): Autoconf 2.53 is
(Supported Configurations): Add x86_64-*-linux.
2004-02-28 Ulrich Drepper <>
* sysdeps/i386/i686/memcmp.S: Move table to .rodata. Patch by HJ Lu.
2004-02-27 Jakub Jelinek <>
* elf/rtld.c (dl_main): Adjust l->l_ld of the vDSO by l->l_addr.
* sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Only set
GL(dl_sysinfo) if non-zero.
* sysdeps/unix/sysv/linux/sysconf.c: Include stdlib.h.
2004-02-26 Ulrich Drepper <>
* nss/getXXbyYY_r.c: Pass result also to the nscd_* function. Don't
set *result here.
* nscd/nscd_proto.h: Add new argument for pointer to result pointer
to all nscd_* functions.
* nscd/nscd_getgr_r.c (nscd_getgr_r): Add new parameter. Store result
pointer in the address provided by the new parameter if successful.
Otherwise store NULL. Return zero if no entry found.
(__nscd_getgrnam_r, __nscd_getgrgid_r): Add new parameter and pass
it on.
* nscd/nscd_gethst_r.c (nscd_gethst_r): Add new parameter. Store
result pointer in the address provided by the new parameter if
successful. Otherwise store NULL. Return zero if no entry found.
(__nscd_gethostbyname_r, __nscd_gethostbyname2_r,
__nscd_gethostbyaddr_r): Add new parameter and pass it on.
* nscd/nscd_getpw_r.c (nscd_getpw_r): Add new parameter. Store result
pointer in the address provided by the new parameter if successful.
Otherwise store NULL. Return zero if no entry found.
(__nscd_getpwnam_r, __nscd_getpwuid_r): Add new parameter and pass
it on.
2004-02-26 Jakub Jelinek <>
* sysdeps/unix/sysv/linux/clock_settime.c (SYSDEP_SETTIME): Set
retval to -1 on error.
2004-02-26 Ulrich Drepper <>
* stdlib/canonicalize.c (__realpath): Simplify.
* posix/regcomp.c (parse_expression): Avoid duplication in calls
to build_charclass_op.
2004-02-26 Jakub Jelinek <>
* elf/rtld.c (dl_main): Correctly set up l_map_end and l_addr
in vDSO's link_map, don't assume l_addr == 0. Set GL(dl_sysinfo)
from e_entry only if AT_SYSINFO not present and adjust by l_addr.
Take vDSO into account when inserting rtld into _dl_loaded chain.
2004-02-26 Ulrich Drepper <>
* sunrpc/svcauth_des.c (authdes_getucred): Removed fixed limit on
number of groups in the cache. Relax the disconnect between the
interface of authdes_getucred and netname2user a bit.
* sunrpc/auth_unix.c (authunix_create_default): Don't allocate
huge arrays on the stack.
* sysdeps/unix/sysv/linux/sysconf.c (__sysconf): Use the official
not cancelable interfaces.
2004-02-24 Arnold D. Robbins <>
* posix/regex_internal.c (build_wcs_upper_buffer): Enclose
`offsets_needed' label in `#ifdef _LIBC' to silence `unused label'
compiler warning.
2004-02-24 Nelson H.F. Beebe <>
* posix/regcomp.c (parse_expression): Add cast to (const unsigned
char *) in calls to `build_charclass_op'.
* posix/regex_internal.c (build_wcs_buffer): Add cast to char* in call
to `wcrtomb'.
* posix/regex_internal.h (bitset_not, bitset_merge, bitset_not_merge,
bitset_mask, re_string_char_size_a, re_string_wchar_at,
re_string_elem_size_at): Change to use prototypes.
(re_string_char_size_at, re_string_wchar_at,
re_string_elem_size_at): Declare as `internal_function'.
2004-02-25 Ulrich Drepper <>
* sysdeps/unix/sysv/linux/sysconf.c (__sysconf): Handle
2004-02-23 Jakub Jelinek <>
* wcsmbs/mbrtowc.c (__mbrtowc): Cap s + n at the end of address space.
* stdlib/Makefile (tests): Add testmb2.
(testmb2-ENV): New.
* stdlib/testmb2.c: New test.
2004-02-23 Jakub Jelinek <>
* sysdeps/posix/getaddrinfo.c (gaih_inet): If _res has not been
inited yet, try to init it before saving old _res.options.
* posix/Makefile (xtests): Add bug-ga2.
(generated): Add bug-ga2.mtrace and bug-ga2-mem.
(xtests): Depend on bug-ga2-mem.
($(objpfx)bug-ga2-mem, bug-ga2-ENV): New.
* posix/bug-ga2.c: New test.
2004-02-22 Ulrich Drepper <>
* sysdeps/unix/sysv/linux/i386/posix_fadvise64.S: Pop register
content also in case of an overflow in the parameter.
Reported by Momchil Velikov <>.
2004-02-21 Ulrich Drepper <>
* elf/dynamic-link.h (elf_get_dynamic_info): Recognize DF_1_NOW.
In, neither DT_FLAGS nor DT_FLAGS_1 must be used.
2004-02-21 Andreas Jaeger <>
* posix/bug-ga1.c: Include <string.h> for memset prototype.
* elf/dl-load.c (_dl_map_object_from_fd): Fix casts used as lvalue.
* iconv/gconv_simple.c (internal_ucs4le_loop): Remove cast used as
2004-02-19 Carlos O'Donell <>
* sysdeps/generic/framestate.c [__USING_SJLJ_EXCEPTIONS__]
(__frame_state_for): Set frame_State_for to abort if the compiler
is using sjlj.
* sysdeps/generic/unwind-dw2.c: Allow sjlj enabled compilers to
build the code by removing __USING_SJLJ_EXCEPTIONS__ wrapper.
2004-02-20 Alexandre Oliva <>
* resolv/Versions: Remove semicolon from the end of libresolv's
GLIBC_2.3.2 version block.
* Versions.def (libresolv): Add GLIBC_2.3.2.
2004-02-19 Carlos O'Donell <>
* sysdeps/hppa/fpu/feholdexcpt.c (feholdexcept): Fix order of fp
status register loads.
2004-02-20 Thorsten Kukuk <>
* nscd/nscd.c (termination_handler): Use _exit instead of exit
2004-02-20 Ulrich Drepper <>
* nscd/nscd.c (main): Report fork errors.
* dlfcn/dlsym.c: Get loading lock before the call into
* dlfcn/dlvsym.c: Likewise.
* elf/dl-addr.c: Get loading lock while using _dl_loaded data.
* elf/dl-fini.c: Likewise.
Patch by Shunichi Sagawa <>.
2004-02-20 Jakub Jelinek <>
* sysdeps/sparc/sparc32/fpu/libm-test-ulps: Add ulps for the
2003-11-27 atan2 test.
* sysdeps/powerpc/fpu/bits/mathinline.h (lrint, lrintf): Protect
with #ifndef __powerpc64__.
* sysdeps/generic/ldsodefs.h (_dl_argv, _dl_argv_internal): If
DL_ARGV_NOT_RELRO defined, don't use attribute_relro.
* sysdeps/alpha/dl-machine.h (DL_ARGV_NOT_RELRO): Remove.
* sysdeps/ia64/dl-machine.h (DL_ARGV_NOT_RELRO): Remove.
* sysdeps/sparc/sparc32/dl-machine.h (DL_ARGV_NOT_RELRO): Remove.
* sysdeps/sparc/sparc64/dl-machine.h (DL_ARGV_NOT_RELRO): Remove.
* sysdeps/alpha/dl-sysdep.h: New file.
* sysdeps/ia64/dl-sysdep.h: New file.
* sysdeps/sparc/dl-sysdep.h: New file.
2004-02-19 Jakub Jelinek <>
* sysdeps/sparc/sparc32/bits/atomic.h: Add __make_section_unallocated
for .gnu.linkonce.b.__sparc32_atomic_locks section.
(__sparc32_atomic_locks): Add __sec_comment at the end of section name.
2004-02-19 Steven Munroe <>
* sysdeps/generic/libc-start.c [LIBC_START_DISABLE_INLINE] (STATIC):
Define as static.
* sysdeps/powerpc/elf/libc-start.c: Define LIBC_START_DISABLE_INLINE
because gcc does not allow inline of functions that call setjmp.
2004-02-19 Steven Munroe <>
* sysdeps/powerpc/powerpc64/Makefile: Use -finline-limit.
2004-02-19 Jakub Jelinek <>
* elf/rtld.c (_dl_argv): If DL_ARGV_NOT_RELRO defined, don't
use attribute_relro for _dl_argv.
* sysdeps/alpha/dl-machine.h (DL_ARGV_NOT_RELRO): Define.
* sysdeps/ia64/dl-machine.h (DL_ARGV_NOT_RELRO): Define.
* sysdeps/sparc/sparc32/dl-machine.h (DL_ARGV_NOT_RELRO): Define.
* sysdeps/sparc/sparc64/dl-machine.h (DL_ARGV_NOT_RELRO): Define.
2004-02-19 Ulrich Drepper <>
* libio/iopopen.c (_IO_new_proc_open): It's not kosher to use
vfork instead of fork.
* libio/oldiopopen.c (_IO_old_proc_open): Likewise.
* sysdeps/unix/clock_settime.c (clock_settime): Fix typo which
prevented system-dependent handling from being used.
2004-02-18 Carlos O'Donell <>
* test-skeleton.c (main): If set, use environment variable
2004-02-18 Ulrich Drepper <>
* nscd/nscd_conf.c: Include <stdio_ext.h>.
2004-02-16 Ulrich Drepper <>
* stdlib/test-canon.c (do_test): Test realpath(,NULL) in the loop
as well.
* stdlib/canonicalize.c (__realpath): Remove unnecessary copy
* nscd/nscd_conf.c (nscd_parse_file): Little optimization.
2004-02-14 Thorsten Kukuk <>
* nscd/dbg_log.c (set_logfile): Only save name of logfile,
don't open it.
(init_logfile): New function, open logfile if requested.
* nscd/dbg_log.h: Adjust protoype for set_logfile, add init_logfile.
* nscd/nscd.c (main): Call init_logfile after forking in background.
* nscd/nscd_conf.c (nscd_parse_file): Adjust for new set_logfile.
2004-02-16 Ulrich Drepper <>
* elf/rtld.c (dl_main): Don't fail execution if file named in is not present [BZ #18].
* sysdeps/posix/getaddrinfo.c (getaddrinfo): Undo unintended
changes in last patch.
* posix/regexec.c (transit_state): Fix typo in commented-out code
[BZ #6].
* sysdeps/posix/getaddrinfo.c (match_prefix): Correctly match
partial bytes [BZ #24].
* posix/Makefile (tests): Add bug-ga1.
* posix/bug-ga1.c: New file.
2004-02-13 Steven Munroe <>
* sysdeps/powerpc/powerpc64/__longjmp-common.S: New file.
* sysdeps/powerpc/powerpc64/__longjmp.S [NOT_IN_libc](__longjmp):
Non-versioned __longjmp for rtld-__longjmp.
[!NOT_IN_libc](__vmx__longjmp): Add VMX reg support and define as
default version of __longjmp.
[SHARED && SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)]
(__novmx__longjmp): Original version of __longjmp.
* sysdeps/powerpc/powerpc64/bsd-_setjmp.S [NOT_IN_libc](_setjmp):
Non-versioned _setjmp for rtld-_setjmp.
[!NOT_IN_libc](__vmx_setjmp): Branch to __vmx__sigsetjmp and define
as default version of _setjmp.
[SHARED && SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)]
(__novmx_setjmp): Original version of _setjmp.
* sysdeps/powerpc/powerpc64/bsd-setjmp.S (__vmxsetjmp): Branch to
__vmx__sigsetjmp and define as default version of setjmp.
[SHARED && SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)]
(__novmxsetjmp): Original version of setjmp.
* sysdeps/powerpc/powerpc64/setjmp-common.S: New file.
* sysdeps/powerpc/powerpc64/setjmp.S [NOT_IN_libc](__setjmp):
Non-versioned __sigsetjmp for rtld-setjmp.
[!NOT_IN_libc](__vmx__sigsetjmp): Add VMX reg support and define
as default version of __sigsetjmp.
[SHARED && SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)]
(__novmx__sigsetjmp): Original version of __sigsetjmp.
* sysdeps/powerpc/powerpc32/__longjmp-common.S: New File
* sysdeps/powerpc/powerpc32/__longjmp.S [NOT_IN_libc](__longjmp):
Non-versioned __longjmp for rtld-__longjmp.
[!NOT_IN_libc](__vmx__longjmp): Add VMX reg support and define as
default version of __longjmp.
[SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)]
(__novmx__longjmp): Original version of __longjmp.
* sysdeps/powerpc/powerpc32/bsd-_setjmp.S [NOT_IN_libc](_setjmp):
Non-versioned _setjmp for rtld-_setjmp.
[!NOT_IN_libc](__vmx_setjmp): Branch to __vmx__sigsetjmp and define
as default version of _setjmp.
[SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)]
(__novmx_setjmp): Original version of _setjmp.
* sysdeps/powerpc/powerpc32/bsd-setjmp.S (__vmxsetjmp): Branch to
__vmx__sigsetjmp and define as default version of setjmp.
[SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)]
(__novmxsetjmp): Original version of setjmp.
* sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S: New file.
* sysdeps/powerpc/powerpc32/fpu/__longjmp.S [NOT_IN_libc](__longjmp):
Non-versioned __longjmp for rtld-__longjmp.
[!NOT_IN_libc](__vmx__longjmp): Add VMX reg support and define as
default version of __longjmp.
[SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)]
(__novmx__longjmp): Original version of __longjmp.
* sysdeps/powerpc/powerpc32/fpu/setjmp-common.S: New file.
* sysdeps/powerpc/powerpc32/fpu/setjmp.S [NOT_IN_libc](__setjmp):
Non-versioned __sigsetjmp for rtld-setjmp.
[!NOT_IN_libc](__vmx__sigsetjmp): Add VMX reg support and define
as default version of __sigsetjmp.
[SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)]
(__novmx__sigsetjmp): Original version of __sigsetjmp.
* sysdeps/powerpc/powerpc32/setjmp-common.S: New file.
* sysdeps/powerpc/powerpc32/setjmp.S [NOT_IN_libc](__setjmp):
Non-versioned __sigsetjmp for rtld-setjmp.
[!NOT_IN_libc](__vmx__sigsetjmp): Add VMX reg support and define
as default version of __sigsetjmp.
[SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)]
(__novmx__sigsetjmp): Original version of __sigsetjmp.
* sysdeps/powerpc/Dist: New File.
* sysdeps/powerpc/Makefile (sysdep_routines): Add novmx-longjmp.c
and novmx-sigjmp.c
* sysdeps/powerpc/Versions (libc): To GLIBC_2.3_4 add _longjmp,
__sigsetjmp, _setjmp, longjmp, and setjmp. To GLIBC_PRIVATE add
__novmx__libc_longjmp, __novmx__libc_siglongjmp, __vmx__libc_longjmp,
and __vmx__libc_siglongjmp.
* sysdeps/powerpc/bits/setjmp.h: Define JB_VRSAVE, JB_VRS, and adjust
JB_SIZE to add VMX regs to __jmp_buf.
* sysdeps/powerpc/longjmp.c: New file.
* sysdeps/powerpc/novmxsetjmp.h: New file.
* sysdeps/powerpc/novmx-longjmp.c: New file.
* sysdeps/powerpc/novmx-sigjmp.c: New file.
* sysdeps/powerpc/sigjmp.c: New file.
2004-02-13 Jakub Jelinek <>
* sysdeps/powerpc/powerpc64/fpu/s_llrintf.c (__lrintf, lrintf):
(__lrintl, lrintl): Remove.
* sysdeps/powerpc/powerpc64/fpu/s_llrint.c (__lrint): Fix a typo in
strong_alias spelling.
* sysdeps/powerpc/powerpc64/fpu/s_lrintf.S: Remove.
* sysdeps/powerpc/powerpc64/fpu/s_lrint.S: New file.
2004-02-12 Ulrich Drepper <>
* posix/getopt.h: Add some non-gcc support. Patch by Aharon Robbins.
2004-02-12 Mark Brown <>
* sysdeps/ia64/fpu/e_fmodf.S: Added text of Intel license.
2004-02-12 Jakub Jelinek <>
* sysdeps/powerpc/fpu/s_lrint.c: Move to...
* sysdeps/powerpc/powerpc32/fpu/s_lrint.c: ... here.
* sysdeps/powerpc/fpu/s_llrint.c: Move to...
* sysdeps/powerpc/powerpc32/fpu/s_llrint.c: ... here.
* sysdeps/powerpc/fpu/s_llrintf.c: Move to...
* sysdeps/powerpc/powerpc32/fpu/s_llrintf.c: ... here.
* sysdeps/powerpc/powerpc64/fpu/s_llrint.c: New file.
* sysdeps/powerpc/powerpc64/fpu/s_lrintf.S: New file.
* sysdeps/powerpc/powerpc64/fpu/s_llrintf.c: New file.
* math/ (lrint_test): Add new test.
(llrint_test, lround_test, llround_test): Likewise.
* sysdeps/ieee754/ldbl-128/s_lroundl.c (__lroundl): Fix special case
with result taking up 48 bits.
* sysdeps/ieee754/ldbl-128/s_lrintl.c (__lrintl): Likewise.
* sysdeps/ieee754/ldbl-128/s_llroundl.c (__llroundl): Likewise.
* sysdeps/ieee754/ldbl-96/s_llrintl.c (__llrintl): Fix special case
with result taking up 31 bits.
2004-02-12 Ulrich Drepper <>
* locale/programs/locale.c (show_locale_vars): Don't print a value
for LANG if it is not set.
2004-02-11 Jakub Jelinek <>
* posix/regexec.c (check_node_accept_bytes): Return 0 if char_len is 0.
(find_collation_sequence_value): Don't look beyond end of
* posix/Makefile (tests): Add bug-regex23.
(bug-regex23-ENV): New.
* posix/bug-regex23.c: New file.
2004-02-10 Roland McGrath <>
* sysdeps/mach/hurd/times.c (__times): Use union instead of cast.
* sysdeps/mach/hurd/sendmsg.c (__libc_sendmsg): Likewise.
* sysdeps/mach/hurd/ Move `retcode' check to ...
* sysdeps/mach/ ... here.
* sysdeps/mach/hurd/configure: Regenerated.
* sysdeps/mach/ Regenerated.
2004-02-10 Ulrich Drepper <>
* sysdeps/generic/setenv.c (__add_to_environ): Don't let the
temporary copies of the variables accumulate on the stack.
* stdio-common/_i18n_number.h: Finish last patch.
2004-02-09 Ulrich Drepper <>
* sysdeps/i386/i686/memcmp.S: New file. Patch by HJ Lu.
2003-12-05 Roland McGrath <>
* sysdeps/unix/sysv/linux/i386/syscalls.list: Turn vm86 into vm86old
for vm86@GLIBC_2.0 version. Add new vm86@GLIBC_2.3.4.
* sysdeps/unix/sysv/linux/i386/Versions (libc: GLIBC_2.3.4): Add vm86.
* sysdeps/unix/sysv/linux/i386/sys/vm86.h: Update vm86 prototype.
2004-02-09 Ulrich Drepper <>
* nis/ypclnt.c: Cleanup last patch.
2004-02-09 Andreas Jaeger <>
* Remove glibcbug creation.
* configure: Regenerated.
* sysdeps/x86_64/fpu/s_copysignf.S: Only load 4 bytes.
2004-02-03 Thorsten Kukuk <>
* nis/ypclnt.c (__yp_bind_client_create): New, small chunk
of duplicated code from __yp_bind.
(__yp_bind_file): New, binding dir code from __yp_bind.
(__yp_bind_client_create): New, ypbind code from __yp_bind.
(__ypclnt_call): New, make NIS query.
(do_ypcall): At first use cached data, then try data from
binding directory, after this ask ypbind for a working ypserv.
Based on a patch from Jeff Bastian <> and
Chris Barrera <>
2004-01-19 Roland McGrath <>
* Don't set CCVERSION.
* configure: Regenerated.
* File removed.
* Makefile (install-bin-script): Remove glibcbug.
(glibcbug): Target removed.
(distclean-1): Don't rm glibcbug.
(distribute): Remove
2004-02-09 Roland McGrath <>
* time/tzset.c (tzset_internal): Cap hour in POSIX $TZ rule format to
24, not 23.
2004-01-29 Roland McGrath <>
* io/ftwtest-sh: Use $tmp consistently, not literal /tmp.
Reported by Kevin P. Fleming <>.
2004-02-09 Ulrich Drepper <>
* libio/genops.c (_IO_cleanup): Do not use locking when flushing
the buffers. Some thread might be using a stream.
2004-02-09 Andreas Jaeger <>
* sysdeps/x86_64/memcpy.S: Fix alignment [BZ #7].
Patch by Jan Beulich <>.
2004-02-09 Andreas Schwab <>
* include/rpc/rpc.h: Declare thread variables with their correct type.
* sunrpc/clnt_perr.c: Don't cast thread variables.
* sunrpc/clnt_raw.c: Likewise.
* sunrpc/clnt_simp.c: Likewise.
* sunrpc/key_call.c: Likewise.
* sunrpc/svcauth_des.c: Likewise.
* sunrpc/svc.c: Likewise.
* sunrpc/svc_raw.c: Likewise.
* sunrpc/svc_simple.c: Likewise.
2004-02-09 Ulrich Drepper <>
* stdio-common/_i18n_number.h: Support printing localized decimal
point and thousand separator.
* wctype/wctrans.c: Add __wctrans alias.
* include/wctype.h: Declare __wctrans.
Based on a patch by Hamed Malek.
* sysdeps/i386/fpu/fclrexcpt.c (__feclearexcept): Don't touch bits
other than the status bits [BZ #10].
2004-02-08 Ulrich Drepper <>
Make stream locking operations really work.
* misc/Makefile (CFLAGS-mntent_r.c): Define.
* shadow/Makefile (CFLAGS-fgetspent_r.c): Define.
(CFLAGS-putspent.c): Define.
* grp/Makefile (CFLAGS-fgetgrent_r.c): Define.
(CFLAGS-putgrent.c): Define.
* pwd/Makefile (CFLAGS-fgetpwent_r.c): Define.
Reported by Shunichi Sagawa <>.
* elf/dl-load.c (lose): Use noinline attribute instead of silly
alloca to prevent inlining.
* elf/dl-runtime.c (fixup): Likewise.
(profile_fixup): Likewise.
* stdio-common/printf_size.c: Undo parts of patch from 2000-2-11.
Initialize width correctly.
2004-02-07 Andreas Jaeger <>
* iconv/gconv_simple.c (ucs4le_internal_loop): Remove cast used as
(internal_ucs4le_loop_single): Likewise.
(ucs4_internal_loop): Likewise.
(BODY): Likewise.
(internal_ucs4_loop_single): Likewise.
* iconvdata/iso8859-1.c (BODY): Likewise.
* iconvdata/cp1255.c (EMIT_SHIFT_TO_INIT): Likewise.
* iconvdata/cp1258.c (EMIT_SHIFT_TO_INIT): Likewise.
* iconvdata/gb18030.c (BODY): Likewise.
* iconvdata/armscii-8.c (BODY): Likewise.
* stdlib/msort.c (msort_with_tmp): Likewise.
* iconv/gconv_open.c (__gconv_open): Remove conditional expression
as lvalue.
2004-02-06 Steven Munroe <>
* sysdeps/powerpc/powerpc32/dl-machine.c: Declare __cache_line_size as
weak extern.
(__elf_machine_runtime_setup): Invalidate the instruction cache over
the whole range of the PLT.
2004-02-06 Andreas Schwab <>
* posix/regcomp.c (build_range_exp): Fix off-by-one.
(parse_bracket_exp): Likewise.
2004-02-05 Ulrich Drepper <>
* sysdeps/unix/sysv/linux/powerpc/powerpc32/kernel_stat.h: Define
_HAVE_STAT_NSEC and _HAVE_STAT64_NSEC. Patch by Anton Blanchard.
2004-02-02 Paolo Bonzini <>
* posix/regexec.c (check_matching): Add P_MATCH_FIRST parameter.
(re_search_internal): Pass new parameter to check_matching.
(check_matching): Unless a parenthesized group is found at the
beginning of the regexp, advance P_MATCH_FIRST until we entered
a state different from the initial state.
2004-02-01 Ulrich Drepper <>
* math/ (lround_test): Add new test.
(llround_test): Likewise.
(lrint_test): Likewise.
(llrint_test): Likewise.
* sysdeps/ieee754/dbl-64/s_lround.c (__lround): Fix special case
with result taking up 20 bits.
* sysdeps/ieee754/dbl-64/s_lrint.c (__lrint): Likewise.
* sysdeps/ieee754/dbl-64/s_llrint.c (__llrint): Likewise..
* sysdeps/ieee754/ldbl-96/s_lroundl.c (__lroundl): Fix special
case with result taking up 31 bits.
* sysdeps/ieee754/ldbl-96/s_lrintl.c (__lrintl): Likewise.
* po/nl.po: Update from translation team.
2004-01-30 Andreas Schwab <>
* sysdeps/unix/sysv/linux/ia64/bits/siginfo.h (ILL_BREAK,
SEGV_PSTKOVF): Remove underscore prefix from definition.
2004-01-28 Paolo Bonzini <>
Merge regex changes in gawk.
* posix/regcomp.c (build_range_exp) [!_LIBC]: Check validity
of collation elements.
* posix/regex.c: Include limits.h.
* posix/regex.h: Document REG_ECOLLATE correctly.
* posix/regex_internal.h [!_LIBC && !ENABLE_NLS]: Disable NLS.
2004-01-24 Andreas Jaeger <>
* malloc/obstack.h: Import gnulib version.
* malloc/obstack.c: Likewise.
2004-01-26 David Mosberger <>
* elf/link.h (struct dl_phdr_info): Fix typo in comment.
* elf/rtld.c (dl_main): After incrementing dl_nloaded, also
increment dl_load_adds.
* elf/dl-iteratephdr.c (__dl_iterate_phdr): Replace GL(dl_load_subs)
with equivalent GL(dl_load_adds - GL(dl_nloaded).
(dl_iterate_phdr): Likewise.
* elf/dl-close.c (_dl_close): Delete increment of GL(dl_load_subs).
* elf/dl-support.c: Remove global variable _dl_load_subs.
* sysdeps/generic/ldsodefs.h (struct rtld_global): Remove
_dl_load_subs member.
2004-01-27 Jakub Jelinek <>
* elf/rtld.c (_dl_start_final): Don't set l_relro_* here.
(_dl_start): And neither here.
(dl_main): Set GL(dl_loaded)->l_relro_* and
2004-01-23 David Mosberger <>
* sysdeps/generic/ldsodefs.h (struct rtld_global): Add members
_dl_load_adds and _dl_load_subs.
* elf/dl-support.c (_dl_load_adds): New variable.
(_dl_load_subs): Likewise.
* elf/dl-object.c (_dl_new_object): Increment dl_load_adds.
* elf/dl-close.c (_dl_close): Increment dl_load_subs.
* elf/link.h (struct dl_phdr_info): Add members dlpi_adds and
* include/link.h: Likewise.
* elf/dl-iteratephdr.c (__dl_iterate_phdr): Initialize dlpi_adds
and dlpi_subs members.
(dl_iterate_phdr): Likewise.
* elf/tst-dlmodcount.c: New file.
* elf/Makefile (distribute): Mention tst-dlmodcount.c.
(tests): If build-shared, mention tst-dlmodcount.
($(objpfx)tst-dlmodcount): If build-shared, build and
run tst-dlmodcount.
2004-01-22 Jakub Jelinek <>
* elf/dl-reloc.c (_dl_relocate_object): Move PT_GNU_RELRO protection
(_dl_protect_relro): New routine.
* sysdeps/generic/ldsodefs.h (_dl_protect_relro): New prototype.
* elf/rtld.c (_dl_start_final): Copy l_relro_addr and l_relro_size
from bootstrap_map.
(_dl_main): Don't set GL(_dl_loaded)->l_relro_{addr,size} here.
Call _dl_protect_relro for libraries if prelinking.
2004-01-23 Richard Henderson <>
* Versions.def (libm): Replace GLIBC_2.3.3 with GLIBC_2.3.4.
* sysdeps/alpha/fpu/Versions (libm): Likewise.
* sysdeps/alpha/fpu/cfloat-compat.h (cfloat_versions): Likewise.
* sysdeps/alpha/fpu/s_clog10f.c (clog10f): Likewise.
2004-01-22 Andreas Jaeger <>
* sysdeps/ieee754/dbl-64/e_pow.c (log2): Rename to my_log2 to
avoid warnings for builtin function log2.
* sysdeps/unix/sysv/linux/x86_64/setcontext.S: Add proper unwind
2004-01-20 Ulrich Drepper <>
* sysdeps/unix/sysv/linux/sys/epoll.h: Add EPOLLONESHOT.
* sysdeps/unix/sysv/linux/x86_64/sys/epoll.h: Likewise.
Patch by Davide Libenzi.
* sysdeps/unix/sysv/linux/kernel-features.h: Define
__ASSUME_NO_CLONE_DETACHED for 2.6.2+ kernels.
* catgets/Makefile ($(objpfx)de.msg): Run sed in C locale.
* sysdeps/unix/sysv/linux/readahead.c (__readahead): Use off64_t
instead of loff_t. Include <fcntl.h>.
* sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Add readahead prototype.
* sysdeps/unix/sysv/linux/arm/bits/fcntl.h: Likewise.
* sysdeps/unix/sysv/linux/cris/bits/fcntl.h: Likewise.
* sysdeps/unix/sysv/linux/hppa/bits/fcntl.h: Likewise.
* sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise.
* sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
* sysdeps/unix/sysv/linux/m68k/bits/fcntl.h: Likewise.
* sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
* sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
* sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
* sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise.
* sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
* elf/dl-load.c: Don't add attribute_relro to max_dirnamelen.
* sysdeps/generic/inttypes.h: Fix PRI*FAST{16,32} macros.
2003-12-31 Bruno Haible <>
* iconvdata/iso_6937-2.c (to_ucs4): Map 0x7E to U+007E, not U+203E.
Map 0xA6 to U+0023. Map 0xA8 to U+00A4.
(to_ucs4_comb): Map 0xC5 0x20 to U+00AF.
(from_ucs4): Map U+00ED to 0xC2 0x69, not 0xC2 0xE9.
(BODY for TO_LOOP): Don't map U+02DC. Map U+02DD to 0xCD 0x20, not
0x00 0x20. Don't map U+2500..U+25E3.
2004-01-19 Jakub Jelinek <>
* posix/regexec.c (get_subexp): Remove bkref_str variable.
Extend buffers if needed before comparisons.
(get_subexp_sub): Handle clean_state_log_if_needed failure.
2004-01-17 Ulrich Drepper <>
* sysdeps/i386/i486/bits/atomic.h (atomic_add): Fix test for using
atomic_decrement. Patch by Davin McCall.
2004-01-13 Daniel Jacobowitz <>
* sysdeps/powerpc/nofpu/sim-full.c (__sim_exceptions)
(__sim_disabled_exceptions, __sim_round_mode): Declare with
hidden data and nocommon.
* sysdeps/powerpc/nofpu/soft-supp.h (__sim_exceptions)
(__sim_disabled_exceptions, __sim_round_mode): Use
* sysdeps/powerpc/soft-fp/sfp-machine.h (__sim_exceptions)
(__sim_disabled_exceptions, __sim_round_mode): Likewise.
2004-01-16 Ulrich Drepper <>
* elf/elf.h: Define PT_IA_64_HP_OPT_ANOT, PT_IA_64_HP_HSL_ANOT, and
2004-01-16 Richard Henderson <>
* include/unistd.h (__libc_enable_secure): Mark attribute_relro.
(__libc_enable_secure_internal): Likewise.
* elf/dl-load.c: Don't declare __libc_stack_end.
* sysdeps/generic/libc-start.c: Likewise.
* sysdeps/unix/sysv/linux/dl-execstack.c: Likewise.
* sysdeps/generic/segfault.c: Likewise. Include ldsodefs.h.
* sysdeps/generic/backtrace.c: Likewise.
2004-01-15 Ulrich Drepper <>
* Versions.def: Add GLIBC_2.3.4.
2004-01-15 Richard Henderson <>
* sysdeps/unix/alpha/sysdep.h: Revert last change.
2004-01-15 Richard Henderson <>
* sysdeps/alpha/dl-machine.h (RTLD_START): Use _dl_argv_internal.
* sysdeps/unix/alpha/sysdep.h [PIC] (SYSCALL_ERROR_HANDLER): Use
!samegp relocation.
2004-01-15 Richard Henderson <>
* sysdeps/unix/sysv/linux/alpha/Makefile [stdlib]: Process
* sysdeps/unix/sysv/linux/alpha/getcontext.S: New file.
* sysdeps/unix/sysv/linux/alpha/makecontext.S: New file.
* sysdeps/unix/sysv/linux/alpha/setcontext.S: New file.
* sysdeps/unix/sysv/linux/alpha/swapcontext.S: New file.
* sysdeps/unix/sysv/linux/alpha/ucontext-offsets.sym: New file.
2004-01-15 Richard Henderson <>
* sysdeps/unix/sysv/linux/alpha/rt_sigaction.S: Prefix stubs with
__syscall_, move nop inside, adjust users by +4.
2004-01-14 Steven Munroe <>
* include/libc-symbols.h [HAVE_ASM_GLOBAL_DOT_NAME]
(_symbol_version): Use C_SYMBOL_DOT_NAME to create '.'ed symbols.
(_default_symbol_version): Use C_SYMBOL_DOT_NAME to create '.'ed
* sysdeps/powerpc/Makefile: Add rtld-global-offsets.sym to
* sysdeps/powerpc/elf/rtld-global-offsets.sym: New file.
* sysdeps/powerpc/sysdep.h: Define v# symbols for vector registers.
Define PPC_FEATURE_* masks for Aux Vector AT_HWCAP.
* sysdeps/unix/sysv/linux/kernel-features.h
(__ASSUME_SWAPCONTEXT_SYSCALL): Define for PPC and 2.6.0 kernels.
* sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h [!__WORDSIZE == 32]:
Declare mcontext_t inline and include altivec state for 64-bit.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/Versions: Add GLIBC_2.3.4
versions for setcontext, getcontext, and swapcontext.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/Versions: Add GLIBC_2.3.4
versions for setcontext, getcontext, swapcontext, and makecontext.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S
(__getcontext): Upgrade to save Altivec regs and version GLIBC_2_3_4.
[SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)] (__novec_getcontext):
Compatible with GLIBC_2.3.3 release.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S
(__makecontext): Use parm save area instead of compiler_dw to hold
context pointer.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S
(__setcontext): Upgrade to restore Altivec regs and version
[SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)] (__novec_setcontext):
Compatible with GLIBC_2.3.3 release.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S
(__swapcontext): Upgrade to swap Altivec regs and version GLIBC_2_3_4.
[SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)] (__novec_swapcontext):
Compatible with GLIBC_2.3.3 release.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/ucontext_i.h
2004-01-12 Steven Munroe <>
* sysdeps/unix/sysv/linux/powerpc/powerpc32/Versions: Add GLIBC_2.3.4
versions for setcontext, getcontext, swapcontext, and makecontext.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S
(__getcontext): Upgrade to save Altivec regs and version GLIBC_2_3_4.
[SHLIB_COMPAT (libc, GLIBC_2_3_3, GLIBC_2_3_4)] (__novec_getcontext):
Compatible with GLIBC_2.3.3 release.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S
(__makecontext): Upgrade to align for Altivec regs and version
[SHLIB_COMPAT (libc, GLIBC_2_3_3, GLIBC_2_3_4)] (__novec_makecontext):
Compatible with GLIBC_2.3.3 release.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S
(__setcontext): Upgrade to restore Altivec regs and version
[SHLIB_COMPAT (libc, GLIBC_2_3_3, GLIBC_2_3_4)] (__novec_setcontext):
Compatible with GLIBC_2.3.3 release.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S
(__swapcontext): Upgrade to swap Altivec regs and version GLIBC_2_3_4.
[SHLIB_COMPAT (libc, GLIBC_2_3_3, GLIBC_2_3_4)]
(__novec_swapcontext): Compatible with GLIBC_2.3.3 release.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/ucontext_i.h:
(_UC_VSCR, _UC_VRSAVE): Define.
2004-01-15 Ulrich Drepper <>
* elf/rtld.c: Handle platforms with HP_TIMING_NONAVAIL defined.
2004-01-16 Alfred M. Szmidt <>
* sysdeps/generic/dl-execstack.c (_dl_make_stack_executable): Adjust
parameter type.
2004-01-15 Ulrich Drepper <>
* elf/elf.h: Fix typo in comment.
* sysdeps/generic/dl-sysdep.c: Initialize __libc_stack_end.
* elf/rtld.c: Initialize _dl_argv to allow aliasing.
* resolv/resolv.h: Add RES_USEBSTRING.
* resolv/res_debug.c (p_option): Add handling for RES_USE_INET6,
* resolv/res_init.c (res_setioptions): Recognize ip6-bytestring.
* resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Only perform
bytestring IPv6 lookup with RES_USEBSTRING option is selected.
Otherwise use the two nibble formats.
2004-01-14 Ulrich Drepper <>
* Define HAVE_Z_RELRO if the linker supports -z relro.
* Add entry for HAVE_Z_RELRO.
* include/libc-symbols.h: Define attribute_relro.
* elf/dl-load.c: Add attribute_relro to env_path_list, capstr, ncapstr,
max_capstrlen, and max_dirnamelen definitions.
* elf/rtld.c: Add attribute_relro to _dl_argc, _dl_argv, _dl_skip_args,
load_time, start_time, library_path, preloadlist, version_info,
Remove rtld_total_time. Make it a local variable. Pass pointer to
it to print_statistics. Change print_statistics accordingly.
* sysdeps/generic/dl-sysdep.c: Add attribute_relro to _dl_auxv. Use
attribute_relro instead of explicitly assigning variable to the section for __libc_enable_secure and __libc_stack_end.
* sysdeps/generic/ldsodefs.h: Declare __libc_stack_end, _dl_argc,
_dl_argv, _dl_argv_internal with attribute_relro.
2004-01-13 Segher Boessenkool <>
* Makerules (gen-as-const): Don't silently continue on failure.
2004-01-14 Steven Munroe <>
* sysdeps/generic/dl-sysdep.c: Define __libc_stack_end with
2004-01-14 Ulrich Drepper <>
* libio/libio.h: Add const to function tables types.
* libio/libioP.h: Likewise.
* login/utmp-private.h: Likewise.
* libio/fileops.c: Add const to jump table variable definition.
* libio/genops.c: Likewise.
* libio/iofopncook.c: Likewise.
* libio/iopopen.c: Likewise.
* libio/memstream.c: Likewise.
* libio/obprintf.c: Likewise.
* libio/oldfileops.c: Likewise.
* libio/oldiopopen.c: Likewise.
* libio/strops.c: Likewise.
* libio/vsnprintf.c: Likewise.
* libio/vswprintf.c: Likewise.
* libio/wfileops.c: Likewise.
* libio/wstrops.c: Likewise.
* login/getutent_r.c: Likewise.
* login/getutid_r.c Likewise.
* login/getutline_r.c: Likewise.
* sysdeps/generic/utmp_file.c: Likewise.
2004-01-09 Bruno Haible <>
* intl/gmo.h (MO_REVISION_NUMBER_WITH_SYSDEP_I): New definition.
* intl/loadmsgcat.c (get_sysdep_segment_value): Handle "I".
(_nl_load_domain): Treat major revision 1 like major revision 0.
2004-01-11 Bruno Haible <>
* stdio-common/vfprintf.c (vfprintf): Disallow the 'I' flag after
width or precision has been seen.
2004-01-08 Bruno Haible <>
* intl/loadmsgcat.c (_nl_load_domain): When a string pair uses a system
dependent segment not known to this version of the library, ignore
the string pair instead of crashing.
2004-01-13 Ulrich Drepper <>
* Rewrite test to give gcc to clean up after itself.
Patch by Greg Schafer.
* posix/regex.c: Support crappy compilers and platforms which have
problems with alloca.
* posix/regex_internal.h: Likewise.
Patch by Paolo Bonzini.
2004-01-12 Paolo Bonzini <>
* posix/regcomp.c [_LIBC && !RE_ENABLE_I18N]:
Drop code to support this, it is never true.
(build_range_exp) [!_LIBC]: Do not create a range
in MBCSET for a single-byte character set.
(build_range_exp) [_LIBC]: Do not create a range
in MBCSET for a single-byte character set without
collation elements.
(init_dfa): Do not conditionalize on _LIBC, it
just makes the code less clear.
(parse_bracket_exp): Use NON_MATCH variable in
addition to "mbcset->non_match", not as an
(build_charclass_op): rename NOT parameter to
NON_MATCH, use it instead of declaring a variable.
(parse_bracket_exp) [!_LIBC]: Pass NULL for MBCSET
if the character set is single-byte.
2004-01-14 Jakub Jelinek <>
* posix/regcomp.c (peek_token_bracket): Check remaining
string length before re_string_peek_byte (x, 1).
(parse_bracket_symbol): Likewise.
* posix/regex_internal.h (re_string_is_single_byte_char): Return
true at last byte in the string.
* posix/bug-regex22.c (main): Add new test.
2004-01-13 Ulrich Drepper <>
* sysdeps/generic/dl-sysdep.c: Move __libc_enable_secure into
* sysdeps/x86_64/dl-machine.h: Include <tls.h>.
* elf/rtld.c (_dl_start_final): Initialze __libc_stack_end here.
* sysdeps/generic/dl-sysdep.c: Define __libc_stack_end with
rtld_hidden_def and move into section.
* sysdeps/generic/ldsodefs.h: Declare __libc_stack_end with
* sysdeps/generic/libc-start.c: Only initialize __libc_stack_end here
2004-01-13 Richard Henderson <>
* sysdeps/unix/sysv/linux/alpha/rt_sigaction.S: Fix typo.
2004-01-13 Ulrich Drepper <>
* sysdeps/unix/sysv/linux/dl-execstack.c
(_dl_make_stack_executable): Move common code in front. Use
* sysdeps/unix/sysv/linux/dl-execstack.c: Change interface. Add
challenge for caller.
* sysdeps/generic/ldsodefs.h: Change declaration and type of hook
member in rtld_global appropriately.
* elf/dl-support.c: Likewise.
* elf/dl-load.c (_dl_map_object_from_fd): Take additional paramter.
Pass it on to the changed function.
(_dl_map_object): Pass new parameter to _dl_map_object_from_fd.
2004-01-13 Richard Henderson <>
* sysdeps/alpha/bits/atomic.h (__arch_compare_and_exchange_xxx_8_int):
Cast old up to uint64_t before back down to inner width.
(__arch_compare_and_exchange_xxx_16_int): Likewise.
(__arch_compare_and_exchange_xxx_32_int): Likewise.
(__arch_compare_and_exchange_xxx_64_int): Likewise.
(__arch_compare_and_exchange_val_8_int): Cast result to
the type of the memory.
(__arch_compare_and_exchange_val_16_int): Likewise.
(__arch_compare_and_exchange_val_32_int): Likewise.
(__arch_compare_and_exchange_val_64_int): Likewise.
(atomic_compare_and_exchange_bool_acq): Use __atomic_bool_bysize.
(atomic_compare_and_exchange_bool_rel): Likewise.
* sysdeps/unix/alpha/sysdep.h: Select inline_syscall_r0_asm
based on HAVE___THREAD instead of USE_TLS.
* sysdeps/unix/sysv/linux/alpha/adjtime.c (ADJTIMEX32): New.
(__adjtimex_tv64): Use it.
* sysdeps/unix/sysv/linux/alpha/semctl.c (__new_semctl): Cast
to void* rather than directly to the compatibility structure type.
* sysdeps/unix/sysv/linux/alpha/shmctl.c (__new_shmctl): Likewise.
* sysdeps/unix/sysv/linux/alpha/sigaction.c (struct kernel_sigaction):
Forward declare.
2004-01-13 Richard Henderson <>
* Versions.def (libm): Add GLIBC_2.3.3.
* sysdeps/alpha/fpu/Versions: Add __c1_c*f and c*f to GLIBC_2.3.3.
* sysdeps/alpha/fpu/cabsf.c, sysdeps/alpha/fpu/cargf.c,
sysdeps/alpha/fpu/cfloat-compat.h, sysdeps/alpha/fpu/cimagf.c,
sysdeps/alpha/fpu/conjf.c, sysdeps/alpha/fpu/crealf.c,
sysdeps/alpha/fpu/s_cacosf.c, sysdeps/alpha/fpu/s_cacoshf.c,
sysdeps/alpha/fpu/s_casinf.c, sysdeps/alpha/fpu/s_casinhf.c,
sysdeps/alpha/fpu/s_catanf.c, sysdeps/alpha/fpu/s_catanhf.c,
sysdeps/alpha/fpu/s_ccosf.c, sysdeps/alpha/fpu/s_ccoshf.c,
sysdeps/alpha/fpu/s_cexpf.c, sysdeps/alpha/fpu/s_clog10f.c,
sysdeps/alpha/fpu/s_clogf.c, sysdeps/alpha/fpu/s_cpowf.c,
sysdeps/alpha/fpu/s_cprojf.c, sysdeps/alpha/fpu/s_csinf.c,
sysdeps/alpha/fpu/s_csinhf.c, sysdeps/alpha/fpu/s_csqrtf.c,
sysdeps/alpha/fpu/s_ctanf.c, sysdeps/alpha/fpu/s_ctanhf.c: New files.
* sysdeps/alpha/fpu/bits/mathdef.h: Rename complex float
functions for gcc 3.3.
* sysdeps/generic/s_cacosf.c, sysdeps/generic/s_cacoshf.c,
sysdeps/generic/s_casinf.c, sysdeps/generic/s_casinhf.c,
sysdeps/generic/s_catanf.c, sysdeps/generic/s_catanhf.c,
sysdeps/generic/s_ccosf.c, sysdeps/generic/s_ccoshf.c,
sysdeps/generic/s_cexpf.c, sysdeps/generic/s_clog10f.c,
sysdeps/generic/s_clogf.c, sysdeps/generic/s_cpowf.c,
sysdeps/generic/s_cprojf.c, sysdeps/generic/s_csinf.c,
sysdeps/generic/s_csinhf.c, sysdeps/generic/s_csqrtf.c,
sysdeps/generic/s_ctanf.c, sysdeps/generic/s_ctanhf.c: Don't
weak_alias if the function name has been #defined.
* math/cabsf.c: Move ...
* sysdeps/generic/cabsf.c: ... here.
* math/cargf.c: Move ...
* sysdeps/generic/cargf.c: ... here.
* math/cimagf.c: Move ...
* sysdeps/generic/cimagf.c: ... here.
* math/conjf.c: Move ...
* sysdeps/generic/conjf.c: ... here.
* math/crealf.c: Move ...
* sysdeps/generic/crealf.c: ... here.
2004-01-13 Ulrich Drepper <>
* Makeconfig: Define relro-LDFLAGS if have-z-relro==yes. Add it to and LDFLAGS-rtld.
(+link): Add relro-LDFLAGS.
* Makeconfig ( Place __libc_subfreeres, __libc_atexit, and
__libc_thread_subfreeres sections after .jcr section.
* Add have-z-relro.
* Add check for -z relro option.
* include/link.h (struct link_map): Add relro_addr and relro_size
* elf/dl-load.c (_dl_map_object_from_fd): Recognize PT_GNU_RELRO.
* elf/dl-reloc.c (_dl_relocate_object): At the end, make relro
part of loaded segments read-only.
* elf/elf.h: Define PT_GNU_RELRO.
* elf/rtld.c (_dl_start): Recognize PT_GNU_RELRO of
(dl_main): Recognize PT_GNU_RELRO of the application. Call
_dl_debug_initialize and initialize l_info[DT_DEBUG] before
2004-01-12 Jakub Jelinek <>
* sysdeps/x86_64/strcspn.S: Fix typo in last patch.
2004-01-11 Andreas Jaeger <>
* sysdeps/x86_64/__longjmp.S: Add cfi directives.
2004-01-10 Andreas Jaeger <>
* sysdeps/unix/sysv/linux/x86_64/__start_context.S: Add cfi directives.
* sysdeps/unix/x86_64/sysdep.S (__syscall_error): Likewise.
* sysdeps/unix/sysv/linux/x86_64/vfork.S: Likewise.
* sysdeps/x86_64/strcspn.S: Likewise.
* sysdeps/x86_64/strspn.S: Likewise.
2004-01-08 Jakub Jelinek <>
* sysdeps/unix/sysv/linux/x86_64/clone.S (__clone): Add cfi_endproc
right before syscall and cfi_startproc before PSEUDO_END.
Clear %rbp in thread_start.
2004-01-05 Jakub Jelinek <>
* posix/regcomp.c (regcomp): Fix comment typo.
(regfree): Free preg->translate, clear buffer, allocated, fastmap
and translate fields.
* posix/regcomp.c (build_charclass, buld_charclass_op): Change first
argument to unsigned RE_TRANSLATE_TYPE.
* posix/regex_internal.h (re_string_t): Change trans type to
* posix/regex_internal.c (re_string_construct_common): Cast
trans to unsigned RE_TRANSLATE_TYPE.
(re_string_peek_byte_case, re_string_fetch_byte_case): Avoid fast
path if pstr->trans. Never translate the character through
* posix/Makefile (tests): Add bug-regex22.
(bug-regex22-ENV): Set.
* posix/bug-regex22.c: New test.
2004-01-02 Paolo Bonzini <>
* posix/regex_internal.c (re_node_set_add_intersect,
re_node_set_merge): Rewritten.
(re_node_set_insert, re_node_set_remove_at):
Avoid memmove, we know what direction we should copy and that we
are copying 32-bit words.
(re_node_set_compare): Iterate backwards.
2003-12-30 Paul Eggert <>
* time/mktime.c (verify): New macro.
(time_t_is_integer, twos_complement_arithmetic,
right_shift_propagates_sign, base_year_is_a_multiple_of_100,
C99_integer_division): Document these longstanding assumptions in the
code, and verify them at compile-time.
2004-01-02 Jakub Jelinek <>
* posix/regex_internal.h (re_match_context_t): Add dfa member.
* posix/regexec.c (match_ctx_free_subtops, search_cur_bkref_entry,
match_ctx_add_sublast, sift_ctx_init, acquire_init_state_context,
prune_impossible_nodes, check_halt_state_context, proceed_next_node,
sift_states_backward, update_cur_sifted_state, check_dst_limits,
check_dst_limits_calc_pos, sift_states_bkref, transit_state,
check_subexp_matching_top, transit_state_sb, transit_state_mb,
transit_state_bkref, get_subexp, get_subexp_sub, check_arrival,
check_arrival_add_next_nodes, expand_bkref_cache, check_node_accept):
Remove dfa parameter. Get dfa from mctx. Adjust callers.
(re_search_internal): Initialize mctx.dfa.
* posix/regex_internal.c (re_node_set_insert): Remove unused variables.
* posix/regex_internal.h (re_dfa_t): Add syntax field.
* posix/regcomp.c (parse): Initialize dfa->syntax.
* posix/regexec.c (acquire_init_state_context,
prune_impossible_nodes, check_matching, check_halt_state_context,
proceed_next_node, sift_states_iter_mb, sift_states_backward,
update_cur_sifted_state, sift_states_bkref, transit_state,
transit_state_sb, transit_state_mb, transit_state_bkref,
get_subexp, get_subexp_sub, check_arrival, expand_bkref_cache,
build_trtable): Remove preg argument, add dfa argument instead
and remove dfa = preg->buffer initialization in the body.
Adjust all callers.
(check_node_accept_bytes, group_nodes_into_DFAstates,
check_node_accept): Likewise. Use dfa->syntax instead of
(check_arrival_add_next_nodes): Remove preg argument.
* posix/regex_internal.h (re_match_context_t): Make input
re_string_t instead of a pointer to it.
* posix/regex_internal.c (re_string_construct_common): Don't clear
pstr here...
(re_string_construct): ... but only here.
* posix/regexec.c (match_ctx_init): Remove input argument. Don't
initialize fields to zero.
(re_search_internal): Move input into mctx.input.
(acquire_init_state_context, check_matching,
check_halt_state_context, proceed_next_node,
clean_state_log_if_needed, sift_states_bkref, sift_states_iter_mb,
transit_state, transit_state_sb, transit_state_mb,
transit_state_bkref, get_subexp, check_arrival,
check_arrival_add_next_nodes, check_node_accept, extend_buffers):
Change mctx->input into &mctx->input and mctx->input->field into
2004-01-02 Jakub Jelinek <>
Paolo Bonzini <>
* posix/regex_internal.h (re_const_bitset_ptr_t): New type.
(re_string_t): Add newline_anchor, word_char and word_ops_used fields.
(re_dfa_t): Change word_char type to bitset. Add word_ops_used field.
(re_string_context_at, re_string_reconstruct): Remove last argument.
* posix/regex_internal.c (re_string_allocate): Initialize
pstr->word_char and pstr->word_ops_used.
(re_string_context_at): Remove newline_anchor argument.
Use input->newline_anchor instead, swap && conditions.
Only use IS_WIDE_WORD_CHAR if input->word_ops_used != 0.
Use input->word_char bitmap instead of IS_WORD_CHAR.
(re_string_reconstruct): Likewise.
Adjust re_string_context_at caller.
* posix/regexec.c (acquire_init_state_context,
check_halt_state_context, transit_state, transit_state_sb,
transit_state_mb, transit_state_bkref, check_arrival,
check_node_accept): Adjust re_string_context_at and
re_string_reconstruct callers.
(re_search_internal): Likewise. Set input.newline_anchor.
(build_trtable): Use dfa->word_char bitmap instead of IS_WORD_CHAR.
* posix/regcomp.c (init_word_char): Change return type to void.
Set dfa->word_ops_used.
(free_dfa_content): Don't free dfa->word_char.
(parse_expression): Remove error handling for init_word_char.
2004-01-01 Paolo Bonzini <>
* posix/regex_internal.h (re_dfastate_t): Fix size of the CONTEXT
* posix/regex_internal.c (re_node_set_insert): Rewrite.
2004-01-01 Ulrich Drepper <>
* posix/getconf.c: Update copyright year.
* nss/getent.c: Likewise.
* nscd/nscd_nischeck.c: Likewise.
* iconv/iconvconfig.c: Likewise.
* iconv/iconv_prog.c: Likewise.
* elf/ldconfig.c: Likewise.
* catgets/gencat.c: Likewise.
* csu/version.c: Likewise.
* elf/ Likewise.
* elf/sprof.c (print_version): Likewise.
* locale/programs/locale.c: Likewise.
* locale/programs/localedef.c: Likewise.
* nscd/nscd.c (print_version): Likewise.
* debug/ Likewise.
* malloc/ Likewise.
* malloc/ Likewise.
2004-01-01 Petter Reinholdtsen <>
* stdlib/strfmon.c: Make formatting of left-justified currency
values match the the POSIX standard. When using format string
"[%-14#5.4n]" to print -123.45, the result should be
"[-$ 123.4500 ]", not "[-$123.4500 ]".
2004-01-01 Andreas Jaeger <>
* resolv/Makefile (generated): New.
2003-12-31 Joseph S. Myers <>
2003-12-30 Paul Eggert <>
* time/mktime.c: (my_mktime_localtime_r):
Remove. All uses changed to __localtime_r.
(__localtime_r) [!defined _LIBC]: New macro. Include "time_r.h" to
get its implementation.
Fix compile-command to allow for TIME_R_POSIX.
* time/strftime.c (my_strftime_gmtime_r, my_strftime_localtime_r):
Remove. All uses changed to __localtime_r and __gmtime_r.
(__gmtime_r, __localtime_r) [!HAVE_TM_GMTOFF]: New macros.
Include "time_r.h" to get their implementations.
* time/timegm.c: Allow use in GNU applications outside glibc.
[defined HAVE_CONFIG_H]: Include <config.h>.
[!defined _LIBC]: Include "timegm.h", <time_r.h>.
Define __gmtime_r, and declare __mktime_internal.
(timegm): Define via a prototype, since we can safely assume C89 now.
* time/mktime.c (check_result): Use less-confusing report format.
"long" -> "long int", as per usual GNU style.
(main): Likewise.
Don't loop if the iteration overflows time_t.
Allow a negative step in the iteration.
* time/mktime.c: Assume freestanding C89 or better.
(HAVE_LIMITS_H, STDC_HEADERS) [defined _LIBC]: Remove;
assume they're 1.
(__P): Remove; not used.
(CHAR_BIT, INT_MIN, INT_MAX): Remove; <limits.h> defines them.
(mktime, not_equal_tm, print_tm, check_result, main): Use prototypes.
Prototypes use const * where appropriate.
(main) [DEBUG]: Fix typo in testing code uncovered by above changes,
which caused the testing code to dump core on some hosts.
2003-12-31 Ulrich Drepper <>
* locale/setlocale.c (setlocale): Avoid duplicating locale names
if we can reuse old strings.
* inet/rcmd.c: Provide better error message in case of unknown
host. Remove USE_IN_LIBIO.
* nscd/nscd.init: Updated version, more conforming with current
init file standards.
* nscd/nscd-client.h (_PATH_NSCDPID): Move the file into
/var/run/nscd directory.
* test-skeleton.c (timeout_handler): Fix error message.
* elf/dl-dst.h (DL_DST_REQUIRED): Avoid the complex operations if
CNT == 0.
2003-12-30 Jakub Jelinek <>
* posix/regexec.c (get_subexp): Only set bkref_str after the first
loop, use buf + bkref_str_off in the loop instead.
* posix/bug-regex11.c (tests): Add 3 new tests.
* posix/regexec.c (clean_state_log_if_need): Rename to...
(clean_state_log_if_needed): ...this.
(transit_state_mb, get_subexp_sub): Adjust callers.
* sunrpc/pmap_clnt.c (pmap_set): Do CLNT_DESTROY even if CLNT_CALL
failed. Reported by Steve Grubb.
2003-12-29 Ulrich Drepper <>
* elf/elf.h: Add a few definitions from Solaris 9.
2003-12-29 Andreas Schwab <>
* stdio-common/Makefile (CFLAGS-errlist.c, CFLAGS-siglist.c): Add
$(fno_unit_at_a_time) to avoid reordering assembler output.
2003-12-29 Jakub Jelinek <>
* posix/regexec.c (re_copy_regs): Revert comment change.
Avoid memory leak if realloc fails.
(proceed_next_node): Return -2 if re_node_set_insert fails.
Return -2 if push_fail_stack fails.
(push_fail_stack): Change fs->alloc only after successful realloc.
(pop_fail_stack): Formatting.
(set_regs): If proceed_next_node returns -2, free eps_via_nodes and fs.
(check_arrival_add_next_nodes): Merge identical statements
from if branches.
* signal/Makefile (tests): Add tst-raise.
* signal/tst-raise.c: New test.
2003-12-28 Ulrich Drepper <>
* posix/regcomp.c (mark_opt_subexp_iter): Declare IDX as int.
* posix/regexec.c (re_copy_regs): Fix testing for failed allocation.
(push_fail_stack): Add missing check for failed memory allocation.
* libio/libio.h: Use __builtin_expect in _IO_getc_unlocked,
_IO_peekc_unlocked, _IO_putc_unlocked, _IO_getwc_unlocked, and
2003-12-28 Andreas Jaeger <>
* sysdeps/ieee754/dbl-64/e_j0.c (__ieee754_y0): Raise only
overflow for 0 as argument. Raise Invalid exception for negative args.
* sysdeps/ieee754/dbl-64/e_jn.c (__ieee754_yn): Likewise.
* sysdeps/ieee754/dbl-64/e_j1.c (__ieee754_y0): Likewise.
* sysdeps/ieee754/ldb-128/e_jnl.c (__ieee754_ynl): Likewise.
* sysdeps/ieee754/ldb-128/e_j0l.c (__ieee754_y0l): Likewise.
* sysdeps/ieee754/ldb-128/e_j1l.c (__ieee754_y1l): Likewise.
* sysdeps/ieee754/ldb-96/e_jnl.c (__ieee754_ynl): Likewise.
* sysdeps/ieee754/ldb-96/e_j0l.c (__ieee754_y0l): Likewise.
* sysdeps/ieee754/ldb-96/e_j1l.c (__ieee754_y1l): Likewise.
* sysdeps/ieee754/flt-32/e_jnf.c (__ieee754_ynf): Likewise.
* sysdeps/ieee754/flt-32/e_j0f.c (__ieee754_y0f): Likewise.
* sysdeps/ieee754/flt-32/e_j1f.c (__ieee754_y1f): Likewise.
* math/ (yn_test): Expect invalid exception for
negative arguments.
(y0_test): Likewise.
(y1_test): Likewise.
* sysdeps/ieee754/dbl-64/e_exp.c (__ieee754_exp): Do not raise
execptions for exp(NaN).
2003-12-23 Paolo Bonzini <>
* posix/regex_internal.c (re_dfa_add_node): Initialize opt_subexp.
* posix/regex_internal.h (re_token_type_t): Put OP_DUP_PLUS
among the tokens, rather than among the epsilon-transiting nodes.
(re_token_t): Add the opt_subexp flag.
* posix/regcomp.c (optimize_utf8, calc_first,
calc_next, calc_epsdest): Don't consider OP_DUP_PLUS.
(mark_opt_subexp, mark_opt_subexp_iter): New functions.
(parse_dup_op): Mostly rewritten, lowering OP_DUP_PLUS to
OP_DUP_ASTERISK and marking optional subexpressions
as such using mark_opt_subexp.
* posix/regexec.c (set_regs): Initialize PREV_INDEX_MATCH
and pass it to update_regs.
(update_regs): Use the PREV_INDEX_MATCH parameter, together
with the opt_subexp flag, in order to discard a final empty
match of a repeated subexpression.
* posix/BOOST.tests: Adjust test vectors.
* posix/PCRE.tests: Likewise.
* posix/rxspencer/tests: Likewise.
2000-05-22 Jakub Jelinek <>
* sysdeps/i386/fpu/bits/mathinline.h (__expm1_code): Avoid using ?:
with omitted middle operand.
2003-12-22 Jakub Jelinek <>
* posix/regcomp.c: Remove C99-ism.
* posix/tst-rxspencer.c: Likewise.
Based on a patch by Alex Davis <>.
2003-12-17 Paolo Bonzini <>
* posix/regex_internal.h [!_LIBC] (internal_function): Define.
(re_string_allocate, re_string_construct, re_string_reconstruct,
re_string_realloc_buffers, build_wcs_buffer,
build_wcs_upper_buffer, build_upper_buffer,
re_string_translate_buffer, re_string_destruct,
re_string_elem_size_at, re_string_char_size_at,
re_string_wchar_at, re_string_context_at,
re_node_set_alloc, re_node_set_init_1
re_node_set_init_2, re_node_set_init_copy,
re_node_set_add_intersect, re_node_set_init_union,
re_node_set_merge, re_node_set_insert
re_node_set_compare, re_node_set_contains
re_node_set_remove_at, re_dfa_add_node,
re_acquire_state, re_acquire_state_context,
free_state): Add internal_function to declaration.
* posix/regexec.c (match_ctx_init, match_ctx_clean,
match_ctx_free, match_ctx_free_subtops,
match_ctx_add_entry, search_cur_bkref_entry,
match_ctx_clear_flag, match_ctx_add_subtop,
match_ctx_add_sublast, sift_ctx_init,
re_search_internal, re_search_2_stub, re_search_stub,
re_copy_regs, acquire_init_state_context,
prune_impossible_nodes, check_matching,
check_halt_node_context, check_halt_state_context
update_regs, proceed_next_node, push_fail_stack,
pop_fail_stack, set_regs, free_fail_stack_return,
sift_states_iter_mb, sift_states_backward
update_cur_sifted_state, add_epsilon_src_nodes,
sub_epsilon_src_nodes, check_dst_limits,
check_dst_limits_calc_pos, check_subexp_limits,
sift_states_bkref, clean_state_log_if_need,
merge_state_array, transit_state,
check_subexp_matching_top, transit_state_sb,
transit_state_mb, transit_state_bkref,
get_subexp, get_subexp_sub, find_subexp_node,
check_arrival, check_arrival_add_next_nodes,
find_collation_sequence_value, check_arrival_expand_ecl,
check_arrival_expand_ecl_sub, expand_bkref_cache,
build_trtable, check_node_accept_bytes, extend_buffers,
group_nodes_into_DFAstates, check_node_accept): Likewise.
* posix/regex_internal.c (re_string_construct_common,
re_string_skip_chars, create_newstate_common,
register_state, create_ci_newstate, create_cd_newstate,
calc_state_hash): Likewise.
(re_string_peek_byte_case, re_fetch_byte_case): Change
declaration from ANSI to K&R.
2003-12-16 Paolo Bonzini <>
* posix/regexec.c (build_trtable): Don't allocate the trtable
until state->word_trtable is known. Don't hardcode UINT_BITS
iterations on each bitset item.
2003-12-22 Maciej W. Rozycki <>
* sysdeps/unix/sysv/linux/ia64/dl-static.c (_dl_static_init):
Initialize REF before passing it to _dl_lookup_symbol.
2003-12-21 Roland McGrath <>
* sysdeps/mach/hurd/dl-sysdep.c (_exit): Define with attribute_hidden.
2003-12-21 Jakub Jelinek <>
* posix/regcomp.c (duplicate_node, duplicate_node_closure): Revert
2003-11-24 changes.
* posix/regexec.c (group_nodes_into_DFAstates): For CHARACTER with
NEXT_{,NOT}WORD_CONSTRAINT check word_char bit.
* posix/bug-regex19.c (tests): Add new tests.
* posix/regexec.c (check_dst_limits_calc_pos): Fix formatting.
* posix/regcomp.c (parse_dup_op): Return NULL if dup_elem is NULL,
after checking syntax. Optimize.
(calc_first): Fix comment.
* posix/bug-regex13.c (tests): Add new tests.
2003-12-21 Roland McGrath <>
* manual/arith.texi (Parsing of Integers): Typo fix.
2003-12-20 Roland McGrath <>
* sysdeps/generic/ifreq.c (__ifreq) [_HAVE_SA_LEN]: Fix typo:
add missing dereference of IFREQS before counting loop.
2003-12-21 Andreas Schwab <>
* sysdeps/m68k/m68020/bits/atomic.h: Avoid matching memory
2003-12-20 Ulrich Drepper <>
* elf/rtld.c (dl_main): Optimize order of subexpressions in if().
2003-12-18 Ulrich Drepper <>
* stdio-common/printf_fp.c: Add support to use alternative decimal
* stdio-common/vfprintf.c (vfprintf): Pass use_outdigits flags to
__printf_fp. Patch by Hamed Malek <>.
2003-12-18 Carlos O'Donell <>
* sysdeps/unix/sysv/linux/hppa/clone.S (__clone) [PIC]: Save PIC,
reload PIC if we need to call __syscall_error, cleanup asm.
2003-12-17 Carlos O'Donell <>
* sysdeps/hppa/fpu/fclrexcpt.c (feclearexcept): Right shift
FE_ALL_EXCEPT before complimenting.
* sysdeps/hppa/fpu/fegetenv.c (fegetenv): Use asm 'ma,' completer,
and gcc '+r' constraint.
* sysdeps/hppa/fpu/feholdexcpt.c (feholdexcept): Likewise.
* sysdeps/hppa/fpu/fesetenv.c (fesetenv): Likewise.
* sysdeps/hppa/fpu/feupdateenv.c (feupdateenv): Read raised
exception bits, OR with envp, pass to fesetenv.
* sysdeps/hppa/fpu/fraiseexcpt.c (feraiseexcept): Add delayed
exception flushing, FE_UNDERFLOW is DBL_MIN/3.0, FE_INEXACT is
triggered by M_PI/69.69 converted to single precision.
* sysdeps/hppa/fpu/fsetexcptflg.c (fesetexceptflag): Set enable
bits not raised exception bits.
* sysdeps/hppa/Makefile: Add dl-symaddr and dl-fptr to the
correct build strings.
* sysdeps/hppa/dl-fptr.h: New file.
* sysdeps/hppa/dl-fptr.c: Removed.
* sysdeps/hppa/dl-symaddr.c (_dl_symbol_address): Use _dl_make_ftpr,
remove const qualifier for map.
(_dl_function_address): Removed.
* sysdeps/hppa/dl-lookupcfg.h: DL_LOOKUP_ADDRESS must clear
DL_DT_FINI_ADDRESS use the previous two macros.
2003-12-17 Jakub Jelinek <>
* malloc/mtrace.c (tr_old_memalign_hook): New variable.
(tr_memalignhook): New function.
(mtrace): Register tr_memalignhook.
(muntrace): Deregister tr_memalignhook.
* malloc/malloc.c (__posix_memalign): If __memalign_hook != NULL,
call it directly instead of memalign_internal.
2003-12-17 Ulrich Drepper <>
* misc/mntent_r.c: Change encoding to match recently changed decoder.
Patch by Alexander Achenbach <>.
2003-12-16 Steven Munroe <>
* sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: Correct definition of
2003-12-16 Steven Munroe <>
* sysdeps/unix/sysv/linux/powerpc/sys/procfs.h [!__PPC64_ELF_H]: Extend
conditional to include typedef elf_vrreg_t.
2003-12-17 Paolo Bonzini <>
* posix/regexec.c (re_search_internal): Limit search to the
beginning of the buffer if the initial states are empty for
contexts that do not include CONTEXT_BEGBUF or, if
!preg->newline_anchor, that do not include any one of
2003-12-17 Andreas Jaeger <>
* sysdeps/generic/system.c (__libc_system): Fix typo, reported by
Kevin Pedretti <>.
2003-12-17 Ulrich Drepper <>
* elf/rtld.c: Don't use strong_alias to define _rtld_local. This
removes the visibility attributes which might be defined earlier
for some gcc versions. Instead spell out what strong_alias does
plus the visibility.
2003-12-16 Petter Reinholdtsen <>
* posix/regex_internal.h: Make sure the regex code compile
with non-GCC compilers by hiding attributes.
2003-12-16 Jakub Jelinek <>
Paolo Bonzini <>
* posix/regexec.c (group_nodes_into_DFAstates): Never produce
dests_ch items that are empty.
2003-12-14 Paolo Bonzini <>
* posix/regexec.c (check_arrival): Remove duplicate test.
2003-12-15 Ulrich Drepper <>
* posix/regcomp.c: Make !RE_ENABLE_I18N work again.
* posix/regex_internal.c: Likewise.
* posix/regexec.c: Likewise.
Patch by Paolo Bonzini.
2003-12-14 Paolo Bonzini <>
* posix/regex_internal.c (re_acquire_state_context):
Compare the node sets after all the other comparisons.
2003-12-13 Paolo Bonzini <>
* posix/regexec.c (find_subexp_node, check_arrival,
check_arrival_add_next_nodes, check_arrival_expand_ecl,
check_arrival_expand_ecl_sub, expand_bkref_cache):
Rename the FL_OPEN parameter to TYPE, which is either
OP_OPEN_SUBEXP or OP_CLOSE_SUBEXP. Callers adjusted.
2003-12-12 Andreas Jaeger <>
* sysdeps/unix/sysv/linux/x86_64/syscall.S: Pass also 6th argument
to syscall.
2003-12-11 Ulrich Drepper <>
* sysdeps/unix/sysv/linux/kernel-features.h: Remove __ASSUME_VSYSCALL.
There might always be processes which have no vDSO.
* sysdeps/generic/dl-sysdep.c: Remove __ASSUME_VSYSCALL uses.
* sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
2003-12-11 Carlos O'Donell <>
* sysdeps/generic/dl-fptr.c (COMPARE_AND_SWAP): Pass new and old
in the right order.
2003-12-01 Jes Sorensen <>
* rt/tst-clock.c (do_test): Print message when skipping
* sysdeps/unix/sysv/linux/ia64/clock_getcpuclockid.c: New file.
Provide CLOCK_PROCESS_CPUTIME_ID only if /proc/sal/itc_drift is 0.
2003-12-02 David Mosberger <>
* sysdeps/ia64/elf/initfini.c: Add unwind info.
* sysdeps/ia64/dl-machine.h (elf_machine_matches_host): Mark with
attribute "unused".
(elf_machine_dynamic): Mark with attributes "unused" and "const".
(elf_machine_runtime_setup): Likewise.
* sysdeps/generic/dl-fptr.c (make_fptr_table): Mark with
attribute "always_inline".
* sysdeps/ia64/dl-machine.h (__ia64_init_bootstrap_fdesc_table):
* Check whether compiler has libunwind support.
* (have-cc-with-libunwind): New variable.
* Makeconfig (gnulib): If have-cc-with-libunwind is "yes", also
mention -lunwind.
2003-11-12 David Mosberger <>
* sysdeps/unix/sysv/linux/ia64/sysdep.h: Define DO_CALL_VIA_BREAK.
Redefine DO_CALL to use vdso if supported, otherwise DO_CALL_VIA_BREAK.
* sysdeps/unix/sysv/linux/ia64/vfork.S: Use DO_CALL_VIA_BREAK()
instead of DO_CALL().
* sysdeps/unix/sysv/linux/ia64/clone2.S: Use break directly instead
of DO_CALL().
* sysdeps/unix/sysv/linux/ia64/brk.S (__curbrk): Restructure it
to take advantage of DO_CALL() macro.
* sysdeps/unix/sysv/linux/ia64/setcontext.S: Likewise.
* sysdeps/unix/sysv/linux/ia64/getcontext.S: Likewise.
* elf/rtld.c (dl_main): Restrict dl_sysinfo_dso check to first
program header. On ia64, the check failed previously because
there are two program headers.
2003-12-10 Andreas Jaeger <>
Ruediger Oertel <>
* sysdeps/alpha/fpu/e_sqrt.c: Mark sqrt_data as used.
2003-12-07 Ulrich Drepper <>
* sysdeps/i386/fpu/s_nexttowardf.c: Construct overflow value correctly.
* sysdeps/i386/fpu/s_nexttoward.c: Likewise.
* sysdeps/ieee754/ldbl-128/s_nexttoward.c: Likewise.
* sysdeps/ieee754/ldbl-96/s_nexttoward.c: Likewise.
* sysdeps/generic/s_nexttowardf.c: Likewise.
* math/Makefile (tests): Add bug-nexttoward.
* math/bug-nexttoward.c: New file.
* sysdeps/generic/s_nextafter.c: Make sure overflow exception is set.
* sysdeps/ieee754/flt-32/s_nextafterf.c: Likewise.
* math/bug-nextafter.c (main): Add tests for overflow and negative
2003-12-06 Ulrich Drepper <>
* math/Makefile (tests): Add bug-nextafter.
* math/bug-nextafter.c: New file.
* sysdeps/generic/s_nextafter.c: Construct overflow value correctly.
* sysdeps/ieee754/flt-32/s_nextafterf.c: Likewise.
* math/ (nextafter_test): Add test for overflow after
+/-FLT_MAX etc.
2003-12-04 Steven Munroe <>
* sysdeps/powerpc/fpu/fgetexcptflg.c (__fegetexceptflag): Add masking
of fenv.
* sysdeps/powerpc/nofpu/fgetexcptflg.c (__fegetexceptflag): Likewise.
2003-12-05 Martin Schwidefsky <>
* sysdeps/s390/s390-32/elf/setjmp.S (setjmp, __setjmp): Add END
* sysdeps/s390/s390-64/elf/setjmp.S (setjmp, __setjmp): Likewise.
* sysdeps/s390/s390-32/sysdep.h (ENTRY): Add cfi_startproc directive.
(END): Add cfi_endproc directive.
* sysdeps/s390/s390-64/sysdep.h (ENTRY, END): Likewise.
* sysdeps/unix/sysv/linux/s390/s390-32/socket.S (__socket): Remove
cfi_startproc and cfi_endproc directive.
* sysdeps/unix/sysv/linux/s390/s390-64/socket.S (__socket): Likewise.
* sysdeps/s390/s390-32/addmul_1.S (__mpn_addmul_1): Add CFI directives.
* sysdeps/s390/s390-32/add_n.S (__mpn_add_n): Likewise.
* sysdeps/s390/s390-64/add_n.S (__mpn_add_n): Likewise.
* sysdeps/s390/s390-32/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
* sysdeps/s390/s390-64/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
* sysdeps/s390/s390-32/mul_1.S (__mpn_mul_1): Likewise.
* sysdeps/s390/s390-32/sub_n.S (__mpn_sub_n): Likewise.
* sysdeps/s390/s390-64/sub_n.S (__mpn_sub_n): Likewise.
* sysdeps/unix/sysv/linux/s390/s390-32/mmap64.S (__mmap64): Likewise.
* sysdeps/unix/sysv/linux/s390/s390-32/mmap.S (__mmap): Likewise.
* sysdeps/unix/sysv/linux/s390/s390-64/mmap.S (__mmap): Likewise.
* sysdeps/unix/sysv/linux/s390/s390-32/syscall.S (syscall): Likewise.
* sysdeps/unix/sysv/linux/s390/s390-64/syscall.S (syscall): Likewise.
* sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S (__syscall_error):
* sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S (__syscall_error):
* sysdeps/unix/sysv/linux/s390/s390-32/clone.S (__clone): Add CFI
directives. Move thread_start out of ENTRY/PSEUDO_END block to
make backchain terminate.
* sysdeps/unix/sysv/linux/s390/s390-64/clone.S (__clone): Likewise.
* sysdeps/s390/s390-32/backtrace.c (trace_arg): New structure.
(unwind_backtrace, unwind_getip): New variables.
(init, __backchain_backtrace, backtrace_helper): New functions.
(__backtrace): Use unwind info for backtrace instead of backchain
walking if the unwind functions can be found.
* sysdeps/s390/s390-64/backtrace.c: Likewise.
* sysdeps/unix/sysv/linux/s390/s390-32/posix_fadvise64.c: New file.
* sysdeps/unix/sysv/linux/s390/sys/procfs.h (ELF_NGREG32): New #define.
(elf_greg_t32, elf_gregset_t32, elf_fpregset_t32): New types.
(elf_prstatus32, elf_prpsinfo32): New structures.
(prgregset32_t, prfpregset32_t, prstatus32_t, prpsinfo32_t): New types.
* scripts/data/ New file.
* scripts/data/ New file.
2003-11-30 Petter Reinholdtsen <>
* stdlib/strfmon.c: Correct formatting of international currency
values. The international currency formatting should prefer the
int_* values if they are set for a locale, and use the domestic
values if the int_* values are unset.
2003-12-03 Jakub Jelinek <>
* posix/Makefile (distribute): Add BOOST.tests.
(tests): Add tst-boost, depend on tst-boost-mem.
(generated): Add tst-boost-mem and tst-boost.mtrace.
(tst-boost-ARGS, tst-boost-ENV): Set.
($(objpfx)tst-boost-mem): New.
* posix/tst-boost.c: New test.
* posix/BOOST.tests: New file.
* posix/Makefile (distribute): Add PCRE.tests.
(tests): Add tst-pcre, depend on tst-pcre-mem.
(generated): Add tst-pcre-mem and tst-pcre.mtrace.
(tst-pcre-ARGS, tst-pcre-ENV): Set.
($(objpfx)tst-pcre-mem): New.
* posix/tst-pcre.c: New test.
* posix/PCRE.tests: New file.
2003-12-02 Jakub Jelinek <>
* intl/locale.alias: Use nb_NO instead of no_NO for bokm.l.
* sysdeps/powerpc/fpu/libm-test-ulps: Regenerated.
* sysdeps/s390/fpu/libm-test-ulps: Regenerated.
2003-12-03 Ulrich Drepper <>
* locale/programs/locarchive.c (enlarge_archive): Print size info
only in verbose mode.
* locale/iso-3166.def: Three letter code of Romania changed.
2003-12-02 Roland McGrath <>
* scripts/config.sub: Update from master, timestamp='2003-10-20'.
* scripts/config.guess: Update from master, timestamp='2003-10-20'.
2003-11-30 Andreas Jaeger <>
* (fno-unit-at-a-time): Define.
* Add test for -fno-unit-at-a-time.
Fix text for -fpie.
* csu/Makefile (CFLAGS-initfini.s): Add $(fno_unit_at_a_time).
* locale/Makefile (CFLAGS-loadlocale.c): Likewise.
2003-12-01 Automatic
* version.h (VERSION): Bump to 2.3.3.
2003-11-30 Andreas Jaeger <>
* stdio-common/vfprintf.c: Do not inline buffered_vfprintf to
decrease stack usage.
2003-11-30 Andreas Schwab <>
* sysdeps/unix/sysv/linux/m68k/sysdep.h (PSEUDO_ERRVAL)
2003-11-29 Ulrich Drepper <>
* misc/mntent_r.c (decode_name): Be compatible with util-linux and
recognize \134 as well.
2003-10-09 H.J. Lu <>
* sysdeps/ia64/fpu/fraiseexcpt.c: Don't include <asm/fpu.h>.
2003-10-08 H.J. Lu <>
* sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h: Don't include
(struct ia64_fpreg): New definition.
* sysdeps/unix/sysv/linux/ia64/sys/procfs.h: Don't include
(ELF_NGREG): New #define.
(ELF_NFPREG): Likewise.
(elf_greg_t): New type.
(elf_gregset_t): Likewise.