* sysdeps/unix/sysv/linux/alpha/select.S: Fix unwind. Propagate ...
[glibc.git] / ChangeLog
blob82e3246c33285c6bdd0ebc07836e7e286bd6c285
1 2004-03-12  Richard Henderson  <rth@redhat.com>
3         * sysdeps/unix/sysv/linux/alpha/select.S: Fix unwind.  Propagate
4         oldvalue from CENABLE to CDISABLE.
6 2004-03-12  Ulrich Drepper  <drepper@redhat.com>
8         * sysdeps/unix/sysv/linux/x86_64/sysconf.c: New file.
10         * sysdeps/unix/sysv/linux/bits/local_lim.h: Define HOST_NAME_MAX.
12         * posix/getconf.c (vars): Add _SC_ values for cache information.
13         * sysdeps/generic/bits/confname.h: Add _SC_* values for cache
14         information.
15         * sysdeps/unix/sysv/linux/sysconf.c (__sysconf): Reorganize to
16         allow yet another sysconf function to include the one in this file.
17         * sysdeps/unix/sysv/linux/i386/sysconf.c: New file.
18         * sysdeps/generic/sysconf.c: Add default handling for cache line info.
20 2004-03-11  Ulrich Drepper  <drepper@redhat.com>
22         * sysdeps/posix/sysconf.c (__sysconf): Add missing support for
23         some _SC_* values.
25 2004-03-10  Chris Heath  <chris@heathens.co.nz>
27         * iconvdata/gconv.map: Add gconv_end (fixes memory leak).
29 2004-03-11  Jakub Jelinek  <jakub@redhat.com>
31         * sysdeps/powerpc/powerpc32/__longjmp.S (JB_SIZE): Undefine before
32         including __longjmp-common.S again.
33         * sysdeps/powerpc/powerpc64/__longjmp.S (JB_SIZE): Likewise.
34         * sysdeps/powerpc/powerpc32/setjmp.S (JB_SIZE): Undefine before
35         including setjmp-common.S again.
36         * sysdeps/powerpc/powerpc64/setjmp.S (JB_SIZE): Likewise.
37         * sysdeps/powerpc/novmxsetjmp.h (__novmx__longjmp): Fix type of
38         first argument in the prototype.
39         * sysdeps/powerpc/longjmp.c (__vmx__longjmp, __vmx__libc_longjmp):
40         Remove bogus semicolons.
42         * sysdeps/s390/dl-tls.h: Only add __tls_get_offset assembly if
43         IS_IN_rtld.
44         (__TLS_GET_ADDR): Use __tls_get_offset, not __tls_get_addr.
46 2004-03-11  Ulrich Drepper  <drepper@redhat.com>
48         * resolv/ns_ttl.c: Don't add ns_parse_ttl for libresolv.so.
50 2004-03-10  Ulrich Drepper  <drepper@redhat.com>
52         * sysdeps/generic/errno.c: Include <dl-sysdep.h>.  Use
53         RTLD_PRIVATE_ERRNO to decide whether errno compat symbols are needed.
55         * elf/dl-sym.c: Unify _dl_sym and _dl_vsym code and make the entry
56         points wrappers around the unified code.
58 2004-03-11  Richard Henderson  <rth@redhat.com>
60         * sysdeps/unix/sysv/linux/alpha/kernel_stat.h (kernel_stat64): New.
61         (glibc21_stat): New.
62         * sysdeps/unix/sysv/linux/alpha/fxstat.c: New file.
63         * sysdeps/unix/sysv/linux/alpha/lxstat.c: New file.
64         * sysdeps/unix/sysv/linux/alpha/xstat.c: New file.
65         * sysdeps/unix/sysv/linux/alpha/xstatconv.c (__xstat_conv): Add
66         code for _STAT_VER_GLIBC2_3_4.
67         (__libc_missing_axp_stat64): New.
68         * sysdeps/unix/sysv/linux/alpha/xstatconv.h: New file.
69         * sysdeps/unix/sysv/linux/alpha/bits/stat.h (__ST_TIME): New.
70         (_STAT_VER_GLIBC2_3_4, _STAT_VER_KERNEL64): New.
71         (struct stat, struct stat64): Update to new format.
72         (_STATBUF_ST_NSEC): New.
74 2004-03-11  Jakub Jelinek  <jakub@redhat.com>
76         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S
77         (__novec_swapcontext): Branch to novec_* labels.
79 2004-03-10  Ulrich Drepper  <drepper@redhat.com>
81         * posix/getopt.c (_): Don't define here for glibc.
83 2004-03-10  Jakub Jelinek  <jakub@redhat.com>
85         * include/libc-symbols.h [__ASSEMBLY__] (compat_text_section,
86         compat_data_section): Define.
87         * sysdeps/unix/sysv/linux/alpha/adjtime.c (ADJTIME): Add
88         attribute_compat_text_section.
89         * sysdeps/unix/sysv/linux/alpha/wordexp.c (__old_wordexp): Likewise.
90         * sysdeps/unix/sysv/linux/alpha/oldglob.c (__old_glob,
91         __old_globfree): Likewise.
92         * sysdeps/unix/sysv/linux/s390/s390-32/chown.c (__chown_is_lchown):
93         Likewise.
94         * sysdeps/unix/sysv/linux/s390/s390-32/posix_fadvise64.c
95         (__posix_fadvise64_l32): Likewise.
96         * sysdeps/unix/sysv/linux/msgctl.c (__old_msgctl): Likewise.
97         * sysdeps/unix/sysv/linux/powerpc/powerpc32/posix_fadvise64.c
98         (__posix_fadvise64_l32): Likewise.
99         * sysdeps/unix/sysv/linux/sparc/sparc32/semctl.c (__old_semctl):
100         Likewise.
101         * sysdeps/unix/sysv/linux/semctl.c (__old_semctl): Likewise.
102         * sysdeps/unix/sysv/linux/posix_fadvise64.c (__posix_fadvise64_l32):
103         Likewise.
104         * sysdeps/unix/sysv/linux/shmctl.c (__old_shmctl): Likewise.
105         * hurd/compat-20.c (_hurd_proc_init_compat_20): Likewise.
106         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S
107         (__swapcontext, __novec_swapcontext): Use END instead of PSEUDO_END.
108         (__novec_swapcontext, __swapcontext_stub): Add compat_text_section.
109         * sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S
110         (__makecontext_stub): Likewise.
111         (__novec_makecontext): Likewise.  Fix name in END () to match
112         function name.
113         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S
114         (__setcontext): Use END instead of PSEUDO_END.
115         (__novec_setcontext): Add compat_text_section.  Use END instead of
116         PSEUDO_END, fix the name in END () to match function name.
117         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S
118         (__getcontext, __novec_getcontext): Use END instead of PSEUDO_END.
119         (__novec_getcontext, __getcontext_stub): Add compat_text_section.
121 2004-03-10  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
123         * sysdeps/sh/dl-machine.h: Don't use GL macro if not appropriate.
124         (COPY_UNALIGNED_WORD): Remove cast used as lvalue.
126 2004-03-10  Ulrich Drepper  <drepper@redhat.com>
128         * sysdeps/i386/dl-procinfo.h (HWCAP_IMPORTANT): Remove mmx, add sse2.
130 2004-03-10  Richard Henderson  <rth@redhat.com>
132         * sysdeps/generic/errno.c: Disable versioning for rtld.
134         * sysdeps/generic/Makefile (elf/shared): Add unwind-pe.
135         * sysdeps/generic/unwind-pe.c: New file.
136         * sysdeps/generic/unwind-pe.h: Only prototypes for _LIBC without
137         _LIBC_DEFINITIONS.
139 2004-03-10  Ulrich Drepper  <drepper@redhat.com>
141         * include/libc-symbols.h: Define attribute_compat_text_section and
142         attribute_compat_data_section.
143         * io/ftw.c: Mark compat code with attribute_compat_text_section.
144         * libio/iofopncook.c: Likewise.
145         * libio/oldfileops.c: Likewise.
146         * libio/oldiofclose.c: Likewise.
147         * libio/oldiofdopen.c: Likewise.
148         * libio/oldiofgetpos.c: Likewise.
149         * libio/oldiofgetpos64.c: Likewise.
150         * libio/oldiofopen.c: Likewise.
151         * libio/oldiofsetpos.c: Likewise.
152         * libio/oldiofsetpos64.c: Likewise.
153         * libio/oldiopopen.c: Likewise.
154         * libio/oldpclose.c: Likewise.
155         * libio/oldtmpfile.c: Likewise.
156         * nptl/forward.c: Likewise.
157         * nss/getXXbyYY_r.c: Likewise.
158         * nss/getXXent_r.c: Likewise.
159         * posix/tst-vfork1.c: Likewise.
160         * stdlib/canonicalize.c: Likewise.
161         * stdlib/old_atexit.c: Likewise.
162         * sysdeps/generic/glob.c: Likewise.
163         * sysdeps/posix/posix_fallocate64.c: Likewise.
164         * sysdeps/unix/sysv/linux/i386/alphasort64.c: Likewise.
165         * sysdeps/unix/sysv/linux/i386/chown.c: Likewise.
166         * sysdeps/unix/sysv/linux/i386/glob64.c: Likewise.
167         * sysdeps/unix/sysv/linux/i386/msgctl.c: Likewise.
168         * sysdeps/unix/sysv/linux/i386/oldgetrlimit64.c: Likewise.
169         * sysdeps/unix/sysv/linux/i386/posix_fadvise64.S: Likewise.
170         * sysdeps/unix/sysv/linux/i386/readdir64.c: Likewise.
171         * sysdeps/unix/sysv/linux/i386/readdir64_r.c: Likewise.
172         * sysdeps/unix/sysv/linux/i386/scandir64.c: Likewise.
173         * sysdeps/unix/sysv/linux/i386/semctl.c: Likewise.
174         * sysdeps/unix/sysv/linux/i386/shmctl.c: Likewise.
175         * sysdeps/unix/sysv/linux/i386/versionsort64.c: Likewise.
176         * posix/regexec.c: Likewise.
178         * sysdeps/unix/sysv/linux/i386/syscalls.list: vm86@@GLIBC_2.3.4
179         should be the default symbol. Having none misses the point.
181 2004-03-09  Ulrich Drepper  <drepper@redhat.com>
183         * stdlib/qsort.c (_quicksort): Initialize first stack element [BZ #16].
185 2004-03-05  Jakub Jelinek  <jakub@redhat.com>
187         * posix/regexec.c (regexec): Return with error on unknown eflags.
188         Replace weak_alias with versioned_symbol.
189         (__compat_regexec): New.
190         * posix/Versions (libc): Add regexec@GLIBC_2.3.4.
192 2004-03-09  Richard Henderson  <rth@redhat.com>
194         * math/math.h (isgreater, isgreaterequal, isless, islessequal,
195         islessgreater, isunordered): Use builtins if available.
196         * sysdeps/i386/fpu/bits/mathinline.h: Don't define via builtins.
197         * sysdeps/m68k/fpu/bits/mathinline.h: Likewise.
198         * sysdeps/powerpc/fpu/bits/mathinline.h: Likewise.
199         * sysdeps/sparc/fpu/bits/mathinline.h: Likewise.
200         * sysdeps/x86_64/fpu/bits/mathinline.h: Likewise.
201         * sysdeps/alpha/fpu/bits/mathinline.h (isgreater, isgreaterequal,
202         isless, islessequal, islessgreater): Remove; use default.
203         (isunordered): Convert inputs to double.
205 2004-02-09  Jakub Jelinek  <jakub@redhat.com>
207         * posix/Makefile (tests): Add tst-vfork2.
208         * posix/tst-vfork1.c (do_test): Fix comment.
209         * posix/tst-vfork2.c: New test.
211 2004-03-09  Ulrich Drepper  <drepper@redhat.com>
213         * elf/dl-lookup.c (_dl_lookup_symbol_x): Fix possible NULL pointer
214         derefernce in error message.  Pretty printing.
216         * po/nl.po: Update from translation team.
218 2004-03-08  Andreas Schwab  <schwab@suse.de>
220         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Don't truncate
221         sysinfo pointer value.
223 2004-03-08  Paul Eggert  <eggert@cs.ucla.edu>
225         Merge from gnulib.  We now assume C89 or better.
226         * posix/getopt1.c (const): Remove.
227         * posix/getopt.c (const): Likewise.
228         * posix/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
229         _getopt_long_only_r, main): Use prototypes, not old-style definitions.
230         * posix/getopt.c (exchange, _getopt_initialize, _getopt_internal_r,
231         _getopt_internal, getopt, main): Likewise.
232         * posix/getopt.h (getopt, getopt_long, getopt_long_only): Likewise.
233         * posix/getopt.c [!defined VMS || !HAVE_STRING_H]:
234         Include <string.h> regardless.  No need for <strings.h>.
235         [!defined _LIBC]: Include "gettext.h" rather than rolling it ourselves.
236         (_): Define to gettext always.
237         (my_index): Remove: all uses changed to strchr.
238         (strlen): Remove declaration.
239         * posix/getopt.h (struct option.name): Always const char *.
241 2004-03-08  Marcus Brinkmann  <marcus@gnu.org>
243         * posix/getopt.h (_getopt_internal): Move to ...
244         * posix/getopt_int.h: ... here.  New file.
245         * include/getopt_int.h: New file.
246         * include/getopt.h: Remove libc_hidden_proto for getopt_long
247         and getopt_long_only.
248         * posix/getopt1.c: Include "getopt_int.h".  Remove
249         libc_hidden_def for getopt_long and getopt_long_only.
250         (_getopt_long_r, _getopt_long_only_r): New functions.
251         * posix/getopt.c: Include "getopt_int.h".
252         (__getopt_initialized): Variable removed.
253         (nextchar, ordering, posixly_correct, first_nonopt, last_nonopt):
254         Static variables removed.
255         (nonoption_flags_max_len, nonoption_flags_len) [_LIBC &&
256         USE_NONOPTION_FLAGS]: Static variables removed.
257         (getopt_data): New static variable.
258         (SWAP_FLAGS): Use d->__nonoption_flags_len instead
259         nonoption_flags_len.
260         (exchange): Add new argument D of type struct getopt_data *.
261         Replace optind with d->optind, optarg with d->optarg, opterr with
262         d->opterr, optopt with d->optopt, nextchar with d->__nextchar,
263         first_nonopt with d->__first_nonopt, last_nonopt with
264         d->__last_nonopt, d->ordering with d->__ordering,
265         d->posixly_correct with d->__posixly_correct (which is now an
266         int instead a string, so fix users), nonoption_flags_len
267         with d->__nonoption_flags_len, nonoption_flags_max_len with
268         d->__nonoption_flags_max_len.
269         (_getopt_initialize): Likewise.
270         (_getopt_internal): Rename to ...
271         (_getopt_internal_r): ... this.  Also add new argument D of type
272         struct getopt_data * and use of members of D rather than global or
273         static variables as described for exchange() above.  Add new argument
274         to invocations of _getopt_initialize and exchange.
275         (_getopt_internal): Reimplement in terms of _getopt_internal_r.
276         * argp/argp-parse.c: Include <getopt_int.h>.
277         [_LIBC]: Do not include <bits/libc-lock.h>.
278         [!_LIBC && HAVE_CTHREADS_H]: Do not include <cthreads.h>.
279         [!_LIBC] (_argp_hang): Make static.
280         (getopt_lock, LOCK_GETOPT, UNLOCK_GETOPT): Remove.
281         (_argp_unlock_xxx): Remove.
282         (parser_init): Do not use LOCK_GETOPT.
283         (parser_finalize): Do not use UNLOCK_GETOPT.
284         (struct parser): New member OPT_DATA.
285         (parser_init): Initialize parser->opt_data.  Use
286         parser->opt_data.opterr instead of opterr.
287         (parser_parse_opt): Use parser->opt_data.optarg instead optarg.
288         (parser_parse_next): Likewise.  Use parser->opt_data.optind
289         instead optind.  Use parser->opt_data.optopt instead of optopt.
290         Call _getopt_long_only_r and _getopt_long_r instead of
291         getopt_long_only and getopt_long, and pass the extra argument.
293 2004-03-09  Ulrich Drepper  <drepper@redhat.com>
295         * iconv/gconv_db.c: Don't define lock as static.  Rename to
296         __gconv_lock and export from the file.
297         * iconv/gconv_int.h: Declare __gconv_lock.
298         * libio/iofclose.c [_LIBC] (_IO_new_fclose): Lock gconv lock
299         before __gconv_release_step calls.
300         Patch by Shunichi Sagawa <s-sagawa@jp.fujitsu.com>.
302         * iconv/gconv_simple.c (internal_ucs4_loop): Fix typo in last change.
304         * posix/Makefile (tests): Add tst-vfork1.
305         * posix/tst-vfork1.c: New file.
307 2004-03-08  Ulrich Drepper  <drepper@redhat.com>
309         * sysdeps/i386/dl-machine.h: Define ARCH_FIXUP_ATTRIBUTE and use
310         it in the fixup function declarations.
311         * elf/dl-runtime.c: If ARCH_FIXUP_ATTRIBUTE is not defined,
312         provide dummy definition.  Use macro in fixup function
313         definitions.
315         * sysdeps/unix/sysv/linux/i386/vfork.S: If SAVE_PID and
316         RESTORE_PID are defined, use it.
317         * sysdeps/unix/sysv/linux/x86_64/vfork.S: Likewise.
319         * sysdeps/posix/gai_strerror.c: Add error string for EAI_IDN_ENCODE.
321         * Makerules: Use extra-modules.mk if modules-names is defined.
322         * extra-modules.mk: New file.
323         * dlfcn/Makefile (CPPFLAGS-modcxaatexit.c): Removed.
324         * elf/Makefile (CFLAGS-interp.c): Add -DNOT_IN_libc=1.
325         * csu/Makefile ($(objpfx)version-info.h): Pass -DNOT_IN_libc=1 to
326         compiler.
327         * Makefile (distribute): Add symbol-hacks.h and extra-modules.mk.
328         * sysdeps/generic/symbol-hacks.h: New file.
329         * sysdeps/wordsize-32/symbol-hacks.h: New file.
330         * sysdeps/wordsize-32/divdi3.c: Define *_internal aliases for __divdi3,
331         __moddi3, __udivdi3, and __umoddi3.
332         * include/libc-symbols.h: Include <symbol-hacks.h>.
334 2004-03-08  Jeroen Dekkers  <jeroen@dekkers.cx>
336         * elf/rtld.c (_rtld_global_ro) [MAP_COPY]: Don't set _dl_unload_cache.
338         * sysdeps/mach/hurd/dl-sysdep.c (_dl_important_hwcaps):
339         Don't use INTUSE with _dl_signal_error.
341 2004-03-08  Ulrich Drepper  <drepper@redhat.com>
343         * sysdeps/powerpc/powerpc64/dl-machine.c (_dl_reloc_overflow):
344         Don't use INTUSE with _dl_signal_error.
346 2004-03-08  Richard Henderson  <rth@redhat.com>
348         * sysdeps/alpha/soft-fp/ots_cvtxt.c (_OtsConvertFloatXT): Fix typo
349         in name.
351 2004-03-07  Ulrich Drepper  <drepper@redhat.com>
353         * config.h.in: Add entry for HAVE_LIBIDN.
354         * configure.in: If libidn add-on present define HAVE_LIBIDN.
355         * Versions.def: Add entry for libcidn.
357 2004-03-07  Simon Josefsson  <jas@extundo.com>
359         * resolv/netdb.h [__USE_GNU]: Add new AI_IDN ai_flags for addrinfo.
360         [__USE_GNU]: Add new error code EAI_IDN_ENCODE for getaddrinfo.
361         * sysdeps/posix/getaddrinfo.c: Add prototype for __idna_to_ascii_lz
362         and define IDNA_SUCCESS.
363         (gaih_inet): If ai_flags have AI_IDN, invoke __idna_to_ascii_lz.
364         (getaddrinfo): Fix EAI_BADFLAGS test to include AI_IDN.
365         All changes only applicable when glibc is compiled with the libidn
366         add-on.
368 2004-03-07  Ulrich Drepper  <drepper@redhat.com>
370         * sysdeps/unix/sysv/linux/ia64/dl-static.c (_dl_static_init): Call
371         _dl_lookup_symbol_x not _dl_lookup_symbol.
373         * sysdeps/powerpc/elf/rtld-global-offsets.sym: Adjust for moving
374         _dl_hwcap into _rtld_global_ro.
375         * sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S: Likewise.
376         * sysdeps/powerpc/powerpc32/fpu/setjmp-common.S: Likewise.
377         * sysdeps/powerpc/powerpc64/__longjmp-common.S: Likewise.
378         * sysdeps/powerpc/powerpc64/setjmp-common.S: Likewise.
379         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Likewise.
380         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Likewise.
381         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Likewise.
382         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: Likewise.
383         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: Likewise.
384         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Likewise.
386 2004-03-07  Andreas Schwab  <schwab@suse.de>
388         * elf/dl-sym.c: Include <dl-tls.h> only when USE_TLS.
390 2004-03-07  Andreas Jaeger  <aj@suse.de>
392         * iconvdata/iso-2022-cn-ext.c (BODY): Remove cast used as lvalue.
393         * iconvdata/tcvn5712-1.c (EMIT_SHIFT_TO_INIT): Likewise.
394         * iconvdata/euc-jisx0213.c (EMIT_SHIFT_TO_INIT): Likewise.
395         * iconvdata/shift_jisx0213.c (EMIT_SHIFT_TO_INIT): Likewise.
396         * iconvdata/tscii.c (EMIT_SHIFT_TO_INIT): Likewise.
398 2004-03-07  Ulrich Drepper  <drepper@redhat.com>
400         * sysdeps/generic/ldsodefs.h: Move _dl_initial_searclist,
401         _dl_hp_timing_overhead, _dl_init_all_dirs, and the content of
402         dl-procinfo.c from _rtld_global to _rtld_global_ro.
403         * elf/rtld.c: Adjust initializer for _rtld_global_ro.
404         * elf/dl-close.c: Use GLRO instead of GL where appropriate.
405         * elf/dl-libc.c: Likewise.
406         * elf/dl-load.c: Likewise.
407         * sysdeps/i386/dl-procinfo.h: Likewise.
408         * sysdeps/i386/i686/hp-timing.h: Likewise.
409         * sysdeps/ia64/hp-timing.h: Likewise.
410         * sysdeps/sparc/sparc32/sparcv9/hp-timing.h: Likewise.
411         * sysdeps/sparc/sparc64/hp-timing.h: Likewise.
412         * sysdeps/unix/sysv/linux/arm/dl-procinfo.h: Likewise.
413         * sysdeps/unix/sysv/linux/i386/dl-procinfo.h: Likewise.
414         * sysdeps/unix/sysv/linux/sparc/sparc32/dl-procinfo.h: Likewise.
415         * sysdeps/unix/sysv/linux/sparc/sparc64/dl-procinfo.h: Likewise.
416         * string/test-string.h: Define GLRO.
418 2004-03-06  Ulrich Drepper  <drepper@redhat.com>
420         * elf/dl-lookup.c: We don't need for specialized lookup functions.
421         Combining the functionality does not slow down relocation processing,
422         it might even speed it up a little.
423         * sysdeps/generic/ldsodefs.h: Adjust prototypes for lookup function.
424         Add only one function pointer to rtlf_global_ro.
425         * elf/do-lookup.h: Replace #ifs with ifs.
426         * elf/dl-libc.c: Adjust _dl_lookup_* callers.
427         * elf/dl-reloc.c: Likewise.
428         * elf/dl-runtime.c: Likewise.
429         * elf/dl-sym.c: Likewise.
430         * elf/rtld.c: Likewise.  Adjust _rtld_global_ro initialization.
432 2004-03-06  Richard Henderson  <rth@redhat.com>
434         * sysdeps/generic/ldsodefs.h (__rtld_local_attribute__,
435         __rtld_global_attribute__): Undef after use.
436         (_rtld_local_ro): Define __rtld_local_attribute__ with just hidden
437         if available.
439         * soft-fp/quad.h (union _FP_UNION_Q): Add longs structure.
440         * sysdeps/alpha/Implies: Add alpha/soft-fp.
441         * sysdeps/alpha/soft-fp/sfp-machine.h: Rewrite for GEM interface.
442         * sysdeps/alpha/Subdirs: New file.
443         * sysdeps/alpha/soft-fp/Makefile: New file.
444         * sysdeps/alpha/soft-fp/Versions: New file.
445         * sysdeps/alpha/soft-fp/local-soft-fp.h: New file.
446         * sysdeps/alpha/soft-fp/ots_add.c: New file.
447         * sysdeps/alpha/soft-fp/ots_cmp.c: new file.
448         * sysdeps/alpha/soft-fp/ots_cmpe.c: New file.
449         * sysdeps/alpha/soft-fp/ots_cvtqux.c: New file.
450         * sysdeps/alpha/soft-fp/ots_cvtqx.c: New file.
451         * sysdeps/alpha/soft-fp/ots_cvttx.c: New file.
452         * sysdeps/alpha/soft-fp/ots_cvtxq.c: New file.
453         * sysdeps/alpha/soft-fp/ots_cvtxt.c: New file.
454         * sysdeps/alpha/soft-fp/ots_div.c: New file.
455         * sysdeps/alpha/soft-fp/ots_mul.c: New file.
456         * sysdeps/alpha/soft-fp/ots_nintxq.c: New file.
457         * sysdeps/alpha/soft-fp/ots_sub.c: New file.
459 2004-03-06  Ulrich Drepper  <drepper@redhat.com>
461         * configure.in: Recognize --enable-bind-now.
462         * elf/dynamic-link.h (elf_get_dynamic_info): Allow bind-now flags
463         in ld.so.
464         * Makerules (LDFLAGS-c.so): Add -z now if so configured.
465         * elf/Makefile ($(objpfx)ld.so): Likewise.
466         * config.make.in (bind-now): New definition.
468         * elf/dl-fini.c (_dl_fini): Combine _dl_debug_printf calls.
469         * elf/rtld.c (print_statistics): Likewise.
471         * elf/dl-open.c: No need to pass any parameter to _dl_start_profile.
472         They are the same in both places.
473         * elf/dl-profile.c: Likewise.
474         * elf/rtld.c: Likewise.
475         * sysdeps/generic/ldsodefs.h: Likewise.
476         * elf/dl-support.c: Define _dl_profile_output variable.  Initialize it.
478 2004-03-05  Ulrich Drepper  <drepper@redhat.com>
480         * elf/Versions: Remove functions which are not exported anymore.
481         * dlfcn/dlerror.c: Call ld.so functions through GLSO.
482         * dlfcn/dlinfo.c: Likewise.
483         * elf/dl-close.c: Likewise.
484         * elf/dl-libc.c: Likewise.
485         * elf/dl-open.c: Likewise.
486         * elf/dl-sym.c: Likewise.
487         * sysdeps/generic/libc-start.c: Likewise.
488         * elf/dl-debug.c: Remove *_internal definition.  Don't use INTUSE for
489         functions which are not exported anymore.
490         * elf/dl-deps.c: Likewise.
491         * elf/dl-dst.h: Likewise.
492         * elf/dl-error.c: Likewise.
493         * elf/dl-fini.c: Likewise.
494         * elf/dl-init.c: Likewise.
495         * elf/dl-load.c: Likewise.
496         * elf/dl-lookup.c: Likewise.
497         * elf/dl-misc.c: Likewise.
498         * elf/dl-profile.c: Likewise.
499         * elf/dl-profstub.c: Likewise.
500         * elf/dl-reloc.c: Likewise.
501         * elf/dl-runtime.c: Likewise.
502         * elf/dl-version.c: Likewise.
503         * elf/do-lookup.h: Likewise.
504         * include/dlfcn.h: Likewise.
505         * sysdeps/generic/dl-cache.c: Likewise.
506         * sysdeps/generic/dl-fptr.c: Likewise.
507         * sysdeps/generic/dl-origin.c: Likewise.
508         * sysdeps/generic/dl-sysdep.c: Likewise.
509         * sysdeps/generic/dl-tls.c: Likewise.
510         * sysdeps/generic/ldsodefs.h: Likewise.
511         * sysdeps/i386/dl-tls.h: Likewise.
512         * sysdeps/unix/sysv/linux/dl-origin.c: Likewise.
513         * elf/rtld.c: Likewise.  Export function though _rtld_global_ro.
515         * sysdeps/generic/ldsodefs.h (struct rtld_global): Move
516         dl_debug_fd to rtld_global_ro.
517         * elf/rtld.c: Use GLRO instead of GL for dl_debug_fd.
518         * elf/dl-misc.c: Likewise.
520         * malloc/malloc.c: Don't call exported interface in the implementation.
522         * include/wctype.h: Add libc_hidden_proto for __towctrans.
523         * wctype/towctrans.c: Add libc_hidden_def.
525         * libio/memstream.c (open_memstream): Use _IO_init with INTUSE.
527         * posix/regexec.c (transit_state): Remove unused variable
528         next_state.
530         * posix/regcomp.c (init_dfa): Use __btowc instead of btowc.
532         * sysdeps/generic/ldsodefs.h: Define new structure rtld_global_ro.
533         Declare _rtld_global_ro and _rtld_local_ro.  Move members of
534         rtld_global structure into the new one if they are modified only
535         at startup time.  Define GLRO to access _rtld_global_ro.
536         * elf/Versions: Export _rtld_global_ro.
537         * elf/dl-close.c: Use GLRO instead of GL where appropriate.
538         * elf/dl-conflict.c: Likewise.
539         * elf/dl-deps.c: Likewise.
540         * elf/dl-dst.h: Likewise.
541         * elf/dl-error.c: Likewise.
542         * elf/dl-fini.c: Likewise.
543         * elf/dl-init.c: Likewise.
544         * elf/dl-load.c: Likewise.
545         * elf/dl-lookup.c: Likewise.
546         * elf/dl-minimal.c: Likewise.
547         * elf/dl-open.c: Likewise.
548         * elf/dl-profile.c: Likewise.
549         * elf/dl-reloc.c: Likewise.
550         * elf/dl-runtime.c: Likewise.
551         * elf/dl-support.c: Likewise.
552         * elf/dl-version.c: Likewise.
553         * elf/do-lookup.h: Likewise.
554         * elf/rtld.c: Likewise.
555         * sysdeps/generic/dl-cache.c: Likewise.
556         * sysdeps/generic/dl-origin.c: Likewise.
557         * sysdeps/generic/dl-sysdep.c: Likewise.
558         * sysdeps/generic/libc-start.c: Likewise.
559         * sysdeps/generic/dl-cache.c: Likewise.
560         * sysdeps/i386/dl-machine.h: Likewise.
561         * sysdeps/i386/setfpucw.c: Likewise.
562         * sysdeps/i386/fpu/fclrexcpt.c: Likewise.
563         * sysdeps/i386/fpu/fedisblexcpt.c: Likewise.
564         * sysdeps/i386/fpu/feenablxcpt.c: Likewise.
565         * sysdeps/i386/fpu/feholdexcpt.c: Likewise.
566         * sysdeps/i386/fpu/fesetround.c: Likewise.
567         * sysdeps/i386/fpu/fsetexcptflg.c: Likewise.
568         * sysdeps/i386/fpu/ftestexcept.c: Likewise.
569         * sysdeps/unix/sysv/linux/dl-execstat.c: Likewise.
570         * sysdeps/unix/sysv/linux/dl-librecon.h: Likewise.
571         * sysdeps/unix/sysv/linux/dl-origin.c: Likewise.
572         * sysdeps/unix/sysv/linux/dl-osinfo.h: Likewise.
573         * sysdeps/unix/sysv/linux/getclktck.c: Likewise.
574         * sysdeps/unix/sysv/linux/getpagesize.c: Likewise.
575         * sysdeps/unix/sysv/linux/init-first.c: Likewise.
576         * sysdeps/unix/sysv/linux/prof-freq.c: Likewise.
577         * sysdeps/unix/sysv/linux/i386/dl-librecon.h: Likewise.
578         * sysdeps/unix/sysv/linux/i386/sigaction.h: Likewise.
579         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Likewise.
580         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Likewise.
581         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: Likewise.
582         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Likewise.
583         * sysdeps/x86_64/dl-machine.h: Likewise.
584         * sysdeps/sparc/sparc64/dl-machine.h: Likewise.
585         * sysdeps/sparc/sparc32/dl-machine.h: Likewise.
586         * sysdeps/s390/s390-64/dl-machine.h: Likewise.
587         * sysdeps/s390/s390-32/dl-machine.h: Likewise.
588         * sysdeps/powerpc/powerpc64/dl-machine.h: Likewise.
589         * sysdeps/powerpc/powerpc32/dl-machine.c: Likewise.
590         * sysdeps/m68k/dl-machine.h: Likewise.
591         * sysdeps/ia64/dl-machine.h: Likewise.
592         * sysdeps/arm/dl-machine.h: Likewise.
593         * sysdeps/alpha/dl-machine.h: Likewise.
594         * generic/dl-fptr.c: Likewise.
595         * mach/hurd/dl-sysdep.c: Likewise.
596         * unix/sysv/linux/ia64/dl-static.c: Likewise.
597         * unix/sysv/linux/ia64/getpagesize.c: Likewise.
598         * unix/sysv/linux/m68k/getpagesize.c: Likewise.
599         * unix/sysv/linux/sparc/sparc32/getpagesize.c: Likewise.
601 2004-03-04  Ulrich Drepper  <drepper@redhat.com>
603         * sysdeps/generic/ldsodefs.h: Don't define _dl_name_match_p as inline.
604         * elf/dl-misc.c: Define _dl_name_match_p here.
605         * elf/dl-open.c (check_libc_caller): Don't use _dl_name_match_p.
607         * elf/dl-open.c (dl_open_worker): Check that _dl_open is called
608         from the right place.
610 2004-01-15  Paolo Bonzini  <bonzini@gnu.org>
612         * posix/regex.h (REG_STARTEND): Define.
613         * posix/regexec.c (regexec): Check for REG_STARTEND.
615 2004-02-29  Paolo Bonzini  <bonzini@gnu.org>
617         * posix/regexec.c (transit_state): Don't handle state == NULL.
618         Move state log and backreference management...
619         (merge_state_with_log): ... to this function.
620         (find_recover_state): New function.
621         (check_matching): Use find_recover_state to get a non-NULL
622         state when an invalid state is reached.  Compute the amount
623         of initial characters to be skipped less conservatively when
624         multi-byte character sets are in use.  Do not check
625         dfa->nbackref if the state log is NULL.  Initialize err.
626         (acquire_init_state_context): Expect err to be initialized.
627         Fix spacing.
629 2004-03-05  Jakub Jelinek  <jakub@redhat.com>
631         * sysdeps/sparc/sparc32/elf/start.S: Handle PIEs.
632         * sysdeps/sparc/sparc64/elf/start.S: Likewise.
634 2004-03-04  Jakub Jelinek  <jakub@redhat.com>
636         * iconv/iconv_prog.c (process_block): Handle omit_invalid.
637         If iconv returns EILSEQ with omit_invalid, continue converting
638         and return 1 if no other errors are seen.
639         (main): Set status to EXIT_FAILURE whenever process_* returns
640         nonzero, but only stop processing further files if iy returns
641         negative value.
643 2004-03-03  Jakub Jelinek  <jakub@redhat.com>
645         * sysdeps/unix/sysv/linux/x86_64/posix_fadvise.c: New file.
646         * sysdeps/unix/sysv/linux/x86_64/posix_fadvise64.c: New file.
647         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (posix_fadvise64):
648         Remove.
649         * sysdeps/unix/sysv/linux/alpha/posix_fadvise.c: New file.
650         * sysdeps/unix/sysv/linux/alpha/posix_fadvise64.c: New file.
651         * sysdeps/unix/sysv/linux/alpha/syscalls.list (posix_fadvise64):
652         Remove.
653         * sysdeps/unix/sysv/linux/ia64/posix_fadvise.c: New file.
654         * sysdeps/unix/sysv/linux/ia64/posix_fadvise64.c: New file.
655         * sysdeps/unix/sysv/linux/ia64/syscalls.list (posix_fadvise64):
656         Remove.
657         * sysdeps/unix/sysv/linux/powerpc/powerpc64/posix_fadvise.c: New file.
658         * sysdeps/unix/sysv/linux/powerpc/powerpc64/posix_fadvise64.c: New
659         file.
660         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Removed.
661         * sysdeps/unix/sysv/linux/s390/s390-64/posix_fadvise.c: New file.
662         * sysdeps/unix/sysv/linux/s390/s390-64/posix_fadvise64.c: New file.
663         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list
664         (posix_fadvise64): Remove.
665         * sysdeps/unix/sysv/linux/sparc/sparc64/posix_fadvise.c: New file.
666         * sysdeps/unix/sysv/linux/sparc/sparc64/posix_fadvise64.c: New file.
667         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list
668         (posix_fadvise64): Remove.
670 2004-03-02  Andreas Schwab  <schwab@suse.de>
672         * sysdeps/unix/sysv/linux/powerpc/powerpc32/xstat.c: New file.
673         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fxstat.c: New file.
674         * sysdeps/unix/sysv/linux/powerpc/powerpc32/lxstat.c: New file.
676 2004-03-01  Ulrich Drepper  <drepper@redhat.com>
678         * nscd/nscd_getgr_r.c (nscd_getgr_r): Add missing initialization
679         of return value.
680         * nscd/nscd_gethst_r.c (nscd_gethst_r): Likewise.
682         * sysdeps/unix/sysv/linux/kernel-features.h: Add support for
683         __ASSUME_GETDENTS32_D_TYPE.
684         * sysdeps/unix/sysv/linux/getdents.c: For 2.6.4+ kernels use
685         getdents syscall again since it provides d_type information.
687 2004-02-29  Andreas Jaeger  <aj@suse.de>
689         * manual/install.texi (Tools for Compilation): Autoconf 2.53 is
690         required.
691         (Supported Configurations): Add x86_64-*-linux.
693 2004-02-28  Ulrich Drepper  <drepper@redhat.com>
695         * sysdeps/i386/i686/memcmp.S: Move table to .rodata.  Patch by HJ Lu.
697 2004-02-27  Jakub Jelinek  <jakub@redhat.com>
699         * elf/rtld.c (dl_main): Adjust l->l_ld of the vDSO by l->l_addr.
700         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Only set
701         GL(dl_sysinfo) if non-zero.
703         * sysdeps/unix/sysv/linux/sysconf.c: Include stdlib.h.
705 2004-02-26  Ulrich Drepper  <drepper@redhat.com>
707         * nss/getXXbyYY_r.c: Pass result also to the nscd_* function.  Don't
708         set *result here.
709         * nscd/nscd_proto.h: Add new argument for pointer to result pointer
710         to all nscd_* functions.
711         * nscd/nscd_getgr_r.c (nscd_getgr_r): Add new parameter.  Store result
712         pointer in the address provided by the new parameter if successful.
713         Otherwise store NULL.  Return zero if no entry found.
714         (__nscd_getgrnam_r, __nscd_getgrgid_r): Add new parameter and pass
715         it on.
716         * nscd/nscd_gethst_r.c (nscd_gethst_r): Add new parameter.  Store
717         result pointer in the address provided by the new parameter if
718         successful. Otherwise store NULL.  Return zero if no entry found.
719         (__nscd_gethostbyname_r, __nscd_gethostbyname2_r,
720         __nscd_gethostbyaddr_r): Add new parameter and pass it on.
721         * nscd/nscd_getpw_r.c (nscd_getpw_r): Add new parameter.  Store result
722         pointer in the address provided by the new parameter if successful.
723         Otherwise store NULL.  Return zero if no entry found.
724         (__nscd_getpwnam_r, __nscd_getpwuid_r): Add new parameter and pass
725         it on.
727 2004-02-26  Jakub Jelinek  <jakub@redhat.com>
729         * sysdeps/unix/sysv/linux/clock_settime.c (SYSDEP_SETTIME): Set
730         retval to -1 on error.
732 2004-02-26  Ulrich Drepper  <drepper@redhat.com>
734         * stdlib/canonicalize.c (__realpath): Simplify.
736         * posix/regcomp.c (parse_expression): Avoid duplication in calls
737         to build_charclass_op.
739 2004-02-26  Jakub Jelinek  <jakub@redhat.com>
741         * elf/rtld.c (dl_main): Correctly set up l_map_end and l_addr
742         in vDSO's link_map, don't assume l_addr == 0.  Set GL(dl_sysinfo)
743         from e_entry only if AT_SYSINFO not present and adjust by l_addr.
744         Take vDSO into account when inserting rtld into _dl_loaded chain.
746 2004-02-26  Ulrich Drepper  <drepper@redhat.com>
748         * sunrpc/svcauth_des.c (authdes_getucred): Removed fixed limit on
749         number of groups in the cache.  Relax the disconnect between the
750         interface of authdes_getucred and netname2user a bit.
751         * sunrpc/auth_unix.c (authunix_create_default): Don't allocate
752         huge arrays on the stack.
754         * sysdeps/unix/sysv/linux/sysconf.c (__sysconf): Use the official
755         not cancelable interfaces.
757 2004-02-24  Arnold D. Robbins  <arnold@skeeve.com>
759         * posix/regex_internal.c (build_wcs_upper_buffer): Enclose
760         `offsets_needed' label in `#ifdef _LIBC' to silence `unused label'
761         compiler warning.
763 2004-02-24  Nelson H.F. Beebe  <beebe@math.utah.edu>
765         * posix/regcomp.c (parse_expression): Add cast to (const unsigned
766         char *) in calls to `build_charclass_op'.
767         * posix/regex_internal.c (build_wcs_buffer): Add cast to char* in call
768         to `wcrtomb'.
769         * posix/regex_internal.h (bitset_not, bitset_merge, bitset_not_merge,
770         bitset_mask, re_string_char_size_a, re_string_wchar_at,
771         re_string_elem_size_at): Change to use prototypes.
772         (re_string_char_size_at, re_string_wchar_at,
773         re_string_elem_size_at): Declare as `internal_function'.
775 2004-02-25  Ulrich Drepper  <drepper@redhat.com>
777         * sysdeps/unix/sysv/linux/sysconf.c (__sysconf): Handle
778         _SC_NGROUPS_MAX.
780 2004-02-23  Jakub Jelinek  <jakub@redhat.com>
782         * wcsmbs/mbrtowc.c (__mbrtowc): Cap s + n at the end of address space.
783         * stdlib/Makefile (tests): Add testmb2.
784         (testmb2-ENV): New.
785         * stdlib/testmb2.c: New test.
787 2004-02-23  Jakub Jelinek  <jakub@redhat.com>
789         * sysdeps/posix/getaddrinfo.c (gaih_inet): If _res has not been
790         inited yet, try to init it before saving old _res.options.
791         * posix/Makefile (xtests): Add bug-ga2.
792         (generated): Add bug-ga2.mtrace and bug-ga2-mem.
793         (xtests): Depend on bug-ga2-mem.
794         ($(objpfx)bug-ga2-mem, bug-ga2-ENV): New.
795         * posix/bug-ga2.c: New test.
797 2004-02-22  Ulrich Drepper  <drepper@redhat.com>
799         * sysdeps/unix/sysv/linux/i386/posix_fadvise64.S: Pop register
800         content also in case of an overflow in the parameter.
801         Reported by Momchil Velikov <velco@fadata.bg>.
803 2004-02-21  Ulrich Drepper  <drepper@redhat.com>
805         * elf/dynamic-link.h (elf_get_dynamic_info): Recognize DF_1_NOW.
806         In ld.so, neither DT_FLAGS nor DT_FLAGS_1 must be used.
808 2004-02-21  Andreas Jaeger  <aj@suse.de>
810         * posix/bug-ga1.c: Include <string.h> for memset prototype.
812         * elf/dl-load.c (_dl_map_object_from_fd): Fix casts used as lvalue.
814         * iconv/gconv_simple.c (internal_ucs4le_loop): Remove cast used as
815         lvalue.
817 2004-02-19  Carlos O'Donell  <carlos@baldric.uwo.ca>
819         * sysdeps/generic/framestate.c [__USING_SJLJ_EXCEPTIONS__]
820         (__frame_state_for): Set frame_State_for to abort if the compiler
821         is using sjlj.
822         * sysdeps/generic/unwind-dw2.c: Allow sjlj enabled compilers to
823         build the code by removing __USING_SJLJ_EXCEPTIONS__ wrapper.
825 2004-02-20  Alexandre Oliva  <aoliva@redhat.com>
827         * resolv/Versions: Remove semicolon from the end of libresolv's
828         GLIBC_2.3.2 version block.
829         * Versions.def (libresolv): Add GLIBC_2.3.2.
831 2004-02-19  Carlos O'Donell  <carlos@baldric.uwo.ca>
833         * sysdeps/hppa/fpu/feholdexcpt.c (feholdexcept): Fix order of fp
834         status register loads.
836 2004-02-20  Thorsten Kukuk  <kukuk@suse.de>
838         * nscd/nscd.c (termination_handler): Use _exit instead of exit
840 2004-02-20  Ulrich Drepper  <drepper@redhat.com>
842         * nscd/nscd.c (main): Report fork errors.
844         * dlfcn/dlsym.c: Get ld.so loading lock before the call into ld.so.
845         * dlfcn/dlvsym.c: Likewise.
846         * elf/dl-addr.c: Get loading lock while using _dl_loaded data.
847         * elf/dl-fini.c: Likewise.
848         Patch by Shunichi Sagawa <s-sagawa@jp.fujitsu.com>.
850 2004-02-20  Jakub Jelinek  <jakub@redhat.com>
852         * sysdeps/sparc/sparc32/fpu/libm-test-ulps: Add ulps for the
853         2003-11-27 atan2 test.
855         * sysdeps/powerpc/fpu/bits/mathinline.h (lrint, lrintf): Protect
856         with #ifndef __powerpc64__.
858         * sysdeps/generic/ldsodefs.h (_dl_argv, _dl_argv_internal): If
859         DL_ARGV_NOT_RELRO defined, don't use attribute_relro.
860         * sysdeps/alpha/dl-machine.h (DL_ARGV_NOT_RELRO): Remove.
861         * sysdeps/ia64/dl-machine.h (DL_ARGV_NOT_RELRO): Remove.
862         * sysdeps/sparc/sparc32/dl-machine.h (DL_ARGV_NOT_RELRO): Remove.
863         * sysdeps/sparc/sparc64/dl-machine.h (DL_ARGV_NOT_RELRO): Remove.
864         * sysdeps/alpha/dl-sysdep.h: New file.
865         * sysdeps/ia64/dl-sysdep.h: New file.
866         * sysdeps/sparc/dl-sysdep.h: New file.
868 2004-02-19  Jakub Jelinek  <jakub@redhat.com>
870         * sysdeps/sparc/sparc32/bits/atomic.h: Add __make_section_unallocated
871         for .gnu.linkonce.b.__sparc32_atomic_locks section.
872         (__sparc32_atomic_locks): Add __sec_comment at the end of section name.
874 2004-02-19  Steven Munroe  <sjmunroe@us.ibm.com>
876         * sysdeps/generic/libc-start.c [LIBC_START_DISABLE_INLINE] (STATIC):
877         Define as static.
878         * sysdeps/powerpc/elf/libc-start.c: Define LIBC_START_DISABLE_INLINE
879         because gcc does not allow inline of functions that call setjmp.
881 2004-02-19  Steven Munroe  <sjmunroe@us.ibm.com>
883         * sysdeps/powerpc/powerpc64/Makefile: Use -finline-limit.
885 2004-02-19  Jakub Jelinek  <jakub@redhat.com>
887         * elf/rtld.c (_dl_argv): If DL_ARGV_NOT_RELRO defined, don't
888         use attribute_relro for _dl_argv.
889         * sysdeps/alpha/dl-machine.h (DL_ARGV_NOT_RELRO): Define.
890         * sysdeps/ia64/dl-machine.h (DL_ARGV_NOT_RELRO): Define.
891         * sysdeps/sparc/sparc32/dl-machine.h (DL_ARGV_NOT_RELRO): Define.
892         * sysdeps/sparc/sparc64/dl-machine.h (DL_ARGV_NOT_RELRO): Define.
894 2004-02-19  Ulrich Drepper  <drepper@redhat.com>
896         * libio/iopopen.c (_IO_new_proc_open): It's not kosher to use
897         vfork instead of fork.
898         * libio/oldiopopen.c (_IO_old_proc_open): Likewise.
900         * sysdeps/unix/clock_settime.c (clock_settime): Fix typo which
901         prevented system-dependent handling from being used.
903 2004-02-18  Carlos O'Donell  <carlos@baldric.uwo.ca>
905         * test-skeleton.c (main): If set, use environment variable
906         TIMEOUTFACTOR to scale test TIMEOUT.
908 2004-02-18  Ulrich Drepper  <drepper@redhat.com>
910         * nscd/nscd_conf.c: Include <stdio_ext.h>.
912 2004-02-16  Ulrich Drepper  <drepper@redhat.com>
914         * stdlib/test-canon.c (do_test): Test realpath(,NULL) in the loop
915         as well.
917         * stdlib/canonicalize.c (__realpath): Remove unnecessary copy
918         operations.
920         * nscd/nscd_conf.c (nscd_parse_file): Little optimization.
922 2004-02-14  Thorsten Kukuk  <kukuk@suse.de>
924         * nscd/dbg_log.c (set_logfile): Only save name of logfile,
925         don't open it.
926         (init_logfile): New function, open logfile if requested.
927         * nscd/dbg_log.h: Adjust protoype for set_logfile, add init_logfile.
928         * nscd/nscd.c (main): Call init_logfile after forking in background.
929         * nscd/nscd_conf.c (nscd_parse_file): Adjust for new set_logfile.
931 2004-02-16  Ulrich Drepper  <drepper@redhat.com>
933         * elf/rtld.c (dl_main): Don't fail execution if file named in
934         ld.so.preload is not present [BZ #18].
936         * sysdeps/posix/getaddrinfo.c (getaddrinfo): Undo unintended
937         changes in last patch.
939         * posix/regexec.c (transit_state): Fix typo in commented-out code
940         [BZ #6].
942         * sysdeps/posix/getaddrinfo.c (match_prefix): Correctly match
943         partial bytes [BZ #24].
944         * posix/Makefile (tests): Add bug-ga1.
945         * posix/bug-ga1.c: New file.
947 2004-02-13  Steven Munroe  <sjmunroe@us.ibm.com>
949         * sysdeps/powerpc/powerpc64/__longjmp-common.S: New file.
950         * sysdeps/powerpc/powerpc64/__longjmp.S [NOT_IN_libc](__longjmp):
951         Non-versioned __longjmp for rtld-__longjmp.
952         [!NOT_IN_libc](__vmx__longjmp): Add VMX reg support and define as
953         default version of __longjmp.
954         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)]
955         (__novmx__longjmp): Original version of __longjmp.
956         * sysdeps/powerpc/powerpc64/bsd-_setjmp.S [NOT_IN_libc](_setjmp):
957         Non-versioned _setjmp for rtld-_setjmp.
958         [!NOT_IN_libc](__vmx_setjmp): Branch to __vmx__sigsetjmp and define
959         as default version of _setjmp.
960         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)]
961         (__novmx_setjmp): Original version of _setjmp.
962         * sysdeps/powerpc/powerpc64/bsd-setjmp.S (__vmxsetjmp): Branch to
963         __vmx__sigsetjmp and define as default version of setjmp.
964         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)]
965         (__novmxsetjmp): Original version of setjmp.
966         * sysdeps/powerpc/powerpc64/setjmp-common.S: New file.
967         * sysdeps/powerpc/powerpc64/setjmp.S [NOT_IN_libc](__setjmp):
968         Non-versioned __sigsetjmp for rtld-setjmp.
969         [!NOT_IN_libc](__vmx__sigsetjmp): Add VMX reg support and define
970         as default version of __sigsetjmp.
971         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)]
972         (__novmx__sigsetjmp): Original version of __sigsetjmp.
974         * sysdeps/powerpc/powerpc32/__longjmp-common.S: New File
975         * sysdeps/powerpc/powerpc32/__longjmp.S [NOT_IN_libc](__longjmp):
976         Non-versioned __longjmp for rtld-__longjmp.
977         [!NOT_IN_libc](__vmx__longjmp): Add VMX reg support and define as
978         default version of __longjmp.
979         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)]
980         (__novmx__longjmp): Original version of __longjmp.
981         * sysdeps/powerpc/powerpc32/bsd-_setjmp.S [NOT_IN_libc](_setjmp):
982         Non-versioned _setjmp for rtld-_setjmp.
983         [!NOT_IN_libc](__vmx_setjmp): Branch to __vmx__sigsetjmp and define
984         as default version of _setjmp.
985         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)]
986         (__novmx_setjmp): Original version of _setjmp.
987         * sysdeps/powerpc/powerpc32/bsd-setjmp.S (__vmxsetjmp): Branch to
988         __vmx__sigsetjmp and define as default version of setjmp.
989         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)]
990         (__novmxsetjmp): Original version of setjmp.
991         * sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S: New file.
992         * sysdeps/powerpc/powerpc32/fpu/__longjmp.S [NOT_IN_libc](__longjmp):
993         Non-versioned __longjmp for rtld-__longjmp.
994         [!NOT_IN_libc](__vmx__longjmp): Add VMX reg support and define as
995         default version of __longjmp.
996         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)]
997         (__novmx__longjmp): Original version of __longjmp.
998         * sysdeps/powerpc/powerpc32/fpu/setjmp-common.S: New file.
999         * sysdeps/powerpc/powerpc32/fpu/setjmp.S [NOT_IN_libc](__setjmp):
1000         Non-versioned __sigsetjmp for rtld-setjmp.
1001         [!NOT_IN_libc](__vmx__sigsetjmp): Add VMX reg support and define
1002         as default version of __sigsetjmp.
1003         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)]
1004         (__novmx__sigsetjmp): Original version of __sigsetjmp.
1005         * sysdeps/powerpc/powerpc32/setjmp-common.S: New file.
1006         * sysdeps/powerpc/powerpc32/setjmp.S [NOT_IN_libc](__setjmp):
1007         Non-versioned __sigsetjmp for rtld-setjmp.
1008         [!NOT_IN_libc](__vmx__sigsetjmp): Add VMX reg support and define
1009         as default version of __sigsetjmp.
1010         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)]
1011         (__novmx__sigsetjmp): Original version of __sigsetjmp.
1013         * sysdeps/powerpc/Dist: New File.
1014         * sysdeps/powerpc/Makefile (sysdep_routines): Add novmx-longjmp.c
1015         and novmx-sigjmp.c
1016         * sysdeps/powerpc/Versions (libc): To GLIBC_2.3_4 add _longjmp,
1017         __sigsetjmp, _setjmp, longjmp, and setjmp. To GLIBC_PRIVATE add
1018         __novmx__libc_longjmp, __novmx__libc_siglongjmp, __vmx__libc_longjmp,
1019         and __vmx__libc_siglongjmp.
1020         * sysdeps/powerpc/bits/setjmp.h: Define JB_VRSAVE, JB_VRS, and adjust
1021         JB_SIZE to add VMX regs to __jmp_buf.
1022         * sysdeps/powerpc/longjmp.c: New file.
1023         * sysdeps/powerpc/novmxsetjmp.h: New file.
1024         * sysdeps/powerpc/novmx-longjmp.c: New file.
1025         * sysdeps/powerpc/novmx-sigjmp.c: New file.
1026         * sysdeps/powerpc/sigjmp.c: New file.
1028 2004-02-13  Jakub Jelinek  <jakub@redhat.com>
1030         * sysdeps/powerpc/powerpc64/fpu/s_llrintf.c (__lrintf, lrintf):
1031         Define.
1032         (__lrintl, lrintl): Remove.
1033         * sysdeps/powerpc/powerpc64/fpu/s_llrint.c (__lrint): Fix a typo in
1034         strong_alias spelling.
1035         * sysdeps/powerpc/powerpc64/fpu/s_lrintf.S: Remove.
1036         * sysdeps/powerpc/powerpc64/fpu/s_lrint.S: New file.
1038 2004-02-12  Ulrich Drepper  <drepper@redhat.com>
1040         * posix/getopt.h: Add some non-gcc support.  Patch by Aharon Robbins.
1042 2004-02-12  Mark Brown  <bmark@us.ibm.com>
1044         * sysdeps/ia64/fpu/e_fmodf.S: Added text of Intel license.
1046 2004-02-12  Jakub Jelinek  <jakub@redhat.com>
1048         * sysdeps/powerpc/fpu/s_lrint.c: Move to...
1049         * sysdeps/powerpc/powerpc32/fpu/s_lrint.c: ... here.
1050         * sysdeps/powerpc/fpu/s_llrint.c: Move to...
1051         * sysdeps/powerpc/powerpc32/fpu/s_llrint.c: ... here.
1052         * sysdeps/powerpc/fpu/s_llrintf.c: Move to...
1053         * sysdeps/powerpc/powerpc32/fpu/s_llrintf.c: ... here.
1054         * sysdeps/powerpc/powerpc64/fpu/s_llrint.c: New file.
1055         * sysdeps/powerpc/powerpc64/fpu/s_lrintf.S: New file.
1056         * sysdeps/powerpc/powerpc64/fpu/s_llrintf.c: New file.
1058         * math/libm-test.inc (lrint_test): Add new test.
1059         (llrint_test, lround_test, llround_test): Likewise.
1060         * sysdeps/ieee754/ldbl-128/s_lroundl.c (__lroundl): Fix special case
1061         with result taking up 48 bits.
1062         * sysdeps/ieee754/ldbl-128/s_lrintl.c (__lrintl): Likewise.
1063         * sysdeps/ieee754/ldbl-128/s_llroundl.c (__llroundl): Likewise.
1064         * sysdeps/ieee754/ldbl-96/s_llrintl.c (__llrintl): Fix special case
1065         with result taking up 31 bits.
1067 2004-02-12  Ulrich Drepper  <drepper@redhat.com>
1069         * locale/programs/locale.c (show_locale_vars): Don't print a value
1070         for LANG if it is not set.
1072 2004-02-11  Jakub Jelinek  <jakub@redhat.com>
1074         * posix/regexec.c (check_node_accept_bytes): Return 0 if char_len is 0.
1075         (find_collation_sequence_value): Don't look beyond end of
1076         SYMB_EXTRAMB table.
1077         * posix/Makefile (tests): Add bug-regex23.
1078         (bug-regex23-ENV): New.
1079         * posix/bug-regex23.c: New file.
1081 2004-02-10  Roland McGrath  <roland@frob.com>
1083         * sysdeps/mach/hurd/times.c (__times): Use union instead of cast.
1084         * sysdeps/mach/hurd/sendmsg.c (__libc_sendmsg): Likewise.
1086         * sysdeps/mach/hurd/configure.in: Move `retcode' check to ...
1087         * sysdeps/mach/configure.in: ... here.
1088         * sysdeps/mach/hurd/configure: Regenerated.
1089         * sysdeps/mach/configure.in: Regenerated.
1091 2004-02-10  Ulrich Drepper  <drepper@redhat.com>
1093         * sysdeps/generic/setenv.c (__add_to_environ): Don't let the
1094         temporary copies of the variables accumulate on the stack.
1096         * stdio-common/_i18n_number.h: Finish last patch.
1098 2004-02-09  Ulrich Drepper  <drepper@redhat.com>
1100         * sysdeps/i386/i686/memcmp.S: New file.  Patch by HJ Lu.
1102 2003-12-05  Roland McGrath  <roland@redhat.com>
1104         * sysdeps/unix/sysv/linux/i386/syscalls.list: Turn vm86 into vm86old
1105         for vm86@GLIBC_2.0 version.  Add new vm86@GLIBC_2.3.4.
1106         * sysdeps/unix/sysv/linux/i386/Versions (libc: GLIBC_2.3.4): Add vm86.
1107         * sysdeps/unix/sysv/linux/i386/sys/vm86.h: Update vm86 prototype.
1109 2004-02-09  Ulrich Drepper  <drepper@redhat.com>
1111         * nis/ypclnt.c: Cleanup last patch.
1113 2004-02-09  Andreas Jaeger  <aj@suse.de>
1115         * configure.in: Remove glibcbug creation.
1116         * configure: Regenerated.
1118         * sysdeps/x86_64/fpu/s_copysignf.S: Only load 4 bytes.
1120 2004-02-03  Thorsten Kukuk  <kukuk@suse.de>
1122         * nis/ypclnt.c (__yp_bind_client_create): New, small chunk
1123         of duplicated code from __yp_bind.
1124         (__yp_bind_file): New, binding dir code from __yp_bind.
1125         (__yp_bind_client_create): New, ypbind code from __yp_bind.
1126         (__ypclnt_call): New, make NIS query.
1127         (do_ypcall): At first use cached data, then try data from
1128         binding directory, after this ask ypbind for a working ypserv.
1129         Based on a patch from Jeff Bastian <jmbastia@ti.com> and
1130         Chris Barrera <cbarrera@ti.com>
1132 2004-01-19  Roland McGrath  <roland@redhat.com>
1134         * configure.in: Don't set CCVERSION.
1135         * configure: Regenerated.
1136         * glibcbug.in: File removed.
1137         * Makefile (install-bin-script): Remove glibcbug.
1138         (glibcbug): Target removed.
1139         (distclean-1): Don't rm glibcbug.
1140         (distribute): Remove glibcbug.in.
1142 2004-02-09  Roland McGrath  <roland@redhat.com>
1144         * time/tzset.c (tzset_internal): Cap hour in POSIX $TZ rule format to
1145         24, not 23.
1147 2004-01-29  Roland McGrath  <roland@redhat.com>
1149         * io/ftwtest-sh: Use $tmp consistently, not literal /tmp.
1150         Reported by Kevin P. Fleming <kpfleming@backtobasicsmgmt.com>.
1152 2004-02-09  Ulrich Drepper  <drepper@redhat.com>
1154         * libio/genops.c (_IO_cleanup): Do not use locking when flushing
1155         the buffers.  Some thread might be using a stream.
1157 2004-02-09  Andreas Jaeger  <aj@suse.de>
1159         * sysdeps/x86_64/memcpy.S: Fix alignment [BZ #7].
1160         Patch by Jan Beulich <jbeulich@novell.com>.
1162 2004-02-09  Andreas Schwab  <schwab@suse.de>
1164         * include/rpc/rpc.h: Declare thread variables with their correct type.
1165         * sunrpc/clnt_perr.c: Don't cast thread variables.
1166         * sunrpc/clnt_raw.c: Likewise.
1167         * sunrpc/clnt_simp.c: Likewise.
1168         * sunrpc/key_call.c: Likewise.
1169         * sunrpc/svcauth_des.c: Likewise.
1170         * sunrpc/svc.c: Likewise.
1171         * sunrpc/svc_raw.c: Likewise.
1172         * sunrpc/svc_simple.c: Likewise.
1174 2004-02-09  Ulrich Drepper  <drepper@redhat.com>
1176         * stdio-common/_i18n_number.h: Support printing localized decimal
1177         point and thousand separator.
1178         * wctype/wctrans.c: Add __wctrans alias.
1179         * include/wctype.h: Declare __wctrans.
1180         Based on a patch by Hamed Malek.
1182         * sysdeps/i386/fpu/fclrexcpt.c (__feclearexcept): Don't touch bits
1183         other than the status bits [BZ #10].
1185 2004-02-08  Ulrich Drepper  <drepper@redhat.com>
1187         Make stream locking operations really work.
1188         * misc/Makefile (CFLAGS-mntent_r.c): Define.
1189         * shadow/Makefile (CFLAGS-fgetspent_r.c): Define.
1190         (CFLAGS-putspent.c): Define.
1191         * grp/Makefile (CFLAGS-fgetgrent_r.c): Define.
1192         (CFLAGS-putgrent.c): Define.
1193         * pwd/Makefile (CFLAGS-fgetpwent_r.c): Define.
1194         Reported by Shunichi Sagawa <s-sagawa@jp.fujitsu.com>.
1196         * elf/dl-load.c (lose): Use noinline attribute instead of silly
1197         alloca to prevent inlining.
1198         * elf/dl-runtime.c (fixup): Likewise.
1199         (profile_fixup): Likewise.
1201         * stdio-common/printf_size.c: Undo parts of patch from 2000-2-11.
1202         Initialize width correctly.
1204 2004-02-07  Andreas Jaeger  <aj@suse.de>
1206         * iconv/gconv_simple.c (ucs4le_internal_loop): Remove cast used as
1207         lvalue.
1208         (internal_ucs4le_loop_single): Likewise.
1209         (ucs4_internal_loop): Likewise.
1210         (BODY): Likewise.
1211         (internal_ucs4_loop_single): Likewise.
1212         * iconvdata/iso8859-1.c (BODY): Likewise.
1213         * iconvdata/cp1255.c (EMIT_SHIFT_TO_INIT): Likewise.
1214         * iconvdata/cp1258.c (EMIT_SHIFT_TO_INIT): Likewise.
1215         * iconvdata/gb18030.c (BODY): Likewise.
1216         * iconvdata/armscii-8.c (BODY): Likewise.
1217         * stdlib/msort.c (msort_with_tmp): Likewise.
1219         * iconv/gconv_open.c (__gconv_open): Remove conditional expression
1220         as lvalue.
1222 2004-02-06  Steven Munroe  <sjmunroe@us.ibm.com>
1224         * sysdeps/powerpc/powerpc32/dl-machine.c: Declare __cache_line_size as
1225         weak extern.
1226         (__elf_machine_runtime_setup): Invalidate the instruction cache over
1227         the whole range of the PLT.
1229 2004-02-06  Andreas Schwab  <schwab@suse.de>
1231         * posix/regcomp.c (build_range_exp): Fix off-by-one.
1232         (parse_bracket_exp): Likewise.
1234 2004-02-05  Ulrich Drepper  <drepper@redhat.com>
1236         * sysdeps/unix/sysv/linux/powerpc/powerpc32/kernel_stat.h: Define
1237         _HAVE_STAT_NSEC and _HAVE_STAT64_NSEC.  Patch by Anton Blanchard.
1239 2004-02-02  Paolo Bonzini  <bonzini@gnu.org>
1241         * posix/regexec.c (check_matching): Add P_MATCH_FIRST parameter.
1242         (re_search_internal): Pass new parameter to check_matching.
1243         (check_matching): Unless a parenthesized group is found at the
1244         beginning of the regexp, advance P_MATCH_FIRST until we entered
1245         a state different from the initial state.
1247 2004-02-01  Ulrich Drepper  <drepper@redhat.com>
1249         * math/libm-test.inc (lround_test): Add new test.
1250         (llround_test): Likewise.
1251         (lrint_test): Likewise.
1252         (llrint_test): Likewise.
1253         * sysdeps/ieee754/dbl-64/s_lround.c (__lround): Fix special case
1254         with result taking up 20 bits.
1255         * sysdeps/ieee754/dbl-64/s_lrint.c (__lrint): Likewise.
1256         * sysdeps/ieee754/dbl-64/s_llrint.c (__llrint): Likewise..
1257         * sysdeps/ieee754/ldbl-96/s_lroundl.c (__lroundl): Fix special
1258         case with result taking up 31 bits.
1259         * sysdeps/ieee754/ldbl-96/s_lrintl.c (__lrintl): Likewise.
1261         * po/nl.po: Update from translation team.
1263 2004-01-30  Andreas Schwab  <schwab@suse.de>
1265         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h (ILL_BREAK,
1266         FPE_DECOVF, FPE_DECDIV, FPE_DECERR, FPE_INVASC, FPE_INVDEC,
1267         SEGV_PSTKOVF): Remove underscore prefix from definition.
1269 2004-01-28  Paolo Bonzini  <bonzini@gnu.org>
1271         Merge regex changes in gawk.
1272         * posix/regcomp.c (build_range_exp) [!_LIBC]: Check validity
1273         of collation elements.
1274         * posix/regex.c: Include limits.h.
1275         * posix/regex.h: Document REG_ECOLLATE correctly.
1276         * posix/regex_internal.h [!_LIBC && !ENABLE_NLS]: Disable NLS.
1278 2004-01-24  Andreas Jaeger  <aj@suse.de>
1280         * malloc/obstack.h: Import gnulib version.
1281         * malloc/obstack.c: Likewise.
1283 2004-01-26  David Mosberger  <davidm@hpl.hp.com>
1285         * elf/link.h (struct dl_phdr_info): Fix typo in comment.
1286         * elf/rtld.c (dl_main): After incrementing dl_nloaded, also
1287         increment dl_load_adds.
1288         * elf/dl-iteratephdr.c (__dl_iterate_phdr): Replace GL(dl_load_subs)
1289         with equivalent GL(dl_load_adds - GL(dl_nloaded).
1290         (dl_iterate_phdr): Likewise.
1291         * elf/dl-close.c (_dl_close): Delete increment of GL(dl_load_subs).
1292         * elf/dl-support.c: Remove global variable _dl_load_subs.
1293         * sysdeps/generic/ldsodefs.h (struct rtld_global): Remove
1294         _dl_load_subs member.
1296 2004-01-27  Jakub Jelinek  <jakub@redhat.com>
1298         * elf/rtld.c (_dl_start_final): Don't set l_relro_* here.
1299         (_dl_start): And neither here.
1300         (dl_main): Set GL(dl_loaded)->l_relro_* and
1301         GL(dl_rtld_map)->l_relro_*.
1303 2004-01-23  David Mosberger  <davidm@hpl.hp.com>
1305         * sysdeps/generic/ldsodefs.h (struct rtld_global): Add members
1306         _dl_load_adds and _dl_load_subs.
1307         * elf/dl-support.c (_dl_load_adds): New variable.
1308         (_dl_load_subs): Likewise.
1309         * elf/dl-object.c (_dl_new_object): Increment dl_load_adds.
1310         * elf/dl-close.c (_dl_close): Increment dl_load_subs.
1311         * elf/link.h (struct dl_phdr_info): Add members dlpi_adds and
1312         dlpi_subs.
1313         * include/link.h: Likewise.
1314         * elf/dl-iteratephdr.c (__dl_iterate_phdr): Initialize dlpi_adds
1315         and dlpi_subs members.
1316         (dl_iterate_phdr): Likewise.
1317         * elf/tst-dlmodcount.c: New file.
1318         * elf/Makefile (distribute): Mention tst-dlmodcount.c.
1319         (tests): If build-shared, mention tst-dlmodcount.
1320         ($(objpfx)tst-dlmodcount): If build-shared, build and
1321         run tst-dlmodcount.
1323 2004-01-22  Jakub Jelinek  <jakub@redhat.com>
1325         * elf/dl-reloc.c (_dl_relocate_object): Move PT_GNU_RELRO protection
1326         into...
1327         (_dl_protect_relro): New routine.
1328         * sysdeps/generic/ldsodefs.h (_dl_protect_relro): New prototype.
1329         * elf/rtld.c (_dl_start_final): Copy l_relro_addr and l_relro_size
1330         from bootstrap_map.
1331         (_dl_main): Don't set GL(_dl_loaded)->l_relro_{addr,size} here.
1332         Call _dl_protect_relro for libraries if prelinking.
1334 2004-01-23  Richard Henderson  <rth@redhat.com>
1336         * Versions.def (libm): Replace GLIBC_2.3.3 with GLIBC_2.3.4.
1337         * sysdeps/alpha/fpu/Versions (libm): Likewise.
1338         * sysdeps/alpha/fpu/cfloat-compat.h (cfloat_versions): Likewise.
1339         * sysdeps/alpha/fpu/s_clog10f.c (clog10f): Likewise.
1341 2004-01-22  Andreas Jaeger  <aj@suse.de>
1343         * sysdeps/ieee754/dbl-64/e_pow.c (log2): Rename to my_log2 to
1344         avoid warnings for builtin function log2.
1346         * sysdeps/unix/sysv/linux/x86_64/setcontext.S: Add proper unwind
1347         information.
1349 2004-01-20  Ulrich Drepper  <drepper@redhat.com>
1351         * sysdeps/unix/sysv/linux/sys/epoll.h: Add EPOLLONESHOT.
1352         * sysdeps/unix/sysv/linux/x86_64/sys/epoll.h: Likewise.
1353         Patch by Davide Libenzi.
1355         * sysdeps/unix/sysv/linux/kernel-features.h: Define
1356         __ASSUME_NO_CLONE_DETACHED for 2.6.2+ kernels.
1358         * catgets/Makefile ($(objpfx)de.msg): Run sed in C locale.
1360         * sysdeps/unix/sysv/linux/readahead.c (__readahead): Use off64_t
1361         instead of loff_t.  Include <fcntl.h>.
1362         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Add readahead prototype.
1363         * sysdeps/unix/sysv/linux/arm/bits/fcntl.h: Likewise.
1364         * sysdeps/unix/sysv/linux/cris/bits/fcntl.h: Likewise.
1365         * sysdeps/unix/sysv/linux/hppa/bits/fcntl.h: Likewise.
1366         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise.
1367         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
1368         * sysdeps/unix/sysv/linux/m68k/bits/fcntl.h: Likewise.
1369         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
1370         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
1371         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
1372         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise.
1373         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
1375         * elf/dl-load.c: Don't add attribute_relro to max_dirnamelen.
1377         * sysdeps/generic/inttypes.h: Fix PRI*FAST{16,32} macros.
1379 2003-12-31  Bruno Haible  <bruno@clisp.org>
1381         * iconvdata/iso_6937-2.c (to_ucs4): Map 0x7E to U+007E, not U+203E.
1382         Map 0xA6 to U+0023. Map 0xA8 to U+00A4.
1383         (to_ucs4_comb): Map 0xC5 0x20 to U+00AF.
1384         (from_ucs4): Map U+00ED to 0xC2 0x69, not 0xC2 0xE9.
1385         (BODY for TO_LOOP): Don't map U+02DC. Map U+02DD to 0xCD 0x20, not
1386         0x00 0x20. Don't map U+2500..U+25E3.
1388 2004-01-19  Jakub Jelinek  <jakub@redhat.com>
1390         * posix/regexec.c (get_subexp): Remove bkref_str variable.
1391         Extend buffers if needed before comparisons.
1392         (get_subexp_sub): Handle clean_state_log_if_needed failure.
1394 2004-01-17  Ulrich Drepper  <drepper@redhat.com>
1396         * sysdeps/i386/i486/bits/atomic.h (atomic_add): Fix test for using
1397         atomic_decrement.  Patch by Davin McCall.
1399 2004-01-13  Daniel Jacobowitz  <drow@mvista.com>
1401         * sysdeps/powerpc/nofpu/sim-full.c (__sim_exceptions)
1402         (__sim_disabled_exceptions, __sim_round_mode): Declare with
1403         hidden data and nocommon.
1404         * sysdeps/powerpc/nofpu/soft-supp.h (__sim_exceptions)
1405         (__sim_disabled_exceptions, __sim_round_mode): Use
1406         libc_hidden_proto.
1407         * sysdeps/powerpc/soft-fp/sfp-machine.h (__sim_exceptions)
1408         (__sim_disabled_exceptions, __sim_round_mode): Likewise.
1410 2004-01-16  Ulrich Drepper  <drepper@redhat.com>
1412         * elf/elf.h: Define PT_IA_64_HP_OPT_ANOT, PT_IA_64_HP_HSL_ANOT, and
1413         PT_IA_64_HP_STACK.
1415 2004-01-16  Richard Henderson  <rth@redhat.com>
1417         * include/unistd.h (__libc_enable_secure): Mark attribute_relro.
1418         (__libc_enable_secure_internal): Likewise.
1420         * elf/dl-load.c: Don't declare __libc_stack_end.
1421         * sysdeps/generic/libc-start.c: Likewise.
1422         * sysdeps/unix/sysv/linux/dl-execstack.c: Likewise.
1423         * sysdeps/generic/segfault.c: Likewise.  Include ldsodefs.h.
1424         * sysdeps/generic/backtrace.c: Likewise.
1426 2004-01-15  Ulrich Drepper  <drepper@redhat.com>
1428         * Versions.def: Add GLIBC_2.3.4.
1430 2004-01-15  Richard Henderson  <rth@redhat.com>
1432         * sysdeps/unix/alpha/sysdep.h: Revert last change.
1434 2004-01-15  Richard Henderson  <rth@redhat.com>
1436         * sysdeps/alpha/dl-machine.h (RTLD_START): Use _dl_argv_internal.
1438         * sysdeps/unix/alpha/sysdep.h [PIC] (SYSCALL_ERROR_HANDLER): Use
1439         !samegp relocation.
1441 2004-01-15  Richard Henderson  <rth@redhat.com>
1443         * sysdeps/unix/sysv/linux/alpha/Makefile [stdlib]: Process
1444         ucontext-offsets.sym.
1445         * sysdeps/unix/sysv/linux/alpha/getcontext.S: New file.
1446         * sysdeps/unix/sysv/linux/alpha/makecontext.S: New file.
1447         * sysdeps/unix/sysv/linux/alpha/setcontext.S: New file.
1448         * sysdeps/unix/sysv/linux/alpha/swapcontext.S: New file.
1449         * sysdeps/unix/sysv/linux/alpha/ucontext-offsets.sym: New file.
1451 2004-01-15  Richard Henderson  <rth@redhat.com>
1453         * sysdeps/unix/sysv/linux/alpha/rt_sigaction.S: Prefix stubs with
1454         __syscall_, move nop inside, adjust users by +4.
1456 2004-01-14  Steven Munroe  <sjmunroe@us.ibm.com>
1458         * include/libc-symbols.h [HAVE_ASM_GLOBAL_DOT_NAME]
1459         (_symbol_version): Use C_SYMBOL_DOT_NAME to create '.'ed symbols.
1460         (_default_symbol_version): Use C_SYMBOL_DOT_NAME to create '.'ed
1461         symbols.
1462         * sysdeps/powerpc/Makefile: Add rtld-global-offsets.sym to
1463         gen-as-const-headers.
1464         * sysdeps/powerpc/elf/rtld-global-offsets.sym: New file.
1465         * sysdeps/powerpc/sysdep.h: Define v# symbols for vector registers.
1466         Define PPC_FEATURE_* masks for Aux Vector AT_HWCAP.
1467         * sysdeps/unix/sysv/linux/kernel-features.h
1468         (__ASSUME_SWAPCONTEXT_SYSCALL): Define for PPC and 2.6.0 kernels.
1469         * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h [!__WORDSIZE == 32]:
1470         Declare mcontext_t inline and include altivec state for 64-bit.
1471         * sysdeps/unix/sysv/linux/powerpc/powerpc64/Versions: Add GLIBC_2.3.4
1472         versions for setcontext, getcontext, and swapcontext.
1474         * sysdeps/unix/sysv/linux/powerpc/powerpc64/Versions: Add GLIBC_2.3.4
1475         versions for setcontext, getcontext, swapcontext, and makecontext.
1476         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S
1477         (__getcontext):  Upgrade to save Altivec regs and version GLIBC_2_3_4.
1478         [SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)] (__novec_getcontext):
1479         Compatible with GLIBC_2.3.3 release.
1480         * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S
1481         (__makecontext): Use parm save area instead of compiler_dw to hold
1482         context pointer.
1483         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S
1484         (__setcontext):  Upgrade to restore Altivec regs and version
1485         GLIBC_2_3_4.
1486         [SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)] (__novec_setcontext):
1487         Compatible with GLIBC_2.3.3 release.
1488         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S
1489         (__swapcontext): Upgrade to swap Altivec regs and version GLIBC_2_3_4.
1490         [SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)] (__novec_swapcontext):
1491         Compatible with GLIBC_2.3.3 release.
1492         * sysdeps/unix/sysv/linux/powerpc/powerpc64/ucontext_i.h
1493         (SIGCONTEXT_V_REGS_PTR, SIGCONTEXT_V_RESERVE): Defined.
1495 2004-01-12  Steven Munroe  <sjmunroe@us.ibm.com>
1497         * sysdeps/unix/sysv/linux/powerpc/powerpc32/Versions: Add GLIBC_2.3.4
1498         versions for setcontext, getcontext, swapcontext, and makecontext.
1499         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S
1500         (__getcontext):  Upgrade to save Altivec regs and version GLIBC_2_3_4.
1501         [SHLIB_COMPAT (libc, GLIBC_2_3_3, GLIBC_2_3_4)] (__novec_getcontext):
1502         Compatible with GLIBC_2.3.3 release.
1503         * sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S
1504         (__makecontext): Upgrade to align for Altivec regs and version
1505         GLIBC_2_3_4.
1506         [SHLIB_COMPAT (libc, GLIBC_2_3_3, GLIBC_2_3_4)] (__novec_makecontext):
1507         Compatible with GLIBC_2.3.3 release.
1508         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S
1509         (__setcontext):  Upgrade to restore Altivec regs and version
1510         GLIBC_2_3_4.
1511         [SHLIB_COMPAT (libc, GLIBC_2_3_3, GLIBC_2_3_4)] (__novec_setcontext):
1512         Compatible with GLIBC_2.3.3 release.
1513         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S
1514         (__swapcontext): Upgrade to swap Altivec regs and version GLIBC_2_3_4.
1515         [SHLIB_COMPAT (libc, GLIBC_2_3_3, GLIBC_2_3_4)]
1516         (__novec_swapcontext): Compatible with GLIBC_2.3.3 release.
1517         * sysdeps/unix/sysv/linux/powerpc/powerpc32/ucontext_i.h:
1518         (_UC_VSCR, _UC_VRSAVE): Define.
1519         (_FRAME_BACKCHAIN, _FRAME_LR_SAVE,_FRAME_PARM_SAVE1,_FRAME_PARM_SAVE2,
1520         _FRAME_PARM_SAVE3, _FRAME_PARM_SAVE4): Defined.
1522 2004-01-15  Ulrich Drepper  <drepper@redhat.com>
1524         * elf/rtld.c: Handle platforms with HP_TIMING_NONAVAIL defined.
1526 2004-01-16  Alfred M. Szmidt  <ams@kemisten.nu>
1528         * sysdeps/generic/dl-execstack.c (_dl_make_stack_executable): Adjust
1529         parameter type.
1531 2004-01-15  Ulrich Drepper  <drepper@redhat.com>
1533         * elf/elf.h: Fix typo in comment.
1535         * sysdeps/generic/dl-sysdep.c: Initialize __libc_stack_end.
1536         * elf/rtld.c: Initialize _dl_argv to allow aliasing.
1538         * resolv/resolv.h: Add RES_USEBSTRING.
1539         * resolv/res_debug.c (p_option): Add handling for RES_USE_INET6,
1540         RES_ROTATE, RES_NOCHECKNAME, and RES_USEBSTRING.
1541         * resolv/res_init.c (res_setioptions): Recognize ip6-bytestring.
1542         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Only perform
1543         bytestring IPv6 lookup with RES_USEBSTRING option is selected.
1544         Otherwise use the two nibble formats.
1546 2004-01-14  Ulrich Drepper  <drepper@redhat.com>
1548         * configure.in: Define HAVE_Z_RELRO if the linker supports -z relro.
1549         * config.h.in: Add entry for HAVE_Z_RELRO.
1550         * include/libc-symbols.h: Define attribute_relro.
1551         * elf/dl-load.c: Add attribute_relro to env_path_list, capstr, ncapstr,
1552         max_capstrlen, and max_dirnamelen definitions.
1553         * elf/rtld.c: Add attribute_relro to _dl_argc, _dl_argv, _dl_skip_args,
1554         load_time, start_time, library_path, preloadlist, version_info,
1555         any_debug.
1556         Remove rtld_total_time.  Make it a local variable.  Pass pointer to
1557         it to print_statistics.  Change print_statistics accordingly.
1558         * sysdeps/generic/dl-sysdep.c: Add attribute_relro to _dl_auxv.  Use
1559         attribute_relro instead of explicitly assigning variable to the
1560         .data.rel.ro section for __libc_enable_secure and __libc_stack_end.
1561         * sysdeps/generic/ldsodefs.h: Declare __libc_stack_end, _dl_argc,
1562         _dl_argv, _dl_argv_internal with attribute_relro.
1564 2004-01-13  Segher Boessenkool  <boessen@de.ibm.com>
1566         * Makerules (gen-as-const): Don't silently continue on failure.
1568 2004-01-14  Steven Munroe  <sjmunroe@us.ibm.com>
1570         * sysdeps/generic/dl-sysdep.c: Define __libc_stack_end with
1571         rtld_hidden_data_def.
1573 2004-01-14  Ulrich Drepper  <drepper@redhat.com>
1575         * libio/libio.h: Add const to function tables types.
1576         * libio/libioP.h: Likewise.
1577         * login/utmp-private.h: Likewise.
1578         * libio/fileops.c: Add const to jump table variable definition.
1579         * libio/genops.c: Likewise.
1580         * libio/iofopncook.c: Likewise.
1581         * libio/iopopen.c: Likewise.
1582         * libio/memstream.c: Likewise.
1583         * libio/obprintf.c: Likewise.
1584         * libio/oldfileops.c: Likewise.
1585         * libio/oldiopopen.c: Likewise.
1586         * libio/strops.c: Likewise.
1587         * libio/vsnprintf.c: Likewise.
1588         * libio/vswprintf.c: Likewise.
1589         * libio/wfileops.c: Likewise.
1590         * libio/wstrops.c: Likewise.
1591         * login/getutent_r.c: Likewise.
1592         * login/getutid_r.c Likewise.
1593         * login/getutline_r.c: Likewise.
1594         * sysdeps/generic/utmp_file.c: Likewise.
1596 2004-01-09  Bruno Haible  <bruno@clisp.org>
1598         * intl/gmo.h (MO_REVISION_NUMBER_WITH_SYSDEP_I): New definition.
1599         * intl/loadmsgcat.c (get_sysdep_segment_value): Handle "I".
1600         (_nl_load_domain): Treat major revision 1 like major revision 0.
1602 2004-01-11  Bruno Haible  <bruno@clisp.org>
1604         * stdio-common/vfprintf.c (vfprintf): Disallow the 'I' flag after
1605         width or precision has been seen.
1607 2004-01-08  Bruno Haible  <bruno@clisp.org>
1609         * intl/loadmsgcat.c (_nl_load_domain): When a string pair uses a system
1610         dependent segment not known to this version of the library, ignore
1611         the string pair instead of crashing.
1613 2004-01-13  Ulrich Drepper  <drepper@redhat.com>
1615         * configure.in: Rewrite test to give gcc to clean up after itself.
1616         Patch by Greg Schafer.
1618         * posix/regex.c: Support crappy compilers and platforms which have
1619         problems with alloca.
1620         * posix/regex_internal.h: Likewise.
1621         Patch by Paolo Bonzini.
1623 2004-01-12  Paolo Bonzini  <bonzini@gnu.org>
1625         * posix/regcomp.c [_LIBC && !RE_ENABLE_I18N]:
1626         Drop code to support this, it is never true.
1627         (build_range_exp) [!_LIBC]: Do not create a range
1628         in MBCSET for a single-byte character set.
1629         (build_range_exp) [_LIBC]: Do not create a range
1630         in MBCSET for a single-byte character set without
1631         collation elements.
1632         (init_dfa): Do not conditionalize on _LIBC, it
1633         just makes the code less clear.
1634         (parse_bracket_exp): Use NON_MATCH variable in
1635         addition to "mbcset->non_match", not as an
1636         alternative.
1637         (build_charclass_op): rename NOT parameter to
1638         NON_MATCH, use it instead of declaring a variable.
1639         (parse_bracket_exp) [!_LIBC]: Pass NULL for MBCSET
1640         if the character set is single-byte.
1642 2004-01-14  Jakub Jelinek  <jakub@redhat.com>
1644         * posix/regcomp.c (peek_token_bracket): Check remaining
1645         string length before re_string_peek_byte (x, 1).
1646         (parse_bracket_symbol): Likewise.
1647         * posix/regex_internal.h (re_string_is_single_byte_char): Return
1648         true at last byte in the string.
1649         * posix/bug-regex22.c (main): Add new test.
1651 2004-01-13  Ulrich Drepper  <drepper@redhat.com>
1653         * sysdeps/generic/dl-sysdep.c: Move __libc_enable_secure into
1654         .data.rel.ro.
1656         * sysdeps/x86_64/dl-machine.h: Include <tls.h>.
1658         * elf/rtld.c (_dl_start_final): Initialze __libc_stack_end here.
1659         * sysdeps/generic/dl-sysdep.c: Define __libc_stack_end with
1660         rtld_hidden_def and move into .data.rel.ro section.
1661         * sysdeps/generic/ldsodefs.h: Declare __libc_stack_end with
1662         rtld_hidden_proto.
1663         * sysdeps/generic/libc-start.c: Only initialize __libc_stack_end here
1664         if !SHARED.
1666 2004-01-13  Richard Henderson  <rth@redhat.com>
1668         * sysdeps/unix/sysv/linux/alpha/rt_sigaction.S: Fix typo.
1670 2004-01-13  Ulrich Drepper  <drepper@redhat.com>
1672         * sysdeps/unix/sysv/linux/dl-execstack.c
1673         (_dl_make_stack_executable): Move common code in front.  Use
1674         __builtin_expect.
1676         * sysdeps/unix/sysv/linux/dl-execstack.c: Change interface.  Add
1677         challenge for caller.
1678         * sysdeps/generic/ldsodefs.h: Change declaration and type of hook
1679         member in rtld_global appropriately.
1680         * elf/dl-support.c: Likewise.
1681         * elf/dl-load.c (_dl_map_object_from_fd): Take additional paramter.
1682         Pass it on to the changed function.
1683         (_dl_map_object): Pass new parameter to _dl_map_object_from_fd.
1685 2004-01-13  Richard Henderson  <rth@redhat.com>
1687         * sysdeps/alpha/bits/atomic.h (__arch_compare_and_exchange_xxx_8_int):
1688         Cast old up to uint64_t before back down to inner width.
1689         (__arch_compare_and_exchange_xxx_16_int): Likewise.
1690         (__arch_compare_and_exchange_xxx_32_int): Likewise.
1691         (__arch_compare_and_exchange_xxx_64_int): Likewise.
1692         (__arch_compare_and_exchange_val_8_int): Cast result to
1693         the type of the memory.
1694         (__arch_compare_and_exchange_val_16_int): Likewise.
1695         (__arch_compare_and_exchange_val_32_int): Likewise.
1696         (__arch_compare_and_exchange_val_64_int): Likewise.
1697         (atomic_compare_and_exchange_bool_acq): Use __atomic_bool_bysize.
1698         (atomic_compare_and_exchange_bool_rel): Likewise.
1700         * sysdeps/unix/alpha/sysdep.h: Select inline_syscall_r0_asm
1701         based on HAVE___THREAD instead of USE_TLS.
1703         * sysdeps/unix/sysv/linux/alpha/adjtime.c (ADJTIMEX32): New.
1704         (__adjtimex_tv64): Use it.
1706         * sysdeps/unix/sysv/linux/alpha/semctl.c (__new_semctl): Cast
1707         to void* rather than directly to the compatibility structure type.
1708         * sysdeps/unix/sysv/linux/alpha/shmctl.c (__new_shmctl): Likewise.
1710         * sysdeps/unix/sysv/linux/alpha/sigaction.c (struct kernel_sigaction):
1711         Forward declare.
1713 2004-01-13  Richard Henderson  <rth@redhat.com>
1715         * Versions.def (libm): Add GLIBC_2.3.3.
1716         * sysdeps/alpha/fpu/Versions: Add __c1_c*f and c*f to GLIBC_2.3.3.
1717         * sysdeps/alpha/fpu/cabsf.c, sysdeps/alpha/fpu/cargf.c,
1718         sysdeps/alpha/fpu/cfloat-compat.h, sysdeps/alpha/fpu/cimagf.c,
1719         sysdeps/alpha/fpu/conjf.c, sysdeps/alpha/fpu/crealf.c,
1720         sysdeps/alpha/fpu/s_cacosf.c, sysdeps/alpha/fpu/s_cacoshf.c,
1721         sysdeps/alpha/fpu/s_casinf.c, sysdeps/alpha/fpu/s_casinhf.c,
1722         sysdeps/alpha/fpu/s_catanf.c, sysdeps/alpha/fpu/s_catanhf.c,
1723         sysdeps/alpha/fpu/s_ccosf.c, sysdeps/alpha/fpu/s_ccoshf.c,
1724         sysdeps/alpha/fpu/s_cexpf.c, sysdeps/alpha/fpu/s_clog10f.c,
1725         sysdeps/alpha/fpu/s_clogf.c, sysdeps/alpha/fpu/s_cpowf.c,
1726         sysdeps/alpha/fpu/s_cprojf.c, sysdeps/alpha/fpu/s_csinf.c,
1727         sysdeps/alpha/fpu/s_csinhf.c, sysdeps/alpha/fpu/s_csqrtf.c,
1728         sysdeps/alpha/fpu/s_ctanf.c, sysdeps/alpha/fpu/s_ctanhf.c: New files.
1729         * sysdeps/alpha/fpu/bits/mathdef.h: Rename complex float
1730         functions for gcc 3.3.
1732         * sysdeps/generic/s_cacosf.c, sysdeps/generic/s_cacoshf.c,
1733         sysdeps/generic/s_casinf.c, sysdeps/generic/s_casinhf.c,
1734         sysdeps/generic/s_catanf.c, sysdeps/generic/s_catanhf.c,
1735         sysdeps/generic/s_ccosf.c, sysdeps/generic/s_ccoshf.c,
1736         sysdeps/generic/s_cexpf.c, sysdeps/generic/s_clog10f.c,
1737         sysdeps/generic/s_clogf.c, sysdeps/generic/s_cpowf.c,
1738         sysdeps/generic/s_cprojf.c, sysdeps/generic/s_csinf.c,
1739         sysdeps/generic/s_csinhf.c, sysdeps/generic/s_csqrtf.c,
1740         sysdeps/generic/s_ctanf.c, sysdeps/generic/s_ctanhf.c: Don't
1741         weak_alias if the function name has been #defined.
1743         * math/cabsf.c: Move ...
1744         * sysdeps/generic/cabsf.c: ... here.
1745         * math/cargf.c: Move ...
1746         * sysdeps/generic/cargf.c: ... here.
1747         * math/cimagf.c: Move ...
1748         * sysdeps/generic/cimagf.c: ... here.
1749         * math/conjf.c: Move ...
1750         * sysdeps/generic/conjf.c: ... here.
1751         * math/crealf.c: Move ...
1752         * sysdeps/generic/crealf.c: ... here.
1754 2004-01-13  Ulrich Drepper  <drepper@redhat.com>
1756         * Makeconfig: Define relro-LDFLAGS if have-z-relro==yes.  Add it to
1757         LDFLAGS.so and LDFLAGS-rtld.
1758         (+link): Add relro-LDFLAGS.
1759         * Makeconfig (shlib.lds): Place __libc_subfreeres, __libc_atexit, and
1760         __libc_thread_subfreeres sections after .jcr section.
1761         * config.make.in: Add have-z-relro.
1762         * configure.in: Add check for -z relro option.
1763         * include/link.h (struct link_map): Add relro_addr and relro_size
1764         members.
1765         * elf/dl-load.c (_dl_map_object_from_fd): Recognize PT_GNU_RELRO.
1766         * elf/dl-reloc.c (_dl_relocate_object): At the end, make relro
1767         part of loaded segments read-only.
1768         * elf/elf.h: Define PT_GNU_RELRO.
1769         * elf/rtld.c (_dl_start): Recognize PT_GNU_RELRO of ld.so.
1770         (dl_main): Recognize PT_GNU_RELRO of the application.  Call
1771         _dl_debug_initialize and initialize l_info[DT_DEBUG] before
1772         relocations.
1774 2004-01-12  Jakub Jelinek  <jakub@redhat.com>
1776         * sysdeps/x86_64/strcspn.S: Fix typo in last patch.
1778 2004-01-11  Andreas Jaeger  <aj@suse.de>
1780         * sysdeps/x86_64/__longjmp.S: Add cfi directives.
1782 2004-01-10  Andreas Jaeger  <aj@suse.de>
1784         * sysdeps/unix/sysv/linux/x86_64/__start_context.S: Add cfi directives.
1785         * sysdeps/unix/x86_64/sysdep.S (__syscall_error): Likewise.
1786         * sysdeps/unix/sysv/linux/x86_64/vfork.S: Likewise.
1787         * sysdeps/x86_64/strcspn.S: Likewise.
1788         * sysdeps/x86_64/strspn.S: Likewise.
1790 2004-01-08  Jakub Jelinek  <jakub@redhat.com>
1792         * sysdeps/unix/sysv/linux/x86_64/clone.S (__clone): Add cfi_endproc
1793         right before syscall and cfi_startproc before PSEUDO_END.
1794         Clear %rbp in thread_start.
1796 2004-01-05  Jakub Jelinek  <jakub@redhat.com>
1798         * posix/regcomp.c (regcomp): Fix comment typo.
1799         (regfree): Free preg->translate, clear buffer, allocated, fastmap
1800         and translate fields.
1802         * posix/regcomp.c (build_charclass, buld_charclass_op): Change first
1803         argument to unsigned RE_TRANSLATE_TYPE.
1804         * posix/regex_internal.h (re_string_t): Change trans type to
1805         unsigned RE_TRANSLATE_TYPE.
1806         * posix/regex_internal.c (re_string_construct_common): Cast
1807         trans to unsigned RE_TRANSLATE_TYPE.
1808         (re_string_peek_byte_case, re_string_fetch_byte_case): Avoid fast
1809         path if pstr->trans.  Never translate the character through
1810         pstr->trans.
1811         * posix/Makefile (tests): Add bug-regex22.
1812         (bug-regex22-ENV): Set.
1813         * posix/bug-regex22.c: New test.
1815 2004-01-02  Paolo Bonzini  <bonzini@gnu.org>
1817         * posix/regex_internal.c (re_node_set_add_intersect,
1818         re_node_set_merge): Rewritten.
1819         (re_node_set_insert, re_node_set_remove_at):
1820         Avoid memmove, we know what direction we should copy and that we
1821         are copying 32-bit words.
1822         (re_node_set_compare): Iterate backwards.
1824 2003-12-30  Paul Eggert  <eggert@twinsun.com>
1826         * time/mktime.c (verify): New macro.
1827         (time_t_is_integer, twos_complement_arithmetic,
1828         right_shift_propagates_sign, base_year_is_a_multiple_of_100,
1829         C99_integer_division): Document these longstanding assumptions in the
1830         code, and verify them at compile-time.
1832 2004-01-02  Jakub Jelinek  <jakub@redhat.com>
1834         * posix/regex_internal.h (re_match_context_t): Add dfa member.
1835         * posix/regexec.c (match_ctx_free_subtops, search_cur_bkref_entry,
1836         match_ctx_add_sublast, sift_ctx_init, acquire_init_state_context,
1837         prune_impossible_nodes, check_halt_state_context, proceed_next_node,
1838         sift_states_backward, update_cur_sifted_state, check_dst_limits,
1839         check_dst_limits_calc_pos, sift_states_bkref, transit_state,
1840         check_subexp_matching_top, transit_state_sb, transit_state_mb,
1841         transit_state_bkref, get_subexp, get_subexp_sub, check_arrival,
1842         check_arrival_add_next_nodes, expand_bkref_cache, check_node_accept):
1843         Remove dfa parameter.  Get dfa from mctx.  Adjust callers.
1844         (re_search_internal): Initialize mctx.dfa.
1846         * posix/regex_internal.c (re_node_set_insert): Remove unused variables.
1848         * posix/regex_internal.h (re_dfa_t): Add syntax field.
1849         * posix/regcomp.c (parse): Initialize dfa->syntax.
1850         * posix/regexec.c (acquire_init_state_context,
1851         prune_impossible_nodes, check_matching, check_halt_state_context,
1852         proceed_next_node, sift_states_iter_mb, sift_states_backward,
1853         update_cur_sifted_state, sift_states_bkref, transit_state,
1854         transit_state_sb, transit_state_mb, transit_state_bkref,
1855         get_subexp, get_subexp_sub, check_arrival, expand_bkref_cache,
1856         build_trtable): Remove preg argument, add dfa argument instead
1857         and remove dfa = preg->buffer initialization in the body.
1858         Adjust all callers.
1859         (check_node_accept_bytes, group_nodes_into_DFAstates,
1860         check_node_accept): Likewise.  Use dfa->syntax instead of
1861         preg->syntax.
1862         (check_arrival_add_next_nodes): Remove preg argument.
1864         * posix/regex_internal.h (re_match_context_t): Make input
1865         re_string_t instead of a pointer to it.
1866         * posix/regex_internal.c (re_string_construct_common): Don't clear
1867         pstr here...
1868         (re_string_construct): ... but only here.
1869         * posix/regexec.c (match_ctx_init): Remove input argument.  Don't
1870         initialize fields to zero.
1871         (re_search_internal): Move input into mctx.input.
1872         (acquire_init_state_context, check_matching,
1873         check_halt_state_context, proceed_next_node,
1874         clean_state_log_if_needed, sift_states_bkref, sift_states_iter_mb,
1875         transit_state, transit_state_sb, transit_state_mb,
1876         transit_state_bkref, get_subexp, check_arrival,
1877         check_arrival_add_next_nodes, check_node_accept, extend_buffers):
1878         Change mctx->input into &mctx->input and mctx->input->field into
1879         mctx->input.field.
1881 2004-01-02  Jakub Jelinek  <jakub@redhat.com>
1882             Paolo Bonzini  <bonzini@gnu.org>
1884         * posix/regex_internal.h (re_const_bitset_ptr_t): New type.
1885         (re_string_t): Add newline_anchor, word_char and word_ops_used fields.
1886         (re_dfa_t): Change word_char type to bitset.  Add word_ops_used field.
1887         (re_string_context_at, re_string_reconstruct): Remove last argument.
1888         * posix/regex_internal.c (re_string_allocate): Initialize
1889         pstr->word_char and pstr->word_ops_used.
1890         (re_string_context_at): Remove newline_anchor argument.
1891         Use input->newline_anchor instead, swap && conditions.
1892         Only use IS_WIDE_WORD_CHAR if input->word_ops_used != 0.
1893         Use input->word_char bitmap instead of IS_WORD_CHAR.
1894         (re_string_reconstruct): Likewise.
1895         Adjust re_string_context_at caller.
1896         * posix/regexec.c (acquire_init_state_context,
1897         check_halt_state_context, transit_state, transit_state_sb,
1898         transit_state_mb, transit_state_bkref, check_arrival,
1899         check_node_accept): Adjust re_string_context_at and
1900         re_string_reconstruct callers.
1901         (re_search_internal): Likewise.  Set input.newline_anchor.
1902         (build_trtable): Use dfa->word_char bitmap instead of IS_WORD_CHAR.
1903         * posix/regcomp.c (init_word_char): Change return type to void.
1904         Set dfa->word_ops_used.
1905         (free_dfa_content): Don't free dfa->word_char.
1906         (parse_expression): Remove error handling for init_word_char.
1908 2004-01-01  Paolo Bonzini  <bonzini@gnu.org>
1910         * posix/regex_internal.h (re_dfastate_t): Fix size of the CONTEXT
1911         bitfield.
1913         * posix/regex_internal.c (re_node_set_insert):  Rewrite.
1915 2004-01-01  Ulrich Drepper  <drepper@redhat.com>
1917         * posix/getconf.c: Update copyright year.
1918         * nss/getent.c: Likewise.
1919         * nscd/nscd_nischeck.c: Likewise.
1920         * iconv/iconvconfig.c: Likewise.
1921         * iconv/iconv_prog.c: Likewise.
1922         * elf/ldconfig.c: Likewise.
1923         * catgets/gencat.c: Likewise.
1924         * csu/version.c: Likewise.
1925         * elf/ldd.bash.in: Likewise.
1926         * elf/sprof.c (print_version): Likewise.
1927         * locale/programs/locale.c: Likewise.
1928         * locale/programs/localedef.c: Likewise.
1929         * nscd/nscd.c (print_version): Likewise.
1930         * debug/xtrace.sh: Likewise.
1931         * malloc/memusage.sh: Likewise.
1932         * malloc/mtrace.pl: Likewise.
1934 2004-01-01  Petter Reinholdtsen  <pere@hungry.com>
1936         * stdlib/strfmon.c: Make formatting of left-justified currency
1937         values match the the POSIX standard.  When using format string
1938         "[%-14#5.4n]" to print -123.45, the result should be
1939         "[-$   123.4500 ]", not "[-$123.4500    ]".
1941 2004-01-01  Andreas Jaeger  <aj@suse.de>
1943         * resolv/Makefile (generated): New.
1945 2003-12-31  Joseph S. Myers  <jsm@polyomino.org.uk>
1947         * CONFORMANCE: Update.
1949 2003-12-30  Paul Eggert  <eggert@twinsun.com>
1951         * time/mktime.c: (my_mktime_localtime_r):
1952         Remove.  All uses changed to __localtime_r.
1953         (__localtime_r) [!defined _LIBC]: New macro.  Include "time_r.h" to
1954         get its implementation.
1955         Fix compile-command to allow for TIME_R_POSIX.
1957         * time/strftime.c (my_strftime_gmtime_r, my_strftime_localtime_r):
1958         Remove.  All uses changed to __localtime_r and __gmtime_r.
1959         (__gmtime_r, __localtime_r) [!HAVE_TM_GMTOFF]: New macros.
1960         Include "time_r.h" to get their implementations.
1962         * time/timegm.c: Allow use in GNU applications outside glibc.
1963         [defined HAVE_CONFIG_H]: Include <config.h>.
1964         [!defined _LIBC]: Include "timegm.h", <time_r.h>.
1965         Define __gmtime_r, and declare __mktime_internal.
1966         (timegm): Define via a prototype, since we can safely assume C89 now.
1968         * time/mktime.c (check_result): Use less-confusing report format.
1969         "long" -> "long int", as per usual GNU style.
1970         (main): Likewise.
1971         Don't loop if the iteration overflows time_t.
1972         Allow a negative step in the iteration.
1974         * time/mktime.c: Assume freestanding C89 or better.
1975         (HAVE_LIMITS_H, STDC_HEADERS) [defined _LIBC]: Remove;
1976         assume they're 1.
1977         (__P): Remove; not used.
1978         (CHAR_BIT, INT_MIN, INT_MAX): Remove; <limits.h> defines them.
1979         (mktime, not_equal_tm, print_tm, check_result, main): Use prototypes.
1980         Prototypes use const * where appropriate.
1981         (main) [DEBUG]: Fix typo in testing code uncovered by above changes,
1982         which caused the testing code to dump core on some hosts.
1984 2003-12-31  Ulrich Drepper  <drepper@redhat.com>
1986         * locale/setlocale.c (setlocale): Avoid duplicating locale names
1987         if we can reuse old strings.
1989         * inet/rcmd.c: Provide better error message in case of unknown
1990         host.  Remove USE_IN_LIBIO.
1992         * nscd/nscd.init: Updated version, more conforming with current
1993         init file standards.
1995         * nscd/nscd-client.h (_PATH_NSCDPID): Move the file into
1996         /var/run/nscd directory.
1997         (_PATH_NSCDSOCKET): Likewise.
1999         * test-skeleton.c (timeout_handler): Fix error message.
2001         * elf/dl-dst.h (DL_DST_REQUIRED): Avoid the complex operations if
2002         CNT == 0.
2004 2003-12-30  Jakub Jelinek  <jakub@redhat.com>
2006         * posix/regexec.c (get_subexp): Only set bkref_str after the first
2007         loop, use buf + bkref_str_off in the loop instead.
2008         * posix/bug-regex11.c (tests): Add 3 new tests.
2010         * posix/regexec.c (clean_state_log_if_need): Rename to...
2011         (clean_state_log_if_needed): ...this.
2012         (transit_state_mb, get_subexp_sub): Adjust callers.
2014         * sunrpc/pmap_clnt.c (pmap_set): Do CLNT_DESTROY even if CLNT_CALL
2015         failed.  Reported by Steve Grubb.
2017 2003-12-29  Ulrich Drepper  <drepper@redhat.com>
2019         * elf/elf.h: Add a few definitions from Solaris 9.
2021 2003-12-29  Andreas Schwab  <schwab@suse.de>
2023         * stdio-common/Makefile (CFLAGS-errlist.c, CFLAGS-siglist.c): Add
2024         $(fno_unit_at_a_time) to avoid reordering assembler output.
2026 2003-12-29  Jakub Jelinek  <jakub@redhat.com>
2028         * posix/regexec.c (re_copy_regs): Revert comment change.
2029         Avoid memory leak if realloc fails.
2030         (proceed_next_node): Return -2 if re_node_set_insert fails.
2031         Return -2 if push_fail_stack fails.
2032         (push_fail_stack): Change fs->alloc only after successful realloc.
2033         (pop_fail_stack): Formatting.
2034         (set_regs): If proceed_next_node returns -2, free eps_via_nodes and fs.
2035         (check_arrival_add_next_nodes): Merge identical statements
2036         from if branches.
2038         * signal/Makefile (tests): Add tst-raise.
2039         * signal/tst-raise.c: New test.
2041 2003-12-28  Ulrich Drepper  <drepper@redhat.com>
2043         * posix/regcomp.c (mark_opt_subexp_iter): Declare IDX as int.
2045         * posix/regexec.c (re_copy_regs): Fix testing for failed allocation.
2046         (push_fail_stack): Add missing check for failed memory allocation.
2048         * libio/libio.h: Use __builtin_expect in _IO_getc_unlocked,
2049         _IO_peekc_unlocked, _IO_putc_unlocked, _IO_getwc_unlocked, and
2050         _IO_putwc_unlocked.
2052 2003-12-28  Andreas Jaeger  <aj@suse.de>
2054         * sysdeps/ieee754/dbl-64/e_j0.c (__ieee754_y0): Raise only
2055         overflow for 0 as argument. Raise Invalid exception for negative args.
2056         * sysdeps/ieee754/dbl-64/e_jn.c (__ieee754_yn): Likewise.
2057         * sysdeps/ieee754/dbl-64/e_j1.c (__ieee754_y0): Likewise.
2058         * sysdeps/ieee754/ldb-128/e_jnl.c (__ieee754_ynl): Likewise.
2059         * sysdeps/ieee754/ldb-128/e_j0l.c (__ieee754_y0l): Likewise.
2060         * sysdeps/ieee754/ldb-128/e_j1l.c (__ieee754_y1l): Likewise.
2061         * sysdeps/ieee754/ldb-96/e_jnl.c (__ieee754_ynl): Likewise.
2062         * sysdeps/ieee754/ldb-96/e_j0l.c (__ieee754_y0l): Likewise.
2063         * sysdeps/ieee754/ldb-96/e_j1l.c (__ieee754_y1l): Likewise.
2064         * sysdeps/ieee754/flt-32/e_jnf.c (__ieee754_ynf): Likewise.
2065         * sysdeps/ieee754/flt-32/e_j0f.c (__ieee754_y0f): Likewise.
2066         * sysdeps/ieee754/flt-32/e_j1f.c (__ieee754_y1f): Likewise.
2068         * math/libm-test.inc (yn_test): Expect invalid exception for
2069         negative arguments.
2070         (y0_test): Likewise.
2071         (y1_test): Likewise.
2073         * sysdeps/ieee754/dbl-64/e_exp.c (__ieee754_exp): Do not raise
2074         execptions for exp(NaN).
2076 2003-12-23  Paolo Bonzini  <bonzini@gnu.org>
2078         * posix/regex_internal.c (re_dfa_add_node): Initialize opt_subexp.
2079         * posix/regex_internal.h (re_token_type_t): Put OP_DUP_PLUS
2080         among the tokens, rather than among the epsilon-transiting nodes.
2081         (re_token_t): Add the opt_subexp flag.
2082         * posix/regcomp.c (optimize_utf8, calc_first,
2083         calc_next, calc_epsdest): Don't consider OP_DUP_PLUS.
2084         (mark_opt_subexp, mark_opt_subexp_iter): New functions.
2085         (parse_dup_op): Mostly rewritten, lowering OP_DUP_PLUS to
2086         OP_DUP_ASTERISK and marking optional subexpressions
2087         as such using mark_opt_subexp.
2088         * posix/regexec.c (set_regs): Initialize PREV_INDEX_MATCH
2089         and pass it to update_regs.
2090         (update_regs): Use the PREV_INDEX_MATCH parameter, together
2091         with the opt_subexp flag, in order to discard a final empty
2092         match of a repeated subexpression.
2093         * posix/BOOST.tests: Adjust test vectors.
2094         * posix/PCRE.tests: Likewise.
2095         * posix/rxspencer/tests: Likewise.
2097 2000-05-22  Jakub Jelinek  <jakub@redhat.com>
2099         * sysdeps/i386/fpu/bits/mathinline.h (__expm1_code): Avoid using ?:
2100         with omitted middle operand.
2102 2003-12-22  Jakub Jelinek  <jakub@redhat.com>
2104         * posix/regcomp.c: Remove C99-ism.
2105         * posix/tst-rxspencer.c: Likewise.
2106         Based on a patch by Alex Davis <alex14641@yahoo.com>.
2108 2003-12-17  Paolo Bonzini  <bonzini@gnu.org>
2110         * posix/regex_internal.h [!_LIBC] (internal_function): Define.
2111         (re_string_allocate, re_string_construct, re_string_reconstruct,
2112         re_string_realloc_buffers, build_wcs_buffer,
2113         build_wcs_upper_buffer, build_upper_buffer,
2114         re_string_translate_buffer, re_string_destruct,
2115         re_string_elem_size_at, re_string_char_size_at,
2116         re_string_wchar_at, re_string_context_at,
2117         re_node_set_alloc, re_node_set_init_1
2118         re_node_set_init_2, re_node_set_init_copy,
2119         re_node_set_add_intersect, re_node_set_init_union,
2120         re_node_set_merge, re_node_set_insert
2121         re_node_set_compare, re_node_set_contains
2122         re_node_set_remove_at, re_dfa_add_node,
2123         re_acquire_state, re_acquire_state_context,
2124         free_state): Add internal_function to declaration.
2126         * posix/regexec.c (match_ctx_init, match_ctx_clean,
2127         match_ctx_free, match_ctx_free_subtops,
2128         match_ctx_add_entry, search_cur_bkref_entry,
2129         match_ctx_clear_flag, match_ctx_add_subtop,
2130         match_ctx_add_sublast, sift_ctx_init,
2131         re_search_internal, re_search_2_stub, re_search_stub,
2132         re_copy_regs, acquire_init_state_context,
2133         prune_impossible_nodes, check_matching,
2134         check_halt_node_context, check_halt_state_context
2135         update_regs, proceed_next_node, push_fail_stack,
2136         pop_fail_stack, set_regs, free_fail_stack_return,
2137         sift_states_iter_mb, sift_states_backward
2138         update_cur_sifted_state, add_epsilon_src_nodes,
2139         sub_epsilon_src_nodes, check_dst_limits,
2140         check_dst_limits_calc_pos, check_subexp_limits,
2141         sift_states_bkref, clean_state_log_if_need,
2142         merge_state_array, transit_state,
2143         check_subexp_matching_top, transit_state_sb,
2144         transit_state_mb, transit_state_bkref,
2145         get_subexp, get_subexp_sub, find_subexp_node,
2146         check_arrival, check_arrival_add_next_nodes,
2147         find_collation_sequence_value, check_arrival_expand_ecl,
2148         check_arrival_expand_ecl_sub, expand_bkref_cache,
2149         build_trtable, check_node_accept_bytes, extend_buffers,
2150         group_nodes_into_DFAstates, check_node_accept): Likewise.
2152         * posix/regex_internal.c (re_string_construct_common,
2153         re_string_skip_chars, create_newstate_common,
2154         register_state, create_ci_newstate, create_cd_newstate,
2155         calc_state_hash): Likewise.
2156         (re_string_peek_byte_case, re_fetch_byte_case): Change
2157         declaration from ANSI to K&R.
2159 2003-12-16  Paolo Bonzini  <bonzini@gnu.org>
2161         * posix/regexec.c (build_trtable): Don't allocate the trtable
2162         until state->word_trtable is known.  Don't hardcode UINT_BITS
2163         iterations on each bitset item.
2165 2003-12-22  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>
2167         * sysdeps/unix/sysv/linux/ia64/dl-static.c (_dl_static_init):
2168         Initialize REF before passing it to _dl_lookup_symbol.
2170 2003-12-21  Roland McGrath  <roland@frob.com>
2172         * sysdeps/mach/hurd/dl-sysdep.c (_exit): Define with attribute_hidden.
2174 2003-12-21  Jakub Jelinek  <jakub@redhat.com>
2176         * posix/regcomp.c (duplicate_node, duplicate_node_closure): Revert
2177         2003-11-24 changes.
2178         * posix/regexec.c (group_nodes_into_DFAstates): For CHARACTER with
2179         NEXT_{,NOT}WORD_CONSTRAINT check word_char bit.
2180         * posix/bug-regex19.c (tests): Add new tests.
2182         * posix/regexec.c (check_dst_limits_calc_pos): Fix formatting.
2184         * posix/regcomp.c (parse_dup_op): Return NULL if dup_elem is NULL,
2185         after checking syntax.  Optimize.
2186         (calc_first): Fix comment.
2187         * posix/bug-regex13.c (tests): Add new tests.
2189 2003-12-21  Roland McGrath  <roland@redhat.com>
2191         * manual/arith.texi (Parsing of Integers): Typo fix.
2193 2003-12-20  Roland McGrath  <roland@frob.com>
2195         * sysdeps/generic/ifreq.c (__ifreq) [_HAVE_SA_LEN]: Fix typo:
2196         add missing dereference of IFREQS before counting loop.
2198 2003-12-21  Andreas Schwab  <schwab@suse.de>
2200         * sysdeps/m68k/m68020/bits/atomic.h: Avoid matching memory
2201         constraints.
2203 2003-12-20  Ulrich Drepper  <drepper@redhat.com>
2205         * elf/rtld.c (dl_main): Optimize order of subexpressions in if().
2207 2003-12-18  Ulrich Drepper  <drepper@redhat.com>
2209         * stdio-common/printf_fp.c: Add support to use alternative decimal
2210         digits.
2211         * stdio-common/vfprintf.c (vfprintf): Pass use_outdigits flags to
2212         __printf_fp.  Patch by Hamed Malek <hamed@bamdad.org>.
2214 2003-12-18  Carlos O'Donell  <carlos@baldric.uwo.ca>
2216         * sysdeps/unix/sysv/linux/hppa/clone.S (__clone) [PIC]: Save PIC,
2217         reload PIC if we need to call __syscall_error, cleanup asm.
2219 2003-12-17  Carlos O'Donell  <carlos@baldric.uwo.ca>
2221         * sysdeps/hppa/fpu/fclrexcpt.c (feclearexcept): Right shift
2222         FE_ALL_EXCEPT before complimenting.
2223         * sysdeps/hppa/fpu/fegetenv.c (fegetenv): Use asm 'ma,' completer,
2224         and gcc '+r' constraint.
2225         * sysdeps/hppa/fpu/feholdexcpt.c (feholdexcept): Likewise.
2226         * sysdeps/hppa/fpu/fesetenv.c (fesetenv): Likewise.
2227         * sysdeps/hppa/fpu/feupdateenv.c (feupdateenv): Read raised
2228         exception bits, OR with envp, pass to fesetenv.
2229         * sysdeps/hppa/fpu/fraiseexcpt.c (feraiseexcept): Add delayed
2230         exception flushing, FE_UNDERFLOW is DBL_MIN/3.0, FE_INEXACT is
2231         triggered by M_PI/69.69 converted to single precision.
2232         * sysdeps/hppa/fpu/fsetexcptflg.c (fesetexceptflag): Set enable
2233         bits not raised exception bits.
2235         * sysdeps/hppa/Makefile: Add dl-symaddr and dl-fptr to the
2236         correct build strings.
2237         * sysdeps/hppa/dl-fptr.h: New file.
2238         * sysdeps/hppa/dl-fptr.c: Removed.
2239         * sysdeps/hppa/dl-symaddr.c (_dl_symbol_address): Use _dl_make_ftpr,
2240         remove const qualifier for map.
2241         (_dl_function_address): Removed.
2242         * sysdeps/hppa/dl-lookupcfg.h: DL_LOOKUP_ADDRESS must clear
2243         PLABEL32 bits, define DL_AUTO_FUNCTION_ADDRESS and
2244         DL_STATIC_FUNCTION_ADDRESS, DL_DT_INIT_ADDRESS and
2245         DL_DT_FINI_ADDRESS use the previous two macros.
2247 2003-12-17  Jakub Jelinek  <jakub@redhat.com>
2249         * malloc/mtrace.c (tr_old_memalign_hook): New variable.
2250         (tr_memalignhook): New function.
2251         (mtrace): Register tr_memalignhook.
2252         (muntrace): Deregister tr_memalignhook.
2253         * malloc/malloc.c (__posix_memalign): If __memalign_hook != NULL,
2254         call it directly instead of memalign_internal.
2256 2003-12-17  Ulrich Drepper  <drepper@redhat.com>
2258         * misc/mntent_r.c: Change encoding to match recently changed decoder.
2259         Patch by Alexander Achenbach <xela@slit.de>.
2261 2003-12-16  Steven Munroe  <sjmunroe@us.ibm.com>
2263         * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: Correct definition of
2264         vrregset_t.
2266 2003-12-16  Steven Munroe  <sjmunroe@us.ibm.com>
2268         * sysdeps/unix/sysv/linux/powerpc/sys/procfs.h [!__PPC64_ELF_H]: Extend
2269         conditional to include typedef elf_vrreg_t.
2271 2003-12-17  Paolo Bonzini  <bonzini@gnu.org>
2273         * posix/regexec.c (re_search_internal): Limit search to the
2274         beginning of the buffer if the initial states are empty for
2275         contexts that do not include CONTEXT_BEGBUF or, if
2276         !preg->newline_anchor, that do not include any one of
2277         CONTEXT_BEGBUF and CONTEXT_NEWLINE.
2279 2003-12-17  Andreas Jaeger  <aj@suse.de>
2281         * sysdeps/generic/system.c (__libc_system): Fix typo, reported by
2282         Kevin Pedretti <pedretti@ieee.org>.
2284 2003-12-17  Ulrich Drepper  <drepper@redhat.com>
2286         * elf/rtld.c: Don't use strong_alias to define _rtld_local.  This
2287         removes the visibility attributes which might be defined earlier
2288         for some gcc versions.  Instead spell out what strong_alias does
2289         plus the visibility.
2291 2003-12-16  Petter Reinholdtsen  <pere@hungry.com>
2293         * posix/regex_internal.h: Make sure the regex code compile
2294         with non-GCC compilers by hiding attributes.
2296 2003-12-16  Jakub Jelinek  <jakub@redhat.com>
2297             Paolo Bonzini  <bonzini@gnu.org>
2299         * posix/regexec.c (group_nodes_into_DFAstates): Never produce
2300         dests_ch items that are empty.
2302 2003-12-14  Paolo Bonzini  <bonzini@gnu.org>
2304         * posix/regexec.c (check_arrival): Remove duplicate test.
2306 2003-12-15  Ulrich Drepper  <drepper@redhat.com>
2308         * posix/regcomp.c: Make !RE_ENABLE_I18N work again.
2309         * posix/regex_internal.c: Likewise.
2310         * posix/regexec.c: Likewise.
2311         Patch by Paolo Bonzini.
2313 2003-12-14  Paolo Bonzini  <bonzini@gnu.org>
2315         * posix/regex_internal.c (re_acquire_state_context):
2316         Compare the node sets after all the other comparisons.
2318 2003-12-13  Paolo Bonzini  <bonzini@gnu.org>
2320         * posix/regexec.c (find_subexp_node, check_arrival,
2321         check_arrival_add_next_nodes, check_arrival_expand_ecl,
2322         check_arrival_expand_ecl_sub, expand_bkref_cache):
2323         Rename the FL_OPEN parameter to TYPE, which is either
2324         OP_OPEN_SUBEXP or OP_CLOSE_SUBEXP.  Callers adjusted.
2326 2003-12-12  Andreas Jaeger  <aj@suse.de>
2328         * sysdeps/unix/sysv/linux/x86_64/syscall.S: Pass also 6th argument
2329         to syscall.
2331 2003-12-11  Ulrich Drepper  <drepper@redhat.com>
2333         * sysdeps/unix/sysv/linux/kernel-features.h: Remove __ASSUME_VSYSCALL.
2334         There might always be processes which have no vDSO.
2335         * sysdeps/generic/dl-sysdep.c: Remove __ASSUME_VSYSCALL uses.
2336         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
2338 2003-12-11  Carlos O'Donell  <carlos@baldric.uwo.ca>
2340         * sysdeps/generic/dl-fptr.c (COMPARE_AND_SWAP): Pass new and old
2341         in the right order.
2343 2003-12-01  Jes Sorensen  <jes@wildopensource.com>
2345         * rt/tst-clock.c (do_test): Print message when skipping
2346         CLOCK_PROCESS_CPUTIME_ID test.
2348         * sysdeps/unix/sysv/linux/ia64/clock_getcpuclockid.c: New file.
2349         Provide CLOCK_PROCESS_CPUTIME_ID only if /proc/sal/itc_drift is 0.
2351 2003-12-02  David Mosberger  <davidm@hpl.hp.com>
2353         * sysdeps/ia64/elf/initfini.c: Add unwind info.
2355         * sysdeps/ia64/dl-machine.h (elf_machine_matches_host): Mark with
2356         attribute "unused".
2357         (elf_machine_dynamic): Mark with attributes "unused" and "const".
2358         (elf_machine_runtime_setup): Likewise.
2360         * sysdeps/generic/dl-fptr.c (make_fptr_table): Mark with
2361         attribute "always_inline".
2362         * sysdeps/ia64/dl-machine.h (__ia64_init_bootstrap_fdesc_table):
2363         Likewise.
2365         * configure.in: Check whether compiler has libunwind support.
2366         * config.make.in (have-cc-with-libunwind): New variable.
2367         * config.h.in (HAVE_CC_WITH_LIBUNWIND): New macro.
2368         * Makeconfig (gnulib): If have-cc-with-libunwind is "yes", also
2369         mention -lunwind.
2371 2003-11-12  David Mosberger  <davidm@hpl.hp.com>
2373         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Define DO_CALL_VIA_BREAK.
2374         Redefine DO_CALL to use vdso if supported, otherwise DO_CALL_VIA_BREAK.
2375         Likewise for DO_INLINE_SYSCALL.  Make INTERNAL_SYSCALL use
2376         DO_INLINE_SYSCALL.
2378         * sysdeps/unix/sysv/linux/ia64/vfork.S: Use DO_CALL_VIA_BREAK()
2379         instead of DO_CALL().
2381         * sysdeps/unix/sysv/linux/ia64/clone2.S: Use break directly instead
2382         of DO_CALL().
2384         * sysdeps/unix/sysv/linux/ia64/brk.S (__curbrk): Restructure it
2385         to take advantage of DO_CALL() macro.
2386         * sysdeps/unix/sysv/linux/ia64/setcontext.S: Likewise.
2387         * sysdeps/unix/sysv/linux/ia64/getcontext.S: Likewise.
2389         * elf/rtld.c (dl_main): Restrict dl_sysinfo_dso check to first
2390         program header.  On ia64, the check failed previously because
2391         there are two program headers.
2393 2003-12-10  Andreas Jaeger  <aj@suse.de>
2394             Ruediger Oertel  <ro@suse.de>
2396         * sysdeps/alpha/fpu/e_sqrt.c: Mark sqrt_data as used.
2398 2003-12-07  Ulrich Drepper  <drepper@redhat.com>
2400         * sysdeps/i386/fpu/s_nexttowardf.c: Construct overflow value correctly.
2401         * sysdeps/i386/fpu/s_nexttoward.c: Likewise.
2402         * sysdeps/ieee754/ldbl-128/s_nexttoward.c: Likewise.
2403         * sysdeps/ieee754/ldbl-96/s_nexttoward.c: Likewise.
2404         * sysdeps/generic/s_nexttowardf.c: Likewise.
2405         * math/Makefile (tests): Add bug-nexttoward.
2406         * math/bug-nexttoward.c: New file.
2408         * sysdeps/generic/s_nextafter.c: Make sure overflow exception is set.
2409         * sysdeps/ieee754/flt-32/s_nextafterf.c: Likewise.
2410         * math/bug-nextafter.c (main): Add tests for overflow and negative
2411         values.
2413 2003-12-06  Ulrich Drepper  <drepper@redhat.com>
2415         * math/Makefile (tests): Add bug-nextafter.
2416         * math/bug-nextafter.c: New file.
2417         * sysdeps/generic/s_nextafter.c: Construct overflow value correctly.
2418         * sysdeps/ieee754/flt-32/s_nextafterf.c: Likewise.
2419         * math/libm-test.inc (nextafter_test): Add test for overflow after
2420         +/-FLT_MAX etc.
2422 2003-12-04  Steven Munroe  <sjmunroe@us.ibm.com>
2424         * sysdeps/powerpc/fpu/fgetexcptflg.c (__fegetexceptflag): Add masking
2425         of fenv.
2426         * sysdeps/powerpc/nofpu/fgetexcptflg.c (__fegetexceptflag): Likewise.
2428 2003-12-05  Martin Schwidefsky  <schwidefsky@de.ibm.com>
2430         * sysdeps/s390/s390-32/elf/setjmp.S (setjmp, __setjmp): Add END
2431         statements.
2432         * sysdeps/s390/s390-64/elf/setjmp.S (setjmp, __setjmp): Likewise.
2433         * sysdeps/s390/s390-32/sysdep.h (ENTRY): Add cfi_startproc directive.
2434         (END): Add cfi_endproc directive.
2435         * sysdeps/s390/s390-64/sysdep.h (ENTRY, END): Likewise.
2436         * sysdeps/unix/sysv/linux/s390/s390-32/socket.S (__socket): Remove
2437         cfi_startproc and cfi_endproc directive.
2438         * sysdeps/unix/sysv/linux/s390/s390-64/socket.S (__socket): Likewise.
2439         * sysdeps/s390/s390-32/addmul_1.S (__mpn_addmul_1): Add CFI directives.
2440         * sysdeps/s390/s390-32/add_n.S (__mpn_add_n): Likewise.
2441         * sysdeps/s390/s390-64/add_n.S (__mpn_add_n): Likewise.
2442         * sysdeps/s390/s390-32/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
2443         Likewise.
2444         * sysdeps/s390/s390-64/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
2445         Likewise.
2446         * sysdeps/s390/s390-32/mul_1.S (__mpn_mul_1): Likewise.
2447         * sysdeps/s390/s390-32/sub_n.S (__mpn_sub_n): Likewise.
2448         * sysdeps/s390/s390-64/sub_n.S (__mpn_sub_n): Likewise.
2449         * sysdeps/unix/sysv/linux/s390/s390-32/mmap64.S (__mmap64): Likewise.
2450         * sysdeps/unix/sysv/linux/s390/s390-32/mmap.S (__mmap): Likewise.
2451         * sysdeps/unix/sysv/linux/s390/s390-64/mmap.S (__mmap): Likewise.
2452         * sysdeps/unix/sysv/linux/s390/s390-32/syscall.S (syscall): Likewise.
2453         * sysdeps/unix/sysv/linux/s390/s390-64/syscall.S (syscall): Likewise.
2454         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S (__syscall_error):
2455         Likewise.
2456         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S (__syscall_error):
2457         Likewise.
2458         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S (__clone): Add CFI
2459         directives. Move thread_start out of ENTRY/PSEUDO_END block to
2460         make backchain terminate.
2461         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S (__clone): Likewise.
2463         * sysdeps/s390/s390-32/backtrace.c (trace_arg): New structure.
2464         (unwind_backtrace, unwind_getip): New variables.
2465         (init, __backchain_backtrace, backtrace_helper): New functions.
2466         (__backtrace): Use unwind info for backtrace instead of backchain
2467         walking if the unwind functions can be found.
2468         * sysdeps/s390/s390-64/backtrace.c: Likewise.
2470         * sysdeps/unix/sysv/linux/s390/s390-32/posix_fadvise64.c: New file.
2472         * sysdeps/unix/sysv/linux/s390/sys/procfs.h (ELF_NGREG32): New #define.
2473         (elf_greg_t32, elf_gregset_t32, elf_fpregset_t32): New types.
2474         (elf_prstatus32, elf_prpsinfo32): New structures.
2475         (prgregset32_t, prfpregset32_t, prstatus32_t, prpsinfo32_t): New types.
2477         * scripts/data/c++-types-s390-linux-gnu.data: New file.
2478         * scripts/data/c++-types-s390x-linux-gnu.data: New file.
2480 2003-11-30  Petter Reinholdtsen  <pere@hungry.com>
2482         * stdlib/strfmon.c: Correct formatting of international currency
2483         values.  The international currency formatting should prefer the
2484         int_* values if they are set for a locale, and use the domestic
2485         values if the int_* values are unset.
2487 2003-12-03  Jakub Jelinek  <jakub@redhat.com>
2489         * posix/Makefile (distribute): Add BOOST.tests.
2490         (tests): Add tst-boost, depend on tst-boost-mem.
2491         (generated): Add tst-boost-mem and tst-boost.mtrace.
2492         (tst-boost-ARGS, tst-boost-ENV): Set.
2493         ($(objpfx)tst-boost-mem): New.
2494         * posix/tst-boost.c: New test.
2495         * posix/BOOST.tests: New file.
2497         * posix/Makefile (distribute): Add PCRE.tests.
2498         (tests): Add tst-pcre, depend on tst-pcre-mem.
2499         (generated): Add tst-pcre-mem and tst-pcre.mtrace.
2500         (tst-pcre-ARGS, tst-pcre-ENV): Set.
2501         ($(objpfx)tst-pcre-mem): New.
2502         * posix/tst-pcre.c: New test.
2503         * posix/PCRE.tests: New file.
2505 2003-12-02  Jakub Jelinek  <jakub@redhat.com>
2507         * intl/locale.alias: Use nb_NO instead of no_NO for bokm.l.
2509         * sysdeps/powerpc/fpu/libm-test-ulps: Regenerated.
2510         * sysdeps/s390/fpu/libm-test-ulps: Regenerated.
2512 2003-12-03  Ulrich Drepper  <drepper@redhat.com>
2514         * locale/programs/locarchive.c (enlarge_archive): Print size info
2515         only in verbose mode.
2517         * locale/iso-3166.def: Three letter code of Romania changed.
2519 2003-12-02  Roland McGrath  <roland@redhat.com>
2521         * scripts/config.sub: Update from master, timestamp='2003-10-20'.
2522         * scripts/config.guess: Update from master, timestamp='2003-10-20'.
2524 2003-11-30  Andreas Jaeger  <aj@suse.de>
2526         * config.make.in (fno-unit-at-a-time): Define.
2528         * configure.in: Add test for -fno-unit-at-a-time.
2529         Fix text for -fpie.
2531         * csu/Makefile (CFLAGS-initfini.s): Add $(fno_unit_at_a_time).
2532         * locale/Makefile (CFLAGS-loadlocale.c): Likewise.
2534 2003-12-01  Automatic
2536         * version.h (VERSION): Bump to 2.3.3.
2538 2003-11-30  Andreas Jaeger  <aj@suse.de>
2540         * stdio-common/vfprintf.c: Do not inline buffered_vfprintf to
2541         decrease stack usage.
2543 2003-11-30  Andreas Schwab  <schwab@suse.de>
2545         * sysdeps/unix/sysv/linux/m68k/sysdep.h (PSEUDO_ERRVAL)
2546         (PSEUDO_END_ERRVAL, ret_ERRVAL): Define.
2548 2003-11-29  Ulrich Drepper  <drepper@redhat.com>
2550         * misc/mntent_r.c (decode_name): Be compatible with util-linux and
2551         recognize \134 as well.
2553 2003-10-09  H.J. Lu  <hongjiu.lu@intel.com>
2555         * sysdeps/ia64/fpu/fraiseexcpt.c: Don't include <asm/fpu.h>.
2557 2003-10-08  H.J. Lu  <hongjiu.lu@intel.com>
2559         * sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h: Don't include
2560         <asm/fpu.h>.
2561         (struct ia64_fpreg): New definition.
2563         * sysdeps/unix/sysv/linux/ia64/sys/procfs.h: Don't include
2564         <asm/elf.h>.
2565         (ELF_NGREG): New #define.
2566         (ELF_NFPREG): Likewise.
2567         (elf_greg_t): New type.
2568         (elf_gregset_t): Likewise.
2569         (elf_fpreg_t): Likewise.
2570         (elf_fpregset_t): Likewise.
2572 2003-10-08  H.J. Lu  <hongjiu.lu@intel.com>
2574         * sysdeps/unix/sysv/linux/ia64/sys/ptrace.h: Include
2575         <sys/ucontext.h>.
2576         (__ptrace_request): Add PTRACE_GETREGS and PTRACE_SETREGS.
2577         (pt_all_user_regs): New type.
2579 2003-10-10  Simon Josefsson  <jas@extundo.com>
2581         * argp/argp-namefrob.h [!_LIBC]: Include mempcpy.h, strcase.h,
2582         strchrnul.h, strndup.h (from gnulib).
2583         * argp/argp-parse.c: Add alloca.h include snippet verbatim from
2584         Autoconf manual.
2585         * argp/argp-help.c: Replace alloca.h include snipper with verbatim
2586         Autoconf manual version.
2587         * argp/argp.h: Map __restrict to restrict or empty string when
2588         necessary, copied verbatim from posix/regex.h.
2590 2003-10-09  Steven Munroe  <sjmunroe@us.ibm.com>
2592         * Makefile: Allow for c++-types-$(config-machine)-$(config-os).data in
2593         addition to c++-types-$(base-machine)-$(config-os).data.
2594         * scripts/data/c++-types-powerpc-linux-gnu.data: New file.
2595         * scripts/data/c++-types-powerpc64-linux-gnu.data: New file.
2597 2003-11-28  Ulrich Drepper  <drepper@redhat.com>
2599         * misc/mntent_r.c (decode_name): Fix decoding of tab, add decoding
2600         of newline.
2601         * manual/sysinfo.texi (mtab): Adjust description accordingly.
2602         Reported by Andries.Brouwer@cwi.nl.
2604         * sysdeps/x86_64/fpu/libm-test-ulps: Add some more minor changes
2605         to compensate other setup.
2607 2003-11-27  Andreas Jaeger  <aj@suse.de>
2609         * sysdeps/x86_64/fpu/libm-test-ulps: Add ulps for new atan2 test.
2611         * math/libm-test.inc (atan2_test): Add test that run infinitly.
2612         Reported by "Willus" <etc231etc231@willus.com>.
2614 2003-11-27  Michael Matz  <matz@suse.de>
2616         * sysdeps/ieee754/dbl-64/mpsqrt.c (fastiroot): Fix 64-bit problem
2617         with wrong types.
2619 2003-11-28  Jakub Jelinek  <jakub@redhat.com>
2621         * posix/regexec.c (acquire_init_state_context): Make inline.
2622         Add always_inline attribute.
2623         (check_matching): Add BE macro.  Move if (cur_state->has_backref)
2624         into if (dfa->nbackref).
2625         (sift_states_backward): Fix comment.
2626         (transit_state): Add BE macro.  Move if (next_state->has_backref)
2627         into if (dfa->nbackref && next_state).  Don't check for next_state
2628         != NULL twice.
2629         * posix/regcomp.c (peek_token): Use opr.ctx_type instead of opr.idx
2630         for ANCHOR.
2631         (parse_expression): Only call init_word_char if word context will be
2632         needed.
2634         * posix/bug-regex11.c (tests): Add new tests.
2636         * posix/tst-regex.c: Include getopt.h.
2637         (timing): New variable.
2638         (main): Set timing to 1 if --timing argument is present.
2639         Add 2 new tests.
2640         (run_test, run_test_backwards): Handle timing.
2642 2003-11-27  Jakub Jelinek  <jakub@redhat.com>
2644         * posix/regex_internal.h (re_string_t): Remove mbs_case field.
2645         Add offsets, valid_raw_len, raw_len, raw_stop, mbs_allocated and
2646         offsets_needed fields.  Change icase, is_utf8 and map_notascii
2647         type from int bitfield to unsigned char.
2648         (MBS_ALLOCATED, MBS_CASE_ALLOCATED): Remove.
2649         (build_wcs_upper_buffer): Change prototype to return int.
2650         (re_string_peek_byte_case, re_string_fetch_byte_case): Remove
2651         defines, add prototypes.
2652         * posix/regex_internal.c (re_string_allocate): Don't initialize
2653         stop here.  Don't initialize mbs_case.  Set valid_raw_len.
2654         Use mbs_allocated instead of MBS_* macros.
2655         (re_string_construct): Don't initialize stop and valid_len here.
2656         Don't initialize mbs_case.  Use mbs_allocated instead of MBS_*
2657         macros.  Reallocate buffers if build_wcs_upper_buffer converted
2658         too few bytes.  Set valid_len to bufs_len only for single byte
2659         no translation and set in that case valid_raw_len as well.
2660         (re_string_realloc_buffers): Reallocate offsets if not NULL.
2661         Use mbs_allocated instead of MBS_ALLOCATED.  Don't reallocate
2662         mbs_case.
2663         (re_string_construct_common): Initialize raw_len, mbs_allocated,
2664         stop and raw_stop.
2665         (build_wcs_buffer): Apply pstr->trans before mbrtowc instead of
2666         after it.  Set valid_raw_len.  Don't set mbs_case.
2667         (build_wcs_upper_buffer): Return REG_NOERROR or REG_ESPACE.
2668         Only use the fast path if !pstr->offsets_needed.  Apply pstr->trans
2669         before mbrtowc instead of after it.  If upper case character
2670         uses different number of bytes than lower case, goto to the
2671         slow path.  Don't call towupper unnecessarily twice.  Set
2672         valid_raw_len as well.  Handle in the slow path the case if
2673         lower and upper case use different number of characters.
2674         Don't set mbs_case.
2675         (re_string_skip_chars): Use valid_raw_len instead of valid_len.
2676         (build_upper_buffer): Don't set mbs_case.  Add BE macro.  Set
2677         valid_raw_len.
2678         (re_string_translate_buffer): Set mbs instead of mbs_case.  Set
2679         valid_raw_len.
2680         (re_string_reconstruct): Use raw_len/raw_stop to initialize
2681         len/stop.  Clear valid_raw_len and offsets_needed when clearing
2682         valid_len.  Use mbs_allocated instead of MBS_* macros.
2683         Check original offset against valid_raw_len instead of valid_len.
2684         Remove mbs_case handling.  Adjust valid_raw_len together with
2685         valid_len.  If is_utf8 and looking for tip context, apply
2686         pstr->trans first.  If buffers start with partial multi-byte
2687         character, initialize mbs array as well if mbs_allocated.
2688         Check return value of build_wcs_upper_buffer.
2689         (re_string_peek_byte_case): New function.
2690         (re_string_fetch_byte_case): New function.
2691         (re_string_destruct): Use mbs_allocated instead of MBS_ALLOCATED.
2692         Don't free mbs_case.  Free offsets.
2693         * posix/regcomp.c (init_dfa): Only check if charset name is UTF-8
2694         if mb_cur_max == 6.
2695         * posix/regexec.c (re_search_internal): Initialize input.raw_stop
2696         as well.  Use valid_raw_len instead of valid_len when looking
2697         through fastmap.  Adjust registers through input.offsets.
2698         (extend_buffers): Allow build_wcs_upper_buffer to fail.
2699         * posix/bug-regex18.c (tests): Enable #ifdefed out tests.  Add new
2700         tests.
2702 2003-11-26  Jakub Jelinek  <jakub@redhat.com>
2704         * posix/regexec.c (check_subexp_limits): Only check close
2705         subexpression limitation if one is found.  Formatting.
2706         (sift_states_backward, check_arrival, check_arrival_add_next_nodes):
2707         Formatting.
2708         * posix/bug-regex11.c (tests): Enable most #ifdefed out tests.
2709         Add new test.
2711 2003-11-26  Ulrich Drepper  <drepper@redhat.com>
2713         * sysdeps/unix/sysv/linux/kernel-features.h
2714         (__ASSUME_PROT_GROWSUPDOWN): Define for 2.6.1 and up.
2715         * sysdeps/unix/sysv/linux/dl-execstack.c: Omit compatibility code
2716         if __ASSUME_PROT_GROWSUPDOWN is defined.
2718 2003-11-26  Andreas Jaeger  <aj@suse.de>
2720         * sysdeps/unix/sysv/linux/dl-execstack.c
2721         (_dl_make_stack_executable): Set dl_stack_flags always for
2722         success.
2724 2003-06-22  Petter Reinholdtsen  <pere@hungry.com>
2726         * locale/program/ld-monetary.c: Only check the first three
2727         characters in int_curr_symbol against ISO-4217, to make the
2728         separator character used by a locale independent of the content
2729         in iso-4217.def.
2730         * locale/iso-4217.def: Remove the space character from all
2731         currency values to get the new test code in ld-monetary.c working.
2733 2003-11-21  David Mosberger  <davidm@hpl.hp.com>
2735         * elf/soinit.c (_fini): Put _fini() in .init_array section if
2736         HAVE_INITFINI_ARRAY is defined.
2738 2003-11-25  Ulrich Drepper  <drepper@redhat.com>
2740         * sysdeps/i386/fpu/bits/mathinline.h: Introduce __libc_sqrtl symbol.
2741         Define it appropriately after last change.  Use it where __sqrtl
2742         was used.
2744 2003-11-25  H.J. Lu  <hongjiu.lu@intel.com>
2746         * sysdeps/i386/fpu/bits/mathinline.h (sqrt): Don't inline
2747         sqrt for gcc 3.3 and above.
2749 2003-11-25  Ulrich Drepper  <drepper@redhat.com>
2751         * posix/runptests.c (main): Make errors fatal.
2752         * posix/PTESTS: One test in GA135 and GA136 check functionality
2753         which seems not guaranteed.
2755 2003-11-25  Jakub Jelinek  <jakub@redhat.com>
2757         * posix/regexec.c (re_search_internal): If prune_impossible_nodes
2758         returned REG_NOMATCH, set match_last to -1.  Don't initialize
2759         pmatch[0] needlessly.  Fix comment.
2760         (prune_impossible_nodes): Don't segfault on NULL state_log entry.
2761         (set_regs): Fix comment.
2762         * posix/regcomp.c (parse_bracket_exp): Only set has_plural_match
2763         if adding both SIMPLE_BRACKET and COMPLEX_BRACKET.
2764         (build_charclass_op): Set has_plural_match if adding both
2765         SIMPLE_BRACKET and COMPLEX_BRACKET.
2766         * posix/bug-regex11.c (tests): Fix register values for one commented
2767         out test.  Add new tests.
2769         * posix/regex_internal.c (re_string_allocate): Make sure init_len
2770         is at least dfa->mb_cur_max.
2771         (re_string_reconstruct): If is_utf8, don't fall back into
2772         re_string_skip_chars just because idx points into a middle of
2773         valid UTF-8 character.  Instead, set the wcs bytes which correspond
2774         to the partial character bytes to WEOF.
2775         * posix/regexec.c (re_search_internal): Allocate input.bufs_len + 1
2776         instead of dfa->nodes_len + 1 state_log entries initially.
2777         * posix/bug-regex20.c (main): Uncomment backwards case insensitive
2778         tests.
2780 2003-11-24  Jakub Jelinek  <jakub@redhat.com>
2782         * posix/regex_internal.h (re_token_t): Add word_char bit.  Add
2783         comment.
2784         (re_dfa_t): Add sb_char field.
2785         (bitset_mask): New function.
2786         * posix/regcomp.c (free_dfa_content): Free sb_char.
2787         (init_dfa): Don't initialize word_char unnecessarily.
2788         Initialize sb_char.
2789         (duplicate_node): Don't duplicate !word_char CHARACTERs with
2790         NEXT_WORD_CONSTRAINT constraint or word_char CHARACTERs with
2791         NEXT_NOTWORD_CONSTRAINT.  Return -1 in *new_idx instead.
2792         (duplicate_node_closure): Handle clone_dest == -1 from
2793         duplicate_node.
2794         (peek_token): Initialize word_char bit.
2795         (parse_expression, parse_dup_op): Add comments.
2796         (parse_bracket_exp): Don't set bitmask bits for multi-byte char
2797         starting bytes here at the beginning.  Mask off the bits right
2798         before creating SIMPLE_BRACKET.
2799         (build_charclass_op): Likewise.
2800         * posix/regexec.c (group_nodes_into_DFAstates) <case OP_PERIOD>: Only
2801         set accept bits for single-byte characters.
2802         (group_nodes_into_DFAstates): Don't rely on characters 0 .. 127
2803         being single byte encoded and the rest multi-byte.
2804         * posix/bug-regex19.c (tests): Add new tests.
2805         (do_mb_tests): Initialize t to *test.
2806         (main): Fail even on do_mb_tests errors.
2808 2003-11-23  Ulrich Drepper  <drepper@redhat.com>
2810         * posix/regexec.c: Correct several memory allocation problems.
2811         Add more BE.
2812         * posix/regex_internal.c: Likewise.
2813         * posix/regcomp.c: Likewise.
2815         * posix/regexec.c: Add const in a number of places.
2816         * posix/regex_internal.h: Make EPSILON_BIT a macro to help
2817         debugging.  Its value isn't important.
2819 2003-11-22  Ulrich Drepper  <drepper@redhat.com>
2821         * posix/PTESTS: Fix first test of GA143.
2823 2003-11-21  Ulrich Drepper  <drepper@redhat.com>
2825         * posix/regex_internal.c (re_dfa_add_node): Add BE, reallocation
2826         isn't likely.
2828         * locale/programs/charmap.c (charmap_read): If encoding is found
2829         not ASCII compatible, set enc_not_ascii_compatible.
2830         * locale/programs/charmap.h: Declare enc_not_ascii_compatible.
2831         * locale/programs/ld-ctype.c (ctype_startup): If
2832         enc_not_ascii_compatible is set, initialize to_nonascii to 1.
2834 2003-11-22  Jakub Jelinek  <jakub@redhat.com>
2836         * elf/rtld.c (process_envvars): Only honor LD_USE_LOAD_BIAS
2837         if !__libc_enable_secure.
2839         * sysdeps/generic/ldsodefs.h (_dl_use_load_bias): New _rtld_global
2840         field.
2841         * elf/rtld.c (_rtld_global): Initialize _dl_use_load_bias field.
2842         (dl_main): Set GL(dl_use_load_bias) default.
2843         (process_envvars): Set GL(dl_use_load_bias) from LD_USE_LOAD_BIAS.
2844         Add EXTRA_LD_ENVVARS_13.
2845         * elf/dl-support.c (_dl_use_load_bias): New variable.
2846         * elf/dl-load.c (_dl_map_object_from_fd): Mask c->mapstart
2847         with GL(dl_use_load_bias).
2848         * sysdeps/generic/unsecvars.h (UNSECURE_ENVVARS): Add
2849         LD_USE_LOAD_BIAS.
2850         * sysdeps/unix/sysv/linux/dl-librecon.h (EXTRA_LD_ENVVARS): Remove.
2851         (EXTRA_LD_ENVVARS_LINUX): Renamed to...
2852         (EXTRA_LD_ENVVARS_13): ... this.  Remove case at the beginning.
2853         * sysdeps/unix/sysv/linux/i386/dl-librecon.h (EXTRA_LD_ENVVARS):
2854         Don't undefine first.  Remove EXTRA_LD_ENVVARS_LINUX.
2856 2003-11-21  Ulrich Drepper  <drepper@redhat.com>
2858         * posix/regcomp.c (duplicate_node): Remove unnecessary local variable.
2860         * posix/regcomp.c (re_dfa_add_tree_node): Make fourth parameter a
2861         pointer.  Adjust callers.
2863         * posix/regcomp.c (fetch_token): Change interface to match
2864         peek_token.  This avoids some copying and reduces code size.
2866 2003-11-21  Jakub Jelinek  <jakub@redhat.com>
2868         * posix/bug-regex19.c (tests): Add more tests.
2870         * posix/bug-regex11.c: And one more commented out test.
2872         * posix/tst-rxspencer.c (mb_tests): Don't run identical multi-byte
2873         tests multiple times unnecessarily.
2875         * posix/bug-regex19.c (BRE, ERE): Define.
2876         (tests): Add many new tests, remove UTF-8 ones.
2877         (do_one_test, do_mb_tests): New functions.
2878         (main): Rewritten using do_one_test and do_mb_tests.
2880 2003-11-20  Ulrich Drepper  <drepper@redhat.com>
2882         * posix/PTESTS: Fix first test in GA143.
2884 2003-11-20  Jakub Jelinek  <jakub@redhat.com>
2886         * posix/regex_internal.h (re_dfastate_t): Remove trtable_search.
2887         Add word_trtable.
2888         * posix/regex_internal.c (create_newstate_common, free_state):
2889         Don't free trtable_search.
2890         * posix/regexec.c (check_matching): Remove fl_search argument.
2891         (transit_state_sb): Likewise.  #ifdef out as unused.
2892         (build_trtable): Remove fl_search argument.  Set state->word_trtable
2893         and state->trtable.  Build separate word and non-word tables if
2894         multi-byte and they differ for some character.
2895         (transit_state): Remove fl_search argument.  Don't update
2896         state->trtable here.  Handle state->word_trtable.
2897         #ifdef out unused call to transit_state_sb.
2898         (re_search_internal): Update check_matching caller.
2899         (group_nodes_into_DFAstates): Don't clear non-ascii chars in accepts
2900         bitmask for multi-byte locales.
2901         * posix/bug-regex19.c (tests): Enable some commented out tests, add
2902         2 new tests.
2903         * posix/tst-rxspencer.c (mb_tests): Don't test [[=b=]] for now as
2904         multi-byte.  Don't run identical multi-byte tests multiple times
2905         unnecessarily.
2906         (main): Check setlocale return value.
2907         * posix/Makefile (tst-rxspencer-ARGS): Add --utf8 argument.
2908         (tst-rxspencer-ENV): Remove MALLOC_TRACE, add LOCPATH.
2909         ($(objpfx)tst-rxspencer-mem): Run another tst-rxspencer test
2910         here, without --utf8 argument but with MALLOC_TRACE.
2912 2003-11-19  Jakub Jelinek  <jakub@redhat.com>
2914         * posix/regexec.c (extend_buffers): Don't allocate
2915         twice as big state_log as needed.  Don't modify pstr->valid_len
2916         for mb_cur_max == 1 !icase !trans.
2918         * posix/regcomp.c (free_bin_tree): Removed.
2919         (create_tree): Add dfa argument.  Don't call re_malloc for
2920         each tree, instead allocate from str_tree_storage.
2921         (re_dfa_add_tree_node): New function.
2922         (free_dfa_content): Handle freeing if dfa->nodes == NULL
2923         or dfa->state_table == NULL.
2924         (re_compile_internal): Call free_dfa_content if init_dfa
2925         fails.  Call free_workarea_compile, re_string_destruct
2926         and free_dfa_content for most of the other failure paths.
2927         (init_dfa): Initialize str_tree_storage_idx.
2928         Don't clear any fields on allocation failure.
2929         (free_workarea_compile): Free str_tree_storage chunks
2930         instead of free_bin_tree (dfa->str_tree).
2931         (parse): Call re_dfa_add_tree_node instead of re_dfa_add_node
2932         followed by create_tree.  Add dfa argument to remaining
2933         create_tree calls.  Remove new_idx variable.  Remove calls
2934         to free_bin_tree.
2935         (parse_reg_exp, parse_branch, parse_expression, parse_sub_exp,
2936         parse_dup_op, parse_bracket_exp, build_charclass_op): Likewise.
2937         (duplicate_tree): Remove calls to free_bin_tree, add dfa
2938         argument to create_tree.
2939         * posix/regex_internal.h (BIN_TREE_STORAGE_SIZE): Define.
2940         (bin_tree_storage_t): New type.
2941         (re_dfa_t): Add str_tree_storage and str_tree_storage_idx
2942         fields.
2943         * posix/Makefile (tests): Add bug-regex21.
2944         (generated): Add bug-regex21-mem, bug-regex21.mtrace,
2945         tst-rxspencer-mem and tst-rxspencer.mtrace.
2946         (tests): Depend on $(objpfx)bug-regex21-mem
2947         and $(objpfx)tst-rxspencer-mem.
2948         (bug-regex21-ENV, tst-rxspencer-ENV): Set.
2949         ($(objpfx)bug-regex21-mem, $(objpfx)tst-rxspencer-mem): New.
2950         * posix/tst-rxspencer.c (main): Add call to mtrace.
2951         Free line at the end.
2952         * posix/bug-regex21.c: New test.
2954 2003-11-19  Ulrich Drepper  <drepper@redhat.com>
2956         * posix/bug-regex20.c: Correct invalid UTF-8 sequences.
2958         * posix/regex_internal.c (build_wcs_upper_buffer): If mbrtowc
2959         fails, just use the byte, do no fancy conversions.
2961         * posix/regex_internal.h (re_string_first_byte): Use ->valid_len
2962         not ->len.
2963         (re_string_is_single_byte_char): Likewise.
2965 2003-11-18  Ulrich Drepper  <drepper@redhat.com>
2967         * posix/regexec.c (get_subexp): After calling get_subexp_sub
2968         reload buf and bkref_str.  Little optimization by avoiding memcmp.
2970 2003-11-14  David Mosberger   <davidm@hpl.hp.com>
2972         * sysdeps/unix/sysv/linux/ia64/sysdep.h
2973         (GAS_ALIGN_BREAKS_UNWIND_INFO): Define this macro to indicate
2974         that all existing GAS versions have a problem with .align inside
2975         a function.
2976         * sysdeps/ia64/memccpy.S: Work around GAS_ALIGN_BREAKS_UNWIND_INFO bug.
2977         * sysdeps/ia64/memcpy.S: Likewise.
2978         * sysdeps/ia64/memset.S: Likewise.
2979         * sysdeps/ia64/memmove.S: Likewise.  Also move the jump-table to
2980         out of .text into .rodata, where it belongs.
2982         * sysdeps/unix/sysv/linux/ia64/pipe.S: There is no need to
2983         save/restore input-arguments, because they're necessarily
2984         preserved by the kernel to support syscall-restart.
2986 2003-11-18  Jakub Jelinek  <jakub@redhat.com>
2988         * posix/regex_internal.h (re_token_type_t): Remove unused ALT,
2989         END_OF_RE_TOKEN_T and SUBEXP.  Reorder values.  Add OP_UTF8_PERIOD
2990         and EPSILON_BIT.
2991         (IS_EPSILON_NODE): Just test if EPSILON_BIT is set.
2992         (ACCEPT_MB_NODE): Return 1 for OP_UTF8_PERIOD as well.
2993         * posix/regex_internal.c (create_ci_newstate, create_cd_newstate):
2994         Handle OP_UTF8_PERIOD.
2995         (re_string_reconstruct): Set valid_len for single byte char searching
2996         with no translation and case sensitivity.
2997         * posix/regcomp.c (re_compile_fastmap_iter, calc_first): Handle
2998         OP_UTF8_PERIOD.
2999         (re_compile_internal): Don't call optimize_utf8 if preg->translate
3000         != NULL.
3001         (optimize_utf8): Remove BACK_SLASH case.
3002         Transform OP_PERIOD into OP_UTF8_PERIOD if the searching can be
3003         optimized.
3004         (parse_bracket_exp): Don't create SIMPLE_BRACKET if it doesn't have
3005         any bits set and COMPLEX_BRACKET is used.
3006         * posix/regexec.c (transit_state_mb): Fix comment typo.
3007         (group_nodes_into_DFAstates, check_node_accept): Handle
3008         OP_UTF8_PERIOD.
3009         (check_node_accept_bytes): Likewise.  Reorder slightly so that
3010         re_string_char_size_at and re_string_elem_size_at are called
3011         only when needed.
3012         * posix/bug-regex20.c (BRE, ERE): Define.
3013         (tests): Use them to make lines shorter.  Expect . to be
3014         optimized.  Add lots of new tests.
3015         (main): Run (ATM just case sensitive) test with backwards searching
3016         as well.
3018 2003-11-18  Jakub Jelinek  <jakub@redhat.com>
3020         * io/bug-ftw4.c: Include string.h.
3021         * posix/fnmatch.c (mbsinit): Remove define.
3023 2003-11-17  Jakub Jelinek  <jakub@redhat.com>
3025         * posix/regcomp.c (optimize_utf8): Optimize multi-byte chars as
3026         well.
3027         * posix/bug-regex20.c (tests): Add new tests.  Multi-byte char
3028         followed by dup operator is expected to be optimized.
3030         * posix/regexec.c (check_node_accept_bytes): Move nrules and j
3031         variables to the block where they are only used, initialize
3032         nrules only immediately before using it.
3034 2003-11-15  Andreas Jaeger  <aj@suse.de>
3036         * sysdeps/x86_64/fpu/s_scalbnl.S: New file.
3037         * sysdeps/x86_64/fpu/s_truncl.S: New file.
3038         * sysdeps/x86_64/fpu/s_nearbyintl.S: New file.
3039         * sysdeps/x86_64/fpu/s_floorl.S: New file.
3040         * sysdeps/x86_64/fpu/s_ilogbl.S: New file.
3041         * sysdeps/x86_64/fpu/e_remainderl.S: New file.
3043         * math/libm-test.inc (floor_test): Test also Â±0.25.
3044         (ceil_test): Test -0.25.
3046 2003-11-17  Ulrich Drepper  <drepper@redhat.com>
3048         * sysdeps/posix/getaddrinfo.c: Add support for destination address
3049         selection according to RFC 3484.
3051 2003-11-15  Ulrich Drepper  <drepper@redhat.com>
3053         * posix/regex_internal.h: Add forward declaration of re_dfa_t.
3054         Replace last two parameters of re_string_allocate and
3055         re_string_construct with pointer to DFA.
3056         (re_dfa_t): Add map_notascii field.
3057         * posix/regcomp.c (re_compile_internal): Add call of
3058         re_string_construct.
3059         (init_dfa): Initialize map_notascii.
3060         * posix/regex_internal.c: Adjust definitions of re_string_allocate
3061         and re_string_construct.
3062         Pass DFA to re_string_construct.  Adjust definition.  Initialize
3063         map_notascii field.
3064         (build_wcs_upper_buffer): If map_notascii is zero use simplified
3065         method to map ASCII values to upper case.
3066         * posix/regex.c: Include localeinfo.h.
3067         * posix/regexec.c: Adjust call of re_string_allocate.
3069         * locale/langinfo.h: Add _NL_CTYPE_MAP_TO_NONASCII.
3070         * locale/localeinfo.h (LIMAGIC): Change value.
3071         * locale/categories.def. Add entry for _NL_CTYPE_MAP_TO_NONASCII.
3072         * locale/C-ctype.h: Likewise.
3073         * locale/programs/ld-ctype.c: Compute whether any mapping maps from
3074         ASCII to non-ASCII value.  Write out that value.
3076         * wcsmbs/mbsinit.c: Undef mbsinit and __mbsinit.
3077         * include/wchar.h: Provide inline versions of mbsinit and __mbsinit.
3079 2003-11-14  Jakub Jelinek  <jakub@redhat.com>
3081         * posix/tst-rxspencer.c (check_match): @ without any following
3082         characters must match only end of string.
3083         (main): Fix filename in error message.
3085 2003-11-12  David Mosberger  <davidm@hpl.hp.com>
3087         * sysdeps/ia64/dl-machine.h: Force inlining of
3088         elf_machine_runtime_setup().
3090 2003-11-13  Andreas Jaeger  <aj@suse.de>
3092         * math/Makefile (CFLAGS-test-float.c): Add -fno-builtin.
3093         (CFLAGS-test-double.c): Likewise.
3094         (CFLAGS-test-ldouble.c): Likewise.
3095         (CPPFLAGS-test-ifloat.c): Likewise.
3096         (CPPFLAGS-test-idouble.c): Likewise.
3097         (CPPFLAGS-test-ildoubl.c): Likewise.
3099         * math/libm-test.inc (ceil_test): Test ceil (0.25).
3101 2003-11-04  Ulrich Drepper  <drepper@redhat.com>
3103         * sysdeps/unix/sysv/linux/ifaddrs.c: Make sure it's the kernel who
3104         sends the netlink data.
3105         * sysdeps/unix/sysv/linux/check_pf.c: Likewise.
3107 2003-11-13  Jakub Jelinek  <jakub@redhat.com>
3109         * posix/regcomp.c (optimize_utf8): Optimize even if SIMPLE_BRACKET
3110         with no bits set for >= 0x80 chars is seen.
3111         * posix/bug-regex20.c (tests): Add new tests.  Expect [ABC] to be
3112         optimized.
3113         (main): Run all tests with RE_ICASE as well.
3115 2003-11-13  Ulrich Drepper  <drepper@redhat.com>
3117         * posix/Makefile: Add rules to build and run tst-rxspencer.
3118         (distribute): Add rxspencer/tests and rxspencer/COPYRIGHT.
3119         * posix/tst-rxspencer.c: New file.
3120         * posix/rxspencer/tests: New file.
3121         * posix/rxspencer/COPYRIGHT: New file.
3122         Patch mostly by Jakub Jelinek.
3124         * posix/regcomp.c (parse_bracket_exp): Don't check for range if
3125         this is no option given the first token.
3127         * posix/regcomp.c (parse_bracket_exp): Fix test for EOS after
3128         hyphen in range expression.  Return EBRACK in this case.
3130         * posix/regcomp.c (parse_bracket_element): Reject hyphens unless
3131         we expect them or it's the last element in the bracket expression.
3132         Indicated by new parameter.  Adjust all callers.
3134         * posix/runtests.c (run_a_test): If regcomp failed, reset last_pattern.
3135         Prettier error messages.
3137         * posix/regcomp.c (parse_dup_op): Fail with REG_BADBR is first
3138         number in {,} expression is larger.
3140 2003-11-13  Andreas Jaeger  <aj@suse.de>
3142         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_TGKILL):
3143         Define appropriately for x86_64.
3144         (__ASSUME_UTIMES): Likewise.
3145         (__ASSUME_CLONE_THREAD_FLAGS): Likewise.
3147         * sysdeps/x86_64/fpu/s_ceill.S: New file.
3149 2003-11-13  Ulrich Drepper  <drepper@redhat.com>
3151         * posix/regcomp.c (parse_expression): In BRE consecutive
3152         duplications are not allowed.
3154 2003-11-12  Ulrich Drepper  <drepper@redhat.com>
3156         * posix/regcomp.c (parse_bracket_exp): If end of expression is
3157         seen, return EBRACK error, not BADPAT.
3159         * posix/regcomp.c (parse_expression): If token is OP_OPEN_DUP_NUM
3160         and RE_CONTEXT_INVALID_DUP syntax flag is set, fail.
3161         * posix/regex.h (RE_CONTEXT_INVALUD_OPS): New macro.
3162         (RE_SYNTAX_POSIX_BASIC): Use RE_CONTEXT_INVALUD_OPS.
3164         * posix/regcomp.c (parse_sub_exp): In case of not-matching ( )
3165         return REG_EPAREN.
3167         * posix/PTESTS: Cleanup.  Fix typoes.  Correct bugs in 2003.2.
3168         * posix/runptests.c (main): Handle comments.
3169         * posix/PTESTS2C.sed: Handle comments.
3171 2003-11-12  Jakub Jelinek  <jakub@redhat.com>
3173         * posix/regcomp.c (optimize_utf8): New function.
3174         (re_compile_fastmap_iter): Use dfa->mb_cur_max > 1 instead
3175         of !icase.
3176         (re_compile_internal): Call optimize_utf8 if not case insensitive
3177         and in UTF-8 locale.
3178         * posix/regex_internal.h: Ifdef out some prototypes if
3179         RE_NO_INTERNAL_PROTOTYPES is defined to shut up warnings.
3180         * posix/Makefile (tests): Add bug-regex20.
3181         (bug-regex20-ENV): Add LOCPATH.
3182         * posix/bug-regex20.c: New test.
3184 2003-11-12  Jakub Jelinek  <jakub@redhat.com>
3186         * io/ftw.c (NFTW_NEW_NAME, NFTW_OLD_NAME): Add prototypes.
3188 2003-11-12  Jakub Jelinek  <jakub@redhat.com>
3190         * posix/tst-regex.c (umemlen): New variable.
3191         (test_expr): Add expectedicase argument.  Test case insensitive
3192         searches as well as backwards searches (case sensitive and
3193         insensitive) too.
3194         (run_test): Add icase argument.  Use it to compute regcomp flags.
3195         (run_test_backwards): New function.
3196         (main): Cast read to size_t to avoid warning.  Set umemlen.
3197         Add expectedicase arguments to test_expr.
3198         * posix/regex_internal.c (re_string_reconstruct): If is_utf8,
3199         find previous character by walking back instead of converting
3200         all chars from beginning.
3202 2003-11-12  Jakub Jelinek  <jakub@redhat.com>
3204         * posix/regex_internal.h (struct re_string_t): Add is_utf8
3205         and mb_cur_max fields.
3206         (struct re_dfa_t): Likewise.  Reorder fields to make structure
3207         smaller on 64-bit arches.
3208         (re_string_allocate, re_string_construct): Add mb_cur_max and
3209         is_utf8 arguments.
3210         (re_string_char_size_at, re_string_wchar_at): Use pstr->mb_cur_max
3211         instead of MB_CUR_MAX.
3212         * posix/regcomp.c (re_compile_fastmap_iter): Use dfa->mb_cur_max
3213         instead of MB_CUR_MAX.
3214         (re_compile_internal): Pass new arguments to re_string_construct.
3215         (init_dfa): Initialize mb_cur_max and is_utf8 fields.
3216         (peek_token, peek_token_bracket): Use input->mb_cur_max instead
3217         of MB_CUR_MAX.
3218         (parse_expression, parse_bracket_exp, parse_charclass_op): Use
3219         dfa->mb_cur_max instead of MB_CUR_MAX.
3220         * posix/regex_internal.c (re_string_construct_common): Add
3221         mb_cur_max and is_utf8 arguments.  Initialize fields with them.
3222         (re_string_allocate, re_string_construct): Add mb_cur_max and
3223         is_utf8 arguments, pass them to re_string_construct_common.
3224         Use mb_cur_max instead of MB_CUR_MAX.
3225         (re_string_realloc_buffers): Use pstr->mb_cur_max instead of
3226         MB_CUR_MAX.
3227         (re_string_reconstruct): Likewise.
3228         (re_string_context_at): Use input->mb_cur_max instead of
3229         MB_CUR_MAX.
3230         (create_ci_newstate, create_cd_newstate): Use dfa->mb_cur_max
3231         instead of MB_CUR_MAX.
3232         * posix/regexec.c (re_search_internal): Likewise.
3233         Pass new arguments to re_string_allocate.
3234         (check_matching, transit_state_sb): Use dfa->mb_cur_max instead of
3235         MB_CUR_MAX.
3236         (extend_buffers): Use pstr->mb_cur_max instead of MB_CUR_MAX.
3238 2003-11-12  Jakub Jelinek  <jakub@redhat.com>
3240         * posix/Makefile (tests): Add bug-regex19.
3241         (bug-regex19-ENV): Add LOCPATH.
3242         * posix/bug-regex19.c: New test.
3244 2003-11-11  Jakub Jelinek  <jakub@redhat.com>
3246         * posix/regcomp.c (re_compile_fastmap_iter): Handle RE_ICASE
3247         with MB_CUR_MAX > 1 locales in the fastmap.
3249 2003-11-11  Jakub Jelinek  <jakub@redhat.com>
3251         * posix/regex_internal.c (build_wcs_buffer): Fix comment typo.
3252         (build_wcs_upper_buffer): Likewise.  Use towupper for wchar_t instead
3253         of toupper.
3254         * posix/Makefile (tests): Add bug-regex17 and bug-regex18.
3255         (bug-regex17-ENV, bug-regex18-ENV): Add LOCPATH.
3256         * posix/bug-regex17.c: New file
3257         * posix/bug-regex18.c: New file.
3259 2003-10-08  Thorsten Kukuk  <kukuk@suse.de>
3261         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h (pread, pwrite):
3262         Define __NR_pread/__NR_pwrite if not done in kernel headers
3264 2003-11-11  Roland McGrath  <roland@redhat.com>
3266         * manual/xtract-typefun.awk: Swallow [(){}*] from function names.
3268         * manual/Makefile (info): Don't depend on dir-add.info.
3269         (libc.dvi libc.pdf libc.info): Depend on dir-add.texi.
3270         (dir-add.info): Target removed, replaced with ...
3271         (dir-add.texi): New target.
3272         (distribute): Add it.
3273         (install): Remove variant with --section arguments.
3274         Let the @dircategory directives do their work.
3275         (mostlyclean): Don't remove dir-add.info here.
3276         (realclean): Remove dir-add.texi here.
3277         * manual/libc.texinfo: @include dir-add.texi
3278         * configure.in: Remove check for old Debian install-info.
3279         * configure: Regenerated.
3280         * config.make.in (OLD_DEBIAN_INSTALL_INFO): Variable removed.
3282 2003-11-08  Andreas Schwab  <schwab@suse.de>
3284         * scripts/data/c++-types-ia64-linux-gnu.data: New file.
3286 2003-11-10  Carlos O'Donell  <carlos@baldric.uwo.ca>
3288         * io/ftwtest-sh: Fix nested sed commands.
3290 2003-11-10  Jakub Jelinek  <jakub@redhat.com>
3292         * posix/regex_internal.h (re_string_char_size_at): Don't look beyond
3293         valid_len wide chars.
3295 2003-11-09  Roland McGrath  <roland@redhat.com>
3297         * manual/examples/dir2.c (one): Add const to argument type.
3298         Reported by J de Haan <j.de.haan@home.nl>.
3300 2003-11-07  Ulrich Drepper  <drepper@redhat.com>
3302         * po/pl.po: Update from translation team.
3304 2003-11-07  Jakub Jelinek  <jakub@redhat.com>
3306         * io/ftw.c (NFTW_OLD_NAME, NFTW_NEW_NAME): Define.
3307         (ftw_dir, ftw_startup): Add __attribute ((noinline)).
3308         (NFTW_OLD_NAME, NFTW_NEW_NAME): New functions.
3309         (NFTW_NAME): Only define if !_LIBC, add versioned_symbol
3310         and compat_symbol.
3311         * io/ftw64.c (NFTW_OLD_NAME, NFTW_NEW_NAME): Define.
3312         * io/Versions (libc): Export nftw@@GLIBC_2.3.3
3313         and nftw64@@GLIBC_2.3.3.
3315         * io/ftw.h (FTW_ACTIONRETVAL): New flag.
3316         (FTW_CONTINUE, FTW_STOP, FTW_SKIP_SUBTREE, FTW_SKIP_SIBLINGS): New.
3317         * io/ftw.c (ftw_dir): Add old_dir argument.
3318         Clear result if it was FTW_SKIP_SIBLINGS after processing all
3319         dir entries.  Change cwd back if old_dir != NULL.
3320         (process_entry): Adjust caller.  Don't change cwd back here.
3321         Change FTW_SKIP_SUBTREE result to 0.
3322         (ftw_startup): Adjust ftw_dir caller.
3323         Clear result if it was FTW_SKIP_SUBTREE or FTW_SKIP_SIBLINGS.
3324         * io/ftwtest.c (skip_subtree, skip_siblings): New variables.
3325         (options, main): Add --skip-subtree and --skip-siblings options.
3326         (cb): Use return FTW_CONTINUE instead of return 0.
3327         Handle --skip-subtree and --skip-siblings.
3328         * io/ftwtest-sh: Add tests for FTW_ACTIONRETVAL.
3329         * manual/filesys.texi: Document FTW_ACTIONRETVAL.
3331 2003-11-04  Jakub Jelinek  <jakub@redhat.com>
3333         * io/ftw.c (ftw_dir): Close dir if callback with FTW_D type returns
3334         non-zero.
3335         * io/Makefile (tests): Add bug-ftw4.
3336         * io/bug-ftw4.c: New test.
3338 2003-10-27  Daniel Jacobowitz  <drow@mvista.com>
3340         * libio/libioP.h [_IO_USE_OLD_IO_FILE]
3341         (struct _IO_FILE_complete_plus): New type.
3342         * libio/oldiofopen.c (_IO_old_fopen): Use _IO_FILE_complete_plus.
3343         * libio/oldiofdopen.c (_IO_old_fdopen): Likewise.
3344         * libio/oldiopopen.c (struct _IO_proc_file, _IO_old_popen): Likewise.
3345         Call _IO_old_init instead of _IO_init.
3347 2003-11-03  Ulrich Drepper  <drepper@redhat.com>
3349         * intl/locale.alias: nb_NO is now the correct name, not no_NO.
3351         * locale/iso-639.def: Add Blin.
3352         Patch by Daniel Yacob <locales@geez.org>.
3354 2003-10-31  Steven Munroe  <sjmunroe@us.ibm.com>
3356         * sysdeps/powerpc/powerpc32/strncmp.S: New File.
3357         * sysdeps/powerpc/powerpc64/strncmp.S: New File.
3359 2003-11-01  Randolph Chung  <tausq@debian.org>
3361         * sysdeps/unix/sysv/linux/hppa/sysdep.h (LOAD_ARGS_0, LOAD_ARGS_1,
3362         LOAD_ARGS_2, LOAD_ARGS_3, LOAD_ARGS_4, LOAD_ARGS_5, LOAD_ARGS_6):
3363         Add missing parentheses.
3365 2003-11-01  Roland McGrath  <roland@redhat.com>
3367         * libio/bug-ftell.c (do_test): Add a cast.
3369 2003-09-26  Daniel Jacobowitz  <drow@mvista.com>
3371         * Makerules (shlib.lds): Make sure that ld doesn't try to link
3372         anything while generating the linker script.
3374 2003-10-31  Roland McGrath  <roland@redhat.com>
3376         * locale/lc-ctype.c (_nl_postload_ctype): Update _nl_global_locale's
3377         special members.
3379 2003-10-29  Ulrich Drepper  <drepper@redhat.com>
3381         * po/be.po: Update from translation team.
3383 2003-10-27  Ulrich Drepper  <drepper@redhat.com>
3385         * elf/rtld.c (map_doit): Pass __RTLD_OPENEXEC in last parameter to
3386         _dl_map_object.
3388         * elf/sprof.c (load_shobj): Use l_map_start not l_addr to locate
3389         ELF header.
3391         * inet/rcmd.c (__validuser2_sa): Remove unnecessary code to skip
3392         rest of line.  We use getline which means this cannot happen.
3394 2003-10-26  Ulrich Drepper  <drepper@redhat.com>
3396         * sysdeps/unix/sysv/linux/internal_statvfs.c (__internal_statvfs):
3397         Avoid infinite loops in case the mounts file is hosed.
3398         * io/Makefile: Add rules to build and run tst-statvfs.
3399         * io/tst-statvfs.c: New file.
3401         * include/dlfcn.h (__RTLD_OPENEXEC): Define.
3402         * elf/dl-load.c (_dl_map_object_from_fd): Don't allow loading
3403         executables unless __RTLD_OPENEXEC flag is present.
3404         * elf/rtld.c (dl_main): Pass __RTLD_OPENEXEC flag to
3405         _dl_map_object when loading the executable.
3407         * sysdeps/generic/glob.c (glob): Handle GLOB_BRACE and escaping
3408         correctly.
3409         * posix/globtest.sh: Add tests for GLOB_BRACE and escaping.
3411         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Default
3412         reverse lookup format for IPv6 addresses is using bitstring and
3413         .ip6.arpa suffix.
3414         * resolv/ns_name.c: Implement encoding and decoding bitstring in
3415         hex format.
3417 2003-10-23  Jakub Jelinek  <jakub@redhat.com>
3419         * locale/programs/locale.c (show_info): Fix printing word values on
3420         64-bit big-endian architectures.
3422 2003-10-19  Bruno Haible  <bruno@clisp.org>
3424         * intl/hash-string.c (hash_string): Zero-extend each char from the
3425         string; the old code did a sign-extend on some platforms.
3427 2003-10-22  Steven Munroe  <sjmunroe@us.ibm.com>
3429         * sysdeps/powerpc/powerpc32/Makefile (+cflags, asm-CPPFLAGS): Don't
3430         append options to these.
3431         * sysdeps/powerpc/powerpc64/Makefile (+cflags, asm-CPPFLAGS): Likewise.
3433 2003-10-18  Carlos O'Donell  <carlos@baldric.uwo.ca>
3435         * sysdeps/unix/sysv/linux/hppa/sysdep.h: Fix merge error.
3437 2003-10-15  Roland McGrath  <roland@redhat.com>
3439         * elf/dl-iteratephdr.c [! SHARED] (dl_iterate_phdr): New function.
3440         Fake an entry for the main executable and then call __dl_iterate_phdr.
3441         * elf/Makefile (routines): Remove dl-iteratephdr-static.
3442         (elide-routines.os): Likewise.
3443         (CFLAGS-dl-iterate-phdr-static.c): Variable removed.
3444         * sysdeps/generic/dl-iteratephdr-static.c: File removed.
3445         * sysdeps/unix/sysv/linux/ia64/dl-iteratephdr-static.c: File removed.
3447 2003-10-15  Jakub Jelinek  <jakub@redhat.com>
3449         * elf/rtld.c (print_statistics): Print also number of relative
3450         relocations.
3452 2003-10-12  Carlos O'Donell  <carlos@baldric.uwo.ca>
3454         * sysdeps/hppa/sysdep.h: Undef JUMPTARGET before use.
3455         * sysdeps/unix/sysv/linux/hppa/sysdep.h: Define PSEUDO_ERRVAL,
3456         SYSCALL_ERROR_LABEL under all conditions, INTERNAL_SYSCALL_DECL,
3457         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO, INTERNAL_SYSCALL,
3458         and undef JUMPTARGET before use.
3459         [PIC]: Save pic register around syscall.
3460         * sysdeps/unix/sysv/linux/hppa/sysdep.c (syscall):
3461         Cleanup asm statment.
3463 2003-10-13  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
3465         * sysdeps/unix/sysv/linux/sh/sysdep.h (DO_CALL): Add SYSCALL_INST_PAD
3466         after trapa instruction.
3468 2003-10-09  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
3470         * sysdeps/unix/sysv/linux/sh/syscalls.list: Add waitpid.
3472 2003-10-10  Carlos O'Donell  <carlos@baldric.uwo.ca>
3474         * sysdeps/hppa/Makefile (CFLAGS-malloc.c): Variable removed.
3476 2003-10-09  Roland McGrath  <roland@redhat.com>
3478         * elf/rtld.c (dl_main): Don't set l_name for sysinfo DSO, since there
3479         is no file to name.
3481 2003-10-08  Jakub Jelinek  <jakub@redhat.com>
3483         * sysdeps/generic/dl-sysdep.c (_dl_important_hwcaps): Don't generate
3484         two identical copies of strings.
3486 2003-10-06  Ulrich Drepper  <drepper@redhat.com>
3488         * posix/bug-regex11.c: Add some more tests which fail so far.
3489         Disable them.  Patch by Paolo Bonzini <bonzini@gnu.org>.
3491 2003-10-05  Paolo Bonzini  <bonzini@gnu.org>
3493         * posix/bug-regex11.c: Add more backreference-related test cases.
3494         (main): Show the failing regex in the error messages.
3495         * posix/regexec.c (check_dst_limits_calc_pos):
3496         Simplify some nested conditionals.  Replace if's with a switch
3497         statement.
3498         (check_dst_limits_calc_pos <TYPE_BKREF>): Rename parameter NODE to
3499         FROM_NODE, it shadows a local variable; don't recurse if FROM_NODE
3500         does not change in the recursive invocation, fixing an infinite loop
3501         in the ()\1*\1* regex.
3502         (sift_states_backward): Fix function comment.
3503         * posix/regcomp.c (calc_epsdest): Add an assertion.
3505 2003-10-06  Ulrich Drepper  <drepper@redhat.com>
3507         * manual/examples/testopt.c: Fix warnings.  Better error message
3508         for missing -c argument.
3509         Patch mostly by Gitonga Marete <bgmarete@comcast.net>.
3511         * timezone/asia: Update from tzdata2003d.
3512         * timezone/australasia: Likewise.
3513         * timezone/backward: Likewise.
3514         * timezone/europe: Likewise.
3515         * timezone/iso3166.tab: Likewise.
3516         * timezone/northamerica: Likewise.
3517         * timezone/southamerica: Likewise.
3518         * timezone/zone.tab: Likewise.
3520 2003-10-05  Jakub Jelinek  <jakub@redhat.com>
3522         * sysdeps/ia64/backtrace.c: New file.
3523         * sysdeps/x86_64/backtrace.c: New file.
3524         * sysdeps/generic/unwind.h (_Unwind_Trace_Fn): New type.
3525         (_Unwind_Backtrace): New prototype.
3527 2003-10-03  Ulrich Drepper  <drepper@redhat.com>
3529         * sysdeps/i386/elf/bsd-setjmp.S: Use linkonce section for PIC stub.
3530         * sysdeps/i386/elf/setjmp.S: Likewise.
3532 2003-10-02  Roland McGrath  <roland@redhat.com>
3534         * argp/argp-help.c (__argp_short_program_name): Move inside [! _LIBC].
3535         * argp/argp-namefrob.h
3536         [_LIBC || HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME]
3537         (__argp_short_program_name): Don't declare fn, define it as a macro.
3539 2003-08-22  Simon Josefsson  <jas@extundo.com>
3541         * argp/argp-fmtstream.h [!__attribute__]: Define to nothing.
3543         * argp/argp-help.c: Don't include malloc.h, some platforms
3544         complain and it doesn't appear to be used.
3545         [!_LIBC && HAVE_STRERROR_R && !HAVE_DECL_STRERROR_R]: Declare
3546         strerror_r.
3547         [!_LIBC && !HAVE_STRERROR_R && !HAVE_DECL_STRERROR]: Declare
3548         strerror.
3549         (hol_entry_long_iterate): Change __attribute to __attribute__.
3550         (_help, __argp_error, __argp_failure) [!_LIBC && (HAVE_FLOCKFILE
3551         && HAVE_FUNLOCKFILE)]: Protect call to flockfile and funlockfile.
3552         (__argp_basename) [!_LIBC]: New. Taken from LSH, by Niels Möller,
3553         modified after comments from Ulrich Drepper.
3554         (__argp_short_program_name): Ditto.
3555         (__argp_state_help, __argp_error, __argp_failure): Use it.
3556         (__argp_failure): Use strerror when necessary.
3558         * argp/argp-namefrob.h (__flockfile, __funlockfile, __mempcpy)
3559         (__strchrnul, __strerror_r, __strndup) [!_LIBC]: Remove __-prefix.
3560         (clearerr_unlocked, feof_unlocked, ferror_unlocked)
3561         (fflush_unlocked, fgets_unlocked, fputc_unlocked, fputs_unlocked)
3562         (fread_unlocked, fwrite_unlocked, getc_unlocked, getchar_unlocked)
3563         (putc_unlocked, putchar_unlocked) [!_LIBC && !HAVE_DECL_*]: Map to
3564         non-unlocked functions.
3565         [!_LIBC]: Add prototypes for __argp_basename and
3566         __argp_short_program_name.
3568         * argp/argp-parse.c (argp_default_parser): Only use
3569         program_invocation{_short,}_name if declared.
3570         (parser_init): Use __argp_short_program_name.
3572         * argp/argp-xinl.c [_LIBC || HAVE_FEATURES_H]: Add CPP check for
3573         '#include features.h'.
3575         * argp/argp.h [!__attribute__]: Define to nothing.
3577 2003-09-26  Paolo Bonzini  <bonzini@gnu.org>
3579         * posix/regcomp.c (parse_sub_exp): Pass RE_CARET_ANCHORS_HERE
3580         for the first token in a subexpression as well.
3582 2003-10-02  Jakub Jelinek  <jakub@redhat.com>
3584         * posix/regcomp.c (peek_token): Add 2003-09-20 changes for anchor
3585         handling again.
3586         (parse_reg_exp): Likewise.
3587         * posix/regex.h (RE_CARET_ANCHORS_HERE): Define.
3589         * posix/bug-regex11.c (tests): Add new tests.
3590         * posix/bug-regex12.c (tests): Add new test.
3592 2003-10-01  Thorsten Kukuk  <kukuk@suse.de>
3594         * elf/dl-reloc.c (_dl_allocate_static_tls): Move definition of
3595         variables only used if TLS_DTV_AT_TP is defined into the #if branch.
3597 2003-10-02  Jeroen Dekkers  <jeroen@dekkers.cx>
3599         * sysdeps/mach/hurd/malloc-machine.h: Copy the tsd code from
3600         the old thread-m.h header too.
3602 2003-10-02  Ulrich Drepper  <drepper@redhat.com>
3604         * sysdeps/unix/sysv/linux/ia64/bits/sigstack.h (MINSIGSTKSZ): Go
3605         back to 131027 since this is what the kernel enforces.
3607         * inet/getnameinfo.c: Move domain out of nrl_domainname scope and
3608         define it with libc_freeres_ptr.
3610 2003-10-01  Roland McGrath  <roland@redhat.com>
3612         * elf/rtld.c (dl_main): Add cast in last change.
3614 2003-09-10  Chris Demetriou  <cgd@broadcom.com>
3616         * sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h: Remove
3617         "#if 0" surrounding most of contents.
3618         (SYSCALL_ERROR_LABEL): Define.
3619         (__SYSCALL_CLOBBERS): Add $10.
3620         (internal_syscall7): Remove.
3621         * sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h: Likewise.
3623 2003-09-30  Ulrich Drepper  <drepper@redhat.com>
3625         * elf/rtld.c (dl_main): Also set l_map_start.
3627 2003-09-30  Daniel Jacobowitz  <drow@mvista.com>
3629         * elf/rtld.c (dl_main): Set l_libname and l_name for the sysinfo DSO
3630         to work around kernel problem.
3632 2003-09-27  Wolfram Gloger  <wg@malloc.de>
3634         * malloc/malloc.c: Include <malloc-machine.h> earlier instead of
3635         "thread-m.h", so that default parameters can be overridden in a
3636         system-specific malloc-machine.h.  Remove extra ; from extern "C"
3637         closing brace.
3638         * sysdeps/generic/malloc-machine.h: New file.
3639         * sysdeps/mach/hurd/malloc-machine.h: New file.
3640         * malloc/thread-m.h: Removed.
3641         * malloc/Makefile: Remove CFLAGS-malloc.c parameter addition, it
3642         is in sysdeps/generic/malloc-machine.h now.
3644 2003-09-29  Ulrich Drepper  <drepper@redhat.com>
3646         * elf/dl-reloc.c (_dl_allocate_static_tls): Move definition of
3647         variables only used if TLS_TCB_AT_TP is defined into the #if
3648         branch.
3650         * sysdeps/unix/sysv/linux/sys/sysmacros.h: Add __extension__ as
3651         well to cover using long long in C90.
3653 2003-09-28  Alfred M. Szmidt  <ams@kemisten.nu>
3655         * sysdeps/mach/hurd/bits/libc-lock.h (__libc_cleanup_pop):
3656         Redefine and use __libc_cleanup_region_end instead.
3658 2003-09-29  Thorsten Kukuk  <kukuk@suse.de>
3660         * sysdeps/unix/sysv/linux/sys/sysmacros.h: Use __inline and
3661         fix prototypes for picky C++ compilers.
3663 2003-09-27  Ulrich Drepper  <drepper@redhat.com>
3665         * sysdeps/unix/sysv/linux/ustat.c (ustat): Set errno to EINVAL if
3666         the device ID is invalid and return -1.
3667         * sysdeps/unix/sysv/linux/xmknod.c (__xmknod): Likewise.
3669 2003-09-26  Andreas Schwab  <schwab@suse.de>
3671         * sysdeps/unix/sysv/linux/ia64/getcontext.S: Pass fourth argument to
3672         rt_sigprocmask system call.
3674 2003-09-25  Roland McGrath  <roland@redhat.com>
3676         * sysdeps/unix/sysv/linux/dl-execstack.c (_dl_make_stack_executable):
3677         Don't check for zero __libc_stack_end, it should be initialized.
3678         [_STACK_GROWS_DOWN] [PROT_GROWSDOWN]: Try using PROT_GROWSDOWN flag
3679         and fall back if it fails with EINVAL.
3680         [_STACK_GROWS_UP] [PROT_GROWSUP]: Likewise for PROT_GROWSUP.
3682 2003-09-25  Jakub Jelinek  <jakub@redhat.com>
3684         * sysdeps/unix/sysv/linux/x86_64/dl-procinfo.c: Include
3685         sysdeps/i386/dl-procinfo.c instead of
3686         sysdeps/unix/sysv/linux/i386/dl-procinfo.c.
3687         * sysdeps/unix/sysv/linux/i386/dl-procinfo.h: Avoid using
3688         #include_next.
3690 2003-09-25  Ulrich Drepper  <drepper@redhat.com>
3692         * posix/regcomp.c (peek_token): Remove recent changes for anchor
3693         handling again.
3694         (parse_reg_exp): Likewise.
3695         * posix/regex.h: Remove RE_CARET_ANCHORS_HERE.
3697         * csu/Makefile ($(objpfx)version-info.h): Fix sed script to handle
3698         banners.
3700         * nis/nis_table.c (nis_list): Always strdup string used with
3701         ibreq->ibr_name.  Add several NULL pointer checks.
3703         * nis/nss_nisplus/nisplus-alias.c: Add check for NULL return value
3704         of nis_list.
3705         * nis/nss_nisplus/nisplus-ethers.c: Likewise.
3706         * nis/nss_nisplus/nisplus-grp.c: Likewise.
3707         * nis/nss_nisplus/nisplus-hosts.c: Likewise.
3708         * nis/nss_nisplus/nisplus-netgrp.c: Likewise.
3709         * nis/nss_nisplus/nisplus-network.c: Likewise.
3710         * nis/nss_nisplus/nisplus-proto.c: Likewise.
3711         * nis/nss_nisplus/nisplus-publickey.c: Likewise.
3712         * nis/nss_nisplus/nisplus-pwd.c: Likewise.
3713         * nis/nss_nisplus/nisplus-rpc.c: Likewise.
3714         * nis/nss_nisplus/nisplus-service.c: Likewise.
3715         * nis/nss_nisplus/nisplus-spwd.c: Likewise.
3717         * sysdeps/unix/sysv/linux/alpha/bits/mman.h: Define PROT_GROWSDOWN
3718         and PROT_GROWSUP.
3719         * sysdeps/unix/sysv/linux/arm/bits/mman.h: Likewise.
3720         * sysdeps/unix/sysv/linux/cris/bits/mman.h: Likewise.
3721         * sysdeps/unix/sysv/linux/hppa/bits/mman.h: Likewise.
3722         * sysdeps/unix/sysv/linux/i386/bits/mman.h: Likewise.
3723         * sysdeps/unix/sysv/linux/ia64/bits/mman.h: Likewise.
3724         * sysdeps/unix/sysv/linux/m68k/bits/mman.h: Likewise.
3725         * sysdeps/unix/sysv/linux/powerpc/bits/mman.h: Likewise.
3726         * sysdeps/unix/sysv/linux/s390/bits/mman.h: Likewise.
3727         * sysdeps/unix/sysv/linux/sh/bits/mman.h: Likewise.
3728         * sysdeps/unix/sysv/linux/sparc/bits/mman.h: Likewise.
3729         * sysdeps/unix/sysv/linux/x86_64/bits/mman.h: Likewise.
3731 2003-09-25  Jakub Jelinek  <jakub@redhat.com>
3733         * misc/syslog.c: Include locale.h.
3734         (vsyslog): Add date always in C locale %h %e %T format.
3736 2003-09-24  Paul Eggert  <eggert@twinsun.com>
3738         * argp/argp-fmtstream.c (__argp_fmtstream_ensure): Check for
3739         size_t overflow when reallocating storage.
3740         * argp/argp-help.c (make_hol, hol_append): Likewise.
3741         (SIZE_MAX): New macro.
3743 2003-08-07  Alfred M. Szmidt  <ams@kemisten.nu>
3745         * sysdeps/mach/hurd/bits/libc-lock.h
3746         (__libc_cleanup_push, __libc_cleanup_pop): New macros.
3748 2003-08-01  Alfred M. Szmidt  <ams@kemisten.nu>
3750         * sysdeps/i386/dl-procinfo.h: New file, contents taken from ...
3751         * sysdeps/unix/sysv/linux/i386/dl-procinfo.h: ... here.
3752         #include_next dl-procinfo.h to get them.
3753         (_DL_HWCAP_COUNT): Moved to sysdeps/i386/dl-procinfo.h.
3754         (_DL_PLATFORMS_COUNT): Likewise.
3755         (_DL_FIRST_PLATFORM): Likewise.
3756         (_DL_HWCAP_PLATFORM): Likewise.
3757         (HWCAP_I386_FPU, HWCAP_I386_VME, HWCAP_I386_DE, HWCAP_I386_PSE,
3758         HWCAP_I386_TSC, HWCAP_I386_MSR, HWCAP_I386_PAE, HWCAP_I386_MCE,
3759         HWCAP_I386_CX8, HWCAP_I386_APIC, HWCAP_I386_SEP, HWCAP_I386_MTRR,
3760         HWCAP_I386_PGE, HWCAP_I386_MCA, HWCAP_I386_CMOV,
3761         HWCAP_I386_FCMOV, HWCAP_I386_MMX, HWCAP_I386_OSFXSR,
3762         HWCAP_I386_XMM, HWCAP_I386_XMM2, HWCAP_I386_AMD3D,
3763         HWCAP_IMPORTANT): Likewise.
3764         (_DL_PROCINFO_H_): Likewise.
3765         (_dl_hwcap_string, _dl_platform_string, _dl_string_hwcap): Likewise.
3766         (_dl_string_platform): Likewise.
3767         * sysdeps/unix/sysv/linux/i386/dl-procinfo.c: Moved to ...
3768         * sysdeps/i386/dl-procinfo.c: ... here, new file.
3770 2003-09-24  Ulrich Drepper  <drepper@redhat.com>
3772         * sysdeps/unix/sysv/linux/dl-execstack.c
3773         (_dl_make_stack_executable): Remember that we changed the permission.
3775         * sysdeps/ia64/dl-machine.h (RTLD_START): Remove setting of
3776         __libc_stack_end.  Patch by David Mosberger.
3778 2003-09-24  Jakub Jelinek  <jakub@redhat.com>
3780         * elf/Versions (ld): Export __libc_stack_end@GLIBC_2.1 instead of
3781         __libc_stack_end@GLIBC_PRIVATE.
3783         * sysdeps/generic/dl-sysdep.c (DL_STACK_END): Define if not defined.
3784         (_dl_sysdep_start): Set __libc_stack_end here.
3785         * sysdeps/alpha/dl-machine.h (RTLD_START): Remove setting of
3786         __libc_stack_end.
3787         * sysdeps/arm/dl-machine.h (RTLD_START): Likewise.
3788         * sysdeps/cris/dl-machine.h (RTLD_START): Likewise.
3789         * sysdeps/i386/dl-machine.h (RTLD_START): Likewise.
3790         * sysdeps/m68k/dl-machine.h (RTLD_START): Likewise.
3791         * sysdeps/s390/s390-32/dl-machine.h (RTLD_START): Likewise.
3792         * sysdeps/s390/s390-64/dl-machine.h (RTLD_START): Likewise.
3793         * sysdeps/sh/dl-machine.h (RTLD_START): Likewise.
3794         * sysdeps/x86_64/dl-machine.h (RTLD_START): Likewise.
3795         * sysdeps/ia64/dl-machine.h (DL_STACK_END): Define.
3796         * sysdeps/sparc/sparc32/dl-machine.h (DL_STACK_END): Define.
3797         (RTLD_START): Remove setting of __libc_stack_end.
3798         * sysdeps/sparc/sparc64/dl-machine.h (DL_STACK_END): Define.
3799         (RTLD_START): Remove setting of __libc_stack_end.
3801 2003-09-24  Ulrich Drepper  <drepper@redhat.com>
3803         * sysdeps/unix/sysv/linux/sys/sysmacros.h: Add gnu_dev_ prefix to
3804         function definitions.  Adjust macro expansions accordingly.
3805         * sysdeps/unix/sysv/linux/Versions: Add gnu_dev_ prefix to major,
3806         minor, makedev name.
3807         * sysdeps/unix/sysv/linux/makedev.c: Likewise.
3809 2003-09-24  Jakub Jelinek  <jakub@redhat.com>
3811         * sysdeps/unix/sysv/linux/sys/sysmacros.h (major, minor, makedev):
3812         Add __THROW.
3814 2003-09-24  Jakub Jelinek  <jakub@redhat.com>
3816         * nscd/Makefile (others): Add nscd before including ../Rules.
3818 2003-09-24  Ulrich Drepper  <drepper@redhat.com>
3820         * nscd/Makefile: Add rules to build nscd as a PIE.
3821         * configure.in: Check for -fpie and -pie compiler options.
3822         * config.make.in (have-fpie): Define.
3824 2003-09-23  Ulrich Drepper  <drepper@redhat.com>
3826         * sysdeps/unix/sysv/linux/sys/sysmacros.h: Adjust for larger
3827         kernel dev_t size.
3828         * sysdeps/unix/sysv/linux/alpha/sys/sysmacros.h: Removed.
3829         * sysdeps/unix/sysv/linux/sparc/sys/sysmacros.h: Removed.
3830         * sysdeps/unix/sysv/linux/makedev.c: New file.
3831         * sysdeps/unix/sysv/linux/Dist: Add makedev.c.
3832         * sysdeps/unix/sysv/linux/Makefile [subdir=misc]
3833         (sysdep_routines): Add makedev.
3834         * sysdeps/unix/sysv/linux/Versions [libc] (GLIBC_2.3.3): Add
3835         major, minor, makedev.
3836         * sysdeps/unix/sysv/linux/ustat.c (ustat): Adjust for 32-bit
3837         kernel dev_t.
3838         * sysdeps/unix/sysv/linux/alpha/ustat.c: Removed.
3839         * sysdeps/unix/sysv/linux/xmknod.c (__xmknod): Likewise.
3840         * sysdeps/unix/sysv/linux/alpha/xmknod.c: Removed.
3841         Code by Alexander Viro <aviro@redhat.com>.
3843 2003-09-23  Ulrich Drepper  <drepper@redhat.com>
3845         * sysdeps/unix/sysv/linux/powerpc/powerpc32/Versions [libc]
3846         (GLIBC_2.3.3): Add setcontext, getcontext, swapcontext, and
3847         makecontext.
3848         * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: Correct change
3849         for include Altivec support for PPC32.  It was not compatible.
3850         * sysdeps/unix/sysv/linux/powerpc/powerpc32/ucontext_i.h: Adjust
3851         offsets for ucontext_t change.
3852         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Adjust
3853         for ucontext_t change.  Add compatibility code.
3854         * sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S: Likewise.
3855         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Likewise.
3856         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Likewise.
3857         Patch by Paul Mackerras <paulus@samba.org>.
3859 2003-02-25  Randolph Chung  <tausq@debian.org>
3861         * sysdeps/hppa/Makefile: Include compat code in build.
3862         * sysdeps/hppa/libgcc-compat.c: New file.
3863         * sysdeps/hppa/Dist: Add libgcc-compat.c.
3864         * sysdeps/hppa/Versions [GLIBC_2.2]: Add __clz_tab.
3866 2003-09-23  Roland McGrath  <roland@redhat.com>
3868         * elf/rtld.c (dl_main): In rtld_is_main case, reinitialize
3869         GL(dl_stack_flags) according to rtld's own PT_GNU_STACK.
3870         Move GL(dl_make_stack_executable_hook) initialization up.
3871         * elf/tst-execstack-prog.c: New file.
3872         * elf/Makefile (tests-execstack-yes): Add it.
3873         (LDFLAGS-tst-execstack-prog): New variable.
3875 2003-09-23  Jakub Jelinek  <jakub@redhat.com>
3877         * sysdeps/x86_64/dl-machine.h (RTLD_START): Set __libc_stack_end
3878         before calling _dl_start, using %rip relative access.
3879         Use %rip relative access to _dl_skip_args, _rtld_local._dl_loaded
3880         and _dl_fini.
3882 2003-09-23  Roland McGrath  <roland@redhat.com>
3884         * sysdeps/i386/dl-machine.h (RTLD_START): Set __libc_stack_end before
3885         calling _dl_start, using GOTOFF access.
3887         * configure.in (libc_cv_z_execstack): New check.
3888         * configure: Regenerated.
3889         * config.make.in (have-z-execstack): New variable set by it.
3890         * elf/tst-execstack.c: New file.
3891         * elf/tst-execstack-mod.c: New file.
3892         * elf/tst-execstack-needed.c: New file.
3893         * elf/Makefile (tests-execstack-yes, modules-execstack-yes): New
3894         variables.
3895         (tests, modules-names): Conditionally include them.
3896         (distribute): Add tst-execstack-mod.c here.
3897         ($(objpfx)tst-execstack, $(objpfx)tst-execstack.out): New targets.
3898         (LDFLAGS-tst-execstack, LDFLAGS-tst-execstack-mod): New variables.
3899         ($(objpfx)tst-execstack-needed): New target.
3900         (LDFLAGS-tst-execstack-needed): New variable.
3902         * sysdeps/generic/ldsodefs.h (struct rtld_global): Add _dl_stack_flags
3903         and _dl_make_stack_executable_hook.  Declare _dl_make_stack_executable.
3904         * elf/rtld.c (_rtld_global): Add initializer for _dl_stack_flags.
3905         (dl_main): Reset _dl_stack_flags according to PT_GNU_STACK phdr.
3906         Initialize _dl_make_stack_executable_hook.
3907         * elf/dl-support.c: Define those new variables.
3908         (_dl_non_dynamic_init): Scan phdrs for PT_GNU_STACK.
3909         (_dl_phdr): Fix type.
3910         * elf/dl-load.c (_dl_map_object_from_fd): Grok PT_GNU_STACK phdr and
3911         enable execute permission for the stack if necessary.
3912         * sysdeps/generic/dl-execstack.c: New file.
3913         * elf/Makefile (dl-routines): Add it.
3914         * elf/Versions (ld: GLIBC_PRIVATE): Add _dl_make_stack_executable.
3915         * sysdeps/unix/sysv/linux/dl-execstack.c: New file.
3917 2003-09-23  Ulrich Drepper  <drepper@redhat.com>
3919         * sysdeps/posix/sprofil.c (pc_to_index): Remove inline marker.
3921 2003-09-20  Alfred M. Szmidt  <ams@kemisten.nu>
3923         * sysdeps/generic/utmp_file.c (setutent_file, LOCK_FILE,
3924         UNLOCK_FILE, setutent_file): Use fcntl_not_cancel instead of
3925         __fcntl_nocancel.
3927 2003-09-22  Ulrich Drepper  <drepper@redhat.com>
3929         * malloc/malloc.c: Include <stdint.h>.
3931 2003-09-20  Paolo Bonzini  <bonzini@gnu.org>
3933         * posix/regcomp.c (build_word_op): Rename like...
3934         (build_charclass_op): ...this.  Accept two extra parameters,
3935         CLASS_NAME and EXTRA.  Add EXTRA to the result, not only _.
3936         (peek_token): Accept \s and \S as OP_SPACE and OP_NOTSPACE.
3937         (parse_expression): Replace build_word_op with
3938         build_charclass_op, add new arguments, accept OP_SPACE
3939         and OP_NOTSPACE.
3940         * posix/regex_internal.h (re_token_type_t): Add OP_SPACE
3941         and OP_NOTSPACE.
3943         * posix/regcomp.c (peek_token): Don't look back for ( or |
3944         to check whether to treat a caret as special.  It fails
3945         for the (extended) regex \(^.
3946         (parse, parse_reg_exp): Pass RE_CARET_ANCHORS_HERE to fetch_token.
3947         * posix/regex.h: Define RE_CARET_ANCHORS_HERE.
3949         * posix/regexec.c: Check out of bounds value before shifting.
3951         * posix/regex_internal.h: Define __attribute for non-gcc.
3953 2003-09-22  Jakub Jelinek  <jakub@redhat.com>
3955         * include/atomic.h (atomic_compare_and_exchange_val_rel,
3956         atomic_compare_and_exchange_bool_rel): Swap oldval/newval arguments
3957         to avoid confusion.
3959         * sysdeps/unix/opendir.c: Include string.h.
3961 2003-09-22  Ulrich Drepper  <drepper@redhat.com>
3963         * timezone/zdump.c: Update from tzcode2003c.
3964         * timezone/zic.c: Likewise.
3965         * timezone/leapseconds: Update from tzdata2003c.
3967 2003-09-19  Ulrich Drepper  <drepper@redhat.com>
3969         * elf/Makefile ($(objpfx)librtld.os): Create link map also for
3970         final build to ease quality control.
3972         * sysdeps/unix/sysv/linux/getcwd.c (__getcwd): If compiled for
3973         ld.so, don't include NULL buffer pointer handling.
3975 2003-09-19  Jakub Jelinek  <jakub@redhat.com>
3977         * dlfcn/dlopen.c (dlopen): Add static_link_warning.
3979 2003-09-18  Jakub Jelinek  <jakub@redhat.com>
3981         * libio/memstream.c (open_memstream): Use _IO_init instead of
3982         _IO_old_init.
3984 2003-09-17  Ulrich Drepper  <drepper@redhat.com>
3986         * sysdeps/generic/wordexp.c (eval_expr_val): Use strtol since we
3987         have to recognize octal and hexadecimal numbers as well.  Simplify
3988         function, signs are handled in strtol.
3989         * posix/wordexp-test.c: Add tests for octal and hexadecimal
3990         numbers in arithmetic expressions.
3992 2003-09-17  Jakub Jelinek  <jakub@redhat.com>
3994         * elf/Makefile (distribute): Add tst-alignmod.c.
3995         (tests): Add tst-align.
3996         (modules-names): Add tst-alignmod.
3997         (CFLAGS-tst-align.c, CFLAGS-tst-alignmod.c): Add
3998         $(stack-align-test-flags).
3999         ($(objpfx)tst-align): Depend on libdl.
4000         ($(objpfx)tst-align.out): Depend on tst-alignmod.so.
4001         * elf/tst-align.c: New file.
4002         * elf/tst-alignmod.c: New file.
4003         * misc/Makefile (CFLAGS-tst-tsearch.c): Add $(stack-align-test-flags).
4004         * misc/tst-tsearch.c: Include tst-stack-align.h.
4005         (stack_align_check): New array.
4006         (cmp_fn, walk_action): Use TEST_STACK_ALIGN ().
4007         (main): Report error if stack was not enough aligned
4008         in cmp_fn or walk_action.
4009         * stdlib/Makefile (CFLAGS-tst-qsort.c): Add $(stack-align-test-flags).
4010         * stdlib/tst-qsort.c: Include tst-stack-align.h.
4011         (align_check): New var.
4012         (compare): Use TEST_STACK_ALIGN () macro.
4013         (main): Report error if stack was not enough aligned in compare.
4014         * sysdeps/i386/i686/Makefile (stack-align-test-flags): Remove
4015         unneeded -mpreferred-stack-boundary=4.
4016         * sysdeps/x86_64/tst-stack-align.h: New file.
4018         * libio/memstream.c (_IO_wmem_jumps): Remove unused structure.
4019         (_IO_wmem_sync, _IO_wmem_finish): Remove unused functions.
4021 2003-09-17  Philip Blundell  <philb@gnu.org>
4023         * sysdeps/arm/dl-machine.h (CALL_ROUTINE): Deleted.
4024         (BX): Define.
4025         (ELF_MACHINE_RUNTIME_TRAMPOLINE): Optimise a little.
4027         * sysdeps/arm/sysdep.h (DO_RET): New.
4029         * sysdeps/unix/sysv/linux/arm/vfork.S: Add #error if __NR_vfork
4030         required but not defined.  Improve test of error code.
4032 2003-09-17  Jakub Jelinek  <jakub@redhat.com>
4034         * sysdeps/i386/Makefile (stack-align-test-flags): Add
4035         -malign-double -mpreferred-stack-boundary=4.
4037 2003-09-17  Ulrich Drepper  <drepper@redhat.com>
4039         * sysdeps/posix/utimes.c (__utimes): Truncate instead of round.
4040         * sysdeps/unix/sysv/linux/utimes.c (__utimes): Likewise.
4042 2003-09-15  Jakub Jelinek  <jakub@redhat.com>
4044         * sysdeps/i386/Makefile (sysdep-CFLAGS): If not in math or csu
4045         subdir, add -mpreferred-stack-boundary=4, with few exceptions.
4047 2003-09-17  Jakub Jelinek  <jakub@redhat.com>
4049         * Makeconfig (stack-align-test-flags): Set.
4050         * stdlib/Makefile (CFLAGS-tst-bsearch.c): Add
4051         $(stack-align-test-flags).
4052         * stdlib/tst-bsearch.c: Include tst-stack-align.h.
4053         (align_check): New var.
4054         (comp): Use TEST_STACK_ALIGN macro.
4055         (do_test): Fail if align_check != 1.
4056         * sysdeps/generic/tst-stack-align.h: New file.
4057         * sysdeps/i386/i686/Makefile (stack-align-test-flags): Add -msse.
4058         * sysdeps/i386/i686/tst-stack-align.h: New file.
4060 2003-09-17  Ulrich Drepper  <drepper@redhat.com>
4062         * sysdeps/unix/sysv/linux/i386/clone.S: Make sure child gets a
4063         stack which is aligned (mod 16).
4065 2003-09-17  Uwe Reimann  <Uwe_Reimann@gmx.net>
4066             Hans-Peter Nilsson  <hp@axis.com>
4068         * sysdeps/cris/dl-machine.h (elf_machine_type_class): Classify
4069         R_CRIS_GLOB_DAT as ELF_RTYPE_CLASS_PLT.  Clarify comment.
4071 2003-09-17  Jakub Jelinek  <jakub@redhat.com>
4073         * dirent/scandir.c: Include bits/libc-lock.h.
4074         (struct scandir_cancel_struct): New type.
4075         (cancel_handler): New function.
4076         (SCANDIR): Add __libc_cleanup_{push,pop}, save state into
4077         scandir_cancel_struct.
4079 2003-09-16  Ulrich Drepper  <drepper@redhat.com>
4081         * sysdeps/unix/sysv/linux/Dist: Remove internal_statvfs.c.
4082         * sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines):
4083         Add internal_statvfs.
4084         * sysdeps/unix/sysv/linux/fstatvfs.c: Call __internal_statvfs
4085         instead of including "internal_statvfs.c".
4086         * sysdeps/unix/sysv/linux/statvfs.c: Likewise.
4087         * sysdeps/unix/sysv/linux/internal_statvfs.c: Make it a real function.
4088         Add code to avoid the stat calls on all the reported mount points
4089         when we can determine mismatch in advance.
4090         * sysdeps/unix/sysv/linux/linux_fsinfo.h: Add AUTOFS_SUPER_MAGIC and
4091         USBDEVFS_SUPER_MAGIC.
4093 2003-09-16  Jakub Jelinek  <jakub@redhat.com>
4095         * posix/Versions (sched_getaffinity, sched_setaffinity): Change
4096         from GLIBC_2.3.2 to GLIBC_2.3.3 symbol version.
4098 2003-09-16  Bruno Haible  <bruno@clisp.org>
4100         * intl/tst-gettext2.sh: Set GCONV_PATH and LOCPATH only after
4101         invoking msgfmt, not before.
4103 2003-09-15  Jakub Jelinek  <jakub@redhat.com>
4105         * argp/argp.h (argp_parse, __argp_parse): Remove __THROW.
4106         * argp/Makefile (CFLAGS-argp-help.c, CFLAGS-argp-parse.c): Add
4107         $(uses-callbacks).
4108         * dirent/Makefile (CFLAGS-scandir.c, CFLAGS-scandir64.c): Likewise.
4109         * elf/Makefile (CFLAGS-dl-iterate-phdr.c,
4110         CFLAGS-dl-iterate-phdr-static.c): Add $(uses-callbacks).
4111         * elf/dl-iteratephdr.c (cancel_handler): New function.
4112         (__dl_iterate_phdr): Add __libc_cleanup_{push,pop}.
4113         * elf/link.h (dl_iterate_phdr): Remove __THROW.
4114         * io/Makefile (CFLAGS-fts.c): Merge into one assignment.
4115         Add $(uses-callbacks).
4116         (CFLAGS-ftw.c, CFLAGS-ftw64.c): Add $(uses-callbacks).
4117         * misc/Makefile (CFLAGS-tsearch.c, CFLAGS-lsearch.c): Change
4118         $(exceptions) to $(uses-callbacks).
4119         * Makeconfig (uses-callbacks): Set to $(exceptions).
4120         * posix/Makefile (CFLAGS-glob.c, CFLAGS-glob64.c): Add
4121         $(uses-callbacks).
4122         * stdlib/Makefile (CFLAGS-bsearch.c, CFLAGS-msort.c, CFLAGS-qsort.c):
4123         Likewise.
4125 2003-09-15  Andreas Schwab  <schwab@suse.de>
4127         * sysdeps/m68k/setjmp.c: Add hidden_def.
4129 2003-09-14  Ulrich Drepper  <drepper@redhat.com>
4131         * libio/memstream.c (open_memstream): Don't allow wide char operations.
4133         * dirent/dirent.h: Remove __THROW from scandir.
4135 2003-09-14  Philip Blundell  <philb@gnu.org>
4137         * sysdeps/unix/sysv/linux/arm/mmap.S: Use sys_mmap2 if it's known
4138         to be available.
4140         * sysdeps/unix/sysv/linux/arm/mmap64.S: Optimise code a little.
4142         * sysdeps/arm/memset.S: Rewrite.
4144 2003-09-12  Jakub Jelinek  <jakub@redhat.com>
4146         * sysdeps/unix/sysv/linux/s390/bits/typesizes.h: New.
4147         (__SSIZE_T_TYPE): Define to __SWORD_TYPE for gcc 2.95.x and
4148         __SLONGWORD_TYPE otherwise.
4150 2003-09-14  Ulrich Drepper  <drepper@redhat.com>
4152         * io/Makefile (CFLAGS-ftw.c): Add -fexceptions.
4153         (CFLAGS-ftw64.c): Likewise.
4155 2003-09-13  Ulrich Drepper  <drepper@redhat.com>
4157         * nscd/Makefile (CFLAGS-nscd_getpw_r.c): Add -fexceptions.
4158         (CFLAGS-nscd_getgr_r.c): Likewise.
4159         (CFLAGS-nscd_gethst_r.c): Likewise.
4161 2003-09-12  Ulrich Drepper  <drepper@redhat.com>
4163         * sysdeps/unix/sysv/linux/if_index.c: Use only non-cancelable
4164         interfaces.
4166         * grp/Makefile (CFLAGS-getgrgid_r.c, CFLAGS-getgrnam_r.c,
4167         CFLAGS-fgetgrent.c, CFLAGS-fgetgrent_r.c, CFLAGS-putgrent.c,
4168         CFLAGS-initgroups.c, CFLAGS-getgrgid.c): Add -fexceptions.
4169         * inet/Makefile (CFLAGS-either_ntoh.c, CFLAGS-either_hton.c,
4170         CFLAGS-getnetgrent.c, CFLAGS-getnetgrent_r.c): Likewise.
4171         * io/Makefile (CFLAGS-posix_fallocate.c, CFLAGS-posix_fallocate64.c):
4172         Likewise.
4173         * misc/Makefile (CFLAGS-err.c): Likewise.
4174         * posix/Makefile (CFLAGS-getaddrinfo.c, CFLAGS-spawn.c,
4175         CFLAGS-spawnp.c, CFLAGS-spawni.c, CFLAGS-pause.c, CFLAGS-glob.c,
4176         CFLAGS-glob64.c): Likewise.
4177         * pwd/Makefile (CFLAGS-getpw.c): Likewise.
4178         * shadow/Makefile (CFLAGS-fgetspent.c, CFLAGS-fgetspent_r.c,
4179         CFLAGS-putspent.c, CFLAGS-getspnam.c, CFLAGS-getspnam_r.c): Likewise.
4180         * stdio-common/Makefile (CFLAGS-cuserid.c): Likewise.
4181         * sunrpc/Makefile (CFLAGS-openchild.c): Likewise.
4183         * stdlib/Makefile (CFLAGS-mkstemp.c): Remove definition.
4185         * libio/stdio.h: Remove __THROW from cuserid prototype.
4187         * locale/loadarchive.c: Use only non-cancelable interfaces.
4188         * resolv/herror.c (herror): Likewise.
4190         * malloc/hooks.c: Before using IO stream mark stream so it uses
4191         only non-cancelable interfaces.
4192         * malloc/malloc.c: Likewise.
4193         * posix/getopt.c: Likewise.
4196 2003-09-11  Jakub Jelinek  <jakub@redhat.com>
4198         * Makerules (LDFLAGS-c.so): Remove -u __register_frame.
4200 2003-09-12  Ulrich Drepper  <drepper@redhat.com>
4202         * stdio-common/stdio_ext.h: Mark most functions with __THROW.
4204         * misc/err.h: Remove __THROW from all prototypes.
4206         * posix/getopt.h (__THROW): Define if not already defined.  Add
4207         __THROW to the getopt functions.
4209 2003-09-11  Ulrich Drepper  <drepper@redhat.com>
4211         * io/Makefile (CFLAGS-lockf.c): Add -fexceptions.
4212         (CFLAGS-fts.c): Likewise.
4213         * io/fcntl.h: Remove __THROW from lockf prototypes.
4214         * io/fts.h: Remove most __THROW.
4216 2003-09-11  H.J. Lu  <hongjiu.lu@intel.com>
4218         * elf/tls-macros.h (TLS_IE): Add a stop bit for ia64.
4219         (TLS_LD): Likewise.
4220         (TLS_GD): Likewise.
4222 2003-09-11  Jakub Jelinek  <jakub@redhat.com>
4224         * libio/fileops.c (_IO_new_file_overflow): Add INTUSE to
4225         _IO_free_backup_area call.
4227 2003-09-10  Chris Demetriou  <cgd@broadcom.com>
4229         * sysdeps/unix/sysv/linux/mips/pread64.c (__libc_pread64): Fix
4230         syscall invocation.
4231         * sysdeps/unix/sysv/linux/mips/pwrite64.c (__libc_pwrite64): Likewise.
4232         * sysdeps/unix/sysv/linux/mips/pread.c (__libc_pread): Likewise.
4233         Also, only assert off_t size is 4 for N32 and O32, and clean up
4234         white space.
4235         * sysdeps/unix/sysv/linux/mips/pwrite.c (__libc_pwrite): Likewise.
4237 2003-09-10  Roland McGrath  <roland@redhat.com>
4239         * sysdeps/unix/sysv/linux/tcgetattr.c (__tcgetattr):
4240         Don't use c_ispeed under [! _HAVE_STRUCT_TERMIOS_C_ISPEED].
4241         Don't use c_ospeed under [! _HAVE_STRUCT_TERMIOS_C_OSPEED].
4242         * sysdeps/unix/sysv/linux/tcsetattr.c (tcsetattr): Likewise.
4243         Reported by Daniel Jacobowitz  <drow@mvista.com>.
4245 2003-09-10  Jakub Jelinek  <jakub@redhat.com>
4247         * string/Makefile (strop-tests): Add memccpy.
4248         * string/test-memccpy.c: New test.
4250 2003-09-09  Jakub Jelinek  <jakub@redhat.com>
4252         * sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h (SIGCONTEXT): Add
4253         siginfo_t * argument before, change into struct ucontext *.
4254         (SIGCONTEXT_EXTRA_ARGS): Define to _si,.
4255         (GET_PC, GET_FRAME, GET_STACK): Adjust for ctx being a pointer
4256         instead of structure.
4257         * sysdeps/unix/sysv/linux/x86_64/register-dump.h (REGISTER_DUMP):
4258         Likewise.
4260 2003-09-09  Ulrich Drepper  <drepper@redhat.com>
4262         * string/stratcliff.c (main): Check memccpy.
4264 2003-04-11  Jes Sorensen  <jes@wildopensource.com>
4266         * sysdeps/ia64/memccpy.S: When recovering for src_aligned and the
4267         character is found during recovery, use correct register when
4268         determining the position of the found character.
4270 2003-04-01  Jes Sorensen  <jes@wildopensource.com>
4272         * sysdeps/ia64/memccpy.S: Use speculatively loads for readahead to
4273         avoid segfaults when reading from unmapped pages. For aligned
4274         reload and continue, for misaligned, roll back and use byte copy.
4275         Save ar.ec on entry and restore on exit.
4277 2003-09-09  Chris Demetriou  <cgd@broadcom.com>
4279         * sysdeps/unix/mips/sysdep.h (PSEUDO_END): Undef before defining.
4281 2003-09-08  Chris Demetriou  <cgd@broadcom.com>
4283         * sysdeps/mips/mips64/n32/Implies: Move ieee754/ldbl-128 to
4284         the top of the list.
4285         * sysdeps/mips/mips64/n64/Implies: Likewise.
4287 2003-09-08  Roland McGrath  <roland@frob.com>
4289         * sysdeps/unix/sysv/linux/speed.c
4290         (cfsetospeed): Only set c_ospeed under [_HAVE_STRUCT_TERMIOS_C_OSPEED].
4291         (cfsetispeed): Only set c_ispeed under [_HAVE_STRUCT_TERMIOS_C_ISPEED].
4292         * sysdeps/unix/sysv/linux/bits/termios.h
4293         (_HAVE_STRUCT_TERMIOS_C_ISPEED, _HAVE_STRUCT_TERMIOS_C_OSPEED): Define.
4294         * sysdeps/unix/sysv/linux/alpha/bits/termios.h: Likewise.
4295         * sysdeps/unix/sysv/linux/powerpc/bits/termios.h: Likewise.
4297 2003-09-08  Ulrich Drepper  <drepper@redhat.com>
4299         * sysdeps/unix/sysv/linux/x86_64/register-dump.h: Undo last change.
4300         * sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h: Likewise.
4302 2003-09-08  Jakub Jelinek  <jakub@redhat.com>
4304         * sysdeps/generic/bits/types.h (__quad_t): Make long int if 64-bit.
4305         (__u_quad_t): Make unsigned long int if 64-bit.
4306         (__SQUAD_TYPE): Make long int if 64-bit.
4307         (__UQUAD_TYPE): Make unsigned long int if 64-bit.
4308         * sysdeps/unix/sysv/linux/s390/bits/typesizes.h: Remove.
4310 2003-09-08  Ulrich Drepper  <drepper@redhat.com>
4312         * Makefile (tests): Run check-c++-types.sh if possible.
4313         * scripts/check-c++-types.h: New file.
4314         * scripts/data/c++-types-i386-linux-gnu.data: New file.
4316 2003-09-08  Andreas Jaeger  <aj@suse.de>
4318         * sysdeps/unix/sysv/linux/x86_64/register-dump.h (register_dump):
4319         Use struct sigcontext.
4321         * sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h (SIGCONTEXT):
4322         Use struct sigcontext.
4323         (GET_PC): Adopt.
4324         (GET_FRAME): Likewise.
4325         (GET_STACK): Likewise.
4327 2003-09-08  Wolfram Gloger  <wg@malloc.de>
4329         * malloc/malloc.c (sYSMALLOc): Move foreign sbrk accounting into
4330         contiguous case.  Bug report from Prem Gopalan <prem@mazunetworks.com>.
4331         (mALLOPt): Avoid requirement of C99.
4333 2003-09-08  Ulrich Drepper  <drepper@redhat.com>
4335         * libio/bug-ftell.c: Include <sys/types.h>.
4336         (main): Mark cp as const.
4338 2003-09-07  Jakub Jelinek  <jakub@redhat.com>
4340         * sysdeps/unix/sysv/linux/syscalls.list (fcntl): Remove.
4341         * sysdeps/unix/sysv/linux/x86_64/fcntl.c: Remove.
4343 2003-09-05  Roland McGrath  <roland@redhat.com>
4345         * sysdeps/unix/sysv/linux/tcgetattr.c (__tcgetattr): Fill in c_ispeed
4346         and c_ospeed fields.
4347         * sysdeps/unix/sysv/linux/speed.c (cfsetospeed): Set c_ospeed field.
4348         (cfsetispeed): Set c_ispeed field.
4349         * sysdeps/unix/sysv/linux/tcsetattr.c (IBAUD0): Define unconditionally
4350         to match corresponding speed.c code.
4352 2003-09-06  Ulrich Drepper  <drepper@redhat.com>
4354         * libio/wfileops.c (_IO_wfile_underflow): Mark beginning of the
4355         narrow character buffer.
4356         * libio/Makefile: Add rules to build and run bug-ftell.
4357         * libio/bug-ftell.c: New file.
4359         * stdio-common/vfprintf.c: Don't use the first grouping number twice.
4361         * stdio-common/vfscanf.c (vfscanf): Fix recognition of characters
4362         matching the decimal point and possibly leading the thousands
4363         separator.  This caused the recognition of thousands separators to
4364         always fail.
4366 2003-09-05  Ulrich Drepper  <drepper@redhat.com>
4368         * libio/fileops.c (_IO_new_file_overflow): Handle switching to
4369         write mode from read in backup buffer.
4370         * libio/Makefile (tests): Add bug-ungetc2.
4371         * libio/bug-ungetc2.c: New file.
4373 2003-09-05  Roland McGrath  <roland@redhat.com>
4375         * nss/getXXbyYY.c (FUNCTION_NAME): Remove unused variable.
4377 2003-09-04  Roland McGrath  <roland@frob.com>
4379         * sysdeps/mach/hurd/mmap.c (__mmap): If io_map fails with MIG_BAD_ID,
4380         EOPNOTSUPP, or ENOSYS, change it to ENODEV.
4382 2003-09-04  H.J. Lu  <hongjiu.lu@intel.com>
4384         * sysdeps/unix/sysv/linux/ia64/bits/sigstack.h (MINSIGSTKSZ):
4385         Fix a typo.
4387 2003-09-05  Andreas Jaeger  <aj@suse.de>
4389         * sysdeps/i386/bits/string.h (__memrchr): Do addition in assembler
4390         to make it conforming C.
4391         * sysdeps/i386/i486/bits/string.h (__memrchr): Likewise.
4393         * sysdeps/unix/sysv/linux/i386/fcntl.c (__fcntl_nocancel): Change
4394         prototype to use variable argument lists and get the possible one
4395         argument via va_arg.
4396         * sysdeps/unix/sysv/linux/fcntl.c (__fcntl_nocancel): Likewise.
4397         * sysdeps/unix/sysv/linux/x86_64/fcntl.c: New.
4399 2003-09-04  Ulrich Drepper  <drepper@redhat.com>
4401         * posix/unistd.h: Add back __THROW to sysconf, pathconf, fpathconf.
4403         * sysdeps/unix/sysv/linux/pathconf.c (__statfs_filesize_max):
4404         Report correct value for vxfs.
4405         * sysdeps/unix/sysv/linux/linux_fsinfo.h: Define VXFS_SUPER_MAGIC.
4407         * gmon/gmon.c: Use only not-cancelable syscalls to write profiling
4408         data.
4410         * sysdeps/generic/utmp_file.c: Use not-cancelable syscalls all
4411         over the place.  It would be allowed to have these functions as
4412         cancellation points but the cleanup would be ugly and a lot of
4413         work.
4415         * sysdeps/generic/not-cancel.h (fcntl_not_cancel): Define.
4416         * sysdeps/unix/sysv/linux/not-cancel.h (fcntl_not_cancel): Define.
4418         * include/fcntl.h (__fcntl_nocancel): Declare.
4419         * sysdeps/unix/sysv/linux/fcntl.c: New file.
4420         * sysdeps/unix/sysv/linux/i386/fcntl.c (__libc_fcntl): Only enable
4421         cancellation if absolutely needed.
4422         (__fcntl_nocancel): Define.
4424         * posix/unistd.h (gethostid): Remove __THROW.  Clarify comment.
4425         * sysdeps/unix/sysv/linux/Makefile (CFLAGS-gethostid.c): Add
4426         -fexceptions.
4427         * sysdeps/unix/sysv/linux/gethostid.c (gethostid): Use
4428         extend_alloca.
4430         * resolv/res_init.c (__res_nclose): Use close_not_cancel_no_status
4431         instead of __close.
4433         * nss/getXXbyYY.c (FUNCTION_NAME): Add a few casts.  Remove
4434         unnecessary errno handling.
4436         * nss/getXXbyYY_r.c (INTERNAL): Use better variable name.
4437         Initialize it in all cases.  Change it to be a bit more like the
4438         code we had before.
4440 2003-09-04  Jakub Jelinek  <jakub@redhat.com>
4442         * libio/fileops.c (_IO_file_read, _IO_new_file_write): Add
4443         __builtin_expect.
4444         (_IO_file_open): Likewise.  Use close_not_cancel.
4446 2003-09-04  Ulrich Drepper  <drepper@redhat.com>
4448         * libio/libio.h: Define _IO_FLAGS2_NOTCANCEL.
4449         * libio/fileops.c [_LIBC]: Remove close macro.
4450         (_IO_file_open): If _IO_FLAGS2_NOTCANCEL is set, use open_not_cancel.
4451         (_IO_new_file_open): Recognize 'c' flag in mode string.
4452         (_IO_file_read): If _IO_FLAGS2_NOTCANCEL is set use read_not_cancel.
4453         (_IO_new_file_write): If _IO_FLAGS2_NOTCANCEL is set use
4454         write_not_cancel.
4455         * iconv/gconv_conf.c: Use fopen with 'c' mode flag.
4456         * inet/rcmd.c: Likewise.
4457         * inet/ruserpass.c: Likewise.
4458         * intl/localealias.c: Likewise.
4459         * malloc/mtrace.c: Likewise.
4460         * misc/getpass.c: Likewise.
4461         * misc/getttyent.c: Likewise.
4462         * misc/mntent_r.c: Likewise.
4463         * misc/getusershell.c: Likewise.
4464         * nss/nsswitch.c: Likewise.
4465         * resolv/res_hconf.c: Likewise.
4466         * resolv/res_init.c: Likewise.
4467         * sysdeps/unix/sysv/linux/getsysstats.c: Likewise.
4468         * time/getdate.c: Likewise.
4469         * time/tzfile.c: Likewise.
4470         * misc/fstab.h: Undo last change.
4471         * misc/mntent.h: Likewise.
4472         * misc/Makefile: Remove CFLAGS-mntent_r.c, CFLAGS-mntent.c, and
4473         CFLAGS-fstab.c definition.
4475 2003-09-04  Jakub Jelinek  <jakub@redhat.com>
4477         * sysdeps/generic/unwind.h (_Unwind_GetBSP): Add prototype.
4479 2003-09-03  Ulrich Drepper  <drepper@redhat.com>
4481         * nss/getXXbyYY_r.c (INTERNAL): Explicitly set errno and avoid
4482         returning ERANGE if this wasn't intended.
4484 2003-09-03  Jakub Jelinek  <jakub@redhat.com>
4486         * intl/loadmsgcat.c (open, close, read, mmap, munmap): Define as
4487         function-like macros.
4489 2003-09-03  Ulrich Drepper  <drepper@redhat.com>
4491         * grp/Makefile (CFLAGS-getgrent_r.c): Add -fexceptions.
4492         (CFLAGS-getgrent.c): Likewise.
4493         * pwd/Makefile (CFLAGS-getpwent_r.c): Add -fexceptions.
4494         (CFLAGS-getpwent.c): Likewise.
4495         * shadow/Makefile (CFLAGS-getspent_r.c): Add -fexceptions.
4496         (CFLAGS-getspent.c): Likewise.
4498         * inet/Makefile: Add -fexceptions to CFLAGS for the various
4499         getXXent and getXXbyYY functions.
4501         * locale/loadlocale.c: Use not-cancelable variants of open, close,
4502         and read.
4504 2003-09-02  Jakub Jelinek  <jakub@redhat.com>
4506         * sysdeps/unix/sysv/linux/alpha/Makefile (sysdep_routines): Remove
4507         rt_sigsuspend, rt_sigprocmask, rt_sigtimedwait, rt_sigqueueinfo and
4508         rt_sigpending.
4509         * sysdeps/unix/sysv/linux/alpha/sigaction.c (__syscall_rt_sigaction):
4510         New prototype.
4511         * sysdeps/unix/sysv/linux/arm/syscalls.list (__syscall_*): Remove
4512         unused __syscall_ stubs.
4513         * sysdeps/unix/sysv/linux/arm/Makefile (sysdep_routines): Remove
4514         rt_*.
4515         * sysdeps/unix/sysv/linux/cris/Makefile: Removed.
4516         * sysdeps/unix/sysv/linux/mips/mips64/syscalls.list
4517         (__syscall_recvfrom, __syscall_sendto): Remove unused aliases.
4518         * sysdeps/unix/sysv/linux/mips/syscalls.list (__syscall_*): Remove
4519         unused __syscall_ stubs.
4520         * sysdeps/unix/sysv/linux/mips/Makefile (sysdep_routines): Remove rt_*.
4521         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list
4522         (__syscall_*): Remove unused __syscall_ stubs.
4523         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list
4524         (__syscall_*): Likewise.
4525         * sysdeps/unix/sysv/linux/powerpc/Makefile (sysdep_routines): Remove
4526         rt_*.
4527         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (__syscall_*):
4528         Remove unused __syscall_ stubs.
4529         * sysdeps/unix/sysv/linux/sh/Makefile (sysdep_routines): Remove rt_*.
4530         * sysdeps/unix/sysv/linux/rt_sigaction.c: Removed.
4531         * sysdeps/unix/sysv/linux/rt_sigpending.c: Removed.
4532         * sysdeps/unix/sysv/linux/rt_sigprocmask.c: Removed.
4533         * sysdeps/unix/sysv/linux/rt_sigqueueinfo.c: Removed.
4534         * sysdeps/unix/sysv/linux/rt_sigreturn.c: Removed.
4535         * sysdeps/unix/sysv/linux/rt_sigsuspend.c: Removed.
4536         * sysdeps/unix/sysv/linux/rt_sigtimedwait.c: Removed.
4537         * sysdeps/unix/sysv/linux/s_pread64.c: Removed.
4538         * sysdeps/unix/sysv/linux/s_pwrite64.c: Removed.
4539         * sysdeps/unix/sysv/linux/alpha/gethostname.c: Remove unused
4540         __syscall_* prototypes.
4541         * sysdeps/unix/sysv/linux/alpha/ipc_priv.h: Likewise.
4542         * sysdeps/unix/sysv/linux/alpha/msgctl.c: Likewise.
4543         * sysdeps/unix/sysv/linux/alpha/semctl.c: Likewise.
4544         * sysdeps/unix/sysv/linux/alpha/shmctl.c: Likewise.
4545         * sysdeps/unix/sysv/linux/arm/sigaction.c: Likewise.
4546         * sysdeps/unix/sysv/linux/i386/chown.c: Likewise.
4547         * sysdeps/unix/sysv/linux/i386/fchown.c: Likewise.
4548         * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.
4549         * sysdeps/unix/sysv/linux/i386/fxstat.c: Likewise.
4550         * sysdeps/unix/sysv/linux/i386/getegid.c: Likewise.
4551         * sysdeps/unix/sysv/linux/i386/geteuid.c: Likewise.
4552         * sysdeps/unix/sysv/linux/i386/setuid.c: Likewise.
4553         * sysdeps/unix/sysv/linux/i386/getgid.c: Likewise.
4554         * sysdeps/unix/sysv/linux/i386/getgroups.c: Likewise.
4555         * sysdeps/unix/sysv/linux/i386/getmsg.c: Likewise.
4556         * sysdeps/unix/sysv/linux/i386/xstat.c: Likewise.
4557         * sysdeps/unix/sysv/linux/i386/getresgid.c: Likewise.
4558         * sysdeps/unix/sysv/linux/i386/getresuid.c: Likewise.
4559         * sysdeps/unix/sysv/linux/i386/getrlimit.c: Likewise.
4560         * sysdeps/unix/sysv/linux/i386/getuid.c: Likewise.
4561         * sysdeps/unix/sysv/linux/i386/lchown.c: Likewise.
4562         * sysdeps/unix/sysv/linux/i386/lockf64.c: Likewise.
4563         * sysdeps/unix/sysv/linux/i386/lxstat.c: Likewise.
4564         * sysdeps/unix/sysv/linux/i386/putmsg.c: Likewise.
4565         * sysdeps/unix/sysv/linux/i386/setfsgid.c: Likewise.
4566         * sysdeps/unix/sysv/linux/i386/setfsuid.c: Likewise.
4567         * sysdeps/unix/sysv/linux/i386/setgid.c: Likewise.
4568         * sysdeps/unix/sysv/linux/i386/setgroups.c: Likewise.
4569         * sysdeps/unix/sysv/linux/i386/setregid.c: Likewise.
4570         * sysdeps/unix/sysv/linux/i386/setresgid.c: Likewise.
4571         * sysdeps/unix/sysv/linux/i386/setresuid.c: Likewise.
4572         * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise.
4573         * sysdeps/unix/sysv/linux/i386/setrlimit.c: Likewise.
4574         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
4575         * sysdeps/unix/sysv/linux/ia64/fxstat.c: Likewise.
4576         * sysdeps/unix/sysv/linux/ia64/lxstat.c: Likewise.
4577         * sysdeps/unix/sysv/linux/ia64/sigaction.c: Likewise.
4578         * sysdeps/unix/sysv/linux/ia64/sigpending.c: Likewise.
4579         * sysdeps/unix/sysv/linux/ia64/sigprocmask.c: Likewise.
4580         * sysdeps/unix/sysv/linux/ia64/sigsuspend.c: Likewise.
4581         * sysdeps/unix/sysv/linux/ia64/xstat.c: Likewise.
4582         * sysdeps/unix/sysv/linux/m68k/chown.c: Likewise.
4583         * sysdeps/unix/sysv/linux/mips/ftruncate64.c: Likewise.
4584         * sysdeps/unix/sysv/linux/mips/pread.c: Likewise.
4585         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
4586         * sysdeps/unix/sysv/linux/mips/ptrace.c: Likewise.
4587         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
4588         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
4589         * sysdeps/unix/sysv/linux/mips/sigaction.c: Likewise.
4590         * sysdeps/unix/sysv/linux/mips/truncate64.c: Likewise.
4591         * sysdeps/unix/sysv/linux/mips/ustat.c: Likewise.
4592         * sysdeps/unix/sysv/linux/mips/xmknod.c: Likewise.
4593         * sysdeps/unix/sysv/linux/powerpc/chown.c: Likewise.
4594         * sysdeps/unix/sysv/linux/powerpc/ioctl.c: Likewise.
4595         * sysdeps/unix/sysv/linux/s390/s390-32/chown.c: Likewise.
4596         * sysdeps/unix/sysv/linux/s390/s390-32/lchown.c: Likewise.
4597         * sysdeps/unix/sysv/linux/s390/s390-64/xstat.c: Likewise.
4598         * sysdeps/unix/sysv/linux/s390/s390-64/fxstat.c: Likewise.
4599         * sysdeps/unix/sysv/linux/s390/s390-64/lxstat.c: Likewise.
4600         * sysdeps/unix/sysv/linux/s390/s390-64/sigaction.c: Likewise.
4601         * sysdeps/unix/sysv/linux/s390/s390-64/sigpending.c: Likewise.
4602         * sysdeps/unix/sysv/linux/s390/s390-64/sigprocmask.c: Likewise.
4603         * sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c: Likewise.
4604         * sysdeps/unix/sysv/linux/sparc/sparc64/sigpending.c: Likewise.
4605         * sysdeps/unix/sysv/linux/sparc/sparc64/sigprocmask.c: Likewise.
4606         * sysdeps/unix/sysv/linux/x86_64/sigaction.c: Likewise.
4607         * sysdeps/unix/sysv/linux/pwrite.c: Likewise.
4608         * sysdeps/unix/sysv/linux/execve.c: Likewise.
4609         * sysdeps/unix/sysv/linux/aio_sigqueue.c: Likewise.
4610         * sysdeps/unix/sysv/linux/reboot.c: Likewise.
4611         * sysdeps/unix/sysv/linux/_exit.c: Likewise.
4612         * sysdeps/unix/sysv/linux/ftruncate64.c: Likewise.
4613         * sysdeps/unix/sysv/linux/pwrite64.c: Likewise.
4614         * sysdeps/unix/sysv/linux/fxstat64.c: Likewise.
4615         * sysdeps/unix/sysv/linux/gai_sigqueue.c: Likewise.
4616         * sysdeps/unix/sysv/linux/readahead.c: Likewise.
4617         * sysdeps/unix/sysv/linux/getcwd.c: Likewise.
4618         * sysdeps/unix/sysv/linux/sigwait.c: Likewise.
4619         * sysdeps/unix/sysv/linux/getdents.c: Likewise.
4620         * sysdeps/unix/sysv/linux/readv.c: Likewise.
4621         * sysdeps/unix/sysv/linux/getpriority.c: Likewise.
4622         * sysdeps/unix/sysv/linux/sigaction.c: Likewise.
4623         * sysdeps/unix/sysv/linux/ipc_priv.h: Likewise.
4624         * sysdeps/unix/sysv/linux/llseek.c: Likewise.
4625         * sysdeps/unix/sysv/linux/sysctl.c: Likewise.
4626         * sysdeps/unix/sysv/linux/lxstat64.c: Likewise.
4627         * sysdeps/unix/sysv/linux/mmap64.c: Likewise.
4628         * sysdeps/unix/sysv/linux/ustat.c: Likewise.
4629         * sysdeps/unix/sysv/linux/poll.c: Likewise.
4630         * sysdeps/unix/sysv/linux/pread64.c: Likewise.
4631         * sysdeps/unix/sysv/linux/writev.c: Likewise.
4632         * sysdeps/unix/sysv/linux/pread.c: Likewise.
4633         * sysdeps/unix/sysv/linux/ptrace.c: Likewise.
4634         * sysdeps/unix/sysv/linux/sigpending.c: Likewise.
4635         * sysdeps/unix/sysv/linux/sigprocmask.c: Likewise.
4636         * sysdeps/unix/sysv/linux/sigqueue.c: Likewise.
4637         * sysdeps/unix/sysv/linux/sigsuspend.c: Likewise.
4638         * sysdeps/unix/sysv/linux/sigtimedwait.c: Likewise.
4639         * sysdeps/unix/sysv/linux/sigwaitinfo.c: Likewise.
4640         * sysdeps/unix/sysv/linux/truncate64.c: Likewise.
4641         * sysdeps/unix/sysv/linux/xmknod.c: Likewise.
4642         * sysdeps/unix/sysv/linux/xstat64.c: Likewise.
4644 2003-09-02  Jakub Jelinek  <jakub@redhat.com>
4646         * sysdeps/unix/sysv/linux/i386/sysdep.h (PSEUDO): Revert last change.
4647         * sysdeps/unix/sysv/linux/powerpc/syscalls.list: New file.
4648         * sysdeps/unix/sysv/linux/sparc/syscalls.list: New file.
4650 2003-09-02  Ulrich Drepper  <drepper@redhat.com>
4652         * stdio-common/Makefile (CFLAGS-vprintf.c): Add -fexceptions.
4654         * intl/loadmsgcat.c: For _LIBC, call not cancelable versions of
4655         open, close, and read.
4657         * sysdeps/unix/sysv/linux/i386/sysdep.h (PSEUDO): Also define
4658         *_nocancel name.
4660         * sysdeps/unix/sysv/linux/i386/syscalls.list: Add waitpid.
4662         * libio/Makefile (CFLAGS-oldtmpfile.c): Add -fexceptions.
4663         * sysdeps/generic/tmpfile.c (tmpfile): Use __unlink instead of remove.
4664         * libio/oldtmpfile.c (__old_tmpfile): Likewise.
4666         * misc/Makefile (CFLAGS-getusershell.c): Add -fexceptions.
4668         * io/Makefile (CFLAGS-statfs.c): Add -fexceptions.
4669         (CFLAGS-fstatfs.c): Likewise.
4670         (CFLAGS-statvfs.c): Likewise.
4671         (CFLAGS-fstatvfs.c): Likewise.
4673 2003-09-01  Ulrich Drepper  <drepper@redhat.com>
4675         * misc/Makefile (CFLAGS-getsysstats.c): Add -fexceptions.
4676         * posix/unistd.h: Remove __THROW from pathconf, fpathconf,
4677         sysconf.
4678         * posix/Makefile (CFLAGS-sysconf.c): Add -fexceptions.
4679         (CFLAGS-pathconf.c): Likewise.
4680         (CFLAGS-fpathconf.c): Likewise.
4682         * misc/Makefile (CFLAGS-fstab.c): Add -fexceptions.
4683         * misc/fstab.h: Remove all __THROW.
4684         * misc/Makefile (CFLAGS-mntent.c): Add -fexceptions.
4685         (CFLAGS-mntent_r.c): Likewise.
4686         * misc/mntent.h: Remove most __THROW.
4688         * misc/Makefile (CFLAGS-mkstemp.c): Add -fexceptions.
4689         (CFLAGS-mkstemp64.c): Likewise.
4691         * sysdeps/generic/wordexp.c (parse_comm): Disable cancellation
4692         around call to exec_comm.
4693         * posix/wordexp.h: Remove __THROW from wordexp.
4694         * posix/Makefile (CFLAGS-wordexp.c): Add -fexceptions.
4696         * sysdeps/unix/sysv/linux/getloadavg.c (getloadavg): Use
4697         not-cancelable functions.
4699         * libio/Makefile (CFLAGS-oldiofopen.c): Add -fexceptions.
4700         (CFLAGS-iofopen.c): Likewise.
4701         (CFLAGS-iofopen64.c): Likewise.
4703         * stdlib/fmtmsg.c (fmtmsg): Disable cancellation around output
4704         functions.
4705         * stdlib/Makefile (CFLAGS-fmtmsg.c): Add -fexceptions.
4706         * stdlib/fmtmsg.h: Remove __THROW from fmtmsg.
4708         * stdlib/stdlib.h: Remove __THROW from posix_openpt and getpt.
4709         * login/Makefile (CFLAGS-getpt.c): Add -fexceptions.
4711 2003-09-01  Thorsten Kukuk  <kukuk@suse.de>
4713         * nis/nss_compat/compat-spwd.c (getspnam_plususer): Return
4714         NSS_STATUS_SUCCESS if entry was found.
4715         (getspent_next_file): Store user in blacklist after entry
4716         was found, use innetgr.
4718 2003-09-01  Jakub Jelinek  <jakub@redhat.com>
4720         * sysdeps/unix/sysv/linux/powerpc/powerpc32/posix_fadvise.c: New.
4721         * sysdeps/unix/sysv/linux/powerpc/powerpc32/posix_fadvise64.c: New.
4723         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Fix tls offset
4724         computation for TCB_AT_TP.  Support l_firstbyte_offset != 0 for
4725         DTV_AT_TP, optimize.
4727 2003-08-31  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
4729         * sysdeps/unix/sysv/linux/sh/Versions: Add posix_fadvise64 and
4730         posix_fallocate64 at GLIBC_2.3.3.
4731         * sysdeps/unix/sysv/linux/sh/sysdep.h (PSEUDO_ERRVAL): Define.
4732         (PSEUDO_END_ERRVAL, ret_ERRVAL): Likewise.
4734 2003-08-08  H.J. Lu  <hongjiu.lu@intel.com>
4736         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Remove __syscall_
4737         functions.
4739 2003-08-31  Ulrich Drepper  <drepper@redhat.com>
4741         * libio/libioP.h (_IO_acquire_lock_fct): Define as inline function.
4742         Code by Richard Henderson.
4744 2003-08-31  Philip Blundell  <philb@gnu.org>
4746         * sysdeps/unix/sysv/linux/arm/Versions: Add posix_fadvise64 and
4747         posix_fallocate64 at GLIBC_2.3.3.
4749 2003-08-31  Ulrich Drepper  <drepper@redhat.com>
4751         * sysdeps/x86_64/bsd-_setjmp.S: Use HIDDEN_JUMPTARGET.
4752         * include/setjmp.h: Add libc_hidden_proto for __sigsetjmp.
4754 2003-08-30  Jakub Jelinek  <jakub@redhat.com>
4756         * sysdeps/generic/sysdep.h (cfi_window_save, CFI_WINDOW_SAVE): Define.
4757         * sysdeps/unix/sysv/linux/sparc/bits/setjmp.h: Allow file to be
4758         included multiple times.
4759         * sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__clone): Pass
4760         ptid, tls, ctid arguments to the kernel.
4761         * sysdeps/unix/sysv/linux/sparc/sparc32/getpagesize.c (__getpagesize):
4762         Use INTERNAL_SYSCALL instead of __syscall_getpagesize.
4763         * sysdeps/unix/sysv/linux/sparc/sparc32/sigaction.c
4764         (__libc_sigaction): Use INLINE_SYSCALL instead of
4765         __syscall_rt_sigaction.
4766         * sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list
4767         (__syscall_getgroups, __syscall_getpagesize, __syscall__llseek,
4768         __syscall_setfsgid, __syscall_setfsuid, __syscall_setgid,
4769         __syscall_setgroups, __syscall_setregid, __syscall_setreuid,
4770         __syscall_ipc, __syscall_setuid, __syscall_rt_sigaction,
4771         __syscall_rt_sigpending, __syscall_rt_sigprocmask,
4772         __syscall_rt_sigqueueinfo, __syscall_rt_sigsuspend,
4773         __syscall_rt_sigtimedwait): Remove unneeded syscall stubs.
4774         * sysdeps/unix/sysv/linux/sparc/sparc32/Makefile (sysdep_routines):
4775         Remove rt_sigsuspend, rt_sigprocmask, rt_sigtimedwait,
4776         rt_sigqueueinfo, rt_sigaction and rt_sigpending.
4777         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h
4778         (__CLONE_SYSCALL_STRING): Define.
4779         * sysdeps/unix/sysv/linux/sparc/sparc32/socket.S (__socket): Add
4780         CFI directives.
4781         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h
4782         (__CLONE_SYSCALL_STRING): Define.
4783         * sysdeps/unix/sysv/linux/sparc/sysdep.h (INLINE_CLONE_SYSCALL):
4784         Define.
4785         * sysdeps/unix/sysv/linux/sparc/system.c: New file.
4787 2003-08-30  Ulrich Drepper  <drepper@redhat.com>
4789         * sunrpc/rpc/clnt.h: Remove a few __THROW.
4790         * sunrpc/Makefile (CFLAGS-auth_unix.c): Add -fexceptions.
4791         (CFLAGS-key_call.c): Likewise.
4792         (CFLAGS-pmap_rmt.c): Likewise.
4793         (CFLAGS-clnt_perr.c): Likewise.
4794         * sunrpc/rpc/auth.h: Remove serveral __THROW.
4796         * inet/Makefile (CFLAGS-gethstbyad_r.c): Add -fexceptions.
4797         (CFLAGS-gethstbynm_r.c): Likewise.
4798         (CFLAGS-gethstbynm2_r.c): Likewise.
4799         (CFLAGS-rcmd.c): Likewise.
4800         * resolv/Makefile (CFLAGS-res_hconf.c): Add -fexceptions.
4802         * argp/Makefile (CFLAGS-argp-help.c): Add -fexceptions.
4803         (CFLAGS-argp-fmtstream.c): Likewise.
4804         * argp/argp.h: Remove a number of __THROW.
4806         * misc/sys/syslog.h (vsyslog): Remove __THROW.
4808         * misc/Makefile (CFLAGS-getpass.c): Add -fexceptions.
4809         * misc/getpass.c (getpass): Add cleanup handler to ensure the
4810         stream is closed even if the thread is canceled.
4811         (call_fclose): New function.
4812         * posix/unistd.h: Remove __THROW from getpass prototype.
4814         * posix/Makefile (CFLAGS-getopt.c): Add -fexceptions.
4816         * signal/signal.h (psignal): Remove __THROW.
4817         * stdio-common/Makefile (CFLAGS-psignal.c): Add -fexceptions.
4819         * misc/Makefile (CFLAGS-error.c): Define.
4820         * misc/error.c (error): Disable cancellation handling around the
4821         actual output.  The message should in any case be printed.
4822         (error_at_line): Likewise.
4824         * misc/error.h: Protect parameter names with leading __.
4826 2003-08-28  Carlos O'Donell  <carlos@baldric.uwo.ca>
4828         * sysdeps/unix/sysv/linux/hppa/syscalls.list: Add semtimedop.
4830 2003-08-29  Jakub Jelinek  <jakub@redhat.com>
4832         * libio/iofgetpos64.c (_IO_new_fgetpos64): Move lock release to the
4833         end.
4835 2003-08-29  Ulrich Drepper  <drepper@redhat.com>
4837         * libio/stdio.h: Remove a few more __THROW.
4839 2003-08-29  Jakub Jelinek  <jakub@redhat.com>
4841         * libio/Makefile: Compile fputc.c, fputwc.c, freopen64.c, freopen.c,
4842         fseek.c, fseeko64.c, fseeko.c, ftello64.c, ftello.c, fwide.c, getc.c,
4843         getchar.c, getwc.c, getwchar.c, iofclose.c, iofflush.c, iofgetpos64.c,
4844         iofgetpos.c, iofgets.c, iofgetws.c, iofputs.c, iofputws.c, iofread.c,
4845         iofsetpos64.c, iofsetpos.c, ioftell.c, iofwrite.c, iogetdelim.c,
4846         iogetline.c, iogets.c, iogetwline.c, ioputs.c, ioseekoff.c,
4847         ioseekpos.c, iosetbuffer.c, iosetvbuf.c, ioungetc.c, ioungetwc.c,
4848         oldfileops.c, oldiofclose.c, oldiofgetpos64.c, oldiofgetpos.c,
4849         oldiofsetpos64.c, oldiofsetpos.c, peekc.c, putc.c, putchar.c, putwc.c,
4850         putwchar.c and rewind.c with exceptions.
4851         * sysdeps/generic/bits/stdio-lock.h (_IO_acquire_lock,
4852         _IO_release_lock): Define.
4853         * libio/fileops.c (_IO_new_file_underflow): Use it.
4854         * libio/fputc.c (fputc): Likewise.
4855         * libio/fputwc.c (fputwc): Likewise.
4856         * libio/freopen64.c (freopen64):
4857         * libio/freopen.c (freopen): Likewise.
4858         * libio/fseek.c (fseek): Likewise.
4859         * libio/fseeko64.c (fseeko64): Likewise.
4860         * libio/fseeko.c (fseeko): Likewise.
4861         * libio/ftello64.c (ftello64): Likewise.
4862         * libio/ftello.c (ftello): Likewise.
4863         * libio/fwide.c (fwide): Likewise.
4864         * libio/getc.c (_IO_getc): Likewise.
4865         * libio/getchar.c (getchar): Likewise.
4866         * libio/getwc.c (_IO_getwc): Likewise.
4867         * libio/getwchar.c (getwchar): Likewise.
4868         * libio/iofclose.c (_IO_new_fclose):
4869         * libio/iofflush.c (_IO_fflush): Likewise.
4870         * libio/iofgetpos64.c (_IO_new_fgetpos64): Likewise.
4871         * libio/iofgetpos.c (_IO_new_fgetpos): Likewise.
4872         * libio/iofgets.c (_IO_fgets): Likewise.
4873         * libio/iofgetws.c (fgetws): Likewise.
4874         * libio/iofputs.c (_IO_fputs): Likewise.
4875         * libio/iofputws.c (fputws): Likewise.
4876         * libio/iofread.c (_IO_fread): Likewise.
4877         * libio/iofsetpos64.c (_IO_new_fsetpos64): Likewise.
4878         * libio/iofsetpos.c (_IO_new_fsetpos): Likewise.
4879         * libio/ioftell.c (_IO_ftell): Likewise.
4880         * libio/iofwrite.c (_IO_fwrite): Likewise.
4881         * libio/iogetdelim.c (_IO_getdelim): Likewise.
4882         * libio/iogets.c (_IO_gets): Likewise.
4883         * libio/ioputs.c (_IO_puts): Likewise.
4884         * libio/ioseekoff.c (_IO_seekoff): Likewise.
4885         * libio/ioseekpos.c (_IO_seekpos): Likewise.
4886         * libio/iosetbuffer.c (_IO_setbuffer): Likewise.
4887         * libio/iosetvbuf.c (_IO_setvbuf): Likewise.
4888         * libio/ioungetc.c (_IO_ungetc): Likewise.
4889         * libio/ioungetwc.c (ungetwc): Likewise.
4890         * libio/oldiofclose.c (_IO_old_fclose): Likewise.
4891         * libio/oldiofgetpos64.c (_IO_old_fgetpos64): Likewise.
4892         * libio/oldiofgetpos.c (_IO_old_fgetpos): Likewise.
4893         * libio/oldiofsetpos64.c (_IO_old_fsetpos64): Likewise.
4894         * libio/oldiofsetpos.c (_IO_old_fsetpos): Likewise.
4895         * libio/peekc.c (_IO_peekc_locked): Likewise.
4896         * libio/putc.c (_IO_putc): Likewise.
4897         * libio/putchar.c (putchar): Likewise.
4898         * libio/putwc.c (putwc): Likewise.
4899         * libio/putwchar.c (putwchar): Likewise.
4900         * libio/rewind.c (rewind): Likewise.
4901         * libio/wfileops.c (_IO_wfile_underflow): Likewise.
4903 2003-08-29  Ulrich Drepper  <drepper@redhat.com>
4905         * signal/signal.h: sighold, sigrelse, sigignore, sigset were
4906         available in XPG4.2.
4908 2003-08-27  Phil Knirsch  <pknirsch@redhat.com>
4909             Jakub Jelinek  <jakub@redhat.com>
4911         * sunrpc/svc.c (svc_getreqset): Fix fds_bits reading on 64-bit
4912         big endian arches.  Don't read beyond end of fds_bits array.
4914 2003-04-27  Bruno Haible  <bruno@clisp.org>
4916         * manual/message.texi (Advanced gettext functions): Add information
4917         about Korean, Portuguese, Latvian. Gaeilge is also known as Irish.
4918         Add section about Lithuanian, reported by Ricardas Cepas
4919         <rch@richard.eu.org>.
4920         Add information about Croatian.
4921         Ukrainian is like Russian, reported by Andy Rysin <arysin@yahoo.com>.
4922         Remove remark about continuation lines that is not true for PO files.
4923         Fix formula for Slovenian, reported by Roman Maurer
4924         <roman.maurer@amis.net>.
4926 2003-08-27  Ulrich Drepper  <drepper@redhat.com>
4928         * math/math_private.h: Declare __copysignf.
4929         * sysdeps/ieee754/flt-32/s_scalbnf.c: Use __copysignf instead of
4930         copysignf.
4932         * sysdeps/x86_64/fpu/bits/mathinline.h: Define __signbitf,
4933         __signbit, and __signbitl inline functions.
4935         * sysdeps/unix/sysv/linux/x86_64/__start_context.S: Use
4936         HIDDEN_JUMPTARGET instead of JUMPTARGET to call exit().
4938         * sysdeps/x86_64/bsd-_setjmp.S [PIC]: Jump to __GI___sigsetjmp.
4939         * sysdeps/x86_64/setjmp.S: Add libc_hidden_def for __sigsetjmp.
4941 2003-08-27  Jakub Jelinek  <jakub@redhat.com>
4943         * inet/inet_mkadr.c (inet_makeaddr): Optimize.
4945 2003-08-27  Ulrich Drepper  <drepper@redhat.com>
4947         * include/stdio.h: Add declarations for __builtin_fwrite and
4948         __builtin_fwrite_unlocked.
4950 2003-08-27  Jakub Jelinek  <jakub@redhat.com>
4952         * sysdeps/unix/opendir.c (__opendir): Make sure even struct dirent64
4953         fits into allocation.  Add padding on 32-bit arches so that
4954         dirp->data is enough aligned for struct dirent64.
4955         Avoid clearing of the buffer, just clear DIR structure.
4957 2003-08-26  Ulrich Drepper  <drepper@redhat.com>
4959         * nss/nsswitch.c: Add libc_hidden_def for __nss_lookup_function.
4960         * nss/nsswitch.h: Add libc_hidden_proto for __nss_lookup_function.
4962 2003-08-26  Steven Munroe  <sjmunroe@us.ibm.com>
4964         * sysdeps/powerpc/powerpc64/elf/Makefile: New file.
4966 2003-08-26  Jakub Jelinek  <jakub@redhat.com>
4968         * login/programs/utmpdump.c (print_entry): Cast tv_usec to long
4969         to match format string.
4970         * sysdeps/unix/sysv/linux/sparc/sparc32/semctl.c (union semun): Add
4971         __old_buf.
4972         (__new_semctl): Shut up warning.
4973         * sysdeps/unix/sysv/linux/sparc/sparc32/dl-procinfo.h
4974         (_dl_string_hwcap): Add __attribute__ ((always_inline)).
4976 2003-08-26  Jakub Jelinek  <jakub@redhat.com>
4978         * elf/ldconfig.c (search_dir): When checking for GNU-style .so
4979         link file use the real file name, not the resolved name we got by
4980         following the symlinks.
4982 2003-08-25  Ulrich Drepper  <drepper@redhat.com>
4984         * libio/oldfileops.c (_IO_old_file_init): Initialize _mode field
4985         if the object size is large enough.
4987 2003-08-25  Jakub Jelinek  <jakub@redhat.com>
4989         * elf/ldconfig.c (search_dir): Treat symlink as regular file
4990         if it won't point to itself unless it is .so symlink for the linker.
4992 2003-08-25  Ulrich Drepper  <drepper@redhat.com>
4994         * libio/libio.h (_IO_fwide): In the mode==0 optimization, don't
4995         use _mode if _IO_fwide_maybe_incompatible.
4996         * libio/iofwide.c (_IO_fwide): Move the test for mode == 0 after
4997         the compatibility test.
4999 2003-08-25  Jakub Jelinek  <jakub@redhat.com>
5001         * elf/cache.c (save_cache): Don't write beyond end of file_entries
5002         buffer.
5003         Duplicate last old cache entry if the count would be odd.
5005 2003-08-25  Andreas Jaeger  <aj@suse.de>
5007         * sysdeps/unix/sysv/linux/posix_fadvise64.c: Cast arguments of
5008         __LONG_LONG_PAIR to long.
5010 2003-08-25  Philip Blundell  <philb@gnu.org>
5012         * sysdeps/unix/sysv/linux/arm/sysdep.h (PSEUDO_ERRVAL): Define.
5013         (PSEUDO_END_ERRVAL, ret_ERRVAL): Likewise.
5015 2003-08-18  Alfred M. Szmidt  <ams@kemisten.nu>
5017         * sysdeps/generic/bits/libc-lock.h (__libc_cleanup_pop): Redefine
5018         and use __libc_cleanup_region_end instead.
5020 2003-08-25  Ulrich Drepper  <drepper@redhat.com>
5022         * elf/ldconfig.c (search_dir): Revert patch of 2003-7-21.
5024 2003-08-22  Ulrich Drepper  <drepper@redhat.com>
5026         * io/fcntl.h (posix_fallocate): Change type of third parameter to
5027         off_t.
5028         (posix_fallocate64): Change type of third parameter to off64_t.
5029         * sysdeps/generic/posix_fallocate.c: Adjust for type change.
5030         * sysdeps/posix/posix_fallocate.c: Likewise.
5031         * sysdeps/generic/posix_fallocate64.c: Likewise.
5032         * sysdeps/posix/posix_fallocate64.c: Likewise.  Add compatibility
5033         code for 32-bit platforms.
5034         * sysdeps/unix/sysv/linux/i386/Versions: Add new version for
5035         posix_fallocate64.
5036         * sysdeps/unix/sysv/linux/powerpc/powerpc32/Versions: Likewise.
5037         * sysdeps/unix/sysv/linux/s390/s390-32/Versions: Likewise.
5038         * sysdeps/unix/sysv/linux/sparc/sparc32/Versions: Likewise.
5040 2003-08-19  Ulrich Drepper  <drepper@redhat.com>
5042         * string/bits/string2.h (__STRING2_COPY_TYPE): Add attribute to
5043         the type, not to name.
5045         * stdio-common/test-vfprintf.c (main): Don't write temporary file
5046         into source directory.
5048         * malloc/malloc.c (_int_free): Add cheap test for some invalid
5049         block sizes.
5051         * sysdeps/unix/sysv/linux/i386/posix_fadvise64.S: Fix typo in
5052         syscall name.
5054 2003-08-18  Ulrich Drepper  <drepper@redhat.com>
5056         * sysdeps/unix/sysv/linux/shm_open.c (shm_open): Fold EISDIR error
5057         into EINVAL.
5059 2003-08-18  H.J. Lu  <hongjiu.lu@intel.com>
5061         * sysdeps/ia64/dl-machine.h (elf_machine_rela): Use _dl_reloc_bad_type.
5062         (elf_machine_lazy_rel): Likewise.
5064 2003-08-18  Art Haas  <ahaas@airmail.net>
5066         * malloc/malloc.h: Remove unneeded ';' where closing the C++
5067         extern block.
5069 2003-08-18  Ulrich Drepper  <drepper@redhat.com>
5071         * sysdeps/ia64/dl-fptr.h (ELF_MACHINE_LOAD_ADDRESS): Support
5072         loading big binaries where @gprel(sym) cannot be handled in 'add'
5073         but instead has to be used with 'movl'.
5075 2003-08-17  Juergen Kreileder <jk@blackdown.de>
5076             Andreas Jaeger  <aj@suse.de>
5078         * sysdeps/x86_64/bits/byteswap.h: New file.
5080 2003-08-17  Andreas Jaeger  <aj@suse.de>
5082         * sysdeps/unix/sysv/linux/i386/posix_fadvise64.S: Fix typo.
5084 2003-08-16  Jakub Jelinek  <jakub@redhat.com>
5086         * sysdeps/powerpc/powerpc32/sysdep.h (PSEUDO_ERRVAL,
5087         PSEUDO_RET_ERRVAL, ret_ERRVAL, PSEUDO_END_ERRVAL): Define.
5088         * sysdeps/powerpc/powerpc64/sysdep.h (PSEUDO_ERRVAL,
5089         PSEUDO_RET_ERRVAL, ret_ERRVAL, PSEUDO_END_ERRVAL): Define.
5090         * sysdeps/unix/alpha/sysdep.h (PSEUDO_ERRVAL,
5091         ret_ERRVAL, PSEUDO_END_ERRVAL): Define.
5092         * sysdeps/unix/mips/sysdep.h (PSEUDO_ERRVAL,
5093         ret_ERRVAL, PSEUDO_END_ERRVAL): Define.
5094         * sysdeps/unix/sparc/sysdep.h (PSEUDO_ERRVAL,
5095         ret_ERRVAL): Define.
5096         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (PSEUDO_ERRVAL,
5097         PSEUDO_END_ERRVAL, ret_ERRVAL): Define.
5098         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (PSEUDO_ERRVAL,
5099         PSEUDO_END_ERRVAL, ret_ERRVAL): Define.
5100         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h (PSEUDO_ERRVAL):
5101         Define.
5102         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h (PSEUDO_ERRVAL,
5103         PSEUDO_END_ERRVAL, ret_ERRVAL): Define.
5104         * sysdeps/unix/sysdep.h (PSEUDO_END_ERRVAL): Define.
5106         * sysdeps/unix/sysv/linux/syscalls.list (posix_fadvise64,
5107         posix_fadvise64_64): Remove.
5108         * sysdeps/unix/sysv/linux/alpha/syscalls.list (posix_fadvise64): Add
5109         V flag.
5110         * sysdeps/unix/sysv/linux/ia64/syscalls.list (posix_fadvise64):
5111         Likewise.
5112         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list
5113         (posix_fadvise64): Likewise.
5114         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list
5115         (posix_fadvise64): Likewise.
5116         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list
5117         (posix_fadvise64): Likewise.
5118         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (posix_fadvise64):
5119         Likewise.
5120         * sysdeps/unix/sysv/linux/i386/posix_fadvise64_64.S: Moved to...
5121         * sysdeps/unix/sysv/linux/i386/posix_fadvise64.S: ...here.
5122         (__posix_fadvise64_l64): Fix a typo in fadvise64 syscall invocation.
5123         (__posix_fadvise64_l32): New function.
5124         * sysdeps/unix/sysv/linux/i386/Makefile: Revert last change.
5125         * sysdeps/unix/sysv/linux/powerpc/powerpc32/Versions (libc): Export
5126         posix_fadvise64@@GLIBC_2.3.3.
5127         * sysdeps/unix/sysv/linux/s390/s390-32/Versions (libc): Likewise.
5128         * sysdeps/unix/sysv/linux/sparc/sparc32/Versions (libc): Likewise.
5129         * sysdeps/unix/sysv/linux/posix_fadvise.c (posix_fadvise): Return
5130         error value.
5131         * sysdeps/unix/sysv/linux/posix_fadvise64.c: New file.
5133         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h
5134         (SYSCALL_ERROR_HANDLER): Use TLS errno/__libc_errno if USE___THREAD.
5136 2003-08-15  Jakub Jelinek  <jakub@redhat.com>
5138         * sysdeps/sparc/sparc32/dl-machine.h (WEAKADDR): Remove.
5139         (elf_machine_matches_host): Remove weak extern stuff.
5140         Use GL(dl_hwcap) unconditionally and GL(dl_hwcap_mask) if SHARED.
5141         (elf_machine_runtime_setup, sparc_fixup_plt): Remove weak extern
5142         stuff.  Use GL(dl_hwcap) unconditionally.
5144 2003-08-16  Alan Modra  <amodra@bigpond.net.au>
5146         * sysdeps/powerpc/powerpc64/elf/start.S: Add a nop after
5147         __libc_start_main branch.
5149 2003-08-16  Jakub Jelinek <jakub@redhat.com>,
5150             Andreas Jaeger  <aj@suse.de>
5152         * sysdeps/generic/posix_fadvise.c (posix_fadvise): Return ENOSYS
5153         instead of setting errno.
5154         * sysdeps/generic/posix_fadvise64.c (posix_fadvise64): Likewise.
5156 2003-08-16  Andreas Jaeger  <aj@suse.de>
5158         * sysdeps/generic/posix_fadvise.c (posix_fadvise): Adjust prototype.
5159         * sysdeps/generic/posix_fadvise64.c (posix_fadvise64): Likewise.
5161 2003-08-15  Ulrich Drepper  <drepper@redhat.com>
5163         * io/fcntl.h (posix_fadvise64): Change type of third parameter to
5164         off_t.
5165         * sysdeps/unix/sysv/linux/posix_fadvise.c: Adjust definition.
5166         * sysdeps/unix/make-syscalls.sh: Recognize V prefix to the parameter
5167         description indicating the error value is returned, not -1.
5168         * sysdeps/unix/sysv/linux/kernel-features.h: Add definition of
5169         __ASSUME_FADVISE64_64_SYSCALL.
5170         * sysdeps/unix/sysv/linux/syscalls.list: Don't define madvise and
5171         posix_madvise in one file.  Have posix_madvise defined with error
5172         value returned.
5173         Define posix_fadvise64_64 entry.  Add version info to posix_fadvise64
5174         entry.
5175         * sysdeps/unix/sysv/linux/i386/posix_fadvise.S: New file.
5176         * sysdeps/unix/sysv/linux/i386/sysdep.h: Define PSEUDO_ERRVAL,
5177         PSEUDO_END_ERRVAL, and ret_ERRVAL.
5178         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Likewise.
5179         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
5180         * sysdeps/unix/sysv/linux/i386/Versions [GLIBC_2.3.3]: Add
5181         posix_fadvise64.
5183         * posix/Makefile (routines): Add posix_madvise.
5184         * sysdeps/generic/madvise.c: Don't define posix_madvise.
5185         * sysdeps/generic/posix_madvise.c: New file.
5186         * sysdeps/unix/sysv/aix/posix_madvise.c: New file.
5187         * sysdeps/unix/sysv/linux/i386/Makefile [subdir=io] (subdir_routines):
5188         Add posix_fadvise64_64.
5190 2003-08-15  Jakub Jelinek  <jakub@redhat.com>
5192         * assert/assert.h (assert_perror): Use __builtin_expect for gcc >=
5193         3.0, not for !gcc or gcc < 3.0.
5195 2003-08-11  Carlos O'Donell  <carlos@baldric.uwo.ca>
5197         * dlfcn/default.c (main): Cast dlsym loaded value to same type as main.
5198         Address passed to test_in_mod1 and test_in_mod2 without casting.
5199         * dlfcn/defaultmod1.c: Change prototype of test_in_mod1.
5200         (test_in_mod1): Cast dlsym loaded value to same type as mainp.
5201         * dlfcn/defaultmod2.c: Change prototype of test_in_mod2.
5202         (test_in_mod2): Cast dlsym loaded value to same type as mainp.
5204 2003-08-15  Jakub Jelinek  <jakub@redhat.com>
5206         * sysdeps/sparc/sparc32/elf/configure.in (libc_cv_sparc32_tls):
5207         Change quotes before using [].
5209         * sysdeps/unix/sysv/linux/sparc/sys/user.h: New file.
5211         * sysdeps/sparc/sparc32/bits/atomic.h (__sparc32_atomic_lock):
5212         Renamed to...
5213         (__sparc32_atomic_locks): ...this.  Change into 64-byte array.
5214         (__sparc32_atomic_do_lock, __sparc32_atomic_do_unlock): Add addr
5215         argument.  Select one of 64 locks from address bits.
5216         (atomic_compare_and_exchange_val_acq,
5217         atomic_compare_and_exchange_bool_acq): Pass memory address to
5218         __sparc32_atomic_do_{,un}lock.
5220 2003-08-14  Ulrich Drepper  <drepper@redhat.com>
5222         * assert/assert.h (assert): Use !! in front of expression to allow
5223         use of pointers.
5225         * iconvdata/cp932.c: Fixed checking of a few border of code areas.
5226         Changed conversion of JIS X 0201 from using a table to calculating.
5227         * iconvdata/euc-jp-ms.c: Fixed conversion table and rewrote
5228         conversion routine.  Changed CHARSET_NAME definition from EUCJP-MS to
5229         EUC-JP-MS.
5230         * iconvdata/tst-tables.sh: Add CP932 and EUC-JP-MS.
5231         * iconvdata/CP932.irreversible: New file.
5232         * iconvdata/EUC-JP-MS.irreversible: New file.
5233         Patch by MORIYAMA Masayuki <msyk@mtg.biglobe.ne.jp>.
5235 2003-08-13  Ulrich Drepper  <drepper@redhat.com>
5237         * sysdeps/unix/sysv/linux/i386/syscalls.list: Add time syscall.
5239         * elf/Makefile: Use LC_ALL=C in a few cases where we call external
5240         text processing tools.
5242         * sysdeps/pthread/aio_misc.h (struct waitlist): Don't add caller_pid
5243         element unless BROKEN_THREAD_SIGNALS is defined.
5244         (struct requestlist): Likewise.
5245         * sysdeps/pthread/aio_misc.c (__aio_enqueue_request): Don't fill in
5246         caller_pid of new request unless BROKEN_THREAD_SIGNALS is defined.
5247         * sysdeps/pthread/aio_suspend.c (aio_suspend): Likewise.
5248         * sysdeps/pthread/aio_notify.c (__aio_notify_only): Remove caller_pid
5249         parameter unless BROKEN_THREAD_SIGNALS is defined.  Adjust callers.
5250         Pass current PID to __aio_sigqueue.
5251         * sysdeps/pthread/lio_listio.c (lio_listio): Adjust __aio_notify_only
5252         call.  Don't initialize caller_pid field of waitlist element.
5254 2003-08-12  Jakub Jelinek  <jakub@redhat.com>
5256         * libio/libioP.h (_IO_vtable_offset): Define.
5257         * libio/freopen.c (freopen): Use it.
5258         * libio/ioputs.c (_IO_puts): Likewise.
5259         * libio/freopen64.c (freopen64): Likewise.
5260         * libio/genops.c (__underflow, __uflow, _IO_flush_all_lockp):
5261         Likewise.
5262         * libio/iofclose.c (_IO_new_fclose): Likewise.
5263         * libio/iofputs.c (_IO_fputs): Likewise.
5264         * libio/ioftell.c (_IO_ftell): Likewise.
5265         * libio/iofwrite.c (_IO_fwrite): Likewise.
5266         * libio/ioseekoff.c (_IO_seekoff_unlocked): Likewise.
5267         * libio/iosetbuffer.c (_IO_setbuffer): Likewise.
5268         * stdio-common/vfprintf.c (ORIENT, vfprintf): Likewise.
5269         * stdio-common/vfscanf.c (ORIENT): Likewise.
5271 2003-08-11  Ulrich Drepper  <drepper@redhat.com>
5273         * assert/assert.h: Use __builtin_expect in assert and
5274         assert_perror definitions if possible.
5276 2003-08-07  Jakub Jelinek  <jakub@redhat.com>
5278         * sysdeps/generic/ldsodefs.h (_rtld_global): Add
5279         _dl_rtld_lock_recursive and _dl_rtld_unlock_recursive.
5280         * elf/rtld.c (rtld_lock_default_lock_recursive,
5281         rtld_lock_default_unlock_recursive): New functions.
5282         (dl_main): Initialize _dl_rtld_lock_recursive and
5283         _dl_rtld_unlock_recursive.
5285 2003-08-05  Jakub Jelinek  <jakub@redhat.com>
5287         * elf/ldconfig.c (main): Append SLIBDIR and LIBDIR to
5288         config_file directories instead of prepending.
5290 2003-08-02  Ulrich Drepper  <drepper@redhat.com>
5292         * sysdeps/unix/sysv/linux/kernel-features.h: Define
5293         __ASSUME_CLONE_STOPPED.
5295 2003-08-01  Ulrich Drepper  <drepper@redhat.com>
5297         * sysdeps/generic/bits/libc-lock.h
5298         (__libc_cleanup_push,__libc_cleanup_pop): Define even here.
5300 2003-08-01  Roland McGrath  <roland@frob.com>
5302         * sysdeps/mach/hurd/getdents.c: Just use sysdeps/generic/getdents.c.
5304 2003-07-31  Jakub Jelinek  <jakub@redhat.com>
5306         * sysdeps/generic/bits/types.h (__ssize_t): Use __SSIZE_T_TYPE
5307         instead of __SWORD_TYPE.
5308         * sysdeps/generic/bits/typesizes.h (__SSIZE_T_TYPE): Define.
5309         * sysdeps/mach/hurd/bits/typesizes.h (__SSIZE_T_TYPE): Define.
5310         * sysdeps/unix/bsd/bsd4.4/freebsd/bits/typesizes.h (__SSIZE_T_TYPE):
5311         Define.
5312         * sysdeps/unix/sysv/linux/alpha/bits/typesizes.h (__SSIZE_T_TYPE):
5313         Define.
5314         * sysdeps/unix/sysv/linux/sparc/bits/typesizes.h (__SSIZE_T_TYPE):
5315         Define.
5316         * sysdeps/unix/sysv/linux/s390/bits/typesizes.h: New file.
5318         * dlfcn/dlerror.c (once): New.
5319         (dlerror): Call __libc_once.
5320         (_dlerror_run): Remove once.
5322         * sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h (struct sigcontext):
5323         Sync with 2.5.7 and 2.5.73 kernel changes.
5325         * dlfcn/eval.c (funcall): Add noinline attribute to shut up warnings.
5326         * elf/rtld.c (dl_main): Cast ElfW(Addr) arguments with %Zx/%Zd
5327         formats to size_t.
5328         * elf/dl-lookup.c (_dl_debug_bindings): Likewise.
5329         * elf/tst-tls6.c (do_test): Use %zd format for l_tls_modid.
5330         * elf/tst-tls8.c (do_test): Use %zd format for modid1 and modid2.
5331         * gmon/tst-sprofil.c (main): Add parens to shut up warning.
5332         * iconv/tst-iconv3.c (main): Use %td instead of %zd for pointer
5333         difference argument.
5334         * stdio-common/tst-wc-printf.c (main): Cast arguments with %C
5335         format to wint_t.
5336         * stdlib/tst-limits.c (main): For WORD_BIT and LONG_BIT, use
5337         %d format and cast expected value to int.
5338         * sysdeps/generic/libc-start.c (STATIC): Add
5339         __attribute__((always_inline) if LIBC_START_MAIN is already defined.
5340         * sysdeps/powerpc/fpu/w_sqrt.c (a_nan, a_inf): Change from uint32_t
5341         to ieee_float_shape_type.
5342         (__sqrt): Avoid type punning.
5343         * sysdeps/powerpc/fpu/w_sqrtf.c (a_nan, a_inf): Change from uint32_t
5344         to ieee_float_shape_type.
5345         (__sqrtf): Avoid type punning.
5346         * sysdeps/s390/s390-32/dl-machine.h (elf_machine_rela): Don't define
5347         refsym if in dl-conflict.c.
5348         * sysdeps/s390/s390-64/dl-machine.h (elf_machine_rela): Likewise.
5349         * sysdeps/unix/sysv/linux/i386/semctl.c (union semun): Add __old_buf.
5350         (__new_semctl): Shut up warning.
5351         * sysdeps/unix/sysv/linux/semctl.c (union semun): Add __old_buf.
5352         (__new_semctl): Shut up warning.
5353         * sysdeps/unix/sysv/linux/shmctl.c (__new_shmctl): Wrap long lines.
5354         Change old into union of __old_shmid_ds and __old_shminfo structs.
5355         Adjust all users.
5356         * wcsmbs/wcsmbs-tst1.c (main): Cast arguments with %C format to wint_t.
5358         * sysdeps/unix/sysv/linux/utimes.c (__utimes): Fix actime and
5359         modtime computation.
5360         * sysdeps/unix/sysv/linux/futimes.c (__futimes): Likewise.
5361         * sysdeps/posix/utimes.c (__utimes): Likewise.
5363 2003-07-30  Jakub Jelinek  <jakub@redhat.com>
5365         * elf/dl-reloc.c (_dl_allocate_static_tls): Don't return any value,
5366         call dl_signal_error directly.  If already relocated, call
5367         GL(dl_init_static_tls) directly, otherwise queue it for later.
5368         (CHECK_STATIC_TLS): Undo 2003-07-24 change.
5369         * elf/rtld.c (dl_main): Initialize GL(dl_init_static_tls).
5370         * elf/dl-open.c (dl_open_worker): Call GL_dl_init_static_tls
5371         for all static TLS initializations delayed in _dl_allocate_static_tls.
5372         * elf/dl-support.c (_dl_init_static_tls): New variable.
5373         * include/link.h (struct link_map): Add l_need_tls_init.
5374         * sysdeps/generic/ldsodefs.h (_rtld_global): Add _dl_init_static_tls.
5375         (_dl_nothread_init_static_tls): New prototype.
5376         (_dl_allocate_static_tls): Adjust prototype.
5378         * elf/tls-macros.h (VAR_INT_DEF): Add alignment directive.
5380 2003-07-31  Alexandre Oliva  <aoliva@redhat.com>
5382         * elf/dynamic-link.h (elf_machine_rel, elf_machine_rela,
5383         elf_machine_rel_relative, elf_machine_rela_relative): Don't assume
5384         reloc_addr is aligned.
5385         * sysdeps/alpha/dl-machine.h (elf_machine_rela,
5386         elf_machine_rela_relative): Adjust.
5387         * sysdeps/arm/dl-machine.h (elf_machine_rel, elf_machine_rela,
5388         elf_machine_rel_relative, elf_machine_rela_relative): Adjust.
5389         * sysdeps/cris/dl-machine.h (elf_machine_rela,
5390         elf_machine_rela_relative): Adjust.
5391         * sysdeps/hppa/dl-machine.h (elf_machine_rela,
5392         elf_machine_rela_relative): Adjust.
5393         * sysdeps/i386/dl-machine.h (elf_machine_rel, elf_machine_rela,
5394         elf_machine_rel_relative, elf_machine_rela_relative): Adjust.
5395         * sysdeps/ia64/dl-machine.h (elf_machine_rela,
5396         elf_machine_rela_relative): Adjust.
5397         * sysdeps/m68k/dl-machine.h (elf_machine_rela,
5398         elf_machine_rela_relative): Adjust.
5399         * sysdeps/mips/dl-machine.h (elf_machine_rela,
5400         elf_machine_rela_relative): Adjust.
5401         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela,
5402         elf_machine_rela_relative): Adjust.
5403         * sysdeps/powerpc/powerpc64/dl-machine.h
5404         (elf_machine_rela_relative, elf_machine_rela): Adjust.
5405         * sysdeps/s390/s390-32/dl-machine.h (elf_machine_rela,
5406         elf_machine_rela_relative): Adjust.
5407         * sysdeps/s390/s390-64/dl-machine.h (elf_machine_rela,
5408         elf_machine_rela_relative): Adjust.
5409         * sysdeps/sh/dl-machine.h (elf_machine_rela,
5410         elf_machine_rela_relative): Adjust.
5411         * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela,
5412         elf_machine_rela_relative): Adjust.
5413         * sysdeps/sparc/sparc64/dl-machine.h (elf_machine_rela,
5414         elf_machine_rela_relative): Adjust.
5415         * sysdeps/x86_64/dl-machine.h (elf_machine_rela,
5416         elf_machine_rela_relative): Adjust.
5418 2003-07-29  Ulrich Drepper  <drepper@redhat.com>
5420         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Restore
5421         alignment of TCB used before the last change so that it matches
5422         ld's output for IE code.
5424 2003-07-29  Jakub Jelinek  <jakub@redhat.com>
5426         * include/ctype.h (__ctype_b_loc, __ctype_toupper_loc,
5427         __ctype_tolower_loc): Avoid "dereferencing type-punned pointer will
5428         break strict-aliasing rules" warnings.
5430 2003-07-29  Roland McGrath  <roland@redhat.com>
5432         * elf/Makefile: Revert accidental changes in last commit.
5433         * elf/dl-support.c: Likewise.
5435         * rt/tst-timer2.c: New file.
5436         * rt/Makefile (tests): Add it.
5438 2003-07-25  Jakub Jelinek  <jakub@redhat.com>
5440         * elf/dl-support.c (_dl_hwcap): Add nocommon attribute.
5442 2003-07-29  Roland McGrath  <roland@redhat.com>
5444         * elf/Makefile (tests) [$(build-shared) = yes]:
5445         Depend on $(test-modules).
5446         * dlfcn/Makefile: Likewise.
5448 2003-07-28  Roland McGrath  <roland@redhat.com>
5450         * sysdeps/generic/bits/types.h (__STD_TYPE): New macro.
5451         Use that instead of `typedef' when using __*_TYPE macros in rhs.
5453         * elf/tst-tls14.c [USE_TLS && HAVE___THREAD]: Conditionalize on this.
5454         * elf/tst-tlsmod14a.c: Likewise.
5456         * sysdeps/unix/sysv/linux/sys/sysctl.h: Include <linux/compiler.h>
5457         before <linux/sysctl.h>.
5459 2003-07-27  Ulrich Drepper  <drepper@redhat.com>
5461         * sysdeps/unix/sysv/syscalls.list: time syscall never fails.
5462         * sysdeps/unix/sysv/linux/x86_64/time.S: time syscall never fails.
5463         * sysdeps/unix/sysv/i386/time.S: time syscall never fails.
5464         * sysdeps/unix/syscalls.list: umask syscall never fails.
5466 2003-07-27  Andreas Jaeger  <aj@suse.de>
5468         * sysdeps/unix/sysv/linux/init-first.c: Mark init as used.
5470 2003-07-25  Jakub Jelinek  <jakub@redhat.com>
5472         * sysdeps/unix/sysv/linux/a.out.h: Replace with i386 version.
5473         Include bits/a.out.h.
5474         * sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Add
5475         bits/a.out.h.
5476         * sysdeps/unix/sysv/linux/bits/a.out.h: New file.
5477         * sysdeps/unix/sysv/linux/i386/bits/a.out.h: New file.
5478         * sysdeps/unix/sysv/linux/m68k/bits/a.out.h: New file.
5479         * sysdeps/unix/sysv/linux/x86_64/bits/a.out.h: New file.
5480         * sysdeps/unix/sysv/linux/alpha/a.out.h: New file.
5481         * sysdeps/unix/sysv/linux/alpha/bits/a.out.h: New file.
5482         * sysdeps/unix/sysv/linux/sparc/a.out.h: New file.
5483         * sysdeps/unix/sysv/linux/sparc/bits/a.out.h: New file.
5485 2003-07-24  Jakub Jelinek  <jakub@redhat.com>
5487         * sysdeps/pthread/aio_cancel.c (aio_cancel): Return AIO_ALLDONE
5488         if aiocbp != NULL and has already completed.  Return -1/EINVAL if
5489         aiocbp->aio_fildes does not match fildes.
5491 2003-07-24  Ulrich Drepper  <drepper@redhat.com>
5493         * timezone/zic.c (rpytime): Replace cheap overflow check with a
5494         functioning one.
5496         * include/link.h (struct link_map): Add l_tls_firstbyte_offset field.
5497         * sysdeps/generic/dl-tls.c [TLS_TCB_AT_TP] (_dl_determine_tlsoffset):
5498         Fix calculation of offsets to take misalignment of first byte in
5499         file into account.
5500         * elf/dl-load.c (_dl_map_object_from_fd): Initialize
5501         l_tls_firstbyte_offset field.
5502         * elf/rtld.c (_dl_start_final, _dl_start, dl_main): Likewise.
5503         * elf/dl-reloc.c (_dl_allocate_static_tls): Change return type to int.
5504         Take l_tls_firstbyte_offset information into account.
5505         (CHECK_STATIC_TLS): _dl_allocate_static_tls can fail now.
5506         * sysdeps/generic/ldsodefs.h: Adjust _dl_allocate_static_tls prototype.
5507         * elf/Makefile: Add rules to build and run tst-tls14.
5508         * elf/tst-tls14.c: New file.
5509         * elf/tst-tlsmod14a.c: New file.
5510         * elf/tst-tlsmod14b.c: New file.
5512 2003-07-23  Jakub Jelinek  <jakub@redhat.com>
5514         * sysdeps/pthread/lio_listio.c (LIO_OPCODE_BASE): Define.
5515         (lio_listio): Use it.
5516         * sysdeps/pthread/lio_listio64.c: Include lio_listio.c instead of
5517         after few defines to avoid duplication.
5519 2003-07-22  Jakub Jelinek  <jakub@redhat.com>
5521         * include/stdio.h (__libc_fatal): Add libc_hidden_proto.
5522         * include/dlfcn.h (__libc_dlopen_mode, __libc_dlsym, __libc_dlclose):
5523         Likewise.
5524         * elf/dl-libc.c (__libc_dlopen_mode, __libc_dlsym, __libc_dlclose):
5525         Add libc_hidden_def.
5526         * sysdeps/generic/libc_fatal.c (__libc_fatal): Likewise.
5527         * sysdeps/posix/libc_fatal.c (__libc_fatal): Likewise.
5528         * sysdeps/unix/sysv/linux/libc_fatal.c (__libc_fatal): Likewise.
5529         * elf/Versions (libc): Export __libc_dlopen_mode@@GLIBC_PRIVATE,
5530         __libc_dlsym@@GLIBC_PRIVATE and __libc_dlclose@@GLIBC_PRIVATE.
5531         * libio/Versions (libc): Export __libc_fatal@@GLIBC_PRIVATE.
5532         * sysdeps/generic/unwind-dw2.c: Readd #ifs removed during last
5533         change.
5534         * sysdeps/generic/unwind.inc: Removed.
5536         * include/resolv.h (__resp): Declare.  Define to __libc_resp
5537         if in libc.so.
5538         (_res): If USE___THREAD, define to (*__resp).
5539         * resolv/res_libc.c (_res): Normal .bss variable with compat_symbol
5540         even if USE___THREAD.
5541         (__resp): New __thread variable.
5542         (__libc_resp): New alias.
5543         * resolv/Versions (libc): Export _res@GLIBC_2.0 even if
5544         USE_TLS && HAVE___THREAD.  Export __resp@@GLIBC_PRIVATE.
5545         * sysdeps/generic/res-state.c (__res_state): Return __resp
5546         if USE___THREAD.
5548 2003-07-22  H.J. Lu  <hongjiu.lu@intel.com>
5550         * elf/dl-support.c (_dl_hwcap): New variable.
5551         (_dl_aux_init): Initialize GL(dl_hwcap) for static binaries.
5553         * sysdeps/i386/fpu/fclrexcpt.c: Include <unistd.h>, <ldsodefs.h>
5554         and <dl-procinfo.h>.
5555         (__feclearexcept): Clear MXCSR if needed.
5556         * sysdeps/i386/fpu/fsetexcptflg.c: Likewise.
5558         * sysdeps/i386/fpu_control.h (_FPU_GETCW, _FPU_SETCW): Document
5559         that newer hardware needs more than these macros.
5561         * sysdeps/i386/setfpucw.c: New file.
5563 2003-07-22  Jakub Jelinek  <jakub@redhat.com>
5565         * elf/Makefile (CFLAGS-ldconfig.c): Define IS_IN_ldconfig.
5566         * elf/ldconfig.c: Include dl-procinfo.c.
5567         (PROCINFO_CLASS): Define.
5568         * sysdeps/generic/ldsodefs.h (PROCINFO_CLASS): Define.
5569         * sysdeps/unix/sysv/linux/x86_64/dl-procinfo.c: New file.
5570         * sysdeps/unix/sysv/linux/x86_64/dl-procinfo.h: New file.
5571         * sysdeps/unix/sysv/linux/i386/dl-procinfo.c (PROCINFO_CLASS):
5572         Define if not yet defined.  Use it instead of EXTERN.  Undefine
5573         at the end of the file.
5574         * sysdeps/unix/sysv/linux/arm/dl-procinfo.c (PROCINFO_CLASS):
5575         Likewise.
5576         * sysdeps/unix/sysv/linux/sparc/sparc32/dl-procinfo.c
5577         (PROCINFO_CLASS): Likewise.
5578         * sysdeps/unix/sysv/linux/sparc/sparc64/dl-procinfo.c
5579         (PROCINFO_CLASS): Likewise.
5581 2003-07-22  H.J. Lu  <hongjiu.lu@intel.com>
5583         * elf/ldconfig.c (main): Issue a fatal error if relative path
5584         is used to build cache.
5586 2003-07-22  Ulrich Drepper  <drepper@redhat.com>
5588         * elf/readlib.c (process_file): Avoid possible overflow in assignment.
5590 2003-07-21  Art Haas  <ahaas@airmail.net>
5592         * manual/charset.texi (Converting a Character): Fix example code so a
5593         valid pointer is returned.
5595 2003-07-22  Andreas Jaeger  <aj@suse.de>
5597         * elf/readlib.c (process_file): Check that file is a shared
5598         object.
5600         * elf/sofini.c (__FRAME_END__): Use attribute used so that gcc
5601         will not optimize it away.
5602         (__DTOR_END__): Likewise.
5603         (__CTOR_END__): Likewise.
5605         * include/libc-symbols.h (_elf_set_element): Use attribute used so
5606         that gcc will not optimize it away.
5607         (link_warning): Likewise.
5609 2003-07-22  Ulrich Drepper  <drepper@redhat.com>
5611         * wcsmbs/wcpncpy.c (__wcpncpy): Correct destination pointer handling.
5612         * wcsmbs/Makefile (tests): Add tst-wcpncpy.
5613         * wcsmbs/tst-wcpncpy.c: New file.
5615 2003-07-21  Ulrich Drepper  <drepper@redhat.com>
5617         * sysdeps/unix/sysv/linux/bits/sched.h (CLONE_STOPPED): Define.
5619         * sysdeps/i386/fpu/feenablxcpt.c (feenableexcept): Reverse use of
5620         stmxcsr and ldmxcsr.
5622         * Makerules (build-module-helper): Add -z defs unless explicitly said
5623         not to do it.
5624         * dlfcn/Makefile: Define various *-no-z-defs variables for test DSOs
5625         which has undefined symbols.
5626         * elf/Makefile: Likewise.
5628         * sysdeps/i386/fpu/fedisblxcpt.c: Use dl_hwcap, not dl_hwcap_mask.
5629         * sysdeps/i386/fpu/feenablxcpt.c: Likewise.
5630         * sysdeps/i386/fpu/feholdexcpt.c: Likewise.
5631         * sysdeps/i386/fpu/fesetround.c: Likewise.
5632         * sysdeps/i386/fpu/ftestexcept.c: Likewise.
5634 2003-07-21  HJ Lu  <hongjiu.lu@intel.com>
5636         * elf/ldconfig.c (search_dir): Treat symlink as regular file
5637         if it won't point to itself.
5639 2003-07-20  Ulrich Drepper  <drepper@redhat.com>
5641         * sysdeps/ia64/hp-timing.h (REPEAT_READ): Cast to long int not to int.
5643 2003-07-20  Andreas Jaeger  <aj@suse.de>
5645         * iconvdata/cp932.c (BODY): STANDARD_ERR_HANDLER is now called
5646         STANDARD_TO_LOOP_ERR_HANDLER.
5647         * iconvdata/euc-jp-ms.c (BODY): Likewise.
5649 2003-07-19  Ulrich Drepper  <drepper@redhat.com>
5651         * sysdeps/unix/sysv/linux/bits/sched.h (__CPU_ZERO): Fix typo.
5653         * sysdeps/unix/sysv/linux/syscalls.list: Remove affinity syscalls.
5655 2003-07-16  Daniel Jacobowitz  <drow@mvista.com>
5656             Andreas Jaeger  <aj@suse.de>
5658         * sysdeps/unix/sysv/linux/mips/bits/shm.h (SHMLBA): Define to
5659         256K, remove unneeded declaration of __getpagesize.
5661 2003-07-16  Andreas Schwab  <schwab@suse.de>
5663         * sysdeps/unix/sysv/linux/futimes.c: Include <string.h>.
5665 2003-07-15  Ulrich Drepper  <drepper@redhat.com>
5667         * io/test-utime.c (main): Make test yet more robust.
5669 2003-07-14  Ulrich Drepper  <drepper@redhat.com>
5671         More cancellation handling fixups.
5672         * sysdeps/unix/sysv/linux/not-cancel.h: Add waitpid_not_cancel.
5673         * sysdeps/generic/not-cancel.h: Likewise.
5674         * catgets/open_catalog.c: Use not-cancelable syscalls.
5675         * time/Makefile (CFLAGS-getdate.c): Add -fexceptions.
5676         * sysdeps/unix/sysv/linux/llseek.c: Must not be cancelable.
5677         * sysdeps/unix/syscalls.list: Don't mark lseek as cancelable.
5678         * dlfcn/dlfcn.h: Mark dlopen with __THROW again.
5679         * io/fcntl.h: Don't mark posix_fallocate with __THROW.
5680         * libio/fileops.c: Use not-cancelable syscalls for fclose.
5681         * libio/iopopen.c: Use no-cancelable syscalls.
5682         * libio/stdio.h: Mark popen and pclose with __THROW again.
5683         * misc/Makefile (CFLAGS-syslog.c): Add -fexceptions.
5684         * misc/syslog.c: Fix locking and cancellation cleanup handling.
5685         * posix/unistd.h: Mark ttyname and ttyname_r again with __THROW.
5686         * stdio-common/Makefile (CFLAGS-tmpfile.c, CFLAGS-tmpfile64.c,
5687         CFLAGS-tempname.c): Add -fexceptions.
5688         * stdlib/Makefile (CFLAGS-mkstemp.c): Add -fexceptions.
5689         * string/string.h: Mark strerror and strerror_r with _THROW again.
5690         * sysdeps/generic/unwind.inc: New file.  Copied from gcc.
5691         * sysdeps/generic/unwind-dw2.c: Update from gcc version.  Remove
5692         #ifs since we now need all the code compiled.
5693         * sysdeps/posix/spawni.c: Use close_not_cancel instead of close.
5694         * sysdeps/unix/closedir.c: Use not-cancelable syscalls.
5695         * sysdeps/unix/opendir.c: Likewise.
5697         * iconvdata/Makefile (modules): Add CP932 and EUC-JP-MS.
5698         Add rule for EUC-JP-MS dependency.
5699         * iconvdata/cp932.c: New file.
5700         * iconvdata/eucjp-ms.c: New file.
5701         * iconvdata/gconv-modules: Add entries for CP932 and EUC-JP-MS.
5702         Patch by MORIYAMA Masayuki <msyk@mtg.biglobe.ne.jp>.
5704 2003-07-15  Jakub Jelinek  <jakub@redhat.com>
5706         * sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S (__socket): Add
5707         cfi directives.
5709 2003-07-14  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
5711         * sysdeps/unix/sysv/linux/kernel-features.h
5712         (__ASSUME_FIXED_CLONE_SYSCALL): New macro.
5713         * sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S: Use it.
5715         * sysdeps/unix/sysv/linux/utimes.c: Include sysdep.h.
5717 2003-07-14  Ulrich Drepper  <drepper@redhat.com>
5719         * sysdeps/unix/sysv/linux/kernel-features.h: Define
5720         __ASSUME_TGKILL for Alpha appropriately.
5722 2003-07-12  Ulrich Drepper  <drepper@redhat.com>
5724         * sysdeps/unix/sysv/linux/bits/statfs.h (_STATFS_F_FRSIZE): Define.
5725         * sysdeps/unix/sysv/linux/alpha/bits/statfs.h (_STATFS_F_FRSIZE):
5726         Likewise.
5727         * sysdeps/unix/sysv/linux/s390/bits/statfs.h (_STATFS_F_FRSIZE):
5728         Likewise.
5730         * sysdeps/unix/sysv/linux/kernel-features.h: Define
5731         __ASSUME_UTIMES for x86 and kernels > 2.5.75.
5733         * sysdeps/unix/sysv/linux/futimes.c (__futimes): Handle case with
5734         second parameter == NULL.
5735         * sysdeps/unix/sysv/linux/utimes.c: New file.
5737 2003-07-12  Jakub Jelinek  <jakub@redhat.com>
5739         * sysdeps/unix/sysv/linux/futimes.c: Include kernel-features.h.
5740         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_UTIMES): Fix
5741         a typo.
5743 2003-07-12  Ulrich Drepper  <drepper@redhat.com>
5745         * time/sys/time.h: Namespace cleanup.
5746         * sysdeps/unix/sysv/linux/kernel-features.h: Define
5747         __ASSUME_UTIMES for the architectures which always had the syscall.
5748         * sysdeps/unix/sysv/linux/futimes.c: New file.
5750 2003-07-12  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
5752         * sysdeps/unix/sysv/linux/sh/socket.S: Save and restore the PR
5753         register across CENABLE and CDISABLE.
5755 2003-07-11  Jakub Jelinek  <jakub@redhat.com>
5757         * sysdeps/unix/sysv/linux/sigwait.c: Include string.h.
5758         * sysdeps/unix/sysv/linux/sigwaitinfo.c: Likewise.
5759         * sysdeps/unix/sysv/linux/sigtimedwait.c: Likewise.
5760         * sysdeps/unix/sysv/linux/sleep.c (__sleep): Cast value to unsigned
5761         int before assigning to max to avoid warnings.
5763 2003-07-11  Jakub Jelinek  <jakub@redhat.com>
5765         * sysdeps/unix/sysv/linux/powerpc/powerpc32/socket.S (__socket): Add
5766         cfi directives.
5767         * sysdeps/unix/sysv/linux/s390/s390-32/socket.S (__socket): Likewise.
5768         * sysdeps/unix/sysv/linux/s390/s390-64/socket.S (__socket): Likewise.
5770 2003-07-10  Jakub Jelinek  <jakub@redhat.com>
5772         * sysdeps/powerpc/powerpc64/elf/start.S: Set section flags of
5773         .data.rel.ro.local to "aw".
5775 2003-07-10  Ulrich Drepper  <drepper@redhat.com>
5777         * sysdeps/m68k/Makefile: Remove CLFAGS-.oS addition.
5778         * Makeconfig (CFLAGS-.oS): Use PIC-ccflag instead of pic-ccflag.
5779         (PIC-ccflag): Define.
5781 2003-07-04  Jakub Jelinek  <jakub@redhat.com>
5783         * sysdeps/s390/s390-32/elf/start.S: Emit position independent code
5784         if PIC.
5785         * sysdeps/s390/s390-64/elf/start.S: Likewise.
5787 2003-07-07  Jakub Jelinek  <jakub@redhat.com>
5789         * sysdeps/powerpc/powerpc64/elf/start.S: Put L(start_address)
5790         into .data.rel.ro.local section if PIC to avoid DT_TEXTREL.
5792 2003-07-07  Ulrich Drepper  <drepper@redhat.com>
5794         * sysdeps/unix/sysv/linux/kernel-features.h: Version
5795         __ASSUME_CORRECT_SI_PID and __ASSUME_TGKILL if possible.
5797         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Adjust for
5798         compilation with HAVE_AUX_SECURE defined.
5800 2003-07-05  Richard Henderson  <rth@redhat.com>
5802         * sysdeps/alpha/elf/initfini.c: Avoid .ent/.end.
5804 2003-07-03  Ulrich Drepper  <drepper@redhat.com>
5806         * configure.in: Also check for .cfi_rel_offset pseudo-op.
5808 2003-07-03  Jakub Jelinek  <jakub@redhat.com>
5810         * sysdeps/unix/sysv/linux/prof-freq.c (__profile_frequency): Fix a
5811         typo.
5813 2003-07-03  Ulrich Drepper  <drepper@redhat.com>
5815         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_AT_CLKTCK):
5816         Define.
5817         * sysdeps/unix/sysv/linux/prof-freq.h: New file.
5819 2003-07-02  Jakub Jelinek  <jakub@redhat.com>
5821         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Protect new_sysinfo
5822         decl and use with #ifdef NEED_DL_SYSINFO.
5824 2003-07-02  Ulrich Drepper  <drepper@redhat.com>
5826         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Don't set
5827         GL(dl_sysinfo) unles GL(dl_sysinfo_dso) is also set.
5828         * sysdeps/unix/sysv/linux/kernel-features.h: Define
5829         __ASSUME_VSYSCALL only for 2.5.69 and up since this is when the
5830         vsyscall DSO was added.
5832         * posix/bits/posix1_lim.h (_POSIX_NGROUPS_MAX): Define to 8 or 0
5833         depending on selected standard.
5834         (NGROUPS_MAX): Define to 8 if not defined.
5836 2003-07-02  Andreas Jaeger  <aj@suse.de>
5838         * sysdeps/unix/sysv/linux/x86_64/sys/epoll.h: New file.
5840 2003-05-04  H.J. Lu  <hongjiu.lu@intel.com>
5842         * malloc/arena.c (arena_get2): Add atomic_write_barrier.
5843         * malloc/thread-m.h: Include <atomic.h>.
5844         (atomic_full_barrier): Provide default.
5845         (atomic_read_barrier): Likewise.
5846         (atomic_write_barrier): Likewise.
5847         * sysdeps/ia64/bits/atomic.h (atomic_full_barrier): New #define.
5849 2003-06-30  Ulrich Drepper  <drepper@redhat.com>
5851         * sysdeps/generic/sysdep.h: Define cfi_rel_offset and CFI_REL_OFFSET.
5853 2003-06-30  Richard Henderson  <rth@redhat.com>
5855         * sysdeps/alpha/bits/atomic.h (__arch_compare_and_exchange_bool_*_int):
5856         Invert the sense of the return value.
5857         (__arch_exchange_16_int): Fix paste-o.
5858         (__arch_exchange_{32,64}_int): Fix think-o.
5860         * sysdeps/unix/sysv/linux/alpha/clone.S: Load child_tid properly.
5862 2003-06-30  Richard Henderson  <rth@redhat.com>
5864         * include/sys/resource.h (__getrusage): Mark hidden.
5865         * include/sys/time.h (__settimeofday, __setitimer, __utimes): Likewise.
5866         * include/sys/wait.h (__wait4): Likewise.
5868 2003-06-17  Guido Guenther  <agx@sigxcpu.org>
5870         * sysdeps/unix/sysv/linux/mips/xstatconv.c: Handle STAT_IS_KERNEL_STAT
5871         case.
5872         (xstat_conv): Rename to __xstat_conv and remove static inline.
5873         (xstat64_conv): Likewise.
5875 2003-06-29  Ulrich Drepper  <drepper@redhat.com>
5877         * sysdeps/unix/sysv/linux/sleep.c (__sleep): Handle parameter
5878         values which cannot be handled in one nanosleep call.
5880 2003-06-25  Alfred M. Szmidt  <ams@kemisten.nu>
5882         * sysdeps/generic/bits/in.h (IPV6_HOPOPTS, IPV6_DSTOPTS): New macros.
5883         (IPV6_RXHOPOPTS, IPV6_RXDSTOPTS): Use them.
5885         * sysdeps/generic/ifreq.h (__if_nextreq) [_HAVE_SA_LEN]: Typo fix.
5887 2003-06-04  Thorsten Kukuk  <kukuk@suse.de>
5889         * sysdeps/unix/sysv/linux/net/if_arp.h: Sync with kernel header,
5890         fix typo.
5892 2003-06-26  Steven Munroe  <sjmunroe@us.ibm.com>
5894         * sysdeps/unix/sysv/linux/xstatconv.h [!STAT_IS_KERNEL_STAT]:
5895         Conditionalize function definitions that use struct kernel_stat.
5896         * sysdeps/unix/sysv/linux/fxstat.c: Remove __syscall_fstat extern.
5897         * sysdeps/unix/sysv/linux/lxstat.c: Remove __syscall_lstat extern.
5898         * sysdeps/unix/sysv/linux/xstat.c: Remove __syscall_stat extern.
5900 2003-06-28  Ulrich Drepper  <drepper@redhat.com>
5902         * sysdeps/unix/sysv/linux/s390/semtimedop.c (semtimedop): Add real
5903         implementation.
5905 2003-06-07  Thorsten Kukuk  <kukuk@suse.de>
5907         * nis/nss_compat/compat-grp.c: Remove unused nis_first variable.
5908         (getgrent_next_file): Don't store group name to early in blacklist.
5910         * nis/nss_compat/compat-pwd.c (internal_getpwuid_r): Save strlen result
5911         and use memcpy instead of strcpy.
5913 2003-06-28  Ulrich Drepper  <drepper@redhat.com>
5915         * nis/nss_compat/compat-grp.c: Optimize several little things.  Use
5916         stream unlocked.
5917         * nis/nss_compat/compat-initgroups.c: Likewise.
5918         * nis/nss_compat/compat-pwd.c: Likewise.
5919         * nis/nss_compat/compat-spwd.c: Likewise.
5921 2003-06-27  Thorsten Kukuk  <kukuk@suse.de>
5923         * nis/nss_compat/compat-initgroups.c: Don't use our own NIS/NIS+
5924         functions, dlopen corresponding NSS module instead.
5926 2003-06-27  Jeroen Dekkers  <jeroen@dekkers.cx>
5928         * sysdeps/mach/hurd/alpha/init-first.c: Remove call to __libc_init.
5929         * sysdeps/mach/hurd/i386/init-first.c: Likewise.
5930         * sysdeps/mach/hurd/mips/init-first.c: Likewise.
5931         * sysdeps/mach/hurd/powerpc/init-first.c: Likewise.
5933 2003-06-27  Ulrich Drepper  <drepper@redhat.com>
5935         * rt/Makefile (CFLAGS-librt-cancellation.c): Define.
5937 2003-06-26  Roland McGrath  <roland@frob.com>
5939         * sysdeps/mach/configure.in: Barf rather than define NO_CREATION_TIME.
5940         * sysdeps/mach/configure: Regenerated.
5941         * sysdeps/mach/hurd/times.c (times_init): Function removed.
5942         (__times): Assume `creation_time' field is available.
5943         * sysdeps/mach/hurd/Makefile [$(subdir) = csu] (sysdep_routines):
5944         Don't append set-init.
5945         * sysdeps/mach/hurd/set-init.c: File removed.
5947 2003-06-26  Roland McGrath  <roland@redhat.com>
5949         * elf/elf.h (AT_SECURE): New macro.
5950         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Grok it,
5951         set __libc_enable_secure.
5952         (_dl_show_auxv): Add AT_SECURE to name table.
5953         * elf/dl-support.c (_dl_aux_init): Grok AT_SECURE, set
5954         __libc_enable_secure and __libc_enable_secure_decided.
5955         * sysdeps/unix/sysv/linux/ldsodefs.h
5956         [__ASSUME_AT_SECURE] (HAVE_AUX_SECURE): Define it.
5957         * sysdeps/unix/sysv/linux/kernel-features.h
5958         [__LINUX_KERNEL_VERSION >= 132426] (__ASSUME_AT_SECURE): Define it.
5960 2003-06-26  Ulrich Drepper  <drepper@redhat.com>
5962         * io/test-utime.c: If _STATBUF_ST_NSEC is defined, adjust lower
5963         boundary test to take rounding of nanoseconds into account.
5965         * sysdeps/unix/sysv/linux/bits/stat.h: Define _STATBUF_ST_NSEC.
5966         * sysdeps/unix/sysv/linux/ia64/bits/stat.h: Likewise.
5967         * sysdeps/unix/sysv/linux/m68k/bits/stat.h: Likewise.
5968         * sysdeps/unix/sysv/linux/powerpc/bits/stat.h: Likewise.
5969         * sysdeps/unix/sysv/linux/s390/bits/stat.h: Likewise.
5970         * sysdeps/unix/sysv/linux/sparc/bits/stat.h: Likewise.
5971         * sysdeps/unix/sysv/linux/x86_64/bits/stat.h: Likewise.
5973 2003-06-26  Andreas Schwab  <schwab@suse.de>
5975         * sysdeps/m68k/fpu/bits/mathinline.h: Don't inline frexp.
5976         * sysdeps/m68k/fpu/s_frexp.c: Put implementation here.
5977         * sysdeps/m68k/fpu/s_frexpl.c: Fix to handle unnormalized numbers.
5979 2003-06-17  Thorsten Kukuk  <kukuk@suse.de>
5981         * nis/Makefile: Remove NIS/NIS+ files from nss_compat module.
5982         * nis/nss_compat/compat-grp.c: Don't use our own NIS/NIS+ functions,
5983         dlopen corresponding NSS module instead.
5984         * nis/nss_compat/compat-pwd.c: Likewise.
5985         * nis/nss_compat/compat-spwd.c: Likewise.
5986         * nis/nss_compat/compat-initgroups.c: Disabled for now.
5987         * nss/Versions: Export __nss_lookup_function.
5989 2003-06-19  Daniel Jacobowitz  <drow@mvista.com>
5991         * sysdeps/unix/sysv/linux/kernel-features.h: Update kernel features
5992         for the SH architecture.
5994 2003-06-25  Thorsten Kukuk  <kukuk@suse.de>
5996         * csu/Makefile: Use CPPFLAGS to find correct linux/version.h.
5998 2003-06-25  Andreas Jaeger  <aj@suse.de>
6000         * stdlib/tst-strtod.c (main): Declare constant long double as
6001         suggested by Jakub Jelinek and Andreas Schwab.
6003         * posix/tst-nanosleep.c: Include <time.h> for nanosleep
6004         declaration.
6006         * stdio-common/tst-fphex.c: Fix format string.
6008         * posix/transbug.c: Include <string.h> for memset and strlen
6009         declarations.
6011         * stdio-common/tst-sprintf.c: Include <stdlib.h> for free declaration.
6013         * stdlib/tst-strtod.c (main): Pass long double value.
6015         * test-skeleton.c: Include <time.h> for nanosleep declaration.
6017 2003-06-25  Ulrich Drepper  <drepper@redhat.com>
6019         * include/time.h: Don't define CLOCK_IDFIELD_SIZE if _ISOMAC is
6020         defined.
6022 2003-06-11  Jakub Jelinek  <jakub@redhat.com>
6024         * elf/Versions (libc): Add _dl_open_hook@GLIBC_PRIVATE.
6025         * elf/dl-libc.c (struct dl_open_hook): New.
6026         (_dl_open_hook): New variable.
6027         (do_dlsym_private): New function.
6028         (__libc_dlopen_mode) [!SHARED]: Lookup _dl_open_hook@GLIBC_PRIVATE
6029         and initialize it if found.
6030         (__libc_dlopen_mode) [SHARED]: If _dl_open_hook is non-NULL,
6031         call dlopen_mode hook.
6032         (__libc_dlsym) [SHARED]: If _dl_open_hook is non-NULL,
6033         call dlsym hook.
6034         (__libc_dlclose) [SHARED]: If _dl_open_hook is non-NULL,
6035         call dlclose hook.
6037 2003-06-25  Ulrich Drepper  <drepper@redhat.com>
6039         * sysdeps/unix/sysv/linux/cris/sysdep.h (INLINE_SYSCALL): Cast
6040         result to long int so that extensions to long long int work.
6041         Patch by Uwe Reimann <libc-alpha@pulsar.homelinux.net>.
6043 2003-06-19  Jakub Jelinek  <jakub@redhat.com>
6045         * elf/ldconfig.c (main): Use add_system_dir instead of add_dir.
6046         * sysdeps/generic/dl-cache.h (add_system_dir): Define.
6047         * sysdeps/unix/sysv/linux/x86_64/dl-cache.h: Include sparc
6048         dl-cache.h.
6049         * sysdeps/unix/sysv/linux/s390/dl-cache.h: New file.
6050         * sysdeps/unix/sysv/linux/mips/dl-cache.h: New file.
6051         * sysdeps/unix/sysv/linux/powerpc/dl-cache.h: New file.
6052         * sysdeps/unix/sysv/linux/sparc/dl-cache.h: New file.
6054 2003-06-19  Jakub Jelinek  <jakub@redhat.com>
6056         * test-skeleton.c (timeout_handler): If waitpid returned 0,
6057         retry once after a second.  If killed == 0, assume
6058         WTERMSIG (status) == SIGKILL.
6060 2003-06-18  Roland McGrath  <roland@redhat.com>
6062         * sysdeps/generic/dl-sysdep.c (_dl_show_auxv): Catch uninitialized
6063         elements in the table instead of printing an empty name string.
6065 2003-06-05  Roland McGrath  <roland@redhat.com>
6067         * elf/elf.h (PT_GNU_STACK): New macro.
6069 2003-06-24  Ulrich Drepper  <drepper@redhat.com>
6071         * include/time.h: Define CLOCK_IDFIELD_SIZE.
6072         * sysdeps/posix/clock_getres.c: Recognize thread CPU clock IDs.
6073         * sysdeps/unix/clock_gettime.c: Likewise.
6074         * sysdeps/unix/clock_settime.c: Likewise.
6075         * sysdeps/unix/clock_nanosleep.c (CPUCLOCK_P): Adjust for new
6076         clock id for thread CPU clocks.
6078         * sysdeps/unix/sysv/linux/fstatfs64.c (__fstatfs64): Add support
6079         for the fstatfs64 syscall.
6080         * sysdeps/unix/sysv/linux/statfs64.c (__statfs64): Add support for
6081         the statfs64 syscall.
6083         * sysdeps/unix/sysv/linux/kernel-features.h: Define
6084         __ASSUME_STATFS64 appropriately.
6086         * sysdeps/unix/sysv/linux/internal_statvfs.c: Use f_frsize field
6087         from statfs structure if it has been filled in.
6089         * sysdeps/unix/sysv/linux/bits/statfs.h (struct statfs): Add f_frsize
6090         field.
6091         (struct statfs64): Likewise.
6092         * sysdeps/unix/sysv/linux/alpha/bits/statfs.h: Likewise.
6093         * sysdeps/unix/sysv/linux/s390/bits/statfs.h: Likewise.
6095 2003-06-24  Richard Henderson  <rth@redhat.com>
6097         * sysdeps/unix/sysv/linux/alpha/syscalls.list (pread, pwrite): Use
6098         the 64-bit syscall name.
6100         * sysdeps/alpha/setjmp.S (_setjmp, setjmp): Mark .prologue.
6102         * sysdeps/alpha/fpu/bits/mathinline.h: Honor
6103         __LIBC_INTERNAL_MATH_INLINES.  Implement __signbitf, __signbit.
6105         * sysdeps/unix/sysv/linux/alpha/clone.S: Use HIDDEN_JUMPTARGET.
6106         * sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S: Use
6107         libc_hidden_def.
6108         * sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S: Likewise.
6109         * sysdeps/unix/sysv/linux/alpha/setfpucw.c: Use libc_hidden_proto
6110         on them.
6112         * sysdeps/alpha/bits/atomic.h: New file.
6114 2003-06-24  Andreas Schwab  <schwab@suse.de>
6116         * sysdeps/m68k/fpu/libm-test-ulps: Update.
6118 2003-06-24  Andreas Jaeger  <aj@suse.de>
6120         * sysdeps/unix/sysv/linux/x86_64/stat.h (_STAT_VER_LINUX): Avoid
6121         redeclaration with 32-bit code.
6123 2003-05-19  Ed Connell  <ed.connell@sas.com>
6125         * sysdeps/unix/sysv/linux/i386/getcontext.S (getcontext): Retain
6126         floating point mask.
6127         * sysdeps/i386/fpu/fegetenv.c (fegetenv): Likewise.
6129 2003-06-23  Ulrich Drepper  <drepper@redhat.com>
6131         * sysdeps/pthread/aio_misc.h: Mark __aio_requests_mutex,
6132         __aio_enqueue_request, __aio_find_req, __aio_find_req_fd,
6133         __aio_free_request, __aio_notify, and __aio_sigqueue as hidden.
6135         * sysdeps/pthread/aio_suspend.c (aio_suspend): Set errno to the result
6136         of pthread_cond_wait if there was an error.  Use pthread_cleanup_*
6137         instead of __libc_cleanup_region_*.
6139 2003-06-20  Richard Henderson  <rth@redhat.com>
6141         * sysdeps/unix/make-syscalls.sh: Implement ! prefix for strong aliases.
6142         * sysdeps/unix/sysv/linux/alpha/syscalls.list (open, open64): New.
6144 2003-06-20  Richard Henderson  <rth@redhat.com>
6146         * sysdeps/unix/alpha/sysdep.h (INLINE_SYSCALL1): Use __builtin_expect.
6147         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_ST_INO_64_BIT)
6148         Unset for alpha.
6149         (__ASSUME_TIMEVAL64): Set for alpha.
6150         * sysdeps/unix/sysv/linux/alpha/Makefile (sysdep_routines): Remove
6151         adjtimex, osf_sigprocmask, old_adjtimex.
6152         * sysdeps/unix/sysv/linux/alpha/adjtime.c: Use INLINE_SYSCALL,
6153         __ASSUME_TIMEVAL64.  Reorg tv64 functions to avoid uninit variable.
6154         * sysdeps/unix/sysv/linux/alpha/getitimer.S: Use __ASSUME_TIMEVAL64.
6155         * sysdeps/unix/sysv/linux/alpha/getrusage.S: Likewise.
6156         * sysdeps/unix/sysv/linux/alpha/gettimeofday.S: Likewise.
6157         * sysdeps/unix/sysv/linux/alpha/select.S: Likewise.
6158         * sysdeps/unix/sysv/linux/alpha/setitimer.S: Likewise.
6159         * sysdeps/unix/sysv/linux/alpha/settimeofday.S: Likewise.
6160         * sysdeps/unix/sysv/linux/alpha/utimes.S: Likewise.
6161         * sysdeps/unix/sysv/linux/alpha/wait4.S: Likewise.
6162         * sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S: Streamline
6163         PIC code sequence.
6164         * sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S: Likewise.
6165         * sysdeps/unix/sysv/linux/alpha/sigaction.c: New file.
6166         * sysdeps/unix/sysv/linux/alpha/sigprocmask.c: Use INLINE_SYSCALL.
6167         * sysdeps/unix/sysv/linux/alpha/ustat.c: Likewise.
6168         * sysdeps/unix/sysv/linux/alpha/xmknod.c: Likewise.
6169         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Remove osf_sigprocmask,
6170         sys_ustat, sys_mknod, adjtimex, old_adjtimex.
6171         * sysdeps/unix/sysv/linux/alpha/sysdep.h (INLINE_SYSCALL): Don't
6172         defer to __syscall_name; error for rt_sigaction.
6173         * sysdeps/unix/sysv/linux/alpha/xstatconv.c: Include kernel_stat.h.
6175 2003-06-18  Ulrich Drepper  <drepper@redhat.com>
6177         * malloc/malloc.c (public_mALLINFo): Initialize malloc if it
6178         hasn't happened yet.
6180         * sysdeps/unix/sysv/linux/x86_64/register-dump.h (register_dump):
6181         Fix completely broken implementation.  The second parameter is of
6182         type struct ucontext*.
6184         * sysdeps/x86_64/dl-machine.h (elf_machine_runtime_setup): Always
6185         inline.
6187         * sysdeps/i386/i686/dl-hash.h: Don't inline _dl_elf_hash.
6188         * sysdeps/generic/dl-hash.h: Likewise.
6190         * sysdeps/generic/memcmp.c: Remove inline from
6191         memcmp_common_alignment and memcmp_not_common_alignment definition.
6193         * intl/localealias.c (read_alias_file): Determine whether line is
6194         read incompletely early, before we modify the line.
6196 2003-06-17  Jakub Jelinek  <jakub@redhat.com>
6198         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela)
6199         <case R_PPC64_DTPREL64>: Don't segfault on undefined symbols.
6201 2003-06-17  Paul Mackerras  <paulus@samba.org>
6203         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: New file.
6204         * sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S: New file.
6205         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: New file.
6206         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: New file.
6207         * sysdeps/unix/sysv/linux/powerpc/powerpc32/ucontext_i.h: New file.
6208         * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: Adjust.
6210 2003-06-17  Jakub Jelinek  <jakub@redhat.com>
6212         * posix/regcomp.c (build_word_op): Use alnum instead of alpha class.
6214 2003-06-17  Ulrich Drepper  <drepper@redhat.com>
6216         * sysdeps/unix/clock_nanosleep.c (clock_nanosleep): nanosleep
6217         takes care of enabling cancellation.
6219         * sysdeps/pthread/aio_suspend.c (aio_suspend): Make aio_suspend
6220         cancelable.  It's not correct to disable cancellation.  Instead of
6221         a cleanup handler.
6223         * sysdeps/unix/sysv/linux/sigtimedwait.c: If SIGCANCEL is defined
6224         and part of the incoming set, create a temporary set without this
6225         signal.
6226         * sysdeps/unix/sysv/linux/sigwait.c: Likewise.
6227         * sysdeps/unix/sysv/linux/sigwaitinfo.c: Likewise.
6229         * sysdeps/unix/sysv/linux/sleep.c: Use CANCELLATION_P if defined before
6230         returning because seconds==0.  Add __builtin_expect.
6232 2003-06-16  Ulrich Drepper  <drepper@redhat.com>
6234         * sysdeps/unix/sysv/linux/i386/socket.S: Add unwind information.
6236         * sysdeps/unix/sysv/linux/wait.c (__libc_wait): Fix type of result
6237         variable.
6239 2003-06-16  Thorsten Kukuk  <kukuk@suse.de>
6241         * include/libc-symbols.h: Add static_link_warning macro.
6242         * grp/initgroups.c: Print linker warning if this function
6243         is called in a static linked binary.
6244         * nss/getXXbyYY.c: Likewise.
6245         * nss/getXXbyYY_r.c: Likewise.
6246         * nss/getXXent.c: Likewise.
6247         * nss/getXXent_r.c: Likewise.
6248         * sysdeps/posix/getaddrinfo.c: Likewise.
6250 2003-06-16  Bruno Haible  <bruno@clisp.org>
6252         * iconvdata/gconv-modules (ISO-8859-15): Add aliases ISO_8859-15,
6253         LATIN-9.
6254         (ISO-8859-16): Add aliases ISO_8859-16:2001, ISO_8859-16.
6255         (IBM1047): Add alias IBM-1047.
6256         (GBK): Add aliases MS936, WINDOWS-936.
6258 2003-06-16  Jakub Jelinek  <jakub@redhat.com>
6260         * sysdeps/unix/sysv/linux/xstatconv.c (__xstat_conv): Define even if
6261         defined __ASSUME_STAT64_SYSCALL && defined XSTAT_IS_XSTAT64.
6262         (__xstat64_conv): Change xstat_conv to __xstat_conv.
6264 2003-06-16  Ulrich Drepper  <drepper@redhat.com>
6266         * locale/iso-639.def: Update from current official ISO 639.
6268         * math/tgmath.h (__TGMATH_UNARY_IMAG_ONLY): Removed.
6270 2003-06-15  Andreas Jaeger  <aj@suse.de>
6272         * sysdeps/i386/fpu/feenablxcpt.c (feenableexcept): Correct setting
6273         of MXCSR.
6274         * sysdeps/i386/fpu/fedisblxcpt.c (fedisableexcept): Likewise.
6275         * sysdeps/i386/fpu/feholdexcpt.c (feholdexcept): Likewise.
6276         Reported by Arnaud Desitter <arnaud.desitter@geography.oxford.ac.uk>.
6278         * math/tgmath.h (carg): Handle real arguments.
6279         (conj): Likewise.
6280         (cproj): Likewise.
6281         (cimag): Likewise.
6282         (creal): Likewise.
6284         * math/Makefile (CFLAGS-test-tgmath-ret.c): New.
6285         (tests): Add test-tgmath-ret.
6286         * math/test-tgmath-ret.c: New file.
6288         * math/tgmath.h (ilogb): Return always an int.
6290 2003-06-16  Ulrich Drepper  <drepper@redhat.com>
6292         * elf/rtld.c (dl_main): Use l_map_start not l_addr in Phdr
6293         computation so that prelinking works.
6295 2003-06-15  Ulrich Drepper  <drepper@redhat.com>
6297         * elf/dl-iteratephdr.c (__dl_iterate_phdr): Don't skip dynamic
6298         linker's map.
6299         * elf/rtld.c (dl_main): Initialize l_phdr and l_phnum of of the
6300         dynamic linker's map.
6302         Fix cancellation point handling wrt exception based cleanup.
6303         * io/Makefile: Compile fcntl.c, poll.c, and lockf.c with exceptions.
6304         * misc/Makefile: Compile pselect.c, readv.c, writev.c, and usleep.c
6305         with exceptions.
6306         * posix/Makefile: Compile pread.c, pread64.c, pwrite.c, pwrite64.c,
6307         sleep.c, wait.c, waitid.c, and waitpid.c with exceptions.
6308         * rt/Makefile: Compile aio_suspend.c and clock_nanosleep.c with
6309         exceptions.
6310         * signal/Makefile: Compile sigpause.c, sigsuspend.c, sigtimedwait.c,
6311         sigwait.c, and sigwaitinfo.c with exceptions.
6312         * stdlib/Makefile: Compile system.c with exceptions.
6313         * sysvipc/Makefile: Compile msgrcv.c and msgsnd.c with exceptions.
6314         * termios/Makefile: Compile tcdrain.c with exceptions.
6315         * sysdeps/generic/lockf.c: Add comment explaining the cancellation
6316         situation.
6317         * sysdeps/generic/pselect.c: Likewise.
6318         * sysdeps/posix/sigpause.c: Likewise.
6319         * sysdeps/posix/system.c: Likewise.
6320         * sysdeps/posix/waitid.c: Likewise.
6321         * sysdeps/unix/sysv/linux/sleep.c: Likewise.
6322         * sysdeps/unix/sysv/linux/usleep.c: Likewise.
6323         * sysdeps/unix/sysv/linux/i386/sysdep.h: Major rewrite of
6324         INTERNAL_SYSCALL to not use push inside asm statement so that
6325         unwind info is correct around the syscall.
6326         * sysdeps/unix/clock_nanosleep.c: Add cancellation support.
6327         * sysdeps/unix/sysv/linux/clock_nanosleep.c: Likewise.
6329 2003-06-15  Andreas Jaeger  <aj@suse.de>
6331         * sysdeps/x86_64/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
6332         Add CFI directives.
6334 2003-06-15  Guido Guenther  <agx@sigxcpu.org>
6336         * sysdeps/unix/sysv/linux/mips/Makefile: Add missing endif and
6337         create $(objpfx).
6339 2003-06-14  Ulrich Drepper  <drepper@redhat.com>
6341         * sysdeps/unix/sysv/linux/check_pf.c (__check_pf): Use __close,
6342         not close.
6344         * inet/inet6_option.c (inet6_option_alloc): Add libc_hidden_def.
6345         * include/netinet/in.h (inet6_option_alloc): Add libc_hidden_proto
6346         definition.
6348         * inet/netinet/ip6.h (IP6OPT_PAD1, IP6OPT_PADN): Define.
6349         * inet/netinet/in.h: Add prototypes for inet6_option_* functions.
6350         * inet/Makefile (routines): Add inet6_option.
6351         * inet/inet6_option.c: New file.
6352         * inet/Versions [GLIBC_2.3.3] (libc): Add inet6_option_space,
6353         inet6_option_init, inet6_option_append, inet6_option_alloc,
6354         inet6_option_next, and inet6_option_find.
6356 2003-06-13  Ulrich Drepper  <drepper@redhat.com>
6358         * inet/netinet/ip6.h (struct ip6_ext): Define.
6360         * sysdeps/unix/sysv/linux/sys/param.h (howmany): Optimize for gcc.
6362         Fixing gcc 3.3 warnings, part II.
6363         * argp/argp-help.c (hol_entry_long_iterate): Always inline.
6364         * elf/dl-load.c (cache_rpath): Don't inline.
6365         * iconvdata/cns11642l2.h: Always inline all functions.
6366         * iconvdata/iso-ir-165.h: Likewise.
6367         * locale/Makefile (aux): Add coll-lookup.
6368         * locale/coll-lookup.c: New file.
6369         * locale/coll-lookup.h (collidx_table_lookup): Do not define here.
6370         (collseq_table_lookup): Likewise.
6371         * locale/weightwc.h: Adjust collidx_table_lookup calls for name change.
6372         * posix/fnmatch_loop.c: Adjust collseq_table_lookup calls for name
6373         change.
6374         * posix/regcomp.c: Likewise.
6375         * posix/regexec.c: Likewise.
6376         * locale/programs/3level.h (*_get): Always inline.
6377         * locale/programs/locfile.h: Move definition of handle_copy to...
6378         * locale/programs/locfile.c: ...here.
6379         * locale/programs/ld-collate.c (obstack_int32_grow): Always inline.
6380         (obstack_int32_grow_fast): Likewise.
6381         (utf8_encode): Likewise.
6382         (find_element): Avoid aliasing problems.
6383         (insert_value): Likewise.
6384         (collate_read): Likewise.
6385         * nss/getent.c (print_hosts): Don't inline
6386         (print_networks): Likewise.
6387         (print_shadow): Likewise.
6388         (build_doc): Likewise.
6389         * nss/nss_files/files-parse.c [ENTDATA] (parser_stclass): Don't
6390         inline.
6391         * posix/regcomp.c (re_set_fastmap): Always inline.
6392         (seek_collating_symbol_entry): Likewise.
6393         (lookup_collation_sequence_value): Likewise.
6394         (build_range_exp): Likewise.
6395         (build_collating_symbol): Likewise.
6396         * posix/regexec.c (acquire_init_state_context): Don't inline.
6397         (clean_state_log_if_need): Likewise.
6398         * resolv/res_send.c (eConsIovec): Rewrite to not return struct and
6399         adjust all callers.
6400         (evConsTime): Likewise.
6401         (evAddTime): Likewise.
6402         (evSubTime): Likewise.
6403         (evNowTime): Likewise.
6404         (evTimeSpec): Removed.
6405         (__libc_res_nsend): Avoid aliasing problem.
6406         * sysdeps/unix/sysv/linux/ifreq.h: Move old_siocgifconf definition to..
6407         * sysdeps/unix/sysv/linux/ifreq.c: ...here.
6408         * sysdeps/unix/sysv/linux/i386/dl-procinfo.h (_dl_string_hwcap):
6409         Always inline.
6410         (_dl_string_platform): Likewise.
6411         * wctype/wchar-lookup.h (wctype_table_lookup): Always inline.
6412         (wcwidth_table_lookup): Likewise.
6413         (wctrans_table_lookup): Likewise.
6415         * sysdeps/unix/sysv/linux/sys/epoll.h: Include <stdint.h>.
6417 2003-06-12  Ulrich Drepper  <drepper@redhat.com>
6419         * wcsmbs/wchar.h: Define wint_t in std namespace, too [PR libc/5034].
6421 2003-05-29  Jim Meyering  <jim@meyering.net>
6423         * time/strftime.c (my_strftime) [!defined _NL_CURRENT
6424         && HAVE_STRFTIME]: Use underlying_strftime for %r.
6425         Suggested by Daniel Yacob <locales@geez.org>.
6427 2003-06-12  Steven Munroe  <sjmunroe@us.ibm.com>
6429         * sysdeps/powerpc/powerpc64/dl-machine.h (RTLD_START): Replace
6430         @got notation with @toc.
6431         * sysdeps/powerpc/powerpc64/sysdep.h (CALL_MCOUNT): Likewise.
6432         * sysdeps/unix/sysv/linux/powerpc/powerpc64/brk.S (__brk): Likewise.
6434 2003-06-12  Ulrich Drepper  <drepper@redhat.com>
6436         * sysdeps/posix/getaddrinfo.c (gaih_inet): Set no_inet6_date also
6437         if only PF_INET address is needed.
6439         * nss/getXXbyYY_r.c: Make sure we always return a nonzero value in
6440         case of an error.
6442         * scripts/config.guess: Update from upstream version.
6443         * scripts/config.sub: Likewise.
6445 2003-06-12  Jakub Jelinek  <jakub@redhat.com>
6447         * locale/programs/ld-time.c (time_output): Also copy the era format,
6448         not only the name.
6450 2003-06-12  H.J. Lu  <hongjiu.lu@intel.com>
6452         * posix/transbug.c (run_test): Return 1 for failure.
6453         (do_test): Compare only if run_test is successful.
6455 2003-06-12  Simon Josefsson  <jas@extundo.com>
6457         * argp/argp.h [!__THROW]: Define if undefined.
6459 2003-06-12  Ulrich Drepper  <drepper@redhat.com>
6461         * sysdeps/unix/sysv/linux/cris/sysdep.h: Fix handling of syscalls with
6462         more than four parameters.
6463         Patch by Uwe Reimann <libc-alpha@pulsar.homelinux.net>.
6465 2003-06-12  Jakub Jelinek  <jakub@redhat.com>
6467         * sysdeps/unix/sysv/linux/ia64/kernel_stat.h: New file.
6468         * sysdeps/unix/sysv/linux/s390/s390-64/kernel_stat.h: New file.
6469         * sysdeps/unix/sysv/linux/x86_64/kernel_stat.h: New file.
6471         * stdio-common/printf-parsemb.c: Include stdlib.h and sys/param.h.
6473 2003-06-12  Roland McGrath  <roland@redhat.com>
6475         * Makerules ($(objpfx)stubs): Rewrite sed magic.
6477 2003-02-28  Isamu Hasegawa  <isamu@yamato.ibm.com>
6479         * posix/regcomp.c (parse_expression): Deliver translation to
6480         build_word_op, and build_charclass.
6481         (build_charclass): Apply translation for character classes too.
6482         (build_word_op): Deliver translation to build_charclass.
6483         * posix/transbug.c: New file.
6484         * posix/Makefile (tests): Add transbug.
6486 2003-06-04  Paolo Bonzini  <bonzini@gnu.org>
6488         * posix/regexec.c (group_nodes_into_DFAstates): Check for
6489         NEXT_ENDBUF_CONSTRAINT.  Move check for constraints which do a
6490         'continue' before the others.
6492 2003-06-11  Ulrich Drepper  <drepper@redhat.com>
6494         * dirent/scandir.c (SCANDIR): Reset errno after calling selector
6495         function [PR libc/5045].
6497         * sysdeps/i386/bits/byteswap.h (__bswap_32): Use bswap instruction
6498         also for P4.
6500         * time/tzfile.c: Add a couple of __builtin_expect.
6502         Remove warnings gcc 3.3 shows.
6503         * argp/argp-help.c (hol_entry_short_iterate): Don't inline.
6504         * elf/dl-load.c (fillin_rpath): Likewise.
6505         (add_path): Likewise.
6506         * elf/dl-version.c (find_needed): Always inline.
6507         * elf/do-lookup.c (FCT): Don't inline.
6508         * iconv/Makefile: Extend vpath to intl subdir.
6509         (iconvconfig-modules): Add hash-string.
6510         * iconv/gconv_charset.h (strip): Don't inline.
6511         (upstr): Always inline.
6512         Move __gconv_compare_alias prototype to...
6513         * iconv/gconv_int.h: ...here.
6514         * iconv/gconv_db.c: Don't include gconv_charset.h.
6515         * iconv/gconv_conf.c (add_alias): Don't inline.
6516         (insert_module): Likewise.
6517         * iconv/gconv_simple.c (internal_ucs4_loop): Always inline.
6518         (internal_ucs4_loop_unaligned): Likewise.
6519         (internal_ucs4_loop_single): Likewise.
6520         (ucs4_internal_loop): Likewise.
6521         (ucs4_internal_loop_unaligned): Likewise.
6522         (ucs4_internal_loop_single): Likewise.
6523         (internal_ucs4le_loop): Always inline.
6524         (internal_ucs4le_loop_unaligned): Likewise.
6525         (internal_ucs4le_loop_single): Likewise.
6526         (ucs4le_internal_loop): Likewise.
6527         (ucs4le_internal_loop_unaligned): Likewise.
6528         (ucs4le_internal_loop_single): Likewise.
6529         * iconv/loop.c: Always inline the defined functions.
6530         * iconvdata/cns11642.h: Likewise.
6531         * iconvdata/cns11642l1.h: Likewise.
6532         * iconvdata/euc-kr.c: Likewise.
6533         * iconvdata/gb2312.h: Likewise.
6534         * iconvdata/jis0201.h: Likewise.
6535         * iconvdata/jis0208.h: Likewise.
6536         * iconvdata/jis0212.h: Likewise.
6537         * iconvdata/jisx0213.h: Likewise.
6538         * iconvdata/ksc5601.h: Likewise.
6539         * iconvdata/utf-7.c (base64): Don't inline.
6540         * include/libc-symbols.h (symbol_set_first_element): Add cast
6541         (symbol_set_end_p): Likewise.
6542         * include/set-hooks (RUN_HOOK): Likewise.
6543         * inet/Makefile (aux): Add ifreq.
6544         * intl/Makefile (aux): Add some entries from routines.  Add
6545         hash-string.
6546         * intl/hash-string.c: New file.
6547         * intl/hash-string.h: Remove hash_string definition.  Declare
6548         __hash_string.
6549         * iconv/gconv_cache.c (find_module_idx): Adjust hash_string caller.
6550         * iconv/iconvconfig.c (new_name): Likewise.
6551         * intl/dcigettext.c (_nl_find_msg): Likewise.
6552         * intl/loadmsgcat.c (_nl_load_domain): Likewise.
6553         * io/ftw.c (open_dir_stream): Always inline.
6554         (process_entry): Don't inline.
6555         * locale/findlocale.c: Include gconv_int.h.
6556         * locale/setlocale.c (new_composite_name): Don't inline.
6557         * locale/weight.h (findidx): Always inline.
6558         * locale/weightwc.h (findidx): Likewise.
6559         * locale/programs/linereader.c (lr_ignore_rest): Define here.
6560         * locale/programs/linereader.h (lr_ignore_rest): Don't define here,
6561         just declare it.
6562         (lr_getc): Always inline.
6563         (lr_ungetc): Likewise.
6564         * nss/nss_files/files-parse.c (parse_list): Likewise.
6565         * stdio-common/Makefile (aux): Add printf-parsemb and
6566         printf-parsewc.
6567         * stdio-common/_itoa.h (_itoa_word): Always inline.
6568         (_fitoa_word, _fitoa): Don't define here, only declare.
6569         * stdio-common/_itoa.c (_iftoa_word): Add here.
6570         (_fitoa): Likewise.
6571         * stdio-common/_itowa.h (_itowa_word): Always inline.
6572         * stdio-common/printf-parse.h (read_int): Don't inline.
6573         (find_spec): Don't define.
6574         Declare __find_specmb and __find_specwc.
6575         (parse_one_spec): Don't define.
6576         Declare __parse_one_specmb and __parse_one_specwc.
6577         * stdio-common/printf-parsemb.c: New file.
6578         * stdio-common/printf-parsewc.c: New file.
6579         * stdio-common/vfprintf.c: Update calls to find_spec and
6580         parse_one_spec for new names.
6581         * stdio-common/printf-prs.c: Likewise.  Define DONT_NEED_READ_INT.
6582         * stdlib/Makefile (aux): Add grouping and groupingwc.
6583         * stdlib/grouping.c: New file.
6584         * stdlib/groupingwc.c: New file.
6585         * stdlib/grouping.h (correctly_grouped_prefix): Don't define here.
6586         Just prototype.
6587         * stdlib/rpmatch.c (try): Don't inline.
6588         * stdlib/strtod.c (round_and_return): Don't line.
6589         (str_to_mpn): Likewise.
6590         (__mpn_lshift_1): Always inline.  Optimize only for constant count.
6591         Adjust for name change of correctly_grouped_prefix.
6592         * sysdeps/generic/strtol.c: Adjust for name change of
6593         correctly_grouped_prefix.
6594         * string/strxfrm.c (utf8_encode): Don't inline.
6595         * sysdeps/generic/dl-cache.c: Define _dl_cache_libcmp.
6596         * sysdeps/generic/dl-cache.h: Just declare _dl_cache_libcmp.
6597         * sysdeps/generic/ifreq.c: New file.
6598         * sysdeps/unix/sysv/linux/ifreq.c: New file.
6599         * sysdeps/generic/ifreq.h (__ifreq): Only declare here.
6600         * sysdeps/unix/sysv/linux/ifreq.h: Likewise.
6601         * sysdeps/generic/ldsodefs.h (_dl_name_match_p): Always inline.
6602         * sysdeps/generic/unwind-dw2-fde.c (start_fde_sort): Don't inline.
6603         (fde_split): Likewise.
6604         (fde_merge): Likewise.
6605         (end_fde_sort): Likewise.
6606         (init_object): Likewise.
6607         (binary_search_unencoded_fdes): Likewise.
6608         (binary_search_single_encoding_fdes): Likewise.
6609         (binary_search_mixed_encoding_fdes): Likewise.
6610         * sysdeps/generic/wordexp.c (w_addchar): Don't inline.
6611         * sysdeps/i386/dl-machine.c (elf_machine_runtime_setup): Always inline.
6612         * sysdeps/posix/sprofil.c (profil_count): Don't inline.
6613         * sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines):
6614         Add xstatconv.
6615         * sysdeps/unix/sysv/linux/xstatconv.h: New file.
6616         * sysdeps/unix/sysv/linux/xstatconv.c: Don't inline the function.
6617         Export them.  Prepend __ to name.
6618         * sysdeps/unix/sysv/linux/Dist: Add xstatconv.h.
6619         * sysdeps/unix/sysv/linux/fxstat.c: Adjust for name change of
6620         conversion functions.
6621         * sysdeps/unix/sysv/linux/fxstat64.c: Likewise.
6622         * sysdeps/unix/sysv/linux/lxstat.c: Likewise.
6623         * sysdeps/unix/sysv/linux/lxstat64.c: Likewise.
6624         * sysdeps/unix/sysv/linux/xstat.c: Likewise.
6625         * sysdeps/unix/sysv/linux/xstat64.c: Likewise.
6626         * sysdeps/unix/sysv/linux/i386/fxstat.c: Likewise.
6627         * sysdeps/unix/sysv/linux/i386/lxstat.c: Likewise.
6628         * sysdeps/unix/sysv/linux/i386/xstat.c: Likewise.
6629         * sysdeps/unix/sysv/linux/pathconf.c (__statfs_link_max,
6630         __statfs_filesize_max, __statfs_symlinks): Define here.  __ prepended
6631         to name.  Change callers.
6632         * sysdeps/unix/sysv/linux/pathconf.h (__statfs_link_max,
6633         __statfs_filesize_max, __statfs_symlinks): Don't define here, just
6634         declare.
6635         * sysdeps/unix/sysv/linux/fpathconf.c: Change all callers.
6636         * time/tzfile.c (decode): Always inline.
6637         * wcsmbs/wcsnrtombs.c: Change type of inbuf to unsigned char*.
6638         Remove cast in tomb function call.
6639         * wcsmbs/wcsrtombs.c Likewise.
6640         * wcsmbs/wcstob.c: Introduce new temp variable to take pointer in
6641         tomb function call.
6643 2003-06-10  Ulrich Drepper  <drepper@redhat.com>
6645         * po/zh_CN.po: Update from translation team.
6647 2003-06-10  Jakub Jelinek  <jakub@redhat.com>
6649         * sysdeps/unix/sysv/linux/bits/in.h (IPV6_V6ONLY, IPV6_JOIN_ANYCAST,
6650         IPV6_LEAVE_ANYCAST, IPV6_IPSEC_POLICY, IPV6_XFRM_POLICY): Define.
6652 2003-06-10  Ulrich Drepper  <drepper@redhat.com>
6654         * inet/Makefile (aux): Add check_pf.
6655         * include/ifaddrs.h: Add prototype for __check_pf.
6656         * sysdeps/generic/check_pf.c: New file.
6657         * sysdeps/unix/sysv/linux/check_pf.c: New file.
6658         * sysdeps/unix/sysv/linux/ifaddrs.h (__no_netlink_support): Renamed
6659         from no_netlink_support.  Export.
6660         * sysdeps/posix/getaddrinfo.c (getaddrinfo): Don't call getifaddrs,
6661         call __check_pf.
6663         * sysdeps/generic/ifaddrs.h: Add libc_hidden_def.
6665         * sysdeps/posix/getaddrinfo.c (getaddrinfo): Don't leak memory
6666         from getifaddr calls.
6668 2003-06-09  Jakub Jelinek  <jakub@redhat.com>
6670         * sysdeps/unix/sysv/linux/kernel-features.h
6671         (__ASSUME_SETRESGID_SYSCALL): Define.
6672         * sysdeps/unix/sysv/linux/setegid.c: Use __ASSUME_SETRESGID_SYSCALL
6673         instead of __ASSUME_SETRESUID_SYSCALL.
6674         (setegid): Only use setresgid32 inline syscall if __NR_setresgid32 is
6675         defined.
6676         * sysdeps/unix/sysv/linux/seteuid.c (seteuid): Only use setresgid32
6677         inline syscall if __NR_setresuid32 is defined.
6678         * sysdeps/unix/sysv/linux/i386/setegid.c (setegid): Use
6679         __ASSUME_SETRESGID_SYSCALL instead of __ASSUME_SETRESUID_SYSCALL.
6680         * sysdeps/unix/sysv/linux/i386/setregid.c: Backout last changes.
6681         * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise.
6682         * sysdeps/unix/sysv/linux/sparc/sparc32/setegid.c (setegid): Protect
6683         code handling non-existant setresgid32 syscall with
6684         #if __ASSUME_SETRESGID_SYSCALL == 0.
6686 2003-06-09  Andreas Schwab  <schwab@suse.de>
6688         * sunrpc/Makefile (generated): Remove rpc-proto.c, rpc-proto.d.
6689         ($(rpcsvc:%.x=$(objpfx)x%$o)): Don't depend on
6690         $(objpfx)rpc-proto.d.
6691         (rpcsvc-dt-files, rpcsvc-depfiles): Define.  Include
6692         $(rpcsvc-depfiles) instead of $(objpfx)rpc-proto.d.
6693         ($(objpfx)rpc-proto.d, $(objpfx)rpc-proto.c): Remove rules.
6695 2003-06-08  Ulrich Drepper  <drepper@redhat.com>
6697         * sysdeps/unix/sysv/linux/seteuid.c (seteuid): Use setresuid32
6698         syscall directly if possible.  If __ASSUME_SETRESUID_SYSCALL is
6699         defined drop compatibility code.
6700         * sysdeps/unix/sysv/linux/setegid.c (setegid): Use setresgid32
6701         syscall directly if possible.  If __ASSUME_SETRESUID_SYSCALL is
6702         defined drop compatibility code.
6703         * sysdeps/unix/sysv/linux/i386/seteuid.c (seteuid): Use
6704         setresuid32 syscall directly if possible.
6705         * sysdeps/unix/sysv/linux/i386/setegid.c (setegid): Use
6706         setresgid32 syscall directly if possible.
6707         * sysdeps/unix/sysv/linux/i386/setregid.c (__setregid): Make POSIX
6708         compliant.  Don't change sgid.
6709         * sysdeps/unix/sysv/linux/i386/setreuid.c (__setreuid): Make POSIX
6710         compliant.  Don't change suid.
6712         * config.h.in: Add have-forced-unwind.
6713         * configure.in: Add AC_SUBST(libc_cv_forced_unwind).
6715 2003-06-07  Ulrich Drepper  <drepper@redhat.com>
6717         * test-skeleton.c (main): If EXPECTED_STATUS is defined check that
6718         returned status from child matches.
6720         * Makeconfig (gnulib): Add -lgcc_eh once again.
6722 2003-06-06  Ulrich Drepper  <drepper@redhat.com>
6724         * test-skeleton.c (main): Use TEMP_FAILURE_RETRY with waitpid.
6726         * sysdeps/unix/sysv/linux/i386/sysdep.h (ASMFMT_2): Only allow
6727         %edx for first parameter.  This means no pushl and therefore the
6728         unwind info isn't screwed up.
6730 2003-06-04  Richard Henderson  <rth@redhat.com>
6732         * sysdeps/alpha/dl-machine.h (RTLD_START): Fix top-of-stack backtrace.
6733         * sysdeps/unix/sysv/linux/alpha/clone.S: Likewise.
6734         * sysdeps/alpha/elf/start.S: Likewise.  Remove pointless allocation.
6735         * sysdeps/unix/sysv/linux/alpha/rt_sigaction.S: Use standard ldgp
6736         entry sequence and explicit relocs.  Add unwind info for sigreturn
6737         and rt_sigreturn.
6738         * configure.in (libc_cv_asm_cfi_directives): Test .cfi_remember_state.
6740         * sysdeps/unix/sysv/linux/alpha/syscalls.list (semtimedop): New.
6741         Annotate some parameters.
6742         * sysdeps/unix/sysv/linux/alpha/sysdep.h (__NR_semtimedop): New.
6744         * sysdeps/unix/sysv/linux/alpha/gettimeofday.S: Fix typo in conversion.
6746         * include/libc-symbols.h (symbol_set_declare): Use arrays
6747         of unspecified size.
6749 2003-06-04  Jakub Jelinek  <jakub@redhat.com>
6751         * config.make.in (ASFLAGS-config): New.
6752         * Makeconfig (ASFLAGS): Append $(ASFLAGS-config).
6753         * configure.in (libc_cv_as_noexecstack): New check.
6754         (ASFLAGS_config): Substitute.
6756 2003-06-04  Jakub Jelinek  <jakub@redhat.com>
6758         * sysdeps/i386/fpu/bits/mathinline.h (log1p, asinh, acosh, atanh,
6759         hypot, logb): Protect with #ifdef __FAST_MATH__.
6761 2003-06-04  Thorsten Kukuk  <kukuk@suse.de>
6763         * sysdeps/i386/fpu/bits/mathinline.h (ldexpf, ldexpl): Protect with
6764         #ifdef __FAST_MATH__.
6766 2003-06-03  Ulrich Drepper  <drepper@redhat.com>
6768         * sysdeps/generic/glob.c [HAVE_D_TYPE] (glob_in_dir): Also allow
6769         DT_LNK entries if GLOB_ONLYDIR is set [PR libc/5043].
6770         * posix/globtest.sh: Adjust for this change.
6772         * sysdeps/unix/sysv/linux/ifaddrs.c (netlink_open): Call getsockname
6773         to get the actual PID value used in the records passed up.
6774         (getifaddrs): Don't initialize nh.pid here.
6776 2003-06-02  Ulrich Drepper  <drepper@redhat.com>
6778         * sysdeps/unix/sysv/linux/ifaddrs.c (netlink_receive): Minor
6779         optimization.
6781         * po/zh_CN.po: Update from translation team.
6783         * posix/getconf.c (main): Also recognize names without the
6784         _POSIX_ prefix.
6786         * elf/Makefile (CFLAGS-dl-lookup.c): Define.
6788 2003-06-02  Bernd Schmidt  <bernds@redhat.com>
6790         * sysdeps/i386/fpu/bits/mathinline.h (sqrt, __sqrtl, ldexp,
6791         ldexpf, ldexpl): Only define if __FAST_MATH__.
6793 2003-06-02  Richard C. Bilson  <rcbilson@plg.uwaterloo.ca>
6795         Replace hard-coded offsets into struct sigcontext with generated file.
6796         * sysdeps/unix/sysv/linux/ia64/sigcontext-offsets.sym: New file.
6797         * sysdeps/unix/sysv/linux/ia64/Makefile
6798         [$(subdir) = stdlib] (gen-as-const-headers): Add it.
6799         * sysdeps/unix/sysv/linux/ia64/ucontext_i.h: Include it instead of
6800         defining SC_* macros here.
6802 2003-06-02  Jakub Jelinek  <jakub@redhat.com>
6804         * sysdeps/unix/sysv/linux/bits/sched.h (CLONE_PID): Remove.
6806 2003-06-01  Jakub Jelinek  <jakub@redhat.com>
6808         * sysdeps/i386/dl-machine.h: Include <sysdep.h>.
6810 2003-06-01  Ulrich Drepper  <drepper@redhat.com>
6812         * test-skeleton.c (main): Request getopt to not reorder the
6813         command line.
6815         * elf/Makefile (CFLAGS-dl-runtime.c): Define.
6817         * wcsmbs/wcpncpy.c (__wcpncpy): Fix broken implementation to match
6818         stpncpy.
6820 2003-05-31  Ulrich Drepper  <drepper@redhat.com>
6822         * sysdeps/unix/sysv/linux/ia64/bits/sigaction.h (SA_NOCLDWAIT): Define.
6824 2003-05-31  Jakub Jelinek  <jakub@redhat.com>
6826         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_plt_conflict):
6827         New function.
6828         (elf_machine_rela) <case R_PPC64_JMP_SLOT>: Avoid
6829         RESOLVE_CONFLICT_FIND_MAP.  If RESOLVE_CONFLICT_FIND_MAP is defined,
6830         call elf_machine_plt_conflict instead of elf_machine_fixup_plt.
6832 2003-05-31  Ulrich Drepper  <drepper@redhat.com>
6834         * sysdeps/i386/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE): Add
6835         CFI directives.
6837         * csu/Makefile: Fix Makefile warnings regarding Scrt1.o.
6839         * libio/fileops.c (_IO_file_open): Don't mark as inline.
6841         * sysdeps/ia64/elf/initfini.c (gmon_initializer): Mark with
6842         attribute used.
6844 2003-05-30  Ulrich Drepper  <drepper@redhat.com>
6846         * scripts/config.guess: Update from master copy.
6847         * scripts/config.sub: Likewise.
6849 2003-05-30  Guido Guenther  <agx@sigxcpu.org>
6851         * sysdeps/mips/mips64/bsd-_setjmp.S: Include <sys/asm.h> for
6852         SETUP_GP64 and friends.
6853         * sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h: Fix register
6854         names in internal_syscall{6,7}.
6855         * sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h: Likewise.
6856         * sysdeps/unix/sysv/linux/mips/pread.c [_MIPS_SIM == _ABI64]: Fix
6857         number of syscall arguments.
6858         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
6859         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
6860         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
6862 2003-05-30  Andreas Jaeger  <aj@suse.de>
6864         * sysdeps/x86_64/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
6865         Add CFI directives.
6867         * sysdeps/unix/sysv/linux/x86_64/sigaction.c (RESTORE2): Add CFI
6868         directives.
6870         * sysdeps/generic/sysdep.h: Add CFI_* macros for C files.
6872         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
6873         Add CFI directives.
6875 2003-05-30  Jakub Jelinek  <jakub@redhat.com>
6877         * sysdeps/powerpc/powerpc32/elf/start.S: Make code compilable with
6878         SHARED.
6880 2003-05-11  Andreas Schwab  <schwab@suse.de>
6882         * Makerules: Always use -MP together with -MD.
6883         (sed-remove-dotot): Substitute $(..) also at start of line.
6884         ($(stdio_lim:h=st)): Use -MD instead of SUNPRO_DEPENDENCIES.
6885         Generated defines with a single compiler call.
6886         Use $(sed-remove-dotdot).
6887         * mach/Makefile ($(objpfx)mach-syscalls.mk): Use -MD instead
6888         of DEPENDENCIES_OUTPUT, and use $(sed-remove-objpfx).
6889         * sysdeps/unix/sysv/linux/Makefile ($(objpfx)syscall-%.h):
6890         Use -MD instead of SUNPRO_DEPENDENCIES, and use $(sed-remove-objpfx).
6891         * sysdeps/unix/sysv/linux/mips/Makefile
6892         ($(objpfx)syscall-%.h): Likewise.
6894 2003-05-28  Roland McGrath  <roland@redhat.com>
6896         * malloc/malloc.h [! __GNUC__] (__const): Define if undefined.
6898 2003-05-26  Aldy Hernandez  <aldyh@redhat.com>
6900         * soft-fp/soft-fp.h (FP_EX_UNDERFLOW): Define to 0.
6902 2003-05-28  Roland McGrath  <roland@redhat.com>
6904         * sysdeps/unix/sysv/linux/ia64/setcontext.S: Pass fourth argument to
6905         rt_sigprocmask system call.
6906         * sysdeps/unix/sysv/linux/ia64/ucontext_i.h (SC_MASK): Fix value.
6907         From Peter A. Buhr <pabuhr@plg2.math.uwaterloo.ca>.
6909 2003-05-28  Ulrich Drepper  <drepper@redhat.com>
6911         * include/libc-symbols.h: Define hidden attribute for real also if
6912         LIBC_NONSHARED is defined.  Patch by Jakub Jelinek.
6914         * csu/Makefile: Add rules to build Scrt1.o.
6915         * sysdeps/i386/elf/start.S: Make code compilable with SHARED.
6916         * sysdeps/x86_64/elf/start.S: Likewise.
6918 2003-05-27  Jakub Jelinek  <jakub@redhat.com>
6920         * stdio-common/vfprintf.c (process_arg, process_string_arg): Use
6921         pa_int/pa_u_int instead of pa_short_int, pa_u_short_int and pa_char.
6922         * stdio-common/printf-parse.h (union printf_arg): Remove pa_char,
6923         pa_short_int, pa_u_short_int and pa_float.
6925 2003-05-26  Jakub Jelinek  <jakub@redhat.com>
6927         * libio/strops.c (_IO_str_init_static): Change into a wrapper around
6928         _IO_str_init_static_internal.
6929         (_IO_str_init_static_internal): Moved from _IO_str_init_static,
6930         change size argument to _IO_size_t, don't limit sprintf to 64M.
6931         (_IO_str_init_readonly): Call _IO_str_init_static_internal.
6932         * libio/wstrops.c (_IO_wstr_init_static): Change size argument to
6933         _IO_size_t, don't limit swprintf to 256M.
6934         (_IO_wstr_init_readonly): Remove.
6935         * libio/libioP.h (_IO_str_init_static_internal, _IO_wstr_init_static):
6936         Adjust prototypes.
6937         (_IO_wstr_init_readonly): Remove prototype.
6938         * libio/iovsprintf.c (_IO_vsprintf): Use
6939         _IO_str_init_static_internal instead of INTUSE(_IO_str_init_static).
6940         * libio/iovsscanf.c (_IO_vsscanf): Likewise.
6941         * libio/memstream.c (open_memstream): Likewise.
6942         * libio/obprintf.c (_IO_obstack_vfprintf): Likewise.
6943         * libio/vasprintf.c (_IO_vasprintf): Likewise.
6944         * libio/vsnprintf.c (_IO_vsnprintf): Likewise.
6945         * stdio-common/tst-sprintf.c (main): Add new test.
6947 2003-05-26  Ulrich Drepper  <drepper@redhat.com>
6949         * stdio-common/vfprintf.c (vfprintf): Be bug-compatible with some
6950         other implementation in respect of multiple uses of parameter with
6951         different types.
6953 2003-05-25  Ulrich Drepper  <drepper@redhat.com>
6955         * sysdeps/unix/sysv/linux/kernel-features.h: Define
6956         __ASSUME_FUTEX_REQUEUE for >= 2.5.70.
6958 2003-05-22  Andreas Jaeger  <aj@suse.de>
6960         * sysdeps/unix/sysv/linux/x86_64/gettimeofday.S: Add CFI
6961         directives.
6962         * sysdeps/unix/sysv/linux/x86_64/time.S: Likewise.
6963         * sysdeps/x86_64/strtok.S: Likewise.
6965 2003-05-20  Guido Guenther  <agx@sigxcpu.org>
6967         * sysdeps/unix/sysv/linux/mips/bits/siginfo.h: Change SI_ASYNCNL
6968         to -60 and define SI_TKILL.
6970 2003-05-21  H.J. Lu  <hongjiu.lu@intel.com>
6972         * math/test-fenv.c (feexcp_nomask_test): Fix comment.
6973         (feexcp_mask_test): Likewise.
6975 2003-05-21  Ulrich Drepper  <drepper@redhat.com>
6977         * locale/programs/locale.c (main): Fix typo in last patch.
6979         * csu/elf-init.c: Mark __preinit_array_start, __preinit_array_end,
6980         __init_array_start, __init_array_end, __fini_array_start, and
6981         __fini_array_end as hidden.
6983 2003-05-21  Petter Reinholdtsen  <pere@hungry.com>
6985         * locale/programs/locale.c (main): Report an error if setlocale()
6986         fails [PR libc/2254].
6988 2003-05-21  Jakub Jelinek  <jakub@redhat.com>
6990         * sysdeps/unix/sysv/linux/s390/system.c: New file.
6992 2003-05-21  Jakub Jelinek  <jakub@redhat.com>
6994         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (LOADARGS_0,
6995         LOADARGS_1, LOADARGS_2, LOADARGS_3, LOADARGS_4, LOADARGS_5,
6996         LOADARGS_6): Don't error if syscall argument is a string literal.
6997         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h (LOADARGS_0,
6998         LOADARGS_1, LOADARGS_2, LOADARGS_3, LOADARGS_4, LOADARGS_5,
6999         LOADARGS_6): Likewise.
7001 2003-05-21  Andreas Jaeger  <aj@suse.de>
7003         * sysdeps/generic/sysdep.h (cfi_offset, cfi_startproc,
7004         cfi_endproc, cfi_def_cfa, cfi_def_ccfa_register,
7005         cfi_def_cfa_offset, cfi_adjust_cfa_offset, cfi_offset): Define.
7007         * sysdeps/x86_64/sysdep.h (CALL_MCOUNT): Add cfi directives.
7008         (ENTRY): Likewise.
7009         (END): Likewise.
7011         * configure.in: Test for asm cfi directives.
7013         * config.h.in: Add HAVE_ASM_CFI_DIRECTIVES.
7015 2003-05-17  Andreas Jaeger  <aj@suse.de>
7017         * sysdeps/unix/sysv/linux/x86_64/syscall.S: Revert last patch.
7019         * rt/tst-clock_nanosleep.c: Include <time.h> for clock_nanosleep.
7021 2003-05-16  Ulrich Drepper  <drepper@redhat.com>
7023         * rt/Makefile (tests): Add tst-clock_nanosleep.
7024         * rt/tst-clock_nanosleep.c: New file.
7025         * posix/Makefile (tests): Add tst-nanosleep.
7026         * posix/tst-nanosleep.c: New file.
7028         * sysdeps/unix/clock_nanosleep.c (CPUCLOCK_P): Fix definition.
7030         * include/features.h (__USE_XOPEN2K): Define also for
7031         _POSIX_C_SOURCE>=200112L.
7033         * sysdeps/unix/sysv/linux/sigwaitinfo.c (do_sigwaitinfo): Fold
7034         SI_TKILL code into SI_USER.
7035         * sysdeps/unix/sysv/linux/sigtimedwait.c (do_sigtimedwait): Likewise.
7037         * sysdeps/posix/sigpause.c (do_sigpause): Use sigdelset after all.
7039 2003-05-15  Jakub Jelinek  <jakub@redhat.com>
7041         * sysdeps/powerpc/powerpc32/dl-machine.c (_dl_reloc_overflow):
7042         Remove sym argument, always use refsym.
7043         (__process_machine_rela): Adjust callers.
7044         * sysdeps/powerpc/powerpc64/dl-machine.c (_dl_reloc_overflow):
7045         Likewise.
7046         * sysdeps/powerpc/powerpc32/dl-machine.h (_dl_reloc_overflow):
7047         Adjust prototype.
7048         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela): Likewise.
7050 2003-05-15  Ulrich Drepper  <drepper@redhat.com>
7052         * sysdeps/generic/dl-sysdep.c (_dl_show_auxv): Fix typo
7053         (DL_NEED_SYSINFO -> NEED_DL_SYSINFO).  If aux value is not known
7054         print numeric values.
7056 2003-05-12  Thorsten Kukuk  <kukuk@suse.de>
7058         * inet/netinet/igmp.h: Sync with Linux Kernel 2.5.69 and *BSD.
7060 2003-05-14  Andreas Schwab  <schwab@suse.de>
7062         * sysdeps/unix/sysv/linux/ia64/umount.c: New file.
7064 2003-05-14  Jakub Jelinek  <jakub@redhat.com>
7066         * elf/rtld.c (dl_main): For LD_TRACE_PRELINKING print search scope
7067         even if no DT_NEEDED is present.
7069 2003-05-13  David Mosberger  <davidm@hpl.hp.com>
7071         * sysdeps/unix/sysv/linux/ia64/setjmp.S: Fix the fix from
7072         2003-03-27: setjmp is NOT a leaf-routine (due to the call to
7073         __sigjmp_save) so we can't keep the saved unat value in a scratch
7074         register (r16).  Use loc2 instead.
7076 2003-05-13  Ulrich Drepper  <drepper@redhat.com>
7078         * csu/Makefile: Do compile elf-init with PIC flag since in dynamic
7079         binaries it has to be relocatable.
7081         * sysdeps/unix/sysv/linux/waitpid.c: Use waitpid syscall is available.
7083 2003-05-12  Steven Munroe  <sjmunroe@us.ibm.com>
7085         * sysdeps/powerpc/bits/atomic.h
7086         (__arch_compare_and_exchange_bool_8_rel): Define.
7087         (__arch_compare_and_exchange_bool_16_rel): Define.
7088         (__ARCH_REL_INSTR): Define if not already defined.
7089         (__arch_atomic_exchange_and_add_32): Add "memory" to clobber list.
7090         (__arch_atomic_decrement_if_positive_32):
7091         Add "memory" to clobber list.
7092         (__arch_compare_and_exchange_val_32_acq): Remove release sync.
7093         (__arch_compare_and_exchange_val_32_rel): Define.
7094         (__arch_atomic_exchange_32): Remove.
7095         (__arch_atomic_exchange_32_acq): Define.
7096         (__arch_atomic_exchange_32_rel): Define.
7097         (atomic_compare_and_exchange_val_rel): Define.
7098         (atomic_exchange_acq): Use __arch_atomic_exchange_*_acq forms.
7099         (atomic_exchange_rel): Define.
7100         * sysdeps/powerpc/powerpc32/bits/atomic.h
7101         (__arch_compare_and_exchange_bool_32_acq): Remove release sync.
7102         (__arch_compare_and_exchange_bool_32_rel): Define.
7103         (__arch_compare_and_exchange_bool_64_rel): Define.
7104         (__arch_compare_and_exchange_val_64_rel): Define.
7105         (__arch_atomic_exchange_64): Remove.
7106         (__arch_atomic_exchange_64_acq): Define.
7107         (__arch_atomic_exchange_64_rel): Define.
7108         * sysdeps/powerpc/powerpc64/bits/atomic.h
7109         (__arch_compare_and_exchange_bool_32_rel): Define.
7110         (__arch_compare_and_exchange_bool_64_acq): Remove release sync.
7111         (__arch_compare_and_exchange_bool_64_rel): Define.
7112         (__arch_compare_and_exchange_val_64_acq): Remove release sync.
7113         (__arch_compare_and_exchange_val_64_rel): Define.
7114         (__arch_atomic_exchange_64): Remove.
7115         (__arch_atomic_exchange_64_acq): Define.
7116         (__arch_atomic_exchange_64_rel): Define.
7117         (__arch_atomic_exchange_and_add_64): Add "memory" to clobber list.
7118         (__arch_atomic_decrement_if_positive_64):
7119         Add "memory" to clobber list.
7120         [!UP](__ARCH_REL_INSTR): Define as lwsync.
7122 2003-05-11  Andreas Schwab  <schwab@suse.de>
7124         * io/Makefile ($(objpfx)ftwtest.out): Use absolute file names.
7126 2003-05-11  Ulrich Drepper  <drepper@redhat.com>
7128         * time/tst-strftime.c (do_test): Add tests for - flag.
7130 2003-05-11  Jim Meyering  <jim@meyering.net>
7132         * time/strftime.c (my_strftime): Let the `-' (no-pad) flag affect
7133         the space-padded-by-default conversion specifiers, %e, %k, %l.
7135 2003-05-11  Andreas Schwab  <schwab@suse.de>
7137         * sysdeps/generic/sched_setaffinity.c: Fix parameter name.
7139 2003-05-10  Ulrich Drepper  <drepper@redhat.com>
7141         * sysdeps/generic/bits/sched.h: Define cpu_set_t only if not
7142         already defined and when really needed.
7143         * sysdeps/unix/sysv/linux/bits/sched.h: Likewise.
7145 2003-05-09  Thorsten Kukuk  <kukuk@suse.de>
7147         * sysdeps/unix/sysv/linux/netinet/igmp.h: Don't include kernel
7148         headers, add defines from kernel header, move it from here...
7149         * inet/netinet/igmp.h: ... to here.
7150         * inet/Makefile (headers): Add netinet/igmp.h.
7151         * sysdeps/unix/sysv/linux/Makefile: Remove netinet/igmp.h.
7152         * sysdeps/unix/sysv/linux/Dist: Remove netinet/igmp.h.
7154 2003-05-10  Ulrich Drepper  <drepper@redhat.com>
7156         * sysdeps/pthread/lio_listio64.c (lio_listio64): If SIG == NULL,
7157         use dummy sigevent structure with SIGEV_NONE [PR libc/5015].
7159 2003-05-09  Thorsten Kukuk <kukuk@suse.de>
7161         * libio/bits/stdio.h: Sync prototypes with libio/stdio.h
7162         (remove __THROW from possible cancellation points).
7164 2003-05-10  Ulrich Drepper  <drepper@redhat.com>
7166         * posix/sched.h (CPU_SETSIZE): Define.
7168 2003-05-09  Ulrich Drepper  <drepper@redhat.com>
7170         * Makeconfig (gnulib): Remove -lgcc_eh again.
7172         * posix/sched.h: Change prototypes of sched_getaffinity and
7173         sched_setaffinity.  Define CPU_SET, CPU_CLR, CPU_ISSET, and CPU_ZERO.
7174         * sysdeps/generic/sched_getaffinity.c: Adjust definition.
7175         * sysdeps/generic/sched_setaffinity.c: Likewise.
7176         * sysdeps/generic/bits/sched.h: Define __CPU_SETSIZE, __NCPUBITS,
7177         __CPUELT, __CPUMASK, cpu_set_t, __cpu_mask, __CPU_ZERO, __CPU_SET,
7178         __CPU_CLR, and __CPU_ISSET.
7179         * sysdeps/unix/sysv/linux/bits/sched.h: Likewise.
7180         * sysdeps/unix/sysv/linux/sched_getaffinity.c: New file.
7181         * sysdeps/unix/sysv/linux/sched_setaffinity.c: New file.
7183         * include/atomic.h (atomic_exchange_acq): Renamed from atomic_exchange.
7184         (atomic_exchange_rel): New #define.
7185         * sysdeps/ia64/bits/atomic.h: Likewise.
7186         * sysdeps/i386/i486/bits/atomic.h (atomic_exchange_acq): Renamed from
7187         atomic_exchange.
7188         * sysdeps/m68k/m68020/bits/atomic.h: Likewise.
7189         * sysdeps/powerpc/bits/atomic.h: Likewise.
7190         * sysdeps/sparc/sparc32/sparcv9/bits/atomic.h: Likewise.
7191         * sysdeps/sparc/sparc64/bits/atomic.h: Likewise.
7192         * sysdeps/x86_64/bits/atomic.h: Likewise.
7193         * csu/tst-atomic.c: Use atomic_exchange_acq instead of atomic_exchange.
7195         * sysdeps/unix/sysv/linux/x86_64/get_clockfreq.c: New file.
7197 2003-05-08  Ulrich Drepper  <drepper@redhat.com>
7199         * malloc/thread-m.h: Remove special handling of thread_atfork if
7200         HAVE_register_atfork_malloc is defined.
7202 2003-05-07  Andreas Jaeger  <aj@suse.de>
7204         * sysdeps/unix/sysv/linux/x86_64/syscall.S: Add DWARF2 unwind
7205         information.
7207 2003-05-06  Ulrich Drepper  <drepper@redhat.com>
7209         * libio/oldiofdopen.c (_IO_old_fdopen): Use _IO_old_init not _IO_init.
7210         * libio/oldiofopen.c (_IO_old_fopen): Likewise.
7211         * libio/libioP.h: Declare _IO_old_init.
7212         * libio/genops.c (_IO_no_init): Split in two.  New function
7213         _IO_old_init.
7215 2003-05-05  Ulrich Drepper  <drepper@redhat.com>
7217         * sysdeps/generic/enbl-secure.c (__libc_enable_secure_decided): New
7218         variable.
7219         (__libc_init_secure): Don't do anything if __libc_enable_secure_decided
7220         is nonzero.
7221         * include/unistd.h: Declare __libc_enable_secure_decided.
7222         * elf/dl-support.c (_dl_aux_init): Recognize AT_UID, AT_EUID, AT_GID,
7223         and AT_EGID.  If all found, set __libc_enable_secure and
7224         __libc_enable_secure_decided.
7226         * sysdeps/generic/libc-start.c [!SHARED]: Call
7227         __libc_check_standard_fds after __libc_init_first.
7229 2003-05-05  Roland McGrath  <roland@redhat.com>
7231         * Makerules (common-before-compile): New variable.
7232         ($(common-objpfx)%.make): Depend on that instead of $(before-compile).
7233         ($(common-objpfx)%.h $(common-objpfx)%.h.d): Likewise.  Move this rule
7234         to after all setting of before-compile.
7236 2003-05-05  Jakub Jelinek  <jakub@redhat.com>
7238         * sysdeps/ia64/bits/atomic.h (__arch_compare_and_exchange_val_8_acq,
7239         __arch_compare_and_exchange_val_16_acq): Cast 0 to mem's type.
7240         * sysdeps/powerpc/powerpc32/bits/atomic.h
7241         (__arch_compare_and_exchange_val_64_acq): Likewise.
7242         * sysdeps/sparc/sparc32/sparcv9/bits/atomic.h
7243         (__arch_compare_and_exchange_val_8_acq,
7244         __arch_compare_and_exchange_val_16_acq,
7245         __arch_compare_and_exchange_val_64_acq): Likewise.
7246         * sysdeps/sparc/sparc64/bits/atomic.h
7247         (__arch_compare_and_exchange_val_8_acq,
7248         __arch_compare_and_exchange_val_16_acq): Likewise.
7249         * sysdeps/s390/bits/atomic.h (__arch_compare_and_exchange_val_8_acq,
7250         __arch_compare_and_exchange_val_16_acq,
7251         __arch_compare_and_exchange_val_64_acq): Likewise.
7252         * sysdeps/unix/sysv/linux/sh/bits/atomic.h
7253         (__arch_compare_and_exchange_val_64_acq): Likewise.
7254         * sysdeps/s390/s390-64/backtrace.c (__backtrace): Add cast to shut
7255         up warning.
7256         * sysdeps/s390/fpu/fegetenv.c (fegetenv): Likewise.
7258         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h
7259         (INLINE_SYSCALL, INTERNAL_SYSCALL_DIRECT, INTERNAL_SYSCALL_SVC0):
7260         Return long instead of int.
7261         (INTERNAL_SYSCALL_ERROR_P): Cast val to unsigned long, replace
7262         0xfffff001u with -4095UL.
7264 2003-05-05  Andreas Jaeger  <aj@suse.de>
7266         * sysdeps/x86_64/fpu_control.h: New from i386.
7268         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (__NR_semtimedop):
7269         Define if not defined.
7271         * sunrpc/Makefile (generated-dirs): New variable.
7272         * resolv/Makefile (generated): New variable.
7274 2003-05-04  Roland McGrath  <roland@redhat.com>
7276         * csu/Makefile ($(csu-dummies) target rule): Don't use a temp C file.
7277         Depend on $(before-compile).
7279         * csu/Makefile ($(objpfx)crt%.o): Replace implicit rule with a static
7280         pattern rule.  The implicit rule could be ruled out when $(objpfx)
7281         didn't exist at the time of its consideration (ugh!).
7283         * Makerules (+make-deps): Fix target matching.
7284         Use $(sed-remove-dotdot).
7286 2003-05-03  Ulrich Drepper  <drepper@redhat.com>
7288         * nscd/nscd.c (main): Parse config file right after parsing
7289         parameters.  Then, if get_stats is true, call receive_print_stats.
7290         Drop parameter from nscd_init call.
7291         (get_stats): New variable.
7292         (parse_opt): Set get_stats, don't call receive_print_stats here.
7293         * nscd/nscd.h: Declare dbs, stat_user, and stat_uid.  Adjust nscd_init
7294         prototype.
7295         * nscd/connections.c (stat_user, stat_uid): New variables.
7296         (dbs): Make global.
7297         (nscd_init): Don't read configuration file here.  Drop parameter.
7298         (handle_request): Cleanup handling of non-database lookup requests.
7299         * nscd/nscd_conf.c (nscd_parse_file): Recognize stat-user entry.
7300         Get UID of the specified user.  Use xstrdup instead of strdup.
7301         * nscd/nscd_stat.c (receive_print_stats): Check UID.  If not zero,
7302         check stat_user.
7303         * nscd/Makefile (nscd-modules): Add xstrdup.
7304         * nscd/nscd.conf: Document stat-user entry.
7306 2003-05-03  H.J. Lu  <hongjiu.lu@intel.com>
7308         * sysdeps/unix/sysv/linux/ia64/sysdep.h (__NR_semtimedop): Define
7309         if not defined.
7311 2003-04-22  Roland McGrath  <roland@redhat.com>
7313         * elf/elf.h (AT_SYSINFO_EHDR): New macro, replaces AT_SYSINFO_EH_FRAME.
7314         * sysdeps/generic/ldsodefs.h (struct rtld_global): Remove
7315         dl_sysinfo_eh_frame member, add dl_sysinfo_dso member instead.
7316         * elf/dl-support.c: Update defn.
7317         * sysdeps/generic/libc-start.c: Don't call __register_frame_info_bases.
7318         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start) [NEED_DL_SYSINFO]:
7319         Set GL(dl_sysinfo_dso) from AT_SYSINFO_EHDR.
7320         (_dl_show_auxv): Grok AT_SYSINFO_EHDR, not AT_SYSINFO_EH_FRAME.
7321         * elf/rtld.c (dl_main) [NEED_DL_SYSINFO]: If GL(dl_sysinfo_dso) is
7322         set, set up a link_map for the preloaded, prelinked object.
7324 2003-05-03  Roland McGrath  <roland@redhat.com>
7326         * sysdeps/gnu/Makefile (generated): Append errlist-compat.c here, ...
7327         * stdio-common/Makefile: ... not here.
7329         * csu/Makefile ($(objpfx)initfini.s): Depend on $(before-compile).
7330         * sysdeps/gnu/Makefile ($(objpfx)errlist-compat.c): Likewise.
7332 2003-05-02  Ulrich Drepper  <drepper@redhat.com>
7334         * sysdeps/unix/sysv/linux/s390/semtimedop.c: New file.
7336         * sysdeps/unix/sysv/linux/alpha/ipc_priv.h (IPCOP_semtimedop): Define.
7338         * sysdeps/generic/dl-fptr.c (_dl_make_fptr): Use 0 not NULL for
7339         comparing ftab elements.
7340         (_dl_unmap): Fix typo in test.
7341         (_dl_make_fptr): Fix typos introduced in last change.
7343         * sysdeps/generic/dl-fptr.c: Put back one optimization from the
7344         original patch.  Use non-exported symbols.  Mark translatable
7345         strings.  Pretty printing.
7347 2003-05-02  Roland McGrath  <roland@redhat.com>
7349         * Makerules (do-stamp): Do $(make-target-directory).
7351 2003-04-07  H.J. Lu  <hjl@gnu.org>
7353         * sysdeps/generic/dl-fptr.c: Modify to remove the lock.
7355 2003-04-03  H.J. Lu  <hjl@gnu.org>
7357         * sysdeps/ia64/dl-fptr.c: Moved to ...
7358         * sysdeps/generic/dl-fptr.c: Here.
7360         * sysdeps/generic/dl-fptr.h: New.
7361         * sysdeps/ia64/dl-fptr.h: New.
7363         * sysdeps/ia64/dl-symaddr.c: Moved to ...
7364         * sysdeps/generic/dl-symaddr.c: here.
7366         * sysdeps/ia64/dl-machine.h: Include <dl-fptr.h>.
7367         (IA64_BOOT_FPTR_TABLE_LEN): Removed.
7368         (ia64_fdesc): Likewise.
7369         (ia64_fdesc_table): Likewise.
7370         (__ia64_make_fptr): Likewise.
7371         (__ia64_init_bootstrap_fdesc_table): Replace __ia64_boot_fptr_table
7372         with _dl_boot_fptr_table.
7373         (elf_machine_runtime_setup): Replace `struct ia64_fdesc' with
7374         `struct fdesc'.
7375         (elf_machine_rela): Replace __ia64_make_fptr with _dl_make_fptr.
7377 2003-05-01  Roland McGrath  <roland@redhat.com>
7379         * sysdeps/generic/bp-thunks.h: Protect includes with [!__ASSEMBLER__].
7380         * sysdeps/unix/sysv/linux/i386/bp-thunks.h: Likewise.
7382         * sysdeps/unix/sysv/linux/Makefile ($(objpfx)syscall-%.h):
7383         Use $(make-target-directory).
7384         * sysdeps/unix/Makefile ($(objpfx)stub-syscalls.c): Likewise.
7386         * Makerules (compile-mkdep-flags): New variable, pass -MD -MF $@.d.
7387         (compile-command.S): Don't use ifndef.  Append $(compile-mkdep-flags).
7388         (compile-command.s, compile-command.c): Likewise.
7389         ($(objpfx)%.d): All such pattern rules removed.
7390         ($(+sysdir_pfx)sysd-rules): Don't generate them.
7391         ($(common-objpfx)dummy.d): Target removed.
7392         (make-dummy-dep): Variable removed.
7393         (generate-md5): Likewise.
7394         (%.d: %.dt): New pattern rule.
7395         (+depfiles): Use $(wildcard) function to get just existing *.d files
7396         and .d files for existing *.dt files.
7397         (common-clean): Remove all *.d and *.dt files.
7398         (before-compile): Add $(objpfx). when it doesn't exist,
7399         regardless of $(no_deps).
7400         * elf/rtld-Rules ($(objpfx)rtld-%.d): All such pattern rules removed.
7401         (rtld-depfiles): Use .os.d instead of .d names.
7402         Include existing *.d files and .d files for existing *.dt files.
7404         * Makerules ($(common-objpfx)%.make): Protect with [! subdir].
7405         Use -MD, -MT and -MF flags instead of SUNPRO_DEPENDENCIES variable.
7407         * sysdeps/unix/Makefile ($(common-objpfx)s-%.d): Remove compat.h hack.
7408         Do s-*.d includes only if we have some syscall routines in this subdir.
7410         * include/libc-symbols.h (libc_freeres_ptr): Use %nobits instead of
7411         @nobits.  The former is accepted by gas on any ELF platform.
7413 2003-05-01  Ulrich Drepper  <drepper@redhat.com>
7415         * sysdeps/unix/sysv/linux/semtimedop.c: New file.
7417         * malloc/malloc.c (mSTATs): Call ptmalloc_init if necessary.
7419 2003-04-29  Andreas Schwab  <schwab@suse.de>
7421         * string/test-strcat.c (do_one_test): Fix attribute name.
7423 2003-04-30  Alexandre Oliva  <aoliva@redhat.com>
7425         * sysdeps/unix/sysv/linux/mips/sys/ucontext.h (ucontext): Make
7426         uc_flags long for all ABIs.
7428 2003-04-30  Andreas Jaeger  <aj@suse.de>
7430         * sysdeps/unix/sysv/linux/x86_64/sys/debugreg.h
7431         (DR_CONTROL_RESERVED): Use correct value for 64-bit.
7432         Reported by Andrew Derrick Balsa <andrebalsa@mailingaddress.org>.
7433         Add bi-arch support.
7435 2003-04-30  Ulrich Drepper  <drepper@redhat.com>
7437         * malloc/malloc.c (mEMALIGn): Define alias __memalign_internal.
7438         (__posix_memalign): Use __memalign_internal instead of memalign.
7440 2003-04-29  Roland McGrath  <roland@redhat.com>
7442         * configure.in: Search for AUTOCONF unconditionally.
7443         Just don't complain about missing it under --without-cvs.
7445         * include/libc-symbols.h (__symbol_set_attribute): New macro,
7446         give hidden for [SHARED] and weak for [! SHARED].
7447         (symbol_set_declare): Use that.  Never need weak_extern these days.
7448         * Makerules ($(common-objpfx)shlib.lds): Go back to using PROVIDE.
7449         Depend on $(..)Makerules.
7451 2003-04-29  Ulrich Drepper  <drepper@redhat.com>
7453         * sysdeps/unix/sysv/linux/ifaddrs.c (getifaddrs): Use __ protected
7454         variants of socket, bind, recvmsg, and sendto.
7456         * sysdeps/i386/fpu/ftestexcept.c: Also check SSE status word.
7458         * include/signal.h: Use libc_hidden_proto for sigaddset and sigdelset.
7459         * signal/sigaddset.c: Add libc_hidden_def.
7460         * signal/sigdelset.c: Likewise.
7462 2003-04-29  Jakub Jelinek  <jakub@redhat.com>
7464         * sysdeps/i386/i486/string-inlines.c (__memcpy_g, __strchr_g): Move
7465         to the end of the file.
7467         * configure.in: Change __oline__ to $LINENO.
7468         (HAVE_BUILTIN_REDIRECTION): New check.
7469         * config.h.in (HAVE_BUILTIN_REDIRECTION): Add.
7470         * include/libc-symbols.h (libc_hidden_builtin_proto,
7471         libc_hidden_builtin_def, libc_hidden_builtin_weak,
7472         libc_hidden_builtin_ver): Define.
7473         * include/string.h (memchr, memcpy, memmove, memset, strcat, strchr,
7474         strcmp, strcpy, strcspn, strlen, strncmp, strncpy, strpbrk, strrchr,
7475         strspn, strstr): Add libc_hidden_builtin_proto.
7476         * intl/plural.y: Include string.h.
7477         * sysdeps/alpha/alphaev6/memchr.S (memchr): Add
7478         libc_hidden_builtin_def.
7479         * sysdeps/alpha/alphaev6/memcpy.S (memcpy): Likewise.
7480         * sysdeps/alpha/alphaev6/memset.S (memset): Likewise.
7481         * sysdeps/alpha/alphaev67/strcat.S (strcat): Likewise.
7482         * sysdeps/alpha/alphaev67/strchr.S (strchr): Likewise.
7483         * sysdeps/alpha/alphaev67/strlen.S (strlen): Likewise.
7484         * sysdeps/alpha/alphaev67/strrchr.S (strrchr): Likewise.
7485         * sysdeps/alpha/memchr.S (memchr): Likewise.
7486         * sysdeps/alpha/memset.S (memset): Likewise.
7487         * sysdeps/alpha/strcat.S (strcat): Likewise.
7488         * sysdeps/alpha/strchr.S (strchr): Likewise.
7489         * sysdeps/alpha/strcmp.S (strcmp): Likewise.
7490         * sysdeps/alpha/strcpy.S (strcpy): Likewise.
7491         * sysdeps/alpha/strlen.S (strlen): Likewise.
7492         * sysdeps/alpha/strncmp.S (strncmp): Likewise.
7493         * sysdeps/alpha/strncpy.S (strncpy): Likewise.
7494         * sysdeps/alpha/strrchr.S (strrchr): Likewise.
7495         * sysdeps/arm/memset.S (memset): Likewise.
7496         * sysdeps/arm/strlen.S (strlen): Likewise.
7497         * sysdeps/generic/memchr.c (memchr): Likewise.
7498         * sysdeps/generic/memcpy.c (memcpy): Likewise.
7499         * sysdeps/generic/memmove.c (memmove): Likewise.
7500         * sysdeps/generic/memset.c (memset): Likewise.
7501         * sysdeps/generic/strcat.c (strcat): Likewise.
7502         * sysdeps/generic/strchr.c (strchr): Likewise.
7503         * sysdeps/generic/strcmp.c (strcmp): Likewise.
7504         * sysdeps/generic/strcpy.c (strcpy): Likewise.
7505         * sysdeps/generic/strcspn.c (strcspn): Likewise.
7506         * sysdeps/generic/strlen.c (strlen): Likewise.
7507         * sysdeps/generic/strncmp.c (strncmp): Likewise.
7508         * sysdeps/generic/strncpy.c (strncpy): Likewise.
7509         * sysdeps/generic/strpbrk.c (strpbrk): Likewise.
7510         * sysdeps/generic/strrchr.c (strrchr): Likewise.
7511         * sysdeps/generic/strspn.c (strspn): Likewise.
7512         * sysdeps/generic/strstr.c (strstr): Likewise.
7513         * sysdeps/i386/i486/strcat.S (strcat): Likewise.
7514         * sysdeps/i386/i486/strlen.S (strlen): Likewise.
7515         * sysdeps/i386/i586/memcpy.S (memcpy): Likewise.
7516         * sysdeps/i386/i586/memset.S (memset): Likewise.
7517         * sysdeps/i386/i586/strchr.S (strchr): Likewise.
7518         * sysdeps/i386/i586/strcpy.S (strcpy): Likewise.
7519         * sysdeps/i386/i586/strlen.S (strlen): Likewise.
7520         * sysdeps/i386/i686/memcpy.S (memcpy): Likewise.
7521         * sysdeps/i386/i686/memmove.S (memmove): Likewise.
7522         * sysdeps/i386/i686/memset.S (memset): Likewise.
7523         * sysdeps/i386/i686/strcmp.S (strcmp): Likewise.
7524         * sysdeps/i386/memchr.S (memchr): Likewise.
7525         * sysdeps/i386/memset.c (memset): Likewise.
7526         * sysdeps/i386/strchr.S (strchr): Likewise.
7527         * sysdeps/i386/strcspn.S (strcspn): Likewise.
7528         * sysdeps/i386/strlen.c (strlen): Likewise.
7529         * sysdeps/i386/strpbrk.S (strpbrk): Likewise.
7530         * sysdeps/i386/strrchr.S (strrchr): Likewise.
7531         * sysdeps/i386/strspn.S (strspn): Likewise.
7532         * sysdeps/ia64/memchr.S (memchr): Likewise.
7533         * sysdeps/ia64/memcpy.S (memcpy): Likewise.
7534         * sysdeps/ia64/memmove.S (memmove): Likewise.
7535         * sysdeps/ia64/memset.S (memset): Likewise.
7536         * sysdeps/ia64/strcat.S (strcat): Likewise.
7537         * sysdeps/ia64/strchr.S (strchr): Likewise.
7538         * sysdeps/ia64/strcmp.S (strcmp): Likewise.
7539         * sysdeps/ia64/strcpy.S (strcpy): Likewise.
7540         * sysdeps/ia64/strlen.S (strlen): Likewise.
7541         * sysdeps/ia64/strncmp.S (strncmp): Likewise.
7542         * sysdeps/ia64/strncpy.S (strncpy): Likewise.
7543         * sysdeps/m68k/memchr.S (memchr): Likewise.
7544         * sysdeps/m68k/strchr.S (strchr): Likewise.
7545         * sysdeps/mips/mips64/memcpy.S (memcpy): Likewise.
7546         * sysdeps/mips/mips64/memset.S (memset): Likewise.
7547         * sysdeps/mips/memcpy.S (memcpy): Likewise.
7548         * sysdeps/mips/memset.S (memset): Likewise.
7549         * sysdeps/powerpc/powerpc32/memset.S (memset): Likewise.
7550         * sysdeps/powerpc/powerpc32/strchr.S (strchr): Likewise.
7551         * sysdeps/powerpc/powerpc32/strcmp.S (strcmp): Likewise.
7552         * sysdeps/powerpc/powerpc32/strcpy.S (strcpy): Likewise.
7553         * sysdeps/powerpc/powerpc32/strlen.S (strlen): Likewise.
7554         * sysdeps/powerpc/powerpc64/memcpy.S (memcpy): Likewise.
7555         * sysdeps/powerpc/powerpc64/memset.S (memset): Likewise.
7556         * sysdeps/powerpc/powerpc64/strchr.S (strchr): Likewise.
7557         * sysdeps/powerpc/powerpc64/strcmp.S (strcmp): Likewise.
7558         * sysdeps/powerpc/powerpc64/strcpy.S (strcpy): Likewise.
7559         * sysdeps/powerpc/powerpc64/strlen.S (strlen): Likewise.
7560         * sysdeps/powerpc/strcat.c (strcat): Likewise.
7561         * sysdeps/sparc/sparc32/memchr.S (memchr): Likewise.
7562         * sysdeps/sparc/sparc32/memcpy.S (memcpy): Likewise.
7563         * sysdeps/sparc/sparc32/memset.S (memset): Likewise.
7564         * sysdeps/sparc/sparc32/strcat.S (strcat): Likewise.
7565         * sysdeps/sparc/sparc32/strchr.S (strchr, strrchr): Likewise.
7566         * sysdeps/sparc/sparc32/strcmp.S (strcmp): Likewise.
7567         * sysdeps/sparc/sparc32/strcpy.S (strcpy): Likewise.
7568         * sysdeps/sparc/sparc32/strlen.S (strlen): Likewise.
7569         * sysdeps/sparc/sparc64/sparcv9b/memcpy.S (memcpy, memmove): Likewise.
7570         * sysdeps/sparc/sparc64/memchr.S (memchr): Likewise.
7571         * sysdeps/sparc/sparc64/memcpy.S (memcpy, memmove): Likewise.
7572         * sysdeps/sparc/sparc64/memset.S (memset): Likewise.
7573         * sysdeps/sparc/sparc64/strcat.S (strcat): Likewise.
7574         * sysdeps/sparc/sparc64/strchr.S (strchr, strrchr): Likewise.
7575         * sysdeps/sparc/sparc64/strcmp.S (strcmp): Likewise.
7576         * sysdeps/sparc/sparc64/strcpy.S (strcpy): Likewise.
7577         * sysdeps/sparc/sparc64/strcspn.S (strcspn): Likewise.
7578         * sysdeps/sparc/sparc64/strlen.S (strlen): Likewise.
7579         * sysdeps/sparc/sparc64/strncmp.S (strncmp): Likewise.
7580         * sysdeps/sparc/sparc64/strncpy.S (strncpy): Likewise.
7581         * sysdeps/sparc/sparc64/strpbrk.S (strpbrk): Likewise.
7582         * sysdeps/sparc/sparc64/strspn.S (strspn): Likewise.
7583         * sysdeps/sh/memcpy.S (memcpy): Likewise.
7584         * sysdeps/sh/memset.S (memset): Likewise.
7585         * sysdeps/sh/strlen.S (strlen): Likewise.
7586         * sysdeps/s390/s390-32/memchr.S (memchr): Likewise.
7587         * sysdeps/s390/s390-32/memcpy.S (memcpy): Likewise.
7588         * sysdeps/s390/s390-32/memset.S (memset): Likewise.
7589         * sysdeps/s390/s390-32/strcmp.S (strcmp): Likewise.
7590         * sysdeps/s390/s390-32/strcpy.S (strcpy): Likewise.
7591         * sysdeps/s390/s390-32/strncpy.S (strncpy): Likewise.
7592         * sysdeps/s390/s390-64/memchr.S (memchr): Likewise.
7593         * sysdeps/s390/s390-64/memcpy.S (memcpy): Likewise.
7594         * sysdeps/s390/s390-64/memset.S (memset): Likewise.
7595         * sysdeps/s390/s390-64/strcmp.S (strcmp): Likewise.
7596         * sysdeps/s390/s390-64/strcpy.S (strcpy): Likewise.
7597         * sysdeps/s390/s390-64/strncpy.S (strncpy): Likewise.
7598         * sysdeps/x86_64/memcpy.S (memcpy): Likewise.
7599         * sysdeps/x86_64/memset.S (memset): Likewise.
7600         * sysdeps/x86_64/strcat.S (strcat): Likewise.
7601         * sysdeps/x86_64/strchr.S (strchr): Likewise.
7602         * sysdeps/x86_64/strcmp.S (strcmp): Likewise.
7603         * sysdeps/x86_64/strcpy.S (strcpy): Likewise.
7604         * sysdeps/x86_64/strcspn.S (strcspn): Likewise.
7605         * sysdeps/x86_64/strlen.S (strlen): Likewise.
7606         * sysdeps/x86_64/strspn.S (strspn): Likewise.
7607         * string/string-inlines.c: Move...
7608         * sysdeps/generic/string-inlines.c: ...here.
7609         (__memcpy_g, __strchr_g): Remove.
7610         (__NO_INLINE__): Define before including <string.h>,
7611         undefine after.  Include bits/string.h and bits/string2.h.
7612         * sysdeps/i386/i486/string-inlines.c: New file.
7613         * sysdeps/i386/string-inlines.c: New file.
7614         * sysdeps/i386/i486/Versions: Remove.
7615         All GLIBC_2.1.1 symbols moved...
7616         * sysdeps/i386/Versions (libc): ...here.
7618 2003-04-29  Ulrich Drepper  <drepper@redhat.com>
7620         * sysdeps/i386/fpu/Makefile: New file.
7621         * sysdeps/i386/fpu/fedisblxcpt.c: Also set SSE control word.
7622         * sysdeps/i386/fpu/feenablxcpt.c: Likewise.
7623         * sysdeps/i386/fpu/feholdexcpt.c: Likewise.
7624         * sysdeps/i386/fpu/fesetround.c: Also set SSE rounding mode
7625         [PR libc/4987].
7627 2003-04-28  Ulrich Drepper  <drepper@redhat.com>
7629         * nscd/nscd_getgr_r.c: Compact code a bit.  Add some __builtin_expect.
7630         * nscd/nscd_getpw_r.c: Likewise.
7631         * nscd/nscd_gethst_r.c: Likewise.
7633 2003-04-27  Ulrich Drepper  <drepper@redhat.com>
7635         * nscd/pwdcache.c: Initialize .version element in result.
7636         * nscd/grpcache.c: Likewise.
7637         * nscd/pwdcache.c: Likewise.
7639 2003-04-27  Andreas Schwab  <schwab@suse.de>
7641         * Makeconfig ($(common-objpfx)sysd-sorted): Fix for running in
7642         subdirectory.
7644 2003-04-27  Andreas Schwab  <schwab@suse.de>
7646         * sysdeps/unix/sysv/linux/m68k/semtimedop.S: New file.
7648 2003-04-27  Ulrich Drepper  <drepper@redhat.com>
7650         * nscd/connections.c (client_queued): New variable.
7651         (nscd_run): Revamp the loop.  Don't call poll except for cleanup
7652         threads.  Keep track of the number of delays caused because of busy
7653         worker threads.
7654         * nscd/nscd.h: Declare client_queued.
7655         * nscd/nscd_stat.c: Transmit and print client_queued information.
7657         * locale/programs/locale.c (show_info): Use '\177' instead of CHAR_MAX.
7659         * Makerules ($(common-objpfx)shlib.lds): Don't use PROVIDE to
7660         define __start_libc_freeres_ptrs and __stop___libc_freeres_ptrs.
7662 2003-04-26  Ulrich Drepper  <drepper@redhat.com>
7664         * elf/dl-close.c [USE_TLS && TLS_TCB_AT_TP] (_dl_close): Reimplement
7665         tracking of freed memory in static TLS block.
7666         * elf/Makefile: Add rules to build and run tst-tls13.
7667         * elf/tst-tls13.c: New file.
7668         * elf/tst-tlsmod13.c: New file.
7669         * elf/tst-tlsmod13a.c: New file.
7671         * elf/tst-tls8.c: Adjust types of variables to avoid warnings.
7673         * elf/dl-reloc.c: Pretty printing.
7675 2003-04-26  Roland McGrath  <roland@redhat.com>
7677         * Makerules ($(common-objpfx)shlib.lds): New target.
7678         (common-generated): Add it.
7679         (build-shlib, build-module): Use that instead of generating every time.
7680         ($(common-objpfx)libc.so): Depend on it.
7681         (lib%.so rule): Likewise.
7682         (build-module-helper-objlist): Remove %.lds.
7683         (LDSEDCMD-c.so): Variable removed.
7684         * iconvdata/extra-module.mk ($(objpfx)$(mod).so):
7685         Depend on $(common-objpfx)shlib.lds.
7686         * dlfcn/Makefile ($(test-modules)): Likewise.
7688 2003-04-26  Roland McGrath  <roland@frob.com>
7690         * sysdeps/mach/hurd/tmpfile.c: Remove USE_IN_LIBIO conditionals.
7692 2003-04-26  Andreas Schwab  <schwab@suse.de>
7694         * elf/dl-close.c (remove_slotinfo): Fix missing parens.
7696 2003-04-25  Ulrich Drepper  <drepper@redhat.com>
7698         * nscd/cache.c (cache_search): Keep track of how many chain links
7699         we searched and update table statistics.
7700         (cache_add): Keep track of how many values are in the table.
7701         (prune_cache): Likewise.  Keep track of locking success.
7702         Print messages about removed entries in separate pass.
7703         * nscd/connections.c (handle_request): Don't print debug message here.
7704         The caller will do it.  Keep track of locking success.
7705         (nscd_run): Print debug message.  Also print PID of the client process.
7706         * nscd/nscd.c (start_time): New variable.
7707         (main): Remember start time.
7708         * nscd/nscd.h: Declare start_time.
7709         (struct database): Add more members for new statistics.
7710         * nscd/nscd_stat.c: Add support for sending, receiving, and printing
7711         of new statistics.
7713         * sysdeps/posix/getaddrinfo.c: Include <stdbool.h>.
7715 2003-04-22  Jakub Jelinek  <jakub@redhat.com>
7717         * include/link.h (NO_TLS_OFFSET): Define to 0 if not defined.
7718         * elf/dl-close.c (_dl_close): Use NO_TLS_OFFSET.
7719         * elf/dl-object.c (_dl_new_object): Initialize l_tls_offset to
7720         NO_TLS_OFFSET.
7721         * elf/rtld.c (_dl_start_final, _dl_start): Likewise.
7722         * elf/dl-reloc.c (CHECK_STATIC_TLS): Use NO_TLS_OFFSET.
7723         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Likewise.
7724         * sysdeps/powerpc/dl-tls.h (TLS_TPREL_VALUE): Don't subtract
7725         TLS_TCB_SIZE.
7727 2003-04-24  Ulrich Drepper  <drepper@redhat.com>
7729         * nss/getent.c: Implement alternative host database lookup via
7730         getaddrinfo.
7732         * include/ifaddrs.h: New file.
7733         * include/netdb.h: Move definitions of AI_V4MAPPED, AI_ALL, and
7734         AI_ADDRCONFIG...
7735         * resolv/netdb.h: ...here.
7736         * sysdeps/gnu/ifaddrs.c. Use libc_hidden_def where appropriate.
7737         * sysdeps/unix/sysv/linux/ifaddrs.c: Likewise.
7738         * sysdeps/posix/getaddrinfo.c: Implement AI_V4MAPPED, AI_ALL, and
7739         AI_ADDRCONFIG.
7741 2003-04-24  Roland McGrath  <roland@redhat.com>
7743         * elf/dl-reloc.c (_dl_allocate_static_tls): Add internal_function.
7745 2003-04-24  Jakub Jelinek  <jakub@redhat.com>
7747         * elf/dl-reloc.c (allocate_static_tls): Rename to...
7748         (_dl_allocate_static_tls): ... this function.  No longer static.
7749         (CHECK_STATIC_TLS): Adjust.
7750         * sysdeps/generic/ldsodefs.h (_dl_allocate_static_tls): New prototype.
7751         * sysdeps/powerpc/powerpc32/dl-machine.h (__process_machine_rela):
7752         Add SYM_MAP argument.
7753         (elf_machine_rela): Adjust caller.  Declare SYM_MAP unconditionally.
7754         Check if SYM_MAP != NULL for R_PPC_DTPREL32.  Only handle 32-bit
7755         TLS relocs here.  #ifdef out relocs which never appear in
7756         .gnu.conflict section from dl-conflict.c processing.
7757         * sysdeps/powerpc/powerpc32/dl-machine.c (__process_machine_rela):
7758         Add SYM_MAP argument.  Handle 16-bit TLS relocs here.
7760         * sysdeps/s390/s390-32/dl-machine.h (elf_machine_rela): #ifdef
7761         out relocs which never appear in .gnu.conflict section from
7762         dl-conflict.c processing.
7763         * sysdeps/s390/s390-64/dl-machine.h (elf_machine_rela): Likewise.
7764         * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Likewise.
7765         * sysdeps/i386/dl-machine.h (elf_machine_rela): Likewise.
7766         Use r_type in RESOLVE macro.
7768 2003-04-23  Ulrich Drepper  <drepper@redhat.com>
7770         * nis/ypclnt.c (__yp_bind): Expect YPDB parameter to always be !=
7771         NULL.  Remove code made redundant by this assumption.
7772         (__yp_unbind): Add call to free.  Adjust all callers.
7774         * nis/ypclnt.c (yp_all): Free the dom_binding object after
7775         unbinding it.
7777         * grp/initgroups.c (getgrouplist): Don't copy too much into the
7778         user buffer if more groups are found than fit into it.
7780         * nis/nss_nis/nis-initgroups.c (_nss_nis_initgroups_dyn): Use
7781         extend_alloca.
7783 2003-04-23  Jakub Jelinek  <jakub@redhat.com>
7785         * sysdeps/posix/getaddrinfo.c (gaih_inet): Check for rc == ERANGE,
7786         not rc == errno.  Use extend_alloca.
7788         * elf/tst-tls12.c (main): Fix declaration.
7789         * elf/tst-tls10.c (dummy): Make hidden instead of static.
7790         * elf/tst-tlsmod7.c (dummy): Likewise.
7791         * elf/tst-tlsmod8.c (dummy): Likewise.
7792         * elf/tst-tlsmod9.c (dummy): Likewise.
7794 2003-04-22  Roland McGrath  <roland@redhat.com>
7796         * sysdeps/unix/sysv/linux/not-cancel.h: Put parens around macro args.
7797         (open_not_cancel): Make last argument non-optional.
7798         * sysdeps/generic/check_fds.c (check_one_fd): Update caller.
7799         * sysdeps/unix/sysv/linux/gethostid.c (gethostid): Likewise.
7800         * iconv/gconv_cache.c (__gconv_load_cache): Likewise.
7802         * include/tls.h: Protect against multiple inclusion.
7804 2003-04-22  Ulrich Drepper  <drepper@redhat.com>
7806         * nscd/nscd-client.h: Add declaration for __nscd_open_socket.
7807         * nscd/nscd_gethst_r.c (__nscd_open_socket): Renamed from
7808         open_socket.  Not static anymore.
7809         (nscd_gethst_r): Use __nscd_open_socket.
7810         * nscd/nscd_getgr_r.c (open_socket): Removed.
7811         (nscd_getgr_r): Use __nscd_open_socket.
7812         * nscd/nscd_getpw_r.c (open_socket): Removed.
7813         (nscd_getpw_r): Use __nscd_open_socket.
7815         * nscd/nscd.c (main): Change type of fdn to long int and use strtol.
7816         * nscd/connections.c (handle_request): Add cast to avoid warning.
7818 2003-04-21  Ulrich Drepper  <drepper@redhat.com>
7820         * signal/sigfillset.c: Moved to...
7821         * sysdeps/generic/sigfillset.c: ...here.  If SIGCANCEL is defined
7822         do not set the corresponding bit.
7824         * sysdeps/unix/sysv/linux/sigprocmask.c: Prevent changing mask for
7825         SIGCANCEL.
7826         * sysdeps/unix/sysv/linux/alpha/bits/siginfo.h: Define SI_TKILL.
7827         * sysdeps/unix/sysv/linux/bits/siginfo.h: Define SI_TKILL.
7828         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Define SI_TKILL.
7829         * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Define SI_TKILL.
7830         * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Define SI_TKILL.
7832 2003-04-20  Ulrich Drepper  <drepper@redhat.com>
7834         * sysdeps/unix/sysv/linux/not-cancel.h (open_not_cancel): Cast
7835         first syscall parameter to const char*.
7837 2003-04-19  Ulrich Drepper  <drepper@redhat.com>
7839         * intl/Makefile ($(objpfx)msgs.h): Use C locale for sed run.
7841         * configure.in: Add AC_PROG_CXX.
7842         * config.make.in (CXX): Define.
7844         * sysdeps/i386/i686/hp-timing.h (HP_TIMING_PRINT): Change type of
7845         __len to size_t to avoid warnings.
7847 2003-04-18  Jes Sorensen  <jes@wildopensource.com>
7849         * libc/sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Sync with Linux
7850         2.5.67.
7851         * libc/sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Likewise.
7853 2003-04-19  Ulrich Drepper  <drepper@redhat.com>
7855         * stdlib/cxa_finalize.c (__cxa_finalize): Don't call
7856         UNREGISTER_ATFORK if d == NULL.
7858         * catgets/nl_types.h: Remove __THROW marker from cancellation points.
7859         * dirent/dirent.h: Likewise.
7860         * dlfcn/dlfcn.h: Likewise.
7861         * grp/grp.h: Likewise.
7862         * iconv/iconv.h: Likewise.
7863         * io/fcntl.h: Likewise.
7864         * io/ftw.h: Likewise.
7865         * libio/stdio.h: Likewise.
7866         * misc/sys/mman.h: Likewise.
7867         * misc/sys/select.h: Likewise.
7868         * misc/sys/syslog.h: Likewise.
7869         * misc/sys/uio.h: Likewise.
7870         * posix/spawn.h: Likewise.
7871         * posix/unistd.h: Likewise.
7872         * posix/sys/wait.h: Likewise.
7873         * pwd/pwd.h: Likewise.
7874         * resolv/netdb.h: Likewise.
7875         * rt/aio.h: Likewise.
7876         * shadow/shadow.h: Likewise.
7877         * signal/signal.h: Likewise.
7878         * socket/sys/socket.h: Likewise.
7879         * stdlib/stdlib.h: Likewise.
7880         * streams/stropts.h: Likewise.
7881         * string/string.h: Likewise.
7882         * sysdeps/gnu/utmpx.h: Likewise.
7883         * sysvipc/sys/msg.h: Likewise.
7884         * termios/termios.h: Likewise.
7885         * time/time.h: Likewise.
7886         * wcsmbs/wchar.h: Likewise.
7887         * iconv/gconv_cache.c: Include <not-cancel.h> and use non-cancelable
7888         functions.
7889         * misc/daemon.c: Likewise.
7890         * sysdeps/generic/backtracesymsfd.c: Likewise.
7891         * sysdeps/generic/check_fds.c: Likewise.
7892         * sysdeps/unix/sysv/linux/gethostid.c: Likewise.
7893         * sysdeps/unix/sysv/linux/not-cancel.h: New file.
7894         * sysdeps/generic/not-cancel.h: New file.
7895         * csu/Makefile (distribute): Add not-cancel.h.
7896         * sysdeps/unix/sysv/linux/fatal-prepare.h: New file.
7897         * sysdeps/unix/sysv/linux/Makefile: Define FATAL_PREPARE_INCLUDE
7898         for assert.c and assert-perr.c to include <fatal-prepare.h>.
7899         * sysdeps/unix/sysv/linux/Dist: Add fatal-prepare.h.
7901         * sysdeps/posix/remove.c (remove): Rewrite.  No need to restore
7902         errno and unlink first.
7904         * io/ftw.c (ftw_dir): In all places assume fchdir is available.
7906 2003-04-18  Ulrich Drepper  <drepper@redhat.com>
7908         * sysdeps/unix/sysv/linux/libc_fatal.c (__libc_fatal): Use
7909         INTERNAL_SYSCALL instead of INLINE_SYSCALL.
7911 2003-04-17  Ulrich Drepper  <drepper@redhat.com>
7913         * sysdeps/unix/sysv/linux/Makefile: Remove db2 directory handling.
7915         * malloc/Makefile (CFLAGS-malloc.c): Define DEFAULT_TOP_PAD to 128k.
7916         * sysdeps/unix/sysv/linux/Makefile (CFLAGS-malloc.c): Add to, not
7917         replace.
7919         * signal/Makefile (tests): Add tst-sigsimple.
7920         * signal/tst-sigsimple.c: New file.
7922 2003-04-16  Jakub Jelinek  <jakub@redhat.com>
7924         * elf/Makefile (distribute): Add tst-tlsmod{[7-9],1[0-2]}.c and
7925         tst-tls10.h.
7926         (tests): Add tst-tls1[0-2].
7927         (modules-names): Add tst-tlsmod{[7-8],1[0-2]}.
7928         ($(objpfx)tst-tlsmod8.so): Depend on tst-tlsmod7.so.
7929         ($(objpfx)tst-tlsmod10.so): Depend on tst-tlsmod9.so.
7930         ($(objpfx)tst-tlsmod12.so): Depend on tst-tlsmod11.so.
7931         ($(objpfx)tst-tls10): Depend on tst-tlsmod8.so.
7932         ($(objpfx)tst-tls11): Depend on tst-tlsmod10.so.
7933         ($(objpfx)tst-tls12): Depend on tst-tlsmod12.so.
7934         * elf/tst-tls10.c: New test.
7935         * elf/tst-tls11.c: New test.
7936         * elf/tst-tls12.c: New test.
7937         * elf/tst-tls10.h: New file.
7938         * elf/tst-tlsmod7.c: New file.
7939         * elf/tst-tlsmod8.c: New file.
7940         * elf/tst-tlsmod9.c: New file.
7941         * elf/tst-tlsmod10.c: New file.
7942         * elf/tst-tlsmod11.c: New file.
7943         * elf/tst-tlsmod12.c: New file.
7945 2003-04-15  Steven Munroe  <sjmunroe@us.ibm.com>
7947         * sysdeps/powerpc/bits/atomic.h: Moved ppc32/64 specific code to ...
7948         * sysdeps/powerpc/powerpc32/bits/atomic.h: New file.
7949         * sysdeps/powerpc/powerpc64/bits/atomic.h: New file.
7951 2003-04-17  Ulrich Drepper  <drepper@redhat.com>
7953         * posix/regex.h: Include <sys/types.h>.
7955         * signal/sigrelse.c (sigrelse): Use sigdelset and not __sigdelset.
7956         The signal number must be checked.
7957         * signal/sighold.c (sighold): Use sigaddset and not __sigaddset.
7958         The signal number must be checked [PR libc/5004].
7960         * sysdeps/unix/sysv/linux/system.c: If compiled without threads
7961         don't do anything fancy.
7963         * sysdeps/generic/bits/libc-lock.h: Define
7964         __rtld_lock_define_initialized_recursive.
7966         * nss/getXXbyYY_r.c [USE_NSCD] (REENTRANT_NAME): Only retry
7967         contacting nscd if NOT_USENSCD_NAME > 0.
7968         * nss/nsswitch.c (__nss_disable_nscd): New function.
7969         * nss/nsswitch.h: Declare it.
7970         * nss/Versions [GLIBC_PRIVATE]: Export __nss_disable_nscd.
7971         * nscd/nscd.c (main): Call __nss_disable_nscd.
7973 2003-04-16  Ulrich Drepper  <drepper@redhat.com>
7975         * stdio-common/perror.c (perror): We don't need to set the offset
7976         to _IO_pos_bad, this is how streams are initialized.
7978         * locale/programs/ld-time.c (TESTARR_ELEM): Make i unsigned.
7979         (time_output): If necessary, allocate new buffer for .name string if
7980         padding is required.
7982         * sysdeps/unix/sysv/linux/ifaddrs.c (getifaddrs): Check lengths
7983         before copying.  This might leave holes in the list.  Adjust
7984         pointers if necessary.
7985         (netlink_receive): Allocate only one block.
7986         (free_netlink_handle): Adjust appropriately.
7987         (getifaddrs): Lots of cleanups.
7989         * string/test-strncpy.c (do_one_test): Mark start and stop as
7990         possibly unused.
7991         * string/test-memchr.c: Likewise.
7992         * string/test-memcmp.c: Likewise.
7993         * string/test-memcpy.c: Likewise.
7994         * string/test-memmove.c: Likewise.
7995         * string/test-memset.c: Likewise.
7996         * string/test-strcat.c: Likewise.
7997         * string/test-strchr.c: Likewise.
7998         * string/test-strcmp.c: Likewise.
7999         * string/test-strcpy.c: Likewise.
8000         * string/test-strlen.c: Likewise.
8001         * string/test-strncmp.c: Likewise.
8002         * string/test-strpbrk.c: Likewise.
8003         * string/test-strrchr.c: Likewise.
8004         * string/test-strspn.c: Likewise.
8006 2003-04-15  Roland McGrath  <roland@redhat.com>
8008         * libio/fileops.c (_IO_file_close_it): Macro tweak to avoid warning.
8010         * sysdeps/generic/libc-start.c [NEED_DL_SYSINFO]: Add decl for
8011         INTUSE(__register_frame_info_bases).
8013 2003-04-15  Ulrich Drepper  <drepper@redhat.com>
8015         * elf/elf.h: Define AT_SYSINFO_EH_FRAME.
8016         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Handle
8017         AT_SYSINFO_EH_FRAME.  Adjust string width.
8018         (_dl_show_auxv):Display AT_SYSINFO_EH_FRAME value.
8019         * sysdeps/generic/ldsodefs.h [NEED_DL_SYSINFO] (struct rtld_global):
8020         Add _dl_sysinfo_eh_frame field.
8021         * elf/dl-support.c [NEED_DL_SYSINFO]: Define _dl_sysinfo_eh_frame.
8022         * sysdeps/generic/libc-start.c [NEED_DL_SYSINFO] Define eh_obj
8023         variable.
8024         [NEED_DL_SYSINFO] (LIBC_START_MAIN): Call __register_frame_info_bases
8025         if _dl_sysinfo_eh_frame is non-NULL.
8027         * Makeconfig (gnulib): Add -lgcc_eh.
8029         * config.h.in: Define HAVE_FORCED_UNWIND.
8031 2003-04-15  Steven Munroe  <sjmunroe@us.ibm.com>
8033         * sysdeps/powerpc/powerpc64/strcmp.S: Convert to full 64-bit.
8034         * sysdeps/powerpc/powerpc64/strcpy.S: Likewise.
8036 2003-04-15  Jakub Jelinek  <jakub@redhat.com>
8038         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Avoid
8039         checking R_PPC_RELATIVE, R_PPC_NONE and whether relocation is
8040         against local symbol in conflict processing.
8042 2003-04-15  Steven Munroe  <sjmunroe@us.ibm.com>
8044         * sysdeps/powerpc/bits/atomic.h
8045         [__powerpc64] (__arch_compare_and_exchange_val_64_acq): Define.
8046         [! __powerpc64] (__arch_compare_and_exchange_val_64_acq): Defined
8047         as abort stub.
8048         (__arch_compare_and_exchange_val_32_acq): Define.
8049         (atomic_compare_and_exchange_val_acq): Define.
8051 2003-04-15  Ulrich Drepper  <drepper@redhat.com>
8053         * include/atomic.h: Pretty printing.
8055 2003-04-14  Ulrich Drepper  <drepper@redhat.com>
8057         * stdio-common/vfscanf.c: Add casts to avoid warnings.
8059 2003-04-14  Jakub Jelinek  <jakub@redhat.com>
8061         * sysdeps/i386/i486/bits/atomic.h: Rename LOCK to LOCK_PREFIX.
8062         * sysdeps/x86_64/bits/atomic.h: Likewise.
8064 2003-04-14  Ulrich Drepper  <drepper@redhat.com>
8066         * sysdeps/unix/sysv/linux/i386/sysdep.h: Change PUSHARGS_1 and
8067         POPARGS_1 to emit labels for the mov instructions.
8069 2003-04-14  Jakub Jelinek  <jakub@redhat.com>
8071         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h (ret_NOERRNO): Define.
8073 2003-04-14  Roland McGrath  <roland@redhat.com>
8075         * sysdeps/generic/unwind-dw2.c (_Unwind_GetCFA): Add a cast to silence
8076         compiler warning.
8078         * sysdeps/generic/unwind-pe.h: Fix decl hacks broken in merge.
8080 2003-04-14  Ulrich Drepper  <drepper@redhat.com>
8082         * string/strxfrm.c (STRXFRM): Terminate rulearr at correct
8083         position.  Reported by jreiser@BitWagon.com.
8085 2003-04-13  Ulrich Drepper  <drepper@redhat.com>
8087         * sysdeps/generic/unwind-dw2-fde.c: Update from recent gcc version.
8088         * sysdeps/generic/unwind-dw2-fde.h: Likewise.
8089         * sysdeps/generic/unwind-dw2.c: Likewise.
8090         * sysdeps/generic/unwind-pe.h: Likewise.
8092 2003-04-13  Alexandre Oliva  <aoliva@redhat.com>
8094         * sysdeps/unix/sysv/linux/mips/profil-counter: New.
8095         * sysdeps/unix/sysv/linux/mips/sigcontextinfo.h: Port to n32/n64.
8096         * sysdeps/unix/sysv/linux/mips/bits/sigcontext.h: New.
8097         * sysdeps/unix/sysv/linux/mips/sys/ucontext.h: Port to n32/n64.
8098         (mcontext_t): Make it match the 32-bit mips kernel in o32.
8099         * sysdeps/unix/sysv/linux/mips/sys/user.h: Bring in constants from
8100         the mips and mips64 headers.
8101         (struct user): Port to n32/n64.
8103 2003-04-12  Ulrich Drepper  <drepper@redhat.com>
8105         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Add cast to
8106         avoid warning.
8108         * sysdeps/unix/sysv/linux/i386/sigaction.c (__libc_sigaction): If
8109         __ASSUME_VSYSCALL is defined don't add restorer.
8110         * sysdeps/unix/sysv/linux/kernel-features.h: Define
8111         __ASSUME_VSYSCALL for 2.5.53.
8113 2003-04-11  Ulrich Drepper  <drepper@redhat.com>
8115         * sysdeps/generic/libc-start.c: Cleanup MAIN_AUXVEC_ARG handling.
8116         Remove HAVE_CANCELBUF code.  Replace with code using the new
8117         initializers for unwind-based cleanup handling.
8118         * sysdeps/generic/unwind.h: Update from latest gcc version.
8119         * sysdeps/unix/sysv/linux/i386/sysdep.h: Define labels in a few
8120         places to allow unwind data generation.
8121         * sysdeps/i386/bits/setjmp.h: Allow file to be included multiple times.
8122         * sysdeps/x86_64/bits/setjmp.h: Likewise.
8123         * sysdeps/sh/bits/setjmp.h: Likewise.
8124         * sysdeps/powerpc/bits/setjmp.h: Likewise.
8125         * sysdeps/unix/sysv/linux/ia64/bits/setjmp.h: Likewise.
8126         * sysdeps/alpha/bits/setjmp.h: Likewise.
8128 2003-04-11  Roland McGrath  <roland@redhat.com>
8130         * csu/tst-empty.c: New file.
8131         * csu/Makefile (tests, tests-static): Add it.
8133 2003-04-11  Jakub Jelinek  <jakub@redhat.com>
8135         * string/test-strcmp.c (do_random_tests): Test whether return value
8136         has been promoted to wordsize if the ABI requires caller to do so.
8137         * string/test-strncmp.c (do_random_tests): Likewise.
8138         * string/test-memcmp.c (do_random_tests): Likewise.
8140         * sysdeps/powerpc/powerpc64/strcmp.S (strcmp): Sign extend rRTN
8141         before returning.
8143         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c
8144         (__fe_nomask_env): Try prctl even if __ASSUME_NEW_PRCTL_SYSCALL
8145         is not defined, but the prctl constants are.
8147         * string/tester.c (test_strcmp): Fix a typo.
8149 2003-04-09  Ulrich Drepper  <drepper@redhat.com>
8151         * sysdeps/alpha/fpu/bits/mathdef.h: Remove FLT_EVAL_METHOD definition.
8152         * sysdeps/powerpc/fpu/bits/mathdef.h: Likewise.
8154 2003-04-08  Alexandre Oliva  <aoliva@redhat.com>
8156         * sysdeps/mips/sys/regdef.h (t4,t5,t6,t7): Renamed to t0..t3 on
8157         NewABI.
8158         (ta0, ta1, ta2, ta3): Defined to t4..t7 on o32, and a4..a7 on
8159         NewABI.
8160         * sysdeps/mips/mips64/memcpy.S: Adjust register naming
8161         conventions.
8162         * sysdeps/mips/mips64/memset.S: Likewise.
8163         * sysdeps/unix/mips/sysdep.S (__syscall_error) [_LIBC_REENTRANT]:
8164         Use t0 instead of t4 as temporary.
8166 2003-04-07  Ulrich Drepper  <drepper@redhat.com>
8168         * elf/ldconfig.c (parse_conf): Ignore leading whitespace.  Use
8169         feof_unlocked instead of feof.
8170         (add_dir): Ignore trailing whitespace.
8172 2003-04-07  Jakub Jelinek  <jakub@redhat.com>
8174         * posix/bug-regex4.c (main): Cap RANGE and STOP arguments to
8175         sum of SIZE1 and SIZE2 arguments.
8177 2003-04-06  Ulrich Drepper  <drepper@redhat.com>
8179         * iconv/iconv_prog.c (process_block): Don't print message about
8180         invalid input if the -c option is used.
8181         (main): Correctly append IGNORE string for -c option.
8183 2003-04-06  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
8185         * sysdeps/sh/bits/atomic.h: Moved to ...
8186         * sysdeps/unix/sysv/linux/sh/bits/atomic.h: ... here.  Add comments.
8187         (__arch_compare_and_exchange_val_*_acq): Add parens around macro
8188         arguments.
8189         (atomic_bit_set, atomic_bit_test_set): Likewise.
8190         (atomic_exchange_and_add): Likewise.  Don't evaluate VALUE argument
8191         twice.
8192         (atomic_add, atomic_add_negative, atomic_add_zero): Likewise.
8194 2003-04-06  Roland McGrath  <roland@redhat.com>
8196         * sysdeps/unix/sysv/linux/i386/swapcontext.S: Rewrite register
8197         restoration as done for setcontext yesterday.
8199 2003-04-06  Jakub Jelinek  <jakub@redhat.com>
8201         * elf/rtld.c: Revert 2003-03-14 change.
8202         * elf/dl-conflict.c (_dl_resolve_conflicts): Move
8203         #if ! ELF_MACHINE_NO_RELA conditional into the routine.
8205 2003-04-05  Ulrich Drepper  <drepper@redhat.com>
8207         * sunrpc/xdr.c (xdr_string): Catch nodesize == 0 [PR libc/4999].
8209         * sysdeps/ieee754/ldbl-96/e_gammal_r.c (__ieee754_gammal_r):
8210         Always initialize *signgamp before returning an error.
8212 2003-04-05  Roland McGrath  <roland@redhat.com>
8214         * sysdeps/unix/sysv/linux/i386/setcontext.S: Rewrite to avoid writing
8215         below the stack pointer even if switching to the same context we are
8216         running right now.
8218 2003-04-05  Ulrich Drepper  <drepper@redhat.com>
8220         * catgets/gencat.c (read_input_file): Make sure that \n is not
8221         alone on the line before testing for continuation.
8223         * math/test-tgmath.c (compile_test): Initialize c.
8225 2003-04-05  Alexandre Oliva  <aoliva@redhat.com>
8227         * sysdeps/unix/sysv/linux/mips/mips64/n32/ftruncate64.c: New.
8228         * sysdeps/unix/sysv/linux/mips/mips64/n32/truncate64.c: New.
8229         * sysdeps/unix/sysv/linux/kernel-features.h: fcntl64 is available
8230         on mips n32.
8231         * sysdeps/unix/sysv/linux/mips/kernel_stat.h: Explain why
8232         XSTAT_IS_XSTAT64 must not be used for mips n64.  Use 64-bit data
8233         structure on n32 as well.
8234         * sysdeps/unix/sysv/linux/mips/bits/stat.h: Use POSIX-compliant
8235         data types on n32 and n64.
8237 2003-04-05  Ulrich Drepper  <drepper@redhat.com>
8239         * libio/fileops.c (_IO_new_file_fopen): Don't free step data right
8240         after getting them.
8242         * malloc/thread-m.h [PTHREAD_MUTEX_INITIALIZER]: If
8243         HAVE_register_atfork_malloc is defined use __register_atfork_malloc
8244         instead of __register_atfork.
8246 2003-04-05  Jakub Jelinek  <jakub@redhat.com>
8248         * stdio-common/reg-printf.c (__register_printf_function): Calloc
8249         instead of malloc __printf_arginfo_table and __printf_function_table.
8250         Reported by John Reiser <jreiser@BitWagon.com>.
8252 2003-04-04  Steven Munroe  <sjmunroe@us.ibm.com>
8254         * sysdeps/powerpc/powerpc64/strchr.S: 64-bit optimizations.
8255         * sysdeps/powerpc/powerpc64/strlen.S: 64-bit optimizations.
8257         * sysdeps/powerpc/fpu/bits/mathdef.h (FLT_EVAL_METHOD): Undef before
8258         defining.
8260 2003-04-04  Alexandre Oliva  <aoliva@redhat.com>
8262         * sysdeps/unix/sysv/linux/mips/bits/fcntl.h (struct flock): Adjust
8263         for n64 abi.
8265 2003-04-03  Roland McGrath  <roland@redhat.com>
8267         * configure.in: Fix up use of compilation flags to match the build:
8268         For .s files, $ASFLAGS;
8269         For .S files, $CPPFLAGS $ASFLAGS;
8270         For .c files, $CFLAGS $CPPFLAGS;
8271         when linking, add $LDFLAGS.
8272         * configure: Regenerated.
8274 2003-04-03  Jakub Jelinek  <jakub@redhat.com>
8276         * sysdeps/unix/sysv/linux/getsysstats.c (get_proc_path): Reverse test
8277         for atomic_compare_and_exchange_bool_acq failure.
8279 2003-04-03  Ulrich Drepper  <drepper@redhat.com>
8281         * posix/unistd.h: Define _POSIX_VERSION, _POSIX2_VERSION,
8282         _POSIX2_C_BIND, _POSIX2_C_DEV, _POSIX2_SW_DEV, and
8283         _POSXI2_LOCALEDEF to 200112L.  Remove _POSIX2_C_VERSION.
8284         Remove declaration of pthread_atfork.
8286 2003-04-02  Ulrich Drepper  <drepper@redhat.com>
8288         * locale/iso-639.def: Add many more languages from the current ISO 639.
8290         * sysdeps/unix/sysv/linux/ipc_priv.h: Define IPCOP_semtimedop.
8291         * sysdeps/generic/semtimedop.c: New file.
8292         * sysdeps/unix/sysv/linux/i386/semtimedop.S: New file.
8293         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Add semtimedop.
8294         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
8295         * sysvipc/Makefile (routines): Add semtimedop.
8296         * sysvipc/Versions [GLIBC_2.3.3] (glibc): Add semtimedop.
8297         * sysvipc/sys/sem.h: Declare semtimedop.
8299 2003-04-02  Daniel Jacobowitz  <drow@mvista.com>
8301         * configure.in: Check for __register_frame_info in both
8302         -lgcc and -lgcc_eh.
8303         * configure: Regenerated.
8305 2003-04-01  Roland McGrath  <roland@redhat.com>
8307         * scripts/abilist.awk: Allow dots in soname suffix.
8309         * scripts/abilist.awk (emit): Fix bailout condition.
8311 2003-04-01  Jakub Jelinek  <jakub@redhat.com>
8313         * sysdeps/unix/sysv/linux/sparc/sparc64/sigsuspend.c: Use the
8314         IA-64 version.
8316         * elf/tls-macros.h [__ia64__] (TLS_IE, TLS_LD, TLS_GD): Add gp
8317         register as input to asm.
8319 2003-04-01  Jakub Jelinek  <jakub@redhat.com>
8321         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h (sigevent_t): Fix a typo.
8323 2003-04-01  Andreas Jaeger  <aj@suse.de>
8325         * configure.in: Output as/ld as name if version is too old.
8327 2003-03-31  Daniel Jacobowitz  <drow@mvista.com>
8329         * configure.in: Don't require an installed C library in the test
8330         for ".set" assembler support.
8332 2003-03-31  Roland McGrath  <roland@redhat.com>
8334         * signal/tst-sigset.c: New file.
8335         * signal/Makefile (tests): Add it.
8337 2003-03-31  Ulrich Drepper  <drepper@redhat.com>
8339         * sysdeps/unix/sysv/linux/alpha/bits/signum.h (_NSIG): Define to 65.
8340         * sysdeps/unix/sysv/linux/hppa/bits/signum.h (_NSIG): Likewise.
8341         * sysdeps/unix/sysv/linux/sparc/bits/signum.h (_NSIG): Likewise.
8342         * sysdeps/unix/sysv/linux/bits/signum.h (_NSIG): Likewise.
8343         (__SIGRTMAX): Adjust accordingly.
8344         * sysdeps/gnu/siglist.c: If OLD2_SIGLIST_SIZE is defined define
8345         second compatibility symbol set.
8346         * sysdeps/unix/sysv/linux/siglist.h (OLD2_SIGLIST_SIZE): Define.
8348 2003-03-31  Andreas Schwab  <schwab@suse.de>
8350         * sysdeps/m68k/m68020/bits/atomic.h (atomic_increment_and_test):
8351         Define.
8352         (atomic_decrement_and_test): Fix test.
8354 2003-03-31  Jakub Jelinek  <jakub@redhat.com>
8356         * sysdeps/sparc/sparc32/bits/atomic.h: New file.
8357         * sysdeps/sparc/sparc32/sparcv9/bits/atomic.h: New file.
8358         * sysdeps/sparc/sparc64/bits/atomic.h: New file.
8359         * sysdeps/sparc/sparc32/atomicity.h: Removed.
8360         * sysdeps/sparc/sparc32/sparcv9/atomicity.h: Removed.
8361         * sysdeps/sparc/sparc64/atomicity.h: Removed.
8363 2003-03-30  Roland McGrath  <roland@redhat.com>
8365         * scripts/abilist.awk: Grok .opd foo plus .text .foo as "foo F" alone.
8367         * intl/po2test.sed: Anchor substitution regexps to fix last change.
8369 2003-03-29  Paolo Bonzini  <bonzini@gnu.org>
8371         * intl/po2test.sed: Unify the transformations for msgid and msgstr
8372         and remove a useless s/// command.
8374 2003-03-27  David Mosberger  <davidm@hpl.hp.com>
8376         * sysdeps/ia64/dl-machine.h (RTLD_START): Wrap ".save rp, r0"
8377         directive into empty .prologue region to ensure that call-chain
8378         is terminated even for the first instruction.
8380         * sysdeps/ia64/elf/start.S (_start): Use ".save rp, r0" idiom
8381         to terminate call-chain right from the get-go.
8383         * sysdeps/unix/sysv/linux/ia64/fork.S (fork): Remove unnecessary
8384         stop bit between compare & branch.
8386 2003-03-29  Ulrich Drepper  <drepper@redhat.com>
8388         * stdlib/strtod.c (INTERNAL): Recognize first digit after decimal
8389         point correctly [PR libc/4993].
8391         * sysdeps/unix/sysv/linux/ifaddrs.c (getifaddrs): Avoid
8392         netlink_open calls if netlink is known to not be available.
8394 2003-03-29  Alexandre Oliva  <aoliva@redhat.com>
8396         * configure.in: Add mips64* support.
8397         * sysdeps/mips/bits/endian.h: Make it bi-endian.
8398         * sysdeps/mips/mipsel/bits/endian.h: Removed.
8399         * sysdeps/mips/mips64/n32/el/bits/endian.h: Removed.
8400         * sysdeps/mips/mips64/n64/el/bits/endian.h: Removed.
8401         * sysdeps/mips/mips32/Makefile (CC): Add -mabi=32.
8402         * sysdeps/mips/mips64/n32/Makefile (CC): Add -mabi=n32.
8403         * sysdeps/mips/mips64/n64/Makefile (CC): Add -mabi=64.
8404         * sysdeps/mips/Implies: Moved wordsize-32 to...
8405         * sysdeps/mips/mips32/Implies: New file.
8406         * sysdeps/unix/mips/sysdep.h (PSEUDO_NOERRNO, PSEUDO_END_NOERRNO,
8407         ret_NOERRNO): New.
8408         (ret, PSEUDO_END): Moved past END.
8409         (PSEUDO): Moved to...
8410         * sysdeps/unix/mips/mips32/sysdep.h: New file.
8411         * sysdeps/unix/mips/mips64/n32/sysdep.h: Removed #undef PSEUDO.
8412         * sysdeps/unix/mips/mips64/n64/sysdep.h: Likewise.
8413         * sysdeps/unix/sysv/linux/mips/sysdep.h: Move to...
8414         * sysdeps/unix/sysv/linux/mips/mips32/sysdep.h: New file.
8415         * sysdeps/unix/sysv/linux/mips/mips32/kern64/sysdep.h: New file.
8417         * sysdeps/unix/sysv/linux/mips/clone.S (__thread_start):
8418         Re-introduce ENTRY.
8420 2003-03-28  Thorsten Kukuk  <kukuk@suse.de>
8422         * sysdeps/unix/sysv/linux/ifaddrs.c: New file.
8423         * inet/test-ifaddrs.c: Allow AF_PACKET.
8424         * sysdeps/unix/sysv/linux/kernel-features.h: Add
8425         __ASSUME_NETLINK_SUPPORT.
8427 2003-03-28  Ulrich Drepper  <drepper@redhat.com>
8429         * elf/vismain.c (do_test): Comment out tests which fail in the moment.
8431 2003-03-26  H.J. Lu  <hjl@gnu.org>
8433         * elf/vismod.h (getvarlocal1): Return const char **.
8434         (getvarinmod1): Likewise.
8435         (getvaritcpt1): Likewise.
8436         (getvarlocal2): Likewise.
8437         (getvarinmod2): Likewise.
8438         (getvaritcpt2): Likewise.
8439         (getvaritcpt3): Likewise.
8440         * elf/vismain.c (do_test): Adjusted.
8441         * elf/vismod1.c (getvarlocal1): Return address.
8442         (getvarinmod1): Likewise.
8443         (getvaritcpt1): Likewise.
8444         * elf/vismod2.c (getvarlocal2): Likewise.
8445         (getvarinmod2): Likewise.
8446         (getvaritcpt2): Likewise.
8447         * elf/vismod3.c (getvaritcpt3): Likewise.
8449 2003-03-28  Roland McGrath  <roland@redhat.com>
8451         * elf/vismain.c (do_test): Print both addresses when they don't match.
8453         * scripts/abilist.awk: If given -v filename_regexp and/or -v
8454         libname_regexp when parsing names, then produce output only
8455         for those matching the given regexps.  In combine mode, save all
8456         stanzas for a final sorting by stanza header at the end.
8457         Emit a blank line between stanzas.
8459         * scripts/abilist.awk: When given -v combine=1, do parse_names and
8460         emit a single output stream with lib name in stanza header lines.
8462         * scripts/abilist.awk: Emit A for all *ABS* regardless of type.
8464 2003-03-27  Roland McGrath  <roland@redhat.com>
8466         * sysdeps/powerpc/bits/atomic.h [! __powerpc64__]
8467         (__arch_atomic_decrement_if_positive_64): Fix bogus definition.
8469 2003-03-28  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
8471         * sysdeps/sh/bits/atomic.h (__arch_compare_and_exchange_val_8_acq):
8472         Return old value. Make asm output reg constraint earlyclobber.
8473         Renamed from...
8474         (__arch_compare_and_exchange_8_acq): ... this.
8475         (__arch_compare_and_exchange_val_16_acq):
8476         Return old value. Make asm output reg constraint earlyclobber.
8477         Renamed from...
8478         (__arch_compare_and_exchange_16_acq): ... this.
8479         (__arch_compare_and_exchange_val_32_acq):
8480         Return old value. Make asm output reg constraint earlyclobber.
8481         Renamed from...
8482         (__arch_compare_and_exchange_32_acq): ... this.
8483         (__arch_compare_and_exchange_val_64_acq):
8484         Renamed from...
8485         (__arch_compare_and_exchange_64_acq): ... this.
8486         (atomic_exchange_and_add): Use local variables and
8487         __arch_compare_and_exchange_val_64_acq.
8488         (atomic_add): Likewise.
8489         (atomic_add_negative, atomic_add_zero): Use local variables.
8491 2003-03-28  Alexandre Oliva  <aoliva@redhat.com>
8493         * sysdeps/unix/mips/sysdep.S: Include sys/asm.h.
8495 2003-03-27  Ulrich Drepper  <drepper@redhat.com>
8497         * Makefile: Remove libmd5crypt goal.
8499 2003-03-25  Jakub Jelinek  <jakub@redhat.com>
8501         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Restore
8502         special handling of relocations against local symbols.
8504 2003-03-27  Steven Munroe  <sjmunroe@us.ibm.com>
8506         * sysdeps/powerpc/bits/atomic.h
8507         (__arch_compare_and_exchange_bool_32_acq): Move to [!__powerpc64__].
8508         [__powerpc64__] (__arch_compare_and_exchange_bool_32_acq):
8509         Define PPC64 specific version.
8510         [__powerpc64__] (__arch_compare_and_exchange_bool_64_acq):
8511         Change (mem) constraint to "b".
8512         [__powerpc64__] (__arch_atomic_exchange_and add_64):
8513         Replace addi with add. Change (value) contraint to "r".
8514         Change (mem) constraint to "b".
8515         [__powerpc64__] (__arch_atomic_decrement_if_positive_64): New macro.
8516         (__arch_atomic_exchange_32): Change (mem) constraint to "b".
8517         (__arch_atomic_exchange_and_add_32): Change (mem) constraint to "b".
8518         (__arch_atomic_decrement_if_positive_32): New macro.
8519         (atomic_decrement_if_positive): Use __arch* macros.
8521 2003-03-27  Jakub Jelinek  <jakub@redhat.com>
8523         * sysdeps/ia64/fpu/libm-test-ulps: Update.
8525 2003-03-27  Roland McGrath  <roland@redhat.com>
8527         * scripts/rpm2dynsym.sh: New file.
8528         * Makefile (distribute): Add it.
8530 2003-03-27  David Mosberger  <davidm@hpl.hp.com>
8532         * sysdeps/unix/sysv/linux/ia64/getcontext.S: Restore caller's
8533         ar.unat before returning.  Add missing .mem.offset directives
8534         to ensure file gets assembled without warnings.
8535         * sysdeps/unix/sysv/linux/ia64/setjmp.S: Likewise.
8537 2003-03-27  Jakub Jelinek  <jakub@redhat.com>
8539         * sysdeps/unix/sysv/linux/sysconf.c (__sysconf) <_SC_MONOTONIC_CLOCK>:
8540         Return -1 instead of 0 if clock_getres failed.
8542 2003-03-27  Roland McGrath  <roland@redhat.com>
8544         * scripts/abilist.awk: If variable `parse_names' is set, grok the file
8545         header lines and write out foo.symlist files for each foo.so.NN listed.
8547         * libio/libioP.h (_IO_wfile_jumps): Remove attribute_hidden.
8548         This symbol is exported, and we don't want to hide it.
8549         Add libc_hidden_proto instead.
8550         (_IO_file_jumps): Add libc_hidden_proto.
8551         * libio/wfileops.c (_IO_wfile_jumps): Add libc_hidden_data_def.
8552         Remove INTVARDEF.
8553         * libio/fileops.c (_IO_file_jumps): Likewise.
8554         * libio/stdfiles.c: Don't use INTUSE on them.
8555         * libio/iofdopen.c (_IO_new_fdopen): Likewise.
8556         * libio/iofopen.c (__fopen_internal): Likewise.
8557         * libio/freopen.c (freopen): Likewise.
8558         * libio/freopen64.c (freopen64): Likewise.
8559         * libio/iovdprintf.c (_IO_vdprintf): Likewise.
8561         * Makerules (check-abi) [$(enable-check-abi) = warn]:
8562         Ignore exit status from diff.
8563         * configure.in (enable_check_abi): Document possible value "warn".
8564         Change default to no for now.
8565         * configure: Regenerated.
8567         * sysdeps/unix/Makefile ($(objpfx)stub-syscalls.c): Emit stub_warning
8568         macro calls and a #include <stub-tag.h> at the end.
8569         * Makerules ($(objpfx)stubs): Tweak sed commands.
8571         * sysdeps/unix/sysv/linux/syscalls.list: Use - rather than EXTRA in
8572         caller column for *xattr syscalls, since they are in sysdeps/generic.
8574         * sysdeps/unix/sysv/linux/i386/setfsuid.c: setfsgid -> setfsuid
8575         * sysdeps/unix/sysv/linux/i386/setfsgid.c: setfsuid -> setfsgid
8577 2003-03-26  Roland McGrath  <roland@redhat.com>
8579         * Makerules (check-abi-config): Use /thread instead of /tls when
8580         use-thread and not just use-tls is set.
8582         * Makerules (update-abi): Put quotes around $(update-abi-config).
8584         * elf/Makefile (check-abi): Depend on check-abi-ld.
8585         (update-abi): Depend on update-abi-ld.
8587 2003-03-26  GOTO Masanori  <gotom@debian.or.jp>
8589         * sysdeps/unix/sysv/linux/i386/setfsuid.c: Use INTERNAL_SYSCALL and
8590         do not check for errors (unless testing for 32bit variant).
8591         * sysdeps/unix/sysv/linux/i386/setfsgid.c: Likewise.
8593 2003-03-27  Philip Blundell  <philb@gnu.org>
8595         * sysdeps/unix/sysv/linux/arm/sysdep.h (PSEUDO_RET_NOERRNO): Use
8596         unconditional mov.  Remove nop.
8598         * sysdeps/unix/sysv/linux/kernel-features.h
8599         (__ASSUME_VFORK_SYSCALL): Define for kernel 2.4 on arm.
8600         * sysdeps/unix/sysv/linux/arm/vfork.S: Elide compatibility code
8601         when __ASSUME_VFORK_SYSCALL is defined.
8602         * sysdeps/unix/sysv/linux/arm/mmap64.S: Likewise for
8603         __ASSUME_MMAP2_SYSCALL.
8604         * sysdeps/unix/sysv/linux/arm/sigaction.c: Likewise for
8605         __ASSUME_REALTIME_SIGNALS.
8607 2003-03-26  Ulrich Drepper  <drepper@redhat.com>
8609         * sysdeps/generic/ldsodefs.h (ELF_RTYPE_CLASS_COPY): Define to 2
8610         only if DL_NO_COPY_RELOCS is not defined.
8611         * sysdeps/ia64/dl-lookupcfg.h: Define DL_NO_COPY_RELOCS.
8613 2003-03-26  Roland McGrath  <roland@redhat.com>
8615         * sysdeps/unix/make-syscalls.sh: When an undefined syscall has
8616         SOURCE=-, append its symbol names to make variable unix-stub-syscalls.
8617         * sysdeps/unix/Makefile [$(subdir) = misc] [unix-stub-syscalls]
8618         (sysdep_routines): Add stub-syscalls.
8619         ($(objpfx)stub-syscalls.c): New target.
8620         (generated): Add stub-syscalls.c.
8622         * tls.make.c: Also define use-tls according to USE_TLS macro.
8624 2003-03-26  Ulrich Drepper  <drepper@redhat.com>
8626         * sysdeps/unix/sysv/linux/alpha/bits/siginfo.h (struct siginfo): Avoid
8627         no-op padding element.
8628         * sysdeps/unix/sysv/linux/bits/siginfo.h: Likewise.
8629         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Likewise.
8630         * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Likewise.
8631         * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Likewise.
8633 2003-03-26  GOTO Masanori  <gotom@debian.or.jp>
8635         * sysdeps/unix/sysv/linux/i386/getgroups.c: Fix the error
8636         condition check for the return value of getgroups32.
8638 2003-03-26  Jakub Jelinek  <jakub@redhat.com>
8640         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (PSEUDO_NOERRNO):
8641         Fix a typo.
8642         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h (PSEUDO_NOERRNO,
8643         PSEUDO_END_NOERRNO): Define.
8644         * sysdeps/unix/sysdep.h (PSEUDO_END_NOERRNO): Fix a typo.
8645         Define to PSEUDO_END.
8647 2003-03-26  Ulrich Drepper  <drepper@redhat.com>
8649         * abilist/librt.abilist: Add new timer interfaces for 64-bit archs.
8651 2003-03-25  Jiro SEKIBA  <jir@yamato.ibm.com>
8653         * iconvdata/euc-tw.c (from_euc_tw): Fix return value of TO_LOOP.
8654         * iconvdata/bug-iconv4.c: New file.
8655         * iconvdata/Makefile (tests): Add bug-iconv4.
8657 2003-03-25  H.J. Lu  <hjl@gnu.org>
8659         * elf/dl-lookup.c (_dl_lookup_symbol): Avoid looking up protected
8660         symbols twice.
8661         (_dl_lookup_versioned_symbol): Likewise.
8663 2003-03-26  Jakub Jelinek  <jakub@redhat.com>
8665         * csu/tst-atomic.c (do_test): Add some new
8666         atomic_compare_and_exchange_val_acq, atomic_add_zero,
8667         atomic_compare_and_exchange_bool_acq and atomic_add_negative tests.
8668         * include/atomic.h (atomic_add_negative, atomic_add_zero):
8669         Prefix local variable so that it doesn't clash with the one
8670         in atomic_exchange_and_add.
8671         * sysdeps/ia64/bits/atomic.h (atomic_exchange): Fix for long/void *
8672         pointers.
8673         (atomic_exchange_and_add): Implement using __sync_fetch_and_add_?i.
8674         * sysdeps/powerpc/bits/atomic.h (atomic_exchange_and_add): Force
8675         value into register.
8676         * sysdeps/s390/bits/atomic.h (__arch_compare_and_exchange_val_64_acq):
8677         Cast newval to long.
8678         * sysdeps/x86_64/bits/atomic.h
8679         (__arch_compare_and_exchange_val_64_acq): Cast newval and oldval to
8680         long.
8681         (atomic_exchange): Cast newvalue to long if sizeof == 8.
8682         (atomic_exchange_and_add): Cast value to long if sizeof == 8.
8683         (atomic_add, atomic_add_negative, atomic_add_zero): Likewise.
8684         (atomic_bit_set): Shift 1L up in all cases to shut up warnings.
8686 2003-03-21  Martin Schwidefsky  <schwidefskyde.ibm.com>
8688         * sysdeps/s390/s390-32/backtrace.c (__backtrace): Remove high order
8689         bit from backtrace addresses.
8691 2003-03-21  Andreas Schwab  <schwab@suse.de>
8693         * sysdeps/unix/sysv/linux/i386/chown.c: Don't define any versioned
8694         __chown symbols.
8696 2003-03-25  Roland McGrath  <roland@redhat.com>
8698         * config.make.in (enable-check-abi): New variable from configure.
8699         * configure.in (enable_check_abi): New substituted variable,
8700         controlled by --{enable,disable}-check-abi (default yes).
8701         * configure: Regenerated.
8702         * Makerules [$(enable-check-abi) = yes] (tests): Put this condition
8703         on check-abi dependency.
8705 2003-03-26  Andreas Schwab  <schwab@suse.de>
8707         * sysdeps/m68k/m68020/bits/atomic.h: Fix typos.
8708         * include/atomic.h: Likewise.
8710         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Define ret_NOERRNO.
8712 2003-03-25  Roland McGrath  <roland@redhat.com>
8714         * sysdeps/powerpc/bits/atomic.h (__arch_atomic_exchange_32): New macro.
8715         (__arch_atomic_exchange_64): New macro.
8716         (atomic_exchange): Use them.
8717         (__arch_atomic_exchange_and_add_32): New macro.
8718         (__arch_atomic_exchange_and_add_64): New macro.
8719         (atomic_exchange_and_add): Use them.
8720         Original patch from Steven Munroe <sjmunroe@us.ibm.com>.
8722 2003-03-25  Alexandre Oliva  <aoliva@redhat.com>
8724         * sysdeps/mips/sgidefs.h (_MIPS_ISA_MIPS32, _MIPS_ISA_MIPS64):
8725         Define.
8726         * sysdeps/mips/sys/asm.h: Test _MIPS_ISA against them on all
8727         ISA tests.
8728         (ALSZ, ALMASK, SZREG, REG_S, REG_L): Define based on ABI, not ISA.
8729         (PTR_ADD, etc): Test _MIPS_SZPTR instead of _MIPS_SZLONG.
8730         * sysdeps/unix/sysv/linux/mips/bits/sigaction.h: Use _MIPS_SZPTR
8731         to decide whether to add padding.
8732         * sysdeps/unix/sysv/linux/mips/bits/sigaction.h: Use _MIPS_SZPTR
8733         to decide whether to add padding.
8734         * sysdeps/unix/sysv/linux/mips/kernel_sigaction.h (struct
8735         old_kernel_sigaction): Likewise.
8737 2003-03-25  Ulrich Drepper  <drepper@redhat.com>
8739         * csu/tst-atomic.c: Adjust tests to what atomic_add_negative and
8740         atomic_add_zero were supposed to do.
8741         * include/atomic.h: Adjust atomic_add_negative and atomic_add_zero
8742         to x86 behavior.
8744         * sysdeps/generic/bits/typesizes.h (__TIMER_T_TYPE): Define as void*.
8745         This matches the new timer implementation.
8746         * sysdeps/unix/sysv/linux/sparc/bits/typesizes.h (__TIMER_T_TYPE):
8747         Likewise.
8748         * sysdeps/unix/sysv/linux/alpha/bits/typesizes.h (__TIMER_T_TYPE):
8749         Likewise.
8750         * sysdeps/unix/sysv/linux/bits/siginfo.h (struct siginfo): Adjust
8751         timer info for what the kernel provides these days.
8752         (struct sigevent): Add _tid field.
8753         Define SIGEV_THREAD_ID.
8754         Remove struct __pthread_attr_s forward declaration.
8755         * sysdeps/unix/sysv/linux/alpha/bits/siginfo.h: Likewise.
8756         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Likewise.
8757         * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Likewise.
8758         * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Likewise.
8760         * Versions.def (librt): Add GLIBC_2.3.3.
8762         * abilist/libpthread.abilist: Update for nptl.
8764 2003-03-24  Jon Grimm  <jgrimm@us.ibm.com>
8766         * inet/netinet/in.h: Add IPPROTO_SCTP.
8768 2003-03-24  Ulrich Drepper  <drepper@redhat.com>
8770         * sysdeps/unix/sysv/linux/sys/epoll.h (EPOLLET): Define.
8772 2003-03-24  Philip Blundell  <philb@gnu.org>
8774         * sysdeps/unix/sysv/linux/arm/sysdep.h (INTERNAL_SYSCALL):
8775         Remove a1 from clobber list.
8777 2003-03-24  Ulrich Drepper  <drepper@redhat.com>
8779         * timezone/antarctica: Update from tzdata2003a.
8780         * timezone/asia: Likewise.
8781         * timezone/australasia: Likewise.
8782         * timezone/europe: Likewise.
8783         * timezone/iso3166.tab: Likewise.
8784         * timezone/northamerica: Likewise.
8785         * timezone/southamerica: Likewise.
8786         * timezone/zone.tab: Likewise.
8788 2003-03-24  Steven Munroe  <sjmunroe@us.ibm.com>
8790         * sysdeps/powerpc/powerpc64/sysdep.h (PSEUDO_END_NOERRNO): Fix typo.
8792 2003-03-23  Ulrich Drepper  <drepper@redhat.com>
8794         * sysdeps/unix/sysv/linux/ia64/sysdep.h (ret_NOERRNO): Avoid
8795         unwanted expansion by definining to ret.  Patch by Ian Wienand.
8797         * sysdeps/unix/make-syscalls.sh: Recognize 'E' in first position of
8798         the parameter description to denote no error checking.  Generate
8799         appropriate pseudo asm code.
8800         * sysdeps/unix/syscalls.list: Mark getgid, getpid, getuid with 'E'.
8801         * sysdeps/unix/sysv/linux/syscalls.list: Mark getegid, geteuid,
8802         getpgrp, and getppid with 'E'.
8803         * sysdeps/powerpc/powerpc32/sysdep.h: Define PSEUDO_NOERRNO,
8804         PSEUDO_END_NOERRNO, and ret_NOERRNO.
8805         * sysdeps/powerpc/powerpc64/sysdep.h: Likewise.
8806         * sysdeps/unix/sysdep.h: Likewise.
8807         * sysdeps/unix/alpha/sysdep.h: Likewise.
8808         * sysdeps/unix/sparc/sysdep.h: Likewise.
8809         * sysdeps/unix/sysv/linux/arm/sysdep.h: Likewise.
8810         * sysdeps/unix/sysv/linux/cris/sysdep.h: Likewise.
8811         * sysdeps/unix/sysv/linux/hppa/sysdep.h: Likewise.
8812         * sysdeps/unix/sysv/linux/i386/sysdep.h: Likewise.
8813         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Likewise.
8814         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Likewise.
8815         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Likewise.
8816         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise.
8817         * sysdeps/unix/sysv/linux/sh/sysdep.h: Likewise.
8818         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Likewise.
8819         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
8821 2003-03-23  Roland McGrath  <roland@redhat.com>
8823         * Makeconfig (+includes): Don't use $(last-includes).
8825 2003-03-22  Alexandre Oliva  <aoliva@redhat.com>
8827         * sysdeps/unix/sysv/linux/configure.in: Update mips64 patterns.
8828         * sysdeps/unix/sysv/linux/configure: Rebuilt.
8830 2003-03-23  Jakub Jelinek  <jakub@redhat.com>
8832         * sysdeps/alpha/fpu/libm-test-ulps: Update.
8833         * sysdeps/arm/libm-test-ulps: Update.
8834         * sysdeps/hppa/fpu/libm-test-ulps: Update.
8835         * sysdeps/ia64/fpu/libm-test-ulps: Update.
8836         * sysdeps/mips/fpu/libm-test-ulps: Update.
8837         * sysdeps/powerpc/nofpu/libm-test-ulps: Update.
8838         * sysdeps/powerpc/fpu/libm-test-ulps: Update.
8839         * sysdeps/sparc/sparc32/fpu/libm-test-ulps: Update.
8840         * sysdeps/sparc/sparc64/fpu/libm-test-ulps: Update.
8841         * sysdeps/sh/sh4/fpu/libm-test-ulps: Update.
8842         * sysdeps/s390/fpu/libm-test-ulps: Update.
8843         * sysdeps/x86_64/fpu/libm-test-ulps: Update.
8845 2003-03-22  Roland McGrath  <roland@redhat.com>
8847         * include/atomic.h: Put parens around all macro arguments.
8848         (__atomic_val_bysize, __atomic_bool_bysize): New macros.
8849         (atomic_compare_and_exchange_val_acq): Use it.
8850         (atomic_compare_and_exchange_bool_acq): Likewise.
8851         (atomic_increment_and_test): Invert sense of test.
8852         (atomic_decrement_and_test): Likewise.
8853         * csu/tst-atomic.c: Update those tests to match.
8855 2003-03-22  Jakub Jelinek  <jakub@redhat.com>
8857         * include/atomic.h (atomic_compare_and_exchange_val_acq): Add comment.
8858         Don't define if __arch_compare_and_exchange_val_32_acq is not defined.
8859         (atomic_compare_and_exchange_bool_acq): Add comment.  Don't use
8860         __oldval variable in the macro, since it might be macro argument.
8861         (atomic_decrement_if_positive): Initialize __memp, remove setting
8862         of non-existent variable.
8863         (atomic_bit_test_set): Cast 1 to __typeof (*mem) before shifting.
8864         * sysdeps/ia64/bits/atomic.h (atomic_exchange_and_add): Implement
8865         using atomic_compare_and_exchange_val_acq.
8866         (atomic_decrement_if_positive, atomic_bit_test_set): Define.
8867         * sysdeps/s390/bits/atomic.h (__arch_compare_and_exchange_val_8_acq):
8868         Renamed from...
8869         (__arch_compare_and_exchange_bool_8_acq): ... this.
8870         (__arch_compare_and_exchange_val_16_acq): Renamed from...
8871         (__arch_compare_and_exchange_bool_16_acq): ... this.
8872         (__arch_compare_and_exchange_val_32_acq): Return old value.  Renamed
8873         from...
8874         (__arch_compare_and_exchange_bool_32_acq): ... this.
8875         (__arch_compare_and_exchange_val_64_acq): Return old value.  Renamed
8876         from...
8877         (__arch_compare_and_exchange_bool_64_acq): ... this.
8878         (__arch_compare_and_exchange_val_32_acq): Use __typeof for local
8879         variables types instead of assuming int.
8880         Change prefix of local variables to __arch.
8881         * sysdeps/generic/bits/atomic.h (arch_compare_and_exchange_acq):
8882         Remove.
8883         (atomic_compare_and_exchange_val_acq,
8884         atomic_compare_and_exchange_bool_acq): Define.
8886         * csu/tst-atomic.c: New test.
8887         * csu/tst-atomic-long.c: New test.
8888         * csu/Makefile (tests): Add tst-atomic and tst-atomic-long.
8890         * malloc/memusagestat.c (main): Kill warning if uint64_t is ulong.
8892         * sysdeps/s390/Versions: Add trailing newline.
8894         * sysdeps/unix/sysv/linux/sysconf.c (__sysconf): Kill warning
8895         if INTERNAL_SYSCALL_ERROR_P doesn't use its first argument.
8897 2003-03-22  Andreas Schwab  <schwab@suse.de>
8899         * sysdeps/m68k/fpu/libm-test-ulps: Update.
8901         * sysdeps/m68k/m68020/bits/atomic.h: New file.
8902         * sysdeps/m68k/m68020/atomicity.h: Removed.
8904 2003-03-22  Alexandre Oliva  <aoliva@redhat.com>
8906         * sysdeps/mips/elf/ldsodefs.h: Add mips-specific elf64 relocation
8907         data structures and macros.  Protect from multiple inclusion.
8909         * sysdeps/mips/dl-machine.h (ELF_MIPS_GNU_GOT1_MASK): Fix harmless
8910         typo in #if test.
8912 2003-03-21  Andreas Jaeger  <aj@suse.de>
8914         * sysdeps/i386/fpu/libm-test-ulps: Update.
8916         * math/libm-test.inc (tgamma_test): Recompute some constants with
8917         36 digits precision.
8918         (lgamma_test): Likewise.
8919         (ccos_test): Likewise.
8920         (ccosh_test): Likewise.
8921         (clog10_test): Likewise.
8922         (csin_test): Likewise.
8923         (csinh_test): Likewise.
8924         (ctan_test): Likewise.
8925         (ctanh_test): Likewise.
8927 2003-03-19  Jakub Jelinek  <jakub@redhat.com>
8929         * sysdeps/sparc/sparc64/fpu/libm-test-ulps: Regenerated.
8931 2003-03-21  Roland McGrath  <roland@redhat.com>
8933         * sysdeps/i386/i486/bits/atomic.h (atomic_bit_set): Use "ir"
8934         constraint to permit non-constant BIT argument.
8935         (atomic_bit_test_set): Likewise.
8936         * sysdeps/x86_64/bits/atomic.h (atomic_bit_test_set): Likewise.
8937         (atomic_bit_set): Likewise.  Use 1UL in case that BIT might be >= 32.
8938         For quadword case, use "i" constraint if __builtin_constant_p and < 32
8939         or "r" constraint otherwise.
8941         * configure.in: Move AC_PROG_CC and other program-finding before all
8942         the version checks.
8943         * configure: Regenerated.
8945 2003-03-21  Alexandre Oliva  <aoliva@redhat.com>
8947         * sysdeps/mips/mips64/memcpy.S: Fix porting bug that broke
8948         unaligned copying of 8-15 bytes.  From Chris Demetriou
8949         <cgd@broadcom.com>.  Fix label names.
8950         * sysdeps/mips/mips64/memset.S: Fix label names.  Make similar
8951         change as to memcpy.S.
8952         * sysdeps/mips/memcpy.S: Formatting changes.
8953         * sysdeps/mips/memset.S: Likewise.
8955 2003-03-21  Roland McGrath  <roland@redhat.com>
8957         * sysdeps/arm/sysdep.h (CALL_MCOUNT): Add trailing semicolon.
8959 2003-03-21  Alexandre Oliva  <aoliva@redhat.com>
8961         * sysdeps/mips/mips64/memcpy.S, sysdeps/mips/mips64/memset.S: New.
8962         * sysdeps/mips/memcpy.S, sysdeps/mips/memset.S: Update comments.
8964 2003-03-21  Roland McGrath  <roland@redhat.com>
8966         * sysdeps/i386/i486/bits/atomic.h
8967         (__arch_compare_and_exchange_val_64_acq): Rewrite abort-calling
8968         version of the macro to avoid compile-time warnings.
8969         [! __PIC__] (__arch_compare_and_exchange_64_acq): Rename to above.
8970         (atomic_exchange_and_add, atomic_add): Fix name and usage of it.
8971         (atomic_increment, atomic_decrement): Likewise.
8973 2003-03-21  Ulrich Drepper  <drepper@redhat.com>
8975         * sysdeps/x86_64/bits/atomic.h: Don't use matching memory constraints.
8976         * sysdeps/i386/i486/bits/atomic.h: Likewise.
8978 2003-03-21  Roland McGrath  <roland@redhat.com>
8980         * include/atomic.h (atomic_compare_and_exchange_bool_acq): Typo fix.
8982 2003-03-20  Ulrich Drepper  <drepper@redhat.com>
8984         * include/atomic.h: Define atomic_compare_and_exchange_val_acq,
8985         atomic_compare_and_exchange_val_rel,
8986         atomic_compare_and_exchange_bool_acq, and
8987         atomic_compare_and_exchange_bool_rel instead of
8988         atomic_compare_and_exchange_acq and atomic_compare_and_exchange_rel.
8989         * sysdeps/i386/i486/bits/atomic.h: Define
8990         __arch_compare_and_exchange_val_*_acq instead of
8991         __arch_compare_and_exchange_*_acq.
8992         * sysdeps/x86_64/bits/atomic.h: Likewise.
8993         * sysdeps/ia64/bits/atomic.h: Define
8994         __arch_compare_and_exchange_bool_*_acq instead of
8995         __arch_compare_and_exchange_*_acq.
8996         * sysdeps/powerpc/bits/atomic.h: Likewise.
8997         * sysdeps/s390/bits/atomic.h: Likewise.
8998         * gmon/mcount.c: Adjust for new form of compare&exchange macros.
8999         * malloc/set-freeres.c: Likewise.
9000         * nscd/cache.c: Likewise.
9001         * stdlib/cxa_finalize.c: Likewise.
9002         * sysdeps/unix/sysv/linux/getsysstats.c: Likewise.
9004 2003-03-20  Alexandre Oliva  <aoliva@redhat.com>
9006         * sysdeps/mips/bits/setjmp.h: n32 has only 6 call-saved fpregs.
9007         * sysdeps/mips/mips64/setjmp_aux.c (__sigsetjmp_aux): Adjust.
9008         * sysdeps/mips/mips64/__longjmp.c (__longjmp): Likewise.
9010         * sysdeps/unix/sysv/linux/mips/pread.c: Don't break up offset
9011         into high and low halves on n64.
9012         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
9013         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
9014         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
9016 2003-03-20  Ulrich Drepper  <drepper@redhat.com>
9018         * include/atomic.h (atomic_decrement_if_positive): Adjust for the
9019         correct atomic_compare_and_exchange_acq semantics.
9021 2003-03-20  Alexandre Oliva  <aoliva@redhat.com>
9023         * sysdeps/mips/ieee754.h: Remove excess #endif.
9025 2003-03-20  Roland McGrath  <roland@redhat.com>
9027         * sysdeps/powerpc/bits/atomic.h (atomic_exchange): Remove unused
9028         variable.  Remove superfluous memory clobber.
9030         * include/atomic.h: Syntax braino fix.
9032         * posix/tst-nice.c (do_test): Use %m formats instead of printing errno
9033         in decimal.  Don't bail if niced at start.  Just check that nice call
9034         bumps the total at all.
9036 2003-03-20  Alexandre Oliva  <aoliva@redhat.com>
9038         * sysdeps/mips/bits/setjmp.h: Store all N32 and N64 registers,
9039         including pc, gp, sp and fp, as long long.
9040         * sysdeps/mips/mips64/setjmp.S: Pass gp to __sigsetjmp_aux.
9041         * sysdeps/mips/mips64/setjmp_aux.c: Adjust type of arguments.
9042         Add gp argument, and set gp in the jmpbuf to it.
9043         * sysdeps/mips/setjmp_aux.c: Revert to o32-only.
9045 2003-03-20  Ulrich Drepper  <drepper@redhat.com>
9047         * include/atomic.h: Define atomic_exchange and
9048         atomic_decrement_if_positive if not already defined.  Add some
9049         __builtin_expect.
9050         * sysdeps/i386/i486/bits/atomic.h: Define atomic_exchange.
9051         * sysdeps/x86_64/bits/atomic.h: Likewise.
9052         * sysdeps/ia64/bits/atomic.h: Pretty printing.  Define atomic_exchange.
9053         * sysdeps/powerpc/bits/atomic.h: Pretty printing.  Define
9054         atomic_exchange, atomic_exchange_and_add, and
9055         atomic_decrement_if_positive
9057 2003-03-20  Alexandre Oliva  <aoliva@redhat.com>
9059         * sysdeps/unix/sysv/linux/mips/mips64/n64/ioctl.S: Sign-extend
9060         with a single instruction.
9062         * sysdeps/mips/dl-machine.h (ELF_MIPS_GNU_GOT1_MASK): Define
9063         properly for n64.
9064         (elf_machine_runtime_setup): Cast link_map pointer to Elf Addr
9065         type.
9066         (elf_machine_rel, elf_machine_rel_relative): Cast symidx to Elf
9067         Word before comparing with gotsym.  Take reloc_addr argument as
9068         void*.  Remove the code added for the compiler to drop any
9069         alignment assumptions.
9071 2003-03-19  Ulrich Drepper  <drepper@redhat.com>
9073         * Makefile (distribute): Add include/atomic.h and bits/atomic.h.
9074         * include/atomic.h: New file.
9075         * sysdeps/i386/i486/bits/atomic.h: New file.
9076         * sysdeps/x86_64/bits/atomic.h: New file.
9077         * sysdeps/s390/bits/atomic.h: New file.
9078         * sysdeps/sh/bits/atomic.h: New file.
9079         * sysdeps/ia64/bits/atomic.h: New file.
9080         * sysdeps/powerpc/bits/atomic.h: New file.
9081         * sysdeps/generic/bits/atomic.h: New file.
9082         * sysdeps/i386/i486/atomicity.h: Removed.
9083         * sysdeps/x86_64/atomicity.h: Removed.
9084         * sysdeps/s390/s390-32/atomicity.h: Removed.
9085         * sysdeps/s390/s390-64/atomicity.h: Removed.
9086         * sysdeps/ia64/atomicity.h: Removed.
9087         * sysdeps/powerpc/powerpc32/atomicity.h: Removed.
9088         * sysdeps/powerpc/powerpc64/atomicity.h: Removed.
9089         * elf/dl-profile.c: Use atomic.h instead of atomicity.h.  Adjust
9090         use of macros from atomicity.h to new names and semantics.
9091         * gmon_mcount.c: Likewise.
9092         * malloc/set-freeres.c: Likewise.
9093         * nscd/cache.c: Likewise.
9094         * stdlib/cxa_finalize.c: Likewise.
9095         * sysdeps/unix/sysv/linux/getsysstats.c: Likewise.
9097 2003-03-19  Alexandre Oliva  <aoliva@redhat.com>
9099         * sysdeps/mips/ieee754.h: New file, suitable to replace both
9100         ../ieee754/ieee754.h and ../ieee754/ldbl-128/ieee754.h, kept
9101         mips-specific for now.
9103 2003-03-19  Ulrich Drepper  <drepper@redhat.com>
9105         * stdlib/strtod.c (INTERNAL): While eating trailing zeros handle
9106         hexdigits correctly.  Reported by Fred Tydeman <tydeman@tybor.com>.
9107         * stdlib/tst-strtod.c: Add test for the bug.
9109         * posix/tst-nice.c (do_test): Remove invalid of return value.
9110         Don't run test if initial level != 0.
9112 2003-03-19  Amos Waterland  <apw@us.ibm.com>
9114         * posix/tst-nice.c: New file.
9115         * posix/Makefile (tests): Add tst-nice.
9117 2003-03-18  Roland McGrath  <roland@redhat.com>
9119         * abilist: New directory of libfoo.abilist files maintained using
9120         scripts/merge-abilist.awk and "make update-abi" rules.
9121         * Makefile (distribute): Add abilist/*.abilist.
9122         * Makerules [$(build-shared) = yes] [$(subdir)] (tests):
9123         Depend on check-abi.
9125         * configure.in: Move $critic_missing check after all AC_CHECK_PROG_VER.
9126         * configure: Regenerated.
9128         * sysdeps/unix/sysv/linux/syscalls.list (posix_fadvise64): Fix name.
9130 2003-03-18  Ulrich Drepper  <drepper@redhat.com>
9132         * sysdeps/posix/sysconf.c (__sysconf): Handle _SC_MONOTONIC_CLOCK
9133         correctly.
9135 2003-03-18  Steven Munroe  <sjmunroe@us.ibm.com>
9137         * sysdeps/powerpc/powerpc64/memcpy.S: New file.
9139 2003-03-18  Ulrich Drepper  <drepper@redhat.com>
9141         * Versions.def: Add GLIBC_2.3.3 for libpthread.
9143 2003-03-17  Ulrich Drepper  <drepper@redhat.com>
9145         * sysdeps/generic/libc-start.c [!SHARED &&
9146         !LIBC_START_MAIN_AUXVEC_ARG]: Compute beginning of auxvec correctly.
9148 2003-03-17  Roland McGrath  <roland@redhat.com>
9150         * include/ctype.h: Revert last change.
9152 2003-03-17  Ulrich Drepper  <drepper@redhat.com>
9154         * argp/tst-argp1.c: Use test-skeleton.c.
9155         * locale/tst-C-locale.c: Likewise.
9157 2003-03-17  Alexandre Oliva  <aoliva@redhat.com>
9159         * sysdeps/mips/mips64/Implies: Move wordsize-64 to...
9160         * sysdeps/mips/mips64/n64/Implies: New file.
9161         * sysdeps/mips/mips64/n64/Makefile: New file.
9162         * sysdeps/mips/mips64/n64/el/bits/endian.h: New file.
9163         * sysdeps/mips/mips64/n32/Implies: New file.
9164         * sysdeps/mips/mips64/n32/Makefile: New file.
9165         * sysdeps/mips/mips64/n32/el/bits/endian.h: New file.
9166         * sysdeps/unix/mips/mips64/n32/sysdep.h: New file.
9167         * sysdeps/unix/mips/mips64/n64/sysdep.h: New file.
9168         * sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h: New file.
9169         * sysdeps/unix/sysv/linux/mips/mips64/n64/glob64.c: New file.
9170         * sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h: New file.
9171         * sysdeps/unix/sysv/linux/mips/mips64/ldconfig.h: New file.
9172         * sysdeps/unix/sysv/linux/mips/mips64/llseek.c: New file.
9173         * sysdeps/unix/sysv/linux/mips/mips64/recv.c: New file.
9174         * sysdeps/unix/sysv/linux/mips/mips64/send.c: New file.
9175         * sysdeps/unix/sysv/linux/mips/mips64/syscall.S: New file.
9176         * sysdeps/unix/sysv/linux/mips/mips64/syscalls.list: New file.
9177         * sysdeps/unix/sysv/linux/mips/mips64/umount.c: New file.
9178         * sysdeps/unix/sysv/linux/mips/mips64/n64/ioctl.S: New file.
9180         * sysdeps/unix/sysv/linux/configure.in (libc_cv_slibdir): Use
9181         lib64 for mips64/n64 and lib32 for mips64/n32.
9182         (ldd_rewrite_script): Needed for all mips64 configurations.
9183         * sysdeps/unix/sysv/linux/configure: Rebuilt.
9184         * sysdeps/unix/sysv/linux/mips/mips64/ldd-rewrite.sed: New file.
9185         * sysdeps/unix/sysv/linux/mips/mips64/Dist: New file.
9187         * sysdeps/mips/machine-gmon.h (MCOUNT): Define for N32 and N64 as
9188         well.
9190         * sysdeps/unix/sysv/linux/mips/configure.in: New.  Pre-process
9191         asm/unistd.h into asm-unistd.h.
9192         * sysdeps/unix/sysv/linux/mips/configure: Generated.
9193         * sysdeps/unix/sysv/linux/mips/Makefile: Do custom processing
9194         of syscall list.
9195         * sysdeps/unix/sysv/linux/mips/sys/syscall.h: New file.
9196         * sysdeps/unix/sysv/linux/mips/clone.S: Don't include
9197         asm/unistd.h.
9199         * sysdeps/unix/sysv/linux/mips/sys/ptrace.h: New file.
9200         * sysdeps/unix/sysv/linux/mips/ptrace.c: New file.  Use long
9201         long type for registers on n32.
9203         * sysdeps/mips/bits/wordsize.h: New file, appropriate for all
9204         3 ABIs.
9205         * sysdeps/mips/mips64/gmp-mparam.h: New file.  Define
9206         BITS_PER_LONGINT to __WORDSIZE, to match all 3 ABIs.
9207         * sysdeps/mips/setjmp_aux.c (STRINGXP, REGS, PTRS): New macros.
9208         (__sigsetjmp_aux): Use them.  Adjust for all 3 ABIs.
9209         * sysdeps/mips/elf/start.S: Adjust for all 3 ABIs.
9210         * sysdeps/unix/mips/brk.S: Likewise.
9211         * sysdeps/unix/mips/sysdep.S: Likewise.
9212         * sysdeps/unix/sysv/linux/mips/clone.S: Likewise.
9213         * sysdeps/mips/bits/setjmp.h (__jmp_buf): Likewise.
9214         * sysdeps/mips/sys/ucontext.h: Likewise.
9215         * sysdeps/unix/sysv/linux/mips/sys/profcs.h: Likewise.
9216         * sysdeps/unix/sysv/linux/mips/sys/ucontext.h: Likewise.
9217         * sysdeps/unix/sysv/linux/mips/kernel_stat.h: Likewise.
9218         * sysdeps/mips/mips64/bsd-_setjmp.S: Likewise.
9219         * sysdeps/mips/mips64/bsd-setjmp.S: Likewise.
9220         * sysdeps/mips/mips64/setjmp.S: Likewise.
9221         * sysdeps/mips/mips64/bits/setjmp.h: Deleted, obsolete.
9222         * sysdeps/mips/mips64/soft-fp/sfp-machine.h: Use long long for
9223         64-bit types.
9225 2003-03-16  Ulrich Drepper  <drepper@redhat.com>
9227         * sysdeps/unix/clock_settime.c (HANDLE_REALTIME): Define tv here,
9228         not at function level.
9229         * sysdeps/unix/clock_gettime.c (HANDLE_REALTIME): Likewise.
9231 2003-03-15  Roland McGrath  <roland@redhat.com>
9233         * nis/nss_nis/nis-hosts.c (internal_gethostbyname2_r): int -> size_t
9234         * nis/nss_nis/nis-network.c (_nss_nis_getnetbyname_r): Likewise.
9235         * nis/nss_nis/nis-alias.c (_nss_nis_getaliasbyname_r): Likewise.
9236         * nis/nis_table.c (__create_ib_request): Likewise.
9238         * posix/fnmatch_loop.c: Add casts for signedness.
9239         * nss/nss_files/files-hosts.c: Likewise.
9240         * nscd/nscd_getpw_r.c (nscd_getpw_r): Likewise.
9241         * gmon/gmon.c (write_call_graph): Use u_long for FROM_LEN.
9242         * nscd/nscd_getgr_r.c (nscd_getgr_r): Use nscd_ssize_t for CNT.
9244         * configure.in (libc_cv_visibility_attribute): Use AC_TRY_COMMAND,
9245         get errors into the log file.
9246         (libc_cv_broken_visibility_attribute): Likewise.
9247         (libc_cv_broken_alias_attribute): Likewise.
9248         (libc_cv_asm_weak_directive): Likewise.
9249         (libc_cv_need_minus_P): Likewise.
9250         (libc_cv_dot_text): Likewise.
9251         (libc_cv_asm_global_directive): Likewise.
9252         (libc_cv_asm_type_prefix): Likewise.
9253         * configure: Regenerated.
9255         * nscd/cache.c (cache_search): Give first arg type `request_type'.
9256         * nscd/nscd.h: Update decl.
9258         * nscd/nscd_getpw_r.c (nscd_getpw_r): Add casts for signedness.
9259         * nscd/nscd_getgr_r.c (nscd_getgr_r): Likewise.
9260         * elf/dl-close.c (_dl_close): Likewise.
9261         * sysdeps/unix/sysv/linux/powerpc/chown.c (__chown): int -> size_t
9262         * io/fts.c (fts_build): Likewise.
9263         * elf/cache.c (add_to_cache): Likewise.
9264         * locale/programs/locarchive.c (show_archive_content): Likewise.
9266         * posix/fnmatch.c (fnmatch): Tweak __builtin_expect use.
9268         * include/ctype.h (__ctype_b_loc): Tweak type punning to make gcc 3.3
9269         happy.
9270         (__ctype_toupper_loc, __ctype_tolower_loc): Likewise.
9272 2003-03-15  Ulrich Drepper  <drepper@redhat.com>
9274         * sysdeps/unix/sysv/linux/ia64/system.c: Use the generic Linux
9275         code for most parts.
9277 2003-03-15  Roland McGrath  <roland@redhat.com>
9279         * sysdeps/unix/sysv/linux/i386/system.c: Moved to ...
9280         * sysdeps/unix/sysv/linux/system.c: ... here.
9281         (FORK): Don't #define if already #define'd.
9282         * sysdeps/unix/sysv/linux/s390/system.c: File removed.
9283         * sysdeps/unix/sysv/linux/kernel-features.h [__powerpc__]:
9284         (__ASSUME_CLONE_THREAD_FLAGS): Define for kernel >= 2.5.64.
9286         * dlfcn/tst-dlinfo.c: New file.
9287         * dlfcn/Makefile (tests): Add tst-dlinfo.
9288         ($(objpfx)tst-dlinfo): New target.
9290         * dlfcn/dlinfo.c: New file.
9291         * dlfcn/Makefile (libdl-routines): Add it.
9292         * dlfcn/Versions (libdl: GLIBC_2.3.3): Add dlinfo.
9293         * dlfcn/dlfcn.h [__USE_GNU]: Declare dlinfo.
9294         [__USE_GNU] (RTLD_DI_*): New enum constants.
9295         [__USE_GNU] (Dl_serpath, Dl_serinfo): New types.
9296         * elf/dl-load.c (cache_rpath): New inline function.
9297         (_dl_map_object): Use it.
9298         (_dl_rtld_di_serinfo): New function.
9299         * sysdeps/generic/ldsodefs.h: Declare it.
9300         * elf/Versions (ld: GLIBC_PRIVATE): Add it.
9302         * sysdeps/powerpc/elf/libc-start.c (AUX_VECTOR_INIT): Define it.
9303         (LIBC_START_MAIN, LIBC_START_MAIN_AUXVEC_ARG, MAIN_AUXVEC_ARG)
9304         (INIT_MAIN_ARGS): Define, and #include <sysdeps/generic/libc-start.c>.
9305         (__libc_start_main): Just call the generic one for most of the work.
9307         * sysdeps/generic/libc-start.c [LIBC_START_MAIN]: If defined, define a
9308         static function by that name instead of BP_SYM (__libc_start_main).
9309         [LIBC_START_MAIN_AUXVEC_ARG]: Take AUXVEC as argument.
9310         [MAIN_AUXVEC_ARG]: Pass 4th argument to MAIN.
9311         [INIT_MAIN_ARGS]: Give INIT the same args as MAIN.
9313         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start) [DL_PLATFORM_AUXV]:
9314         Use this macro for extra AT_* cases.
9315         * sysdeps/unix/sysv/linux/powerpc/dl-sysdep.c (DL_PLATFORM_AUXV):
9316         New macro, guts from ...
9317         (__aux_init_cache): ... here, function removed.
9318         (DL_PLATFORM_INIT): Don't define this.
9320         * sysdeps/powerpc/powerpc32/memset.S: Put __cache_line_size in bss.
9321         * sysdeps/powerpc/powerpc64/memset.S: Likewise.
9323         * Versions.def (libthread_db): Add GLIBC_2.3.3 set.
9325 2003-03-14  Roland McGrath  <roland@redhat.com>
9327         * dlfcn/dlerror.c (dlerror): If objname is "", don't put ": " after it.
9329 2003-03-14  Jakub Jelinek  <jakub@redhat.com>
9331         * sysdeps/unix/sysv/linux/Makefile (syscall-%.h): Fix a typo.
9333         * sysdeps/unix/sysv/linux/sparc/sparc64/pause.c: Include
9334         sysdeps/posix/pause.c instead of sysdeps/unix/common/pause.c.
9336 2003-03-14  Alexandre Oliva  <aoliva@redhat.com>
9338         * sysdeps/mips/fpu/bits/mathdef.h: New.
9339         (__NO_LONG_DOUBLE_MATH): Define for o32.
9341         * sysdeps/mips/sys/asm.h: Formatting changes.
9342         (PTR, PTRSIZE, PTRLOG): Adjust for all 3 ABIs.
9343         (CPADD): Define for all of them.
9344         (SETUP_GP, SETUP_GPX, SETUP_GPX_L, SAVE_GP, SETUP_GP64,
9345         SETUP_GPX64, SETUP_GPX64_L, RESTORE_GP64, USE_ALT_CP,
9346         NARGSAVE): Define per ABI spec.
9347         (END): Don't redefine.
9348         (LONG_SLL, LONG_SLLV, LONG_SRL, LONG_SRLV, LONG_SRA,
9349         LONG_SRAV): Remove duplicate definitions.
9350         (PTR_ADD, PTR_ADDI, PTR_ADDU, PTR_ADDIU, PTR_SUB, PTR_SUBI,
9351         PTR_SUBU, PTR_SUBIU, PTR_L, PTR_S, PTR_SLL, PTR_SLLV, PTR_SRL,
9352         PTR_SRLV, PTR_SRA, PTR_SRAV, PTR_SCALESHIFT): Define for n32.
9353         (PTR_LA): Define for all 3 ABIs.
9355         * sysdeps/mips/dl-machine.h: Include sys/asm.h.
9356         (elf_machine_matches_host): Prevent linking of o32 and n32
9357         together.
9358         (elf_machine_dynamic): Document assumption on $gp.
9359         (STRINGXP, STRINGXV, STRINGV_): New macros.
9360         (elf_machine_load_address): Use them to stringize PTR_LA and
9361         PTR_SUBU.
9362         (ELF_DL_FRAME_SIZE, ELF_DL_SAVE_ARG_REGS,
9363         ELF_DL_RESTORE_ARG_REGS, IFABIO32): New macros used in...
9364         (_dl_runtime_resolve): Adjust it for all 3 ABIs.
9365         (__dl_runtime_resolve): Cast the symtab initializer to the
9366         right type.
9367         (RTLD_START): Use it.  Adjust it for all 3 ABIs.
9368         (elf_machine_rel): Mark as always_inline in RTLD_BOOTSTRAP.
9369         Handle 64-bit R_MIPS_REL composite relocation and accept
9370         R_MIPS_64 relocations to shift addend size to 64 bits.
9371         Document assumption regarding local GOT entries.  Document
9372         backward-compatibility departing from the ABI behavior in
9373         applying relocations that reference section symbols, no longer
9374         used.  Support relocations to mis-aligned offsets.
9375         * sysdeps/mips/mips64/dl-machine.h: Deleted, obsolete.
9377         * sysdeps/unix/sysv/linux/mips/readelflib.c: New file.
9379         * sysdeps/unix/sysv/linux/mips/kernel_sigaction.h
9380         (_KERNEL_NSIG_BPW): Define in terms of _MIPS_SZLONG.
9381         * sysdeps/unix/sysv/linux/mips/sigaction.c: Define restore and
9382         restore_rt functions.  Use them.
9384         * sysdeps/unix/sysv/linux/mips/sys/tas.h (_test_and_set): Don't
9385         .set mips2 on new abis.
9387 2003-03-13  Ulrich Drepper  <drepper@redhat.com>
9389         * posix/getconf.c: Recognize POSIX2_SYMLINKS.
9390         * sysdeps/generic/bits/confname.h: Define _PC_2_SYMLINKS.
9391         * sysdeps/posix/fpathconf.c: Handle _PC_2_SYMLINKS.
9392         * sysdeps/posix/pathconf.c: Likewise.
9393         * sysdeps/unix/sysv/linux/fpathconf.c: Likewise.
9394         * sysdeps/unix/sysv/linux/pathconf.c: Likewise.
9395         * sysdeps/unix/sysv/linux/pathconf.h: Define statfs_symlinks.
9397         * sysdeps/unix/sysv/linux/linux_fsinfo.h: Define some more magic
9398         words.
9400 2003-03-14  Alexandre Oliva  <aoliva@redhat.com>
9402         * include/gmp.h: Include/gmp-mparam.h.
9403         * stdlib/strtod.c: Include gmp-mparam.h before gmp.h and
9404         gmp-impl.h.
9406         * elf/dl-conflict.c: Don't compile _dl_resolve_conflicts if
9407         ELF_MACHINE_NO_RELA is set.
9408         * elf/rtld.c (dl_main): No prelink support for REL-only.
9410         * sysdeps/generic/ldconfig.h (FLAG_MIPS64_LIBN32,
9411         FLAG_MIPS64_LIBN64): Define.
9412         * elf/cache.c (print_entry): Handle mips64 n32 and n64.
9414         * sysdeps/mips/memcpy.S: Map t0-3 to a4-7 on new abis.
9415         * sysdeps/mips/memset.S: Likewise.
9416         * sysdeps/mips/sys/regdef.h: Alias a4-7 or t0-3 to $8-11
9417         depending on the ABI.
9419         * sysdeps/mips/atomicity.h (exchange_and_add, atomic_add):
9420         Don't .set mips2 on new abi.
9421         (compare_and_swap): Likewise.  Support 64-bit longs on n64.
9423         * stdlib/fpioconst.h: Include gmp.h with angle brackets.
9425 2003-03-13  Roland McGrath  <roland@redhat.com>
9427         * elf/dl-load.c (_dl_map_object_from_fd): Bail if no PT_LOAD phdrs
9428         found.  Reported by Alexandre Oliva <aoliva@redhat.com>.
9430 2003-03-13  Alexandre Oliva  <aoliva@redhat.com>
9432         * stdio-common/_itoa.c (_itoa_base_table): Make 64-bit
9433         literals long long.
9434         * stdlib/fpioconst.c: Likewise.
9435         * stdlib/strtod.c: Likewise.
9437         * sysdeps/mips/add_n.S: Use L macro for local labels.
9438         * sysdeps/mips/addmul_1.S: Likewise.
9439         * sysdeps/mips/lshift.S: Likewise.
9440         * sysdeps/mips/memcpy.S: Likewise.
9441         * sysdeps/mips/memset.S: Likewise.
9442         * sysdeps/mips/mul_1.S: Likewise.
9443         * sysdeps/mips/rshift.S: Likewise.
9444         * sysdeps/mips/sub_n.S: Likewise.
9445         * sysdeps/mips/submul_1.S: Likewise.
9446         * sysdeps/mips/mips64/add_n.S: Likewise.
9447         * sysdeps/mips/mips64/addmul_1.S: Likewise.
9448         * sysdeps/mips/mips64/lshift.S: Likewise.
9449         * sysdeps/mips/mips64/mul_1.S: Likewise.
9450         * sysdeps/mips/mips64/rshift.S: Likewise.
9451         * sysdeps/mips/mips64/sub_n.S: Likewise.
9452         * sysdeps/mips/mips64/submul_1.S: Likewise.
9453         * sysdeps/unix/mips/sysdep.h: Define L() according to ABI
9454         conventions.  Define END as in sys/asm.h.
9455         * sysdeps/unix/mips/sysdep.S: Likewise.
9456         * sysdeps/unix/mips/wait.S: Likewise.
9457         * sysdeps/unix/sysv/linux/mips/clone.S: Likewise.
9459         * sysdeps/ieee754/dbl-64/dbl2mpn.c (__mpn_extract_double):
9460         Cast shifted values that may be too narrow to mp_limb_t.
9461         * sysdeps/ieee754/dbl-64/mpn2dbl.c (__mpn_construct_double):
9462         Likewise.
9463         * sysdeps/ieee754/flt-32/mpn2flt.c (__mpn_construct_float):
9464         Likewise.
9465         * sysdeps/ieee754/ldbl-128/ldbl2mpn.c
9466         (__mpn_extract_long_double): Likewise.
9467         * sysdeps/ieee754/ldbl-128/mpn2ldbl.c
9468         (__mpn_construct_long_double): Likewise.
9469         * sysdeps/ieee754/ldbl-96/ldbl2mpn.c
9470         (__mpn_extract_long_double): Likewise.
9471         * sysdeps/ieee754/ldbl-96/mpn2ldbl.c
9472         (__mpn_construct_long_double): Likewise.
9474 2003-03-13  Roland McGrath  <roland@redhat.com>
9476         * elf/Makefile ($(objpfx)librtld.mk): Tweak regexp so that one-line
9477         entries in the map file match too.
9479 2003-03-13  Guido Guenther  <agx@sigxcpu.org>
9481         * sysdeps/unix/sysv/linux/mips/clone.S: introduce and use local
9482         label .Lthread_start since current binutils don't allow branches
9483         to globally visible symbols.
9485 2003-03-13  Jakub Jelinek  <jakub@redhat.com>
9487         * sysdeps/unix/sysv/linux/ia64/sysdep.h (BREAK_INSN_1, BREAK_INSN,
9488         ASM_OUTARGS_0, ASM_OUTARGS_1, ASM_OUTARGS_2, ASM_OUTARGS_3,
9489         ASM_OUTARGS_4, ASM_OUTARGS_5, ASM_OUTARGS_6): Define.
9490         (INTERNAL_SYSCALL, INLINE_SYSCALL): Use it.  Make syscall arguments
9491         clobbered by the syscall.
9492         (ASM_ARGS_1, ASM_ARGS_2, ASM_ARGS_3, ASM_ARGS_4, ASM_ARGS_5,
9493         ASM_ARGS_6): Change constraints from r to index of corresponding
9494         output register.
9495         * sysdeps/unix/sysv/linux/ia64/clone2.S (__clone2): Swap
9496         ptid and ctid to match kernel.
9497         * sysdeps/unix/sysv/linux/ia64/system.c (FORK): Likewise.
9499 2003-03-12  Steven Munroe  <sjmunroe@us.ibm.com>
9501         * sysdeps/powerpc/powerpc64/elf/configure.in: Remove
9502         AC_DEFINE(PI_STATIC_AND_HIDDEN).  Not supported for PowerPC64.
9503         * sysdeps/powerpc/powerpc64/elf/configure: Regenerated.
9505 2003-03-11  Roland McGrath  <roland@redhat.com>
9507         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela):
9508         Check SYM_MAP rather than SYM as definedness check.
9509         Handle R_PPC64_ADDR32, R_PPC64_ADDR30, and R_PPC64_REL64 relocs.
9510         Don't handle R_PPC64_REL24 reloc.
9511         Mostly from Steven Munroe <sjmunroe@us.ibm.com>.
9513         * sysdeps/powerpc/powerpc64/dl-machine.h
9514         [USE_TLS] (elf_machine_type_class): Match all the TLS relocs in a
9515         block, so we cover all the TPREL16* flavors without 6 ||s.
9516         [USE_TLS] (elf_machine_tprel): New function.
9517         (elf_machine_rela) [USE_TLS]: Use elf_machine_tprel for TPREL64 reloc,
9518         and handle TPREL16 relocs too.  Return rather than break for DTPREL64.
9519         Mostly from Steven Munroe <sjmunroe@us.ibm.com>.
9521 2003-03-11  Ralf Baechle  <ralf@linux-mips.org>
9523         * sysdeps/unix/sysv/linux/mips/clone.S (__thread_start): Use jal
9524         instead of jalr to invoke subroutine so restoring the $gp register
9525         will work properly.
9527 2003-03-11  Martin Schwidefsky  <schwidefsky@de.ibm.com>
9529         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (__NR_pread64): Define
9530         to __NR_pread if not defined.
9531         (__NR_pwrite64): Define to __NR_pwrite if not defined.
9533 2003-03-11  Jakub Jelinek  <jakub@redhat.com>
9535         * sysdeps/unix/sysv/linux/ia64/system.c: New file.
9536         * sysdeps/unix/sysv/linux/kernel-features.h
9537         (__ASSUME_CLONE_THREAD_FLAGS): Define for IA-64 and s390* with
9538         kernel >= 2.5.64.
9540 2003-03-11  Jakub Jelinek  <jakub@redhat.com>
9542         * sysdeps/generic/dl-sysdep.c (_dl_important_hwcaps): If CNT == 1,
9543         allocate space even for the trailing '/'.
9544         Reported by John Reiser <jreiser@BitWagon.com>.
9546         * sysdeps/unix/sysv/linux/ia64/sysdep.h (LOAD_ARGS_6, ASM_ARGS_6,
9547         ASM_CLOBBERS_6): Define.
9548         (ASM_CLOBBERS_5): Use ASM_CLOBBERS_6.
9549         * sysdeps/unix/sysv/linux/ia64/clone2.S (__clone2): Reorder arguments
9550         to match IA-32 order.
9551         * sysdeps/unix/sysv/linux/i386/clone.S: Fix comment.
9553 2003-03-10  Steven Munroe  <sjmunroe@us.ibm.com>
9555         * sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S: Don't clobber R7.
9556         Copy extra params for NPTL to registers used in clone syscall.
9558 2003-03-10  Martin Schwidefsky  <schwidefsky@de.ibm.com>
9560         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Correct system
9561         call names for pread and pwrite.
9563 2003-03-10  Roland McGrath  <roland@redhat.com>
9565         * dlfcn/Makefile (libdl-routines): Add dladdr1.
9566         * dlfcn/dladdr1.c: New file.
9567         * dlfcn/dlfcn.h [__USE_GNU]: Declare dladdr1.
9568         [__USE_GNU] (RTLD_DL_SYMENT, RTLD_DL_LINKMAP): New enum constants.
9569         * elf/dl-addr.c (_dl_addr): Take new args, a struct link_map ** and
9570         a const ElfNN_Sym ** to fill in.
9571         * include/dlfcn.h: Update decl.  Include <link.h>.
9572         * dlfcn/dladdr.c (dladdr): Update caller.
9573         * malloc/mtrace.c (tr_where): Likewise.
9574         * sysdeps/generic/elf/backtracesyms.c: Likewise.
9575         * sysdeps/generic/elf/backtracesymsfd.c: Likewise.
9576         * dlfcn/Versions (libdl: GLIBC_2.3.3): New set, add dladdr1.
9577         * Versions.def (libdl): Define GLIBC_2.3.3 set.
9579         * sysdeps/unix/make-syscalls.sh: Generate $(compile-syscall) for
9580         assembler command.
9581         * sysdeps/unix/Makefile (compile-syscall): New variable.
9582         Pass -g0 to compiler for assembling syscall stubs from stdin.
9584         * sysdeps/i386/sysdep.h [HAVE_CPP_ASM_DEBUGINFO]
9585         (STABS_CURRENT_FILE, STABS_CURRENT_FILE1, STABS_FUN, STABS_FUN_END):
9586         Define these to do nothing.
9588         * configure.in: New check for -g on .S files.
9589         * configure: Regenerated.
9590         * config.make.in (have-cpp-asm-debuginfo): New variable.
9591         * config.h.in (HAVE_CPP_ASM_DEBUGINFO): New #undef.
9592         * Makeconfig (ASFLAGS): New variable, if undefined and
9593         $(have-cpp-asm-debuginfo), take options matching -g% from $(CFLAGS).
9594         * Makerules (compile.S, COMPILE.S): Use $(ASFLAGS).
9596 2003-03-09  Roland McGrath  <roland@redhat.com>
9598         * sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S: Take 3 new args
9599         used by NPTL on new kernels.  From Paul Mackerras <paulus@samba.org>.
9601 2003-03-09  Ulrich Drepper  <drepper@redhat.com>
9603         * po/fi.po: Update from translation team.
9604         * po/ca.po: Likewise.
9605         * po/da.po: Likewise.
9607 2003-03-08  Ulrich Drepper  <drepper@redhat.com>
9609         * rt/tst-aio7.c (do_test): Change BYTES into a #define.
9611 2003-03-07  Ulrich Drepper  <drepper@redhat.com>
9613         * rt/tst-aio7.c (do_test): Give BUFF permanent extent, too.
9615         * sysdeps/powerpc/fpu/w_sqrt.c: Fix comment.
9617 2003-03-07  Roland McGrath  <roland@redhat.com>
9619         * sysdeps/s390/s390-32/sysdep.h (L): Use .Lfoo instead of foo.
9620         * sysdeps/s390/s390-64/sysdep.h (L): Likewise.
9622 2003-03-04  Guido Guenther  <agx@sigxcpu.org>
9624         * sysdeps/unix/sysv/linux/mips/syscalls.list: Remove unneeded
9625         stubs, we have INLINE_SYSCALL.
9626         * sysdeps/unix/sysv/linux/mips/bits/mman.h: Define MAP_POPULATE,
9627         MAP_NONBLOCK.
9629 2003-03-06  Roland McGrath  <roland@redhat.com>
9631         * rt/tst-aio7.c (do_test): Revert last change.  Instead, give CB1
9632         permanent extent and add a comment about testing its implicit teardown.
9634 2003-03-06  Martin Schwidefsky  <schwidefsky@de.ibm.com>
9636         * rt/tst-aio7.c (do_test): Cancel i/o on CB1 before it's out of scope.
9638 2003-03-05  Ulrich Drepper  <drepper@redhat.com>
9640         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage): Fix
9641         reversed __builtin_expect expectation.
9643 2003-03-05  Roland McGrath  <roland@redhat.com>
9645         * stdio-common/sscanf.c: Use prototype defn with ... syntax.
9646         * libio/swscanf.c: Likewise.
9647         * libio/swprintf.c: Likewise.
9649 2003-03-04  Roland McGrath  <roland@redhat.com>
9651         * sysdeps/powerpc/powerpc64/dl-machine.h: Include <dl-tls.h>.
9652         (elf_machine_rela): Always use RESOLVE_MAP, needed for
9653         R_PPC64_JMP_SLOT as well as TLS cases.
9654         (BIT_INSERT): Move parenthesis where it ought to have been.
9655         Reported by Steven Munroe <sjmunroe@us.ibm.com>.
9657         * posix/confstr.c (confstr): Correct STRING_LEN values for
9658         _CS_GNU_LIBC_VERSION and _CS_GNU_LIBPTHREAD_VERSION, add missing
9659         break.  Reported by Alexandre Julliard <julliard@winehq.com>.
9661 2003-03-04  Jakub Jelinek  <jakub@redhat.com>
9663         * sysdeps/ia64/fpu/libm-test-ulps: Regenerated.
9665 2003-03-04  Ulrich Drepper  <drepper@redhat.com>
9667         * sysdeps/unix/sysv/linux/x86_64/clone.S: Add support for the new
9668         clone parameters.
9670         * po/sv.po: Update from translation team.
9672 2003-03-04  Andreas Jaeger  <aj@suse.de>
9673             Ulrich Drepper  <drepper@redhat.com>
9675         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Fix comments.
9677 2003-03-03  Ulrich Drepper  <drepper@redhat.com>
9679         * sysdeps/generic/dl-sysdep.h: Add double include protection.
9681         * po/tr.po: Update from translation team.
9683         * elf/dl-load.c (_dl_map_object_from_fd): Determine whether there
9684         are holes between the segments.  Only call mprotect to set
9685         proection to PROT_NONE if there are some.
9687         * elf/dl-load.c (struct filebuf): Actually use FILEBUF_SIZE.
9688         Update comment.
9690         * include/sched.h (__clone2): Use ... instead of adding all the
9691         new parameters.
9693 2003-03-03  Roland McGrath  <roland@redhat.com>
9695         * elf/dl-load.c (struct filebuf): Fix typo in last change.
9697         * sysdeps/powerpc/powerpc32/elf/configure.in: Don't define
9698         PI_STATIC_AND_HIDDEN.
9700 2003-03-03  Ian Wienand  <ianw@gelato.unsw.edu.au>
9702         * sysdeps/unix/sysv/linux/ia64/clone2.S: Update to take extra clone
9703         flags.
9704         * include/sched.h: Update clone2 prototype.
9706 2003-03-03  Andreas Jaeger  <aj@suse.de>
9708         * math/tgmath.h (__TGMATH_UNARY_REAL_RET_ONLY): New definition.
9709         (llrint): Use it to correct return type.
9710         (lrint): Likewise.
9711         (lround): Likewise.
9712         (llround): Likewise.
9714 2003-03-03  Ulrich Drepper  <drepper@redhat.com>
9716         * elf/dl-load.c (struct filebuf): For 64-bit platforms use 640
9717         byte filebuf size.
9719         * libio/fileops.c (_IO_new_file_fopen): Close stillborn descriptor
9720         if ccs parameter isn't valid.  Reported by Andreas Schwab.
9722 2003-03-03  Martin Schwidefsky  <schwidefsky@de.ibm.com>
9724         * sysdeps/unix/sysv/linux/s390/s390-32/syscall.S (syscall): Add support
9725         for system call numbers > 255.
9726         * sysdeps/unix/sysv/linux/s390/s390-32/syscall.h (DO_CALL,
9727         INLINE_SYSCALL, INTERNAL_SYSCALL_DIRECT, INTERNAL_SYSCALL_SVC0,
9728         INTERNAL_SYSCALL): Likewise.
9729         * sysdeps/unix/sysv/linux/s390/s390-64/syscall.S (syscall): Likewise.
9730         * sysdeps/unix/sysv/linux/s390/s390-64/syscall.h (DO_CALL,
9731         INLINE_SYSCALL, INTERNAL_SYSCALL_DIRECT, INTERNAL_SYSCALL_SVC0,
9732         INTERNAL_SYSCALL): Likewise.
9734 2003-03-03  Martin Schwidefsky  <schwidefsky@de.ibm.com>
9736         * sysdeps/generic/dl-tls.c (_dl_deallocate_tls): Don't free the dtv
9737         array if it is the initial dtv.
9739 2003-03-03  Ulrich Drepper  <drepper@redhat.com>
9741         * po/es.po: Update from translation team.
9742         * po/fr.po: Likewise.
9743         * po/gl.po: Likewise.
9744         * po/sk.po: Likewise.
9745         * po/sv.po: Likewise.
9747         * sysdeps/unix/sysv/linux/syscalls.list: Add remap_file_pages entry.
9748         * misc/sys/mman.h: Add prototype for remap_file_pages.
9749         * sysdeps/generic/remap_file_pages.c: New file.
9750         * misc/Makefile (routines): Add remap_file_pages.
9751         * misc/Versions [libc:GLIBC_2.3.3]: Add remap_file_pages.
9753         * sysdeps/unix/sysv/linux/x86_64/bits/mman.h: Define MAP_POPULATE
9754         and MAP_NONBLOCK.
9755         * sysdeps/unix/sysv/linux/s390/bits/mman.h: Likewise.
9756         * sysdeps/unix/sysv/linux/powerpc/bits/mman.h: Likewise
9757         * sysdeps/unix/sysv/linux/m68k/bits/mman.h: Likewise.
9758         * sysdeps/unix/sysv/linux/arm/bits/mman.h: Likewise.
9759         * sysdeps/unix/sysv/linux/ia64/bits/mman.h: Likewise.
9760         * sysdeps/unix/sysv/linux/hppa/bits/mman.h: Likewise.
9761         * sysdeps/unix/sysv/linux/alpha/bits/mman.h: Likewise.
9762         * sysdeps/unix/sysv/linux/i386/bits/mman.h: Likewise.
9764 2003-03-03  Roland McGrath  <roland@redhat.com>
9766         * sysdeps/ia64/dl-fptr.c (__ia64_make_fptr): Revert last change.
9767         * sysdeps/ia64/dl-machine.h: Likewise.
9768         * sysdeps/ia64/dl-symaddr.c (_dl_symbol_address): Remove const from
9769         argument type.
9770         * sysdeps/ia64/dl-lookupcfg.h: Update decl.
9772         * sysdeps/wordsize-64/strtol_l.c (strtoll_l): Define as weak alias.
9773         * sysdeps/wordsize-64/strtoul_l.c (strtoull_l): Define as weak alias.
9774         * locale/Versions (libc: GLIBC_2.3): Move those to ...
9775         * sysdeps/wordsize-32/Versions (libc: GLIBC_2.3): ... here, new file.
9776         * sysdeps/wordsize-64/Versions (libc: GLIBC_2.3.3) Likewise.
9777         * Versions.def (libc): Add GLIBC_2.3.3 set.
9779         * sysdeps/ia64/dl-fptr.c (__ia64_make_fptr): Add const to MAP arg.
9780         * sysdeps/ia64/dl-machine.h: Update decl.
9782 2003-03-03  Andreas Jaeger  <aj@suse.de>
9784         * sysdeps/unix/clock_settime.c (HANDLE_REALTIME): Add missing brace.
9786 2003-03-02  Roland McGrath  <roland@redhat.com>
9788         * scripts/abilist.awk: Reject data items with apparent 0 size.
9790         * scripts/merge-abilist.awk: Restore hack to elide pattern foo.*/bar
9791         after foo.* as if it were a duplicate.
9793         * sysdeps/unix/sysv/linux/ia64/brk.S: Add .type and .size for __curbrk.
9795 2003-03-02  Ulrich Drepper  <drepper@redhat.com>
9797         * elf/dl-load.c (struct filebuf): Reduce buf array to 512 bytes.
9799         * sysdeps/generic/bits/time.h: Define CLOCK_MONOTONIC.
9800         * sysdeps/posix/clock_getres.c: Define code for CLOCK_REALTIME only
9801         if not already defined.  Use SYSDEP_GETRES to allow other files to
9802         provide alternative implementations.
9803         * sysdeps/unix/sysv/linux/clock_getres.c: New file
9804         * sysdeps/unix/clock_gettime.c: Define code for CLOCK_REALTIME only
9805         if not already defined.  Use SYSDEP_GETTIME to allow other files to
9806         provide alternative implementations.
9807         * sysdeps/unix/sysv/linux/clock_gettime.c: New file.
9808         * sysdeps/unix/clock_settime.c: Define code for CLOCK_REALTIME only
9809         if not already defined.  Use SYSDEP_GETTIME to allow other files to
9810         provide alternative implementations.
9811         * sysdeps/unix/sysv/linux/clock_settime.c: New file.
9812         * sysdeps/unix/clock_nanosleep.c: Use SYSDEP_NANOSLEEP to allow
9813         other files to provide alternative implementations.  Rearrange
9814         tests for invalid parameters.
9815         * sysdeps/unix/sysv/linux/clock_nanosleep.c: New file.
9816         * sysdeps/unix/sysv/linux/sysconf.c: New file.
9817         * sysdeps/unix/sysv/linux/kernel-features.h: Define
9818         __ASSUME_POSIX_TIMERS for Linux 2.5.63 and up.
9819         * sysdeps/unix/sysv/linux/bits/posix_opt.h: Define
9820         _POSIX_MONOTONIC_CLOCK.
9822 2003-03-02  Roland McGrath  <roland@redhat.com>
9824         * scripts/merge-abilist.awk: More checks for bogus input.
9825         Uniquify duplicate config names.
9827         * scripts/abilist.awk: Don't distinguish weak symbols in normal output.
9829         * sysdeps/powerpc/powerpc32/dl-machine.c (_dl_reloc_overflow): Renamed
9830         from dl_reloc_overflow, make global.
9831         (__process_machine_rela): Update callers.
9832         * sysdeps/powerpc/powerpc32/dl-machine.h: Declare _dl_reloc_overflow.
9833         Add attribute_hidden to __process_machine_rela decl.
9834         (elf_machine_type_class, elf_machine_rela): Handle 16-bit TLS relocs.
9836         * sysdeps/generic/libc-start.c (__libc_start_main): Don't assign const
9837         variable.
9839         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_fixup_plt):
9840         Don't use weak_extern for dl_rtld_map.  Instead check only if [SHARED].
9841         (elf_machine_rela): Clean up.
9843         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Clean up.
9845         PowerPC TLS support contributed by Paul Mackerras <paulus@samba.org>.
9846         * sysdeps/powerpc/powerpc32/elf/configure.in: New file.
9847         * sysdeps/powerpc/powerpc32/elf/configure: New generated file.
9848         * elf/tls-macros.h [__powerpc__ && !__powerpc64__]
9849         (TLS_LE, TLS_IE, TLS_LD, TLS_GD): Define them.
9850         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Support
9851         new relocs for TLS.
9853         * sysdeps/powerpc/dl-tls.h (TLS_TP_OFFSET, TLS_DTV_OFFSET): Move these
9854         macros out of [SHARED].
9855         (TLS_TPREL_VALUE, TLS_DTPREL_VALUE): New macros.
9857         * elf/elf.h: Define R_PPC_* relocs for TLS support.
9858         Clean up R_PPC64_* macro definition comments.
9860         * configure.in: In "running configure fragment for" message,
9861         omit $srcdir from the name if we prepended it.
9862         * configure: Regenerated.
9864         * elf/dl-reloc.c (allocate_static_tls): Fix calculations.
9865         From Jakub Jelinek <jakub@redhat.com>.
9867         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Revert last change,
9868         which duplicated the O_DIRECT defn.
9870 2003-03-01  GOTO Masanori  <gotom@debian.or.jp>
9872         * stdlib/stdlib.h: Add missing __USE_BSD enclosure for BSD derived
9873         random functions.
9875 2003-03-01  Andreas Schwab  <schwab@suse.de>
9877         * resolv/Makefile (tests): Don't depend on
9878         $(objpfx)mtrace-tst-leaks when cross compiling.
9880         * sysdeps/m68k/dl-machine.h (_dl_start_user): Access
9881         __libc_stack_end through GOT since it is a global symbol.
9883 2003-03-01  GOTO Masanori  <gotom@debian.or.jp>
9885         * argp/argp.h: Fix a typo.
9886         Reported by H.S.Teoh <hsteoh@quickfur.ath.cx>.
9888         * manual/terminal.texi: Fix cfmakeraw() definition from int to void.
9890 2003-02-27  Pat Rankin  <rankin@pactechdata.com>
9892         * posix/regexec.c (proceed_next_node): Cast re_string_get_buffer to
9893         char *.
9894         (get_subexp): Likewise.
9896 2003-03-01  GOTO Masanori  <gotom@debian.or.jp>
9898         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (O_DIRECT): Define.
9900 2003-02-26  Steven Munroe  <sjmunroe@us.ibm.com>
9902         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h (O_DIRECT): Define.
9904 2003-02-27  Roland McGrath  <roland@redhat.com>
9906         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela): Remove
9907         special case for dl_rtld_map in R_PPC64_RELATIVE; it's harmless to
9908         repeat it and avoids the test for the common case.
9909         Clean up and fix calculations for TLS relocs.
9911         * sysdeps/powerpc/powerpc64/dl-tls.h: Moved to ...
9912         * sysdeps/powerpc/dl-tls.h: ... here.
9913         (TLS_TP_OFFSET): New macro.
9915         * sunrpc/svc_udp.c (svcudp_recv): Add a cast to last change.
9917 2003-02-27  Ulrich Drepper  <drepper@redhat.com>
9919         * sysdeps/i386/fpu/libm-test-ulps: Increase ULPs for yn due to
9920         code generation changes in recent gcc.
9922 2003-02-26  Steven Munroe  <sjmunroe@us.ibm.com>
9924         * sysdeps/powerpc/fpu/fpu_control.h (_FPU_GETCW, _FPU_SETCW):
9925         Rename argument to avoid symbol conflict.
9927         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h
9928         [__USE_GNU] (O_DIRECT): New macro.
9930 2003-02-24  David Mosberger  <davidm@hpl.hp.com>
9932         * sysdeps/unix/sysv/linux/ia64/sysdep.S (__syscall_error): Fix
9933         unwind info.
9935 2003-02-27  Ulrich Drepper  <drepper@redhat.com>
9937         * resolv/res_libc.c [USE___THREAD] (_res): Don't need the
9938         initializer anymore now that res_thread_freeres is more careful.
9940         * sunrpc/svc_udp.c (svcudp_recv): Remove all control messages
9941         except the PKTINFO.  Reset interface in PKTINFO.
9942         Patch by Neil Brown <neilb@cse.unsw.edu.au> [PR libc/4973].
9944 2003-02-25  Steven Munroe  <sjmunroe@us.ibm.com>
9946         * elf/elf.h: Add new R_PPC64_* relocs for TLS.
9947         * elf/tls-macros.h [__powerpc64__] (TLS_LE, TLS_IE, TLS_LD, TLS_GD):
9948         Define.
9949         * sysdeps/powerpc/powerpc64/elf/configure.in: New file.
9950         * sysdeps/powerpc/powerpc64/elf/configure: New file (generated).
9951         * sysdeps/powerpc/powerpc64/dl-machine.h: Support new TLS relocs.
9952         * sysdeps/powerpc/powerpc64/dl-tls.h: New file.
9954         * sysdeps/powerpc/elf/libc-start.c (__libc_start_main):
9955         Do DL_SYSDEP_OSCHECK here, matching 2002-12-01 change to generic file.
9957 2003-02-25  Andreas Jaeger  <aj@suse.de>
9959         * manual/memory.texi (Malloc Tunable Parameters): Clarify
9960         behaviour of M_MMAP_THRESHOLD.
9962 2003-02-25  Roland McGrath  <roland@redhat.com>
9964         * resolv/res_init.c (res_thread_freeres): Bail out if _res.nscount is
9965         zero, inidicating _res was not initialized yet.
9967 2003-02-24  Ulrich Drepper  <drepper@redhat.com>
9969         * sysdeps/unix/sysv/linux/ttyname_r.c (__ttyname_r): Remove EACCES
9970         test.
9972 2003-02-24  Roland McGrath  <roland@redhat.com>
9974         * sysdeps/posix/pause.c: Add LIBC_CANCEL_HANDLED.
9976 2003-02-23  Roland McGrath  <roland@redhat.com>
9978         * sysdeps/posix/pause.c: New file.
9979         * sysdeps/unix/common/pause.c: File removed.
9981 2003-02-23  Ulrich Drepper  <drepper@redhat.com>
9983         * sysdeps/generic/bits/confname.h: Remove #ifs.
9985         * posix/Makefile (CFLAGS-regex.c): Remove RE_ENABLE_I18N definition.
9986         * posix/regex_internal.h (RE_ENABLE_I18N): Pretty printing.
9988         * resolv/res_libc.c [USE___THREAD] (_res): Initialize _vcsock
9989         element to -1.
9991 2003-02-22  Ulrich Drepper  <drepper@redhat.com>
9993         * sysdeps/generic/dl-sysdep.c: Avoid warning.
9995 2003-02-22  Roland McGrath  <roland@redhat.com>
9997         * resolv/tst-leaks.c: New file by Daniel Jacobowitz <drow@mvista.com>.
9998         * resolv/Makefile (tests): Add tst-leaks.
9999         ($(objpfx)tst-leaks): Depend on $(objpfx)libresolv.so.
10000         (tst-leaks-ENV): New variable.
10001         ($(objpfx)mtrace-tst-leaks): New target.
10002         (tests): Depend on it.
10004         * include/libc-internal.h: Declare __libc_thread_freeres.
10006         * Makerules: Fix last change to use $($(subdir)-version) when set.
10008         * Makerules (install-lib-nosubdir): Depend on installed
10009         libfoo-X.Y.Z.so and libfoo.so.NN files so they are installed
10010         regardless of the libfoo.so target's dependencies.
10012         * MakeTAGS (sub-make-vars): New variable, includes generating=t.
10013         Use that in $(MAKE) calls.
10015 2003-02-22  Ulrich Drepper  <drepper@redhat.com>
10017         * catgets/gencat.c (read_input_file): Collision between
10018         auto-assigned numbers and user-defined nubmers is not fatal.
10019         Handle it.
10020         Patch by Michael M. Lampkin <michael.lampkin@ieee.org>.
10021         * catgets/Makefile: Add rules to run test2.msg test.
10022         * catgets/test2.msg: New file.
10024         * catgets/gencat.c (main): Return 1 if messages have been printed.
10026         * iconv/iconv_prog.c (main): Unify messages.
10028         * stdlib/strtod.c (INTERNAL): Remove bogus clearing of second word
10029         when shifting retval.
10030         * stdlib/tst-strtod.c (main): Add strtold test case.
10031         Reported by Fred J. Tydeman <tydeman@tybor.com>.
10033 2003-02-21  Roland McGrath  <roland@redhat.com>
10035         * malloc/thread-freeres.c: Conditionalize on _LIBC_REENTRANT.
10036         * sunrpc/rpc_thread.c: Likewise for text_set_element use.
10037         (__rpc_thread_destroy): Add it to __libc_subfreeres too.
10039         * include/resolv.h: Add libc_hidden_proto for __res_nclose.
10040         * resolv/res_init.c (__res_nclose): Add libc_hidden_def.
10041         (res_thread_freeres): New function, on __libc_thread_subfreeres and
10042         __libc_subfreeres.
10044         * malloc/Versions (libc: GLIBC_PRIVATE): Add __libc_thread_freeres.
10045         * malloc/thread-freeres.c: New file.
10046         * malloc/Makefile (aux): Add it.
10047         * sunrpc/Versions (libc: GLIBC_PRIVATE): Removed.
10048         * sunrpc/rpc_thread.c (__rpc_thread_destroy): Put in special section
10049         "__libc_thread_freeres_fn" and add to __libc_thread_subfreeres set.
10051         * sysdeps/unix/sysv/linux/i386/geteuid.c (__geteuid): Typo fix.
10052         * sysdeps/unix/sysv/linux/i386/getgid.c (__getgid): Typo fix.
10054 2003-02-21  Roland McGrath  <roland@frob.com>
10056         * sysdeps/mach/hurd/opendir.c (__opendir): Use O_NONBLOCK in open.
10058         * iconvdata/Makefile (tests): Add bug-iconv3 only if
10059         [$(have-thread-library) = yes].
10061 2003-02-21  Ulrich Drepper  <drepper@redhat.com>
10063         * sysdeps/unix/sysv/linux/bits/signum.h (__SIGRTMAX): Define as _NSIG.
10065         * sysdeps/unix/sysv/linux/i386/getuid.c: Use INTERNAL_SYSCALL and do
10066         not chechk for errors (unless testing for 32bit variant).
10067         * sysdeps/unix/sysv/linux/i386/getgid.c: Likewise.
10068         * sysdeps/unix/sysv/linux/i386/geteuid.c: Likewise.
10069         * sysdeps/unix/sysv/linux/i386/getegid.c: Likewise.
10071 2003-02-21  Jakub Jelinek  <jakub@redhat.com>
10073         * sysdeps/x86_64/dl-machine.h (elf_machine_rela) <R_X86_64_PC32>:
10074         Check for signed overflow, not unsigned.
10076         * sysdeps/sparc/sparc64/elf/configure.in: New file.
10077         * sysdeps/unix/sysv/linux/sparc/sparc64/Makefile (sysdep-CFLAGS):
10078         Use -fcall-used-g6, not -fcall-used-g7.
10080 2003-02-21  Andreas Jaeger  <aj@suse.de>
10082         * sysdeps/x86_64/fpu/fesetenv.c (fesetenv): Fix setting of default
10083         mode.
10085         * sysdeps/x86_64/fpu/fsetexcptflg.c (fesetexceptflag): Do not
10086         clear whole mxcsr but only exceptions.
10088 2003-02-21  Roland McGrath  <roland@redhat.com>
10090         * Makerules: Filter $(install-lib-ldscripts) out of list of targets
10091         for libfoo.so that need $(make-link) rules.
10093 2003-02-21  Roland McGrath  <roland@frob.com>
10095         * sysdeps/mach/hurd/bits/typesizes.h (__DEV_T_TYPE): Use __U32_TYPE
10096         to match existing struct stat layout in mig protocols.
10098 2003-02-20  Ulrich Drepper  <drepper@redhat.com>
10100         * version.h (VERSION): Bump to 2.3.2.
10102         * elf/Makefile (distribute): Add reldep9.c, tst-array1.exp,
10103         tst-array2.exp, tst-array4.exp, tst-array2dep.c, check-textrel.c,
10104         and dl-sysdep.h.
10105         * sysdeps/generic/Dist: Add sysdep-cancel.h.
10106         * sysdeps/powerpc/nofpu/Dist: Add soft-supp.h.
10107         * sysdeps/unix/Dist: Add s-proto-bp.S and s-proto-cancel.S.
10108         * sysdeps/unix/sysv/linux/Dist: Add pathconf.h.
10109         * sysdeps/unix/sysv/linux/i386/Dist: Add bp-thunk.h.
10110         * sysdeps/unix/sysv/linux/powerpc/powerpc64/Dist: Add fe_nomask.c and
10111         ucontext_i.h.
10112         * Makefile (distribute): Add include/stubs-prologue.h,
10113         include/gnu/stubs.h, scripts/merge-abilist.awk, and
10114         scripts/extract-abilist.awk.
10116 2003-02-20  Roland McGrath  <roland@redhat.com>
10118         * math/Makefile (distribute): Don't add generated files.
10120 2003-02-20  Ulrich Drepper  <drepper@redhat.com>
10122         * math/Makefile: Rearrange variable definitions slightly to get
10123         definition in the right order.
10125 2003-02-20  Roland McGrath  <roland@redhat.com>
10127         * Makerules: Clean up conditional around include of tls.make.
10128         * Make-dist: Export generating=t to prevent using that.
10129         (+distinfo): Likewise for $(shell $(MAKE) ...) runs.
10131 2003-02-20  Ulrich Drepper  <drepper@redhat.com>
10133         * inet/rcmd.c (rresvport_af): Avoid using invliad values.  Wrap
10134         around in search if port IPPORT_RESERVED/2 has been test.
10136 2003-02-20  Paolo Bonzini  <bonzini@gnu.org>
10138         * posix/regcomp.c: Remove inclusions.
10139         * posix/regexec.c: Likewise.
10140         * posix/regex_internal.c: Likewise.
10141         * posix/regex_internal.h: Add inclusions here.
10142         * posix/regex.c: Only include sys/types.h before regex.h.  Include
10143         regex_internal.h here.  Include regex_internal.c before regcomp.c
10144         and regexec.c (might expose more opportunities to the C compiler).
10146         * posix/regcomp.c (parse_expression): Fix construct rejected by SGI CC.
10148         * posix/regex_internal.h [!_LIBC] (__mempcpy): Fix typo.
10149         [!_LIBC] (__wcrtomb): New definition.
10150         [!_LIBC]: Conditionalize enabling of I18N on HAVE_WCSCOLL and
10151         HAVE_LOCALE_H as well.
10153 2003-02-20  Ulrich Drepper  <drepper@redhat.com>
10155         * sysdeps/unix/sysv/linux/tcsetattr.c (tcsetattr): Remove obsolete
10156         patch to check for system call errors.
10158 2002-07-24  Philip Blundell  <philb@gnu.org>
10160         * sysdeps/unix/sysv/linux/arm/ioperm.c (init_iosys): Yield ENODEV
10161         on unknown systems.
10163 2003-02-20  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
10165         * sysdeps/powerpc/powerpc32/atomicity.h: Remove compiler workaround.
10166         * sysdeps/unix/sysv/linux/kernel-features.h
10167         (__ASSUME_NEW_PRCTL_SYSCALL): Defined for ppc32 too.
10168         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fe_nomask.c: Use prctl
10169         if possible.
10170         * sysdeps/unix/sysv/linux/powerpc/powerpc32/vfork.S: Avoid short
10171         interprocedure branches.
10172         * sysdeps/powerpc/soft-fp/Dist (sim-full.c, fenv_const.c): Move to...
10173         * sysdeps/powerpc/nofpu/Dist: ...here.
10174         * sysdeps/unix/sysv/linux/powerpc/Dist (fe_nomask.c): Move to...
10175         * sysdeps/unix/sysv/linux/powerpc/powerpc32/Dist: ...here.
10176         * sysdeps/unix/sysv/linux/s390/s390-64/Dist (kernel_stat.h): Delete.
10177         * sysdeps/unix/sysv/linux/sparc/Dist (bits/utmpx.h): Delete.
10178         * sysdeps/unix/sysv/linux/x86_64/Dist (bits/utmpx.h): Delete.
10180 2003-02-18  Alan Modra  <amodra@bigpond.net.au>
10182         * sysdeps/powerpc/powerpc32/sysdep.h (HIDDEN_JUMPTARGET): Redefine.
10184 2003-02-20  Philip Blundell  <philb@gnu.org>
10186         * sysdeps/unix/sysv/linux/arm/sysdep.h (INLINE_SYSCALL): Add
10187         missing arguments to INTERNAL_SYSCALL_ERROR_P and
10188         INTERNAL_SYSCALL_ERRNO.
10190 2003-02-20  Martin Schwidefsky  <schwidefsky@de.ibm.com>
10192         * sysdeps/unix/sysv/linux/s390/s390-32/chown.c (__real_chown): Test
10193         for __ASSUME_32BITUIDS.
10195 2003-02-20  Andreas Schwab  <schwab@suse.de>
10197         * sysdeps/unix/sysv/linux/m68k/bits/mman.h: Add MADV_* and
10198         POSIX_MADV_* constants.
10200 2003-02-20  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
10202         * sysdeps/unix/sysv/linux/sh/pread.c: New file.
10203         * sysdeps/unix/sysv/linux/sh/pread64.c: New file.
10204         * sysdeps/unix/sysv/linux/sh/pwrite.c: New file.
10205         * sysdeps/unix/sysv/linux/sh/pwrite64.c: New file.
10207 2003-02-19  Jiro Sekiba  <jir@yamato.ibm.com>
10209         * iconvdata/utf-16.c (gconv_end): Fix range of low surrogate.
10211 2003-02-16  Roland McGrath  <roland@redhat.com>
10213         * signal/signal.h: Include <sys/ucontext.h>, not <ucontext.h>.
10215 2003-02-19  Ulrich Drepper  <drepper@redhat.com>
10217         * stdlib/strtod.c (INTERNAL): Up the safety margin for cutting off
10218         decimal input digits.
10219         * stdlib/tst-strtod.c (main): Add test for strtof bug.
10221 2003-02-18  Ulrich Drepper  <drepper@redhat.com>
10223         * sysdeps/unix/sysv/linux/ttyname_r.c (__ttyname_r): Recognize
10224         invalid file descriptors and missing access permissions.
10226 2003-02-17  Ulrich Drepper  <drepper@redhat.com>
10228         * nss/getXXbyYY_r.c (REENTRANT_NAME): Return 0 if no entry has
10229         been found.
10231         * sysdeps/posix/sysconf.c (__sysconf): Test for LOGIN_NAME_MAX and
10232         TTY_NAME_MAX and not the _POSIX_* minimal value macros.
10233         * sysdeps/unix/sysv/linux/bits/local_lim.h: Define TTY_NAME_MAX
10234         and LOGIN_NAME_MAX.
10236 2003-02-17  Kevin B. Hendricks  <kevin.hendricks@sympatico.ca>
10237             Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
10239         * sysdeps/powerpc/elf/libc-start.c: Handle NONTLS_INIT_TP.
10240         * sysdeps/powerpc/powerpc32/__longjmp.S: Remove R2 handling.
10241         * sysdeps/powerpc/powerpc32/setjmp.S: Likewise.
10242         * sysdeps/powerpc/powerpc32/fpu/__longjmp.S: Likewise.
10243         * sysdeps/powerpc/powerpc32/fpu/setjmp.S: Likewise.
10245 2003-02-17  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
10247         * sysdeps/unix/sysv/linux/powerpc/ftruncate64.c: Delete.
10248         * sysdeps/unix/sysv/linux/powerpc/truncate64.c: Delete.
10249         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Delete.
10250         * sysdeps/unix/sysv/linux/powerpc/pread.c: Delete.
10251         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Delete.
10252         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Delete.
10254         * sysdeps/unix/sysv/linux/powerpc/fe_nomask.c: Move file...
10255         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fe_nomask.c: ...here.
10256         * sysdeps/unix/sysv/linux/powerpc/glob64.c: Move file...
10257         * sysdeps/unix/sysv/linux/powerpc/powerpc32/glob64.c: ...here.
10259         * sysdeps/unix/sysv/linux/tcgetattr.c: Use INLINE_SYSCALL.
10260         * sysdeps/unix/sysv/linux/tcsetattr.c: Likewise.
10261         * sysdeps/unix/sysv/linux/powerpc/tcgetattr.c: Delete.
10262         * sysdeps/unix/sysv/linux/powerpc/tcsetattr.c: Delete.
10264 2003-02-14  Thorsten Kukuk  <kukuk@suse.de>
10266         * nss/getent.c (print_hosts): Print all IP addresses of one host.
10268 2003-02-15  Roland McGrath  <roland@frob.com>
10270         * sysdeps/mach/hurd/tls.h: New file.
10271         * sysdeps/mach/hurd/i386/tls.h: New file.
10273         * mach/errsystems.awk: Include <errno.h> in generated output.
10275         * sysdeps/mach/Makefile (mach-before-compile rule): Pass generating=t,
10276         use target mach-before-compile instead of generated.
10277         (mach-before-compile): New target.
10278         * Makerules: Disable use of tls.make if $(generating) is set.
10279         * mach/Makefile: Include mach-syscalls.mk even if no_deps=t.
10280         * sysdeps/mach/hurd/Makefile: Make generated hurd headers depend on
10281         mach-shortcuts.h so mach/ generation happens before hurd/.
10283 2003-02-14  Ulrich Drepper  <drepper@redhat.com>
10285         * sysdeps/i386/fpu/s_nextafterl.c: Decrement high word of mantissa
10286         of demorm correctly if low word is zero.
10287         Reported by Fred J. Tydeman <tydeman@tybor.com>.
10288         * math/libm-test.inc (nextafter_test): New test, but disabled due
10289         to gcc bug.
10291         * sysdeps/generic/libc-start.c [HAVE_PTR_NTHREADS]: Decrement thread
10292         counter and only call __exit_thread if this is not the last thread.
10294 2003-02-13  Jakub Jelinek  <jakub@redhat.com>
10296         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Add instead of
10297         subtracting map->l_tls_offset.
10299 2003-02-12  Ulrich Drepper  <drepper@redhat.com>
10301         * sysdeps/generic/bits/confname.h: Define _CS_GNU_LIBC_VERSION and
10302         _CS_GNU_LIBPTHREAD_VERSION.
10303         * posix/conststr.c: Handle these new values.
10304         * posix/getconf.c: Likewise.
10306         * sysdeps/mips/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE): Fix
10307         masking of version index.
10308         Patch by Lance Larsh <Lance.Larsh@oracle.com>.
10310 2003-02-11  Ulrich Drepper  <drepper@redhat.com>
10312         * nss/nss_files/files-hosts.c (HOST_DB_LOOKUP): Compute alignment
10313         correctly.  Reported by Thorsten Kukuk.
10315 2003-02-10  Ulrich Drepper  <drepper@redhat.com>
10317         * elf/Makefile (check-textrel-CFLAGS): Pass _XOPEN_SOURCE and
10318         _BSD_SOURCE to compiler.
10319         * elf/check-textrel.c (SWAP): Add parenthesis to avoid warnings.
10320         Patches by Alan Modra.
10322 2003-02-08  Ulrich Drepper  <drepper@redhat.com>
10324         * io/ftwtest.c: Get current working directory before and after the
10325         nftw call and make sure they match.
10327 2003-02-08  Jim Meyering  <jim@meyering.net>
10329         * io/ftw.c (ftw_startup): When using FTW_CHDIR, always remember
10330         the current directory, not just when DIR contains a slash.
10331         Reported by Manoj Srivastava.
10333 2003-02-07  Jim Meyering  <jim@meyering.net>
10335         * io/ftw.c: Add autoconf-recommended block of alloca-related code.
10336         Include autoconf-recommended block of dirent/NAMELEN-related
10337         definitions and includes.  Use NAMELEN throughout, rather than
10338         _D_EXACT_NAMLEN.
10339         [_LIBC]: Define NAMELEN to _D_EXACT_NAMLEN.
10340         [!_LIBC] (__getcwd): Define to xgetcwd and declare xgetcwd.
10341         (stpcpy): Declare, if necessary.
10342         (mempcpy): Define, if necessary.
10343         [!_LIBC] (__stpcpy, __mempcpy): Define.
10344         [!_LIBC] (LXSTAT, XSTAT): Define.
10345         (lstat) [!LIBC && !LSTAT_FOLLOWS_SLASHED_SYMLINK]: Define to rpl_lstat.
10346         (find_object): Don't use c99-style struct initializer.
10347         Tweak wording in a couple comments.
10349 2003-02-07  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
10351         * elf/tls-macros.h: Add non-PIC TLS macros and fix clobber list
10352         for SH.
10353         * sysdeps/unix/sysv/linux/sh/brk.c: Add SYSCALL_INST_PAD
10354         after the trapa instruction.
10355         * sysdeps/unix/sysv/linux/sh/clone.S (__clone): Add additional
10356         parameters.
10357         * sysdeps/unix/sysv/linux/sh/sh4/sysdep.h: New file.
10358         (NEED_SYSCALL_INST_PAD): Define.
10359         * sysdeps/unix/sysv/linux/sh/sys/user.h (start_thread): Undef to
10360         avoid to use definition for the kernel.
10361         * sysdeps/unix/sysv/linux/sh/sysdep.h (SYSCALL_ERROR_HANDLER):
10362         Save and restore the frame pointer.
10363         (SYSCALL_INST_PAD): Define.
10364         (INLINE_SYSCALL): Make use of INTERNAL_SYSCALL.
10365         (INTERNAL_SYSCALL): Make use of ERR parameter. Add SYSCALL_INST_PAD
10366         after trapa instruction.
10367         (INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
10368         INTERNAL_SYSCALL_ERROR_P): Adjust accordingly.
10370 2003-02-07  Jakub Jelinek  <jakub@redhat.com>
10372         * resolv/res_libc.c (_res): Ensure _res is not common symbol,
10373         so that it can have aliases.
10374         * inet/herrno.c (h_errno): Put it into .bss not .data section.
10376 2003-02-07  Ulrich Drepper  <drepper@redhat.com>
10378         * elf/dl-runtime.c (fixup): Correct typo in version index computation.
10379         (profile_fixup): Likewise.
10380         Patch by Lance Larsh <Lance.Larsh@oracle.com>.
10382 2002-11-24  Robert Love  <rml@tech9.net>
10384         * posix/sched.h: Second parameter of sched_setaffinity and
10385         sched_getaffinity is `unsigned int', not `unsigned long'.
10386         * sysdeps/generic/sched_setaffinity.c: Likewise.
10387         * sysdeps/generic/sched_getaffinity.c: Likewise.
10389 2003-02-05  Ulrich Drepper  <drepper@redhat.com>
10391         * debug/catchsegv.sh: Fix typo in error messsage.
10392         Reported by John Levon <levon@movementarian.org>.
10394         * sysdeps/unix/sysv/linux/posix_fadvise.c: New file.
10395         * sysdeps/unix/sysv/linux/syscalls.list: Add posix_fadvise64 syscall.
10396         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Likewise.
10397         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
10398         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Likewise.
10399         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
10400         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
10402         * libio/putwc_u.c: Use _IO_putwc_unlocked, not _IO_putc_unlocked.
10403         Patch by Moritz Schulte <moritz@duesseldorf.ccc.de>.
10405 2003-02-05  Jim Meyering  <jim@meyering.net>
10407         Fix a heap-corrupting bug.
10408         * io/ftw.c: Include <limits.h>.
10409         (PATH_MAX) [!defined PATH_MAX]: Define to 1024.
10410         (process_entry): Allocate enough space to hold the resulting
10411         file name.  Don't presume that 2*dirbufsize is enough.
10412         (ftw_startup): Always use PATH_MAX to compute buffer size, now that
10413         it is guaranteed to be defined.
10415 2003-02-04  Ulrich Drepper  <drepper@redhat.com>
10417         * iconvdata/Makefile: Add rules to build and run bug-iconv3.
10418         * iconvdata/bug-iconv3.c: New file.
10420 2003-02-04  Martin Schwidefsky  <schwidefsky@de.ibm.com>
10422         * sysdeps/unix/sysv/linux/s390/system.c: New file.
10424 2003-02-03  Jakub Jelinek  <jakub@redhat.com>
10426         * sysdeps/sparc/sparc32/elf/configure.in (BROKEN_SPARC_WDISP22): New
10427         check.
10428         * config.h.in (BROKEN_SPARC_WDISP22): Add.
10430 2003-02-03  Ulrich Drepper  <drepper@redhat.com>
10432         * sysdeps/i386/i686/memmove.S: New file.
10434 2003-01-31  Steven Munroe  <sjmunroe@us.ibm.com>
10436         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c:
10437         Include kernel-features.h
10438         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: Likewise.
10439         * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S: Likewise.
10440         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: Likewise.
10441         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Likewise.
10443 2003-02-02  Jakub Jelinek  <jakub@redhat.com>
10445         * elf/tls-macros.h [sparc] (TLS_LD, TLS_GD): Add "cc" clobbers.
10447 2003-01-25  Jim Meyering  <jim@meyering.net>
10449         * io/ftw.c (object_compare): Compare inode numbers before device
10450         numbers, since the former are much more likely to differ.
10452 2003-02-01  Ulrich Drepper  <drepper@redhat.com>
10454         * time/tzfile.c (__tzfile_compute): Change return value type to
10455         void.  Adjust return statements.
10456         * include/time.h (__tzfile_compute): Adjust prototype.
10458 2003-02-01  Jim Meyering  <jim@meyering.net>
10460         * time/tzset.c (__tz_convert): Remove dead code; __tzfile_compute
10461         always returns 1.
10463 2003-01-31  Steven Munroe  <sjmunroe@us.ibm.com>
10465         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c
10466         [!__ASSUME_NEW_PRCTL_SYSCALL]: Noop prctl syscall and set ENOSYS.
10468 2003-01-31  Steven Munroe  <sjmunroe@us.ibm.com>
10470         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S
10471         [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Generate ENOSYS stub.
10472         * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S
10473         [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Likewise.
10474         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S
10475         [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Likewise.
10476         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S
10477         [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Likewise.
10479 2003-01-31  Steven Munroe  <sjmunroe@us.ibm.com>
10481         * sysdeps/unix/sysv/linux/configure.in: Change arch_minimum_kernel
10482         back to 2.4.19 for powerpc64.
10483         * sysdeps/unix/sysv/linux/kernel-features.h
10484         (__ASSUME_NEW_PRCTL_SYSCALL): Define for powerpc64.
10485         (__ASSUME_NEW_RT_SIGRETURN_SYSCALL): Define for powerpc64.
10487 2003-02-01  Ulrich Drepper  <drepper@redhat.com>
10489         * wcsmbs/wcscpy.c (wcscpy): Add alternative implementation for
10490         platforms with strange alignment requirements on wchar_t.
10492 2003-01-31  Andreas Schwab  <schwab@suse.de>
10494         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Remove __GI_*
10495         aliases, already added by make-syscalls.sh.
10496         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
10497         * sysdeps/unix/sysv/linux/hppa/syscalls.list: Likewise.
10498         * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise.
10499         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
10500         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
10501         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
10502         * sysdeps/unix/sysv/linux/syscalls.list: Likewise.
10503         * sysdeps/unix/inet/syscalls.list: Likewise.
10504         * sysdeps/unix/syscalls.list: Likewise.
10506 2003-01-31  Andreas Schwab  <schwab@suse.de>
10508         * sysdeps/m68k/Makefile (sysdep-CFLAGS): Don't define, not needed
10509         any more.
10511 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
10513         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S (__clone): Use lg,
10514         not l to load tls from stack.
10516 2003-01-30  Roland McGrath  <roland@redhat.com>
10518         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Move check for
10519         null argument before all else.
10520         Reported by Martin Schwidefsky <schwidefsky@de.ibm.com>.
10522 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
10524         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_lazy_rel):
10525         Move to RESOLVE protected part of the header.
10526         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_lazy_rel):
10527         Likewise.
10529 2003-01-30  Ulrich Drepper  <drepper@redhat.com>
10531         * stdio-common/Makefile (tests): Add bug15.
10532         (bug15-ENV): Define.
10533         * stdio-common/bug15.c: New file.
10535 2002-10-07  Wolfram Gloger  <wg@malloc.de>
10537         * malloc/malloc.c (sYSMALLOc): Only check for breakage due
10538         to foreign sbrk()'s if arena is contiguous.  Bug report from
10539         Bruno Haible <bruno@clisp.org>.
10541 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
10543         * sysdeps/s390/libc-tls.c: Include stdlib.h.
10545 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
10547         * stdio-common/vfprintf.c (vfprintf): Only subtract lowest 3 bits of
10548         ps.__count.
10550 2003-01-30  Ulrich Drepper  <drepper@redhat.com>
10552         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S: Fix storing and
10553         restoring of %r6.
10554         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S: Likewise.  Use
10555         64-bit load.
10556         Patch by Martin Schwidefsky  <schwidefsky@de.ibm.com>.
10558 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
10560         * elf/dl-reloc.c (CHECK_STATIC_TLS): Move _dl_signal_error...
10561         (allocate_static_tls): ...here.  Add __attribute_noinline__.
10562         Don't return on failure.
10563         (_dl_reloc_bad_type): Add __attribute_noinline__.
10564         * elf/do-rel.h (elf_dynamic_do_rel): Add
10565         __attribute__((always_inline)).
10566         * elf/dynamic-link.h (elf_machine_rel, elf_machine_rela,
10567         elf_machine_rel_relative, elf_machine_rela_relative,
10568         elf_machine_lazy_rel): Add prototypes with
10569         __attribute__((always_inline)).
10571 2003-01-29  David Mosberger  <davidm@hpl.hp.com>
10573         * elf/dl-support.c (_dl_aux_init): Handle AT_SYSINFO.
10575 2003-01-29  Roland McGrath  <roland@redhat.com>
10577         * configure.in: Barf if configured in $srcdir.
10579 2003-01-28  Steven Munroe  <sjmunroe@us.ibm.com>
10581         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c
10582         (__fe_nomask_env): Change __prctl call to INTERNAL_SYSCALL.
10584 2003-01-28  Martin Schwidefsky  <schwidefsky@de.ibm.com>
10586         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S: Reorder additional
10587         clone parameters to match the order used on ia32.
10588         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S: Likewise.
10590 2003-01-27  Martin Schwidefsky  <schwidefsky@de.ibm.com>
10592         * elf/elf.h: Add new s390 relocs.
10593         * elf/tls-macros.h: Add s390 versions.
10594         * sysdeps/s390/Versions [GLIBC_2.3] (ld): Export __tls_get_offset.
10595         * sysdeps/s390/dl-tls.h: New file.
10596         * sysdeps/s390/libc-tls.c: New file.
10597         * sysdeps/s390/s390-32/dl-machine.h (elf_machine_type_class): Add TLS
10598         relocs for class PLT.
10599         (elf_machine_rela): Handle TLS relocs.
10600         * sysdeps/s390/s390-64/dl-machine.h: Likewise.
10601         * sysdeps/s390/s390-32/elf/configure.in: Add TLS check.
10602         * sysdeps/s390/s390-64/elf/configure.in: Likewise.
10603         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S: Add support for
10604         CLONE_CHILD_*TID flags.
10605         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S: Likewise.
10606         * sysdeps/unix/sysv/linux/s390/s390-64/mmap.S: Use branch with 32
10607         bit offset.
10608         * sysdeps/unix/sysv/linux/s390/s390-64/socket.S: Likewise.
10609         * sysdeps/unix/sysv/linux/s390/s390-64/syscall.S: Likewise.
10610         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S (__syscall_error):
10611         Support USE___THREAD. Define RTLD_PRIVATE_ERRNO variant.
10612         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S (__syscall_error):
10613         Likewise.
10614         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h:
10615         (SYSCALL_ERROR_LABEL): Move define next to SYSCALL_ERROR_HANDLER.
10616         (SYSCALL_ERROR_HANDLER): Add USE___THREAD and RTLD_PRIVATE_ERRNO
10617         variants.
10618         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h:
10619         (SYSCALL_ERROR_LABEL): Move define next to SYSCALL_ERROR_HANDLER. Use
10620         direct branch to syscall_error for !PIC and PIC && !_LIBC_REENTRANT.
10621         (SYSCALL_ERROR_HANDLER): Add USE___THREAD and RTLD_PRIVATE_ERRNO
10622         variants.
10624 2003-01-28  Ulrich Drepper  <drepper@redhat.com>
10626         * sysdeps/unix/common/pause.c (do_pause): New function.  Split
10627         from __libc_pause.  Implement using sigsuspend.
10628         (__libc_pause): Call do_pause to do the real work.
10630         * sysdeps/posix/sigpause.c (do_sigpause): Check range of
10631         sig_or_mask parameter is is_sig != 0.
10633 2003-01-21  Philip Blundell  <philb@gnu.org>
10635         * sysdeps/unix/sysv/linux/bits/ioctls.h (SIOCSIFNAME): Define.
10637 2003-01-27  Steven Munroe  <sjmunroe@us.ibm.com>
10639         * stdio-common/Makefile: Add bug14-ENV to set LOCPATH for make check.
10641 2003-01-27  Ulrich Drepper  <drepper@redhat.com>
10643         * stdio-common/bug14.c: Use official name for the locale.
10645         * stdio-common/vfprintf.c [USE_IN_LIBIO]: Use _IO_cleanup_region_start
10646         instead of __libc_cleanup_region_start and _IO_cleanup_region_end
10647         instead of __libc_cleanup_region_end.
10649         * sysdeps/unix/sysv/linux/i386/system.c (CLEANUP_HANDLER): Pass 1
10650         as first parameter to __libc_cleanup_region_start.
10652         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c
10653         (__fe_nomask_env): Use __prctl not prctl.
10654         * sysdeps/unix/sysv/linux/syscalls.list: Add __prctl alias for
10655         prctl syscall.
10657         * elf/dl-reloc.c (CHECK_STATIC_TLS): Improve error message.
10659         * elf/dl-open.c (_dl_tls_static_size): Bump to 2048.
10661         * elf/dl-reloc.c (allocate_static_tls): Avoid arithmetic
10662         wrap-around in test.
10664 2003-01-26  Andreas Schwab  <schwab@suse.de>
10666         * sysdeps/wordsize-32/divdi3.c: Export the functions only as
10667         compatibility symbols.  Remove INTDEF for __divdi3.
10668         * sysdeps/wordsize-32/lldiv.c: Don't use __divdi3_internal.
10669         * sysdeps/powerpc/powerpc32/divdi3.c: Remove.
10670         * sysdeps/powerpc/powerpc32/Makefile (CPPFLAGS-divdi3.c): Don't
10671         define.
10672         * sysdeps/powerpc/powerpc32/Dist: Remove divdi3.c.
10674 2003-01-24  Jakub Jelinek  <jakub@redhat.com>
10676         * elf/tls-macros.h: Add SPARC 32-bit definitions.
10677         * sysdeps/sparc/sparc32/elf/configure.in: Add TLS check.
10678         * sysdeps/sparc/sparc32/dl-machine.h: Add dl_machine_h guards
10679         for the first half of the header.  Include tls.h.
10680         (elf_machine_type_class): Return ELF_RTYPE_CLASS_PLT for TLS
10681         relocs too.
10682         (elf_machine_rela): Handle TLS relocs.
10683         * sysdeps/sparc/dl-tls.h: New file.
10685         * sysdeps/unix/sysv/linux/sparc/sparc32/socket.S: Add cancellation
10686         support.
10688         * sysdeps/sparc/sparc32/sparcv9/hp-timing.h: Use %g6 instead of %g7.
10689         * sysdeps/sparc/sparc32/memchr.S: Likewise.
10690         * sysdeps/sparc/sparc32/memcpy.S: Likewise.
10691         * sysdeps/sparc/sparc32/strcat.S: Likewise.
10692         * sysdeps/sparc/sparc32/strchr.S: Likewise.
10693         * sysdeps/sparc/sparc32/strcmp.S: Likewise.
10694         * sysdeps/sparc/sparc32/strcpy.S: Likewise.
10695         * sysdeps/sparc/sparc64/sparcv9b/memcpy.S: Likewise.
10696         * sysdeps/sparc/sparc64/hp-timing.h: Likewise.
10697         * sysdeps/sparc/sparc64/memcpy.S: Likewise.
10698         * sysdeps/sparc/sparc64/stpcpy.S: Likewise.
10699         * sysdeps/sparc/sparc64/stpncpy.S: Likewise.
10700         * sysdeps/sparc/sparc64/strcat.S: Likewise.
10701         * sysdeps/sparc/sparc64/strchr.S: Likewise.
10702         * sysdeps/sparc/sparc64/strcmp.S: Likewise.
10703         * sysdeps/sparc/sparc64/strcpy.S: Likewise.
10704         * sysdeps/sparc/sparc64/strncmp.S: Likewise.
10705         * sysdeps/sparc/sparc64/strncpy.S: Likewise.
10706         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Likewise.
10707         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h: Likewise.
10709 2003-01-24  Andreas Schwab  <schwab@suse.de>
10711         * elf/dl-close.c (_dl_close): Don't relocate DT_FINI_ARRAY
10712         elements, and process them backwards.
10713         * elf/Makefile ($(objpfx)tst-array4): New target.
10714         ($(objpfx)tst-array4.out): Likewise.
10715         (tests) [$(have-initfini-array) = yes]: Add tst-array4.
10716         * elf/tst-array4.c: New file.
10717         * elf/tst-array4.exp: Likewise.
10719 2003-01-24  Steven Munroe  <sjmunroe@us.ibm.com>
10721         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c: New file.
10723 2003-01-27  Guido Guenther  <agx@sigxcpu.org>
10725         * sysdeps/unix/sysv/linux/mips/sysdep.h (SYSCALL_ERROR_LABEL): Define.
10726         * sysdeps/unix/sysv/linux/mips/pread.c: Add support for
10727         cancellation handling and handle both __NR_pread64 and __NR_pread.
10728         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
10729         * sysdeps/unix/sysv/linux/mips/pwrite.c: Add support for
10730         cancellation handling and handle both __NR_pwrite64 and __NR_pwrite.
10731         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
10732         * sysdeps/unix/mips/sysdep.S: Don't set errno in the _LIBC_REENTRANT
10733         case, use register names consistently.
10735 2003-01-27  Wolfram Gloger  <wg@malloc.de>
10737         * malloc/hooks.c (mem2chunk_check): Check alignment of mem
10738         pointer, not of the computed chunk.  Bug report from Carlos
10739         O'Donell <carlos@baldric.uwo.ca>.
10741 2003-01-25  Andreas Schwab  <schwab@suse.de>
10743         * sysdeps/m68k/dl-machine.h (_dl_start_user): Use pc-relative
10744         addressing to save GOT entries.
10746 2003-01-21  Jakub Jelinek  <jakub@redhat.com>
10748         * sysdeps/unix/alpha/sysdep.h (inline_syscall0,
10749         inline_syscall1, inline_syscall2, inline_syscall3,
10750         inline_syscall4, inline_syscall5, inline_syscall6): Add __volatile__.
10751         * sysdeps/unix/sysv/linux/alpha/sysdep.h (INTERNAL_SYSCALL): Add
10752         __attribute__((unused)) to ChEcK.
10754 2003-01-20  Martin Schwidefsky  <schwidefsky@de.ibm.com>
10756         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (INTERNAL_SYSCALL):
10757         Fix inline assembler constraints.
10758         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (INTERNAL_SYSCALL):
10759         Likewise.
10761         * sysdeps/s390/s390-64/Makefile (pic-ccflag): Use -fpic instead of
10762         -fPIC.
10764 2003-01-20  Segher Boessenkool  <segher@koffie.nl>
10766         * sysdeps/ieee754/dbl-64/sincos32.c (__mpcos): Really
10767         compute the cosine, not the sine, even if x > 0.8.
10769 2003-01-19  Ulrich Drepper  <drepper@redhat.com>
10771         * nis/nss_nis/nis-spwd.c: Make _nss_nis_endspent an alias of
10772         _nss_nis_setspent.  Work around the different prototypes.
10773         * nis/nss_nis/nis-rpc.c (internal_nis_setrpcent): Use
10774         internal_nis_endrpcent.
10775         (internal_nis_endrpcent): Change return type to void.  Change callers.
10776         * nis/nss_nis/nis-pwd.c: Make _nss_nis_endpwent an alias of
10777         _nss_nis_setpwent.  Work around the different prototypes.
10778         * nis/nss_nis/nis-proto.c (_nss_nis_endprotoent): Split out body
10779         of the function to...
10780         (internal_nis_endprotoent): ... here.  New function.
10781         (internal_nis_setprotoent): Use internal_nis_endprotoent.
10782         * nis/nss_nis/nis-network.c: Make _nss_nis_endnetent an alias of
10783         _nss_nis_setnetent.  Work around the different prototypes.
10784         * nis/nss_nis/nis-netgrp.c (_nss_nis_endnetgrent): Split out body
10785         of the function to...
10786         (internal_nis_endnetgrent): ... here.  New function.
10787         (_nss_nis_setnetgrent): Use internal_nis_endnetgrent.
10789 2003-01-19  Jim Meyering  <jim@meyering.net>
10791         * time/strftime.c: (widen): Merge nearly-identical definitions.
10792         (nl_get_alt_digit) [! defined my_strftime]: Define.
10793         (my_strftime) [_NL_CURRENT]: Merge nearly-identical uses of
10794         _nl_get_alt_digit and _nl_get_walt_digit.
10796 2003-01-19  Ulrich Drepper  <drepper@redhat.com>
10798         * time/strftime.c (my_strftime): Handle very large width
10799         specifications for numeric values correctly.  Improve checks for
10800         overflow.
10801         * time/Makefile (tests): Add tst-strftime.
10802         * time/tst-strftime.c: New file.
10804 2003-01-18  Ulrich Drepper  <drepper@redhat.com>
10806         * nis/nss_nis/nis-hosts.c: Make _nss_nis_endhostent an alias of
10807         _nss_nis_sethostent.  Work around the different prototypes.
10808         * nis/nss_nis/nis-grp.c: Make _nss_nis_endgrent an alias of
10809         _nss_nis_setgrent.  Work around the different prototypes.
10810         * nis/nss_nis/nis-ethers.c (internal_nis_endetherent): New
10811         function.  Split out from _nss_nis_endetherent.
10812         (internal_nis_setetherent): Use internal_nis_endetherent instead of
10813         duplicating the code.
10814         * nis/nss_nis/nis-alias.c: Make _nss_nss_nis_endaliasent an alias
10815         of _nss_nis_setaliasent.
10816         * nis/nss_nis/nis-service.c (internal_nis_setservent): Reuse
10817         internal_nis_endservent code, don't duplicate it.
10819         * inet/rexec.c (rexec_af): Protect socket operations with
10820         TEMP_FAILURE_RETRY.  Use writev instead of multiple write.
10821         * inet/rcmd.c (rcmd_af): Likewise.
10823 2003-01-17  Roland McGrath  <roland@redhat.com>
10825         * math/libm-test.inc (sin_test, cos_test, sincos_test) [TEST_DOUBLE]:
10826         Add test of value 0.80190127184058835.
10828         * elf/dl-open.c: Fix typo ifdef -> ifndef on _dl_tls_static_size defn.
10830 2003-01-17  Richard Henderson  <rth@redhat.com>
10832         * sysdeps/alpha/dl-machine.h (elf_machine_type_class): Add TLS
10833         relocs for class PLT.
10834         * sysdeps/alpha/libc-tls.c: New file.
10835         * sysdeps/unix/alpha/sysdep.S (EPILOGUE, GPSAVEREG): New.
10836         (LOADGP) [!PIC]: Rewrite to preserve caller's gp.
10838 2003-01-17  Jakub Jelinek  <jakub@redhat.com>
10840         * sysdeps/unix/sysv/linux/ia64/dl-static.c (_dl_static_init): Use
10841         __libc_lock_{,un}lock_recursive instead of __libc_lock_{,un}lock
10842         on _dl_static_lock.
10844 2003-01-17  Andreas Jaeger  <aj@suse.de>
10846         * stdio-common/bug14.c: Include stdlib.h for exit prototype.
10848 2003-01-16  Steven Munroe  <sjmunroe@us.ibm.com>
10850         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: New file.
10851         * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S: New file.
10852         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: New file.
10853         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: New file.
10854         * sysdeps/unix/sysv/linux/powerpc/powerpc64/ucontext_i.h: New file.
10855         * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: New file.
10856         * sysdeps/unix/sysv/linux/configure.in: Minimum kernel for PPC64
10857         is 2.4.21.
10859 2003-01-16  Ulrich Drepper  <drepper@redhat.com>
10861         * sysdeps/generic/glob.c (glob): Assume sysconf() always returns
10862         values != -1 for _LIBC.  Use extend_alloca to reallocate alloca'ed
10863         buffers.
10865         * sysdeps/generic/sysconf.c: Unconditionally implement
10866         _SC_GETPW_R_SIZE_MAX and _SC_GETGR_R_SIZE_MAX.
10867         * sysdeps/posix/sysconf.c: Likewise.
10869 2003-01-16  Jakub Jelinek  <jakub@redhat.com>
10871         * posix/regcomp.c (parse_bracket_exp): If build_charclass fails,
10872         set *err to the returned error, not to REG_ESPACE unconditionally.
10873         (build_word_op): Likewise.
10874         * posix/Makefile (tests): Add bug-regex16.
10875         * posix/bug-regex16.c: New test.
10877 2003-01-16  Jakub Jelinek  <jakub@redhat.com>
10879         * elf/dl-load.c (_dl_map_object_from_fd): Use
10880         GL(dl_tls_dtv_slotinfo_list) != NULL to check whether TLS has
10881         been already initialized.
10883 2003-01-15  Dmitry V. Levin  <ldv@altlinux.org>
10885         * sysdeps/unix/sysv/linux/ptsname.c: Fix typo in comment.
10887 2003-01-16  Jakub Jelinek  <jakub@redhat.com>
10889         * posix/regcomp.c (re_compile_internal): If clearing buffer, clear
10890         allocated too.  Reported by Al Viro <aviro@redhat.com>.
10892 2003-01-16  Roland McGrath  <roland@redhat.com>
10894         Tweak merged .abilist file format to merge duplicate symbols in
10895         different sets into multi-version stanzas with new "| SET regexp..."
10896         header continuation lines.
10897         * scripts/merge-abilist.awk: Rewritten for new format.
10898         * scripts/extract-abilist.awk: Likewise.
10900 2003-01-15  Ulrich Drepper  <drepper@redhat.com>
10902         * nscd/connections.c (nscd_run): Remove bogus return which isn't
10903         necessary with gcc 3.2+.
10904         (nscd_init): Don't use error() to print message, use dbg_log.
10906         * iconv/gconv_simple.c (STORE_REST): Explicitly store the total
10907         expected size into state.
10908         (UNPACK_BYTES): Do the reverse.
10909         * iconv/loop.c: Use CLEAR_STATE if defined to clear __state element.
10910         * wcsmbs/tst-mbrtowc.c (utf8_test_1): Add test for the bug.
10911         Reported by Al Viro <aviro@redhat.com>.
10913         * stdio-common/Makefile (tests): Add bug14.
10914         * stdio-common/bug14.c: New file.
10916         * stdio-common/vfscanf.c: When recognizing multibyte characters in
10917         string reset the byte counter after mbrtowc reported it is not a
10918         partial character.  Reported by Al Viro <aviro@redhat.com>.
10920 2003-01-15  Steven Munroe  <sjmunroe@us.ibm.com>
10922         * sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S: Include
10923         sysdep-cancel.h, not sysdep.h.
10925 2003-01-15  Ulrich Drepper  <drepper@redhat.com>
10927         * nscd/connections.c (nscd_run): Protect accept call with
10928         TEMP_FAILURE_RETRY.
10930 2003-01-15  Andreas Schwab  <schwab@suse.de>
10932         * sysdeps/unix/Makefile: Include $(common-objpfx)s-proto-bp.d.
10933         (common-generated): Add s-proto-bp.d.
10934         * sysdeps/unix/make-syscalls.sh: Use s-proto-bp.d for dependencies
10935         of bp thunks.
10936         * sysdeps/unix/s-proto-bp.S: New file.
10937         * sysdeps/generic/bp-thunks.h: Don't include <sys/vm86.h> here.
10938         Use <io/sys/sendfile.h> instead of <sys/sendfile.h>.
10939         * sysdeps/unix/sysv/linux/i386/bp-thunks.h: New file.
10941 2003-01-15  Roland McGrath  <roland@redhat.com>
10943         * Makerules: Use -include for tls.make, suppresses warning.
10944         Move gen-as-const-headers rules up so before-compile is set in time.
10945         (sed-remove-dotdot): Fix to work right for subdirs or top dir.
10947 2003-01-15  Ulrich Drepper  <drepper@redhat.com>
10949         * nscd/nscd.c (main): Make code to close all file descriptors
10950         faster and more robust.
10952         * nscd/nscd_getpw_r.c (nscd_getpw_r): Consolidate writing of the
10953         request with one writev call.  Protect all read calls with
10954         TEMP_FAILURE_RETRY.
10955         * nscd/nscd_getgr_r.c (nscd_getgr_r): Likewise.
10956         * nscd/nscd_gethst_r.c (nscd_gethst_r): Likewise.
10958         * nscd/hstcache.c: Use extend_alloca to reallocate alloca'd buffer.
10959         Protect writev calls with TEMP_FAILURE_RETRY.
10960         * nscd/grpcache.c: Likewise.
10961         * nscd/pwdcache.c: Likewise.
10963         * nscd/hstcache.c (addhstbynamev6): Don't interpret hostname as
10964         IPv6 address in debug output.
10966 2003-01-14  Roland McGrath  <roland@redhat.com>
10968         * Makerules (check-abi-%): Use two rules for $(common-objpfx) and
10969         $(objpfx) directories, and get rid of vpath directives.  The previous
10970         arrangement resulted in files being written to the source directories
10971         when run in a clean build.  Find all .abilist files in $(..)abilist/.
10972         (update-abi-%): Likewise.
10973         (generated): Don't add .symlist files, they'll be intermediates.
10975         * sysdeps/generic/init-first.c: Add a comment.
10977         * elf/Makefile ($(objpfx)ld.so): Pass -z defs in link.
10979         * scripts/gen-as-const.awk: Grok lone "--" as a separator between
10980         #includes and expressions.
10982         * scripts/merge-abilist.awk: Omit cpu-.*-os.*/modifier from merged
10983         config list when it already contains cpu-.*-os.* without / part.
10985         * Makerules (sed-remove-dotdot): New variable.
10986         ($(common-objpfx)%.make): Use it.  Depend on $(before-compile).
10987         ($(common-objpfx)%.h $(common-objpfx)%.h.d): Likewise.
10988         (check-abi-config): New variable, append /tls or /notls to the tuple.
10989         (check-abi-%): Use that for -v config value.
10990         Find .abilist files in abilist/libfoo.abilist, not in subdir.
10991         * Rules: Move bits/stdio_lim.h generation rules to Makerules.
10993 2003-01-14  Ulrich Drepper  <drepper@redhat.com>
10995         * manual/install.texi: Correct description of header preparation for
10996         Linux build.  Patch by mhwood@Ameritech.Net [PR libc/4941].
10998 2003-01-14  Guido Guenther  <agx@sigxcpu.org>
11000         * sysdeps/unix/sysv/linux/mips/sysdep.h (INTERNAL_SYSCALL,
11001         INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
11002         INTERNAL_SYSCALL_ERROR_P, INLINE_SYSCALL): Define.
11004 2003-01-14  Steven Munroe  <sjmunroe@us.ibm.com>
11006         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h
11007         (INTERNAL_SYSCALL): Make use of ERR parameter.
11008         (INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
11009         INTERNAL_SYSCALL_ERROR_P): Adjust accordingly.
11010         (INLINE_SYSCALL): Make use of INTERNAL_SYSCALL.
11011         * sysdeps/unix/sysv/linux/powerpc/powerpc64/vfork.S: New file.
11013 2003-01-14  Ulrich Drepper  <drepper@redhat.com>
11015         * sunrpc/pm_getport.c (pmap_getport): Open TCP socket if protocol
11016         == IPPROTO_TCP.
11017         Patch by James Strandboge <jamie@tpptraining.com> [PR libc/4943].
11019         * sysdeps/unix/sysv/linux/i386/dl-procinfo.c (_dl_x86_cap_flags):
11020         Fix entry for bit 31.
11022         * iconvdata/Makefile: Add rules to build IBM866NAV.
11023         * iconvdata/ibm866nav.c: New file.
11024         * iconvdata/tst-tables.sh: Add IBM866NAV.
11025         * iconvdata/gconv-modules: Add entries for IBM866NAV.
11027 2003-01-13  Ulrich Drepper  <drepper@redhat.com>
11029         * string/tester.c (test_strcpy): Use the previously #if 0'ed code
11030         to test void* parameters.
11032         * sysdeps/i386/i486/bits/string.h (__STRING_SMALLL_GET16): Cast
11033         source pointer before dereferencing.
11034         (__STRING_SMALLL_GET32): Likewise.
11035         (__memset_gc): Add missing parenthesis around macro arguments.
11036         Patch by Denis Zaitsev <zzz@cd-club.ru>.
11038         * sysdeps/i386/i486/bits/string.h (__strspn_cg): Tell the compiler
11039         that %eax is modified.  Reported by Denis Zaitsev <zzz@cd-club.ru>.
11041 2003-01-14  Jakub Jelinek  <jakub@redhat.com>
11043         * sysdeps/unix/alpha/sysdep.h (INLINE_SYSCALL): Undefined before
11044         defining.
11046 2003-01-13  Martin Schwidefsky  <schwidefsky@de.ibm.com>
11048         * sysdeps/s390/s390-64/initfini.c: Avoid unterminated string literals.
11049         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (L): Don't define it
11050         here.
11051         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (L): Likewise.
11053 2003-01-13  Martin Schwidefsky  <schwidefsky@de.ibm.com>
11055         * sysdeps/s390/s390-32/sysdep.h (JUMPTARGET): Move branch instructions
11056         from here...
11057         (PSEUDO): ... to here.
11058         * sysdeps/s390/s390-64/sysdep.h (JUMPTARGET): Move branch instruction
11059         from here...
11060         (PSEUDO): ... to here.
11062 2003-01-13  Ulrich Drepper  <drepper@redhat.com>
11064         * locale/programs/charmap-dir.c (charmap_readdir): Use struct
11065         dirent64 instead of struct dirent for dirent.  Call readdir64
11066         instead of readdir.
11068         * locale/programs/locfile.c (siblings_uncached): Use struct
11069         dirent64 instead of struct dirent for other_dentry.  Call
11070         readdir64 instead of readdir.
11072         * elf/ldconfig.c (direntry): Change type to struct dirent64.
11073         (search_dir): Use readdir64 instead of readdir.
11074         Patch by Zhangfan Xing <xing@pacific.jpl.nasa.gov>.
11076 2003-01-12  Roland McGrath  <roland@redhat.com>
11078         * hurd/lookup-retry.c (__hurd_file_name_lookup_retry): Use strtoul,
11079         not strtol.  The former is usable in ld.so, the latter not.
11081         * include/fcntl.h: Declare __libc_creat.
11083         * sysdeps/mach/hurd/Makefile (libmachuser-link.so-no-z-defs,
11084         libhurduser-link.so-no-z-defs): New variables.
11086         * malloc/malloc.c: Revert last change.
11087         * malloc/malloc.h (_int_*): Move these decls to ...
11088         * include/malloc.h: ... here.  Add attribute_hidden.
11089         (_int_valloc): Declare it too.
11091 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
11093         * elf/dl-close.c (_dl_close): Fix typo, must be == not = in
11094         search for removed searchlist.  Reported by Roland McGrath.
11096         * io/ftwtest-sh: Add test for case of symlink to nonexisting file
11097         given as start file.
11099         * io/ftw.c (ftw_startup): Use correct name in check for symlink
11100         without existing target.  Patch by Jim Meyering.
11102         * Makerules (build-shlib-helper): Don't use -z defs linker option
11103         if no-z-defs is defined either.
11105 2003-01-10  Martin Schwidefsky  <schwidefsky@de.ibm.com>
11107         * sysdeps/unix/sysv/linux/s390/s390-64/kernel_stat.h: Remove unused
11108         file.
11110 2003-01-10  Martin Schwidefsky  <schwidefsky@de.ibm.com>
11112         * sysdeps/unix/sysv/linux/s390/s390-32/syscalls.list: Add vfork.
11113         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
11115 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
11117         * io/ftwtest-sh: Add test case for relative path with /. at the end.
11119 2003-01-12  Jim Meyering  <jim@meyering.net>
11121         * io/ftw.c (ftw_startup): When trying to stat the starting directory,
11122         use the basename if we've already chdir'd into its parent directory.
11124 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
11126         * io/ftw.c (process_entry): Use relative path when using chdir()
11127         to change directory after call to ftw_dir.
11128         * io/ftwtest-sh: Add test for relative path argument to nftw()
11129         with FTW_CHDIR option.
11131 2003-01-12  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
11133         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_VFORK_SYSCALL):
11134         Define for powerpc.
11135         * sysdeps/unix/sysv/linux/powerpc/syscall.S: Take register alignment
11136         into account.
11137         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h
11138         (INTERNAL_SYSCALL): Make use of ERR parameter.
11139         (INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
11140         INTERNAL_SYSCALL_ERROR_P): Adjust accordingly.
11141         (INLINE_SYSCALL): Make use of INTERNAL_SYSCALL.
11142         * sysdeps/unix/sysv/linux/powerpc/powerpc32/vfork.S: New file.
11144 2003-01-09  Richard Henderson  <rth@redhat.com>
11146         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Compute
11147         DTPREL64 and TPREL64 without loadbase applied.
11149 2003-01-09  Richard Henderson  <rth@redhat.com>
11151         * sysdeps/unix/alpha/sysdep.S: Use correct definition of errno
11152         for NOT_IN_libc.
11154         * sysdeps/unix/sysv/linux/alpha/sysdep.h: Move inline syscall bits...
11155         * sysdeps/unix/alpha/sysdep.h: ... here.
11156         (PSEUDO_LOADGP): Remove.
11157         (PSEUDO_PROLOGUE): Load GP in non-pic case.
11158         (SYSCALL_ERROR_LABEL): New.
11159         (PSEUDO): Use it in error branch.
11160         (PSEUDO_END): Add $syscall_error label.
11162 2003-01-12  Andreas Jaeger  <aj@suse.de>
11164         * math/bits/mathcalls.h: Round is a const function.
11166 2003-01-11  Jim Meyering  <jim@meyering.net>
11168         * io/ftw.c [HAVE_CONFIG_H]: Include <config.h>.
11169         [HAVE_SYS_PARAM_H || _LIBC]: Guard inclusion of <sys/param.h>.
11170         Include <sys/stat.h>, not <include/sys/stat.h>, if !_LIBC.
11171         [!_LIBC] (__chdir, __closedir, __fchdir, __getcwd, __opendir): Define.
11172         [!_LIBC] (__readdir64, __tdestroy, __tfind, __tsearch): Define.
11173         [!_LIBC] (internal_function, dirent64, MAX): Define.
11174         (__set_errno): Define if not already defined.
11175         (open_dir_stream): When FTW_CHDIR is enabled, invoke opendir on
11176         the basename, not the entire file name.
11177         (process_entry): When FTW_CHDIR is enabled, invoke XSTAT or LXSTAT on
11178         the basename, not the entire file name.
11180 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
11182         * string/tester.c (test_strcpy): Disable last added strcpy until
11183         it is fixed.
11185 2003-01-11  Philip Blundell  <philb@gnu.org>
11187         * sysdeps/unix/sysv/linux/arm/socket.S: Add cancellation support.
11189 2003-01-11  Andreas Schwab  <schwab@suse.de>
11191         * Makerules: Add vpath for %.dynsym and %.so so that the
11192         implicit rule chaining for check-abi works.
11194 2003-01-11  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
11196         * sysdeps/unix/sysv/linux/sh/sysdep.h (SYSCALL_ERROR_HANDLER):
11197         Add non-PIC case.
11199 2003-01-11  Jakub Jelinek  <jakub@redhat.com>
11201         * elf/tls-macros.h [__ia64__] (__TLS_CALL_CLOBBERS): Define.
11202         [__ia64__] (TLS_LE, TLS_IE): Fix typos.  Add ;; at start of asm if
11203         gp is used early.
11204         [__ia64__] (TLS_LD, TLS_GD): Likewise.  Use __TLS_CALL_CLOBBERS.
11205         * elf/Makefile ($(objpfx)tst-tlsmod5.so, $(objpfx)tst-tlsmod6.so):
11206         Ensure libc.so in DT_NEEDED.
11207         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Move
11208         CHECK_STATIC_TLS before l_tls_offset use.
11209         * sysdeps/i386/dl-machine.h (elf_machine_rel, elf_machine_rela):
11210         Likewise.
11211         * sysdeps/sh/dl-machine.h (elf_machine_rela): Likewise.
11212         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage) [TLS_DTV_AT_TP]:
11213         Allocate TLS_PRE_TCB_SIZE bytes below result.
11214         (_dl_deallocate_tls) [TLS_DTV_AT_TP]: Adjust before freeing.
11215         * sysdeps/generic/libc-tls.c (__libc_setup_tls): If
11216         TLS_INIT_TP_EXPENSIVE is not defined, allocate even if no PT_TLS
11217         segment has been found.  If TLS_DTV_AT_TP, allocate TLS_PRE_TCB_SIZE
11218         bytes below result and add tcb_offset to memsz.
11219         * sysdeps/ia64/dl-tls.h (__tls_get_addr): New prototype.
11220         * sysdeps/ia64/dl-machine.h: Include tls.h.
11221         (elf_machine_type_class): Return ELF_RTYPE_CLASS_PLT for TLS relocs
11222         too.
11223         (elf_machine_rela): Assume if sym_map != NULL sym is non-NULL too.
11224         Handle R_IA64_DTPMOD*, R_IA64_DTPREL* and R_IA64_TPREL* relocations.
11225         * sysdeps/ia64/libc-tls.c: New file.
11227 2003-01-10  Steven Munroe  <sjmunroe@us.ibm.com>
11229         * sysdeps/powerpc/powerpc64/sysdep.h (PSEUDO_RET): Add branch hit.
11230         * sysdeps/unix/sysv/linux/powerpc/bits/stat.h (STAT_VER_LINUX):
11231         Fix type.  Move definition out of #if.
11232         * sysdeps/unix/sysv/linux/powerpc/powerpc64/ftruncate64.c: New file.
11233         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pread.c: New file.
11234         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pread64.c: New file.
11235         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pwrite.c: New file.
11236         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pwrite64.c: New file.
11237         * sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S: Add cancellation
11238         support.
11239         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Remove
11240         ftruncate64, pread64, pwrite64, truncate64 entries.
11241         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h
11242         (INLINE_SYSCALL): New version that supports function call like
11243         syscalls.  Add __builtin_expect.
11244         (LOADARGS_n): Add argument size safety checks.
11245         (INTERNAL_SYSCALL): New Macro.
11246         * sysdeps/unix/sysv/linux/powerpc/powerpc64/truncate64.c: New file.
11247         * sysdeps/unix/sysv/linux/powerpc/sys/procfs.h [__PPC_ELF_H]: Avoid
11248         redefinition of elf_fpreg_t and elf_fpregset_t.
11250 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
11252         * elf/dl-close.c (_dl_close): Add several asserts.  Correct and
11253         simplify test for unloading.  If loader of a DSO is unloaded do not
11254         use its scope anymore.  Fall back to own scope and adjust opencounts.
11255         Fix several comments.
11256         * elf/dl-deps.c (_dl_map_object_deps): Always allocate memory for
11257         the l_searchlist, not only for l_initfini.
11259         * elf/dl-lookup.c (add_dependencies): Avoid creating relocation
11260         dependencies if objects cannot be removed.  Remove object with the
11261         definition as not unloadable if necessary.
11263         * elf/reldep6.c: Create relocation dependency before closing the first
11264         module.
11266 2003-01-10  Guido Günther  <agx@sigxcpu.org>
11268         * sysdeps/unix/mips/fork.S: Add PSEUDO_END.
11269         * sysdeps/unix/mips/brk.S: Likewise.
11270         * sysdeps/unix/mips/pipe.S: Likewise.
11272 2003-01-10  Andreas Schwab  <schwab@suse.de>
11274         * sysdeps/unix/sysv/linux/m68k/getsysstats.c: New file.
11276         * sysdeps/unix/sysv/linux/m68k/vfork.S: Optimize for kernels which
11277         are known to have the vfork syscall.
11279         * sysdeps/m68k/sysdep.h (JUMPTARGET): Undefine before defining it.
11281         * sysdeps/unix/sysv/linux/kernel-features.h
11282         (__ASSUME_MMAP2_SYSCALL, __ASSUME_TRUNCATE64_SYSCALL)
11283         (__ASSUME_STAT64_SYSCALL, __ASSUME_FCNTL64)
11284         (__ASSUME_VFORK_SYSCALL): Define for m68k kernels >= 2.4.12.
11286 2003-01-09  Jakub Jelinek  <jakub@redhat.com>
11288         * elf/Makefile: Add rules to build and run reldep9 test.
11289         * elf/reldep9.c: New file.
11290         * elf/reldep9mod1.c: New file.
11291         * elf/reldep9mod2.c: New file.
11292         * elf/reldep9mod3.c: New file.
11294 2003-01-09  Jakub Jelinek  <jakub@redhat.com>
11296         * elf/Makefile: Add rules to build and run nodelete2 test.
11297         * elf/nodelete2.c: New file.
11298         * elf/nodel2mod1.c: New file.
11299         * elf/nodel2mod2.c: New file.
11300         * elf/nodel2mod3.c: New file.
11302 2003-01-09  Jakub Jelinek  <jakub@redhat.com>
11304         * posix/test-vfork.c (noop): Add __attribute_noinline__.
11305         * sysdeps/generic/sysdep.h (JUMPTARGET): Define if not defined.
11306         * sysdeps/i386/sysdep.h (JUMPTARGET): Undefine JUMPTARGET before
11307         defining it.
11308         * sysdeps/powerpc/powerpc32/sysdep.h (JUMPTARGET): Likewise.
11309         * sysdeps/powerpc/powerpc64/sysdep.h (JUMPTARGET): Likewise.
11310         * sysdeps/s390/s390-32/sysdep.h (JUMPTARGET): Likewise.
11311         * sysdeps/s390/s390-64/sysdep.h (JUMPTARGET): Likewise.
11312         * sysdeps/x86_64/sysdep.h (JUMPTARGET): Likewise.
11314 2003-01-09  Andreas Schwab  <schwab@suse.de>
11316         * sysdeps/m68k/fpu/libm-test-ulps: Regenerated.
11318 2003-01-08  Ulrich Drepper  <drepper@redhat.com>
11320         * sysdeps/unix/sysv/linux/arm/sysdep.h (INTERNAL_SYSCALL,
11321         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Add err
11322         argument.
11323         (INTERNAL_SYSCALL_DECL): Define.
11325 2003-01-06  Jakub Jelinek  <jakub@redhat.com>
11327         * sysdeps/unix/sysv/linux/ia64/sysdep.h (INTERNAL_SYSCALL,
11328         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Add err
11329         argument.
11330         (INTERNAL_SYSCALL_DECL): Define.
11331         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h: Likewise.
11332         * sysdeps/unix/sysv/linux/sparc/sysdep.h: Likewise.
11333         * sysdeps/unix/sysv/linux/i386/sysdep.h: Likewise.
11334         (INLINE_SYSCALL): Adjust.
11335         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Likewise.
11336         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise.
11337         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Likewise.
11338         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
11339         * elf/dl-misc.c (_dl_debug_vdprintf): Add INTERNAL_SYSCALL_DECL,
11340         add err argument to INTERNAL_SYSCALL* macros.
11341         * sysdeps/unix/sysv/linux/i386/brk.c (__brk): Likewise.
11342         * sysdeps/unix/sysv/linux/i386/system.c (cancel_handler): Likewise.
11343         * sysdeps/unix/sysv/linux/m68k/brk.c (__brk): Likewise.
11344         * sysdeps/unix/sysv/linux/m68k/getpagesize.c  (__getpagesize):
11345         Likewise.
11346         * sysdeps/unix/sysv/linux/sigwait.c (do_sigwait): Likewise.
11347         * sysdeps/unix/sysv/linux/i386/sigaction.c (__libc_sigaction): Use
11348         INLINE_SYSCALL instead of INTERNAL_SYSCALL and setting errno.
11350 2003-01-07  Ulrich Drepper  <drepper@redhat.com>
11352         Unify symbols in user namespace exported by libc.so and libc.a.
11353         * argp/argp-fmtstream.c: Don't define argp_make_fmtstream,
11354         argp_fmtstream_free, and argp_fmtstream_printf.
11355         * argp/argp-fs-xinl.c: Don't define argp_fmtstream_putc,
11356         argp_fmtstream_puts, argp_fmtstream_write, argp_fmtstream_set_lmargin,
11357         argp_fmtstream_set_rmargin, argp_fmtstream_set_wmargin, and
11358         argp_fmtstream_point.
11359         * gmon/gmon.c: Don't define write_profiling.
11360         * libio/genops.c: Don't define _cleanup.
11362         * intl/explodename.c (_nl_find_language.c): Mark as static.
11363         * intl/loadinfo.h: Remove _nl_find_language prototype.
11365         * libio/fileops.c (_IO_file_seekoff_maybe_mmap): Mark as static.
11366         * libio/libioP.h: Remove declaration.
11368         * libio/iopopen.c (_IO_proc_jumps): Mark as static.
11369         * libio/libioP.h: Remove declaration.
11371         * sysdeps/generic/unwind-dw2.c: Mark __frame_state_for with STATIC.
11372         * sysdeps/generic/framestate.c: Define STATIC before including
11373         unwind-dw2.c.
11375         * time/Versions [GLIBC_2.3.2] (libc): Export strptime_l.
11377 2003-01-06  Philip Blundell  <philb@gnu.org>
11379         * sysdeps/unix/arm/sysdep.S (syscall_error): Optimise a little.
11380         [__LIBC_REENTRANT]: Unify PIC and non-PIC cases.
11382         * sysdeps/unix/sysv/linux/arm/sysdep.h (PSEUDO): Remove .type
11383         directive.
11384         (PSEUDO_RET): Use SYSCALL_ERROR in place of __syscall_error.
11385         (SYSCALL_ERROR): New.
11386         (SYSCALL_ERROR_HANDLER) [NOT_IN_libc]: Provide local copy of error
11387         handling code.
11388         (INTERNAL_SYSCALL): Define.
11389         (INLINE_SYSCALL): Use it.
11390         (INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Define.
11391         * sysdeps/unix/sysv/linux/arm/socket.S (__socket): Use
11392         SYSCALL_ERROR in place of __syscall_error.
11394 2003-01-07  Jakub Jelinek  <jakub@redhat.com>
11396         * sysdeps/ia64/bits/byteswap.h [__GNUC__ >= 2] (__bswap_16,
11397         __bswap_32, __bswap_64): Put x into temporary variable
11398         to avoid warnings.
11399         [!__GNUC__] (__bswap_16, __bswap_32, __bswap_64): Change into static
11400         (inline) functions.
11401         * sysdeps/s390/bits/byteswap.h [__GNUC__ >= 2] (__bswap_16,
11402         __bswap_32, __bswap_64): Put x into temporary variable
11403         to avoid warnings.
11404         [!__GNUC__] (__bswap_16, __bswap_32, __bswap_64): Change into static
11405         (inline) functions.
11406         * sysdeps/i386/bits/byteswap.h [!__GNUC__] (__bswap_16, __bswap_32):
11407         Likewise.
11409 2003-01-07  Jakub Jelinek  <jakub@redhat.com>
11411         * sysdeps/unix/sysv/linux/alpha/adjtime.c (ntp_adjtime): New weak
11412         alias.
11414 2003-01-07  Jakub Jelinek  <jakub@redhat.com>
11416         * elf/rtld.c (_rtld_global): Remove _dl_dynamic_weak initializer.
11417         * elf/dl-support.c (_dl_dynamic_weak): Initialize to 0.
11419 2003-01-07  Ulrich Drepper  <drepper@redhat.com>
11421         * math/libm-test.inc (significand_test): New function.
11422         (main): Call it.
11424 2003-01-06  Roland McGrath  <roland@redhat.com>
11426         * sysdeps/i386/i486/bits/string.h (memset): Add parens around macro
11427         arguments.
11428         (memcpy, memrchr, strcpy, __stpcpy, strncpy, strcat): Likewise.
11429         (strcmp, strncat, strncmp, strchr, __strchrnul, strchrnul): Likewise.
11430         (index, strrchr, rindex, strcspn, strspn, strpbrk, strstr): Likewise.
11432         * string/tester.c (test_strcpy): Add test with `void *' arguments.
11434 2003-01-06  Ulrich Drepper  <drepper@redhat.com>
11436         * sysdeps/i386/fpu/s_significandl.c (__significandl): Really
11437         return significand and not the exponent.
11438         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
11440         * elf/dl-misc.c (_dl_debug_vdprintf): Help PPC port by explicitly
11441         taking address of iov in INTERNAL_SYSCALL call.  Patch by Franz Sirl.
11443         * malloc/malloc.c: Mark all _int_* functions as static.
11445 2003-01-06  Jakub Jelinek  <jakub@redhat.com>
11447         * sysdeps/unix/alpha/sysdep.h (PSEUDO): Use PSEUDO_PREPARE_ARGS.
11448         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S: Add cancellation
11449         handling.
11450         * sysdeps/unix/sysv/linux/alpha/select.S: Likewise.
11452 2003-01-06  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
11454         * sysdeps/powerpc/powerpc32/sysdep.h (PSEUDO_RET): Add branch hint.
11455         * sysdeps/unix/sysv/linux/powerpc/powerpc32/socket.S: Add cancellation
11456         support.
11457         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Remove
11458         ftruncate64, truncate64, pread64 and pwrite64 entries.
11459         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h
11460         (INLINE_SYSCALL): Add __builtin_expect.
11461         (LOADARGS_n): Add argument size safety checks.
11462         * sysdeps/unix/sysv/linux/powerpc/powerpc32/ftruncate64.c: New file.
11463         * sysdeps/unix/sysv/linux/powerpc/powerpc32/truncate64.c: New file.
11464         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pread.c: New file.
11465         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pread64.c: New file.
11466         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pwrite.c: New file.
11467         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pwrite64.c: New file.
11469 2003-01-06  Jakub Jelinek  <jakub@redhat.com>
11471         * sysdeps/generic/sysdep-cancel.h (LIBC_CANCEL_HANDLED): Define.
11472         * sysdeps/generic/creat.c: Include sysdep-cancel.h.
11473         (LIBC_CANCEL_HANDLED): Add.
11475         * sysdeps/unix/sysv/linux/alpha/sysdep.h
11476         (inline_syscall_r0_constraint): Rename to...
11477         (inline_syscall_r0_out_constraint): ... this.  Add =.
11478         (inline_syscall[0-6]): Use inline_syscall_r0_out_constraint.
11480 2003-01-06  Andreas Schwab  <schwab@suse.de>
11482         * sysdeps/m68k/dl-machine.h (elf_machine_runtime_setup): Make
11483         sure this is always inlined.
11484         (elf_machine_rela): Likewise.
11486         * sysdeps/m68k/Makefile (sysdep-CFLAGS): Increase inline limit.
11488 2003-01-04  Roland McGrath  <roland@redhat.com>
11490         * Makeconfig (+mkdep): Add -MP flag.
11491         Suggested by Art Haas <ahaas@airmail.net>.
11493 2003-01-05  Andreas Schwab  <schwab@suse.de>
11495         * sysdeps/m68k/Makefile (CFLAGS-.oS): Append -fPIC.
11497 2003-01-05  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
11499         * sysdeps/unix/sysv/linux/sh/clone.S (__clone): Use
11500         SYSCALL_ERROR_HANDLER.
11501         * sysdeps/unix/sysv/linux/sh/pipe.S (__libc_pipe): Likewise.
11502         * sysdeps/unix/sysv/linux/sh/socket.S (__socket): Likewise.
11503         Add support for cancellation handling.
11504         * sysdeps/unix/sysv/linux/sh/syscall.S (__syscall): Use
11505         SYSCALL_ERROR_HANDLER.
11506         * sysdeps/unix/sysv/linux/sh/vfork.S (__vfork): Likewise.
11507         * sysdeps/unix/sysv/linux/sh/sysdep.h (PSEUDO): Likewise.
11508         Add support for cancellation handling.
11509         (SYSCALL_ERROR_HANDLER): Define PIC variants.
11511 2003-01-04  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
11513         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Mark
11514         __syscall_pread64 and __syscall_pwrite64 cancelable.
11515         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h
11516         (INTERNAL_SYSCALL): New macro.
11517         (LOADARGS_0, LOADARGS_1): Fix.
11519 2003-01-05  Ulrich Drepper  <drepper@redhat.com>
11521         * Makerules (build-shlip-helper): Unless told otherwise, add
11522         -Wl,-z,defs to linker command line.
11523         * rt/Makefile (librt.so): Link with ld.so.
11524         * dlfcn/Makefile (libdl.so): Likewise.
11526 2003-01-05  Jakub Jelinek  <jakub@redhat.com>
11528         * sysdeps/unix/sysv/linux/s390/s390-32/socket.S: Add support for
11529         cancellation handling.
11530         * sysdeps/unix/sysv/linux/s390/s390-64/socket.S: Likewise.
11531         * sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c: Likewise.
11533 2003-01-04  Ulrich Drepper  <drepper@redhat.com>
11535         * sysdeps/unix/sysv/linux/i386/system.c (cancel_handler): Correct
11536         order of parameters passed to kill.
11538 2003-01-04  Andreas Schwab  <schwab@suse.de>
11540         * sysdeps/unix/sysv/linux/m68k/bits/stat.h: Add nanosecond fields.
11542 2003-01-03  Paul Eggert  <eggert@twinsun.com>
11544         * malloc/obstack.h (__INT_TO_PTR) [__STDC__]: Cast result to
11545         (void *) to avoid diagnostic with native c89 on SGI IRIX 6.5
11546         when compiling Bison 1.875's `bitset bset = obstack_alloc
11547         (bobstack, bytes);'.  Problem reported by Nelson H. F. Beebe.
11549 2003-01-04  Ulrich Drepper  <drepper@redhat.com>
11551         * sysdeps/posix/system.c (do_system): Minor optimizations.  Remove
11552         unnecessary code.
11553         Correct reference counter in case SIGQUIT handler installation failed.
11555 2003-01-03  Ulrich Drepper  <drepper@redhat.com>
11557         * include/libc-symbols.h [HAVE_WEAK_SYMBOLS] (_weak_extern):
11558         Define using _Pragma(weak ...).
11560 2003-01-03  Andreas Jaeger  <aj@suse.de>, Jakub Jelinek <jakub@redhat.com>
11562         * resolv/res_libc.c: Provide declaration for __res_init_weak and
11563         reorder declarations.
11565 2003-01-03  Art Haas  <ahaas@airmail.net>
11567         * localedata/tests-mbwc/dat_iswalnum.c: Convert GCC extension
11568         initializer syntax to C99.
11569         * localedata/tests-mbwc/dat_iswalpha.c: Likewise.
11570         * localedata/tests-mbwc/dat_iswcntrl.c: Likewise.
11571         * localedata/tests-mbwc/dat_iswctype.c: Likewise.
11572         * localedata/tests-mbwc/dat_iswdigit.c: Likewise.
11573         * localedata/tests-mbwc/dat_iswgraph.c: Likewise.
11574         * localedata/tests-mbwc/dat_iswlower.c: Likewise.
11575         * localedata/tests-mbwc/dat_iswprint.c: Likewise.
11576         * localedata/tests-mbwc/dat_iswpunct.c: Likewise.
11577         * localedata/tests-mbwc/dat_iswspace.c: Likewise.
11578         * localedata/tests-mbwc/dat_iswupper.c: Likewise.
11579         * localedata/tests-mbwc/dat_iswxdigit.c: Likewise.
11580         * localedata/tests-mbwc/dat_mblen.c: Likewise.
11581         * localedata/tests-mbwc/dat_mbrlen.c: Likewise.
11582         * localedata/tests-mbwc/dat_mbrtowc.c: Likewise.
11583         * localedata/tests-mbwc/dat_mbsrtowcs.c: Likewise.
11584         * localedata/tests-mbwc/dat_mbstowcs.c: Likewise.
11585         * localedata/tests-mbwc/dat_mbtowc.c: Likewise.
11586         * localedata/tests-mbwc/dat_strcoll.c: Likewise.
11587         * localedata/tests-mbwc/dat_strfmon.c: Likewise.
11588         * localedata/tests-mbwc/dat_strxfrm.c: Likewise.
11589         * localedata/tests-mbwc/dat_swscanf.c: Likewise.
11590         * localedata/tests-mbwc/dat_towctrans.c: Likewise.
11591         * localedata/tests-mbwc/dat_towlower.c: Likewise.
11592         * localedata/tests-mbwc/dat_towupper.c: Likewise.
11593         * localedata/tests-mbwc/dat_wcrtomb.c: Likewise.
11594         * localedata/tests-mbwc/dat_wcscat.c: Likewise.
11595         * localedata/tests-mbwc/dat_wcschr.c: Likewise.
11596         * localedata/tests-mbwc/dat_wcscmp.c: Likewise.
11597         * localedata/tests-mbwc/dat_wcscoll.c: Likewise.
11598         * localedata/tests-mbwc/dat_wcscpy.c: Likewise.
11599         * localedata/tests-mbwc/dat_wcscspn.c: Likewise.
11600         * localedata/tests-mbwc/dat_wcslen.c: Likewise.
11601         * localedata/tests-mbwc/dat_wcsncat.c: Likewise.
11602         * localedata/tests-mbwc/dat_wcsncmp.c: Likewise.
11603         * localedata/tests-mbwc/dat_wcsncpy.c: Likewise.
11604         * localedata/tests-mbwc/dat_wcspbrk.c: Likewise.
11605         * localedata/tests-mbwc/dat_wcsrtombs.c: Likewise.
11606         * localedata/tests-mbwc/dat_wcsspn.c: Likewise.
11607         * localedata/tests-mbwc/dat_wcsstr.c: Likewise.
11608         * localedata/tests-mbwc/dat_wcstod.c: Likewise.
11609         * localedata/tests-mbwc/dat_wcstok.c: Likewise.
11610         * localedata/tests-mbwc/dat_wcstombs.c: Likewise.
11611         * localedata/tests-mbwc/dat_wcswidth.c: Likewise.
11612         * localedata/tests-mbwc/dat_wcsxfrm.c: Likewise.
11613         * localedata/tests-mbwc/dat_wctob.c: Likewise.
11614         * localedata/tests-mbwc/dat_wctomb.c: Likewise.
11615         * localedata/tests-mbwc/dat_wctrans.c: Likewise.
11616         * localedata/tests-mbwc/dat_wctype.c: Likewise.
11617         * localedata/tests-mbwc/dat_wcwidth.c: Likewise.
11619 2003-01-03  Richard Henderson  <rth@redhat.com>
11621         * sysdeps/unix/sysv/linux/alpha/sysdep.h (inline_syscall_r0_asm): New.
11622         (inline_syscall_r0_constraint): New.
11623         (inline_syscall[0-6]): Use them.
11625 2003-01-03  Jakub Jelinek  <jakub@redhat.com>
11627         * sysdeps/generic/ldsodefs.h (_dl_allocate_tls, _dl_deallocate_tls):
11628         Add rtld_hidden_proto.
11629         * sysdeps/generic/dl-tls.c (_dl_deallocate_tls): Add rtld_hidden_def.
11630         (_dl_allocate_tls): Likewise.  Remove INTDEF.
11632 2002-07-05  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
11634         * sysdeps/sh/memcpy.S: Optimize.  Based on a patch by Toshiyasu
11635         Morita <toshiyasu.morita@hsa.hitachi.com>.
11636         * sysdeps/sh/memcpy.S: Likewise.
11638 2003-01-02  Ulrich Drepper  <drepper@redhat.com>
11640         * sysdeps/pthread/aio_suspend.c (aio_suspend): Don't quite remove
11641         any, but unify the test.
11643 2003-01-02  Jakub Jelinek  <jakub@redhat.com>
11645         * sysdeps/unix/sysv/linux/arm/sigaction.c (__sigaction,
11646         sigaction): Protect weak_alias and libc_hidden_weak with
11647         #ifndef LIBC_SIGACTION.
11648         * sysdeps/unix/sysv/linux/ia64/sigaction.c (__sigaction,
11649         sigaction): Likewise.
11650         * sysdeps/unix/sysv/linux/mips/sigaction.c (__sigaction,
11651         sigaction): Likewise.
11652         * sysdeps/unix/sysv/linux/s390/s390-64/sigaction.c (__sigaction,
11653         sigaction): Likewise.
11654         * sysdeps/unix/sysv/linux/sparc/sparc32/sigaction.c (__sigaction,
11655         sigaction): Likewise.
11656         * sysdeps/unix/sysv/linux/sparc/sparc64/sigaction.c (__sigaction,
11657         sigaction): Likewise.
11658         * sysdeps/unix/sysv/linux/x86_64/sigaction.c (__sigaction,
11659         sigaction): Likewise.
11660         * sysdeps/unix/sysv/linux/i386/sigaction.c (__sigaction,
11661         sigaction): Likewise.  Remove SIGCANCEL handling here.
11662         * sysdeps/unix/sysv/linux/sigaction.c (__sigaction, sigaction):
11663         Likewise.
11665 2003-01-02  Art Haas  <ahaas@airmail.net>
11667         * login/tst-utmp.c: Convert GCC extension initializer syntax to C99.
11669 2003-01-02  Ulrich Drepper  <drepper@redhat.com>
11671         * posix/getconf.c: Update copyright year.
11672         * nss/getent.c: Likewise.
11673         * nscd/nscd_nischeck.c: Likewise.
11674         * iconv/iconvconfig.c: Likewise.
11675         * iconv/iconv_prog.c: Likewise.
11676         * elf/ldconfig.c: Likewise.
11677         * catgets/gencat.c: Likewise.
11678         * csu/version.c: Likewise.
11679         * elf/ldd.bash.in: Likewise.
11680         * elf/sprof.c (print_version): Likewise.
11681         * locale/programs/locale.c: Likewise.
11682         * locale/programs/localedef.c: Likewise.
11683         * nscd/nscd.c (print_version): Likewise.
11684         * debug/xtrace.sh: Likewise.
11685         * malloc/memusage.sh: Likewise.
11686         * malloc/mtrace.pl: Likewise.
11688 2003-01-01  Jakub Jelinek  <jakub@redhat.com>
11690         * io/sys/stat.h: Include time.h with __need_timespec even if
11691         __USE_MISC is defined but __USE_XOPEN is not.
11693 2003-01-01  Andreas Jaeger  <aj@suse.de>
11695         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Use union
11696         type to avoid strict aliasing problem.
11697         (_nss_dns_gethostbyname2_r): Likewise.
11698         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyaddr_r): Likewise.
11699         (_nss_dns_getnetbyname_r): Likewise.
11700         * resolv/gethnamaddr.c (_gethtent): Likewise.
11701         (gethostbyname2): Likewise.
11703 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
11705         * string/string-inlines.c: Define __memcpy_g and __strchr_g macros
11706         to avoid using the exported symbols.  Define aliases with the
11707         original names separately.
11709         * include/time.h: Add libc_hidden_proto for __strftime_l.
11710         * include/wchar.h: Add libc_hidden_proto for __wcsftime_l.
11711         * time/strftime.c: Always use libc_hidden_def if _LIBC.
11713         * libio/libioP.h: Add libc_hidden_proto for _IO_file_open.
11714         * libio/fileops.c: Add libc_hidden_def for _IO_file_open.
11716         * malloc/mtrace.c: Add libc_hidden_proto and libc_hidden_def for
11717         tr_break.
11719         * csu/Makefile (routines): Add dso_handle.
11720         * csu/dso_handle.c: New file.
11722 2002-12-31  Roland McGrath  <roland@redhat.com>
11724         * Makerules (compile.S, COMPILE.S): Remove -DASSEMBLER here.
11725         Use $(S-CPPFLAGS) in place of $(asm-CPPFLAGS).
11726         (S-CPPFLAGS): Add -DASSEMBLER here instead.
11727         (generate-md5, +make-deps): Fix magic to get $(S-CPPFLAGS).
11729 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
11731         * malloc/thread-m.h [SHARED] (thread_atfork): Assume __dso_handle
11732         is available.
11734 2002-12-31  Andreas Jaeger  <aj@suse.de>
11736         * sysdeps/unix/sysv/linux/powerpc/powerpc32/kernel_stat.h: Sync
11737         with Linux kernel.
11738         * sysdeps/unix/sysv/linux/sparc/sparc32/kernel_stat.h: Likewise.
11739         * sysdeps/unix/sysv/linux/s390/s390-64/kernel_stat.h: Likewise.
11740         * sysdeps/unix/sysv/linux/hppa/kernel_stat.h: Likewise.
11742         * sysdeps/unix/sysv/linux/kernel_stat.h
11743         (_HAVE_STAT_NSEC,_HAVE_STAT_NSEC64): New.
11745         * sysdeps/unix/sysv/linux/xstatconv.c (xstat_conv): Re-add
11746         __unused[1-3] since they're needed by some platforms.  Handle
11747         _HAVE_STAT_NSEC and _HAVE_STAT_NSEC64.
11749         * sysdeps/unix/sysv/linux/x86_64/bits/stat.h: Add nsec resolution
11750         for structs stat and stat64.
11751         * sysdeps/unix/sysv/linux/ia64/bits/stat.h: Likewise.
11752         * sysdeps/unix/sysv/linux/powerpc/bits/stat.h: Likewise.
11753         * sysdeps/unix/sysv/linux/sparc/bits/stat.h: Likewise.
11754         * sysdeps/unix/sysv/linux/s390/bits/stat.h: Likewise.
11756         * io/sys/stat.h [__USE_MISC]: Define __need_timespec for struct stat.
11758         * sysdeps/unix/sysv/linux/xstatconv.c (xstat_conv): Adjust for
11759         nsec resolution changes.
11760         (xstat64_conv): Likewise.
11761         (xstat32_conv): Likewise.
11763         * sysdeps/unix/sysv/linux/kernel_stat.h: Add nsec resolution for
11764         struct kernel_stat.
11766         * sysdeps/unix/sysv/linux/bits/stat.h: Add nsec resolution for
11767         structs stat and stat64.
11769         * time/time.h (__timespec_defined): Define for __USE_MISC.
11771 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
11773         * include/signal.h: Add libc_hidden_proto for __libc_current_sigrtmin
11774         and __libc_current_sigrtmax.
11776 2002-12-31  Jakub Jelinek  <jakub@redhat.com>
11778         * include/errno.h (__errno_location): Add prototype.
11779         Use libc_hidden_proto unconditionally.
11780         * include/netdb.h (__h_errno_location): Use libc_hidden_proto
11781         unconditionally.
11782         * include/resolv.h (__res_state): Likewise.
11784         * hurd/errno-loc.c (__errno_location): Add libc_hidden_def.
11785         * include/sys/socket.h (accept): Add libc_hidden_proto.
11786         * include/errno.h (__errno_location): Likewise.
11787         * include/netdb.h (__h_errno_location): Likewise.
11788         * include/resolv.h (__res_state): Likewise.
11789         * include/unistd.h (__lseek): Likewise.
11790         * sysdeps/generic/errno-loc.c (__errno_location): Add libc_hidden_def.
11791         * sysdeps/generic/herrno-loc.c (__h_errno_location): Likewise.
11792         * sysdeps/generic/res-state.c (__res_state): Likewise.
11793         * sysdeps/generic/accept.c (accept): Likewise.
11794         * sysdeps/generic/lseek.c (__lseek): Likewise.
11795         * sysdeps/generic/allocrtsig.c (__libc_current_sigrtmin,
11796         __libc_current_sigrtmax): Likewise.
11797         * sysdeps/mach/hurd/accept.c (accept): Likewise.
11798         * sysdeps/mach/hurd/lseek.c (__lseek): Likewise.
11799         * sysdeps/unix/sysv/aix/accept.c (accept): Likewise.
11800         * sysdeps/unix/sysv/aix/lseek.c (__lseek): Likewise.
11801         * sysdeps/unix/sysv/linux/accept.S (accept): Likewise.
11802         * sysdeps/unix/inet/syscalls.list (__GI_accept): New alias to accept.
11803         * sysdeps/unix/sysv/linux/alpha/syscalls.list (__GI_accept): Likewise.
11804         * sysdeps/unix/sysv/linux/hppa/syscalls.list (__GI_accept): Likewise.
11805         * sysdeps/unix/sysv/linux/ia64/syscalls.list (__GI___lseek): New
11806         alias to llseek.
11807         (__GI_accept): New alias to accept.
11808         * sysdeps/unix/sysv/linux/mips/syscalls.list (__GI_accept): Likewise.
11809         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (__GI___lseek):
11810         New alias to llseek.
11811         (__GI_accept): New alias to accept.
11812         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list (__GI_accept):
11813         Likewise.
11814         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (__GI_accept):
11815         Likewise.
11816         * sysdeps/unix/syscalls.list (__GI___lseek): New alias to lseek.
11818         * sysdeps/alpha/setjmp.S : Use libc_hidden_def(name) instead of
11819         strong_alias (name, __GI_name).
11820         * sysdeps/arm/bsd-_setjmp.S : Likewise.
11821         * sysdeps/hppa/bsd-_setjmp.S : Likewise.
11822         * sysdeps/i386/bsd-_setjmp.S : Likewise.
11823         * sysdeps/mips/mips64/bsd-_setjmp.S : Likewise.
11824         * sysdeps/mips/bsd-_setjmp.S : Likewise.
11825         * sysdeps/powerpc/powerpc32/bsd-_setjmp.S : Likewise.
11826         * sysdeps/powerpc/powerpc64/setjmp.S : Likewise.
11827         * sysdeps/s390/s390-32/elf/setjmp.S : Likewise.
11828         * sysdeps/s390/s390-32/bsd-_setjmp.S : Likewise.
11829         * sysdeps/s390/s390-64/elf/setjmp.S : Likewise.
11830         * sysdeps/s390/s390-64/bsd-_setjmp.S : Likewise.
11831         * sysdeps/sh/bsd-_setjmp.S : Likewise.
11832         * sysdeps/sparc/sparc32/setjmp.S : Likewise.
11833         * sysdeps/unix/arm/fork.S : Likewise.
11834         * sysdeps/unix/bsd/hp/m68k/vfork.S : Likewise.
11835         * sysdeps/unix/bsd/i386/vfork.S : Likewise.
11836         * sysdeps/unix/bsd/osf/alpha/fork.S : Likewise.
11837         * sysdeps/unix/bsd/sun/m68k/vfork.S : Likewise.
11838         * sysdeps/unix/bsd/ultrix4/mips/vfork.S : Likewise.
11839         * sysdeps/unix/bsd/vax/vfork.S : Likewise.
11840         * sysdeps/unix/i386/fork.S : Likewise.
11841         * sysdeps/unix/mips/fork.S : Likewise.
11842         * sysdeps/unix/sparc/fork.S : Likewise.
11843         * sysdeps/unix/sparc/vfork.S : Likewise.
11844         * sysdeps/unix/sysv/linux/arm/vfork.S : Likewise.
11845         * sysdeps/unix/sysv/linux/cris/vfork.S : Likewise.
11846         * sysdeps/unix/sysv/linux/i386/vfork.S : Likewise.
11847         * sysdeps/unix/sysv/linux/ia64/fork.S : Likewise.
11848         * sysdeps/unix/sysv/linux/ia64/setjmp.S : Likewise.
11849         * sysdeps/unix/sysv/linux/ia64/vfork.S : Likewise.
11850         * sysdeps/unix/sysv/linux/m68k/vfork.S : Likewise.
11851         * sysdeps/unix/sysv/linux/sh/vfork.S : Likewise.
11852         * sysdeps/unix/sysv/linux/sparc/sparc64/longjmp.S : Likewise.
11853         * sysdeps/unix/sysv/linux/sparc/sparc64/setjmp.S : Likewise.
11854         * sysdeps/unix/sysv/linux/sparc/fork.S : Likewise.
11855         * sysdeps/unix/sysv/linux/sparc/vfork.S : Likewise.
11856         * sysdeps/unix/sysv/linux/x86_64/vfork.S : Likewise.
11857         * sysdeps/unix/fork.S : Likewise.
11858         * sysdeps/vax/bsd-_setjmp.S : Likewise.
11859         * sysdeps/x86_64/bsd-_setjmp.S : Likewise.
11861         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Guard against multiple
11862         inclusion.
11864 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
11866         * include/unistd.h: Add libc_hidden_proto for __fork and __vfork.
11867         * sysdeps/generic/fork.c: Add libc_hidden_def for __fork.
11868         * sysdeps/mach/hurd/fork.c: Likewise.
11869         * sysdeps/unix/sysv/aix/fork.c: Likewise.
11870         * sysdeps/unix/fork.S: Add __GI___fork alias.
11871         * sysdeps/unix/arm/fork.S: Likewise.
11872         * sysdeps/unix/bsd/osf/alpha/fork.S: Likewise.
11873         * sysdeps/unix/i386/fork.S: Likewise.
11874         * sysdeps/unix/mips/fork.S: Likewise.
11875         * sysdeps/unix/sparc/fork.S: Likewise.
11876         * sysdeps/unix/sysv/linux/ia64/fork.S: Likewise.
11877         * sysdeps/unix/sysv/linux/sparc/fork.S: Likewise.
11878         * sysdeps/unix/sysv/linux/syscalls.list: Likewise.
11879         * sysdeps/generic/vfork.c: Add libc_hidden_def for __vfork.
11880         * sysdeps/unix/bsd/hp/m68k/vfork.S: Add __GI___vfork alias.
11881         * sysdeps/unix/bsd/i386/vfork.S: Likewise.
11882         * sysdeps/unix/bsd/sun/m68k/vfork.S: Likewise.
11883         * sysdeps/unix/bsd/ultrix4/mips/vfork.S: Likewise.
11884         * sysdeps/unix/bsd/vax/vfork.S: Likewise.
11885         * sysdeps/unix/sparc/vfork.S: Likewise.
11886         * sysdeps/unix/sysv/linux/arm/vfork.S: Likewise.
11887         * sysdeps/unix/sysv/linux/cris/vfork.S: Likewise.
11888         * sysdeps/unix/sysv/linux/i386/vfork.S: Likewise.
11889         * sysdeps/unix/sysv/linux/ia64/vfork.S: Likewise.
11890         * sysdeps/unix/sysv/linux/m68k/vfork.S: Likewise.
11891         * sysdeps/unix/sysv/linux/sh/vfork.S: Likewise.
11892         * sysdeps/unix/sysv/linux/sparc/vfork.S: Likewise.
11893         * sysdeps/unix/sysv/linux/x86_64/vfork.S: Likewise.
11895         * include/time.h: Add libc_hidden_proto for __nanosleep.
11896         * sysdeps/generic/nanosleep.c: Add libc_hidden_def for __nanosleep.
11897         * sysdeps/mach/nanosleep.c: Likewise.
11898         * sysdeps/unix/sysv/aix/nanosleep.c: Likewise.
11899         * sysdeps/unix/sysv/linux/syscalls.list: Add __GI___nanosleep alias.
11901         * libio/libioP.h: Add libc_hidden_proto for _IO_list_lock,
11902         _IO_list_unlock, and _IO_list_resetlock.
11903         * libio/genops.c: Add libc_hidden_def for _IO_list_lock,
11904         _IO_list_unlock, and _IO_list_resetlock.
11906         * libio/libioP.h: Add libc_hidden_proto for _IO_iter_begin,
11907         _IO_iter_end, _IO_iter_next, and _IO_iter_file.
11908         * libio/genops.c: Add libc_hidden_def for _IO_iter_begin,
11909         _IO_iter_end, _IO_iter_next, and _IO_iter_file.
11911         * include/setjmp.h: Add libc_hidden_proto for __libc_longjmp.
11912         * sysdeps/generic/longjmp.c: Add libc_hidden_def for __longjmp.
11913         * sysdeps/unix/sysv/linux/sparc/sparc64/longjmp.S: Add
11914         __GI___longjmp alias.
11916         * include/setjmp.h: Add libc_hidden_proto for _setjmp.
11917         * sysdeps/alpha/setjmp.S: Add __GI__setjmp alias.
11918         * sysdeps/arm/bsd-_setjmp.S: Likewise.
11919         * sysdeps/generic/bsd-_setjmp.c: Likewise.
11920         * sysdeps/hppa/bsd-_setjmp.S: Likewise.
11921         * sysdeps/i386/bsd-_setjmp.S: Likewise.
11922         * sysdeps/m68k/bsd-_setjmp.c: Likewise.
11923         * sysdeps/mips/bsd-_setjmp.S: Likewise.
11924         * sysdeps/mips/mips64/bsd-_setjmp.S: Likewise.
11925         * sysdeps/powerpc/powerpc32/bsd-_setjmp.S: Likewise.
11926         * sysdeps/powerpc/powerpc64/setjmp.S: Likewise.
11927         * sysdeps/s390/s390-32/bsd-_setjmp.S: Likewise.
11928         * sysdeps/s390/s390-32/elf/setjmp.S: Likewise.
11929         * sysdeps/s390/s390-64/bsd-_setjmp.S: Likewise.
11930         * sysdeps/s390/s390-64/elf/setjmp.S: Likewise.
11931         * sysdeps/sh/bsd-_setjmp.S: Likewise.
11932         * sysdeps/sparc/sparc32/setjmp.S: Likewise.
11933         * sysdeps/unix/sysv/linux/ia64/setjmp.S: Likewise.
11934         * sysdeps/unix/sysv/linux/sparc/sparc64/setjmp.S: Likewise.
11935         * sysdeps/vax/bsd-_setjmp.S: Likewise.
11936         * sysdeps/x86_64/bsd-_setjmp.S: Likewise.
11938 2002-12-30  Ulrich Drepper  <drepper@redhat.com>
11940         * malloc/thread-m.h (thread_atfork): Define using __register_atfork.
11942 2002-12-30  Roland McGrath  <roland@redhat.com>
11944         * Rules (generated): Target removed.
11945         * mach/Makefile (generated): Define it here instead.
11947         * math/Makefile (generated): Add m_*l and m_*f variants too.
11949 2002-12-30  Ulrich Drepper  <drepper@redhat.com>
11951         * elf/dl-close.c (_dl_close): Handle relocation dependencies among
11952         the to-be-deleted objects right away instead of later separately.
11953         The latter fails because the scope data structures of the DSO
11954         might already be gone.
11956         * elf/Makefile: Add rules to build and run reldep8 test.
11957         * elf/reldep8.c: New file.
11958         * elf/reldep8mod1.c: New file.
11959         * elf/reldep8mod2.c: New file.
11960         * elf/reldep8mod3.c: New file.
11961         Contributed by Jakub Jelinek.
11963 2002-12-24  GOTO Masanori  <gotom@debian.or.jp>
11965         * sysdeps/unix/sysv/linux/getdents.c (__GETDENTS): Fix condition
11966         checking of return value ENOSYS from getdents64.
11968 2002-12-28  Andreas Schwab  <schwab@suse.de>
11970         * sysdeps/unix/Makefile: Include $(common-objpfx)s-proto-cancel.d.
11971         ($(common-objpfx)s-%.d): Generalized from
11972         $(common-objpfx)s-proto.d rule.
11973         (common-generated): Add s-proto-cancel.d.
11974         * sysdeps/unix/make-syscalls.sh: Use s-proto-cancel.d for
11975         cancellable syscalls.
11976         * sysdeps/unix/s-proto-cancel.S: New file.
11978 2002-12-29  Roland McGrath  <roland@redhat.com>
11980         * resolv/res_libc.c: Move _res defn magic after res_init defn
11981         so _res macro is in effect for that code.
11983         * Makerules ($(common-objpfx)%.h $(common-objpfx)%.h.d): Fix sed
11984         pattern for prepending $(..) so it doesn't affect $(foo).
11986         * math/Makefile (generated): Add $(addsuffix .c .S,$(calls:s_%=m_%)).
11988 2002-12-29  Jakub Jelinek  <jakub@redhat.com>
11990         * elf/cache.c (add_to_cache): Don't loop forever with 1ULL << 63 set
11991         in hwcap.
11993 2002-12-28  Ulrich Drepper  <drepper@redhat.com>
11995         * misc/sys/cdefs.h (__attribute_deprecated__): New #define.
11997 2002-12-28  Andreas Jaeger  <aj@suse.de>
11999         * sysdeps/generic/readelflib.c (process_elf_file): Cast value to
12000         avoid warning.
12001         * sysdeps/generic/dl-cache.c (_dl_load_cache_lookup): Likewise.
12003 2002-12-27  Jakub Jelinek  <jakub@redhat.com>
12005         * inet/herrno.c (__h_errno_location): Remove.
12006         * inet/Makefile (routines): Add herrno-loc.
12007         * resolv/res_libc.c (__res_state): Remove.
12008         * resolv/Makefile (routines): Add res-state.
12009         * sysdeps/generic/herrno-loc.c: New file.
12010         * sysdeps/generic/res-state.c: New file.
12012 2002-12-27  Jakub Jelinek  <jakub@redhat.com>
12014         * sysdeps/unix/sysv/linux/i386/sysdep.h (I386_USE_SYSENTER):
12015         Only define if USE_DL_SYSINFO is defined.
12017 2002-12-22  Jakub Jelinek  <jakub@redhat.com>
12019         * sysdeps/unix/sysv/linux/ia64/sysdep.h (INLINE_SYSCALL,
12020         INTERNAL_SYSCALL, INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERROR):
12021         Define. Patch by Richard Henderson and Jes Sorensen.
12022         (PSEUDO): Remove unnecessary ;;.
12023         * elf/rtld.c (dl_main): Initialize TLS even if no PT_TLS segments
12024         are found unless TLS_INIT_TP_EXPENSIVE.  Use NONTLS_INIT_TP.
12025         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Use NONTLS_INIT_TP
12026         if not initializing thread pointer.
12027         [!USE_TLS && NONTLS_INIT_TP] (__pthread_initialize_minimal): New.
12028         * sysdeps/generic/libc-start.c (__pthread_initialize_minimal): Don't
12029         make it weak also if NONTLS_INIT_TP.
12030         * sysdeps/unix/common/pause.c: Handle cancellation.
12031         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h [DONT_LOAD_G1]
12032         (LOADSYSCALL): Remove.
12033         (SYSCALL_ERROR_HANDLER_ENTRY): Define.
12034         (SYSCALL_ERROR_HANDLER): Use it.
12035         (PSEUDO): Don't jump around error handler.
12036         * sysdeps/unix/sysv/linux/sparc/sparc32/pipe.S (__libc_pipe): Don't
12037         jump around error handler.
12038         * sysdeps/unix/sysv/linux/sparc/sparc32/syscall.S (syscall): Likewise.
12039         * sysdeps/unix/sysv/linux/sparc/sparc32/socket.S (__socket): Branch
12040         to __syscall_error_handler on failure.
12041         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h [DONT_LOAD_G1]
12042         (LOADSYSCALL): Remove.
12043         (SYSCALL_ERROR_HANDLER_ENTRY): Define.
12044         (SYSCALL_ERROR_HANDLER): Use it.
12045         (PSEUDO): Don't jump around error handler.
12046         * sysdeps/unix/sysv/linux/sparc/sparc64/pipe.S (__libc_pipe): Don't
12047         jump around error handler.
12048         * sysdeps/unix/sysv/linux/sparc/sparc64/syscall.S (syscall): Likewise.
12049         * sysdeps/unix/sysv/linux/sparc/sparc64/socket.S (__socket): Branch
12050         to __syscall_error_handler on failure.
12052 2002-12-27  Roland McGrath  <roland@redhat.com>
12054         * scripts/gen-as-const.awk: New file.
12055         * Makefile (distribute): Add it.
12056         * Makerules ($(common-objpfx)%.h %.h.d: %.sym): New pattern rule.
12057         (before-compile): Add $(gen-as-const-headers:%.sym=$(common-objpfx)%.h)
12058         to the list.
12059         (+depfiles): Add $(addprefix $(common-objpfx),$(gen-as-const-headers)).
12061 2002-12-27  Andreas Schwab  <schwab@suse.de>
12063         * sysdeps/unix/sysv/linux/m68k/socket.S: Add cancellation support.
12065 2002-12-27  Jakub Jelinek  <jakub@redhat.com>
12067         * malloc/arena.c (ptmalloc_init): Don't call next_env_entry if
12068         _environ is NULL.
12070 2002-12-27  Andreas Schwab  <schwab@suse.de>
12072         * Makerules ($(common-objpfx)%.make): Filter through
12073         $(sed-remove-objpfx).
12075 2002-12-23  Roland McGrath  <roland@redhat.com>
12077         * scripts/abilist.awk: Produce a more compact format, divided into
12078         stanzas for each version set, the set name listed only once.
12079         * scripts/extract-abilist.awk: New file.
12080         * scripts/merge-abilist.awk: New file.
12081         * Makerules (check-abi-%, update-abi-%): New pattern rules.
12082         (update-abi, check-abi): New targets.
12083         * Makefile (+subdir_targets): Add subdir_{check,update}-abi.
12085 2002-12-19  Roland McGrath  <roland@redhat.com>
12087         * Makerules (%.symlist): Use LC_ALL=C when running awk script.
12089         * sysdeps/unix/sysv/linux/i386/brk.c (__brk): Cast result of
12090         INTERNAL_SYSCALL.
12092 2002-12-21  Andreas Schwab  <schwab@suse.de>
12094         * elf/check-textrel.c (handle_file): Swap p_type.
12096 2002-12-21  Andreas Schwab  <schwab@suse.de>
12098         * sysdeps/unix/sysv/linux/m68k/sysdep.h (INTERNAL_SYSCALL): Define.
12099         (INLINE_SYSCALL): Use it.
12100         (INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Define.
12101         (SYSCALL_ERROR_HANDLER): Define RTLD_PRIVATE_ERRNO variant.
12103         * sysdeps/unix/sysv/linux/m68k/getpagesize.c: Use INTERNAL_SYSCALL.
12104         * sysdeps/unix/sysv/linux/m68k/brk.c: Likewise.
12106 2002-12-20  Art Haas  <ahaas@airmail.net>
12108         * sysdeps/gnu/siglist.c: Convert GCC extension initializer
12109         syntax to C99.
12111 2002-12-21  Philip Blundell  <philb@gnu.org>
12113         * sysdeps/arm/elf/start.S (_start): Optimise a little.  Push stack
12114         top as seventh arg to __libc_start_main.
12115         Reported by paulnash@wildseed.com.
12117         * sysdeps/unix/sysv/linux/arm/clone.S: Small optimisation.
12119         * sysdeps/unix/sysv/linux/arm/sigcontextinfo.h: Elide
12120         compatibility cruft when new enough kernel is assumed.
12122 2002-12-20  Jakub Jelinek  <jakub@redhat.com>
12124         * sysdeps/unix/sysv/linux/i386/brk.c (__brk): Use INTERNAL_SYSCALL
12125         instead of INLINE_SYSCALL.
12127 2002-12-20  Ulrich Drepper  <drepper@redhat.com>
12129         * sysdeps/unix/sysv/linux/i386/sigaction.c (__libc_sigaction): Fix
12130         typo.
12132         * sysdeps/unix/sysv/linux/alpha/bits/shm.h: Define SHM_HUGETLB.
12133         * sysdeps/unix/sysv/linux/bits/shm.h: Likewise.
12134         * sysdeps/unix/sysv/linux/hppa/bits/shm.h: Likewise.
12135         * sysdeps/unix/sysv/linux/ia64/bits/shm.h: Likewise.
12136         * sysdeps/unix/sysv/linux/mips/bits/shm.h: Likewise.
12137         * sysdeps/unix/sysv/linux/powerpc/bits/shm.h: Likewise.
12138         * sysdeps/unix/sysv/linux/s390/bits/shm.h: Likewise.
12139         * sysdeps/unix/sysv/linux/sparc/bits/shm.h: Likewise.
12140         * sysdeps/unix/sysv/linux/x86_64/bits/shm.h: Likewise.
12141         Patch by William Lee Irwin <wli@holomorphy.com>.
12143 2002-12-20  Andreas Schwab  <schwab@suse.de>
12145         * locale/programs/ld-measurement.c (measurement_output): Fix
12146         index calculation.
12148 2002-12-20  Ulrich Drepper  <drepper@redhat.com>
12150         * include/libio.h [_IO_MTSAFE_IO && _IO_lock_inexpensive]:
12151         Redefine _IO_flockifle and _IO_funlockfile as inlines.
12153         * sysdeps/generic/dl-sysdep.c (_dl_important_hwcaps): For TLS
12154         builds add "tls" in the search path.
12155         * elf/ldconfig.c (is_hwcap_platform): Also recognize "tls".
12156         (path_hwcap): Recognize "tls".
12158 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
12160         * sysdeps/unix/sysv/linux/i386/system.c (cancel_handler): Use
12161         __waitpid instead of waitpid.
12163         * sysdeps/unix/sysv/linux/i386/_exit.S: Use ENTER_KERNEL instead of
12164         int $0x80.
12165         * sysdeps/unix/sysv/linux/i386/getcontext.S: Likewise.
12166         * sysdeps/unix/sysv/linux/i386/setcontext.S: Likewise.
12167         * sysdeps/unix/sysv/linux/i386/swapcontext.S: Likewise.
12169         * sysdeps/unix/sysv/linux/i386/sysdep.h: Add support to use AT_SYSINFO
12170         information for system calls.
12172         * sysdeps/generic/dl-sysdep.h: Define RTLD_PRIVATE_ERRNO to 1 only
12173         for ld.so.
12175         * elf/rtld.c (_dl_start) [USE___THREAD]: Define initdtv.
12177 2002-12-19  Roland McGrath  <roland@redhat.com>
12179         * iconvdata/ibm856.h: Convert GCC extension initializer syntax to C99.
12180         * iconvdata/ibm922.h: Likewise.
12181         * iconvdata/ibm930.h: Likewise.
12182         * iconvdata/ibm932.h: Likewise.
12183         * iconvdata/ibm933.h: Likewise.
12184         * iconvdata/ibm935.h: Likewise.
12185         * iconvdata/ibm937.h: Likewise.
12186         * iconvdata/ibm939.h: Likewise.
12187         * iconvdata/ibm943.h: Likewise.
12188         * iconvdata/isiri-3342.h: Likewise.
12190 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
12192         * test-skeleton.c (main): Make sure correct value is seen as
12193         argv[0] after adjustment of argv, and argc.
12195         * elf/rtld.c: Don't initialize _dl_dynamic_weak to 1 if
12196         RTLD_CORRECT_DYNAMIC_WEAK is defined.
12198 2002-12-19  Jakub Jelinek  <jakub@redhat.com>
12200         * nscd/connections.c (nscd_run): Shut up warning.
12201         * tst-ungetc.c (assert): Undefined before redefining.
12203 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
12205         * posix/regex.c: Use __builtin_expect even outside glibc if gcc 3
12206         is used.
12208 2002-12-17  Art Haas  <ahaas@airmail.net>
12210         * iconvdata/cp737.h: Convert GCC extension initializer syntax to C99.
12211         * iconvdata/cp775.h: Likewise.
12212         * iconvdata/ibm1046.h: Likewise.
12213         * iconvdata/ibm1124.h: Likewise.
12214         * iconvdata/ibm1129.h: Likewise.
12215         * iconvdata/ibm1132.h: Likewise.
12216         * iconvdata/ibm1133.h: Likewise.
12217         * iconvdata/ibm1160.h: Likewise.
12218         * iconvdata/ibm1161.h: Likewise.
12219         * iconvdata/ibm1162.h: Likewise.
12220         * iconvdata/ibm1163.h: Likewise.
12221         * iconvdata/ibm1164.h: Likewise.
12223 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
12225         * sysdeps/unix/sysv/linux/i386/system.c: Define FORK only if
12226         __ASSUME_CLONE_THREAD_FLAGS is defined.
12227         * sysdeps/unix/sysv/linux/kernel-features.h
12228         (__ASSUME_CLONE_THREAD_FLAGS): Define for x86 and kernel >= 2.5.50.
12230 2002-12-18  Ulrich Drepper  <drepper@redhat.com>
12232         * sysdeps/unix/sysv/linux/i386/brk.c: Use INTERNAL_SYSCALL instead
12233         of asm.
12234         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
12236         * elf/dl-support.c [NEED_DL_SYSINFO]: Define and initialize
12237         _dl_sysinfo.
12238         [DL_SYSINFO_IMPLEMENTATION]: If defined use it to generate the needed
12239         code.
12240         * elf/rtld.c [DL_NEED_SYSINFO]: Initialize _dl_sysinfo element of
12241         _rtld_global.
12242         [DL_SYSINFO_IMPLEMENTATION]: If defined use it to generate the needed
12243         code.
12244         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start) [NEED_DL_SYSINFO]:
12245         Check for AT_SYSINFO and set _dl_sysinfo appropriately.
12246         * sysdeps/generic/ldsodefs.h (struct rtld_global) [NEED_DL_SYSINFO]:
12247         Add _dl_sysinfo.
12249 2002-12-18  Jakub Jelinek  <jakub@redhat.com>
12251         * misc/Versions [libc: GLIBC_2.3.1]: Move __libc_readv and
12252         __libc_writev to...
12253         [libc: GLIBC_PRIVATE]: ...here.
12254         * sysvipc/Versions [libc: GLIBC_2.3.1]: Move __libc_msgrcv and
12255         __libc_msgsnd to...
12256         [libc: GLIBC_PRIVATE]: ...here.
12258 2002-12-18  Ulrich Drepper  <drepper@redhat.com>
12260         * sysdeps/unix/sysv/linux/i386/sysdep.h: Define ENTER_KERNEL macro.
12261         Use it instead of directly int $0x80.
12262         * sysdeps/unix/sysv/linux/i386/brk.c: Use ENTER_KERNEL.
12263         * sysdeps/unix/sysv/linux/i386/mmap64.S: Likewise.
12264         * sysdeps/unix/sysv/linux/i386/mmap.S: Likewise.
12265         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
12266         * sysdeps/unix/sysv/linux/i386/socket.S: Likewise.
12267         * sysdeps/unix/sysv/linux/i386/syscall.S: Likewise.
12269 2002-12-17  Ulrich Drepper  <drepper@redhat.com>
12271         * malloc/malloc.c (mALLOPt): Make sure malloc is initialized.
12273         * elf/elf.h (AT_SYSINFO): New define.
12274         * sysdeps/generic/dl-sysdep.c (_dl_show_auxv): Add support for
12275         AT_SYSINFO.
12277 2002-12-17  Jakub Jelinek  <jakub@redhat.com>
12279         * sysdeps/unix/sysv/linux/alpha/syscalls.list (msgrcv, msgsnd):
12280         Make cancelable.
12281         * sysdeps/unix/sysv/linux/hppa/syscalls.list (msgrcv, msgsnd):
12282         Likewise.
12283         * sysdeps/unix/sysv/linux/ia64/syscalls.list (msgrcv, msgsnd):
12284         Likewise.
12285         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (msgrcv, msgsnd):
12286         Likewise.
12287         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (msgrcv, msgsnd):
12288         Likewise.
12289         * sysdeps/unix/sysv/linux/ia64/sigsuspend.c (__sigsuspend): Likewise.
12291         * malloc/thread-m.h (mutex_init, mutex_lock, mutex_trylock,
12292         mutex_unlock): If not building NPTL, use __libc_maybe_call2 if
12293         available, otherwise __libc_maybe_call.
12294         * sysdeps/unix/sysv/linux/x86_64/recv.c: Add support for
12295         cancellation handling.
12296         * sysdeps/unix/sysv/linux/x86_64/send.c: Likewise.
12298 2002-12-17  Isamu Hasegawa  <isamu@yamato.ibm.com>
12300         * posix/regcomp.c (free_workarea_compile): Free the new member
12301         ORG_INDICES.
12302         (analyze): Initialize ORG_INDICES.
12303         (duplicate_node_closure): Search for a existing node, which is
12304         duplicated from the node ORG_DEST and satisfies the constraint
12305         CONSTRAINT.  And use it to avoid inifimite loop.
12306         (search_duplicated_node): New function.
12307         (duplicate_node): Store the index of the original node.
12308         * posix/regex_internal.c (re_dfa_add_node): Realloc ORG_INDICES
12309         if needed.
12310         * posix/regex_internal.h (re_dfa_t): Add new members.
12312 2002-12-17  Ulrich Drepper  <drepper@redhat.com>
12314         * stdio-common/tst-fdopen.c: Undefine assert before redefining it.
12316 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
12318         * sysdeps/posix/system.c (do_system): Add support for installation
12319         of cancellation handlers.
12320         * sysdeps/unix/sysv/linux/i386/system.c: New file.
12322         * stdlib/Makefile (tests): Add tst-system.
12323         * stdlib/tst-system.c: New file.
12325         * sysdeps/unix/sysv/linux/i386/socket.S [NEED_CANCELLATION &&
12326         CENABLE]: Don't lose content of %ebx.
12328 2002-12-17  Jakub Jelinek  <jakub@redhat.com>
12330         * sysdeps/unix/sysv/linux/i386/socket.S: Use SINGLE_THREAD_P
12331         macro instead of comparing %gs:MULTIPLE_THREADS_OFFSET directly.
12333 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
12335         * sysdeps/posix/getaddrinfo.c (gaih_inet): If __nss_lookup_function
12336         fails to return a function pointer don't use it.
12338 2002-12-16  Art Haas  <ahaas@airmail.net>
12340         * io/ftw.c: Convert GCC extension initializer syntax to C99.
12341         * iconvdata/iso-ir-165.c: Likewise.
12342         * iconvdata/jis0208.c: Likewise.
12343         * iconvdata/jis0212.c: Likewise.
12345 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
12347         * sysdeps/unix/sysv/linux/syscalls.list: Add epoll_create,
12348         epoll_ctl, and epoll_wait.
12349         * sysdeps/unix/sysv/linux/Versions [libc: GLIBC_2.3.2]: Add
12350         epoll_create, epoll_ctl, and epoll_wait.
12351         * sysdeps/unix/sysv/linux/sys/epoll.h: New file.  Written by
12352         Davide Libenzi <davidel@xmailserver.org>.
12353         * sysdeps/unix/sysv/linux/Dist: Add sys/epoll.h.
12354         * sysdeps/unix/sysv/linux/Makefile [subdir=misc] (sysdep_headers):
12355         Add sys/epoll.h.
12357 2002-12-16  Art Haas  <ahaas@airmail.net>
12359         * sysdeps/generic/bp-semctl.h: Convert GCC extension initializer
12360         syntax to C99
12361         * sysdeps/unix/sysv/aix/settimer.c: Likewise.
12362         * sysdeps/unix/sysv/aix/sleep.c: Likewise.
12363         * sysdeps/unix/sysv/aix/usleep.c: Likewise.
12365 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
12367         * stdio-common/Makefile (routines): Remove lockfile.  Add
12368         flockfile, ftrylockfile, and funlockfile.
12369         * sysdeps/generic/lockfile.c: Removed.  Each function has its own file.
12370         * sysdeps/generic/flockfile.c: New file.
12371         * sysdeps/generic/ftrylockfile.c: New file.
12372         * sysdeps/generic/funlockfile.c: New file.
12374 2002-12-16  Jakub Jelinek  <jakub@redhat.com>
12376         * sysdeps/unix/sysv/linux/i386/socket.S: Use CENABLE and CDISABLE
12377         macros instead of doing the calls directly.
12378         * sysdeps/unix/make-syscalls.sh: Add ptw-*.$o target name to rules.
12379         * Makerules ($(+sysdir_pfx)sysd-rules): Emit rules for ptw-%
12380         targets.
12382 2002-12-16  Jakub Jelinek  <jakub@redhat.com>
12384         * sysdeps/i386/fpu/bits/mathinline.h: Backout last change.
12385         * sysdeps/ieee754/bits/nan.h: Likewise.
12387         * sysdeps/unix/sysv/linux/ia64/syscalls.list (__syscall_open,
12388         __syscall_wait4, __syscall_ioctl, __syscall_write): Add.
12390 2002-12-16  Roland McGrath  <roland@redhat.com>
12392         * sunrpc/xdr_mem.c (xdrmem_inline): Fix argument type.
12393         * sunrpc/xdr_rec.c (xdrrec_inline): Likewise.
12394         * sunrpc/xdr_stdio.c (xdrstdio_inline): Likewise.
12396         * sysdeps/unix/sysv/linux/syscalls.list: Add getpmsg, putpmsg.
12397         * sysdeps/unix/sysv/linux/mips/syscalls.list: Remove s_getpmsg,
12398         s_putpmsg.
12399         * sysdeps/unix/sysv/linux/i386/getpmsg.c: File removed.
12400         * sysdeps/unix/sysv/linux/i386/putpmsg.c: File removed.
12401         * sysdeps/unix/sysv/linux/m68k/getpmsg.c: File removed.
12402         * sysdeps/unix/sysv/linux/m68k/putpmsg.c: File removed.
12403         * sysdeps/unix/sysv/linux/mips/getpmsg.c: File removed.
12404         * sysdeps/unix/sysv/linux/mips/putpmsg.c: File removed.
12405         * sysdeps/unix/sysv/linux/powerpc/getpmsg.c: File removed.
12406         * sysdeps/unix/sysv/linux/powerpc/putpmsg.c: File removed.
12408 2002-12-13  Paul Eggert  <eggert@twinsun.com>
12410         * sunrpc/rpc/xdr.h (struct XDR.xdr_ops.x_inline): 2nd arg
12411         is now u_int, not int.
12412         (struct XDR.x_handy): Now u_int, not int.
12413         * sunrpc/xdr_mem.c: Include <limits.h>.
12414         (xdrmem_getlong, xdrmem_putlong, xdrmem_getbytes, xdrmem_putbytes,
12415         xdrmem_inline, xdrmem_getint32, xdrmem_putint32):
12416         x_handy is now unsigned, not signed.
12417         Do not decrement x_handy if no change is made.
12418         (xdrmem_setpos): Check for int overflow.
12419         * sunrpc/xdr_sizeof.c (x_inline): 2nd arg is now unsigned.
12420         (xdr_sizeof): Remove cast that is now unnecessary, now that
12421         x_handy is unsigned.
12423 2002-12-15  Art Haas  <ahaas@airmail.net>
12425         * iconv/gconv_conf.c: Convert GCC extension initializer syntax to C99.
12426         * iconvdata/gap.awk: Likewise.
12427         * iconvdata/gen-8bit-gap-1.sh: Likewise.
12428         * iconvdata/gen-8bit-gap.sh: Likewise.
12429         * locale/C-address.c: Likewise.
12430         * locale/C-collate.c: Likewise.
12431         * locale/C-ctype.c: Likewise.
12432         * locale/C-identification.c: Likewise.
12433         * locale/C-measurement.c: Likewise.
12434         * locale/C-messages.c: Likewise.
12435         * locale/C-monetary.c: Likewise.
12436         * locale/C-name.c: Likewise.
12437         * locale/C-numeric.c: Likewise.
12438         * locale/C-paper.c: Likewise.
12439         * locale/C-telephone.c: Likewise.
12440         * locale/C-time.c: Likewise.
12441         * nscd/connections.c: Likewise.
12442         * nscd/grpcache.c: Likewise.
12443         * nscd/hstcache.c: Likewise.
12444         * nscd/pwdcache.c: Likewise.
12445         * stdio-common/vfprintf.c: Likewise.
12446         * stdlib/random.c: Likewise.
12447         * sysdeps/generic/siglist.c: Likewise.
12448         * sysdeps/i386/fpu/bits/mathinline.h: Likewise.
12449         * sysdeps/ieee754/bits/nan.h: Likewise.
12450         * sysdeps/posix/sprofil.c: Likewise.
12451         * sysdeps/unix/sysv/linux/sleep.c: Likewise.
12452         * sysdeps/unix/sysv/linux/sysctl.c: Likewise.
12453         * sysdeps/unix/sysv/linux/usleep.c: Likewise.
12455 2002-12-15  Roland McGrath  <roland@redhat.com>
12457         * sysdeps/unix/sysv/linux/readv.c (do_readv): Use prototype defn.
12459         * sysdeps/unix/sysv/linux/wait.c: Don't include <nptl/pthreadP.h> or
12460         <tls.h> here, no need for it.
12461         * sysdeps/unix/sysv/linux/waitpid.c: Likewise.
12463         * sysdeps/unix/sysv/linux/i386/fcntl.c (do_fcntl): Take ARG as void *
12464         parameter, not varargs parameter.
12466         * sysdeps/generic/sysdep-cancel.h (LIBC_CANCEL_RESET): Evaluate the
12467         argument so it's not an unused variable.
12469         * resolv/resolv.h (__p_key_syms, __p_cert_syms, __p_class_syms,
12470         __p_type_syms, __p_rcode_syms): Remove decls, never really intended
12471         for users.
12473         * resolv/Versions (libresolv: GLIBC_2.3.2): New set, add __p_rcode.
12475 2002-12-15  Ulrich Drepper  <drepper@redhat.com>
12477         * sysdeps/unix/sysv/linux/i386/fcntl.c (do_fcntl): This is the
12478         original __libc_fcntl code.  Just renamed.
12480 2002-12-15  Andreas Schwab  <schwab@suse.de>
12482         * sysdeps/unix/sysv/linux/m68k/clone.S: Make inline syscall to _exit.
12484 2002-12-14  Olaf Hering  <olh@suse.de>
12486         * sysdeps/powerpc/bits/setjmp.h: Include <bits/wordsize.h>.
12487         * sysdeps/powerpc/powerpc64/setjmp.S: Fix typo in r18 load.
12489 2002-12-15  Ulrich Drepper  <drepper@redhat.com>
12491         * sysdeps/unix/sysv/linux/libc_fatal.c: New file.
12493         * sysdeps/generic/sysdep-cancel.h: Add dummy definitions for
12494         SINGLE_THREAD_P, LIBC_CANCEL_ASYNC, and LIBC_CANCEL_RESET.
12496         * sysdeps/unix/sysv/linux/open64.c: New file.
12498         * sysdeps/generic/pselect.c: Add support for cancellation handling.
12499         * sysdeps/posix/open64.c: Likewise.
12500         * sysdeps/posix/sigpause.c: Likewise.
12501         * sysdeps/posix/sigwait.c: Likewise.
12502         * sysdeps/posix/system.c: Likewise.
12503         * sysdeps/posix/waitid.c: Likewise.
12504         * sysdeps/unix/sysv/linux/accept.S: Likewise.
12505         * sysdeps/unix/sysv/linux/connect.S: Likewise.
12506         * sysdeps/unix/sysv/linux/llseek.c: Likewise.
12507         * sysdeps/unix/sysv/linux/msgrcv.c: Likewise.
12508         * sysdeps/unix/sysv/linux/msgsnd.c: Likewise.
12509         * sysdeps/unix/sysv/linux/poll.c: Likewise.
12510         * sysdeps/unix/sysv/linux/pread.c: Likewise.
12511         * sysdeps/unix/sysv/linux/pread64.c: Likewise.
12512         * sysdeps/unix/sysv/linux/pwrite.c: Likewise.
12513         * sysdeps/unix/sysv/linux/pwrite64.c: Likewise.
12514         * sysdeps/unix/sysv/linux/readv.c: Likewise.
12515         * sysdeps/unix/sysv/linux/recv.S: Likewise.
12516         * sysdeps/unix/sysv/linux/recvfrom.S: Likewise.
12517         * sysdeps/unix/sysv/linux/recvmsg.S: Likewise.
12518         * sysdeps/unix/sysv/linux/send.S: Likewise.
12519         * sysdeps/unix/sysv/linux/sendmsg.S: Likewise.
12520         * sysdeps/unix/sysv/linux/sendto.S: Likewise.
12521         * sysdeps/unix/sysv/linux/sigsuspend.c: Likewise.
12522         * sysdeps/unix/sysv/linux/sigtimedwait.c: Likewise.
12523         * sysdeps/unix/sysv/linux/sigwait.c: Likewise.
12524         * sysdeps/unix/sysv/linux/sigwaitinfo.c: Likewise.
12525         * sysdeps/unix/sysv/linux/tcdrain.c: Likewise.
12526         * sysdeps/unix/sysv/linux/wait.c: Likewise.
12527         * sysdeps/unix/sysv/linux/waitpid.c: Likewise.
12528         * sysdeps/unix/sysv/linux/writev.c: Likewise.
12529         * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.
12530         * sysdeps/unix/sysv/linux/i386/socket.S: Likewise.
12532 2002-12-14  Jakub Jelinek  <jakub@redhat.com>
12534         * sysdeps/generic/sysdep-cancel.h: New file.
12535         * sysdeps/unix/make-syscalls.sh: Handle C at start of args as
12536         cancelable syscall.
12537         * sysdeps/unix/inet/syscalls.list (accept, connect, recv, recvfrom,
12538         recvmsg, send, sendmsg, sendto): Make cancelable.
12539         * sysdeps/unix/mman/syscalls.list (msync): Likewise.
12540         * sysdeps/unix/sysv/linux/alpha/syscalls.list (llseek, pread,
12541         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
12542         sendto, osf_select): Likewise.
12543         * sysdeps/unix/sysv/linux/hppa/syscalls.list (accept, connect, recv,
12544         recvfrom, recvmsg, send, sendmsg, sendto): Likewise.
12545         * sysdeps/unix/sysv/linux/ia64/syscalls.list (llseek, pread,
12546         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
12547         sendto): Likewise.
12548         * sysdeps/unix/sysv/linux/mips/syscalls.list (accept, connect, recv,
12549         recvfrom, recvmsg, send, sendmsg, sendto): Likewise.
12550         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (llseek, pread,
12551         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
12552         sendto): Likewise.
12553         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list (llseek, pread,
12554         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
12555         sendto, select): Likewise.
12556         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (llseek, pread,
12557         pwrite, accept, connect, recvfrom, recvmsg, sendmsg, sendto):
12558         Likewise.
12559         * sysdeps/unix/sysv/linux/syscalls.list (creat, nanosleep, pause,
12560         select, fcntl): Likewise.
12561         * sysdeps/unix/sysv/syscalls.list (pause, poll): Likewise.
12562         * sysdeps/unix/syscalls.list (close, fcntl, fsync, lseek, open,
12563         read, readv, select, sigsuspend, write, writev): Likewise.
12565 2002-12-14  Jakub Jelinek  <jakub@redhat.com>
12567         * dirent/bug-readdir1.c: Include unistd.h.
12569 2002-12-13  Jakub Jelinek  <jakub@redhat.com>
12571         * locale/programs/locale.c: Include locarchive.h.
12572         (ARCHIVE_NAME): Define.
12573         (write_archive_locales): New function.
12574         (write_locales): Use it.  Ensure the same locale is not printed
12575         multiple times in verbose mode.
12576         Mode LC_IDENTIFICATION and LC_CTYPE printing into...
12577         (print_LC_IDENTIFICATION, print_LC_CTYPE): ... these helper
12578         functions.
12579         (struct nameent): New type.
12580         (nameentcmp): New function.
12582 2002-12-14  Jakub Jelinek  <jakub@redhat.com>
12584         * posix/regex_internal.c (re_string_context_at): Guard wide char
12585         code with #ifdef RE_ENABLE_I18N.
12587 2002-11-22  Paolo Bonzini  <bonzini@gnu.org>
12589         * posix/regcomp.c (regcomp): __re_compile_fastmap -> re_compile_fastmap
12591 2002-12-13  Roland McGrath  <roland@redhat.com>
12593         * posix/bug-regex15.c: New file.
12594         * posix/Makefile (tests): Add it.
12596         * test-skeleton.c (TEST_DATA_LIMIT): New macro, default to 64MB.
12597         (main): Set RLIMIT_DATA limit to TEST_DATA_LIMIT (or lower if need be).
12599 2002-12-13  Ulrich Drepper  <drepper@redhat.com>
12601         * elf/dl-misc.c (_dl_debug_vdprintf): Don't depend on 5-digit PIDs.
12603         * misc/syslog.c (log_cleanup): Don't use parameter in
12604         __libc_lock_unlock call, use syslog_lock directly.  Adjust callers to
12605         pass NULL instead of a pointer to syslog_lock.
12607 2002-12-12  Ulrich Drepper  <drepper@redhat.com>
12609         * iconvdata/Makefile: iconv-rules: Add definition to use gconv.map
12610         linker map for all iconv modules.
12611         (distribute): Add gconv.map.
12612         * iconvdata/gconv.map: New file.
12614         * elf/Makefile: Also check all iconv modules for text relocations.
12616         * stdlib/Makefile: Remove code to automatically import GMP.
12618         * elf/Makefile (tests): Add rules to build and run check-textrel.
12619         * elf/check-textrel.c: New file.
12621         * sysdeps/unix/sysv/linux/i386/sysdep.h (SETUP_PIC_REG): Add .size
12622         directive.
12624 2002-12-11  Jakub Jelinek  <jakub@redhat.com>
12626         * io/test-utime (main): If stnow.st[am]time is wrong, print it and
12627         not st.st[am]time.
12629 2002-04-30  Bruno Haible  <bruno@clisp.org>
12631         * intl/loadmsgcat.c (_nl_init_domain_conv): Don't append //TRANSLIT to
12632         the encoding if it already has slashes.
12633         Reported by Perry Rapp <prapp@erols.com>.
12635 2002-12-11  Roland McGrath  <roland@redhat.com>
12637         * csu/Makefile ($(objpfx)elf-init.oS): Remove target, braino.
12638         (CPPFLAGS-elf-init.oS, CFLAGS-elf-init.oS): New variables.
12639         Turn off PIC for compiling this file.
12641 2002-12-11  Ulrich Drepper  <drepper@redhat.com>
12643         * malloc/thread-m.h: Remove thread_id type and MUTEX_INITIALIZER
12644         definitions.  Not needed.
12645         [_LIBC]: Use definitions from libc-lock.h instead of referencing
12646         pthread routines directly.
12647         * malloc/arena.c (ptmalloc_unlock_all2): Don't add (void) to
12648         mutex_init calls.
12649         (arena_get2): Don't look at return value of mutex_lock.
12651 2002-12-11  Roland McGrath  <roland@redhat.com>
12653         * csu/Makefile ($(objpfx)elf-init.oS): New target, just clone
12654         elf-init.o instead of compiling a PIC version.
12656 2002-12-11  Bruno Haible  <bruno@clisp.org>
12658         * intl/gettext.h: Renamed to ...
12659         * intl/gmo.h: ... here.
12660         * intl/Makefile (distribute): Add gmo.h, remove gettext.h.
12661         * intl/gettextP.h: Update.
12662         * intl/loadmsgcat.c: Update.
12664         * intl/gettextP.h (PARAMS): Make more portable.
12665         (attribute_hidden): Define as empty macro if not already defined.
12666         * intl/hash-string.h (PARAMS): Make more portable.
12667         * intl/loadinfo.h (PARAMS): Likewise.
12668         * intl/plural-exp.h (PARAMS): Likewise.
12669         (attribute_hidden): Move definition near the definition of
12670         internal_function.
12672         * intl/gettextP.h (_nl_locale_name) [!_LIBC]: New declaration.
12673         * intl/plural-exp.h (plural_eval) [!_LIBC]: New declaration.
12675 2002-07-13  Bruno Haible  <bruno@clisp.org>
12677         * intl/dcigettext.c (freea): New macro.
12678         (FREE_BLOCKS): Free also the registered blocks.
12679         (DCIGETTEXT): Free the 'search' variable.
12680         Reported by Andreas Fischer <a.fischer@asentics.de>.
12682 2002-04-27  Bruno Haible  <bruno@clisp.org>
12684         * intl/gettextP.h [! _LIBC]: Use prefix libintl_ instead of suffix __.
12685         * intl/dcigettext.c: Likewise.
12686         * intl/dcgettext.c: Likewise.
12687         * intl/dgettext.c: Likewise.
12688         * intl/gettext.c: Likewise.
12689         * intl/dcngettext.c: Likewise.
12690         * intl/dngettext.c: Likewise.
12691         * intl/ngettext.c: Likewise.
12692         * intl/textdomain.c: Likewise.
12693         * intl/bindtextdom.c: Likewise.
12694         * intl/plural-exp.h: Likewise.
12696 2002-01-02  Bruno Haible  <bruno@clisp.org>
12698         * intl/loadmsgcat.c (_nl_init_domain_conv): Use PARAMS in extern decl.
12700 2001-04-30  Bruno Haible  <bruno@clisp.org>
12702         * intl/dcigettext.c (getuid, getgid, geteuid, getegid): Provide
12703         default macro definitions.  Needed for mingw32.
12705 2002-12-10  Ulrich Drepper  <drepper@redhat.com>
12707         * sysdeps/i386/bits/byteswap.h (__bswap_64): Apply
12708         __builtin_constant_p to macro parameter.
12710         * sysdeps/generic/sigpause.c: Define all functions as weak.
12711         * sysdeps/posix/sigpause.c: Likewise.
12713         * elf/tst-tls7.c (do_test): Adjustments for l_tls_modid being of
12714         type size_t.
12716 2002-12-10  Jakub Jelinek  <jakub@redhat.com>
12718         * elf/tst-array1.c (preinit_array, init_array, fini_array):
12719         Explicitly align the array to sizeof (void *).
12720         * elf/tst-array2dep.c (init_array, fini_array): Likewise.
12722         * include/libc-symbols.h: Fix a comment typo.
12724         * sysdeps/unix/sysv/linux/alpha/select.S (__libc_select): New alias.
12725         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S (__libc_sigsuspend):
12726         Likewise.
12727         * sysdeps/unix/sysv/linux/ia64/sigsuspend.c (__libc_sigsuspend):
12728         Likewise.
12729         * sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c
12730         (__libc_sigsuspend): Likewise.
12731         * sysdeps/unix/sysv/linux/sparc/sparc64/sigsuspend.c
12732         (__libc_sigsuspend): Likewise.
12733         * sysdeps/generic/creat.c (__libc_creat): Renamed from creat.
12734         (creat): New weak alias.
12736 2002-12-10  Roland McGrath  <roland@redhat.com>
12738         * manual/libc-texinfo.sh: Emit @set ADD-ON for each ADD-ON that
12739         contributes a manual chapter.
12740         * manual/signal.texi (Process Signal Mask): Use @ifset linuxthreads
12741         around xref to it.
12743         * sysdeps/unix/sysv/linux/dl-librecon.h (EXTRA_LD_ENVVARS): Refer to
12744         and move contents to ...
12745         (EXTRA_LD_ENVVARS_LINUX): ... this new macro.  Add break for nonmatch.
12746         * sysdeps/unix/sysv/linux/i386/dl-librecon.h (EXTRA_LD_ENVVARS): Use
12747         it instead of duplicating its contents.
12748         (EXTRA_LD_ENVVARS): Likewise.  Add break for nonmatch.
12750 2002-12-09  Jakub Jelinek  <jakub@redhat.com>
12752         * elf/dl-support.c (_dl_non_dynamic_init): Add DL_OSVERSION_INIT if
12753         defined.
12754         * sysdeps/unix/sysv/linux/dl-librecon.h (_dl_osversion_init): New
12755         function.
12756         (EXTRA_LD_ENVVARS): Use it.
12757         (DL_OSVERSION_INIT): Define.
12758         * sysdeps/unix/sysv/linux/i386/dl-librecon.h: Include linux
12759         dl-librecon.h.
12760         (EXTRA_LD_ENVVARS): Undef before defining.  Use _dl_osversion_init.
12762 2002-12-10  Ulrich Drepper  <drepper@redhat.com>
12764         * Versions.def: No new symbols in 2.3.1, but some new ones in 2.3.2.
12766         * sysdeps/unix/closedir.c (__closedir): Remove __libc_lock_lock
12767         call.  It is not allowed to destroy pthread mutexes which are
12768         still in use even though it is safe for our implementations.  If
12769         somebody still uses the descriptor it is a bug.
12771 2002-12-09  Richard Henderson  <rth@redhat.com>
12773         * csu/abi-note.S: Use .p2align, not .align.
12775 2002-12-09  Ulrich Drepper  <drepper@redhat.com>
12777         * sysdeps/unix/sysv/linux/syscalls.list: Add __libc_creat and
12778         __libc_select aliases.
12780         * sysdeps/unix/sysv/linux/sigwaitinfo.c: Define __libc_sigwaitinfo
12781         alias.
12783         * sysdeps/unix/sysv/linux/sigwait.c: Define __libc_sigwait alias.
12785         * sysdeps/unix/sysv/linux/sigsuspend.c: Define __libc_sigsuspend alias.
12787         * sysdeps/unix/sysv/linux/poll.c: Define __libc_poll alias.
12789         * sysdeps/unix/syscalls.list: Define __libc_select alias.
12791         * sysdeps/posix/waitid.c: Define __libc_waitid alias.
12793         * sysdeps/posix/sigpause.c: Define __libc_sigpause and
12794         __libc___xpg_sigpause aliases.
12796         * sysdeps/generic/pselect.c: Define __libc_pselect alias.
12798         * misc/error.c: Remove use of USE_IN_LIBIO.
12800 2002-12-08  Roland McGrath  <roland@redhat.com>
12802         * elf/Makefile (tests): Uncomment tst-array[123].
12803         * Makeconfig (CPPFLAGS-.oS): Add -DLIBC_NONSHARED=1.
12804         * csu/elf-init.c: New file.
12805         * csu/Makefile (routines, static-only-routines): Add elf-init.
12806         * sysdeps/alpha/elf/start.S: Use __libc_csu_init in place of _init
12807         and __libc_csu_fini in place of _fini.
12808         * sysdeps/arm/elf/start.S: Likewise.
12809         * sysdeps/cris/elf/start.S: Likewise.
12810         * sysdeps/hppa/elf/start.S: Likewise.
12811         * sysdeps/i386/elf/start.S: Likewise.
12812         * sysdeps/ia64/elf/start.S: Likewise.
12813         * sysdeps/m68k/elf/start.S: Likewise.
12814         * sysdeps/mach/hurd/powerpc/static-start.S: Likewise.
12815         * sysdeps/mips/elf/start.S: Likewise.
12816         * sysdeps/powerpc/powerpc32/elf/start.S: Likewise.
12817         * sysdeps/powerpc/powerpc64/elf/start.S: Likewise.
12818         * sysdeps/s390/s390-32/elf/start.S: Likewise.
12819         * sysdeps/s390/s390-64/elf/start.S: Likewise.
12820         * sysdeps/sh/elf/start.S: Likewise.
12821         * sysdeps/sparc/sparc32/elf/start.S: Likewise.
12822         * sysdeps/sparc/sparc64/elf/start.S: Likewise.
12823         * sysdeps/x86_64/elf/start.S: Likewise.
12825         * sysdeps/pthread/aio_notify.c (notify_func_wrapper): Take a malloc'd
12826         struct containing function ptr and value, free it.
12827         (__aio_notify_only): Allocate that and copy values from SIGEV into it.
12828         It's not safe to let the new thread use the SIGEV pointer.
12830 2001-10-20  Paul Eggert  <eggert@twinsun.com>
12832         * misc/error.c (strerror_r): Do not declare unless [!_LIBC].
12833         Do not check for HAVE_DECL_STRERROR_R missing unless STRERROR_R_CHAR_P.
12834         Use strerror_r that is only a macro, even if it is not a function.
12835         (strerror): Check for HAVE_DECL_STRERROR before declaring.
12836         (private_strerror): Use prototypes, not old-style function definition.
12837         (print_errno_message): New function.
12838         Support the POSIX 'int'-flavored strerror_r, as well as the traditional
12839         char*-flavored one.
12840         (error_tail, error, error_at_line): Use it.
12842 2002-12-07  Carlos O'Donell  <carlos@baldric.uwo.ca>
12844         * sysdeps/unix/sysv/linux/hppa/bits/shm.h: Added SHMLBA #define.
12846 2002-12-08  Ulrich Drepper  <drepper@redhat.com>
12848         * scripts/output-format.sed: Fix bug in one of the s expressions
12849         which used / for one too many things.
12851         * include/unistd.h: Declare __libc_close.
12853 2002-12-07  Ulrich Drepper  <drepper@redhat.com>
12855         * sysdeps/generic/bits/stdio-lock.h (_IO_lock_trylock): New define.
12857 2002-12-07  Roland McGrath  <roland@redhat.com>
12859         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Reintroduce changes
12860         from 2002-12-06, but remove unnecessary memset call without removing
12861         necessary copy of initialization image.
12863         * Makerules ($(common-objpfx)format.lds): New target.
12864         (common-generated): Add it.
12865         ($(inst_libdir)/libc.so): Depend on that, and cat it into the result.
12866         * scripts/output-format.sed: New file.
12867         * Makefile (distribute): Add it.
12869 2002-12-07  Ulrich Drepper  <drepper@redhat.com>
12871         * sysdeps/generic/libc-tls.c: Include <sys/param.h>.
12872         Reported by Art Haas <ahaas@airmail.net>.
12874 2002-12-07  Kenneth W. Chen  <kenneth.w.chen@intel.com>
12876         * sysdeps/ia64/strncpy.S (strncpy): Clear ar.ec.  Fix .recovery4.
12878 2002-12-07  Jakub Jelinek  <jakub@redhat.com>
12880         * string/test-strncpy.c (do_random_tests): Improve test coverage.
12882 2002-12-06  Ulrich Drepper  <drepper@redhat.com>
12884         * test-skeleton.c (timeout_handler): Allow expected signal to be
12885         SIGALRM.
12887         * wctype/wcfuncs.c: Add libc_hidden_def for iswalnum.
12889         * sysdeps/posix/raise.c: Add libc_hidden_def for raise.
12891 2002-12-07  Jakub Jelinek  <jakub@redhat.com>
12893         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h [RTLD_PRIVATE_ERRNO]
12894         (SYSCALL_ERROR_HANDLER): Fix a pasto.
12895         Reported by Jeff Bailey <jbailey@nisa.net>.
12897 2002-12-06  Ulrich Drepper  <drepper@redhat.com>
12899         * sysdeps/generic/libc-tls.c: Undo last patch.
12901         * include/wctype.h: Define iswalnum with libc_hidden_proto.
12903         * include/signal.h: Define raise with libc_hidden_proto.
12905         * sysdeps/unix/sysv/linux/fexecve.c (fexecve): Use __snprintf and
12906         __execve instead of snprintf and execve.
12908         * sysdeps/x86_64/fpu/libm-test-ulps: Relax errors for float and double
12909         again a bit.
12911 2002-12-06  Jakub Jelinek  <jakub@redhat.com>
12913         * posix/Makefile (annexc.out): Add -I../dir for all sorted-dirs.
12914         * posix/annexc.c (fmt, testfmt): Remove -D_LIBC.
12916 2002-12-06  Ulrich Drepper  <drepper@redhat.com>
12918         * misc/syslog.c (log_cleanup): New function.
12919         (openlog): Use log_cleanup instead of __libc_mutex_unlock.
12920         (closelog): Likewise.
12922         * elf/dl-close.c: Use __rtld_lock_* macros instead of __libc_lock_*.
12923         * elf/dl-iteratephdr.c: Likewise.
12924         * elf/dl-lookup.c: Likewise.
12925         * elf/dl-misc.c: Likewise.
12926         * elf/dl-open.c: Likewise.
12927         * elf/dl-support.c: Likewise.
12928         * elf/rtld.c: Likewise.
12929         * sysdeps/generic/ldsodefs.h: Likewise.
12930         * sysdeps/generic/bits/libc-lock.h: Define __rtld_lock_* macros.
12931         * sysdeps/mach/bits/libc-lock.h: Likewise.
12932         * sysdeps/mach/hurd/bits/libc-lock.h: Likewise.
12934 2002-12-06  Roland McGrath  <roland@redhat.com>
12936         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Cope with zero ALIGN.
12938         * malloc/hooks.c [_LIBC && (USE___THREAD || (USE_TLS && !SHARED))]
12939         (malloc_starter, memalign_starter, free_starter): Don't define these.
12940         * malloc/malloc.c [_LIBC && (USE___THREAD || (USE_TLS && !SHARED))]:
12941         Don't declare them either.
12942         * malloc/arena.c (ptmalloc_init) [_LIBC && USE_TLS]: Don't call
12943         __pthread_initialize, so no need to set hooks to *_starter.
12944         (ptmalloc_init_minimal): New function, broken out of ptmalloc_init.
12945         [_LIBC && SHARED && USE_TLS && !USE___THREAD]
12946         (__libc_malloc_pthread_startup): New function.
12947         * malloc/Versions (libc: GLIBC_PRIVATE): New set, add that function.
12949         * malloc/hooks.c (memalign_starter): New function.
12950         * malloc/malloc.c: Declare it.
12951         * malloc/arena.c (save_memalign_hook): New variable.
12952         (ptmalloc_init): Set __memalign_hook to memalign_starter.
12954         * elf/dl-minimal.c (free): Clear the memory.
12955         (calloc): Just call malloc, knowing all memory it returns is cleared.
12957         * sysdeps/generic/dl-tls.c (allocate_dtv): Use calloc instead of
12958         malloc and memset; calloc can avoid the zeroing when redundant.
12959         (_dl_tls_setup): Likewise.
12960         * elf/dl-load.c (decompose_rpath): Likewise.
12961         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Comment out memset
12962         call, since memory from sbrk at startup is already zero.
12964         * elf/rtld.c (_dl_start, dl_main): TLS_INIT_TP macro now returns an
12965         error string for failure, null for success.  Update callers.
12966         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Likewise.
12967         * elf/dl-load.c (_dl_map_object_from_fd): Likewise.
12969 2002-12-05  Jakub Jelinek  <jakub@redhat.com>
12971         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (sendfile): Change
12972         args to i:iipi.
12973         (readahead): Change args to i:iii.
12974         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list (readahead):
12975         Change args to i:iii.
12976         * sysdeps/unix/sysv/linux/mips/syscalls.list (readahead): Change
12977         args to i:iiii.
12979 2002-12-05  Roland McGrath  <roland@redhat.com>
12981         * stdlib/cxa_finalize.c (__cxa_finalize): When given a null argument,
12982         call all functions rather than none.
12983         Reported by Mark P. Mitchell <mark@codesourcery.com>.
12985 2002-12-04  Roland McGrath  <roland@redhat.com>
12987         * locale/localeinfo.h [NL_CURRENT_INDIRECT]: Use attribute_tls_model_ie
12988         on _nl_current_LC_* variables.
12990 2002-12-05  Ulrich Drepper  <drepper@redhat.com>
12992         * dirent/bug-readdir1.c (main): Don't call closedir, just close
12993         the file descriptor.  This is testing what the bug report was about.
12995 2002-12-04  Ulrich Drepper  <drepper@redhat.com>
12997         * po/be.po: New file.
12999         * argp/Makefile (tests): Add tst-argp1.
13001         * sysdeps/unix/sysv/linux/alpha/bits/siginfo.h: (struct sigevent):
13002         Change type of _attribute to void*.
13003         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Likewise.
13004         * sysdeps/unix/sysv/linux/bits/siginfo.h: Likewise.
13005         * sysdeps/unix/sysv/linux/mips/bits/siginfo.h: Likewise.
13006         * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Likewise.
13007         * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Likewise.
13009 2002-12-04  Roland McGrath  <roland@redhat.com>
13011         * sysdeps/generic/ldsodefs.h (struct rtld_global): Move all [USE_TLS]
13012         members to the end, so a libpthread compiled with !USE_TLS will still
13013         find other members properly.
13015         * sysdeps/i386/i486/bits/string.h (__strcpy_g): Add dummy output
13016         operand for DEST memory.  Fix dummy input operand to use SRC.
13017         Reported by Davin McCall <davmac@ozonline.com.au>.
13019         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Account for TCB
13020         alignment when initializing the DTV entry.
13022         * elf/dl-load.c (_dl_map_object_from_fd): If we hit a TLS segment
13023         when TLS has not been set up, try to set it up if we can.
13024         * elf/tst-tls4.c: Revert last change.
13025         * elf/tst-tls5.c: Likewise.
13026         * elf/tst-tls6.c: Likewise.
13027         * elf/tst-tls7.c: Likewise.
13028         * elf/tst-tls8.c: Likewise.
13029         * elf/tst-tls9.c: Likewise.
13031         * sysdeps/generic/dl-tls.c [SHARED] (_dl_tls_setup): New function.
13032         * sysdeps/generic/ldsodefs.h: Declare it.
13033         * elf/Versions (ld: GLIBC_PRIVATE): Add it.
13034         * sysdeps/generic/libc-tls.c (init_slotinfo): New static inline
13035         function, broken out of __libc_setup_tls.
13036         (init_static_tls): Likewise.
13037         (__libc_setup_tls): Call them.
13038         (_dl_tls_setup): New function, uses new subroutines.
13040         * elf/dl-close.c (free_slotinfo): Make argument pointer to pointer.
13041         Clear the pointer when returning true.
13042         (libc_freeres_fn) [SHARED]: If GL(dl_initial_dtv) is null, free the
13043         first element of the slotinfo list too.
13045         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Define only if
13046         [SHARED].
13048         * sysdeps/generic/ldsodefs.h (_dl_next_tls_modid): Declare as hidden.
13049         (_dl_determine_tlsoffset): Likewise.
13051         * elf/rtld.c (_dl_initial_error_catch_tsd): Renamed from
13052         startup_error_tsd, made global.
13053         (dl_main): Update initialization.
13054         * elf/dl-tsd.c: Likewise.
13055         * sysdeps/generic/ldsodefs.h: Declare it.
13057 2002-12-03  Ulrich Drepper  <drepper@redhat.com>
13059         * manual/texinfo.tex: Update from latest upstream version.
13061 2002-12-03  Roland McGrath  <roland@redhat.com>
13063         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Include static TLS
13064         area surplus in calculation for sbrk call.
13066         * iconvdata/cp1125.c: New file.
13067         * iconvdata/Makefile (distribute): Add it.
13068         (modules): Add CP1125.
13069         (gen-8bit-gap-modules): Add cp1125.
13070         * iconvdata/gconv-modules: Add CP1125, alias RUSCII.
13071         * iconvdata/tst-tables.sh: Add CP1125 to the list to test.
13073 2002-12-03  Andreas Jaeger  <aj@suse.de>
13075         * sysdeps/x86_64/fpu/libm-test-ulps: Regenerated.
13077 2002-12-03  Ulrich Drepper  <drepper@redhat.com>
13079         * sysdeps/posix/system.c (do_system): Make signal handler
13080         installation thread safe.
13082 2002-12-02  Roland McGrath  <roland@redhat.com>
13084         * sysdeps/unix/sysv/linux/alpha/syscalls.list (readahead): Change
13085         caller from EXTRA to -.
13086         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
13087         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
13088         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
13090 2002-12-02  Carlos O'Donell  <carlos@baldric.uwo.ca>
13092         * sysdeps/hppa/fpu/fesetround.c (fesetround): Use ~FE_DOWNWARD so both
13093         bits of RM are cleared.
13095 2002-12-02  Roland McGrath  <roland@redhat.com>
13097         * elf/tst-tls4.c: Define an unused TLS variable here, so that no lazy
13098         TLS setup is required.
13099         * elf/tst-tls5.c: Likewise.
13100         * elf/tst-tls6.c: Likewise.
13101         * elf/tst-tls7.c: Likewise.
13102         * elf/tst-tls8.c: Likewise.
13103         * elf/tst-tls9.c: Likewise.
13105         * elf/rtld.c (dl_main): Remove [! SHARED] conditional from
13106         `if (GL(dl_tls_max_dtv_idx) > 0)' tests for doing TLS setup.
13107         * elf/dl-close.c (libc_freeres_fn): Check GL(dl_tls_dtv_slotinfo_list)
13108         for being null before calling free_slotinfo.
13109         * elf/dl-load.c (_dl_map_object_from_fd) [SHARED]: For PT_TLS in
13110         dynamic loading, bail with error if GL(dl_tls_max_dtv_idx) is zero.
13112 2002-11-30  Bruno Haible  <bruno@clisp.org>
13114         * iconv/gconv.h (__gconv_btowc_fct): New typedef.
13115         (struct __gconv_step): New field __btowc_fct.
13116         * wcsmbs/btowc.c (__btowc): Use the __btowc_fct shortcut if possible.
13117         * iconv/gconv_int.h (__BUILTIN_TRANSFORM): Renamed from
13118         __BUILTIN_TRANS.
13119         (__gconv_btwoc_ascii): New declaration.
13120         * iconv/gconv_simple.c (BUILTIN_TRANSFORMATION): Add BtowcFct argument.
13121         (__gconv_btwoc_ascii): New function.
13122         * iconv/gconv_builtin.h: Add BtowcFct argument to all
13123         BUILTIN_TRANSFORMATION invocations.
13124         * iconv/gconv_conf.c (BUILTIN_TRANSFORMATION): Add BtowcFct argument.
13125         * iconv/iconvconfig.c (BUILTIN_TRANSFORMATION): Likewise.
13126         * iconv/gconv_builtin.c (map): New field btowc_fct.
13127         (BUILTIN_TRANSFORMATION): Add BtowcFct argument. Use it to initialize
13128         btowc_fct field.
13129         (__gconv_get_builtin_trans): Initialize __btowc_fct field.
13130         * iconv/gconv_cache.c (find_module): Initialize __btowc_fct field.
13131         * iconv/gconv_db.c (gen_steps, increment_counter): Likewise.
13132         * wcsmbs/wcsmbsload.c (to_wc, to_mb): Likewise.
13133         * iconv/skeleton.c: Document STORE_REST and FROM_ONEBYTE.
13134         (gconv_init): Initialize __btowc_fct field.
13135         Undefine EXTRA_LOOP_ARGS and FROM_ONEBYTE at the end.
13136         * iconv/loop.c: Document ONEBYTE_BODY.
13137         (gconv_btowc, FROM_ONEBYTE): Define if ONEBYTE_BODY is defined.
13138         Undefine ONEBYTE_BODY at the end.
13139         * iconvdata/8bit-generic.c (ONEBYTE_BODY): New macro.
13140         * iconvdata/8bit-gap.c (NONNUL): New macro.
13141         (BODY for FROM_LOOP): Use it.
13142         (ONEBYTE_BODY): New macro.
13143         * iconvdata/isiri-3342.c (HAS_HOLES): Set to 1.
13144         (NONNUL): New macro.
13145         * iconvdata/ansi_x3.110.c (ONEBYTE_BODY): New macro.
13146         * iconvdata/armscii-8.c (ONEBYTE_BODY): New macro.
13147         * iconvdata/cp1255.c (ONEBYTE_BODY): New macro.
13148         * iconvdata/cp1258.c (ONEBYTE_BODY): New macro.
13149         * iconvdata/tcvn5712-1.c (ONEBYTE_BODY): New macro.
13150         * iconvdata/big5.c (ONEBYTE_BODY): New macro.
13151         * iconvdata/big5hkscs.c (ONEBYTE_BODY): New macro.
13152         * iconvdata/euc-cn.c (ONEBYTE_BODY): New macro.
13153         * iconvdata/euc-jp.c (ONEBYTE_BODY): New macro.
13154         * iconvdata/euc-jisx0213.c (ONEBYTE_BODY): New macro.
13155         * iconvdata/euc-kr.c (ONEBYTE_BODY): New macro.
13156         * iconvdata/euc-tw.c (ONEBYTE_BODY): New macro.
13157         * iconvdata/gbk.c (ONEBYTE_BODY): New macro.
13158         * iconvdata/gb18030.c (ONEBYTE_BODY): New macro.
13159         * iconvdata/ibm932.c: Include <stdbool.h>.
13160         (TRUE, FALSE): Remove macros.
13161         (BODY for FROM_LOOP): Remove unused variable rp1.
13162         (ONEBYTE_BODY): New macro.
13163         (BODY for TO_LOOP): Use bool.
13164         * iconvdata/ibm932.h (__ibm932sb_to_ucs4_idx): Remove array.
13165         * iconvdata/ibm943.c: Include <stdbool.h>.
13166         (TRUE, FALSE): Remove macros.
13167         (BODY for FROM_LOOP): Remove unused variable rp1.
13168         (ONEBYTE_BODY): New macro.
13169         (BODY for TO_LOOP): Use bool.
13170         * iconvdata/ibm943.h (__ibm943sb_to_ucs4_idx): Remove array.
13171         * iconvdata/iso8859-1.c (ONEBYTE_BODY): New macro.
13172         * iconvdata/iso_6937-2.c (ONEBYTE_BODY): New macro.
13173         * iconvdata/iso_6937.c (ONEBYTE_BODY): New macro.
13174         * iconvdata/johab.c (ONEBYTE_BODY): New macro.
13175         * iconvdata/sjis.c (ONEBYTE_BODY): New macro.
13176         * iconvdata/shift_jisx0213.c (ONEBYTE_BODY): New macro.
13177         * iconvdata/t.61.c (ONEBYTE_BODY): New macro.
13178         * iconvdata/uhc.c (ONEBYTE_BODY): New macro.
13179         * iconvdata/gbbig5.c: Tweak comment.
13181 2002-12-02  Ulrich Drepper  <drepper@redhat.com>
13183         * po/fi.po: Update from translation team.
13185 2002-12-01  Roland McGrath  <roland@redhat.com>
13187         * sysdeps/unix/sysv/linux/getdents.c (__GETDENTS): Fix condition
13188         testing getdents64 return value.
13190         * scripts/versions.awk: Don't pass -n flag to sort command.
13192         * posix/bug-regex13.c: Include <string.h>.
13194         * sysdeps/generic/libc-start.c (__libc_start_main): Do
13195         DL_SYSDEP_OSCHECK here.
13196         * sysdeps/unix/sysv/linux/init-first.c (init): Not here.
13197         * sysdeps/unix/sysv/linux/dl-osinfo.h: Include <fcntl.h>.
13199         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Bail if
13200         argument TCBSIZE <= TLS_INIT_TCB_SIZE, not just if it's zero.
13202         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Check l_tls_offset
13203         instead of l_type to decide whether to use TLS_DTV_UNALLOCATED.
13205         * include/link.h: Comment typo fix.
13207 2002-12-01  Roland McGrath  <roland@frob.com>
13209         * sysdeps/mach/hurd/bits/posix_opt.h (_POSIX_FSYNC): Set to 200112L.
13210         (_POSIX_SPAWN, _POSIX_MAPPED_FILES, _POSIX_MEMLOCK_RANGE,
13211         _POSIX_MEMORY_PROTECTION): Likewise.
13212         (_POSIX_POLL, _POSIX_SELECT): Removed.
13214 2002-11-28  Ulrich Drepper  <drepper@redhat.com>
13216         * sysdeps/unix/sysv/linux/bits/posix_opt.h: Define macros which
13217         require it to 200112L.  Remove _POSIX_POLL and _POSIX_SELECT.
13219 2002-11-28  Jakub Jelinek  <jakub@redhat.com>
13221         * sysdeps/unix/alpha/sysdep.S: Change defined(USE___THREAD) to
13222         USE___THREAD.
13223         * sysdeps/unix/sysv/linux/alpha/sysdep.h (inline_syscall*): Avoid
13224         "=v" constraints.
13226 2002-11-28  Ulrich Drepper  <drepper@redhat.com>
13228         * sysdeps/unix/sysv/linux/x86_64/vfork.S: Don't trash the CPU's
13229         branch prediction buffers by using unpaired call/ret.
13231 2002-11-27  Ulrich Drepper  <drepper@redhat.com>
13233         * sysdeps/unix/sysv/linux/i386/sysdep.h (ASMFMT_2): Fix typo in
13234         first parameters constraint string.
13235         (ASMFMT_3): Likewise.  Patch by stefan.lauterbach@mincom.de.
13237 2002-11-27  Isamu Hasegawa  <isamu@yamato.ibm.com>
13239         * posix/regcomp.c (parse_expression): Set the bit since the back
13240         reference is used in the regular expression.
13241         * posix/regex_internal.c (re_node_set_init_1): Make it clean in case
13242         of malloc failure.
13243         (re_node_set_init_copy): Likewise.
13244         * posix/regex_internal.h (state_array_t): New structure.
13245         (re_sub_match_last_t): Likewise.
13246         (re_sub_match_top_t): Likewise.
13247         (re_match_context_t): Add new members.
13248         (re_dfa_t): Likewise.
13249         * posix/regexec.c (re_search_internal): Invoke prune_impossible_nodes
13250         to check the matching is really correct, and retry if failed.
13251         Move the routin pruning the impossible nodes from here, ...
13252         (prune_impossible_nodes): To this function.
13253         (check_matching): Invoke check_subexp_matching_top, and replace
13254         redundant checking with transit_state_bkref invocation.
13255         (proceed_next_node): Replace strncmp with memcmp.  Reported by
13256         Paolo Bonzini  <bonzini@gnu.org>.
13257         (update_cur_sifted_state): Remove search_subexp invocation.
13258         (search_subexp): Remove this function.
13259         (check_dst_limits_calc_pos): Use search_cur_bkref_entry for
13260         optimization.
13261         (sift_states_bkref): Use search_cur_bkref_entry for optimization.
13262         Remove unused invocation of match_ctx_add_entry.
13263         (transit_state): Invoke check_subexp_matching_top.
13264         (check_subexp_matching_top): New function.
13265         (transit_state_bkref): Remove unused array.
13266         Merge transit_state_bkref_loop.
13267         (transit_state_bkref_loop): Use get_subexp instead of
13268         sift_states_backward.  Use search_cur_bkref_entry for optimization.
13269         Merge this function to transit_state_bkref.
13270         (get_subexp): New function.
13271         (get_subexp_sub): Likewise.
13272         (find_subexp_node): Likewise.
13273         (check_arrival): Likewise.
13274         (check_arrival_expand_ecl): Likewise.
13275         (check_arrival_expand_ecl_sub): Likewise.
13276         (expand_bkref_cache): Likewise.
13277         (match_ctx_init): Initialize new members.
13278         (match_ctx_clean): New function.
13279         (match_ctx_free): Release new members.
13280         (match_ctx_free_subtops): New function.
13281         (match_ctx_add_entry): Fix indent.
13282         (search_cur_bkref_entry): New function.
13283         (match_ctx_add_subtop): Likewise.
13284         (match_ctx_add_sublast): Likewise.
13286 2002-11-25  Ulrich Drepper  <drepper@redhat.com>
13288         * iconv/Makefile (tests): Remove tst-iconv4.c
13289         * iconv/tst-iconv4.c: Moved to...
13290         * iconvdata/tst-iconv4.c: ...here.  New file.
13291         * iconvdata/Makefile (tests): Add tst-iconv4.  Add dependencies.
13293 2002-11-25  Roland McGrath  <roland@redhat.com>
13295         * inet/test-ifaddrs.c (main: addr_string): Handle null SA.
13296         Grok AF_LINK if defined.
13297         From Momchil Velikov <velco@fadata.bg>.
13299         * sysdeps/gnu/ifaddrs.c (getifaddrs): If ioctl fails for netmask,
13300         brdaddr, or dstaddr, just set those pointers to null and don't fail.
13301         Reported by Momchil Velikov <velco@fadata.bg>.
13303         * sysdeps/generic/ifreq.h (__if_nextreq) [_HAVE_SA_LEN]: If sa_len
13304         is > sizeof IFR->ifa_addr, advance past the whole longer length.
13305         (__ifreq): Count up NIFS that way too.
13306         Reported by Momchil Velikov <velco@fadata.bg>.
13308         * sysdeps/mach/hurd/lchmod.c: Include <fcntl.h>.
13310         * sysdeps/mach/hurd/i386/init-first.c: Include <ldsodefs.h>
13311         and <fpu_control.h>.
13313 2002-11-24  Ulrich Drepper  <drepper@redhat.com>
13315         * elf/elf.h (EM_ST19): Fix typo.
13317 2002-11-25  Jakub Jelinek  <jakub@redhat.com>
13319         * include/errno.h (__set_errno): Define as errno = val
13320         unconditionally.
13322 2002-11-24  Roland McGrath  <roland@redhat.com>
13324         * sysdeps/posix/readv.c: Include <errno.h>, use __set_errno macro.
13325         * sysdeps/posix/writev.c: Likewise.
13326         From Momchil Velikov <velco@fadata.bg>.
13328         * elf/dl-error.c [! _LIBC_REENTRANT]: Use a static variable instead of
13329         calling *GL(dl_error_catch_tsd) for a thread-local location.
13330         * elf/rtld.c (startup_error_tsd): Conditionalize on [_LIBC_REENTRANT].
13331         (dl_main): Same for GL(dl_error_catch_tsd) initialization.
13332         * elf/dl-tsd.c: Conditionalize contents on [_LIBC_REENTRANT].
13334         * libio/iofflush.c: Add libc_hidden_def.
13335         * libio/iofwrite.c: Likewise.
13336         * sysdeps/generic/sigtimedwait.c: Likewise.
13337         * sysdeps/generic/sigwaitinfo.c: Likewise.
13338         * sysdeps/posix/sigwait.c: Likewise.
13339         Reported by Momchil Velikov <velco@fadata.bg>.
13341         * inet/inet_lnaof.c (inet_lnaof): Change return type to in_addr_t
13342         to match <arpa/inet.h> declaration.
13343         * inet/inet_netof.c (inet_netof): Likewise.
13344         * inet/inet_mkadr.c (inet_makeaddr): Likewise for argument types.
13345         Reported by Momchil Velikov <velco@fadata.bg>.
13347         * configure.in: Skip AUTOCONF check under --without-cvs.
13348         * configure: Regenerated.
13350         * posix/Makefile (headers): Add bits/pthreadtypes.h.
13351         * sysdeps/unix/sysv/linux/Makefile (sysdep_heaers): Don't add it here.
13352         * sysdeps/unix/sysv/linux/Dist: Remove it from the list.
13354 2002-11-24  Andreas Schwab  <schwab@suse.de>
13356         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Support inline syscall
13357         with six arguments.
13359 2002-11-19  Jim Meyering  <jim@meyering.net>
13361         * time/mktime.c (__mon_yday, __mktime_internal) [!_LIBC]: Declare
13362         as `static'.
13363         * time/strptime.c (__mon_yday) [!_LIBC]: Declare as `static'.
13365 2002-11-23  Roland McGrath  <roland@redhat.com>
13367         * scripts/abilist.awk: Avoid strtonum function, not there in mawk.
13368         Just produce hex output for datum sizes.
13370         * elf/Makefile ($(objpfx)librtld.mk): Tighten up regexp.
13371         Reported by Luca Barbieri <ldb@ldb.ods.org>.
13373 2002-11-20  Steven Munroe  <sjmunroe@us.ibm.com>
13375         * sysdeps/unix/sysv/linux/powerpc/bits/msq.h (msqid_ds)
13376         [__WORDSIZE == 32]: Only PPC32 requires __unused1, __unused2,
13377         and __unused3 fields.
13378         * sysdeps/unix/sysv/linux/powerpc/bits/sem.h (semid_ds)
13379         [__WORDSIZE == 32]: Only PPC32 requires __unused1
13380         and __unused2 fields.
13381         * sysdeps/unix/sysv/linux/powerpc/bits/shm.h (shmid_ds)
13382         [__WORDSIZE == 32]: Only PPC32 requires __unused1, __unused2,
13383         __unused3, and __unused4 fields.
13385         * csu/gmon-start.c (__gmon_start__): Always use TEXT_START macro to
13386         obtain lowest address for profiling in __monstartup call.
13388 2002-11-21  Roland McGrath  <roland@redhat.com>
13390         * sysdeps/ia64/fpu/Makefile (libm-sysdep_routines): Remove redunant
13391         $(calls) $(calls:=f) $(long-c-$(long-double-fcts)).
13393         * locale/localeinfo.h (struct locale_data): Revert last change.
13395         * sysdeps/unix/sysv/linux/ia64/syscalls.list (s_exit_group): Add it.
13396         From Ian Wienand <ianw@gelato.unsw.edu.au>.
13398         * sysdeps/unix/sysv/linux/ia64/sysdep.h (__NR_pread): Define to
13399         __NR_pread64 if not defined.
13400         (__NR_pwrite): Define to __NR_pwrite64 if not defined.
13401         From Ian Wienand <ianw@gelato.unsw.edu.au>.
13403 2002-11-21  Roland McGrath  <roland@frob.com>
13405         * sysdeps/mach/hurd/i386/init-first.c (posixland_init): Set
13406         __libc_multiple_libcs here.  Call __setfpucw.
13408 2002-11-21  Ulrich Drepper  <drepper@redhat.com>
13410         * elf/Makefile (tests): Don't run test-arrayX tests for now.
13412         * sysdeps/unix/sysv/linux/bits/sched.h: Add new CLONE_* flags.
13413         * sysdeps/unix/sysv/linux/i386/clone.S: Add support for
13414         CLONE_CHILD_*TID flags.
13416 2002-11-20  Andreas Jaeger  <aj@suse.de>
13418         * sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h (SIGCONTEXT):
13419         We pass struct ucontext on x86-64.
13420         (GET_PC): Adjust.
13421         (GET_FRAME): Adjust.
13422         (GET_STACK): Adjust.
13424 2002-11-20  Roland McGrath  <roland@redhat.com>
13426         * sysdeps/powerpc/powerpc32/dl-machine.c [! SHARED]: Further
13427         conditionalize [! DO_VERSIONING] #error.
13429         * scripts/abilist.awk: Grok function descriptor symbols.
13431         * intl/tst-gettext.c (main): Check return values from setlocale.
13432         Add necessary unsetenv's to make LANG=existing-locale check work.
13434         * intl/tst-gettext.sh: Use mkdir -p.  Copy test files unconditionally,
13435         so aborted prior runs don't confuse things.
13437         * locale/localeinfo.h (struct locale_data: union locale_data_value):
13438         Use uintptr_t instead of unsigned int for `word' member.
13439         (_NL_CURRENT_WORD): Cast to uint32_t.
13441         * posix/bug-regex5.c (main): Use union to extract _NL_COLLATE_NRULES
13442         value.
13444 2002-11-20  Ulrich Drepper  <drepper@redhat.com>
13446         * elf/tls-macros.h: Add IA-64 definitions.
13447         Patch by Ian Wienand <ianw@gelato.unsw.edu.au>.
13449         * iconv/Makefile (tests): Add tst-iconv4.
13450         * iconv/tst-iconv4.c: New file.
13452         * iconv/gconv_simple.c (internal_ucs4le_loop_unaligned): Return
13453         __GCONV_EMPTY_INPUT only if input is really empty.  Otherwise
13454         __GCONV_INCOMPLETE_INPUT.
13455         (ucs4le_internal_loop): Likewise.
13456         (ucs4le_internal_loop_unaligned): Likewise.
13457         * iconvdata/unicode.c (PREPARE_LOOP): Likewise.
13458         * iconvdata/utf-16.c (PREPARE_LOOP): Likewise.
13459         * iconvdata/utf-32.c (PREPARE_LOOP): Likewise.
13461         * iconv/loop.c (LOOPFCT): First test for empty input then for full
13462         output buffer.
13464         * inet/getnameinfo.c: Use extend_alloca where appropriate.
13465         * sysdeps/posix/getaddrinfo.c: Likewise.
13467         * include/alloca.h (extend_alloca): New define.  Based on stack
13468         direction it'll try to append to the previouls allocated buffer.
13470 2002-11-07  Thorsten Kukuk  <kukuk@suse.de>
13472         * sysdeps/posix/getaddrinfo.c (gaih_inet): If AF_UNSPEC is set,
13473         use the same service for AF_INET and AF_INET6.
13475 2002-11-19  Ulrich Drepper  <drepper@redhat.com>
13477         * intl/localealias.c (read_alias_file): Use only about 400 bytes
13478         of stack space instead of 16k.
13480 2002-11-18  Wolfram Gloger  <wg@malloc.de>
13482         * malloc/arena.c
13483         (ptmalloc_lock_all, ptmalloc_unlock_all, ptmalloc_unlock_all2): Do
13484         nothing if not initialized.  Bug report from Marcus Brinkmann
13485         <Marcus.Brinkmann@ruhr-uni-bochum.de>.
13487 2002-11-19  Roland McGrath  <roland@redhat.com>
13489         * posix/Versions (libc: GLIBC_2.3.2): Add sched_getaffinity and
13490         sched_setaffinity.
13492         * configure.in (libc_cv_gcc_dwarf2_unwind_info check): Use libraries
13493         `-lgcc -lgcc_eh -lgcc', not just `-lgcc -lgcc_eh' in link commands for
13494         test leading to libc_cv_gcc_dwarf2_unwind_info=no_registry_needed.
13495         * configure: Regenerated.
13497 2002-11-19  Ulrich Drepper  <drepper@redhat.com>
13499         * include/dlfcn.h: __libc_dlopen is now a macro calling
13500         __libc_dlopen_mode with the extra parameter RTLD_LAZY.
13501         (__libc_dlopen_mode): New prototype.
13502         * elf/dl-libc.c (__libc_dlopen_mode): Renamed from __libc_dlopen.  Add
13503         new parameter.  Store new parameter in mode field of structure passed
13504         to do_dlopen.
13505         (struct do_dlopen_args): Add new field mode.
13506         (do_dlopen): Pass mode from parameter structure to _dl_open.
13508 2002-11-11  Randolf Chung  <tausq@debian.org>
13510         * sysdeps/unix/sysv/linux/hppa/bits/fcntl.h [__USE_FILE_OFFSET64]
13511         (F_GETLK, F_SETLK, F_SETLKW): Define to F_*64 versions.
13512         * sysdeps/unix/sysv/linux/hppa/fcntl.c: New file.
13514         * sysdeps/hppa/fpu/libm-test-ulps: New file (generated).
13516         * sysdeps/hppa/Makefile (CFLAGS-rtld.c): New variable.
13517         Set -mdisable-fpregs for this file.
13519 2002-11-11  Carlos O'Donell  <carlos@baldric.uwo.ca>
13521         * sysdeps/unix/sysv/linux/configure.in:
13522         Make 2.4.19 minimum linux kernel for hppa, and add unwind symbols
13523         from gcc-3.0 era for backwards compatibility.
13524         * sysdeps/unix/sysv/linux/configure: Regenerate.
13526         * sysdeps/unix/sysv/linux/hppa/sys/ucontext.h:
13527         Define mcontext_t as a sigcontext.
13529 2002-11-18  Roland McGrath  <roland@redhat.com>
13531         * dlfcn/dlerror.c (fini): New function, __attribute__ ((destructor)).
13532         Free memory in `last_result' if it was used.
13534         * resolv/nss_dns/dns-network.c (getanswer_r): In BYNAME case, search
13535         all aliases for one that matches the "<dotted-quad>.IN-ADDR.ARPA" form.
13536         Do the parsing inline instead of copying strings and calling
13537         inet_network, and properly skip all alias names not matching the form.
13539         * manual/pattern.texi (Variable Substitution): Fix # and ## examples.
13541 2002-11-17  Ulrich Drepper  <drepper@redhat.com>
13543         * manual/pattern.texi (Wordexp Example): Fix sample code.
13545         * sysdeps/unix/sysv/linux/i386/clone.S: Initialize word in the
13546         childs stack which will be loaded into the %esi register.
13548 2002-11-14  Paul Eggert  <eggert@twinsun.com>
13550         * resolv/nss_dns/dns-network.c (getanswer_r): Check for buffer
13551         overflow when skipping the question part and when unpacking aliases.
13553 2002-11-15  Roland McGrath  <roland@redhat.com>
13555         * math/Makefile (libm-calls): Remove s_copysign, s_isinf, s_isnan,
13556         s_finite, s_modf, s_scalbn, s_frexp, m_ldexp, s_signbit.
13557         Instead add $(calls:s_%=m_%) to get m_* versions of them all.
13559 2002-11-15  Jakub Jelinek  <jakub@redhat.com>
13561         * sysdeps/i386/dl-machine.h (elf_machine_rela): Handle R_386_COPY.
13562         * sysdeps/arm/dl-machine.h (elf_machine_rela): Handle R_ARM_COPY.
13564 2002-11-15  Roland McGrath  <roland@redhat.com>
13566         * math/Makefile (libm-calls): Change s_ldexp to m_ldexp.
13567         * Makerules ($(+sysdir_pfx)sysd-rules): Emit pattern rules for m_%.[Sc]
13568         from sysdeps/.../s_%.[Sc] with commands $(+make-include-of-dep).
13569         (+make-include-of-dep): New canned sequence.
13571         * stdlib/canonicalize.c (__realpath): Check for malloc failure.
13572         From Dmitry V. Levin <ldv@altlinux.org>.
13574 2002-11-14  Roland McGrath  <roland@redhat.com>
13576         * sysdeps/generic/errno.c (__libc_errno): Remove alias.
13577         * inet/herrno.c (__libc_h_errno): Likewise.
13578         * resolv/res_libc.c (__libc_res): Likewise.
13579         [USE___THREAD]: Use this in place of [USE_TLS && HAVE___THREAD].
13580         (__res_state) [! USE___THREAD]: Don't define as weak.
13581         * csu/Versions: Revert last change.
13582         * resolv/Versions: Revert last change.
13584         * Makerules ($(common-objpfx)%.make): New pattern rule.
13585         * tls.make.c: New file.
13586         * Makefile (distribute): Add it.
13588         * sysdeps/generic/errno.c [! USE___THREAD]
13589         [HAVE_ELF && SHARED && DO_VERSIONING] (errno, _errno): Declare these
13590         with compat_symbol so they are not link-time visible.
13591         [! USE___THREAD] (__libc_errno): New alias for errno.
13592         * csu/Versions [!(USE_TLS && HAVE___THREAD)] (libc: GLIBC_PRIVATE):
13593         Add __libc_errno here.
13594         * inet/herrno.c [USE___THREAD]: Use this conditional
13595         in place of [USE_TLS && HAVE___THREAD].
13596         [! USE___THREAD] [HAVE_ELF && SHARED && DO_VERSIONING]
13597         (h_errno, _h_errno): Declare these with compat_symbol so they are not
13598         link-time visible.
13599         [! USE___THREAD] (__libc_h_errno): New alias for h_errno.
13600         * resolv/res_libc.c [! USE___THREAD]
13601         [HAVE_ELF && SHARED && DO_VERSIONING] (_res): Likewise.
13602         (_res): Use __attribute__ ((section (".bss"))) so we can have an alias.
13603         (__libc_res): Define as alias for _res.
13604         * resolv/Versions [!(USE_TLS && HAVE___THREAD)] (libc: GLIBC_PRIVATE):
13605         Add __libc_h_errno and __libc_res here.
13607 2002-11-14  Jakub Jelinek  <jakub@redhat.com>
13609         * csu/Versions (errno): Move STT_TLS symbol to GLIBC_PRIVATE for now.
13610         * resolv/Versions (h_errno, _res): Likewise.
13612 2002-11-14  Roland McGrath  <roland@redhat.com>
13614         * Makerules (%.dynsym): Remove $(objpfx) from target and dep.
13615         (%.symlist): Likewise.
13617 2002-11-13  Roland McGrath  <roland@redhat.com>
13619         * scripts/abilist.awk: New file.
13620         * Makefile (distribute): Add it.
13621         * Makerules ($(objpfx)%.dynsym, $(objpfx)%.symlist): New rules.
13622         (tests): Depend on .symlist file for each $(install-lib.so-versioned).
13623         [$(subdir) = elf] (tests): Depend on libc.symlist.
13624         (generated, common-generated): Add those files.
13626         * aclocal.m4 (LIBC_PROG_BINUTILS): Check for objdump, set OBJDUMP.
13627         * configure: Regenerated.
13628         * config.make.in (OBJDUMP): New variable, substituted by configure.
13630         * malloc/mcheck.c (struct hdr): New members `block' and `magic2'.
13631         (mallochook, reallochook): Set them up.
13632         (checkhdr): Check HDR->magic2 value.
13633         (freehook): Reset HDR->magic2.
13634         (memalignhook): New static function.
13635         (old_memalign_hook): New static variable.
13636         (mcheck, reallochook): Set __memalign_hook to memalignhook.
13638         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage): Zero the space
13639         for the new TCB.
13641 2002-11-13  Andreas Jaeger  <aj@suse.de>
13643         * sysdeps/unix/sysv/linux/x86_64/sigaction.c: Check for visibility
13644         attribute.
13645         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
13647 2002-11-11  Paul Eggert  <eggert@twinsun.com>
13649         * manual/crypt.texi (Cryptographic Functions): Mention that
13650         the MD5 one-way algorithm is compatible with BSD's.
13652 2002-11-11  Isamu Hasegawa  <isamu@yamato.ibm.com>
13654         * posix/regex_internal.c (re_string_skip_chars): Also return the last
13655         wide character.
13656         (re_string_reconstruct): Calculate the context by itself when the
13657         offset points out of the valid range.
13658         (re_string_context_at): Use wide character when MB_CUR_MAX > 1.
13659         * posix/regex_internal.h (WIDE_NEWLINE_CHAR): New macro.
13660         (IS_WIDE_WORD_CHAR): New macro.
13661         (IS_WIDE_NEWLINE): New macro.
13663 2002-11-12  Andreas Jaeger  <aj@suse.de>
13665         * sysdeps/x86_64/strchr.S: Don't use one register for two
13666         purposes, this fixes a bug noticed by test-strchr.c.
13668         * sysdeps/x86_64/strcat.S: Fix algorithm to align source pointer
13669         correctly.
13671 2002-11-12  Roland McGrath  <roland@redhat.com>
13673         * libio/libioP.h [_LIBC && !SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_1)]
13674         (_G_IO_NO_BACKWARD_COMPAT): Define it.
13676         * sysdeps/ia64/dl-fptr.c [_LIBC_REENTRANT]: Include <ia64intrin.h>
13677         instead of <pt-machine.h>.
13678         [_LIBC_REENTRANT] (lock, unlock): Use __sync_lock_* macros instead of
13679         testandset.
13680         From Ian Wienand <ianw@gelato.unsw.edu.au>.
13682 2002-11-10  Roland McGrath  <roland@redhat.com>
13684         * libio/bug-wfflush.c (do_test): Call rewind instead of fsetpos.
13685         Call fputs instead of fwprintf (simpler to follow in debugger).
13687         * crypt/md5-crypt.c: Doc fix.
13689         * sysdeps/unix/make-syscalls.sh: Insert $(make-target-directory) at
13690         the beginning of generated target commands.
13692         * csu/Makefile ($(objpfx)crti.o, $(objpfx)crtn.o): Add explicit
13693         dependencies for these in case implicit rule search skipped the
13694         nonexistent source directory.
13695         * sysdeps/gnu/Makefile ($(objpfx)errlist.d): Give this rule all the
13696         files with $(object-suffixes) as targets too.
13697         * Makerules [no_deps && objpfx] (before-compile): Add $(objpfx).
13698         and a target for it using $(make-target-directory).
13700         * Rules (before-compile): Add $(common-objpfx)bits/stdio-lim.h.
13702 2002-11-10  Roland McGrath  <roland@frob.com>
13704         * sysdeps/unix/sysv/linux/bits/pthreadtypes.h: Moved to ...
13705         * sysdeps/generic/bits/pthreadtypes.h: ... here.
13707         * sysdeps/mach/hurd/fcntl.c (__libc_fcntl): Treat a struct flock with
13708         l_start == 0 and l_len == 1 as we do l_len == 0.
13710 2002-11-10  Ulrich Drepper  <drepper@redhat.com>
13712         * po/da.po: Update from translation team.
13714 2002-11-10  Roland McGrath  <roland@redhat.com>
13716         * config.make.in (includedir): New variable, substituted by configure.
13717         Reported missing by Jocelyn Fournier <joc@presence-pc.com>.
13718         * Makeconfig (includedir): Use $(prefix), not $(exec_prefix).
13720 2002-11-10  Andreas Jaeger  <aj@suse.de>
13722         * sysdeps/unix/sysv/linux/x86_64/sys/ucontext.h (enum): Add
13723         REG_OLDMASK and REG_CR2 to synch with kernel header.
13724         (NGREG): Increase.
13726         * nss/getXXent.c (GETFUNC_NAME): Use union type to avoid strict
13727         aliasing problem.
13728         * nss/getXXbyYY_r.c (INTERNAL): Likewise.
13729         * nss/getnssent_r.c (__nss_getent_r): Likewise.
13730         (__nss_setent): Likewise.
13731         (__nss_getent_r): Likewise.
13732         * inet/getnetgrent_r.c (innetgr): Likewise.
13733         (__internal_setnetgrent_reuse): Likewise.
13734         (internal_getnetgrent_r): Likewise.
13735         * inet/ether_hton.c (ether_hostton): Likewise.
13736         * inet/ether_ntoh.c (ether_ntohost): Likewise.
13737         * sunrpc/netname.c (netname2user): Likewise.
13738         * sunrpc/publickey.c (getpublickey): Likewise.
13739         (getsecretkey): Likewise.
13741 2002-11-09  Marcus Brinkmann  <marcus@gnu.org>
13743         * sysdeps/mach/hurd/i386/ioperm.c (ioperm): Correct off by one
13744         error in range calculation.
13746 2002-10-09  Jakub Jelinek  <jakub@redhat.com>
13748         * string/test-strspn.c (do_test): Ensure zero termination.
13749         * string/test-strpbrk.c (do_test): Likewise.
13750         * string/test-strncmp.c (stupid_strncmp): Use strnlen, not strlen.
13751         * string/test-strncpy.c (stupid_strncpy): Likewise.
13752         * string/test-stpncpy.c (stupid_stpncpy): Likewise.
13754 2002-10-08  Roland McGrath  <roland@redhat.com>
13756         * string/test-string.h (test_init): Fill BUF1 and BUF2 with
13757         nonzero characters.
13759 2002-09-22  H.J. Lu  <hjl@gnu.org>
13761         * sysdeps/unix/sysv/linux/mmap64.c (MMAP2_PAGE_SHIFT): Renamed
13762         from PAGE_SHIFT.  Define if not defined.  Check MMAP2_PAGE_SHIFT
13763         only if __NR_mmap2 is defined.
13765         * sysdeps/unix/sysv/linux/powerpc/mmap64.c: Moved to ...
13766         * sysdeps/unix/sysv/linux/mmap64.c: ... here.
13767         * sysdeps/unix/sysv/linux/hppa/mmap64.c: File removed.
13768         * sysdeps/unix/sysv/linux/sparc/sparc32/mmap64.c: FIle removed,
13770 2002-11-08  Jakub Jelinek  <jakub@redhat.com>
13772         * posix/bug-regex13.c (tests): Add new test.
13774         * string/test-strchr.c (stupid_strchr): New function.
13775         (do_random_tests): Make sure the string is zero terminated.
13776         * string/test-strpbrk.c (stupid_strpbrk): New function.
13777         (do_random_tests): Make sure the string is zero terminated.
13778         * string/test-strcmp.c (stupid_strcmp): New function.
13779         (do_random_tests): Make sure the strings are zero terminated.
13780         * string/test-strspn.c (stupid_strspn): New function.
13781         (simple_strspn): Rename rej argument to acc.
13782         (do_random_tests): Make sure the string is zero terminated.
13783         * string/test-strcspn.c (stupid_strcspn): New function.
13784         * string/test-strncpy.c (stupid_strncpy): New function.
13785         * string/test-stpncpy.c (stupid_stpncpy): New function.
13786         * string/test-strncmp.c (stupid_strncmp): New function.
13787         (do_random_tests): Make sure the strings are zero terminated.
13788         * string/test-string.h (impl_t): Change test into long.
13789         (IMPL): Add __attribute__((aligned (sizeof (void *)))).
13791 2002-11-08  Roland McGrath  <roland@redhat.com>
13793         * sysdeps/ia64/elf/configure.in: Add TLS check.
13794         From Ian Wienand <ianw@cse.unsw.edu.au>.
13795         * sysdeps/ia64/elf/configure: Regenerated.
13797 2002-11-07  Roland McGrath  <roland@redhat.com>
13799         * libio/fileops.c (_IO_new_file_overflow): Use INTUSE(_IO_do_write) in
13800         place of _IO_new_do_write.
13801         [_LIBC] (_IO_do_write): Define as macro for _IO_new_do_write and
13802         #undef before versioned_symbol use.
13804 2002-11-07  Richard Henderson  <rth@redhat.com>
13806         * configure.in (ASM_ALPHA_NG_SYMBOL_PREFIX): Remove test.
13807         * configure: Regenerated.
13808         * config.h.in (ASM_ALPHA_NG_SYMBOL_PREFIX): Remove #undef.
13809         * sysdeps/alpha/dl-machine.h (TRAMPOLINE_TEMPLATE): Use !samegp.
13810         (RTLD_START): Likewise.  Access _dl_skip_args, _rtld_local, and
13811         _dl_fini via gp-relative relocations.
13812         * sysdeps/alpha/fpu/e_sqrt.c: Use !samegp.
13814         * elf/tls-macros.h: Add alpha versions.
13815         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Handle TLS relocs.
13816         * sysdeps/unix/alpha/sysdep.S: Support USE___THREAD.
13817         * sysdeps/unix/alpha/sysdep.h: Likewise.  Add SYSCALL_ERROR_HANDLER.
13818         * sysdeps/unix/sysv/linux/alpha/brk.S: Use it.
13819         * sysdeps/unix/sysv/linux/alpha/clone.S: Likewise.
13820         * sysdeps/unix/sysv/linux/alpha/getitimer.S: Likewise.
13821         * sysdeps/unix/sysv/linux/alpha/getrusage.S: Likewise.
13822         * sysdeps/unix/sysv/linux/alpha/gettimeofday.S: Likewise.
13823         * sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S: Likewise.
13824         * sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S: Likewise.
13825         * sysdeps/unix/sysv/linux/alpha/rt_sigaction.S: Likewise.
13826         * sysdeps/unix/sysv/linux/alpha/select.S: Likewise.
13827         * sysdeps/unix/sysv/linux/alpha/setitimer.S: Likewise.
13828         * sysdeps/unix/sysv/linux/alpha/settimeofday.S: Likewise.
13829         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S: Likewise.
13830         * sysdeps/unix/sysv/linux/alpha/syscall.S: Likewise.
13831         * sysdeps/unix/sysv/linux/alpha/utimes.S: Likewise.
13832         * sysdeps/unix/sysv/linux/alpha/wait4.S: Likewise.
13834         * sysdeps/unix/sysv/linux/alpha/sysdep.h: Re-include protect.
13835         Kill argument registers across the inline syscall.
13837         * sysdeps/unix/sysv/linux/alpha/clone.S: Add user_tid and tls args.
13839         * linuxthreads/sysdeps/alpha/tls.h: New file.
13840         * sysdeps/alpha/dl-tls.h: New file.
13842 2002-10-29  David Mosberger  <davidm@hpl.hp.com>
13844         * sysdeps/ia64/elf/initfini.c [HAVE_INITFINI_ARRAY]
13845         (gmon_initializer): New function.
13846         (.init prologue): If HAVE_INITFINI_ARRAY is true, don't call
13847         __gmon_start__ here.  Call it from gmon_initializer() instead.
13849 2002-03-12  H.J. Lu  <hjl@gnu.org>
13851         * elf/Makefile [$(have-initfini-array) = yes] (tests): Add tst-array1,
13852         tst-array2, and tst-array3.
13853         [$(have-initfini-array) = yes] (tests-static): Add tst-array3.
13854         [$(have-initfini-array) = yes] (modules-names): Add tst-array2dep.
13855         ($(objpfx)tst-array1.out): New target.
13856         ($(objpfx)tst-array2): Likewise.
13857         ($(objpfx)tst-array2.out): Likewise.
13858         ($(objpfx)tst-array3.out): Likewise.
13859         * elf/tst-array1.c: New file.
13860         * elf/tst-array1.exp: Likewise.
13861         * elf/tst-array2.c: Likewise.
13862         * elf/tst-array2dep.c: Likewise.
13863         * elf/tst-array2.exp: Likewise.
13864         * elf/tst-array3.c: Likewise.
13866 2002-10-28  David Mosberger  <davidm@hpl.hp.com>
13868         * elf/dl-fini.c (_dl_fini): Invoke fini_array in _reverse_ order.
13869         Don't add L->l_addr to array entry values.
13871 2002-11-07  Jakub Jelinek  <jakub@redhat.com>
13873         * string/test-string.h: New file.
13874         * string/test-strlen.c: New file.
13875         * string/test-string.h: New file.
13876         * string/test-strcmp.c: New file.
13877         * string/test-strchr.c: New file.
13878         * string/test-strrchr.c: New file.
13879         * string/test-strcpy.c: New file.
13880         * string/test-stpcpy.c: New file.
13881         * string/test-strncpy.c: New file.
13882         * string/test-stpncpy.c: New file.
13883         * string/test-strpbrk.c: New file.
13884         * string/test-strcspn.c: New file.
13885         * string/test-strspn.c: New file.
13886         * string/test-strcat.c: New file.
13887         * string/test-strncmp.c: New file.
13888         * string/test-memchr.c: New file.
13889         * string/test-memcmp.c: New file.
13890         * string/test-memset.c: New file.
13891         * string/test-memcpy.c: New file.
13892         * string/test-mempcpy.c: New file.
13893         * string/test-memmove.c: New file.
13894         * string/Makefile (strop-tests): New variable.
13895         (tests): Add strop-tests.
13896         (distribute): Add test-string.h.
13898 2002-11-06  Ulrich Drepper  <drepper@redhat.com>
13900         * posix/regcomp.c: Use tabs instead of spaces.
13901         * posix/regexec.c: Likewise.
13902         * posix/regex_internal.h: Likewise.
13904         * posix/regcomp.c (re_compile_fastmap_iter): Use __wcrtomb not wctomb.
13906 2002-11-06  Jakub Jelinek  <jakub@redhat.com>
13908         * posix/regcomp.c (re_compile_pattern): Don't set regs_allocated
13909         here.
13910         (regcomp): Don't set can_be_null here.
13911         (re_comp): Clear whole re_comp_buf with the exception of fastmap.
13912         (re_compile_internal): Clear can_be_null, set regs_allocated.
13914         * posix/regcomp.c (re_set_fastmap): New function.
13915         (re_compile_fastmap_iter): Use it.  Remove redundant type ==
13916         COMPLEX_BRACKET check.
13917         * posix/regexec.c (re_search_internal): Optimize searching with
13918         fastmap.  Call re_string_reconstruct even if match_first is
13919         smaller than raw_mbs_idx.
13921 2002-11-06  Isamu Hasegawa  <isamu@yamato.ibm.com>
13923         * posix/regcomp (free_dfa_content): Use free_state.
13924         * posix/regex_internal.c (re_string_realloc_buffers): Don't edit
13925         pointers in case that realloc failed.
13926         (re_node_set_merge): Likewise.
13927         (register_state): Likewise.
13928         (create_newstate_common): Invoke memory release functions in case of
13929         error conditions.
13930         (create_ci_newstate): Likewise.
13931         (create_cd_newstate): Likewise.
13932         (free_state): New function.
13933         * posix/regexec.c (re_search_internal): Invoke memory release
13934         functions in case of error conditions.
13935         (sift_states_backward): Likewise.
13936         (merge_state_array): Likewise.
13937         (add_epsilon_src_nodes): Likewise.
13938         (sub_epsilon_src_nodes): Likewise.
13939         (search_subexp): Likewise.
13940         (sift_states_bkref): Likewise.
13941         (transit_state_sb): Likewise.
13942         (transit_state_mb): Likewise.
13943         (transit_state_bkref_loop): Likewise.
13944         (group_nodes_into_DFAstates): Likewise.
13945         (push_fail_stack): Don't edit pointers in case that realloc failed.
13946         (extend_buffers): Likewise.
13947         (match_ctx_add_entry): Likewise.
13949 2002-11-06  Roland McGrath  <roland@redhat.com>
13951         * sysdeps/unix/sysv/linux/mips/configure.in: File removed.
13952         * sysdeps/unix/sysv/linux/mips/configure: Likewise.
13954         * configure.in: Add checks on as and ld for binutils 2.13 or later.
13955         * configure: Regenerated.
13957 2002-11-06  Ulrich Drepper  <drepper@redhat.com>
13959         * posix/regcomp.c (regcomp): __re_compile_fastmap can never fail.
13960         If re_compile_internal failed free fastmap buffer.
13961         (free_dfa_content): Broken out of regfree function.  Frees all dfa
13962         related data.
13963         (regfree): Add free_dfa_content.
13964         (re_compile_internal): If any of the called functions fails free
13965         all dfa related memory.
13967 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
13969         * sysdeps/unix/sysv/linux/sys/sysctl.h: Add ugly hacks to prevent
13970         warnings from the kernel headers.
13972 2002-11-05  Roland McGrath  <roland@redhat.com>
13974         * sysdeps/unix/mips/sysdep.h [! __PIC__] (PSEUDO): Add nop after jump.
13975         From Johannes Stezenbach <js@convergence.de>.
13977         * sysdeps/unix/sysv/linux/mips/Versions (libc: GLIBC_2.0): Change
13978         #errlist-compat magic comment to give 123 as size.
13979         (libc: GLIBC_2.1): Remove this set, moving #errlist-compat magic to ...
13980         (libc: GLIBC_2.2): ... here.
13981         (libc: GLIBC_2.3): Likewise.
13983 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
13985         * elf/dl-fini.c (_dl_fini): Correct the increment of l_opencount
13986         which happens at the beginning so that we can unload modules in
13987         __libc_freeres.
13989 2002-11-06  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
13991         * sysdeps/sh/bits/setjmp.h (JB_SIZE): Define only
13992         under [__USE_MISC || _ASM].
13994         * elf/elf.h: Remove the obsolete SH TLS relocations.
13996 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
13998         * posix/regcomp.c (regcomp): Initialize preg->can_be_null to zero.
14000 2002-11-05  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
14002         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h: Handle
14003         __NR_pread64 and __NR_pwrite64.
14004         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h: Likewise.
14005         * sysdeps/unix/sysv/linux/powerpc/pread.c: Remove __NR_pread64
14006         and __NR_pwrite64.
14007         Revert change to use INLINE_SYSCALL.
14008         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Likewise.
14009         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Likewise.
14010         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Likewise.
14011         * sysdeps/unix/sysv/linux/powerpc/ftruncate64.c: Revert change to use
14012         INLINE_SYSCALL.
14013         * sysdeps/unix/sysv/linux/powerpc/truncate64.c: Likewise.
14015         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (INLINE_SYSCALL):
14016         Update clobber list and add a comment about the syscall ABI.
14018         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list (s_pread64,
14019         s_pwrite64, s_ftruncate, s_truncate): Re-add.
14021 2002-11-05  Jakub Jelinek  <jakub@redhat.com>
14023         * iconv/gconv_dl.c (free_mem): Clear loaded.
14024         * locale/loadarchive.c (_nl_archive_subfreeres): Call locale_data's
14025         cleanup if any.
14027 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
14029         * sysdeps/unix/sysv/linux/fexecve.c: Include <stdio.h>.
14031         * libio/ioseekoff.c: Remove INTDEF.  Define _IO_seekoff_unlocked.  Same
14032         as old code without locking.  _IO_seekoff calls this function after
14033         locking the stream.
14034         * libio/ioseekpos.c: Likewise for _IO_seekpos.
14035         * libio/libioP.h: Replace _IO_seekoff_internal and _IO_seekpos_internal
14036         prototypes with _IO_seekoff_unlocked and _IO_seekpos_unlocked
14037         prototypes.
14038         * libio/iolibio.h (_IO_fseek): Call _IO_seekoff_unlocked instead
14039         of _IO_seekoff_internal.
14040         (_IO_rewind): Likewise.
14041         * libio/ioftell.c: Likewise.
14042         * libio/ftello.c: Likewise.
14043         * libio/ftello64.c: Likewise.
14044         * libio/iofgetpos.c: Likewise.
14045         * libio/iofgetpos64.c: Likewise.
14046         * libio/oldiofgetpos.c: Likewise.
14047         * libio/oldiofgetpos64.c: Likewise.
14048         * libio/iofsetpos.c: Call _IO_seekpos_unlocked instead of
14049         _IO_seekpos_internal.
14050         * libio/iofsetpos64.c: Likewise.
14051         * libio/oldiofsetpos.c: Likewise.
14052         * libio/oldiofsetpos64.c: Likewise.
14054 2002-11-04  Roland McGrath  <roland@redhat.com>
14056         * sysdeps/unix/sysv/linux/powerpc/chown.c: Use INLINE_SYSCALL macro.
14057         * sysdeps/unix/sysv/linux/powerpc/ftruncate64.c: Likewise.
14058         * sysdeps/unix/sysv/linux/powerpc/ioctl.c: Likewise.
14059         * sysdeps/unix/sysv/linux/powerpc/pread.c: Likewise.
14060         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Likewise.
14061         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Likewise.
14062         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Likewise.
14063         * sysdeps/unix/sysv/linux/powerpc/tcgetattr.c: Likewise.
14064         * sysdeps/unix/sysv/linux/powerpc/tcsetattr.c: Likewise.
14065         * sysdeps/unix/sysv/linux/powerpc/truncate64.c: Likewise.
14066         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list (s_ioctl,
14067         s_chown, s_ftruncate64, s_mmap2, s_pread64, s_pwrite64, s_truncate64,
14068         sys_fstat, sys_lstat, sys_mknod, sys_readv, sys_stat, sys_writev):
14069         Remove these, no longer used.
14071 2002-11-04  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
14073         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list (s_ipc,
14074         s_llseek, s_readahead, s_execve, s_fcntl, s_fcntl64, s_fstat64,
14075         s_getcwd, s_getdents, s_getdents64, s_getpmsg, s_getpriority,
14076         s_getrlimit, s_lstat64, s_poll, s_ptrace, s_putpmsg, s_reboot,
14077         s_setrlimit, s_sigaction, s_sigpending, s_sigprocmask, s_sigsuspend,
14078         s_stat64, s_sysctl, s_ugetrlimit, s_ustat, s_vfork): Remove now unused
14079         syscall stubs.
14081         * sysdeps/unix/sysv/linux/pwrite.c: Fix typo.
14082         * sysdeps/unix/sysv/linux/pwrite64.c: Likewise.
14083         * sysdeps/unix/sysv/linux/powerpc/pread.c: Handle both __NR_pread64
14084         and __NR_pread.
14085         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Likewise.
14086         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Handle both __NR_pwrite64
14087         and __NR_pwrite.
14088         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Likewise.
14090 2002-11-03  Roland McGrath  <roland@redhat.com>
14092         * sysdeps/generic/ldsodefs.h (struct rtld_global): New member
14093         `_dl_tls_static_used'.
14094         * sysdeps/generic/libc-tls.c (_dl_tls_static_used): New variable.
14095         (__libc_setup_tls): Initialize it.  Let the initial value of
14096         _dl_tls_static_size indicate some surplus space in the computed value.
14097         * elf/dl-open.c (_dl_tls_static_size): New variable.
14098         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Initialize
14099         _dl_tls_static_used.  Add some surplus space into _dl_tls_static_size.
14100         * elf/dl-reloc.c [USE_TLS] (allocate_static_tls): New function.
14101         (CHECK_STATIC_TLS): Use it.
14102         * elf/dl-close.c (_dl_close): Adjust _dl_tls_static_used when the
14103         closed objects occupied a trailing contiguous chunk of static TLS area.
14105 2002-10-18  Bruno Haible  <bruno@clisp.org>
14107         * charmaps/ISO_5428: Use Greek characters introduced in Unicode 3.0.
14109 2002-11-04  Ulrich Drepper  <drepper@redhat.com>
14111         * libio/wfileops.c (_IO_wfile_seekoff): Don't modify _offset and
14112         _wide_data->_IO_read_end if adjustment can be made in the current
14113         buffer.
14115         * sysdeps/unix/sysv/linux/fexecve.c: New file.
14117         * libio/bug-wfflush.c (do_test): Using fseek is not allowed when
14118         wide oriented streams are used.
14120         * nss/getXXent_r.c (ENDFUNC_NAME): Don't do anything if the
14121         service hasn't been used [PR libc/4744].
14123         * include/features.h: Use __STDC_VERSION__ not __STDC_VERSION.
14124         Reported by Miloslav Trmac <mitr@volny.cz> [PR libc/4766].
14126         * manual/examples/dir.c: Don't include <stddef.h>.
14127         * manual/examples/select.c: Include <errno.h> for TEMP_FAILURE_RETRY.
14128         Reported by Frédéric Delanoy <delanoy_f@yahoo.com>.
14130 2002-11-02  H.J. Lu  <hjl@gnu.org>
14132         * stdio-common/reg-printf.c: Include <stddef.h>.
14134 2002-11-03  Ulrich Drepper  <drepper@redhat.com>
14136         * sysdeps/generic/libc-tls.c: Define _dl_tls_static_used.
14138         * po/ca.po: Update from translation team.
14139         * po/es.po: Likewise.
14141         * sysdeps/generic/segfault.c (catch_segfault): If HAVE_PROC_SELF
14142         is defined write out memory map.
14143         * sysdeps/unix/sysv/linux/segfault.c: New file.
14145 2002-11-02  Roland McGrath  <roland@redhat.com>
14147         * sysdeps/unix/sysv/linux/getdents.c (__GETDENTS): Use union type for
14148         pointers that can alias.
14149         Reported by Daniel Jacobowitz <drow@mvista.com>.
14151         * sysdeps/unix/bsd/bsd4.4/freebsd/bits/typesizes.h: New file.
14153 2002-11-02  Roland McGrath  <roland@redhat.com>
14155         * manual/filesys.texi (Reading/Closing Directory): Rewrite readdir_r
14156         description to be clearer and to say that *RESULT is set to ENTRY.
14158 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
14160         * posix/regexec.c (build_trtable): Alloca or malloc dests_node and
14161         dests_ch arrays together.  Alloca or malloc dest_states,
14162         dest_states_word and dest_states_nl arrays together.  Free memory on
14163         error exit.
14165 2002-10-29  Daniel Jacobowitz  <drow@mvista.com>
14167         * crypt/crypt_util.c (__init_des_r): Initialize current_salt
14168         and current_saltbits.
14170 2002-11-02  Roland McGrath  <roland@redhat.com>
14172         * stdio-common/reg-printf.c: Include <stdlib.h>.
14174 2002-11-02  H.J. Lu  <hjl@gnu.org>
14176         * sysdeps/unix/sysv/linux/mips/syscalls.list (s_execve): Set
14177         caller to EXTRA instead of execve.
14179 2002-11-01  Roland McGrath  <roland@redhat.com>
14181         * sysdeps/generic/errno-loc.c [! USE___THREAD]: Use this conditional
14182         in place of [!(USE_TLS && HAVE___THREAD)].
14183         (__errno_location) [! USE___THREAD]: Define as strong, not weak.
14185 2002-10-31  Roger Sayle  <roger@eyesopen.com>
14187         * sysdeps/i386/soft-fp/sfp-machine.h (_FP_NANFRAC_Q, _FP_NANSIGN_Q):
14188         New macros.
14189         * sysdeps/x86_64/soft-fp/sfp-machine.h: Likewise.
14191         * soft-fp/soft-fp.h: Allow sfp-machine.h to define FP_RND_NEAREST
14192         without defining FP_ROUNDMODE.
14194 2002-10-29  Jakub Jelinek  <jakub@redhat.com>
14196         * sysdeps/gnu/siglist.c (PTR_SIZE_STR): Remove.
14197         (__old_sys_siglist, __old_sys_sigabbrev): Use strong_alias and
14198         declare_symbol.
14199         * sysdeps/mach/hurd/siglist.h (OLD_SIGLIST_SIZE_STR): Remove.
14200         (OLD_SIGLIST_SIZE): Define.
14201         * sysdeps/unix/sysv/linux/siglist.h (OLD_SIGLIST_SIZE_STR): Remove.
14202         (OLD_SIGLIST_SIZE): Define.
14203         * sysdeps/unix/sysv/linux/arm/siglist.c: Remove.
14205 2002-11-01  Jakub Jelinek  <jakub@redhat.com>
14207         * sysdeps/ia64/strncpy.S: Fix recovery code.
14209 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
14211         * include/libc-symbols.h (__libc_freeres_fn_section, libc_freeres_fn):
14212         New macros.
14213         * elf/dl-close.c (free_mem): Use libc_freeres_fn macro, remove
14214         text_set_element.
14215         * elf/dl-libc.c (free_mem): Likewise.
14216         * iconv/gconv_conf.c (free_mem): Likewise.
14217         * iconv/gconv_db.c (free_mem): Likewise.
14218         * iconv/gconv_dl.c (free_mem): Likewise.
14219         * iconv/gconv_cache.c (free_mem): Likewise.
14220         * intl/finddomain.c (free_mem): Likewise.
14221         * intl/dcigettext.c (free_mem): Likewise.
14222         * locale/setlocale.c (free_mem): Likewise.
14223         * misc/fstab.c (fstab_free): Likewise.
14224         * nss/nsswitch.c (free_mem): Likewise.
14225         * posix/regcomp.c (free_mem): Likewise.
14226         * resolv/gai_misc.c (free_res): Likewise.
14227         * stdlib/fmtmsg.c (free_mem): Likewise.
14228         * sunrpc/clnt_perr.c (free_mem): Likewise.
14229         * sysdeps/generic/setenv.c (free_mem): Likewise.
14230         * sysdeps/unix/sysv/linux/shm_open.c (freeit): Likewise.
14231         * sysdeps/pthread/aio_misc.c (free_res): Likewise.
14232         * time/tzset.c (free_mem): Likewise.
14233         * malloc/mtrace.c (release_libc_mem): Add __libc_freeres_fn_section.
14234         * locale/loadarchive.c (_nl_archive_subfreeres): Likewise.
14235         * malloc/set-freeres.c (__libc_freeres): Likewise.
14237         * login/getutent.c: Include stdlib.h instead of stddef.h.
14238         (buffer): Change into pointer to utmp, add libc_freeres_ptr.
14239         (__getutent): Allocate buffer the first time it is run.
14240         * login/getutid.c: Include stdlib.h instead of stddef.h.
14241         (buffer): Change into pointer to utmp, add libc_freeres_ptr.
14242         (__getutid): Allocate buffer the first time it is run.
14243         * login/getutline.c: Include stdlib.h instead of stddef.h.
14244         (buffer): Change into pointer to utmp, add libc_freeres_ptr.
14245         (__getutline): Allocate buffer the first time it is run.
14246         * malloc/mtrace.c (malloc_trace_buffer): Change into char *.
14247         (mtrace): Allocate malloc_trace_buffer.
14248         * resolv/nsap_addr.c (inet_nsap_ntoa): Decrease size of tmpbuf.
14249         * resolv/ns_print.c (ns_sprintrrf): Decrease size of t.
14250         * string/strerror.c: Include libintl.h and errno.h.
14251         (buf): New variable.
14252         (strerror): Only allocate buffer if actually needed (unknown error).
14253         * time/tzfile.c (transitions): Add libc_freeres_ptr.
14254         (freeres): Remove.
14256 2002-10-25  Jakub Jelinek  <jakub@redhat.com>
14258         * include/libc-symbols.h (libc_freeres_ptr): New macro.
14259         * malloc/set-freeres.c (__libc_freeres_ptrs): Define using
14260         symbol_set_define.
14261         (__libc_freeres): Free all pointers in that section.
14262         * Makerules (build-shlib): Add $(LDSEDCMD-$(@F:lib%.so=%).so) to sed
14263         commands when creating .lds script.
14264         (LDSEDCMD-c.so): New variable.
14265         * inet/rcmd.c (ahostbuf): Change into char *.  Add libc_freeres_ptr.
14266         (rcmd_af): Use strdup to allocate ahostbuf.
14267         * inet/rexec.c (ahostbuf): Change into char *.  Add libc_freeres_ptr.
14268         (rexec_af): Use strdup to allocate ahostbuf.
14269         * stdio-common/reg-printf.c (printf_funcs): Remove.
14270         (__printf_arginfo_table): Change into printf_arginfo_function **.
14271         Add libc_freeres_ptr.
14272         (__register_printf_function): Allocate __printf_arginfo_table
14273         and __printf_function_table the first time it is called.
14274         * stdio-common/printf-parse.h (__printf_arginfo_table): Change into
14275         printf_arginfo_function **.
14276         (parse_one_spec): Add __builtin_expect.
14277         * grp/fgetgrent.c (buffer): Add libc_freeres_ptr.
14278         (free_mem): Remove.
14279         * inet/getnetgrent.c (buffer): Add libc_freeres_ptr.
14280         (free_mem): Remove.
14281         * intl/localealias.c (libc_freeres_ptr): Define if !_LIBC.
14282         (string_space, map): Add libc_freeres_ptr.
14283         (free_mem): Remove.
14284         * misc/efgcvt.c (FCVT_BUFPTR): Add libc_freeres_ptr.
14285         (free_mem): Remove.
14286         * misc/mntent.c (getmntent_buffer): Add libc_freeres_ptr.
14287         (free_mem): Remove.
14288         * crypt/md5-crypt.c (libc_freeres_ptr): Define if !_LIBC.
14289         (buffer): Add libc_freeres_ptr.
14290         (free_mem): Remove for _LIBC.
14291         * nss/getXXbyYY.c (buffer): Add libc_freeres_ptr.
14292         (free_mem): Remove.
14293         * nss/getXXent.c (buffer): Add libc_freeres_ptr.
14294         (free_mem): Remove.
14295         * pwd/fgetpwent.c (buffer): Add libc_freeres_ptr.
14296         (free_mem): Remove.
14297         * resolv/res_hconf.c (ifaddrs): Add libc_freeres_ptr.
14298         (free_mem): Remove.
14299         * shadow/fgetspent.c (buffer): Add libc_freeres_ptr.
14300         (free_mem): Remove.
14301         * sysdeps/posix/ttyname.c (getttyname_name): Add libc_freeres_ptr.
14302         (free_mem): Remove.
14303         * sysdeps/unix/sysv/linux/getsysstats.c (mount_proc): Add
14304         libc_freeres_ptr.
14305         (free_mem): Remove.
14306         * sysdeps/unix/sysv/linux/ttyname.c (getttyname_name, ttyname_buf): Add
14307         libc_freeres_ptr.
14308         (free_mem): Remove.
14310 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
14312         * malloc/obstack.c [_LIBC] (obstack_free): Change into strong_alias
14313         instead of duplicating the whole function in libc.
14315 2002-10-31  Roland McGrath  <roland@redhat.com>
14317         * sysdeps/i386/bits/byteswap.h [__GNUC__ < 2] (__bswap_32):
14318         Renamed from __bswap_16 (typo fix).  Reported by <dens@stl.sarov.ru>.
14320 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
14322         * sysdeps/unix/sysv/linux/Makefile (syscall-%.h): Add -D for each
14323         32bit-predefine when creating .new32 list and -U for each
14324         32bit-predefine when creating .new64 list.
14325         * sysdeps/unix/sysv/linux/x86_64/Makefile (32bit-predefine): New.
14327 2002-10-29  Andreas Schwab  <schwab@suse.de>
14329         * sysdeps/generic/allocrtsig.c: Include <testrtsig.h>, not
14330         "testrtsig.h".  Reported by Daniel Jacobowitz <dan@debian.org>.
14332 2002-10-25  Roland McGrath  <roland@redhat.com>
14334         * sysdeps/unix/sysv/linux/configure.in: Fix typo in last change.
14335         * sysdeps/unix/sysv/linux/configure: Regenerated.
14337         * sysdeps/generic/ldsodefs.h: Remove [! SHARED] conditional from
14338         _dl_starting_up decl.
14340 2002-10-20  H.J. Lu  <hjl@gnu.org>
14342         * sysdeps/unix/sysv/linux/configure.in: Don't check
14343         /lib/modules/`uname -r`/build/include for kernel headers if
14344         cross compiling.
14345         * sysdeps/unix/sysv/linux/configure: Regenerated.
14347 2002-10-25  Roland McGrath  <roland@redhat.com>
14349         * math/math.h (M_LOG2El): Correct the value.
14350         From Stephen L Moshier <steve@moshier.net>.
14352         * sysdeps/unix/sysv/linux/init-first.c (init): Remove [! SHARED]
14353         conditional from __libc_multiple_libcs access.  Remove kludge for weak
14354         symbol access with old compilers we no longer support.
14355         * sysdeps/unix/sysv/aix/init-first.c (init): Likewise.
14356         * sysdeps/generic/libc-start.c (__libc_start_main): Likewise.
14358 2002-10-25  Roland McGrath  <roland@redhat.com>
14360         * sysdeps/posix/sigvec.c [SA_RESETHAND]: Disable wrapper hacks and
14361         implement SV_RESETHAND by translating it to SA_RESETHAND.
14363 2002-10-23  Alexandre Oliva  <aoliva@redhat.com>
14365         * elf/dl-reloc.c (_dl_reloc_bad_use): Print the full 32-bit relocation
14366         type on ELF64 platforms.
14368 2002-10-24  Ulrich Drepper  <drepper@redhat.com>
14370         * elf/elf.h (R_X86_64_GOTTPOFF): Renamed from r_x86_64_GOTTPOFF.
14372         * elf/elf.h: Define ELF_NOTE_OS_FREEBSD and NT_TASKSTRUCT.
14374 2002-10-24  Jakub Jelinek  <jakub@redhat.com>
14376         * elf/dl-misc.c: Include <sysdep.h>.
14377         (_dl_debug_vdprintf): Only take dl_load_lock if not _dl_starting_up.
14379         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (INTERNAL_SYSCALL,
14380         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
14381         (INLINE_SYSCALL): Use that.
14382         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (INTERNAL_SYSCALL,
14383         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
14384         (INLINE_SYSCALL): Use that.
14385         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (INTERNAL_SYSCALL,
14386         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
14387         (INLINE_SYSCALL): Use that.
14388         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Include
14389         dl-sysdep.h.
14390         (SYSCALL_ERROR_HANDLER): Define RTLD_PRIVATE_ERRNO variant.
14391         (__INTERNAL_SYSCALL_STRING): Define.
14392         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h: Include
14393         dl-sysdep.h.
14394         (SYSCALL_ERROR_HANDLER): Define RTLD_PRIVATE_ERRNO variant.
14395         (__INTERNAL_SYSCALL_STRING): Define.
14396         * sysdeps/unix/sysv/linux/sparc/sysdep.h (INLINE_SYSCALL): Pass
14397         __SYSCALL_STRING to inline_syscall*.
14398         (INTERNAL_SYSCALL, INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO):
14399         New macros.
14400         (inline_syscall0, inline_syscall1, inline_syscall2, inline_syscall3,
14401         inline_syscall4, inline_syscall5, inline_syscall6): Add string
14402         argument.
14404 2002-10-24  Roland McGrath  <roland@redhat.com>
14406         * sysdeps/generic/ldsodefs.h (_dl_starting_up): Declare it here.
14407         * sysdeps/unix/sysv/linux/init-first.c: Not here.
14408         * sysdeps/powerpc/elf/libc-start.c: Or here.
14409         * sysdeps/unix/sysv/aix/libc-start.c: Or here.
14410         * sysdeps/unix/sysv/aix/start-libc.c: Or here.
14411         * sysdeps/unix/sysv/aix/init-first.c: Or here.
14412         * sysdeps/generic/libc-start.c: Or here.
14413         * sysdeps/unix/sysv/linux/init-first.c (init): Protect _dl_starting_up
14414         access with [! SHARED].
14415         * sysdeps/unix/sysv/aix/init-first.c (init): Likewise.
14417         * libio/bug-wfflush.c: New file.
14418         * libio/Makefile (tests): Add bug-wfflush.
14420 2002-10-23  Roland McGrath  <roland@redhat.com>
14422         * stdio-common/tst-fphex.c: New file.
14423         * stdio-common/Makefile (tests): Add tst-fphex.
14424         * sysdeps/generic/printf_fphex.c (__printf_fphex): Fix initialization
14425         of WNUMEND.  Fix counting of decimal point in WIDTH.  Print '0' pad
14426         chars always before the value digits.
14427         Reported by James Antill <james.antill@redhat.com>.
14429 2002-10-24  Jakub Jelinek  <jakub@redhat.com>
14431         * posix/regcomp.c (re_comp): Call __regfree on re_comp_buf.
14432         (free_mem): New function.
14433         * posix/Makefile (tests): Add bug-regex14.  Add bug-regex14-mem
14434         if not cross compiling.
14435         (generated): Add bug-regex14-mem and bug-regex14.mtrace.
14436         (bug-regex14-ENV): Set.
14437         (bug-regex14-mem): New target.
14438         * posix/bug-regex14.c: New file.
14440 2002-10-23  Roland McGrath  <roland@redhat.com>
14442         * elf/Makefile ($(objpfx)librtld.map): Use temporary file for output
14443         target, so we don't touch it when the link fails.
14445         * libio/ftello.c (ftello): Use _IO_off64_t for type of POS.
14446         Check for the result overflowing off_t and fail with EOVERFLOW.
14447         * libio/ioftell.c (_IO_ftell): Likewise.
14448         * libio/iofgetpos.c (_IO_new_fgetpos): Likewise.
14450         * login/logwtmp.c (logwtmp): If sizeof ut_tv != sizeof struct timeval,
14451         use a temporary timeval on the stack for gettimeofday and copy it.
14452         * login/logout.c (logout): Likewise.
14453         Reported by Steven Munroe <sjmunroe@us.ibm.com>.
14455         * sysdeps/unix/sysv/linux/bits/statfs.h (struct statfs):
14456         Use __SWORD_TYPE instead of int for member types.
14457         (struct statfs64): Likewise.
14458         * sysdeps/unix/sysv/linux/alpha/bits/statfs.h: New file.
14459         * sysdeps/unix/sysv/linux/s390/bits/statfs.h: New file.
14460         * sysdeps/unix/sysv/linux/ia64/bits/statfs.h: File removed.
14461         * sysdeps/unix/sysv/linux/sparc/bits/statfs.h: File removed.
14462         * sysdeps/unix/sysv/linux/x86_64/bits/statfs.h: File removed.
14464         * sysdeps/unix/sysv/linux/sparc/bits/statvfs.h: Moved to ...
14465         * sysdeps/unix/sysv/linux/bits/statvfs.h: ... here.
14466         (ST_NODIRATIME): Restore fixed value of 2048.
14467         * sysdeps/unix/sysv/linux/alpha/bits/statvfs.h: File removed.
14468         * sysdeps/unix/sysv/linux/ia64/bits/statvfs.h: File removed.
14470         Rearranged <bits/types.h> definitions to reduce duplication.
14471         * sysdeps/generic/bits/types.h: Rewritten, using macros from
14472         <bits/wordsize.h> and new header <bits/typesizes.h>.
14473         * posix/Makefile (headers): Add bits/typesizes.h here.
14474         * sysdeps/generic/bits/typesizes.h: New file.
14475         * sysdeps/unix/sysv/linux/alpha/bits/typesizes.h: New file.
14476         * sysdeps/unix/sysv/linux/sparc/bits/typesizes.h: New file.
14477         * sysdeps/mach/hurd/bits/typesizes.h: New file.
14478         * sysdeps/unix/sysv/linux/alpha/bits/types.h: File removed.
14479         * sysdeps/unix/sysv/linux/bits/types.h: File removed.
14480         * sysdeps/unix/sysv/linux/ia64/bits/types.h: File removed.
14481         * sysdeps/unix/sysv/linux/mips/bits/types.h: File removed.
14482         * sysdeps/unix/sysv/linux/s390/bits/types.h: File removed.
14483         * sysdeps/unix/sysv/linux/sparc/bits/types.h: File removed.
14484         * sysdeps/unix/sysv/linux/x86_64/bits/types.h: File removed.
14485         * posix/sys/types.h [__USE_POSIX199506 || __USE_UNIX98]: Include
14486         <bits/pthreadtypes.h> here, not in <bits/types.h>.
14487         * signal/signal.h: Likewise.
14489         * streams/stropts.h: Include <bits/xtitypes.h>.
14490         * streams/Makefile (headers): Add bits/xtitypes.h here.
14491         * sysdeps/generic/bits/xtitypes.h: New file.
14492         * sysdeps/s390/bits/xtitypes.h: New file.
14493         * sysdeps/ia64/bits/xtitypes.h: New file.
14494         * sysdeps/x86_64/bits/xtitypes.h: New file.
14496         * sysvipc/Makefile (headers): Add bits/ipctypes.h here.
14497         * sysdeps/generic/bits/ipctypes.h: New file.
14498         * sysdeps/mips/bits/ipctypes.h: New file.
14499         * sysdeps/gnu/bits/shm.h: Include <bits/ipctypes.h>.
14500         * sysdeps/gnu/bits/msq.h: Likewise.
14501         * sysvipc/sys/ipc.h: Likewise.
14503 2002-10-22  Ulrich Drepper  <drepper@redhat.com>
14505         * elf/dl-load.c (struct filebuf): For buf element to have the
14506         alignment of ElfXX_Ehdr since this is what will be stored in it.
14508 2002-10-22  Jakub Jelinek  <jakub@redhat.com>
14510         * locale/programs/locarchive.c (add_alias): Change locrec_offset arg
14511         into pointer to locrec_offset.
14512         (add_locale_to_archive): Adjust callers.  Free normalized_name right
14513         before returning, not immediately after add_locale, pass it to
14514         add_alias if not NULL instead of name.  Rename second normalized_name
14515         occurence to nnormalized_codeset_name.
14517         * locale/programs/locarchive.c (enlarge_archive): Make sure
14518         string_size is always a multiple of 4.
14519         Reported by Andreas Schwab <schwab@suse.de>.
14521 2002-10-21  Andreas Schwab  <schwab@suse.de>
14523         * sysdeps/unix/sysv/linux/ia64/syscalls.list (s_execve): Set
14524         caller to EXTRA instead of execve, since the latter has a
14525         higher-priority implementation in linuxthreads.
14527 2002-10-21  Roland McGrath  <roland@redhat.com>
14529         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Initialize the static
14530         slotinfo list's len member to the proper size, not just 1.
14531         Initialize static_map.l_tls_initimage.
14533         * elf/dl-open.c (dl_open_worker): Fix loop searching for
14534         dtv_slotinfo_list element containing new modules' l_tls_modid.
14536         * elf/tst-tls9.c, elf/tst-tls9-static.c: New files.
14537         * elf/tst-tlsmod5.c, elf/tst-tlsmod6.c: New files.
14538         * elf/Makefile (tests): Add tst-tls9.
14539         (tests-static): Add tst-tls9-static.
14540         (tst-tls9-static-ENV): New variable.
14541         ($(objpfx)tst-tls9-static, $(objpfx)tst-tls9-static.out): New targets.
14543         * elf/dl-close.c (remove_slotinfo): Remove an assert; the number of
14544         modids used by partially loaded modules being closed can't be known.
14546 2002-10-21  Isamu Hasegawa  <isamu@yamato.ibm.com>
14548         * posix/Makefile: Add a test case for the bug reported by Aharon
14549         Robbins <arnold@skeeve.com>.
14550         * posix/bug-regex13.c: New file.
14551         * posix/regcomp.c (peek_token_bracket): Skip the byte already read.
14553 2002-10-21  Ulrich Drepper  <drepper@redhat.com>
14555         * csu/gmon-start.c: Pretty printing.
14557 2002-10-19  Art Haas  <ahaas@neosoft.com>
14559         * configure.in: Replace AC_CONFIG_HEADER with AC_CONFIG_HEADERS,
14560         add AC_HELP_STRING to all AC_ARG_WITH and AC_ARG_ENABLE macros,
14561         add autoconf quotes to the AC_CONFIG_AUX_DIR macro.
14562         * configure: Regenerated.
14564 2002-10-19  Roland McGrath  <roland@redhat.com>
14566         * configure.in: Call AC_CONFIG_SUBDIRS with empty argument
14567         and then set $subdirs directly, because the new Autoconf breaks
14568         compatibility in every way imaginable and insists on whining
14569         about usage that worked since the dawn of time.
14570         * configure: Regenerated.
14572         * configure: Regenerated (using Autoconf 2.54).
14573         * sysdeps/alpha/elf/configure: Likewise.
14574         * sysdeps/generic/configure: Likewise.
14575         * sysdeps/i386/elf/configure: Likewise.
14576         * sysdeps/ia64/elf/configure: Likewise.
14577         * sysdeps/mach/hurd/configure: Likewise.
14578         * sysdeps/mach/configure: Likewise.
14579         * sysdeps/unix/configure: Likewise.
14580         * sysdeps/unix/common/configure: Likewise.
14581         * sysdeps/unix/sysv/aix/configure: Likewise.
14582         * sysdeps/unix/sysv/linux/configure: Likewise.
14583         * sysdeps/unix/sysv/linux/mips/configure: Likewise.
14584         * sysdeps/x86_64/elf/configure: Likewise.
14586         * config.make.in: Nix completely-soft nonsense.
14587         * configure.in: Likewise.  Under --without-fp, use nofpu subdirectory
14588         of machine directories instead of fpu subdirectory.
14589         * sysdeps/powerpc/soft-fp/Makefile: Remove cruft added in last change.
14590         * sysdeps/powerpc/nofpu/Makefile: Put it in this new file instead.
14591         * sysdeps/powerpc/soft-fp/sim-full.c: Moved to ...
14592         * sysdeps/powerpc/nofpu/sim-full.c: ... here.
14593         * sysdeps/powerpc/soft-fp/fraiseexcpt.c: Moved to ...
14594         * sysdeps/powerpc/nofpu/fraiseexcpt.c: ... here.
14595         * sysdeps/powerpc/soft-fp/fegetexcept.c: Moved to ...
14596         * sysdeps/powerpc/nofpu/fegetexcept.c: ... here.
14597         * sysdeps/powerpc/soft-fp/fclrexcpt.c: Moved to ...
14598         * sysdeps/powerpc/nofpu/fclrexcpt.c: ... here.
14599         * sysdeps/powerpc/soft-fp/ftestexcept.c: Moved to ...
14600         * sysdeps/powerpc/nofpu/ftestexcept.c: ... here.
14601         * sysdeps/powerpc/soft-fp/fgetexcptflg.c: Moved to ...
14602         * sysdeps/powerpc/nofpu/fgetexcptflg.c: ... here.
14603         * sysdeps/powerpc/soft-fp/fsetexcptflg.c: Moved to ...
14604         * sysdeps/powerpc/nofpu/fsetexcptflg.c: ... here.
14605         * sysdeps/powerpc/soft-fp/fedisblxcpt.c: Moved to ...
14606         * sysdeps/powerpc/nofpu/fedisblxcpt.c: ... here.
14607         * sysdeps/powerpc/soft-fp/feenablxcpt.c: Moved to ...
14608         * sysdeps/powerpc/nofpu/feenablxcpt.c: ... here.
14609         * sysdeps/powerpc/soft-fp/fegetenv.c: Moved to ...
14610         * sysdeps/powerpc/nofpu/fegetenv.c: ... here.
14611         * sysdeps/powerpc/soft-fp/fesetenv.c: Moved to ...
14612         * sysdeps/powerpc/nofpu/fesetenv.c: ... here.
14613         * sysdeps/powerpc/soft-fp/fegetround.c: Moved to ...
14614         * sysdeps/powerpc/nofpu/fegetround.c: ... here.
14615         * sysdeps/powerpc/soft-fp/fesetround.c: Moved to ...
14616         * sysdeps/powerpc/nofpu/fesetround.c: ... here.
14617         * sysdeps/powerpc/soft-fp/feupdateenv.c: Moved to ...
14618         * sysdeps/powerpc/nofpu/feupdateenv.c: ... here.
14619         * sysdeps/powerpc/soft-fp/feholdexcpt.c: Moved to ...
14620         * sysdeps/powerpc/nofpu/feholdexcpt.c: ... here.
14621         * sysdeps/powerpc/soft-fp/fenv_const.c: Moved to ...
14622         * sysdeps/powerpc/nofpu/fenv_const.c: ... here.
14623         * sysdeps/powerpc/soft-fp/libm-test-ulps: Moved to ...
14624         * sysdeps/powerpc/nofpu/libm-test-ulps: ... here.
14625         * sysdeps/powerpc/soft-fp/soft-supp.h: Moved to ...
14626         * sysdeps/powerpc/nofpu/soft-supp.h: ... here.
14627         * sysdeps/powerpc/soft-fp/Versions (libc: GLIBC_2.3.2): Moved to ...
14628         * sysdeps/powerpc/nofpu/Versions: ... here, new file.
14630 2002-10-19  Bruno Haible  <bruno@clisp.org>
14632         * sysdeps/unix/bsd/bsd4.4/freebsd/sys/sysmacros.h: New file.
14634 2002-10-18  Roland McGrath  <roland@redhat.com>
14636         * io/Makefile (routines): Add lchmod.
14637         * io/sys/stat.h [__USE_BSD] (lchmod): Declare it.
14638         * sysdeps/generic/lchmod.c: New file.
14639         * sysdeps/mach/hurd/lchmod.c: New file.
14640         * io/Versions (libc: GLIBC_2.3.2): New set, add lchmod.
14642 2002-10-18  Art Haas  <ahaas@neosoft.com>
14644         * configure.in: Remove remaining AC_FD_CC macros, and replace
14645         AC_FD_MSG with AS_MESSAGE_FD.
14647 2002-10-18  Roland McGrath  <roland@redhat.com>
14649         * sysdeps/powerpc/powerpc32/dl-machine.c (__process_machine_rela): Fix
14650         typos: VALUE -> FINALADDR.
14652         * sysdeps/unix/alpha/sysdep.h (INLINE_SYSCALL, INLINE_SYSCALL1)
14653         (inline_syscall_clobbers, inline_syscall0, inline_syscall1)
14654         (inline_syscall2, inline_syscall3, inline_syscall4, inline_syscall5)
14655         (inline_syscall6): Move these macros ...
14656         * sysdeps/unix/sysv/linux/alpha/sysdep.h: ... to here.
14658         * configure.in (libc_link_dests, libc_link_sources): Remove these
14659         variables and the AC_LINK_FILES call.
14661         * sysdeps/powerpc/soft-fp/Versions (libc: GLIBC_2.3.2): Fix last
14662         change to put new symbols here instead of in GLIBC_2.2.
14663         * sysdeps/powerpc/Subdirs: Move this file ...
14664         * sysdeps/powerpc/soft-fp/Subdirs: ... here.
14666 2002-10-07  Roland McGrath  <roland@redhat.com>
14668         * sysdeps/generic/bits/time.h: Replaced with contents of the
14669         sysdeps/unix/sysv/linux/i386/bits/time.h file.  All the following
14670         files were identical except for the absence of CLOCK_THREAD_CPUTIME_ID
14671         and CLOCK_PROCESS_CPUTIME_ID in .../linux/bits/time.h; adding these
14672         macros is ok even for architectures that don't now implement them.
14673         * sysdeps/mach/hurd/bits/time.h: File removed.
14674         * sysdeps/unix/sysv/linux/bits/time.h: File removed.
14675         * sysdeps/unix/sysv/linux/i386/bits/time.h: File removed.
14676         * sysdeps/unix/sysv/linux/ia64/bits/time.h: File removed.
14677         * sysdeps/unix/sysv/linux/sparc/bits/time.h: File removed.
14678         * sysdeps/unix/sysv/linux/x86_64/bits/time.h: File removed.
14680 2002-10-18  Jeff Bailey  <jbailey@gnu.org>
14682         * configure.in: Replace obsolete AC_OUTPUT syntax with
14683         AC_CONFIG_FILES, AC_CONFIG_COMMANDS, and new-type AC_OUTPUT trio.
14685         * aclocal.m4 (GLIBC_PROVIDES): Add AC_PROVIDEs for
14686         _AS_PATH_SEPARATOR_PREPARE and _AS_TEST_PREPARE.
14688         * configure.in: Replace AC_FD_CC with AS_MESSAGE_LOG_FD.
14689         * sysdeps/alpha/elf/configure.in: Likewise.
14690         * sysdeps/i386/elf/configure.in: Likewise.
14691         * sysdeps/mach/hurd/configure.in: Likewise.
14692         * sysdeps/x86_64/elf/configure.in: Likewise.
14694         * configure.in: Use AC_CONFIG_SRCDIR and new AC_INIT syntax.
14696         * sysdeps/alpha/elf/configure.in: Remove unneeded sinclude statement.
14697         * sysdeps/generic/configure.in: Likewise.
14698         * sysdeps/i386/elf/configure.in: Likewise.
14699         * sysdeps/ia64/elf/configure.in: Likewise.
14700         * sysdeps/mach/configure.in: Likewise.
14701         * sysdeps/mach/hurd/configure.in: Likewise.
14702         * sysdeps/unix/configure.in: Likewise.
14703         * sysdeps/unix/common/configure.in: Likewise.
14704         * sysdeps/unix/sysv/aix/configure.in: Likewise.
14705         * sysdeps/unix/sysv/linux/configure.in: Likewise.
14706         * sysdeps/unix/sysv/linux/mips/configure.in: Likewise.
14707         * sysdeps/x86_64/elf/configure.in: Likewise.
14709         * aclocal.m4: Use just the bits from AS_INIT that are needed for the
14710         GLIBC_PROVIDES.  Use plain comment instead of HEADER-COMMENT so
14711         that it's obvious when extra autoconf machinery is being dragged in.
14713 2002-10-18  Roland McGrath  <roland@redhat.com>
14715         * configure.in: Remove bogus echo included in
14716         2002-10-08  Aldy Hernandez  <aldyh@redhat.com> change.
14717         * configure: Regenerated.
14719 2002-10-18  Jakub Jelinek  <jakub@redhat.com>
14721         * sysdeps/unix/sysv/linux/pathconf.h (statfs_link_max): Add inline.
14722         (statfs_filesize_max): New function.
14723         * sysdeps/unix/sysv/linux/linux_fsinfo.h (JFFS_SUPER_MAGIC,
14724         JFFS2_SUPER_MAGIC, JFS_SUPER_MAGIC, NTFS_SUPER_MAGIC,
14725         ROMFS_SUPER_MAGIC, UDF_SUPER_MAGIC): Define.
14726         * sysdeps/unix/sysv/linux/fpathconf.c (__fpathconf): Use
14727         statfs_filesize_max.
14728         * sysdeps/unix/sysv/linux/pathconf.c (__pathconf): Likewise.
14729         * sysdeps/unix/sysv/linux/alpha/fpathconf.c: Removed.
14730         * sysdeps/unix/sysv/linux/alpha/pathconf.c: Removed.
14732 2002-10-17  Roland McGrath  <roland@redhat.com>
14734         * configure.in (MIG): Just AC_SUBST it here.
14735         * configure: Regenerated.
14736         * sysdeps/mach/configure.in (MIG): Do the AC_CHECK_TOOL here.
14737         Adding final - argument to all AC_CHECK_HEADER uses for .defs files.
14738         * sysdeps/mach/configure: Regenerated.
14740         * aclocal.m4 (GLIBC_PROVIDES): Add AC_PROVIDE([_AS_TR_SH_PREPARE])
14741         and AC_PROVIDE([_AS_CR_PREPARE]).
14743         * aclocal.m4 (GLIBC_PROVIDES): Add AC_PROVIDE([_AS_ECHO_N_PREPARE]).
14744         Remove AC_LANG(C) call, instead just define([_AC_LANG], [C]).
14746         * elf/dl-support.c: Move _dl_tls_* variables to ...
14747         * sysdeps/generic/libc-tls.c: ... here.
14749         * elf/dl-close.c (remove_slotinfo): Take new argument.  If false,
14750         allow IDX to be one past the current last slotinfo entry.
14751         (_dl_close): Pass IMAP->l_init_called for that parameter.
14753 2002-10-07  Andreas Schwab  <schwab@suse.de>
14755         * aclocal.m4: Fix for autoconf 2.53.
14756         * configure.in: Likewise.  Require autoconf 2.53.
14758 2002-10-08  Richard Henderson  <rth@redhat.com>
14760         * soft-fp/op-4.h: Handle carry correctly in
14761         __FP_FRAC_ADD_3, __FP_FRAC_ADD_4, __FP_FRAC_SUB_3,
14762         __FP_FRAC_SUB_4, __FP_FRAC_DEC_3, __FP_FRAC_DEC_4.
14763         * soft-fp/op-common.h: New macros _FP_DIV_MEAT_N_loop.
14765 2002-10-08  Aldy Hernandez  <aldyh@redhat.com>
14767         * configure.in: Compute completely-soft.
14768         * config.make.in: Make completely-soft available to sub-makes.
14769         * sysdeps/powerpc/soft-fp/Makefile: Add gcc-single-routines and
14770         gcc-double-routines.  Add sim-full.c.  Add fenv_const and
14771         fe_nomask to libm-support.
14772         * sysdeps/powerpc/soft-fp/sim-full.c: New file.
14773         * sysdeps/powerpc/soft-fp/fraiseexcpt.c: New file.
14774         * sysdeps/powerpc/soft-fp/fegetexcept.c: New file.
14775         * sysdeps/powerpc/soft-fp/fclrexcpt.c: New file.
14776         * sysdeps/powerpc/soft-fp/ftestexcept.c: New file.
14777         * sysdeps/powerpc/soft-fp/fgetexcptflg.c: New file.
14778         * sysdeps/powerpc/soft-fp/fsetexcptflg.c: New file.
14779         * sysdeps/powerpc/soft-fp/fedisblxcpt.c: New file.
14780         * sysdeps/powerpc/soft-fp/feenablxcpt.c: New file.
14781         * sysdeps/powerpc/soft-fp/fegetenv.c: New file.
14782         * sysdeps/powerpc/soft-fp/fesetenv.c: New file.
14783         * sysdeps/powerpc/soft-fp/fegetround.c: New file.
14784         * sysdeps/powerpc/soft-fp/fesetround.c: New file.
14785         * sysdeps/powerpc/soft-fp/feupdateenv.c: New file.
14786         * sysdeps/powerpc/soft-fp/feholdexcpt.c: New file.
14787         * sysdeps/powerpc/soft-fp/fenv_const.c: New file.
14788         * sysdeps/powerpc/soft-fp/libm-test-ulps: New file.
14789         * sysdeps/powerpc/soft-fp/soft-supp.h: New file.
14790         * sysdeps/powerpc/soft-fp/Versions: Add libgcc soft-float
14791         symbols.  Add __sim_disabled_exceptions, __sim_exceptions,
14792         __sim_round_mode.
14793         * sysdeps/powerpc/soft-float/Dist: Add sim-full.c, fenv_const.c.
14794         * sysdeps/powerpc/soft-float/sfp-machine.h: Define
14795         FP_HANDLE_EXCEPTIONS.
14796         Define FP_ROUNDMODE.
14797         Redefine FP_* macros to correspond to the FE_* bit positions.
14798         Define FP_DIV_MEAT_S to _FP_DIV_MEAT_1_loop.
14799         Define externs for __sim_exceptions, __sim_disabled_exceptions,
14800         __sim_round_mode, __simulate_exceptions.
14801         * sysdeps/powerpc/fpu/bits/fenv.h: Move file from here...
14802         * sysdeps/powerpc/bits/fenv.h: ...to here.
14804 2002-10-06  Jakub Jelinek  <jakub@redhat.com>
14806         * sysdeps/powerpc/powerpc32/dl-machine.c (__process_machine_rela):
14807         Store R_PPC_UADDR32 and R_PPC_UADDR16 one byte at a time.
14808         Use __builtin_expect for R_PPC_ADDR24 overflow check.  Fix
14809         R_PPC_ADDR16, R_PPC_UADDR16 and R_PPC_ADDR14* overflow check, use
14810         __builtin_expect.
14812 2002-10-15  Jakub Jelinek  <jakub@redhat.com>
14814         * include/resolv.h (__libc_res_nquery, __libc_res_nsearch,
14815         __libc_res_nsend): New prototypes.
14816         * resolv/res_query.c (QUERYSIZE): Define.
14817         (__libc_res_nquery): Renamed from res_nquery.  Added answerp
14818         argument.  Allocate only QUERYSIZE bytes first, if res_nmkquery
14819         fails use MAXPACKET buffer.  Call __libc_res_nsend instead of
14820         res_nsend, pass answerp.
14821         (res_nquery): Changed into wrapper around __libc_res_nquery.
14822         (__libc_res_nsearch): Renamed from res_nsearch.  Added answerp
14823         argument.  Call __libc_res_nquerydomain and __libc_res_nquery
14824         instead of the non-__libc_ variants, pass them answerp.
14825         (res_nsearch): Changed into wrapper around __libc_res_nsearch.
14826         (__libc_res_nquerydomain): Renamed from res_nquerydomain.
14827         Added answerp argument.  Call __libc_res_nquery instead of
14828         res_nquery, pass answerp.
14829         (res_nquerydomain): Changed into wrapper around
14830         __libc_res_nquerydomain.
14831         * resolv/res_send.c: Include sys/ioctl.h.
14832         (MAXPACKET): Define.
14833         (send_vc): Change arguments.  Reallocate answer buffer if it is
14834         too small.
14835         (send_dg): Likewise.
14836         (__libc_res_nsend): Renamed from res_nsend.  Added ansp argument.
14837         Reallocate answer buffer if it is too small and hooks are in use.
14838         Adjust calls to send_vc and send_dg.
14839         (res_nsend): Changed into wrapper around __libc_res_nsend.
14840         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyname2_r): Allocate
14841         just 1K answer buffer on the stack, use __libc_res_nsearch instead
14842         of res_nsearch.
14843         (_nss_dns_gethostbyaddr_r): Similarly with __libc_res_nquery.
14844         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyaddr_r): Likewise.
14845         (_nss_dns_getnetbyname_r): Similarly with __libc_res_nsearch.
14846         * resolv/gethnamaddr.c (gethostbyname2): Likewise.
14847         (gethostbyaddr): Similarly with __libc_res_nquery.
14848         * resolv/Versions (libresolv): Export __libc_res_nquery and
14849         __libc_res_nsearch at GLIBC_PRIVATE.
14851 2002-10-17  Roland McGrath  <roland@redhat.com>
14853         * configure.in: Grok --without-__thread and disable HAVE___THREAD.
14854         * configure: Regenerated.
14856         * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Do CHECK_STATIC_TLS
14857         before performing the reloc, not after.
14858         * sysdeps/i386/dl-machine.h (elf_machine_rel): Likewise.
14860 2002-10-17  Ulrich Drepper  <drepper@redhat.com>
14862         * locale/programs/locale.c (write_locales): Use 'm' flag in fopen call.
14863         * locale/programs/linereader.c (lr_open): Likewise.
14864         * locale/programs/charmap-dir.c (charmap_open): Likewise.
14865         * locale/programs/locarchive.c (add_locale_to_archive): Likewise.
14867 2002-10-17  Isamu Hasegawa  <isamu@yamato.ibm.com>
14869         * posix/bug-regex11.c: Add a test case for the bug reported by
14870         Paolo Bonzini <bonzini@gnu.org>.
14871         * posix/regexec.c (sift_states_bkref): Use correct destination of
14872         the back reference.
14874 2002-10-17  Roland McGrath  <roland@redhat.com>
14876         * elf/dl-load.c (_dl_map_object_from_fd): Don't check DF_STATIC_TLS.
14877         * elf/dl-reloc.c (_dl_relocate_object: CHECK_STATIC_TLS): New macro
14878         to signal error if an IE-model TLS reloc resolved to a dlopen'd module.
14879         * sysdeps/i386/dl-machine.h (elf_machine_rel, elf_machine_rela):
14880         Call it after performing TPOFF relocs.
14881         * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Likewise.
14882         * sysdeps/sh/dl-machine.h (elf_machine_rela): Likewise.
14883         * elf/dl-conflict.c (CHECK_STATIC_TLS): New macro (no-op).
14885         * elf/dl-close.c (remove_slotinfo): Change asserts so as not to crash
14886         when closing a partially-initialized object.
14888         * elf/dl-load.c (_dl_map_object_from_fd) [! USE_TLS]: Call lose
14889         instead of _dl_fatal_printf when we see PT_TLS.
14891         * Makeconfig (CPPFLAGS): Fix last change to use $(libof-$(<F))
14892         instead of $(libof-$<).
14894 2002-10-16  Roland McGrath  <roland@redhat.com>
14896         * cppflags-iterator.mk (CPPFLAGS-$(cpp-src)): Variable removed.
14897         instead of += to append, to be sure $(lib) gets expanded at defn time.
14898         (libof-$(cpp-src)): New variable, define this instead.
14899         * extra-lib.mk (cpp-srcs-left): Reduce duplication in include setup.
14900         (lib): Don't use override.
14901         (CPPFLAGS-$(lib)): New variable, put -D's here.
14902         * Makeconfig (CPPFLAGS): Use basename fn for CPPFLAGS-basename.
14903         Also add $(CPPFLAGS-LIB) before the file-specific flags, for each
14904         LIB found by $(libof-*) for basename, target, or source.
14905         * Makerules (CPPFLAGS-nonlib): New variable.
14906         * nscd/Makefile (lib): Set to nonlib when using cppflags-iterator.mk.
14907         * locale/Makefile (lib): Likewise.
14908         * sunrpc/Makefile (lib): Likewise.
14910         * sysdeps/unix/sysv/linux/fpathconf.c (LINUX_LINK_MAX): Move macro ...
14911         * sysdeps/unix/sysv/linux/linux_fsinfo.h (LINUX_LINK_MAX): ... here.
14912         * sysdeps/unix/sysv/linux/pathconf.h: New file.
14913         (statfs_link_max): New function, guts from fpathconf.c.
14914         * sysdeps/unix/sysv/linux/fpathconf.c: Rewritten using that.
14915         * sysdeps/unix/sysv/linux/pathconf.c (__pathconf): Likewise.
14916         * sysdeps/unix/sysv/linux/alpha/pathconf.c (__pathconf): Rewritten
14917         to use the linux/pathconf.c code by #include rather than duplication.
14918         * sysdeps/unix/sysv/linux/alpha/fpathconf.c (__pathconf): Likewise.
14920 2002-10-16  Jakub Jelinek  <jakub@redhat.com>
14922         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
14923         Use __libc_errno only for libc itself.
14925 2002-10-16  Andreas Jaeger  <aj@suse.de>
14927         * sysdeps/x86_64/_mcount.S: Fix off-by-1 error in argument access.
14929 2002-10-16  Ulrich Drepper  <drepper@redhat.com>
14931         * sysdeps/unix/sysv/linux/i386/sysdep.h (SYSCALL_ERROR_HANDLER):
14932         Use __libc_errno only for libc itself.
14934 2002-10-15  Roland McGrath  <roland@redhat.com>
14935             Jakub Jelinek  <jakub@redhat.com>
14937         * sysdeps/unix/sysv/linux/Makefile
14938         ($(objpfx)syscall-%.h $(objpfx)syscall-%.d): Take code from
14939         sparc/Makefile to produce a bi-arch file as needed.
14940         That's now parameterized by the variable $(64bit-predefine).
14941         Use LC_ALL=C for `comm' commands in that rule.
14942         No longer conditional on [$(no_syscall_list_h)].
14943         * sysdeps/unix/sysv/linux/sparc/Makefile: Remove replacement rules.
14944         (64bit-predefine): New variable.
14945         * sysdeps/unix/sysv/linux/x86_64/Makefile: Likewise.
14946         * sysdeps/unix/sysv/linux/s390/Makefile: New file.
14947         * sysdeps/unix/sysv/linux/powerpc/Makefile
14948         (64bit-predefine): New variable.
14950 2002-10-15  Roland McGrath  <roland@redhat.com>
14952         * sysdeps/unix/sysv/linux/Makefile
14953         ($(objpfx)syscall-%.h $(objpfx)syscall-%.d)
14955         * login/utmp-private.h: Declare __libc_utmp_lock.
14956         * sysdeps/unix/getlogin_r.c (getlogin_r): Take __libc_utmp_lock once
14957         and call __libc_utmp_jump_table functions directly, instead of using
14958         __setutent et al.
14960         * sysdeps/unix/sysv/linux/configure.in: Use case instead of if.
14961         * sysdeps/unix/sysv/linux/configure: Regenerated.
14963         * sysdeps/gnu/bits/utmp.h: Include <bits/wordsize.h>.
14964         (struct lastlog) [__WORDSIZE == 64 && __WORDSIZE_COMPAT32]:
14965         Use int32_t for ll_time.
14966         (struct utmp) [__WORDSIZE == 64 && __WORDSIZE_COMPAT32]:
14967         Use int32_t instead of long int for ut_session.
14968         Use an anonymous struct with 32-bit fields for ut_tv.
14969         * sysdeps/gnu/bits/utmpx.h: Include <bits/wordsize.h>.
14970         (struct utmpx) [__WORDSIZE == 64 && __WORDSIZE_COMPAT32]: Do the same
14971         here as in utmp.h for `struct utmp'.
14972         * sysdeps/unix/sysv/linux/powerpc/bits/utmp.h: File removed.
14973         * sysdeps/unix/sysv/linux/powerpc/bits/utmpx.h: File removed.
14974         * sysdeps/unix/sysv/linux/sparc/bits/utmp.h: File removed.
14975         * sysdeps/unix/sysv/linux/sparc/bits/utmpx.h: File removed.
14976         * sysdeps/unix/sysv/linux/x86_64/bits/utmp.h: File removed.
14977         * sysdeps/unix/sysv/linux/x86_64/bits/utmpx.h: File removed.
14979         * sysdeps/unix/sysv/linux/bits/resource.h: Replaced with the contents
14980         of the sysdeps/unix/sysv/linux/i386/bits/resource.h file.
14981         All the following files were identical or equivalent to it.
14982         * sysdeps/unix/sysv/linux/i386/bits/resource.h: File removed.
14983         * sysdeps/unix/sysv/linux/arm/bits/resource.h: File removed.
14984         * sysdeps/unix/sysv/linux/cris/bits/resource.h: File removed.
14985         * sysdeps/unix/sysv/linux/hppa/bits/resource.h: File removed.
14986         * sysdeps/unix/sysv/linux/ia64/bits/resource.h: File removed.
14987         * sysdeps/unix/sysv/linux/m68k/bits/resource.h: File removed.
14988         * sysdeps/unix/sysv/linux/powerpc/bits/resource.h: File removed.
14989         * sysdeps/unix/sysv/linux/s390/bits/resource.h: File removed.
14990         * sysdeps/unix/sysv/linux/sh/bits/resource.h: File removed.
14991         * sysdeps/unix/sysv/linux/x86_64/bits/resource.h: File removed.
14993         * sysdeps/unix/sysv/linux/bits/socket.h (struct msghdr): Use size_t
14994         instead of int for msg_iovlen, instead of socklen_t for msg_controllen.
14995         Other than the previously incorrect sign of msg_iovlen, this is a
14996         no-op on 32-bit platforms.  On 64-bit platforms it makes this header
14997         match their layouts as well, so the following are now identical to it.
14998         * sysdeps/unix/sysv/linux/s390/bits/socket.h: File removed.
14999         * sysdeps/unix/sysv/linux/sparc/bits/socket.h: File removed.
15000         * sysdeps/unix/sysv/linux/x86_64/bits/socket.h: File removed.
15001         * sysdeps/unix/sysv/linux/ia64/bits/socket.h: File removed.
15002         * sysdeps/unix/sysv/linux/alpha/bits/socket.h: File removed.
15004 2002-10-15  Ulrich Drepper  <drepper@redhat.com>
15006         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_VFORK_SYSCALL):
15007         Define for 2.4+ kernels.
15009         * sysdeps/unix/sysv/linux/i386/vfork.S: Optimize for kernels which
15010         are known to have the vfork syscall.  Don't confuse the CPUs
15011         branch prediction unit by jumping to the return address.
15013         * sysdeps/unix/sysv/linux/alpha/fpathconf.c (__fpathconf): Add
15014         support for reiserfs and xfs.
15016         * sysdeps/unix/sysv/linux/fpathconf.c (__fpathconf): Add case for
15017         XFS link count.
15018         * sysdeps/unix/sysv/linux/linux_fsinfo.h: Define XFS_SUPER_MAGIC
15019         and XFS_LINK_MAX.
15020         Patch by Eric Sandeen <sandeen@sgi.com> [PR libc/4706].
15022 2002-10-16  Jakub Jelinek  <jakub@redhat.com>
15024         * include/libc-symbols.h (attribute_tls_model_ie): Define.
15025         * include/errno.h (errno): Define to __libc_errno in libc.so.
15026         Add attribute_tls_model_ie.
15027         * include/netdb.h (h_errno): Define to __libc_h_errno in libc.so.
15028         Add attribute_tls_model_ie.
15029         * include/resolv.h (_res): Define to __libc_res in libc.so.  Add
15030         attribute_tls_model_ie.
15031         * inet/herrno.c (__libc_h_errno): Add hidden alias to h_errno.
15032         (h_errno): Define.
15033         * resolv/res_libc.c (__libc_res): Add hidden alias to _res.
15034         (_res): Define.
15035         * sysdeps/generic/bits/libc-tsd.h (__libc_tsd_define): Add
15036         attribute_tls_model_ie.
15037         * sysdeps/generic/errno-loc.c (errno): Only undefine if not using
15038         __thread.
15039         * sysdeps/generic/errno.c (__libc_errno): Add hidden alias to errno.
15040         * sysdeps/unix/sysv/linux/i386/sysdep.h (SYSCALL_ERROR_HANDLER): Use
15041         __libc_errno in USE___THREAD case.
15042         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
15043         Likewise.
15044         * configure.in (HAVE_TLS_MODEL_ATTRIBUTE): Check for
15045         __attribute__((tls_model (""))).
15046         * configure: Rebuilt.
15047         * config.h.in (HAVE_TLS_MODEL_ATTRIBUTE): Add.
15049 2002-10-15  Ulrich Drepper  <drepper@redhat.com>
15051         * timezone/asia: Update from tzdata2002d.
15052         * timezone/australasia: Likewise.
15053         * timezone/iso3166.tab: Likewise.
15054         * timezone/southamerica: Likewise.
15055         * timezone/zone-tab: Likewise.
15057 2002-10-15  Roland McGrath  <roland@redhat.com>
15059         * sysdeps/generic/dl-tls.c (_dl_deallocate_tls) [TLS_TCB_AT_TP]:
15060         Adjust TCB pointer before calling free, so we get the whole block.
15062 2002-10-14  Roland McGrath  <roland@redhat.com>
15064         * sysdeps/unix/sysv/linux/x86_64/sigaction.c
15065         [HAVE_HIDDEN && !HAVE_BROKEN_VISIBILITY_ATTRIBUTE]: Declare restore_rt
15066         extern using attribute_hidden instead of static, avoids warning.
15068 2002-10-09  Jakub Jelinek  <jakub@redhat.com>
15070         * sysdeps/unix/sysv/linux/configure.in: Use */lib64 for s390x too.
15071         * sysdeps/unix/sysv/linux/configure: Rebuilt.
15073 2002-10-14  Ulrich Drepper  <drepper@redhat.com>
15075         * po/sv.po: Update from translation team.
15077 2002-10-12  H.J. Lu  <hjl@gnu.org>
15079         * sunrpc/thrsvc.c (PROCQUIT): New.
15080         (struct rpc_arg): New.
15081         (dispatch): Call exit (0) if request->rq_proc == PROCQUIT.
15082         (test_one_call): Take struct rpc_arg * instead of CLIENT *c.
15083         (thread_wrapper): Modified for struct rpc_arg * and call PROCQUIT.
15084         (main): Modified for struct rpc_arg *.
15086 2002-10-14  Ulrich Drepper  <drepper@redhat.com>
15088         * dirent/scandir.c: Rearrange code a bit to reduce binary size.
15090 2002-10-14  Jakub Jelinek  <jakub@redhat.com>
15092         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Include tls.h.
15093         (SYSCALL_ERROR_HANDLER): Use RTLD_PRIVATE_ERRNO sequence
15094         in ld.so even if __thread is supported.
15096 2002-10-13  Jakub Jelinek  <jakub@redhat.com>
15098         * sysdeps/unix/sysv/linux/arm/profil-counter.h (profil_counter):
15099         Add hack to prevent the compiler from clobbering the signal context.
15100         * sysdeps/unix/sysv/linux/sh/profil-counter.h (profil_counter):
15101         Likewise.
15102         * sysdeps/unix/sysv/linux/x86_64/profil-counter.h (profil_counter):
15103         Likewise.
15105 2002-10-14  Andreas Jaeger  <aj@suse.de>
15107         * sysdeps/mips/fpu/libm-test-ulps: Regenerated by
15108         Guido Guenther <agx@sigxcpu.org>.
15110 2002-10-14  Ulrich Drepper  <drepper@redhat.com>
15112         * po/sk.po: Update from translation team.
15114 2002-09-26  Roland McGrath  <roland@redhat.com>
15116         * elf/dl-load.c (_dl_dst_count, _dl_dst_substitute): Handle $LIB
15117         dynamic string tag.
15118         * elf/Makefile ($(objpfx)trusted-dirs.st): Make the output define
15119         DL_DST_LIB based on $(slibdir).
15121 2002-10-13  Roland McGrath  <roland@frob.com>
15123         * elf/rtld-Rules ($(objpfx)rtld-libc.a): Use $(verbose) in ar command.
15125         * sysdeps/mach/hurd/getresuid.c: New file.
15126         * sysdeps/mach/hurd/getresgid.c: New file.
15127         * sysdeps/mach/hurd/setresuid.c: New file.
15128         * sysdeps/mach/hurd/setresgid.c: New file.
15130         * posix/unistd.h [__USE_GNU] (getresuid, getresgid, setresuid,
15131         setresgid): Declare them.
15132         * NEWS: Mention it.
15133         * include/unistd.h
15134         (__getresuid, __getresgid, __setresuid, __setresgid): Declare them,
15135         add libc_hidden_proto.
15136         * posix/Versions (libc: GLIBC_2.3.2): New set.  Add
15137         getresuid, getresgid, setresuid, setresgid here.
15138         * Versions.def (libc): Define GLIBC_2.3.2 set.
15139         * sysdeps/generic/getresuid.c (__getresuid): Fix argument types.
15140         Add libc_hidden_def.
15141         * sysdeps/generic/getresgid.c (__getresgid): Likewise.
15142         * sysdeps/generic/setresgid.c: New file.
15143         * sysdeps/generic/setresuid.c: New file.
15144         * sysdeps/unix/sysv/linux/Makefile [$(subdir) = misc]
15145         (sysdep_routines): Don't add getresuid and getresgid here.
15146         * sysdeps/unix/sysv/linux/arm/Makefile [$(subdir) = misc]
15147         (sysdep_routines): Don't add setresuid and setresgid here.
15148         * sysdeps/unix/sysv/linux/cris/Makefile: Likewise.
15149         * sysdeps/unix/sysv/linux/sh/Makefile: Likewise.
15150         * sysdeps/unix/sysv/linux/s390/s390-32/Makefile: Likewise.
15151         * sysdeps/unix/sysv/linux/s390/s390-64/Makefile: Likewise.
15152         * sysdeps/unix/sysv/linux/i386/Makefile: Likewise.
15153         * sysdeps/unix/sysv/linux/m68k/Makefile: Likewise.
15154         * posix/Makefile (routines): Add them all here instead.
15155         * sysdeps/unix/sysv/linux/i386/getresuid.c (getresuid): Renamed to
15156         __getresuid.  Add libc_hidden_def for that, and weak alias to old name.
15157         * sysdeps/unix/sysv/linux/i386/getresgid.c (getresgid): Renamed to
15158         __getresgid.  Add libc_hidden_def for that, and weak alias to old name.
15159         * sysdeps/unix/sysv/linux/i386/setresuid.c: Add libc_hidden_def.
15160         [! __NR_setresuid]: Include generic file.
15161         * sysdeps/unix/sysv/linux/i386/setresgid.c (setresgid): Renamed to
15162         __setresgid.  Add libc_hidden_def for that, and weak alias to old name.
15163         [! __NR_setresuid]: Include generic file.
15164         * sysdeps/unix/sysv/linux/syscalls.list (setresuid, setresgid):
15165         Caller is - now, not EXTRA.
15166         * sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list
15167         (setresuid, setresgid, getresuid, getresgid): Likewise.
15168         * sysdeps/unix/sysv/linux/syscalls.list (getresuid, getresgid):
15169         Add these calls here.
15170         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Remove them here.
15171         * sysdeps/unix/sysv/linux/hppa/syscalls.list: Likewise.
15172         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
15173         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
15174         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
15175         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Likewise.
15176         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Likewise.
15177         * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise.
15178         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
15180         * sysdeps/unix/sysv/linux/Makefile [$(subdir) = misc]
15181         (sysdep_routines): Add setfsuid and setfsgid here.
15182         * sysdeps/unix/sysv/linux/arm/Makefile: Not here.
15183         * sysdeps/unix/sysv/linux/sparc/sparc32/Makefile: Likewise.
15184         * sysdeps/unix/sysv/linux/cris/Makefile: Likewise.
15185         * sysdeps/unix/sysv/linux/sh/Makefile: Likewise.
15186         * sysdeps/unix/sysv/linux/s390/s390-32/Makefile: Likewise.
15187         * sysdeps/unix/sysv/linux/s390/s390-64/Makefile: Likewise.
15188         * sysdeps/unix/sysv/linux/i386/Makefile: Likewise.
15189         * sysdeps/unix/sysv/linux/m68k/Makefile: Likewise.
15191         * hurd/errno.c: Renamed to ...
15192         * hurd/errno-loc.c: ... this.
15193         * hurd/Makefile (routines): errno -> errno-loc
15195 2002-10-13  Ulrich Drepper  <drepper@redhat.com>
15197         * po/de.po: Update from translation team.
15199         * MakeTAGS: Add -E flag to xgettext runs.
15201 2002-10-12  Ulrich Drepper  <drepper@redhat.com>
15203         * po/fr.po: Update from translation team.
15205         * sysdeps/posix/system.c: Remove support for old and buggy SCO systems.
15206         Optimize a bit for use in glibc.
15208 2002-10-12  Roland McGrath  <roland@redhat.com>
15210         * stdio-common/tst-rndseek.c (TIMEOUT): Increase to 10 seconds.
15211         Some machines are slow.  Guido Guenther <agx@sigxcpu.org> has one.
15213 2002-10-12  Ulrich Drepper  <drepper@redhat.com>
15215         * po/sv.po: Update from translation team.
15217 2002-10-11  Isamu Hasegawa  <isamu@yamato.ibm.com>
15219         * posix/regcomp.c (re_compile_fastmap_iter): Remove the handling
15220         OP_CONTEXT_NODE.
15221         (regfree): Likewise.
15222         (create_initial_state): Likewise.
15223         (analyze): Remove the substitutions which became useless.
15224         (calc_first): Likewise.
15225         (calc_epsdest): Use edests of OP_BACK_REF in case that it has
15226         epsilon destination.
15227         (duplicate_node_closure): New function.
15228         (duplicate_node): Remove the handling OP_CONTEXT_NODE.
15229         (calc_inveclosure): Likewise.
15230         (calc_eclosure): Likewise.
15231         (calc_eclosure_iter): Invoke duplicate_node_closure instead of
15232         direct invocation of duplicate_node.
15233         (parse): Don't use comma operator in the return to avoid compiler
15234         warning.
15235         (parse_reg_exp): Likewise.
15236         (parse_branch): Likewise.
15237         (parse_expression): Likewise.
15238         (parse_sub_exp): Likewise.
15239         (parse_dup_op): Likewise.
15240         * posix/regex_internal.c (re_dfa_add_node): Remove the substitutions
15241         which became useless.
15242         (create_ci_newstate): Remove the handling OP_CONTEXT_NODE.
15243         (create_cd_newstate): Likewise.
15244         * posix/regex_internal.h (re_token_type_t): Remove the obsolete type.
15245         (re_token_t): Likewise.
15246         (re_dfa_t): Likewise.
15247         (re_node_set_remove): New macro.
15248         * posix/regexec.c (check_matching): Remove the handling
15249         OP_CONTEXT_NODE.
15250         (check_halt_node_context): Likewise.
15251         (proceed_next_node): Likewise.
15252         (pop_fail_stack): Fix the memory leak.
15253         (set_regs): Likewise.
15254         (free_fail_stack_return): New function.
15255         (sift_states_backward): Fix the memory leak.  Remove the handling
15256         OP_CONTEXT_NODE.
15257         (update_cur_sifted_state): Append some if clause to avoid redundant
15258         call.
15259         (sub_epsilon_src_nodes): Use IS_EPSILON_NODE since it might be a
15260         back reference.
15261         (check_dst_limits): Remove the handling OP_CONTEXT_NODE.
15262         (check_subexp_limits): Likewise.
15263         (search_subexp): Likewise.
15264         (sift_states_bkref): Likewise.
15265         (transit_state_mb): Likewise.
15266         (transit_state_bkref_loop): Likewise.
15267         (transit_state_bkref_loop): Likewise.
15268         (group_nodes_into_DFAstates): Likewise.
15269         (check_node_accept): Likewise.
15270         (sift_ctx_init): Add initializing.
15272 2002-10-12  Ulrich Drepper  <drepper@redhat.com>
15274         * sysdeps/unix/sysv/linux/i386/sysdep.h (INLINE_SYSCALL): Use
15275         __builtin_expect.
15277 2002-10-11  Ulrich Drepper  <drepper@redhat.com>
15279         * elf/dl-load.c (_dl_map_object_from_fd): Remove unnecessarily
15280         duplicated variable c.
15282         * sysdeps/unix/sysv/linux/sigwait.c (__sigwait): Use INTERNAL_SYSCALL
15283         if possible.
15285         * sysdeps/unix/sysv/linux/i386/sysdep.h
15286         (INTERNAL_SYSCALL_ERROR_P): New define.
15287         (INTERNAL_SYSCALL_ERRNO): Likewise.
15289         * sysdeps/unix/sysv/linux/i386/profil-counter.h (profil_counter):
15290         Add hack to prevent the compiler from clobbering the signal context.
15292 2002-10-11  Roland McGrath  <roland@redhat.com>
15294         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
15295         Fix typos.
15297         * sysdeps/generic/dl-lookupcfg.h: Include <tls.h>.
15298         * sysdeps/sh/dl-lookupcfg.h: File removed.
15299         * sysdeps/i386/dl-lookupcfg.h: File removed.
15301         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER): Add
15302         missing labels and ; from last change.
15304         * stdio-common/tst-sscanf.c (val_double): Append .0 to large whole
15305         number literals, so they are doubles instead of ints.
15307 2002-10-09  Roland McGrath  <roland@redhat.com>
15309         * sysdeps/generic/bits/libc-tsd.h [USE___THREAD]: Conditional
15310         changed from [USE_TLS && HAVE___THREAD].
15312         * sysdeps/i386/dl-machine.h (elf_machine_type_class, elf_machine_rel):
15313         Disable TLS relocs if [RTLD_BOOTSTRAP && !USE___THREAD].
15314         * sysdeps/x86_64/dl-machine.h
15315         (elf_machine_type_class, elf_machine_rela): Likewise.
15316         * sysdeps/sh/dl-machine.h (elf_machine_type_class, elf_machine_rela):
15317         Likewise.
15319         * include/link.h (struct link_map): Remove member l_tls_tp_initialized.
15320         * elf/rtld.c (_dl_start_final, dl_main): Don't use it.
15321         (_dl_start): Conditionalize PT_TLS check on [USE___THREAD].
15323         * sysdeps/i386/dl-tls.h (__TLS_GET_ADDR): Use ___tls_get_addr_internal
15324         instead of ___tls_get_addr.
15325         (___tls_get_addr_internal): Add attribute_hidden to decl.
15327         * sysdeps/generic/ldsodefs.h (struct rtld_global): New variable
15328         _dl_error_catch_tsd.
15329         * elf/rtld.c (startup_error_tsd): New function.
15330         (dl_main): Point _dl_error_catch_tsd at that.
15331         * elf/dl-error.c: Don't use libc-tsd.h for DL_ERROR,
15332         use new function pointer instead.
15333         * elf/dl-tsd.c: New file.
15334         * elf/Makefile (routines): Add it.
15336 2002-10-07  Roland McGrath  <roland@redhat.com>
15338         * elf/dl-misc.c (_dl_debug_vdprintf): Use INTERNAL_SYSCALL macro for
15339         writev if it's available.  Otherwise if [RTLD_PRIVATE_ERRNO] then
15340         take _dl_load_lock around calling __writev.
15342         * sysdeps/unix/sysv/linux/i386/sysdep.h (INTERNAL_SYSCALL): New macro.
15343         (INLINE_SYSCALL): Use that.
15345         * sysdeps/generic/dl-sysdep.h: New file.
15346         * sysdeps/mach/hurd/dl-sysdep.h: New file.
15347         * sysdeps/generic/ldsodefs.h: Include <dl-sysdep.h>.
15348         * include/errno.h [IS_IN_rtld]: Include <dl-sysdep.h> to define ...
15349         [RTLD_PRIVATE_ERRNO]: Use a hidden global variable for errno and
15350         access it directly.
15351         * elf/dl-minimal.c (__errno_location): Removed.
15352         * sysdeps/unix/i386/sysdep.S (__syscall_errno) [RTLD_PRIVATE_ERRNO]:
15353         Use GOTOFF access for errno.
15354         * sysdeps/unix/sysv/linux/i386/sysdep.h
15355         [RTLD_PRIVATE_ERRNO] (SYSCALL_ERROR_HANDLER): Likewise.
15357         * sysdeps/unix/x86_64/sysdep.S (__syscall_errno) [RTLD_PRIVATE_ERRNO]:
15358         Use PC-relative access for errno.
15359         * sysdeps/unix/sysv/linux/x86_64/sysdep.h
15360         [RTLD_PRIVATE_ERRNO] (SYSCALL_ERROR_HANDLER): Likewise.
15362         * include/tls.h: New file.
15363         (USE___THREAD): New macro.
15364         Define to 1 under [USE_TLS && HAVE___THREAD] and only when compiling
15365         libc or libpthread.
15366         * sysdeps/unix/sysv/linux/i386/sysdep.h [USE___THREAD]: Conditional
15367         changed from [USE_TLS && HAVE___THREAD].
15368         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
15369         * sysdeps/unix/i386/sysdep.S: Likewise.
15370         * sysdeps/unix/x86_64/sysdep.S: Likewise.
15371         * include/errno.h: Likewise.
15372         * include/netdb.h: Likewise.
15373         * include/resolv.h: Likewise.
15375         * sysdeps/generic/errno.c: New file.
15376         * csu/Makefile (aux): New variable, list errno.
15377         * sysdeps/unix/sysv/linux/i386/sysdep.S (errno, _errno): Remove defns.
15378         * sysdeps/unix/sysv/linux/m68k/sysdep.S: Likewise.
15379         * sysdeps/unix/sysv/linux/x86_64/sysdep.S: Likewise.
15380         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S: Likewise.
15381         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S: Likewise.
15382         * sysdeps/unix/sysv/linux/arm/sysdep.S: Likewise.
15383         * sysdeps/unix/sysv/linux/cris/sysdep.S: Likewise.
15384         * sysdeps/unix/sysv/linux/hppa/sysdep.c: Likewise.
15385         * sysdeps/unix/sysv/linux/ia64/sysdep.S: Likewise.
15386         * sysdeps/unix/sysv/linux/powerpc/sysdep.c: Likewise.
15387         * sysdeps/unix/sysv/linux/sparc/sysdep.S: Likewise.
15388         * sysdeps/unix/sysv/linux/sh/sysdep.S: Likewise.
15389         * sysdeps/unix/alpha/sysdep.S: Likewise.
15390         * sysdeps/generic/start.c: Likewise.
15391         * sysdeps/unix/start.c: Likewise.
15392         * sysdeps/unix/arm/start.c: Likewise.
15393         * sysdeps/unix/bsd/ultrix4/mips/start.S: Likewise.
15394         * sysdeps/unix/sparc/start.c: Likewise.
15395         * sysdeps/unix/sysv/irix4/start.c: Likewise.
15396         * sysdeps/unix/sysv/linux/mips/sysdep.S: File removed.
15398         * manual/search.texi (Tree Search Function, Hash Search Function):
15399         Mention search.h clearly.
15401 2002-10-05  Roland McGrath  <roland@redhat.com>
15403         * elf/dl-fxstat64.c: File removed.
15404         * elf/dl-xstat64.c: File removed.
15405         * elf/Makefile (rtld-routines): Remove them.
15406         * sysdeps/unix/sysv/linux/xstat64.c: Remove RTLD_STAT64 conditionals.
15407         Instead, use strong_alias instead of versioned_symbol in the
15408         !SHLIB_COMPAT case.
15409         * sysdeps/unix/sysv/linux/fxstat64.c: Likewise.
15410         * sysdeps/unix/sysv/linux/lxstat64.c: Likewise.
15412         * include/shlib-compat.h
15413         (SHLIB_COMPAT): Require that IS_IN_##lib be defined nonzero.
15414         [! NOT_IN_libc] (IS_IN_libc): Define it.
15415         * cppflags-iterator.mk (CPPFLAGS-$(cpp-src)): Use -Dx=1 not just -Dx.
15416         * elf/Makefile (CPPFLAGS-.os): Likewise.
15418         * sunrpc/rpc_main.c (main): Don't declare with noreturn attribute.
15419         Return the status instead of calling exit.
15421         * Makeconfig (CFLAGS): Prepend -std=gnu99.
15422         * Makerules (+make-deps): Use $(CFLAGS) only for .c sources.
15423         Remove superfluous rm command, whose @ plus make bugs hid
15424         all these commands from the make output.
15426         * include/stubs-prologue.h: New file.  Give #error under #ifdef _LIBC.
15427         * Makefile ($(inst_includedir)/gnu/stubs.h): Depend on it.
15428         Use that file's contents instead of literal echo's for the prologue.
15429         * include/features.h: Include <gnu/stubs.h> unconditionally.
15430         * include/gnu/stubs.h: New file.
15432 2002-09-30  Roland McGrath  <roland@redhat.com>
15434         * elf/rtld-Rules: New file.
15435         * elf/Makefile ($(objpfx)librtld.map, $(objpfx)librtld.mk,
15436         $(objpfx)rtld-libc.a): New targets.
15437         (generated): Add them.
15438         (reloc-link): Remove -o $@ from the variable.
15439         ($(objpfx)dl-allobjs.os): Add -o $@ after $(reloc-link).
15440         (distribute): Add rtld-Rules.
15441         (CPPFLAGS-.os): Define this instead of CFLAGS-.os.
15442         * Makerules ($(+sysdir_pfx)sysd-rules): Emit rules for rtld-% targets.
15443         (common-mostlyclean, common-clean): Clean up rtld-* files.
15444         * sysdeps/unix/make-syscalls.sh: Add rtld-*.os target name to rules.
15446 2003-05-20  Jakub Jelinek  <jakub@redhat.com>
15448         * elf/dynamic-link.h (elf_get_dynamic_info): Add temp argument.
15449         If temp != NULL, copy dynamic entries which need relocation to temp
15450         array before relocating.
15451         (DL_RO_DYN_TEMP_CNT): Define.
15452         * elf/dl-load.c (_dl_map_object_from_fd): Adjust caller.
15453         * elf/rtld.c (_dl_start): Likewise.
15454         (dl_main): Likewise.  Add dyn_temp static variable.
15456 2002-10-11  Roland McGrath  <roland@redhat.com>
15458         * sysdeps/generic/dl-tls.c (__tls_get_addr): After freeing block in
15459         now-unused dtv slot, reset the slot to TLS_DTV_UNALLOCATED.
15461         * elf/tls-macros.h [__x86_64__] (TLS_GD): Fix the sequence with the
15462         proper set of no-op insn prefixes.
15464         * elf/tst-tls8.c (do_test): Use %zd format for l_tls_modid members.
15466 2002-10-11  Ulrich Drepper  <drepper@redhat.com>
15468         * sysdeps/unix/sysv/linux/execve.c: Don't try calling
15469         __pthread_kill_other_threads_np.
15471         * sysdeps/generic/pselect.c: Avoid unnecessary sigprocmask calls.
15473 2002-10-08  Roland McGrath  <roland@redhat.com>
15475         * locale/newlocale.c (__newlocale): If setting all categories to "C",
15476         just return &_nl_C_locobj instead of copying it.
15477         * locale/freelocale.c (__freelocale): Check for &_nl_C_locobj.
15478         * locale/duplocale.c (__duplocale): Likewise.
15480 2002-10-07  Roland McGrath  <roland@frob.com>
15482         * config.h.in (HAVE_I386_SET_GDT): New #undef.
15483         * sysdeps/mach/configure.in: Define it with new check for i386_set_gdt.
15484         * sysdeps/mach/configure: Regenerated.
15486 2002-10-06  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
15488         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (INLINE_SYSCALL):
15489         Add all necessary register outputs for syscall-clobbered registers.
15491 2002-10-02  David Mosberger  <davidm@hpl.hp.com>
15493         * sysdeps/ia64/bzero.S: Rewritten by Sverre Jarp to tune for
15494         Itanium 2 (and Itanium).
15495         Fix unwind directives and make it fit in 80 columns.
15496         * sysdeps/ia64/memset.S: Likewise.
15497         * sysdeps/ia64/memcpy.S: Likewise.
15498         Move jump table to .rodata section.
15500 2002-10-03  Roland McGrath  <roland@frob.com>
15502         * sysdeps/mach/hurd/i386/init-first.c (_hurd_stack_setup): Add
15503         clobbers to asm.
15505 2002-10-10  Andreas Jaeger  <aj@suse.de>
15507         * sysdeps/x86_64/_mcount.S: Restore correct registers.
15509 2002-10-10  Ulrich Drepper  <drepper@redhat.com>
15511         * posix/Versions (libc) [GLIBC_PRIVATE]: Add __pselect.
15513 2002-10-09  Ulrich Drepper  <drepper@redhat.com>
15515         * sysdeps/generic/ldsodefs.h: Remove attribute_hidden from
15516         _dl_allocate_tls_init.  Add rtld_hidden_proto.
15517         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Add
15518         rtld_hidden_def.
15519         * elf/Versions (ld) [GLIBC_PRIVATE]: Add _dl_allocate_tls_init.
15521         * version.h (VERSION): Bump to 2.3.1.
15523         * Make-dist: Add back one of the tar invocations removed before.
15525         * stdlib/Makefile (distribute): Add allocalim.h.
15527         * sysdeps/generic/bits/libc-tsd.h [!(USE_TLS && HAVE___THREAD)]
15528         (__libc_tsd_address): Use correct variable name.
15529         Patch by Stefan Jones <stefan.jones@multigig.com>.
15531         * sysdeps/unix/sysv/linux/ia64/getcontext.S: Add missing ;;.
15532         Reported by edwardsg@sgi.com [PR libc/4678].
15534         * Versions.def (libc): Add GLIBC_2.3.1.
15535         (libpthread): Add GLIBC_2.3.1.
15537         * include/signal.h: Add libc_hidden_proto for __sigwait, __sigwaitinfo,
15538         and __sigtimedwait.
15539         * signal/Versions: Add __sigtimedwait, __sigwait, and __sigwaitinfo.
15540         * sysdeps/unix/sysv/linux/sigtimedwait.c (__sigtimedwait): Add
15541         libc_hidden_def.
15542         * sysdeps/unix/sysv/linux/sigwait.c (__sigwait): Likewise.
15543         * sysdeps/unix/sysv/linux/sigwaitinfo.c (__sigwaitinfo): Likewise.
15545         * include/sys/msg.h: Declare __libc_msgrcv and __libc_msgsnd.
15546         * sysdeps/unix/sysv/linux/msgrcv.c (__msgrcv): Rename to __libc_msgrcv
15547         and make old name an alias.
15548         * sysdeps/unix/sysv/linux/msgsnd.c (__msgsnd): Rename to __libc_msgsnd
15549         and make old name an alias.
15550         * sysvipc/Versions (libc) [GLIBC_PRIVATE]: Add __libc_msgrcv and
15551         __libc_msgsnd.
15553         * include/sys/uio.h: Declare __libc_readv and __libc_writev.
15554         * misc/Versions (libc) [GLIBC_PRIVATE]: Add __libc_readv and
15555         __libc_writev.
15556         * sysdeps/generic/readv.c (__readv): Rename to __libc_readv and make
15557         old name an alias.
15558         * sysdeps/posix/readv.c: Likewise
15559         * sysdeps/unix/sysv/aix/readv.c: Likewise.
15560         * sysdeps/unix/sysv/linux/readv.c: Likewise.
15561         * sysdeps/generic/writev.c (__writev): Rename to __libc_writev and make
15562         old name an alias.
15563         * sysdeps/posix/writev.c: Likewise
15564         * sysdeps/unix/sysv/aix/writev.c: Likewise.
15565         * sysdeps/unix/sysv/linux/writev.c: Likewise.
15567         * include/sys/wait.h: Declare __waitid.
15568         * posix/Versions (libc) [GLIBC_PRIVATE]: Add __waitid.
15569         * sysdeps/generic/waitid.c (waitid): Rename to __waitid and make old
15570         name an alias.
15571         * sysdeps/posix/waitid.c: Likewise.
15572         * sysdeps/unix/sysv/aix/waitid.c: Likewise.
15574         * sysdeps/unix/sysv/linux/syscalls.list: Add creat syscall.
15576 2002-10-07  Jakub Jelinek  <jakub@redhat.com>
15578         * include/alloca.h (__libc_use_alloca, __libc_alloca_cutoff): New
15579         prototypes.
15580         (__MAX_ALLOCA_CUTOFF): Define.
15581         Include allocalim.h.
15582         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyname2_r,
15583         _nss_dns_gethostbyaddr_r): Use alloca or malloc to allocate
15584         host_buffer depending on __libc_use_alloca.
15585         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyname_r,
15586         _nss_dns_getnetbyaddr_r): Use alloca or malloc to allocate
15587         net_buffer depending on __libc_use_alloca.
15588         * resolv/res_query.c (res_nquery): Use alloca or malloc to allocate
15589         buf depending on __libc_use_alloca.
15590         * resolv/gethnamaddr.c (gethostbyname2, gethostbyaddr): Likewise.
15591         * stdio-common/vfprintf.c (vfprintf): Use __libc_use_alloca
15592         instead of hardcoded constants.
15593         Pass proper size argument to alloca and compute end for wide char
15594         version.
15595         * stdio-common/printf_fp.c (__printf_fp): Use __libc_use_alloca
15596         instead of hardcoded constants.
15597         * string/strcoll.c (strcoll): Likewise.
15598         * string/strxfrm.c (strxfrm): Likewise.
15599         * sysdeps/posix/readv.c (__readv): Likewise.
15600         * sysdeps/posix/writev.c (__writev): Likewise.
15601         * sysdeps/generic/allocalim.h: New file.
15603 2002-10-08  Roland McGrath  <roland@redhat.com>
15605         * configure.in (aux_missing warning): Change "too old" to
15606         "incompatible versions", since for autoconf it's "too new" right now.
15607         * configure: Regenerated.
15609         * configure.in (AUTOCONF): New check to set it.  Set to "no" if the
15610         one found doesn't work on our configure.in.
15611         * configure: Regenerated.
15612         * config.make.in (AUTOCONF): New substituted variable.
15613         * Makefile (autoconf-it-cvs): New canned sequence, broken out of ...
15614         (autoconf-it): ... here, use that instead of defining conditionally.
15615         Use $(AUTOCONF) instead of literal autoconf.
15616         [$(AUTOCONF) != no] (configure, %/configure): Protect these rules
15617         with this condition.
15618         * Make-dist (autoconf-it, configure, %/configure): Copy those changes.
15620 2002-10-08  Ulrich Drepper  <drepper@redhat.com>
15622         * Make-dist (dist): Cleanup a bit.  We are not interested in the
15623         14 char filename limit anymore.  Remove intermediate files and
15624         symlinks.
15626 2002-10-05  Ulrich Drepper  <drepper@redhat.com>
15628         * po/sk.po: Update from translation team.
15629         * po/tr.po: Likewise.
15630         * po/gl.po: Likewise.
15632 2002-10-05  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
15634         * elf/tls-macros.h: Fix SH version of macros so as to match ABI syntax.
15636 2002-10-03  Ulrich Drepper  <drepper@redhat.com>
15638         * version.h (RELEASE): Change to stable.
15640 2002-10-03  Jakub Jelinek  <jakub@redhat.com>
15642         * sysdeps/unix/sysv/linux/_exit.c (__syscall_exit,
15643         __syscall_exit_group): New prototypes.
15645 2002-10-03  Ulrich Drepper  <drepper@redhat.com>
15647         * glibc 2.3 released.
15650 See ChangeLog.13 for earlier changes.