* elf/rtld.c (_rtld_global_ro) [MAP_COPY]: Don't set _dl_unload_cache.
[glibc.git] / ChangeLog
blobe4d70355b513292ec1a2436c58b12026c181795c
1 2004-03-08  Jeroen Dekkers  <jeroen@dekkers.cx>
3         * elf/rtld.c (_rtld_global_ro) [MAP_COPY]: Don't set _dl_unload_cache.
5         * sysdeps/mach/hurd/dl-sysdep.c (_dl_important_hwcaps):
6         Don't use INTUSE with _dl_signal_error.
8 2004-03-08  Ulrich Drepper  <drepper@redhat.com>
10         * sysdeps/powerpc/powerpc64/dl-machine.c (_dl_reloc_overflow):
11         Don't use INTUSE with _dl_signal_error.
13 2004-03-08  Richard Henderson  <rth@redhat.com>
15         * sysdeps/alpha/soft-fp/ots_cvtxt.c (_OtsConvertFloatXT): Fix typo
16         in name.
18 2004-03-07  Ulrich Drepper  <drepper@redhat.com>
20         * config.h.in: Add entry for HAVE_LIBIDN.
21         * configure.in: If libidn add-on present define HAVE_LIBIDN.
22         * Versions.def: Add entry for libcidn.
24 2004-03-07  Simon Josefsson  <jas@extundo.com>
26         * resolv/netdb.h [__USE_GNU]: Add new AI_IDN ai_flags for addrinfo.
27         [__USE_GNU]: Add new error code EAI_IDN_ENCODE for getaddrinfo.
28         * sysdeps/posix/getaddrinfo.c: Add prototype for __idna_to_ascii_lz
29         and define IDNA_SUCCESS.
30         (gaih_inet): If ai_flags have AI_IDN, invoke __idna_to_ascii_lz.
31         (getaddrinfo): Fix EAI_BADFLAGS test to include AI_IDN.
32         All changes only applicable when glibc is compiled with the libidn
33         add-on.
35 2004-03-07  Ulrich Drepper  <drepper@redhat.com>
37         * sysdeps/unix/sysv/linux/ia64/dl-static.c (_dl_static_init): Call
38         _dl_lookup_symbol_x not _dl_lookup_symbol.
40         * sysdeps/powerpc/elf/rtld-global-offsets.sym: Adjust for moving
41         _dl_hwcap into _rtld_global_ro.
42         * sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S: Likewise.
43         * sysdeps/powerpc/powerpc32/fpu/setjmp-common.S: Likewise.
44         * sysdeps/powerpc/powerpc64/__longjmp-common.S: Likewise.
45         * sysdeps/powerpc/powerpc64/setjmp-common.S: Likewise.
46         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Likewise.
47         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Likewise.
48         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Likewise.
49         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: Likewise.
50         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: Likewise.
51         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Likewise.
53 2004-03-07  Andreas Schwab  <schwab@suse.de>
55         * elf/dl-sym.c: Include <dl-tls.h> only when USE_TLS.
57 2004-03-07  Andreas Jaeger  <aj@suse.de>
59         * iconvdata/iso-2022-cn-ext.c (BODY): Remove cast used as lvalue.
60         * iconvdata/tcvn5712-1.c (EMIT_SHIFT_TO_INIT): Likewise.
61         * iconvdata/euc-jisx0213.c (EMIT_SHIFT_TO_INIT): Likewise.
62         * iconvdata/shift_jisx0213.c (EMIT_SHIFT_TO_INIT): Likewise.
63         * iconvdata/tscii.c (EMIT_SHIFT_TO_INIT): Likewise.
65 2004-03-07  Ulrich Drepper  <drepper@redhat.com>
67         * sysdeps/generic/ldsodefs.h: Move _dl_initial_searclist,
68         _dl_hp_timing_overhead, _dl_init_all_dirs, and the content of
69         dl-procinfo.c from _rtld_global to _rtld_global_ro.
70         * elf/rtld.c: Adjust initializer for _rtld_global_ro.
71         * elf/dl-close.c: Use GLRO instead of GL where appropriate.
72         * elf/dl-libc.c: Likewise.
73         * elf/dl-load.c: Likewise.
74         * sysdeps/i386/dl-procinfo.h: Likewise.
75         * sysdeps/i386/i686/hp-timing.h: Likewise.
76         * sysdeps/ia64/hp-timing.h: Likewise.
77         * sysdeps/sparc/sparc32/sparcv9/hp-timing.h: Likewise.
78         * sysdeps/sparc/sparc64/hp-timing.h: Likewise.
79         * sysdeps/unix/sysv/linux/arm/dl-procinfo.h: Likewise.
80         * sysdeps/unix/sysv/linux/i386/dl-procinfo.h: Likewise.
81         * sysdeps/unix/sysv/linux/sparc/sparc32/dl-procinfo.h: Likewise.
82         * sysdeps/unix/sysv/linux/sparc/sparc64/dl-procinfo.h: Likewise.
83         * string/test-string.h: Define GLRO.
85 2004-03-06  Ulrich Drepper  <drepper@redhat.com>
87         * elf/dl-lookup.c: We don't need for specialized lookup functions.
88         Combining the functionality does not slow down relocation processing,
89         it might even speed it up a little.
90         * sysdeps/generic/ldsodefs.h: Adjust prototypes for lookup function.
91         Add only one function pointer to rtlf_global_ro.
92         * elf/do-lookup.h: Replace #ifs with ifs.
93         * elf/dl-libc.c: Adjust _dl_lookup_* callers.
94         * elf/dl-reloc.c: Likewise.
95         * elf/dl-runtime.c: Likewise.
96         * elf/dl-sym.c: Likewise.
97         * elf/rtld.c: Likewise.  Adjust _rtld_global_ro initialization.
99 2004-03-06  Richard Henderson  <rth@redhat.com>
101         * sysdeps/generic/ldsodefs.h (__rtld_local_attribute__,
102         __rtld_global_attribute__): Undef after use.
103         (_rtld_local_ro): Define __rtld_local_attribute__ with just hidden
104         if available.
106         * soft-fp/quad.h (union _FP_UNION_Q): Add longs structure.
107         * sysdeps/alpha/Implies: Add alpha/soft-fp.
108         * sysdeps/alpha/soft-fp/sfp-machine.h: Rewrite for GEM interface.
109         * sysdeps/alpha/Subdirs: New file.
110         * sysdeps/alpha/soft-fp/Makefile: New file.
111         * sysdeps/alpha/soft-fp/Versions: New file.
112         * sysdeps/alpha/soft-fp/local-soft-fp.h: New file.
113         * sysdeps/alpha/soft-fp/ots_add.c: New file.
114         * sysdeps/alpha/soft-fp/ots_cmp.c: new file.
115         * sysdeps/alpha/soft-fp/ots_cmpe.c: New file.
116         * sysdeps/alpha/soft-fp/ots_cvtqux.c: New file.
117         * sysdeps/alpha/soft-fp/ots_cvtqx.c: New file.
118         * sysdeps/alpha/soft-fp/ots_cvttx.c: New file.
119         * sysdeps/alpha/soft-fp/ots_cvtxq.c: New file.
120         * sysdeps/alpha/soft-fp/ots_cvtxt.c: New file.
121         * sysdeps/alpha/soft-fp/ots_div.c: New file.
122         * sysdeps/alpha/soft-fp/ots_mul.c: New file.
123         * sysdeps/alpha/soft-fp/ots_nintxq.c: New file.
124         * sysdeps/alpha/soft-fp/ots_sub.c: New file.
126 2004-03-06  Ulrich Drepper  <drepper@redhat.com>
128         * configure.in: Recognize --enable-bind-now.
129         * elf/dynamic-link.h (elf_get_dynamic_info): Allow bind-now flags
130         in ld.so.
131         * Makerules (LDFLAGS-c.so): Add -z now if so configured.
132         * elf/Makefile ($(objpfx)ld.so): Likewise.
133         * config.make.in (bind-now): New definition.
135         * elf/dl-fini.c (_dl_fini): Combine _dl_debug_printf calls.
136         * elf/rtld.c (print_statistics): Likewise.
138         * elf/dl-open.c: No need to pass any parameter to _dl_start_profile.
139         They are the same in both places.
140         * elf/dl-profile.c: Likewise.
141         * elf/rtld.c: Likewise.
142         * sysdeps/generic/ldsodefs.h: Likewise.
143         * elf/dl-support.c: Define _dl_profile_output variable.  Initialize it.
145 2004-03-05  Ulrich Drepper  <drepper@redhat.com>
147         * elf/Versions: Remove functions which are not exported anymore.
148         * dlfcn/dlerror.c: Call ld.so functions through GLSO.
149         * dlfcn/dlinfo.c: Likewise.
150         * elf/dl-close.c: Likewise.
151         * elf/dl-libc.c: Likewise.
152         * elf/dl-open.c: Likewise.
153         * elf/dl-sym.c: Likewise.
154         * sysdeps/generic/libc-start.c: Likewise.
155         * elf/dl-debug.c: Remove *_internal definition.  Don't use INTUSE for
156         functions which are not exported anymore.
157         * elf/dl-deps.c: Likewise.
158         * elf/dl-dst.h: Likewise.
159         * elf/dl-error.c: Likewise.
160         * elf/dl-fini.c: Likewise.
161         * elf/dl-init.c: Likewise.
162         * elf/dl-load.c: Likewise.
163         * elf/dl-lookup.c: Likewise.
164         * elf/dl-misc.c: Likewise.
165         * elf/dl-profile.c: Likewise.
166         * elf/dl-profstub.c: Likewise.
167         * elf/dl-reloc.c: Likewise.
168         * elf/dl-runtime.c: Likewise.
169         * elf/dl-version.c: Likewise.
170         * elf/do-lookup.h: Likewise.
171         * include/dlfcn.h: Likewise.
172         * sysdeps/generic/dl-cache.c: Likewise.
173         * sysdeps/generic/dl-fptr.c: Likewise.
174         * sysdeps/generic/dl-origin.c: Likewise.
175         * sysdeps/generic/dl-sysdep.c: Likewise.
176         * sysdeps/generic/dl-tls.c: Likewise.
177         * sysdeps/generic/ldsodefs.h: Likewise.
178         * sysdeps/i386/dl-tls.h: Likewise.
179         * sysdeps/unix/sysv/linux/dl-origin.c: Likewise.
180         * elf/rtld.c: Likewise.  Export function though _rtld_global_ro.
182         * sysdeps/generic/ldsodefs.h (struct rtld_global): Move
183         dl_debug_fd to rtld_global_ro.
184         * elf/rtld.c: Use GLRO instead of GL for dl_debug_fd.
185         * elf/dl-misc.c: Likewise.
187         * malloc/malloc.c: Don't call exported interface in the implementation.
189         * include/wctype.h: Add libc_hidden_proto for __towctrans.
190         * wctype/towctrans.c: Add libc_hidden_def.
192         * libio/memstream.c (open_memstream): Use _IO_init with INTUSE.
194         * posix/regexec.c (transit_state): Remove unused variable
195         next_state.
197         * posix/regcomp.c (init_dfa): Use __btowc instead of btowc.
199         * sysdeps/generic/ldsodefs.h: Define new structure rtld_global_ro.
200         Declare _rtld_global_ro and _rtld_local_ro.  Move members of
201         rtld_global structure into the new one if they are modified only
202         at startup time.  Define GLRO to access _rtld_global_ro.
203         * elf/Versions: Export _rtld_global_ro.
204         * elf/dl-close.c: Use GLRO instead of GL where appropriate.
205         * elf/dl-conflict.c: Likewise.
206         * elf/dl-deps.c: Likewise.
207         * elf/dl-dst.h: Likewise.
208         * elf/dl-error.c: Likewise.
209         * elf/dl-fini.c: Likewise.
210         * elf/dl-init.c: Likewise.
211         * elf/dl-load.c: Likewise.
212         * elf/dl-lookup.c: Likewise.
213         * elf/dl-minimal.c: Likewise.
214         * elf/dl-open.c: Likewise.
215         * elf/dl-profile.c: Likewise.
216         * elf/dl-reloc.c: Likewise.
217         * elf/dl-runtime.c: Likewise.
218         * elf/dl-support.c: Likewise.
219         * elf/dl-version.c: Likewise.
220         * elf/do-lookup.h: Likewise.
221         * elf/rtld.c: Likewise.
222         * sysdeps/generic/dl-cache.c: Likewise.
223         * sysdeps/generic/dl-origin.c: Likewise.
224         * sysdeps/generic/dl-sysdep.c: Likewise.
225         * sysdeps/generic/libc-start.c: Likewise.
226         * sysdeps/generic/dl-cache.c: Likewise.
227         * sysdeps/i386/dl-machine.h: Likewise.
228         * sysdeps/i386/setfpucw.c: Likewise.
229         * sysdeps/i386/fpu/fclrexcpt.c: Likewise.
230         * sysdeps/i386/fpu/fedisblexcpt.c: Likewise.
231         * sysdeps/i386/fpu/feenablxcpt.c: Likewise.
232         * sysdeps/i386/fpu/feholdexcpt.c: Likewise.
233         * sysdeps/i386/fpu/fesetround.c: Likewise.
234         * sysdeps/i386/fpu/fsetexcptflg.c: Likewise.
235         * sysdeps/i386/fpu/ftestexcept.c: Likewise.
236         * sysdeps/unix/sysv/linux/dl-execstat.c: Likewise.
237         * sysdeps/unix/sysv/linux/dl-librecon.h: Likewise.
238         * sysdeps/unix/sysv/linux/dl-origin.c: Likewise.
239         * sysdeps/unix/sysv/linux/dl-osinfo.h: Likewise.
240         * sysdeps/unix/sysv/linux/getclktck.c: Likewise.
241         * sysdeps/unix/sysv/linux/getpagesize.c: Likewise.
242         * sysdeps/unix/sysv/linux/init-first.c: Likewise.
243         * sysdeps/unix/sysv/linux/prof-freq.c: Likewise.
244         * sysdeps/unix/sysv/linux/i386/dl-librecon.h: Likewise.
245         * sysdeps/unix/sysv/linux/i386/sigaction.h: Likewise.
246         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Likewise.
247         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Likewise.
248         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: Likewise.
249         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Likewise.
250         * sysdeps/x86_64/dl-machine.h: Likewise.
251         * sysdeps/sparc/sparc64/dl-machine.h: Likewise.
252         * sysdeps/sparc/sparc32/dl-machine.h: Likewise.
253         * sysdeps/s390/s390-64/dl-machine.h: Likewise.
254         * sysdeps/s390/s390-32/dl-machine.h: Likewise.
255         * sysdeps/powerpc/powerpc64/dl-machine.h: Likewise.
256         * sysdeps/powerpc/powerpc32/dl-machine.c: Likewise.
257         * sysdeps/m68k/dl-machine.h: Likewise.
258         * sysdeps/ia64/dl-machine.h: Likewise.
259         * sysdeps/arm/dl-machine.h: Likewise.
260         * sysdeps/alpha/dl-machine.h: Likewise.
261         * generic/dl-fptr.c: Likewise.
262         * mach/hurd/dl-sysdep.c: Likewise.
263         * unix/sysv/linux/ia64/dl-static.c: Likewise.
264         * unix/sysv/linux/ia64/getpagesize.c: Likewise.
265         * unix/sysv/linux/m68k/getpagesize.c: Likewise.
266         * unix/sysv/linux/sparc/sparc32/getpagesize.c: Likewise.
268 2004-03-04  Ulrich Drepper  <drepper@redhat.com>
270         * sysdeps/generic/ldsodefs.h: Don't define _dl_name_match_p as inline.
271         * elf/dl-misc.c: Define _dl_name_match_p here.
272         * elf/dl-open.c (check_libc_caller): Don't use _dl_name_match_p.
274         * elf/dl-open.c (dl_open_worker): Check that _dl_open is called
275         from the right place.
277 2004-01-15  Paolo Bonzini  <bonzini@gnu.org>
279         * posix/regex.h (REG_STARTEND): Define.
280         * posix/regexec.c (regexec): Check for REG_STARTEND.
282 2004-02-29  Paolo Bonzini  <bonzini@gnu.org>
284         * posix/regexec.c (transit_state): Don't handle state == NULL.
285         Move state log and backreference management...
286         (merge_state_with_log): ... to this function.
287         (find_recover_state): New function.
288         (check_matching): Use find_recover_state to get a non-NULL
289         state when an invalid state is reached.  Compute the amount
290         of initial characters to be skipped less conservatively when
291         multi-byte character sets are in use.  Do not check
292         dfa->nbackref if the state log is NULL.  Initialize err.
293         (acquire_init_state_context): Expect err to be initialized.
294         Fix spacing.
296 2004-03-05  Jakub Jelinek  <jakub@redhat.com>
298         * sysdeps/sparc/sparc32/elf/start.S: Handle PIEs.
299         * sysdeps/sparc/sparc64/elf/start.S: Likewise.
301 2004-03-04  Jakub Jelinek  <jakub@redhat.com>
303         * iconv/iconv_prog.c (process_block): Handle omit_invalid.
304         If iconv returns EILSEQ with omit_invalid, continue converting
305         and return 1 if no other errors are seen.
306         (main): Set status to EXIT_FAILURE whenever process_* returns
307         nonzero, but only stop processing further files if iy returns
308         negative value.
310 2004-03-03  Jakub Jelinek  <jakub@redhat.com>
312         * sysdeps/unix/sysv/linux/x86_64/posix_fadvise.c: New file.
313         * sysdeps/unix/sysv/linux/x86_64/posix_fadvise64.c: New file.
314         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (posix_fadvise64):
315         Remove.
316         * sysdeps/unix/sysv/linux/alpha/posix_fadvise.c: New file.
317         * sysdeps/unix/sysv/linux/alpha/posix_fadvise64.c: New file.
318         * sysdeps/unix/sysv/linux/alpha/syscalls.list (posix_fadvise64):
319         Remove.
320         * sysdeps/unix/sysv/linux/ia64/posix_fadvise.c: New file.
321         * sysdeps/unix/sysv/linux/ia64/posix_fadvise64.c: New file.
322         * sysdeps/unix/sysv/linux/ia64/syscalls.list (posix_fadvise64):
323         Remove.
324         * sysdeps/unix/sysv/linux/powerpc/powerpc64/posix_fadvise.c: New file.
325         * sysdeps/unix/sysv/linux/powerpc/powerpc64/posix_fadvise64.c: New
326         file.
327         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Removed.
328         * sysdeps/unix/sysv/linux/s390/s390-64/posix_fadvise.c: New file.
329         * sysdeps/unix/sysv/linux/s390/s390-64/posix_fadvise64.c: New file.
330         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list
331         (posix_fadvise64): Remove.
332         * sysdeps/unix/sysv/linux/sparc/sparc64/posix_fadvise.c: New file.
333         * sysdeps/unix/sysv/linux/sparc/sparc64/posix_fadvise64.c: New file.
334         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list
335         (posix_fadvise64): Remove.
337 2004-03-02  Andreas Schwab  <schwab@suse.de>
339         * sysdeps/unix/sysv/linux/powerpc/powerpc32/xstat.c: New file.
340         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fxstat.c: New file.
341         * sysdeps/unix/sysv/linux/powerpc/powerpc32/lxstat.c: New file.
343 2004-03-01  Ulrich Drepper  <drepper@redhat.com>
345         * nscd/nscd_getgr_r.c (nscd_getgr_r): Add missing initialization
346         of return value.
347         * nscd/nscd_gethst_r.c (nscd_gethst_r): Likewise.
349         * sysdeps/unix/sysv/linux/kernel-features.h: Add support for
350         __ASSUME_GETDENTS32_D_TYPE.
351         * sysdeps/unix/sysv/linux/getdents.c: For 2.6.4+ kernels use
352         getdents syscall again since it provides d_type information.
354 2004-02-29  Andreas Jaeger  <aj@suse.de>
356         * manual/install.texi (Tools for Compilation): Autoconf 2.53 is
357         required.
358         (Supported Configurations): Add x86_64-*-linux.
360 2004-02-28  Ulrich Drepper  <drepper@redhat.com>
362         * sysdeps/i386/i686/memcmp.S: Move table to .rodata.  Patch by HJ Lu.
364 2004-02-27  Jakub Jelinek  <jakub@redhat.com>
366         * elf/rtld.c (dl_main): Adjust l->l_ld of the vDSO by l->l_addr.
367         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Only set
368         GL(dl_sysinfo) if non-zero.
370         * sysdeps/unix/sysv/linux/sysconf.c: Include stdlib.h.
372 2004-02-26  Ulrich Drepper  <drepper@redhat.com>
374         * nss/getXXbyYY_r.c: Pass result also to the nscd_* function.  Don't
375         set *result here.
376         * nscd/nscd_proto.h: Add new argument for pointer to result pointer
377         to all nscd_* functions.
378         * nscd/nscd_getgr_r.c (nscd_getgr_r): Add new parameter.  Store result
379         pointer in the address provided by the new parameter if successful.
380         Otherwise store NULL.  Return zero if no entry found.
381         (__nscd_getgrnam_r, __nscd_getgrgid_r): Add new parameter and pass
382         it on.
383         * nscd/nscd_gethst_r.c (nscd_gethst_r): Add new parameter.  Store
384         result pointer in the address provided by the new parameter if
385         successful. Otherwise store NULL.  Return zero if no entry found.
386         (__nscd_gethostbyname_r, __nscd_gethostbyname2_r,
387         __nscd_gethostbyaddr_r): Add new parameter and pass it on.
388         * nscd/nscd_getpw_r.c (nscd_getpw_r): Add new parameter.  Store result
389         pointer in the address provided by the new parameter if successful.
390         Otherwise store NULL.  Return zero if no entry found.
391         (__nscd_getpwnam_r, __nscd_getpwuid_r): Add new parameter and pass
392         it on.
394 2004-02-26  Jakub Jelinek  <jakub@redhat.com>
396         * sysdeps/unix/sysv/linux/clock_settime.c (SYSDEP_SETTIME): Set
397         retval to -1 on error.
399 2004-02-26  Ulrich Drepper  <drepper@redhat.com>
401         * stdlib/canonicalize.c (__realpath): Simplify.
403         * posix/regcomp.c (parse_expression): Avoid duplication in calls
404         to build_charclass_op.
406 2004-02-26  Jakub Jelinek  <jakub@redhat.com>
408         * elf/rtld.c (dl_main): Correctly set up l_map_end and l_addr
409         in vDSO's link_map, don't assume l_addr == 0.  Set GL(dl_sysinfo)
410         from e_entry only if AT_SYSINFO not present and adjust by l_addr.
411         Take vDSO into account when inserting rtld into _dl_loaded chain.
413 2004-02-26  Ulrich Drepper  <drepper@redhat.com>
415         * sunrpc/svcauth_des.c (authdes_getucred): Removed fixed limit on
416         number of groups in the cache.  Relax the disconnect between the
417         interface of authdes_getucred and netname2user a bit.
418         * sunrpc/auth_unix.c (authunix_create_default): Don't allocate
419         huge arrays on the stack.
421         * sysdeps/unix/sysv/linux/sysconf.c (__sysconf): Use the official
422         not cancelable interfaces.
424 2004-02-24  Arnold D. Robbins  <arnold@skeeve.com>
426         * posix/regex_internal.c (build_wcs_upper_buffer): Enclose
427         `offsets_needed' label in `#ifdef _LIBC' to silence `unused label'
428         compiler warning.
430 2004-02-24  Nelson H.F. Beebe  <beebe@math.utah.edu>
432         * posix/regcomp.c (parse_expression): Add cast to (const unsigned
433         char *) in calls to `build_charclass_op'.
434         * posix/regex_internal.c (build_wcs_buffer): Add cast to char* in call
435         to `wcrtomb'.
436         * posix/regex_internal.h (bitset_not, bitset_merge, bitset_not_merge,
437         bitset_mask, re_string_char_size_a, re_string_wchar_at,
438         re_string_elem_size_at): Change to use prototypes.
439         (re_string_char_size_at, re_string_wchar_at,
440         re_string_elem_size_at): Declare as `internal_function'.
442 2004-02-25  Ulrich Drepper  <drepper@redhat.com>
444         * sysdeps/unix/sysv/linux/sysconf.c (__sysconf): Handle
445         _SC_NGROUPS_MAX.
447 2004-02-23  Jakub Jelinek  <jakub@redhat.com>
449         * wcsmbs/mbrtowc.c (__mbrtowc): Cap s + n at the end of address space.
450         * stdlib/Makefile (tests): Add testmb2.
451         (testmb2-ENV): New.
452         * stdlib/testmb2.c: New test.
454 2004-02-23  Jakub Jelinek  <jakub@redhat.com>
456         * sysdeps/posix/getaddrinfo.c (gaih_inet): If _res has not been
457         inited yet, try to init it before saving old _res.options.
458         * posix/Makefile (xtests): Add bug-ga2.
459         (generated): Add bug-ga2.mtrace and bug-ga2-mem.
460         (xtests): Depend on bug-ga2-mem.
461         ($(objpfx)bug-ga2-mem, bug-ga2-ENV): New.
462         * posix/bug-ga2.c: New test.
464 2004-02-22  Ulrich Drepper  <drepper@redhat.com>
466         * sysdeps/unix/sysv/linux/i386/posix_fadvise64.S: Pop register
467         content also in case of an overflow in the parameter.
468         Reported by Momchil Velikov <velco@fadata.bg>.
470 2004-02-21  Ulrich Drepper  <drepper@redhat.com>
472         * elf/dynamic-link.h (elf_get_dynamic_info): Recognize DF_1_NOW.
473         In ld.so, neither DT_FLAGS nor DT_FLAGS_1 must be used.
475 2004-02-21  Andreas Jaeger  <aj@suse.de>
477         * posix/bug-ga1.c: Include <string.h> for memset prototype.
479         * elf/dl-load.c (_dl_map_object_from_fd): Fix casts used as lvalue.
481         * iconv/gconv_simple.c (internal_ucs4le_loop): Remove cast used as
482         lvalue.
484 2004-02-19  Carlos O'Donell  <carlos@baldric.uwo.ca>
486         * sysdeps/generic/framestate.c [__USING_SJLJ_EXCEPTIONS__]
487         (__frame_state_for): Set frame_State_for to abort if the compiler
488         is using sjlj.
489         * sysdeps/generic/unwind-dw2.c: Allow sjlj enabled compilers to
490         build the code by removing __USING_SJLJ_EXCEPTIONS__ wrapper.
492 2004-02-20  Alexandre Oliva  <aoliva@redhat.com>
494         * resolv/Versions: Remove semicolon from the end of libresolv's
495         GLIBC_2.3.2 version block.
496         * Versions.def (libresolv): Add GLIBC_2.3.2.
498 2004-02-19  Carlos O'Donell  <carlos@baldric.uwo.ca>
500         * sysdeps/hppa/fpu/feholdexcpt.c (feholdexcept): Fix order of fp
501         status register loads.
503 2004-02-20  Thorsten Kukuk  <kukuk@suse.de>
505         * nscd/nscd.c (termination_handler): Use _exit instead of exit
507 2004-02-20  Ulrich Drepper  <drepper@redhat.com>
509         * nscd/nscd.c (main): Report fork errors.
511         * dlfcn/dlsym.c: Get ld.so loading lock before the call into ld.so.
512         * dlfcn/dlvsym.c: Likewise.
513         * elf/dl-addr.c: Get loading lock while using _dl_loaded data.
514         * elf/dl-fini.c: Likewise.
515         Patch by Shunichi Sagawa <s-sagawa@jp.fujitsu.com>.
517 2004-02-20  Jakub Jelinek  <jakub@redhat.com>
519         * sysdeps/sparc/sparc32/fpu/libm-test-ulps: Add ulps for the
520         2003-11-27 atan2 test.
522         * sysdeps/powerpc/fpu/bits/mathinline.h (lrint, lrintf): Protect
523         with #ifndef __powerpc64__.
525         * sysdeps/generic/ldsodefs.h (_dl_argv, _dl_argv_internal): If
526         DL_ARGV_NOT_RELRO defined, don't use attribute_relro.
527         * sysdeps/alpha/dl-machine.h (DL_ARGV_NOT_RELRO): Remove.
528         * sysdeps/ia64/dl-machine.h (DL_ARGV_NOT_RELRO): Remove.
529         * sysdeps/sparc/sparc32/dl-machine.h (DL_ARGV_NOT_RELRO): Remove.
530         * sysdeps/sparc/sparc64/dl-machine.h (DL_ARGV_NOT_RELRO): Remove.
531         * sysdeps/alpha/dl-sysdep.h: New file.
532         * sysdeps/ia64/dl-sysdep.h: New file.
533         * sysdeps/sparc/dl-sysdep.h: New file.
535 2004-02-19  Jakub Jelinek  <jakub@redhat.com>
537         * sysdeps/sparc/sparc32/bits/atomic.h: Add __make_section_unallocated
538         for .gnu.linkonce.b.__sparc32_atomic_locks section.
539         (__sparc32_atomic_locks): Add __sec_comment at the end of section name.
541 2004-02-19  Steven Munroe  <sjmunroe@us.ibm.com>
543         * sysdeps/generic/libc-start.c [LIBC_START_DISABLE_INLINE] (STATIC):
544         Define as static.
545         * sysdeps/powerpc/elf/libc-start.c: Define LIBC_START_DISABLE_INLINE
546         because gcc does not allow inline of functions that call setjmp.
548 2004-02-19  Steven Munroe  <sjmunroe@us.ibm.com>
550         * sysdeps/powerpc/powerpc64/Makefile: Use -finline-limit.
552 2004-02-19  Jakub Jelinek  <jakub@redhat.com>
554         * elf/rtld.c (_dl_argv): If DL_ARGV_NOT_RELRO defined, don't
555         use attribute_relro for _dl_argv.
556         * sysdeps/alpha/dl-machine.h (DL_ARGV_NOT_RELRO): Define.
557         * sysdeps/ia64/dl-machine.h (DL_ARGV_NOT_RELRO): Define.
558         * sysdeps/sparc/sparc32/dl-machine.h (DL_ARGV_NOT_RELRO): Define.
559         * sysdeps/sparc/sparc64/dl-machine.h (DL_ARGV_NOT_RELRO): Define.
561 2004-02-19  Ulrich Drepper  <drepper@redhat.com>
563         * libio/iopopen.c (_IO_new_proc_open): It's not kosher to use
564         vfork instead of fork.
565         * libio/oldiopopen.c (_IO_old_proc_open): Likewise.
567         * sysdeps/unix/clock_settime.c (clock_settime): Fix typo which
568         prevented system-dependent handling from being used.
570 2004-02-18  Carlos O'Donell  <carlos@baldric.uwo.ca>
572         * test-skeleton.c (main): If set, use environment variable
573         TIMEOUTFACTOR to scale test TIMEOUT.
575 2004-02-18  Ulrich Drepper  <drepper@redhat.com>
577         * nscd/nscd_conf.c: Include <stdio_ext.h>.
579 2004-02-16  Ulrich Drepper  <drepper@redhat.com>
581         * stdlib/test-canon.c (do_test): Test realpath(,NULL) in the loop
582         as well.
584         * stdlib/canonicalize.c (__realpath): Remove unnecessary copy
585         operations.
587         * nscd/nscd_conf.c (nscd_parse_file): Little optimization.
589 2004-02-14  Thorsten Kukuk  <kukuk@suse.de>
591         * nscd/dbg_log.c (set_logfile): Only save name of logfile,
592         don't open it.
593         (init_logfile): New function, open logfile if requested.
594         * nscd/dbg_log.h: Adjust protoype for set_logfile, add init_logfile.
595         * nscd/nscd.c (main): Call init_logfile after forking in background.
596         * nscd/nscd_conf.c (nscd_parse_file): Adjust for new set_logfile.
598 2004-02-16  Ulrich Drepper  <drepper@redhat.com>
600         * elf/rtld.c (dl_main): Don't fail execution if file named in
601         ld.so.preload is not present [BZ #18].
603         * sysdeps/posix/getaddrinfo.c (getaddrinfo): Undo unintended
604         changes in last patch.
606         * posix/regexec.c (transit_state): Fix typo in commented-out code
607         [BZ #6].
609         * sysdeps/posix/getaddrinfo.c (match_prefix): Correctly match
610         partial bytes [BZ #24].
611         * posix/Makefile (tests): Add bug-ga1.
612         * posix/bug-ga1.c: New file.
614 2004-02-13  Steven Munroe  <sjmunroe@us.ibm.com>
616         * sysdeps/powerpc/powerpc64/__longjmp-common.S: New file.
617         * sysdeps/powerpc/powerpc64/__longjmp.S [NOT_IN_libc](__longjmp):
618         Non-versioned __longjmp for rtld-__longjmp.
619         [!NOT_IN_libc](__vmx__longjmp): Add VMX reg support and define as
620         default version of __longjmp.
621         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)]
622         (__novmx__longjmp): Original version of __longjmp.
623         * sysdeps/powerpc/powerpc64/bsd-_setjmp.S [NOT_IN_libc](_setjmp):
624         Non-versioned _setjmp for rtld-_setjmp.
625         [!NOT_IN_libc](__vmx_setjmp): Branch to __vmx__sigsetjmp and define
626         as default version of _setjmp.
627         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)]
628         (__novmx_setjmp): Original version of _setjmp.
629         * sysdeps/powerpc/powerpc64/bsd-setjmp.S (__vmxsetjmp): Branch to
630         __vmx__sigsetjmp and define as default version of setjmp.
631         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)]
632         (__novmxsetjmp): Original version of setjmp.
633         * sysdeps/powerpc/powerpc64/setjmp-common.S: New file.
634         * sysdeps/powerpc/powerpc64/setjmp.S [NOT_IN_libc](__setjmp):
635         Non-versioned __sigsetjmp for rtld-setjmp.
636         [!NOT_IN_libc](__vmx__sigsetjmp): Add VMX reg support and define
637         as default version of __sigsetjmp.
638         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)]
639         (__novmx__sigsetjmp): Original version of __sigsetjmp.
641         * sysdeps/powerpc/powerpc32/__longjmp-common.S: New File
642         * sysdeps/powerpc/powerpc32/__longjmp.S [NOT_IN_libc](__longjmp):
643         Non-versioned __longjmp for rtld-__longjmp.
644         [!NOT_IN_libc](__vmx__longjmp): Add VMX reg support and define as
645         default version of __longjmp.
646         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)]
647         (__novmx__longjmp): Original version of __longjmp.
648         * sysdeps/powerpc/powerpc32/bsd-_setjmp.S [NOT_IN_libc](_setjmp):
649         Non-versioned _setjmp for rtld-_setjmp.
650         [!NOT_IN_libc](__vmx_setjmp): Branch to __vmx__sigsetjmp and define
651         as default version of _setjmp.
652         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)]
653         (__novmx_setjmp): Original version of _setjmp.
654         * sysdeps/powerpc/powerpc32/bsd-setjmp.S (__vmxsetjmp): Branch to
655         __vmx__sigsetjmp and define as default version of setjmp.
656         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)]
657         (__novmxsetjmp): Original version of setjmp.
658         * sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S: New file.
659         * sysdeps/powerpc/powerpc32/fpu/__longjmp.S [NOT_IN_libc](__longjmp):
660         Non-versioned __longjmp for rtld-__longjmp.
661         [!NOT_IN_libc](__vmx__longjmp): Add VMX reg support and define as
662         default version of __longjmp.
663         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)]
664         (__novmx__longjmp): Original version of __longjmp.
665         * sysdeps/powerpc/powerpc32/fpu/setjmp-common.S: New file.
666         * sysdeps/powerpc/powerpc32/fpu/setjmp.S [NOT_IN_libc](__setjmp):
667         Non-versioned __sigsetjmp for rtld-setjmp.
668         [!NOT_IN_libc](__vmx__sigsetjmp): Add VMX reg support and define
669         as default version of __sigsetjmp.
670         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)]
671         (__novmx__sigsetjmp): Original version of __sigsetjmp.
672         * sysdeps/powerpc/powerpc32/setjmp-common.S: New file.
673         * sysdeps/powerpc/powerpc32/setjmp.S [NOT_IN_libc](__setjmp):
674         Non-versioned __sigsetjmp for rtld-setjmp.
675         [!NOT_IN_libc](__vmx__sigsetjmp): Add VMX reg support and define
676         as default version of __sigsetjmp.
677         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)]
678         (__novmx__sigsetjmp): Original version of __sigsetjmp.
680         * sysdeps/powerpc/Dist: New File.
681         * sysdeps/powerpc/Makefile (sysdep_routines): Add novmx-longjmp.c
682         and novmx-sigjmp.c
683         * sysdeps/powerpc/Versions (libc): To GLIBC_2.3_4 add _longjmp,
684         __sigsetjmp, _setjmp, longjmp, and setjmp. To GLIBC_PRIVATE add
685         __novmx__libc_longjmp, __novmx__libc_siglongjmp, __vmx__libc_longjmp,
686         and __vmx__libc_siglongjmp.
687         * sysdeps/powerpc/bits/setjmp.h: Define JB_VRSAVE, JB_VRS, and adjust
688         JB_SIZE to add VMX regs to __jmp_buf.
689         * sysdeps/powerpc/longjmp.c: New file.
690         * sysdeps/powerpc/novmxsetjmp.h: New file.
691         * sysdeps/powerpc/novmx-longjmp.c: New file.
692         * sysdeps/powerpc/novmx-sigjmp.c: New file.
693         * sysdeps/powerpc/sigjmp.c: New file.
695 2004-02-13  Jakub Jelinek  <jakub@redhat.com>
697         * sysdeps/powerpc/powerpc64/fpu/s_llrintf.c (__lrintf, lrintf):
698         Define.
699         (__lrintl, lrintl): Remove.
700         * sysdeps/powerpc/powerpc64/fpu/s_llrint.c (__lrint): Fix a typo in
701         strong_alias spelling.
702         * sysdeps/powerpc/powerpc64/fpu/s_lrintf.S: Remove.
703         * sysdeps/powerpc/powerpc64/fpu/s_lrint.S: New file.
705 2004-02-12  Ulrich Drepper  <drepper@redhat.com>
707         * posix/getopt.h: Add some non-gcc support.  Patch by Aharon Robbins.
709 2004-02-12  Mark Brown  <bmark@us.ibm.com>
711         * sysdeps/ia64/fpu/e_fmodf.S: Added text of Intel license.
713 2004-02-12  Jakub Jelinek  <jakub@redhat.com>
715         * sysdeps/powerpc/fpu/s_lrint.c: Move to...
716         * sysdeps/powerpc/powerpc32/fpu/s_lrint.c: ... here.
717         * sysdeps/powerpc/fpu/s_llrint.c: Move to...
718         * sysdeps/powerpc/powerpc32/fpu/s_llrint.c: ... here.
719         * sysdeps/powerpc/fpu/s_llrintf.c: Move to...
720         * sysdeps/powerpc/powerpc32/fpu/s_llrintf.c: ... here.
721         * sysdeps/powerpc/powerpc64/fpu/s_llrint.c: New file.
722         * sysdeps/powerpc/powerpc64/fpu/s_lrintf.S: New file.
723         * sysdeps/powerpc/powerpc64/fpu/s_llrintf.c: New file.
725         * math/libm-test.inc (lrint_test): Add new test.
726         (llrint_test, lround_test, llround_test): Likewise.
727         * sysdeps/ieee754/ldbl-128/s_lroundl.c (__lroundl): Fix special case
728         with result taking up 48 bits.
729         * sysdeps/ieee754/ldbl-128/s_lrintl.c (__lrintl): Likewise.
730         * sysdeps/ieee754/ldbl-128/s_llroundl.c (__llroundl): Likewise.
731         * sysdeps/ieee754/ldbl-96/s_llrintl.c (__llrintl): Fix special case
732         with result taking up 31 bits.
734 2004-02-12  Ulrich Drepper  <drepper@redhat.com>
736         * locale/programs/locale.c (show_locale_vars): Don't print a value
737         for LANG if it is not set.
739 2004-02-11  Jakub Jelinek  <jakub@redhat.com>
741         * posix/regexec.c (check_node_accept_bytes): Return 0 if char_len is 0.
742         (find_collation_sequence_value): Don't look beyond end of
743         SYMB_EXTRAMB table.
744         * posix/Makefile (tests): Add bug-regex23.
745         (bug-regex23-ENV): New.
746         * posix/bug-regex23.c: New file.
748 2004-02-10  Roland McGrath  <roland@frob.com>
750         * sysdeps/mach/hurd/times.c (__times): Use union instead of cast.
751         * sysdeps/mach/hurd/sendmsg.c (__libc_sendmsg): Likewise.
753         * sysdeps/mach/hurd/configure.in: Move `retcode' check to ...
754         * sysdeps/mach/configure.in: ... here.
755         * sysdeps/mach/hurd/configure: Regenerated.
756         * sysdeps/mach/configure.in: Regenerated.
758 2004-02-10  Ulrich Drepper  <drepper@redhat.com>
760         * sysdeps/generic/setenv.c (__add_to_environ): Don't let the
761         temporary copies of the variables accumulate on the stack.
763         * stdio-common/_i18n_number.h: Finish last patch.
765 2004-02-09  Ulrich Drepper  <drepper@redhat.com>
767         * sysdeps/i386/i686/memcmp.S: New file.  Patch by HJ Lu.
769 2003-12-05  Roland McGrath  <roland@redhat.com>
771         * sysdeps/unix/sysv/linux/i386/syscalls.list: Turn vm86 into vm86old
772         for vm86@GLIBC_2.0 version.  Add new vm86@GLIBC_2.3.4.
773         * sysdeps/unix/sysv/linux/i386/Versions (libc: GLIBC_2.3.4): Add vm86.
774         * sysdeps/unix/sysv/linux/i386/sys/vm86.h: Update vm86 prototype.
776 2004-02-09  Ulrich Drepper  <drepper@redhat.com>
778         * nis/ypclnt.c: Cleanup last patch.
780 2004-02-09  Andreas Jaeger  <aj@suse.de>
782         * configure.in: Remove glibcbug creation.
783         * configure: Regenerated.
785         * sysdeps/x86_64/fpu/s_copysignf.S: Only load 4 bytes.
787 2004-02-03  Thorsten Kukuk  <kukuk@suse.de>
789         * nis/ypclnt.c (__yp_bind_client_create): New, small chunk
790         of duplicated code from __yp_bind.
791         (__yp_bind_file): New, binding dir code from __yp_bind.
792         (__yp_bind_client_create): New, ypbind code from __yp_bind.
793         (__ypclnt_call): New, make NIS query.
794         (do_ypcall): At first use cached data, then try data from
795         binding directory, after this ask ypbind for a working ypserv.
796         Based on a patch from Jeff Bastian <jmbastia@ti.com> and
797         Chris Barrera <cbarrera@ti.com>
799 2004-01-19  Roland McGrath  <roland@redhat.com>
801         * configure.in: Don't set CCVERSION.
802         * configure: Regenerated.
803         * glibcbug.in: File removed.
804         * Makefile (install-bin-script): Remove glibcbug.
805         (glibcbug): Target removed.
806         (distclean-1): Don't rm glibcbug.
807         (distribute): Remove glibcbug.in.
809 2004-02-09  Roland McGrath  <roland@redhat.com>
811         * time/tzset.c (tzset_internal): Cap hour in POSIX $TZ rule format to
812         24, not 23.
814 2004-01-29  Roland McGrath  <roland@redhat.com>
816         * io/ftwtest-sh: Use $tmp consistently, not literal /tmp.
817         Reported by Kevin P. Fleming <kpfleming@backtobasicsmgmt.com>.
819 2004-02-09  Ulrich Drepper  <drepper@redhat.com>
821         * libio/genops.c (_IO_cleanup): Do not use locking when flushing
822         the buffers.  Some thread might be using a stream.
824 2004-02-09  Andreas Jaeger  <aj@suse.de>
826         * sysdeps/x86_64/memcpy.S: Fix alignment [BZ #7].
827         Patch by Jan Beulich <jbeulich@novell.com>.
829 2004-02-09  Andreas Schwab  <schwab@suse.de>
831         * include/rpc/rpc.h: Declare thread variables with their correct type.
832         * sunrpc/clnt_perr.c: Don't cast thread variables.
833         * sunrpc/clnt_raw.c: Likewise.
834         * sunrpc/clnt_simp.c: Likewise.
835         * sunrpc/key_call.c: Likewise.
836         * sunrpc/svcauth_des.c: Likewise.
837         * sunrpc/svc.c: Likewise.
838         * sunrpc/svc_raw.c: Likewise.
839         * sunrpc/svc_simple.c: Likewise.
841 2004-02-09  Ulrich Drepper  <drepper@redhat.com>
843         * stdio-common/_i18n_number.h: Support printing localized decimal
844         point and thousand separator.
845         * wctype/wctrans.c: Add __wctrans alias.
846         * include/wctype.h: Declare __wctrans.
847         Based on a patch by Hamed Malek.
849         * sysdeps/i386/fpu/fclrexcpt.c (__feclearexcept): Don't touch bits
850         other than the status bits [BZ #10].
852 2004-02-08  Ulrich Drepper  <drepper@redhat.com>
854         Make stream locking operations really work.
855         * misc/Makefile (CFLAGS-mntent_r.c): Define.
856         * shadow/Makefile (CFLAGS-fgetspent_r.c): Define.
857         (CFLAGS-putspent.c): Define.
858         * grp/Makefile (CFLAGS-fgetgrent_r.c): Define.
859         (CFLAGS-putgrent.c): Define.
860         * pwd/Makefile (CFLAGS-fgetpwent_r.c): Define.
861         Reported by Shunichi Sagawa <s-sagawa@jp.fujitsu.com>.
863         * elf/dl-load.c (lose): Use noinline attribute instead of silly
864         alloca to prevent inlining.
865         * elf/dl-runtime.c (fixup): Likewise.
866         (profile_fixup): Likewise.
868         * stdio-common/printf_size.c: Undo parts of patch from 2000-2-11.
869         Initialize width correctly.
871 2004-02-07  Andreas Jaeger  <aj@suse.de>
873         * iconv/gconv_simple.c (ucs4le_internal_loop): Remove cast used as
874         lvalue.
875         (internal_ucs4le_loop_single): Likewise.
876         (ucs4_internal_loop): Likewise.
877         (BODY): Likewise.
878         (internal_ucs4_loop_single): Likewise.
879         * iconvdata/iso8859-1.c (BODY): Likewise.
880         * iconvdata/cp1255.c (EMIT_SHIFT_TO_INIT): Likewise.
881         * iconvdata/cp1258.c (EMIT_SHIFT_TO_INIT): Likewise.
882         * iconvdata/gb18030.c (BODY): Likewise.
883         * iconvdata/armscii-8.c (BODY): Likewise.
884         * stdlib/msort.c (msort_with_tmp): Likewise.
886         * iconv/gconv_open.c (__gconv_open): Remove conditional expression
887         as lvalue.
889 2004-02-06  Steven Munroe  <sjmunroe@us.ibm.com>
891         * sysdeps/powerpc/powerpc32/dl-machine.c: Declare __cache_line_size as
892         weak extern.
893         (__elf_machine_runtime_setup): Invalidate the instruction cache over
894         the whole range of the PLT.
896 2004-02-06  Andreas Schwab  <schwab@suse.de>
898         * posix/regcomp.c (build_range_exp): Fix off-by-one.
899         (parse_bracket_exp): Likewise.
901 2004-02-05  Ulrich Drepper  <drepper@redhat.com>
903         * sysdeps/unix/sysv/linux/powerpc/powerpc32/kernel_stat.h: Define
904         _HAVE_STAT_NSEC and _HAVE_STAT64_NSEC.  Patch by Anton Blanchard.
906 2004-02-02  Paolo Bonzini  <bonzini@gnu.org>
908         * posix/regexec.c (check_matching): Add P_MATCH_FIRST parameter.
909         (re_search_internal): Pass new parameter to check_matching.
910         (check_matching): Unless a parenthesized group is found at the
911         beginning of the regexp, advance P_MATCH_FIRST until we entered
912         a state different from the initial state.
914 2004-02-01  Ulrich Drepper  <drepper@redhat.com>
916         * math/libm-test.inc (lround_test): Add new test.
917         (llround_test): Likewise.
918         (lrint_test): Likewise.
919         (llrint_test): Likewise.
920         * sysdeps/ieee754/dbl-64/s_lround.c (__lround): Fix special case
921         with result taking up 20 bits.
922         * sysdeps/ieee754/dbl-64/s_lrint.c (__lrint): Likewise.
923         * sysdeps/ieee754/dbl-64/s_llrint.c (__llrint): Likewise..
924         * sysdeps/ieee754/ldbl-96/s_lroundl.c (__lroundl): Fix special
925         case with result taking up 31 bits.
926         * sysdeps/ieee754/ldbl-96/s_lrintl.c (__lrintl): Likewise.
928         * po/nl.po: Update from translation team.
930 2004-01-30  Andreas Schwab  <schwab@suse.de>
932         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h (ILL_BREAK,
933         FPE_DECOVF, FPE_DECDIV, FPE_DECERR, FPE_INVASC, FPE_INVDEC,
934         SEGV_PSTKOVF): Remove underscore prefix from definition.
936 2004-01-28  Paolo Bonzini  <bonzini@gnu.org>
938         Merge regex changes in gawk.
939         * posix/regcomp.c (build_range_exp) [!_LIBC]: Check validity
940         of collation elements.
941         * posix/regex.c: Include limits.h.
942         * posix/regex.h: Document REG_ECOLLATE correctly.
943         * posix/regex_internal.h [!_LIBC && !ENABLE_NLS]: Disable NLS.
945 2004-01-24  Andreas Jaeger  <aj@suse.de>
947         * malloc/obstack.h: Import gnulib version.
948         * malloc/obstack.c: Likewise.
950 2004-01-26  David Mosberger  <davidm@hpl.hp.com>
952         * elf/link.h (struct dl_phdr_info): Fix typo in comment.
953         * elf/rtld.c (dl_main): After incrementing dl_nloaded, also
954         increment dl_load_adds.
955         * elf/dl-iteratephdr.c (__dl_iterate_phdr): Replace GL(dl_load_subs)
956         with equivalent GL(dl_load_adds - GL(dl_nloaded).
957         (dl_iterate_phdr): Likewise.
958         * elf/dl-close.c (_dl_close): Delete increment of GL(dl_load_subs).
959         * elf/dl-support.c: Remove global variable _dl_load_subs.
960         * sysdeps/generic/ldsodefs.h (struct rtld_global): Remove
961         _dl_load_subs member.
963 2004-01-27  Jakub Jelinek  <jakub@redhat.com>
965         * elf/rtld.c (_dl_start_final): Don't set l_relro_* here.
966         (_dl_start): And neither here.
967         (dl_main): Set GL(dl_loaded)->l_relro_* and
968         GL(dl_rtld_map)->l_relro_*.
970 2004-01-23  David Mosberger  <davidm@hpl.hp.com>
972         * sysdeps/generic/ldsodefs.h (struct rtld_global): Add members
973         _dl_load_adds and _dl_load_subs.
974         * elf/dl-support.c (_dl_load_adds): New variable.
975         (_dl_load_subs): Likewise.
976         * elf/dl-object.c (_dl_new_object): Increment dl_load_adds.
977         * elf/dl-close.c (_dl_close): Increment dl_load_subs.
978         * elf/link.h (struct dl_phdr_info): Add members dlpi_adds and
979         dlpi_subs.
980         * include/link.h: Likewise.
981         * elf/dl-iteratephdr.c (__dl_iterate_phdr): Initialize dlpi_adds
982         and dlpi_subs members.
983         (dl_iterate_phdr): Likewise.
984         * elf/tst-dlmodcount.c: New file.
985         * elf/Makefile (distribute): Mention tst-dlmodcount.c.
986         (tests): If build-shared, mention tst-dlmodcount.
987         ($(objpfx)tst-dlmodcount): If build-shared, build and
988         run tst-dlmodcount.
990 2004-01-22  Jakub Jelinek  <jakub@redhat.com>
992         * elf/dl-reloc.c (_dl_relocate_object): Move PT_GNU_RELRO protection
993         into...
994         (_dl_protect_relro): New routine.
995         * sysdeps/generic/ldsodefs.h (_dl_protect_relro): New prototype.
996         * elf/rtld.c (_dl_start_final): Copy l_relro_addr and l_relro_size
997         from bootstrap_map.
998         (_dl_main): Don't set GL(_dl_loaded)->l_relro_{addr,size} here.
999         Call _dl_protect_relro for libraries if prelinking.
1001 2004-01-23  Richard Henderson  <rth@redhat.com>
1003         * Versions.def (libm): Replace GLIBC_2.3.3 with GLIBC_2.3.4.
1004         * sysdeps/alpha/fpu/Versions (libm): Likewise.
1005         * sysdeps/alpha/fpu/cfloat-compat.h (cfloat_versions): Likewise.
1006         * sysdeps/alpha/fpu/s_clog10f.c (clog10f): Likewise.
1008 2004-01-22  Andreas Jaeger  <aj@suse.de>
1010         * sysdeps/ieee754/dbl-64/e_pow.c (log2): Rename to my_log2 to
1011         avoid warnings for builtin function log2.
1013         * sysdeps/unix/sysv/linux/x86_64/setcontext.S: Add proper unwind
1014         information.
1016 2004-01-20  Ulrich Drepper  <drepper@redhat.com>
1018         * sysdeps/unix/sysv/linux/sys/epoll.h: Add EPOLLONESHOT.
1019         * sysdeps/unix/sysv/linux/x86_64/sys/epoll.h: Likewise.
1020         Patch by Davide Libenzi.
1022         * sysdeps/unix/sysv/linux/kernel-features.h: Define
1023         __ASSUME_NO_CLONE_DETACHED for 2.6.2+ kernels.
1025         * catgets/Makefile ($(objpfx)de.msg): Run sed in C locale.
1027         * sysdeps/unix/sysv/linux/readahead.c (__readahead): Use off64_t
1028         instead of loff_t.  Include <fcntl.h>.
1029         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Add readahead prototype.
1030         * sysdeps/unix/sysv/linux/arm/bits/fcntl.h: Likewise.
1031         * sysdeps/unix/sysv/linux/cris/bits/fcntl.h: Likewise.
1032         * sysdeps/unix/sysv/linux/hppa/bits/fcntl.h: Likewise.
1033         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise.
1034         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
1035         * sysdeps/unix/sysv/linux/m68k/bits/fcntl.h: Likewise.
1036         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
1037         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
1038         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
1039         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise.
1040         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
1042         * elf/dl-load.c: Don't add attribute_relro to max_dirnamelen.
1044         * sysdeps/generic/inttypes.h: Fix PRI*FAST{16,32} macros.
1046 2003-12-31  Bruno Haible  <bruno@clisp.org>
1048         * iconvdata/iso_6937-2.c (to_ucs4): Map 0x7E to U+007E, not U+203E.
1049         Map 0xA6 to U+0023. Map 0xA8 to U+00A4.
1050         (to_ucs4_comb): Map 0xC5 0x20 to U+00AF.
1051         (from_ucs4): Map U+00ED to 0xC2 0x69, not 0xC2 0xE9.
1052         (BODY for TO_LOOP): Don't map U+02DC. Map U+02DD to 0xCD 0x20, not
1053         0x00 0x20. Don't map U+2500..U+25E3.
1055 2004-01-19  Jakub Jelinek  <jakub@redhat.com>
1057         * posix/regexec.c (get_subexp): Remove bkref_str variable.
1058         Extend buffers if needed before comparisons.
1059         (get_subexp_sub): Handle clean_state_log_if_needed failure.
1061 2004-01-17  Ulrich Drepper  <drepper@redhat.com>
1063         * sysdeps/i386/i486/bits/atomic.h (atomic_add): Fix test for using
1064         atomic_decrement.  Patch by Davin McCall.
1066 2004-01-13  Daniel Jacobowitz  <drow@mvista.com>
1068         * sysdeps/powerpc/nofpu/sim-full.c (__sim_exceptions)
1069         (__sim_disabled_exceptions, __sim_round_mode): Declare with
1070         hidden data and nocommon.
1071         * sysdeps/powerpc/nofpu/soft-supp.h (__sim_exceptions)
1072         (__sim_disabled_exceptions, __sim_round_mode): Use
1073         libc_hidden_proto.
1074         * sysdeps/powerpc/soft-fp/sfp-machine.h (__sim_exceptions)
1075         (__sim_disabled_exceptions, __sim_round_mode): Likewise.
1077 2004-01-16  Ulrich Drepper  <drepper@redhat.com>
1079         * elf/elf.h: Define PT_IA_64_HP_OPT_ANOT, PT_IA_64_HP_HSL_ANOT, and
1080         PT_IA_64_HP_STACK.
1082 2004-01-16  Richard Henderson  <rth@redhat.com>
1084         * include/unistd.h (__libc_enable_secure): Mark attribute_relro.
1085         (__libc_enable_secure_internal): Likewise.
1087         * elf/dl-load.c: Don't declare __libc_stack_end.
1088         * sysdeps/generic/libc-start.c: Likewise.
1089         * sysdeps/unix/sysv/linux/dl-execstack.c: Likewise.
1090         * sysdeps/generic/segfault.c: Likewise.  Include ldsodefs.h.
1091         * sysdeps/generic/backtrace.c: Likewise.
1093 2004-01-15  Ulrich Drepper  <drepper@redhat.com>
1095         * Versions.def: Add GLIBC_2.3.4.
1097 2004-01-15  Richard Henderson  <rth@redhat.com>
1099         * sysdeps/unix/alpha/sysdep.h: Revert last change.
1101 2004-01-15  Richard Henderson  <rth@redhat.com>
1103         * sysdeps/alpha/dl-machine.h (RTLD_START): Use _dl_argv_internal.
1105         * sysdeps/unix/alpha/sysdep.h [PIC] (SYSCALL_ERROR_HANDLER): Use
1106         !samegp relocation.
1108 2004-01-15  Richard Henderson  <rth@redhat.com>
1110         * sysdeps/unix/sysv/linux/alpha/Makefile [stdlib]: Process
1111         ucontext-offsets.sym.
1112         * sysdeps/unix/sysv/linux/alpha/getcontext.S: New file.
1113         * sysdeps/unix/sysv/linux/alpha/makecontext.S: New file.
1114         * sysdeps/unix/sysv/linux/alpha/setcontext.S: New file.
1115         * sysdeps/unix/sysv/linux/alpha/swapcontext.S: New file.
1116         * sysdeps/unix/sysv/linux/alpha/ucontext-offsets.sym: New file.
1118 2004-01-15  Richard Henderson  <rth@redhat.com>
1120         * sysdeps/unix/sysv/linux/alpha/rt_sigaction.S: Prefix stubs with
1121         __syscall_, move nop inside, adjust users by +4.
1123 2004-01-14  Steven Munroe  <sjmunroe@us.ibm.com>
1125         * include/libc-symbols.h [HAVE_ASM_GLOBAL_DOT_NAME]
1126         (_symbol_version): Use C_SYMBOL_DOT_NAME to create '.'ed symbols.
1127         (_default_symbol_version): Use C_SYMBOL_DOT_NAME to create '.'ed
1128         symbols.
1129         * sysdeps/powerpc/Makefile: Add rtld-global-offsets.sym to
1130         gen-as-const-headers.
1131         * sysdeps/powerpc/elf/rtld-global-offsets.sym: New file.
1132         * sysdeps/powerpc/sysdep.h: Define v# symbols for vector registers.
1133         Define PPC_FEATURE_* masks for Aux Vector AT_HWCAP.
1134         * sysdeps/unix/sysv/linux/kernel-features.h
1135         (__ASSUME_SWAPCONTEXT_SYSCALL): Define for PPC and 2.6.0 kernels.
1136         * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h [!__WORDSIZE == 32]:
1137         Declare mcontext_t inline and include altivec state for 64-bit.
1138         * sysdeps/unix/sysv/linux/powerpc/powerpc64/Versions: Add GLIBC_2.3.4
1139         versions for setcontext, getcontext, and swapcontext.
1141         * sysdeps/unix/sysv/linux/powerpc/powerpc64/Versions: Add GLIBC_2.3.4
1142         versions for setcontext, getcontext, swapcontext, and makecontext.
1143         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S
1144         (__getcontext):  Upgrade to save Altivec regs and version GLIBC_2_3_4.
1145         [SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)] (__novec_getcontext):
1146         Compatible with GLIBC_2.3.3 release.
1147         * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S
1148         (__makecontext): Use parm save area instead of compiler_dw to hold
1149         context pointer.
1150         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S
1151         (__setcontext):  Upgrade to restore Altivec regs and version
1152         GLIBC_2_3_4.
1153         [SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)] (__novec_setcontext):
1154         Compatible with GLIBC_2.3.3 release.
1155         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S
1156         (__swapcontext): Upgrade to swap Altivec regs and version GLIBC_2_3_4.
1157         [SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)] (__novec_swapcontext):
1158         Compatible with GLIBC_2.3.3 release.
1159         * sysdeps/unix/sysv/linux/powerpc/powerpc64/ucontext_i.h
1160         (SIGCONTEXT_V_REGS_PTR, SIGCONTEXT_V_RESERVE): Defined.
1162 2004-01-12  Steven Munroe  <sjmunroe@us.ibm.com>
1164         * sysdeps/unix/sysv/linux/powerpc/powerpc32/Versions: Add GLIBC_2.3.4
1165         versions for setcontext, getcontext, swapcontext, and makecontext.
1166         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S
1167         (__getcontext):  Upgrade to save Altivec regs and version GLIBC_2_3_4.
1168         [SHLIB_COMPAT (libc, GLIBC_2_3_3, GLIBC_2_3_4)] (__novec_getcontext):
1169         Compatible with GLIBC_2.3.3 release.
1170         * sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S
1171         (__makecontext): Upgrade to align for Altivec regs and version
1172         GLIBC_2_3_4.
1173         [SHLIB_COMPAT (libc, GLIBC_2_3_3, GLIBC_2_3_4)] (__novec_makecontext):
1174         Compatible with GLIBC_2.3.3 release.
1175         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S
1176         (__setcontext):  Upgrade to restore Altivec regs and version
1177         GLIBC_2_3_4.
1178         [SHLIB_COMPAT (libc, GLIBC_2_3_3, GLIBC_2_3_4)] (__novec_setcontext):
1179         Compatible with GLIBC_2.3.3 release.
1180         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S
1181         (__swapcontext): Upgrade to swap Altivec regs and version GLIBC_2_3_4.
1182         [SHLIB_COMPAT (libc, GLIBC_2_3_3, GLIBC_2_3_4)]
1183         (__novec_swapcontext): Compatible with GLIBC_2.3.3 release.
1184         * sysdeps/unix/sysv/linux/powerpc/powerpc32/ucontext_i.h:
1185         (_UC_VSCR, _UC_VRSAVE): Define.
1186         (_FRAME_BACKCHAIN, _FRAME_LR_SAVE,_FRAME_PARM_SAVE1,_FRAME_PARM_SAVE2,
1187         _FRAME_PARM_SAVE3, _FRAME_PARM_SAVE4): Defined.
1189 2004-01-15  Ulrich Drepper  <drepper@redhat.com>
1191         * elf/rtld.c: Handle platforms with HP_TIMING_NONAVAIL defined.
1193 2004-01-16  Alfred M. Szmidt  <ams@kemisten.nu>
1195         * sysdeps/generic/dl-execstack.c (_dl_make_stack_executable): Adjust
1196         parameter type.
1198 2004-01-15  Ulrich Drepper  <drepper@redhat.com>
1200         * elf/elf.h: Fix typo in comment.
1202         * sysdeps/generic/dl-sysdep.c: Initialize __libc_stack_end.
1203         * elf/rtld.c: Initialize _dl_argv to allow aliasing.
1205         * resolv/resolv.h: Add RES_USEBSTRING.
1206         * resolv/res_debug.c (p_option): Add handling for RES_USE_INET6,
1207         RES_ROTATE, RES_NOCHECKNAME, and RES_USEBSTRING.
1208         * resolv/res_init.c (res_setioptions): Recognize ip6-bytestring.
1209         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Only perform
1210         bytestring IPv6 lookup with RES_USEBSTRING option is selected.
1211         Otherwise use the two nibble formats.
1213 2004-01-14  Ulrich Drepper  <drepper@redhat.com>
1215         * configure.in: Define HAVE_Z_RELRO if the linker supports -z relro.
1216         * config.h.in: Add entry for HAVE_Z_RELRO.
1217         * include/libc-symbols.h: Define attribute_relro.
1218         * elf/dl-load.c: Add attribute_relro to env_path_list, capstr, ncapstr,
1219         max_capstrlen, and max_dirnamelen definitions.
1220         * elf/rtld.c: Add attribute_relro to _dl_argc, _dl_argv, _dl_skip_args,
1221         load_time, start_time, library_path, preloadlist, version_info,
1222         any_debug.
1223         Remove rtld_total_time.  Make it a local variable.  Pass pointer to
1224         it to print_statistics.  Change print_statistics accordingly.
1225         * sysdeps/generic/dl-sysdep.c: Add attribute_relro to _dl_auxv.  Use
1226         attribute_relro instead of explicitly assigning variable to the
1227         .data.rel.ro section for __libc_enable_secure and __libc_stack_end.
1228         * sysdeps/generic/ldsodefs.h: Declare __libc_stack_end, _dl_argc,
1229         _dl_argv, _dl_argv_internal with attribute_relro.
1231 2004-01-13  Segher Boessenkool  <boessen@de.ibm.com>
1233         * Makerules (gen-as-const): Don't silently continue on failure.
1235 2004-01-14  Steven Munroe  <sjmunroe@us.ibm.com>
1237         * sysdeps/generic/dl-sysdep.c: Define __libc_stack_end with
1238         rtld_hidden_data_def.
1240 2004-01-14  Ulrich Drepper  <drepper@redhat.com>
1242         * libio/libio.h: Add const to function tables types.
1243         * libio/libioP.h: Likewise.
1244         * login/utmp-private.h: Likewise.
1245         * libio/fileops.c: Add const to jump table variable definition.
1246         * libio/genops.c: Likewise.
1247         * libio/iofopncook.c: Likewise.
1248         * libio/iopopen.c: Likewise.
1249         * libio/memstream.c: Likewise.
1250         * libio/obprintf.c: Likewise.
1251         * libio/oldfileops.c: Likewise.
1252         * libio/oldiopopen.c: Likewise.
1253         * libio/strops.c: Likewise.
1254         * libio/vsnprintf.c: Likewise.
1255         * libio/vswprintf.c: Likewise.
1256         * libio/wfileops.c: Likewise.
1257         * libio/wstrops.c: Likewise.
1258         * login/getutent_r.c: Likewise.
1259         * login/getutid_r.c Likewise.
1260         * login/getutline_r.c: Likewise.
1261         * sysdeps/generic/utmp_file.c: Likewise.
1263 2004-01-09  Bruno Haible  <bruno@clisp.org>
1265         * intl/gmo.h (MO_REVISION_NUMBER_WITH_SYSDEP_I): New definition.
1266         * intl/loadmsgcat.c (get_sysdep_segment_value): Handle "I".
1267         (_nl_load_domain): Treat major revision 1 like major revision 0.
1269 2004-01-11  Bruno Haible  <bruno@clisp.org>
1271         * stdio-common/vfprintf.c (vfprintf): Disallow the 'I' flag after
1272         width or precision has been seen.
1274 2004-01-08  Bruno Haible  <bruno@clisp.org>
1276         * intl/loadmsgcat.c (_nl_load_domain): When a string pair uses a system
1277         dependent segment not known to this version of the library, ignore
1278         the string pair instead of crashing.
1280 2004-01-13  Ulrich Drepper  <drepper@redhat.com>
1282         * configure.in: Rewrite test to give gcc to clean up after itself.
1283         Patch by Greg Schafer.
1285         * posix/regex.c: Support crappy compilers and platforms which have
1286         problems with alloca.
1287         * posix/regex_internal.h: Likewise.
1288         Patch by Paolo Bonzini.
1290 2004-01-12  Paolo Bonzini  <bonzini@gnu.org>
1292         * posix/regcomp.c [_LIBC && !RE_ENABLE_I18N]:
1293         Drop code to support this, it is never true.
1294         (build_range_exp) [!_LIBC]: Do not create a range
1295         in MBCSET for a single-byte character set.
1296         (build_range_exp) [_LIBC]: Do not create a range
1297         in MBCSET for a single-byte character set without
1298         collation elements.
1299         (init_dfa): Do not conditionalize on _LIBC, it
1300         just makes the code less clear.
1301         (parse_bracket_exp): Use NON_MATCH variable in
1302         addition to "mbcset->non_match", not as an
1303         alternative.
1304         (build_charclass_op): rename NOT parameter to
1305         NON_MATCH, use it instead of declaring a variable.
1306         (parse_bracket_exp) [!_LIBC]: Pass NULL for MBCSET
1307         if the character set is single-byte.
1309 2004-01-14  Jakub Jelinek  <jakub@redhat.com>
1311         * posix/regcomp.c (peek_token_bracket): Check remaining
1312         string length before re_string_peek_byte (x, 1).
1313         (parse_bracket_symbol): Likewise.
1314         * posix/regex_internal.h (re_string_is_single_byte_char): Return
1315         true at last byte in the string.
1316         * posix/bug-regex22.c (main): Add new test.
1318 2004-01-13  Ulrich Drepper  <drepper@redhat.com>
1320         * sysdeps/generic/dl-sysdep.c: Move __libc_enable_secure into
1321         .data.rel.ro.
1323         * sysdeps/x86_64/dl-machine.h: Include <tls.h>.
1325         * elf/rtld.c (_dl_start_final): Initialze __libc_stack_end here.
1326         * sysdeps/generic/dl-sysdep.c: Define __libc_stack_end with
1327         rtld_hidden_def and move into .data.rel.ro section.
1328         * sysdeps/generic/ldsodefs.h: Declare __libc_stack_end with
1329         rtld_hidden_proto.
1330         * sysdeps/generic/libc-start.c: Only initialize __libc_stack_end here
1331         if !SHARED.
1333 2004-01-13  Richard Henderson  <rth@redhat.com>
1335         * sysdeps/unix/sysv/linux/alpha/rt_sigaction.S: Fix typo.
1337 2004-01-13  Ulrich Drepper  <drepper@redhat.com>
1339         * sysdeps/unix/sysv/linux/dl-execstack.c
1340         (_dl_make_stack_executable): Move common code in front.  Use
1341         __builtin_expect.
1343         * sysdeps/unix/sysv/linux/dl-execstack.c: Change interface.  Add
1344         challenge for caller.
1345         * sysdeps/generic/ldsodefs.h: Change declaration and type of hook
1346         member in rtld_global appropriately.
1347         * elf/dl-support.c: Likewise.
1348         * elf/dl-load.c (_dl_map_object_from_fd): Take additional paramter.
1349         Pass it on to the changed function.
1350         (_dl_map_object): Pass new parameter to _dl_map_object_from_fd.
1352 2004-01-13  Richard Henderson  <rth@redhat.com>
1354         * sysdeps/alpha/bits/atomic.h (__arch_compare_and_exchange_xxx_8_int):
1355         Cast old up to uint64_t before back down to inner width.
1356         (__arch_compare_and_exchange_xxx_16_int): Likewise.
1357         (__arch_compare_and_exchange_xxx_32_int): Likewise.
1358         (__arch_compare_and_exchange_xxx_64_int): Likewise.
1359         (__arch_compare_and_exchange_val_8_int): Cast result to
1360         the type of the memory.
1361         (__arch_compare_and_exchange_val_16_int): Likewise.
1362         (__arch_compare_and_exchange_val_32_int): Likewise.
1363         (__arch_compare_and_exchange_val_64_int): Likewise.
1364         (atomic_compare_and_exchange_bool_acq): Use __atomic_bool_bysize.
1365         (atomic_compare_and_exchange_bool_rel): Likewise.
1367         * sysdeps/unix/alpha/sysdep.h: Select inline_syscall_r0_asm
1368         based on HAVE___THREAD instead of USE_TLS.
1370         * sysdeps/unix/sysv/linux/alpha/adjtime.c (ADJTIMEX32): New.
1371         (__adjtimex_tv64): Use it.
1373         * sysdeps/unix/sysv/linux/alpha/semctl.c (__new_semctl): Cast
1374         to void* rather than directly to the compatibility structure type.
1375         * sysdeps/unix/sysv/linux/alpha/shmctl.c (__new_shmctl): Likewise.
1377         * sysdeps/unix/sysv/linux/alpha/sigaction.c (struct kernel_sigaction):
1378         Forward declare.
1380 2004-01-13  Richard Henderson  <rth@redhat.com>
1382         * Versions.def (libm): Add GLIBC_2.3.3.
1383         * sysdeps/alpha/fpu/Versions: Add __c1_c*f and c*f to GLIBC_2.3.3.
1384         * sysdeps/alpha/fpu/cabsf.c, sysdeps/alpha/fpu/cargf.c,
1385         sysdeps/alpha/fpu/cfloat-compat.h, sysdeps/alpha/fpu/cimagf.c,
1386         sysdeps/alpha/fpu/conjf.c, sysdeps/alpha/fpu/crealf.c,
1387         sysdeps/alpha/fpu/s_cacosf.c, sysdeps/alpha/fpu/s_cacoshf.c,
1388         sysdeps/alpha/fpu/s_casinf.c, sysdeps/alpha/fpu/s_casinhf.c,
1389         sysdeps/alpha/fpu/s_catanf.c, sysdeps/alpha/fpu/s_catanhf.c,
1390         sysdeps/alpha/fpu/s_ccosf.c, sysdeps/alpha/fpu/s_ccoshf.c,
1391         sysdeps/alpha/fpu/s_cexpf.c, sysdeps/alpha/fpu/s_clog10f.c,
1392         sysdeps/alpha/fpu/s_clogf.c, sysdeps/alpha/fpu/s_cpowf.c,
1393         sysdeps/alpha/fpu/s_cprojf.c, sysdeps/alpha/fpu/s_csinf.c,
1394         sysdeps/alpha/fpu/s_csinhf.c, sysdeps/alpha/fpu/s_csqrtf.c,
1395         sysdeps/alpha/fpu/s_ctanf.c, sysdeps/alpha/fpu/s_ctanhf.c: New files.
1396         * sysdeps/alpha/fpu/bits/mathdef.h: Rename complex float
1397         functions for gcc 3.3.
1399         * sysdeps/generic/s_cacosf.c, sysdeps/generic/s_cacoshf.c,
1400         sysdeps/generic/s_casinf.c, sysdeps/generic/s_casinhf.c,
1401         sysdeps/generic/s_catanf.c, sysdeps/generic/s_catanhf.c,
1402         sysdeps/generic/s_ccosf.c, sysdeps/generic/s_ccoshf.c,
1403         sysdeps/generic/s_cexpf.c, sysdeps/generic/s_clog10f.c,
1404         sysdeps/generic/s_clogf.c, sysdeps/generic/s_cpowf.c,
1405         sysdeps/generic/s_cprojf.c, sysdeps/generic/s_csinf.c,
1406         sysdeps/generic/s_csinhf.c, sysdeps/generic/s_csqrtf.c,
1407         sysdeps/generic/s_ctanf.c, sysdeps/generic/s_ctanhf.c: Don't
1408         weak_alias if the function name has been #defined.
1410         * math/cabsf.c: Move ...
1411         * sysdeps/generic/cabsf.c: ... here.
1412         * math/cargf.c: Move ...
1413         * sysdeps/generic/cargf.c: ... here.
1414         * math/cimagf.c: Move ...
1415         * sysdeps/generic/cimagf.c: ... here.
1416         * math/conjf.c: Move ...
1417         * sysdeps/generic/conjf.c: ... here.
1418         * math/crealf.c: Move ...
1419         * sysdeps/generic/crealf.c: ... here.
1421 2004-01-13  Ulrich Drepper  <drepper@redhat.com>
1423         * Makeconfig: Define relro-LDFLAGS if have-z-relro==yes.  Add it to
1424         LDFLAGS.so and LDFLAGS-rtld.
1425         (+link): Add relro-LDFLAGS.
1426         * Makeconfig (shlib.lds): Place __libc_subfreeres, __libc_atexit, and
1427         __libc_thread_subfreeres sections after .jcr section.
1428         * config.make.in: Add have-z-relro.
1429         * configure.in: Add check for -z relro option.
1430         * include/link.h (struct link_map): Add relro_addr and relro_size
1431         members.
1432         * elf/dl-load.c (_dl_map_object_from_fd): Recognize PT_GNU_RELRO.
1433         * elf/dl-reloc.c (_dl_relocate_object): At the end, make relro
1434         part of loaded segments read-only.
1435         * elf/elf.h: Define PT_GNU_RELRO.
1436         * elf/rtld.c (_dl_start): Recognize PT_GNU_RELRO of ld.so.
1437         (dl_main): Recognize PT_GNU_RELRO of the application.  Call
1438         _dl_debug_initialize and initialize l_info[DT_DEBUG] before
1439         relocations.
1441 2004-01-12  Jakub Jelinek  <jakub@redhat.com>
1443         * sysdeps/x86_64/strcspn.S: Fix typo in last patch.
1445 2004-01-11  Andreas Jaeger  <aj@suse.de>
1447         * sysdeps/x86_64/__longjmp.S: Add cfi directives.
1449 2004-01-10  Andreas Jaeger  <aj@suse.de>
1451         * sysdeps/unix/sysv/linux/x86_64/__start_context.S: Add cfi directives.
1452         * sysdeps/unix/x86_64/sysdep.S (__syscall_error): Likewise.
1453         * sysdeps/unix/sysv/linux/x86_64/vfork.S: Likewise.
1454         * sysdeps/x86_64/strcspn.S: Likewise.
1455         * sysdeps/x86_64/strspn.S: Likewise.
1457 2004-01-08  Jakub Jelinek  <jakub@redhat.com>
1459         * sysdeps/unix/sysv/linux/x86_64/clone.S (__clone): Add cfi_endproc
1460         right before syscall and cfi_startproc before PSEUDO_END.
1461         Clear %rbp in thread_start.
1463 2004-01-05  Jakub Jelinek  <jakub@redhat.com>
1465         * posix/regcomp.c (regcomp): Fix comment typo.
1466         (regfree): Free preg->translate, clear buffer, allocated, fastmap
1467         and translate fields.
1469         * posix/regcomp.c (build_charclass, buld_charclass_op): Change first
1470         argument to unsigned RE_TRANSLATE_TYPE.
1471         * posix/regex_internal.h (re_string_t): Change trans type to
1472         unsigned RE_TRANSLATE_TYPE.
1473         * posix/regex_internal.c (re_string_construct_common): Cast
1474         trans to unsigned RE_TRANSLATE_TYPE.
1475         (re_string_peek_byte_case, re_string_fetch_byte_case): Avoid fast
1476         path if pstr->trans.  Never translate the character through
1477         pstr->trans.
1478         * posix/Makefile (tests): Add bug-regex22.
1479         (bug-regex22-ENV): Set.
1480         * posix/bug-regex22.c: New test.
1482 2004-01-02  Paolo Bonzini  <bonzini@gnu.org>
1484         * posix/regex_internal.c (re_node_set_add_intersect,
1485         re_node_set_merge): Rewritten.
1486         (re_node_set_insert, re_node_set_remove_at):
1487         Avoid memmove, we know what direction we should copy and that we
1488         are copying 32-bit words.
1489         (re_node_set_compare): Iterate backwards.
1491 2003-12-30  Paul Eggert  <eggert@twinsun.com>
1493         * time/mktime.c (verify): New macro.
1494         (time_t_is_integer, twos_complement_arithmetic,
1495         right_shift_propagates_sign, base_year_is_a_multiple_of_100,
1496         C99_integer_division): Document these longstanding assumptions in the
1497         code, and verify them at compile-time.
1499 2004-01-02  Jakub Jelinek  <jakub@redhat.com>
1501         * posix/regex_internal.h (re_match_context_t): Add dfa member.
1502         * posix/regexec.c (match_ctx_free_subtops, search_cur_bkref_entry,
1503         match_ctx_add_sublast, sift_ctx_init, acquire_init_state_context,
1504         prune_impossible_nodes, check_halt_state_context, proceed_next_node,
1505         sift_states_backward, update_cur_sifted_state, check_dst_limits,
1506         check_dst_limits_calc_pos, sift_states_bkref, transit_state,
1507         check_subexp_matching_top, transit_state_sb, transit_state_mb,
1508         transit_state_bkref, get_subexp, get_subexp_sub, check_arrival,
1509         check_arrival_add_next_nodes, expand_bkref_cache, check_node_accept):
1510         Remove dfa parameter.  Get dfa from mctx.  Adjust callers.
1511         (re_search_internal): Initialize mctx.dfa.
1513         * posix/regex_internal.c (re_node_set_insert): Remove unused variables.
1515         * posix/regex_internal.h (re_dfa_t): Add syntax field.
1516         * posix/regcomp.c (parse): Initialize dfa->syntax.
1517         * posix/regexec.c (acquire_init_state_context,
1518         prune_impossible_nodes, check_matching, check_halt_state_context,
1519         proceed_next_node, sift_states_iter_mb, sift_states_backward,
1520         update_cur_sifted_state, sift_states_bkref, transit_state,
1521         transit_state_sb, transit_state_mb, transit_state_bkref,
1522         get_subexp, get_subexp_sub, check_arrival, expand_bkref_cache,
1523         build_trtable): Remove preg argument, add dfa argument instead
1524         and remove dfa = preg->buffer initialization in the body.
1525         Adjust all callers.
1526         (check_node_accept_bytes, group_nodes_into_DFAstates,
1527         check_node_accept): Likewise.  Use dfa->syntax instead of
1528         preg->syntax.
1529         (check_arrival_add_next_nodes): Remove preg argument.
1531         * posix/regex_internal.h (re_match_context_t): Make input
1532         re_string_t instead of a pointer to it.
1533         * posix/regex_internal.c (re_string_construct_common): Don't clear
1534         pstr here...
1535         (re_string_construct): ... but only here.
1536         * posix/regexec.c (match_ctx_init): Remove input argument.  Don't
1537         initialize fields to zero.
1538         (re_search_internal): Move input into mctx.input.
1539         (acquire_init_state_context, check_matching,
1540         check_halt_state_context, proceed_next_node,
1541         clean_state_log_if_needed, sift_states_bkref, sift_states_iter_mb,
1542         transit_state, transit_state_sb, transit_state_mb,
1543         transit_state_bkref, get_subexp, check_arrival,
1544         check_arrival_add_next_nodes, check_node_accept, extend_buffers):
1545         Change mctx->input into &mctx->input and mctx->input->field into
1546         mctx->input.field.
1548 2004-01-02  Jakub Jelinek  <jakub@redhat.com>
1549             Paolo Bonzini  <bonzini@gnu.org>
1551         * posix/regex_internal.h (re_const_bitset_ptr_t): New type.
1552         (re_string_t): Add newline_anchor, word_char and word_ops_used fields.
1553         (re_dfa_t): Change word_char type to bitset.  Add word_ops_used field.
1554         (re_string_context_at, re_string_reconstruct): Remove last argument.
1555         * posix/regex_internal.c (re_string_allocate): Initialize
1556         pstr->word_char and pstr->word_ops_used.
1557         (re_string_context_at): Remove newline_anchor argument.
1558         Use input->newline_anchor instead, swap && conditions.
1559         Only use IS_WIDE_WORD_CHAR if input->word_ops_used != 0.
1560         Use input->word_char bitmap instead of IS_WORD_CHAR.
1561         (re_string_reconstruct): Likewise.
1562         Adjust re_string_context_at caller.
1563         * posix/regexec.c (acquire_init_state_context,
1564         check_halt_state_context, transit_state, transit_state_sb,
1565         transit_state_mb, transit_state_bkref, check_arrival,
1566         check_node_accept): Adjust re_string_context_at and
1567         re_string_reconstruct callers.
1568         (re_search_internal): Likewise.  Set input.newline_anchor.
1569         (build_trtable): Use dfa->word_char bitmap instead of IS_WORD_CHAR.
1570         * posix/regcomp.c (init_word_char): Change return type to void.
1571         Set dfa->word_ops_used.
1572         (free_dfa_content): Don't free dfa->word_char.
1573         (parse_expression): Remove error handling for init_word_char.
1575 2004-01-01  Paolo Bonzini  <bonzini@gnu.org>
1577         * posix/regex_internal.h (re_dfastate_t): Fix size of the CONTEXT
1578         bitfield.
1580         * posix/regex_internal.c (re_node_set_insert):  Rewrite.
1582 2004-01-01  Ulrich Drepper  <drepper@redhat.com>
1584         * posix/getconf.c: Update copyright year.
1585         * nss/getent.c: Likewise.
1586         * nscd/nscd_nischeck.c: Likewise.
1587         * iconv/iconvconfig.c: Likewise.
1588         * iconv/iconv_prog.c: Likewise.
1589         * elf/ldconfig.c: Likewise.
1590         * catgets/gencat.c: Likewise.
1591         * csu/version.c: Likewise.
1592         * elf/ldd.bash.in: Likewise.
1593         * elf/sprof.c (print_version): Likewise.
1594         * locale/programs/locale.c: Likewise.
1595         * locale/programs/localedef.c: Likewise.
1596         * nscd/nscd.c (print_version): Likewise.
1597         * debug/xtrace.sh: Likewise.
1598         * malloc/memusage.sh: Likewise.
1599         * malloc/mtrace.pl: Likewise.
1601 2004-01-01  Petter Reinholdtsen  <pere@hungry.com>
1603         * stdlib/strfmon.c: Make formatting of left-justified currency
1604         values match the the POSIX standard.  When using format string
1605         "[%-14#5.4n]" to print -123.45, the result should be
1606         "[-$   123.4500 ]", not "[-$123.4500    ]".
1608 2004-01-01  Andreas Jaeger  <aj@suse.de>
1610         * resolv/Makefile (generated): New.
1612 2003-12-31  Joseph S. Myers  <jsm@polyomino.org.uk>
1614         * CONFORMANCE: Update.
1616 2003-12-30  Paul Eggert  <eggert@twinsun.com>
1618         * time/mktime.c: (my_mktime_localtime_r):
1619         Remove.  All uses changed to __localtime_r.
1620         (__localtime_r) [!defined _LIBC]: New macro.  Include "time_r.h" to
1621         get its implementation.
1622         Fix compile-command to allow for TIME_R_POSIX.
1624         * time/strftime.c (my_strftime_gmtime_r, my_strftime_localtime_r):
1625         Remove.  All uses changed to __localtime_r and __gmtime_r.
1626         (__gmtime_r, __localtime_r) [!HAVE_TM_GMTOFF]: New macros.
1627         Include "time_r.h" to get their implementations.
1629         * time/timegm.c: Allow use in GNU applications outside glibc.
1630         [defined HAVE_CONFIG_H]: Include <config.h>.
1631         [!defined _LIBC]: Include "timegm.h", <time_r.h>.
1632         Define __gmtime_r, and declare __mktime_internal.
1633         (timegm): Define via a prototype, since we can safely assume C89 now.
1635         * time/mktime.c (check_result): Use less-confusing report format.
1636         "long" -> "long int", as per usual GNU style.
1637         (main): Likewise.
1638         Don't loop if the iteration overflows time_t.
1639         Allow a negative step in the iteration.
1641         * time/mktime.c: Assume freestanding C89 or better.
1642         (HAVE_LIMITS_H, STDC_HEADERS) [defined _LIBC]: Remove;
1643         assume they're 1.
1644         (__P): Remove; not used.
1645         (CHAR_BIT, INT_MIN, INT_MAX): Remove; <limits.h> defines them.
1646         (mktime, not_equal_tm, print_tm, check_result, main): Use prototypes.
1647         Prototypes use const * where appropriate.
1648         (main) [DEBUG]: Fix typo in testing code uncovered by above changes,
1649         which caused the testing code to dump core on some hosts.
1651 2003-12-31  Ulrich Drepper  <drepper@redhat.com>
1653         * locale/setlocale.c (setlocale): Avoid duplicating locale names
1654         if we can reuse old strings.
1656         * inet/rcmd.c: Provide better error message in case of unknown
1657         host.  Remove USE_IN_LIBIO.
1659         * nscd/nscd.init: Updated version, more conforming with current
1660         init file standards.
1662         * nscd/nscd-client.h (_PATH_NSCDPID): Move the file into
1663         /var/run/nscd directory.
1664         (_PATH_NSCDSOCKET): Likewise.
1666         * test-skeleton.c (timeout_handler): Fix error message.
1668         * elf/dl-dst.h (DL_DST_REQUIRED): Avoid the complex operations if
1669         CNT == 0.
1671 2003-12-30  Jakub Jelinek  <jakub@redhat.com>
1673         * posix/regexec.c (get_subexp): Only set bkref_str after the first
1674         loop, use buf + bkref_str_off in the loop instead.
1675         * posix/bug-regex11.c (tests): Add 3 new tests.
1677         * posix/regexec.c (clean_state_log_if_need): Rename to...
1678         (clean_state_log_if_needed): ...this.
1679         (transit_state_mb, get_subexp_sub): Adjust callers.
1681         * sunrpc/pmap_clnt.c (pmap_set): Do CLNT_DESTROY even if CLNT_CALL
1682         failed.  Reported by Steve Grubb.
1684 2003-12-29  Ulrich Drepper  <drepper@redhat.com>
1686         * elf/elf.h: Add a few definitions from Solaris 9.
1688 2003-12-29  Andreas Schwab  <schwab@suse.de>
1690         * stdio-common/Makefile (CFLAGS-errlist.c, CFLAGS-siglist.c): Add
1691         $(fno_unit_at_a_time) to avoid reordering assembler output.
1693 2003-12-29  Jakub Jelinek  <jakub@redhat.com>
1695         * posix/regexec.c (re_copy_regs): Revert comment change.
1696         Avoid memory leak if realloc fails.
1697         (proceed_next_node): Return -2 if re_node_set_insert fails.
1698         Return -2 if push_fail_stack fails.
1699         (push_fail_stack): Change fs->alloc only after successful realloc.
1700         (pop_fail_stack): Formatting.
1701         (set_regs): If proceed_next_node returns -2, free eps_via_nodes and fs.
1702         (check_arrival_add_next_nodes): Merge identical statements
1703         from if branches.
1705         * signal/Makefile (tests): Add tst-raise.
1706         * signal/tst-raise.c: New test.
1708 2003-12-28  Ulrich Drepper  <drepper@redhat.com>
1710         * posix/regcomp.c (mark_opt_subexp_iter): Declare IDX as int.
1712         * posix/regexec.c (re_copy_regs): Fix testing for failed allocation.
1713         (push_fail_stack): Add missing check for failed memory allocation.
1715         * libio/libio.h: Use __builtin_expect in _IO_getc_unlocked,
1716         _IO_peekc_unlocked, _IO_putc_unlocked, _IO_getwc_unlocked, and
1717         _IO_putwc_unlocked.
1719 2003-12-28  Andreas Jaeger  <aj@suse.de>
1721         * sysdeps/ieee754/dbl-64/e_j0.c (__ieee754_y0): Raise only
1722         overflow for 0 as argument. Raise Invalid exception for negative args.
1723         * sysdeps/ieee754/dbl-64/e_jn.c (__ieee754_yn): Likewise.
1724         * sysdeps/ieee754/dbl-64/e_j1.c (__ieee754_y0): Likewise.
1725         * sysdeps/ieee754/ldb-128/e_jnl.c (__ieee754_ynl): Likewise.
1726         * sysdeps/ieee754/ldb-128/e_j0l.c (__ieee754_y0l): Likewise.
1727         * sysdeps/ieee754/ldb-128/e_j1l.c (__ieee754_y1l): Likewise.
1728         * sysdeps/ieee754/ldb-96/e_jnl.c (__ieee754_ynl): Likewise.
1729         * sysdeps/ieee754/ldb-96/e_j0l.c (__ieee754_y0l): Likewise.
1730         * sysdeps/ieee754/ldb-96/e_j1l.c (__ieee754_y1l): Likewise.
1731         * sysdeps/ieee754/flt-32/e_jnf.c (__ieee754_ynf): Likewise.
1732         * sysdeps/ieee754/flt-32/e_j0f.c (__ieee754_y0f): Likewise.
1733         * sysdeps/ieee754/flt-32/e_j1f.c (__ieee754_y1f): Likewise.
1735         * math/libm-test.inc (yn_test): Expect invalid exception for
1736         negative arguments.
1737         (y0_test): Likewise.
1738         (y1_test): Likewise.
1740         * sysdeps/ieee754/dbl-64/e_exp.c (__ieee754_exp): Do not raise
1741         execptions for exp(NaN).
1743 2003-12-23  Paolo Bonzini  <bonzini@gnu.org>
1745         * posix/regex_internal.c (re_dfa_add_node): Initialize opt_subexp.
1746         * posix/regex_internal.h (re_token_type_t): Put OP_DUP_PLUS
1747         among the tokens, rather than among the epsilon-transiting nodes.
1748         (re_token_t): Add the opt_subexp flag.
1749         * posix/regcomp.c (optimize_utf8, calc_first,
1750         calc_next, calc_epsdest): Don't consider OP_DUP_PLUS.
1751         (mark_opt_subexp, mark_opt_subexp_iter): New functions.
1752         (parse_dup_op): Mostly rewritten, lowering OP_DUP_PLUS to
1753         OP_DUP_ASTERISK and marking optional subexpressions
1754         as such using mark_opt_subexp.
1755         * posix/regexec.c (set_regs): Initialize PREV_INDEX_MATCH
1756         and pass it to update_regs.
1757         (update_regs): Use the PREV_INDEX_MATCH parameter, together
1758         with the opt_subexp flag, in order to discard a final empty
1759         match of a repeated subexpression.
1760         * posix/BOOST.tests: Adjust test vectors.
1761         * posix/PCRE.tests: Likewise.
1762         * posix/rxspencer/tests: Likewise.
1764 2000-05-22  Jakub Jelinek  <jakub@redhat.com>
1766         * sysdeps/i386/fpu/bits/mathinline.h (__expm1_code): Avoid using ?:
1767         with omitted middle operand.
1769 2003-12-22  Jakub Jelinek  <jakub@redhat.com>
1771         * posix/regcomp.c: Remove C99-ism.
1772         * posix/tst-rxspencer.c: Likewise.
1773         Based on a patch by Alex Davis <alex14641@yahoo.com>.
1775 2003-12-17  Paolo Bonzini  <bonzini@gnu.org>
1777         * posix/regex_internal.h [!_LIBC] (internal_function): Define.
1778         (re_string_allocate, re_string_construct, re_string_reconstruct,
1779         re_string_realloc_buffers, build_wcs_buffer,
1780         build_wcs_upper_buffer, build_upper_buffer,
1781         re_string_translate_buffer, re_string_destruct,
1782         re_string_elem_size_at, re_string_char_size_at,
1783         re_string_wchar_at, re_string_context_at,
1784         re_node_set_alloc, re_node_set_init_1
1785         re_node_set_init_2, re_node_set_init_copy,
1786         re_node_set_add_intersect, re_node_set_init_union,
1787         re_node_set_merge, re_node_set_insert
1788         re_node_set_compare, re_node_set_contains
1789         re_node_set_remove_at, re_dfa_add_node,
1790         re_acquire_state, re_acquire_state_context,
1791         free_state): Add internal_function to declaration.
1793         * posix/regexec.c (match_ctx_init, match_ctx_clean,
1794         match_ctx_free, match_ctx_free_subtops,
1795         match_ctx_add_entry, search_cur_bkref_entry,
1796         match_ctx_clear_flag, match_ctx_add_subtop,
1797         match_ctx_add_sublast, sift_ctx_init,
1798         re_search_internal, re_search_2_stub, re_search_stub,
1799         re_copy_regs, acquire_init_state_context,
1800         prune_impossible_nodes, check_matching,
1801         check_halt_node_context, check_halt_state_context
1802         update_regs, proceed_next_node, push_fail_stack,
1803         pop_fail_stack, set_regs, free_fail_stack_return,
1804         sift_states_iter_mb, sift_states_backward
1805         update_cur_sifted_state, add_epsilon_src_nodes,
1806         sub_epsilon_src_nodes, check_dst_limits,
1807         check_dst_limits_calc_pos, check_subexp_limits,
1808         sift_states_bkref, clean_state_log_if_need,
1809         merge_state_array, transit_state,
1810         check_subexp_matching_top, transit_state_sb,
1811         transit_state_mb, transit_state_bkref,
1812         get_subexp, get_subexp_sub, find_subexp_node,
1813         check_arrival, check_arrival_add_next_nodes,
1814         find_collation_sequence_value, check_arrival_expand_ecl,
1815         check_arrival_expand_ecl_sub, expand_bkref_cache,
1816         build_trtable, check_node_accept_bytes, extend_buffers,
1817         group_nodes_into_DFAstates, check_node_accept): Likewise.
1819         * posix/regex_internal.c (re_string_construct_common,
1820         re_string_skip_chars, create_newstate_common,
1821         register_state, create_ci_newstate, create_cd_newstate,
1822         calc_state_hash): Likewise.
1823         (re_string_peek_byte_case, re_fetch_byte_case): Change
1824         declaration from ANSI to K&R.
1826 2003-12-16  Paolo Bonzini  <bonzini@gnu.org>
1828         * posix/regexec.c (build_trtable): Don't allocate the trtable
1829         until state->word_trtable is known.  Don't hardcode UINT_BITS
1830         iterations on each bitset item.
1832 2003-12-22  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>
1834         * sysdeps/unix/sysv/linux/ia64/dl-static.c (_dl_static_init):
1835         Initialize REF before passing it to _dl_lookup_symbol.
1837 2003-12-21  Roland McGrath  <roland@frob.com>
1839         * sysdeps/mach/hurd/dl-sysdep.c (_exit): Define with attribute_hidden.
1841 2003-12-21  Jakub Jelinek  <jakub@redhat.com>
1843         * posix/regcomp.c (duplicate_node, duplicate_node_closure): Revert
1844         2003-11-24 changes.
1845         * posix/regexec.c (group_nodes_into_DFAstates): For CHARACTER with
1846         NEXT_{,NOT}WORD_CONSTRAINT check word_char bit.
1847         * posix/bug-regex19.c (tests): Add new tests.
1849         * posix/regexec.c (check_dst_limits_calc_pos): Fix formatting.
1851         * posix/regcomp.c (parse_dup_op): Return NULL if dup_elem is NULL,
1852         after checking syntax.  Optimize.
1853         (calc_first): Fix comment.
1854         * posix/bug-regex13.c (tests): Add new tests.
1856 2003-12-21  Roland McGrath  <roland@redhat.com>
1858         * manual/arith.texi (Parsing of Integers): Typo fix.
1860 2003-12-20  Roland McGrath  <roland@frob.com>
1862         * sysdeps/generic/ifreq.c (__ifreq) [_HAVE_SA_LEN]: Fix typo:
1863         add missing dereference of IFREQS before counting loop.
1865 2003-12-21  Andreas Schwab  <schwab@suse.de>
1867         * sysdeps/m68k/m68020/bits/atomic.h: Avoid matching memory
1868         constraints.
1870 2003-12-20  Ulrich Drepper  <drepper@redhat.com>
1872         * elf/rtld.c (dl_main): Optimize order of subexpressions in if().
1874 2003-12-18  Ulrich Drepper  <drepper@redhat.com>
1876         * stdio-common/printf_fp.c: Add support to use alternative decimal
1877         digits.
1878         * stdio-common/vfprintf.c (vfprintf): Pass use_outdigits flags to
1879         __printf_fp.  Patch by Hamed Malek <hamed@bamdad.org>.
1881 2003-12-18  Carlos O'Donell  <carlos@baldric.uwo.ca>
1883         * sysdeps/unix/sysv/linux/hppa/clone.S (__clone) [PIC]: Save PIC,
1884         reload PIC if we need to call __syscall_error, cleanup asm.
1886 2003-12-17  Carlos O'Donell  <carlos@baldric.uwo.ca>
1888         * sysdeps/hppa/fpu/fclrexcpt.c (feclearexcept): Right shift
1889         FE_ALL_EXCEPT before complimenting.
1890         * sysdeps/hppa/fpu/fegetenv.c (fegetenv): Use asm 'ma,' completer,
1891         and gcc '+r' constraint.
1892         * sysdeps/hppa/fpu/feholdexcpt.c (feholdexcept): Likewise.
1893         * sysdeps/hppa/fpu/fesetenv.c (fesetenv): Likewise.
1894         * sysdeps/hppa/fpu/feupdateenv.c (feupdateenv): Read raised
1895         exception bits, OR with envp, pass to fesetenv.
1896         * sysdeps/hppa/fpu/fraiseexcpt.c (feraiseexcept): Add delayed
1897         exception flushing, FE_UNDERFLOW is DBL_MIN/3.0, FE_INEXACT is
1898         triggered by M_PI/69.69 converted to single precision.
1899         * sysdeps/hppa/fpu/fsetexcptflg.c (fesetexceptflag): Set enable
1900         bits not raised exception bits.
1902         * sysdeps/hppa/Makefile: Add dl-symaddr and dl-fptr to the
1903         correct build strings.
1904         * sysdeps/hppa/dl-fptr.h: New file.
1905         * sysdeps/hppa/dl-fptr.c: Removed.
1906         * sysdeps/hppa/dl-symaddr.c (_dl_symbol_address): Use _dl_make_ftpr,
1907         remove const qualifier for map.
1908         (_dl_function_address): Removed.
1909         * sysdeps/hppa/dl-lookupcfg.h: DL_LOOKUP_ADDRESS must clear
1910         PLABEL32 bits, define DL_AUTO_FUNCTION_ADDRESS and
1911         DL_STATIC_FUNCTION_ADDRESS, DL_DT_INIT_ADDRESS and
1912         DL_DT_FINI_ADDRESS use the previous two macros.
1914 2003-12-17  Jakub Jelinek  <jakub@redhat.com>
1916         * malloc/mtrace.c (tr_old_memalign_hook): New variable.
1917         (tr_memalignhook): New function.
1918         (mtrace): Register tr_memalignhook.
1919         (muntrace): Deregister tr_memalignhook.
1920         * malloc/malloc.c (__posix_memalign): If __memalign_hook != NULL,
1921         call it directly instead of memalign_internal.
1923 2003-12-17  Ulrich Drepper  <drepper@redhat.com>
1925         * misc/mntent_r.c: Change encoding to match recently changed decoder.
1926         Patch by Alexander Achenbach <xela@slit.de>.
1928 2003-12-16  Steven Munroe  <sjmunroe@us.ibm.com>
1930         * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: Correct definition of
1931         vrregset_t.
1933 2003-12-16  Steven Munroe  <sjmunroe@us.ibm.com>
1935         * sysdeps/unix/sysv/linux/powerpc/sys/procfs.h [!__PPC64_ELF_H]: Extend
1936         conditional to include typedef elf_vrreg_t.
1938 2003-12-17  Paolo Bonzini  <bonzini@gnu.org>
1940         * posix/regexec.c (re_search_internal): Limit search to the
1941         beginning of the buffer if the initial states are empty for
1942         contexts that do not include CONTEXT_BEGBUF or, if
1943         !preg->newline_anchor, that do not include any one of
1944         CONTEXT_BEGBUF and CONTEXT_NEWLINE.
1946 2003-12-17  Andreas Jaeger  <aj@suse.de>
1948         * sysdeps/generic/system.c (__libc_system): Fix typo, reported by
1949         Kevin Pedretti <pedretti@ieee.org>.
1951 2003-12-17  Ulrich Drepper  <drepper@redhat.com>
1953         * elf/rtld.c: Don't use strong_alias to define _rtld_local.  This
1954         removes the visibility attributes which might be defined earlier
1955         for some gcc versions.  Instead spell out what strong_alias does
1956         plus the visibility.
1958 2003-12-16  Petter Reinholdtsen  <pere@hungry.com>
1960         * posix/regex_internal.h: Make sure the regex code compile
1961         with non-GCC compilers by hiding attributes.
1963 2003-12-16  Jakub Jelinek  <jakub@redhat.com>
1964             Paolo Bonzini  <bonzini@gnu.org>
1966         * posix/regexec.c (group_nodes_into_DFAstates): Never produce
1967         dests_ch items that are empty.
1969 2003-12-14  Paolo Bonzini  <bonzini@gnu.org>
1971         * posix/regexec.c (check_arrival): Remove duplicate test.
1973 2003-12-15  Ulrich Drepper  <drepper@redhat.com>
1975         * posix/regcomp.c: Make !RE_ENABLE_I18N work again.
1976         * posix/regex_internal.c: Likewise.
1977         * posix/regexec.c: Likewise.
1978         Patch by Paolo Bonzini.
1980 2003-12-14  Paolo Bonzini  <bonzini@gnu.org>
1982         * posix/regex_internal.c (re_acquire_state_context):
1983         Compare the node sets after all the other comparisons.
1985 2003-12-13  Paolo Bonzini  <bonzini@gnu.org>
1987         * posix/regexec.c (find_subexp_node, check_arrival,
1988         check_arrival_add_next_nodes, check_arrival_expand_ecl,
1989         check_arrival_expand_ecl_sub, expand_bkref_cache):
1990         Rename the FL_OPEN parameter to TYPE, which is either
1991         OP_OPEN_SUBEXP or OP_CLOSE_SUBEXP.  Callers adjusted.
1993 2003-12-12  Andreas Jaeger  <aj@suse.de>
1995         * sysdeps/unix/sysv/linux/x86_64/syscall.S: Pass also 6th argument
1996         to syscall.
1998 2003-12-11  Ulrich Drepper  <drepper@redhat.com>
2000         * sysdeps/unix/sysv/linux/kernel-features.h: Remove __ASSUME_VSYSCALL.
2001         There might always be processes which have no vDSO.
2002         * sysdeps/generic/dl-sysdep.c: Remove __ASSUME_VSYSCALL uses.
2003         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
2005 2003-12-11  Carlos O'Donell  <carlos@baldric.uwo.ca>
2007         * sysdeps/generic/dl-fptr.c (COMPARE_AND_SWAP): Pass new and old
2008         in the right order.
2010 2003-12-01  Jes Sorensen  <jes@wildopensource.com>
2012         * rt/tst-clock.c (do_test): Print message when skipping
2013         CLOCK_PROCESS_CPUTIME_ID test.
2015         * sysdeps/unix/sysv/linux/ia64/clock_getcpuclockid.c: New file.
2016         Provide CLOCK_PROCESS_CPUTIME_ID only if /proc/sal/itc_drift is 0.
2018 2003-12-02  David Mosberger  <davidm@hpl.hp.com>
2020         * sysdeps/ia64/elf/initfini.c: Add unwind info.
2022         * sysdeps/ia64/dl-machine.h (elf_machine_matches_host): Mark with
2023         attribute "unused".
2024         (elf_machine_dynamic): Mark with attributes "unused" and "const".
2025         (elf_machine_runtime_setup): Likewise.
2027         * sysdeps/generic/dl-fptr.c (make_fptr_table): Mark with
2028         attribute "always_inline".
2029         * sysdeps/ia64/dl-machine.h (__ia64_init_bootstrap_fdesc_table):
2030         Likewise.
2032         * configure.in: Check whether compiler has libunwind support.
2033         * config.make.in (have-cc-with-libunwind): New variable.
2034         * config.h.in (HAVE_CC_WITH_LIBUNWIND): New macro.
2035         * Makeconfig (gnulib): If have-cc-with-libunwind is "yes", also
2036         mention -lunwind.
2038 2003-11-12  David Mosberger  <davidm@hpl.hp.com>
2040         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Define DO_CALL_VIA_BREAK.
2041         Redefine DO_CALL to use vdso if supported, otherwise DO_CALL_VIA_BREAK.
2042         Likewise for DO_INLINE_SYSCALL.  Make INTERNAL_SYSCALL use
2043         DO_INLINE_SYSCALL.
2045         * sysdeps/unix/sysv/linux/ia64/vfork.S: Use DO_CALL_VIA_BREAK()
2046         instead of DO_CALL().
2048         * sysdeps/unix/sysv/linux/ia64/clone2.S: Use break directly instead
2049         of DO_CALL().
2051         * sysdeps/unix/sysv/linux/ia64/brk.S (__curbrk): Restructure it
2052         to take advantage of DO_CALL() macro.
2053         * sysdeps/unix/sysv/linux/ia64/setcontext.S: Likewise.
2054         * sysdeps/unix/sysv/linux/ia64/getcontext.S: Likewise.
2056         * elf/rtld.c (dl_main): Restrict dl_sysinfo_dso check to first
2057         program header.  On ia64, the check failed previously because
2058         there are two program headers.
2060 2003-12-10  Andreas Jaeger  <aj@suse.de>
2061             Ruediger Oertel  <ro@suse.de>
2063         * sysdeps/alpha/fpu/e_sqrt.c: Mark sqrt_data as used.
2065 2003-12-07  Ulrich Drepper  <drepper@redhat.com>
2067         * sysdeps/i386/fpu/s_nexttowardf.c: Construct overflow value correctly.
2068         * sysdeps/i386/fpu/s_nexttoward.c: Likewise.
2069         * sysdeps/ieee754/ldbl-128/s_nexttoward.c: Likewise.
2070         * sysdeps/ieee754/ldbl-96/s_nexttoward.c: Likewise.
2071         * sysdeps/generic/s_nexttowardf.c: Likewise.
2072         * math/Makefile (tests): Add bug-nexttoward.
2073         * math/bug-nexttoward.c: New file.
2075         * sysdeps/generic/s_nextafter.c: Make sure overflow exception is set.
2076         * sysdeps/ieee754/flt-32/s_nextafterf.c: Likewise.
2077         * math/bug-nextafter.c (main): Add tests for overflow and negative
2078         values.
2080 2003-12-06  Ulrich Drepper  <drepper@redhat.com>
2082         * math/Makefile (tests): Add bug-nextafter.
2083         * math/bug-nextafter.c: New file.
2084         * sysdeps/generic/s_nextafter.c: Construct overflow value correctly.
2085         * sysdeps/ieee754/flt-32/s_nextafterf.c: Likewise.
2086         * math/libm-test.inc (nextafter_test): Add test for overflow after
2087         +/-FLT_MAX etc.
2089 2003-12-04  Steven Munroe  <sjmunroe@us.ibm.com>
2091         * sysdeps/powerpc/fpu/fgetexcptflg.c (__fegetexceptflag): Add masking
2092         of fenv.
2093         * sysdeps/powerpc/nofpu/fgetexcptflg.c (__fegetexceptflag): Likewise.
2095 2003-12-05  Martin Schwidefsky  <schwidefsky@de.ibm.com>
2097         * sysdeps/s390/s390-32/elf/setjmp.S (setjmp, __setjmp): Add END
2098         statements.
2099         * sysdeps/s390/s390-64/elf/setjmp.S (setjmp, __setjmp): Likewise.
2100         * sysdeps/s390/s390-32/sysdep.h (ENTRY): Add cfi_startproc directive.
2101         (END): Add cfi_endproc directive.
2102         * sysdeps/s390/s390-64/sysdep.h (ENTRY, END): Likewise.
2103         * sysdeps/unix/sysv/linux/s390/s390-32/socket.S (__socket): Remove
2104         cfi_startproc and cfi_endproc directive.
2105         * sysdeps/unix/sysv/linux/s390/s390-64/socket.S (__socket): Likewise.
2106         * sysdeps/s390/s390-32/addmul_1.S (__mpn_addmul_1): Add CFI directives.
2107         * sysdeps/s390/s390-32/add_n.S (__mpn_add_n): Likewise.
2108         * sysdeps/s390/s390-64/add_n.S (__mpn_add_n): Likewise.
2109         * sysdeps/s390/s390-32/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
2110         Likewise.
2111         * sysdeps/s390/s390-64/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
2112         Likewise.
2113         * sysdeps/s390/s390-32/mul_1.S (__mpn_mul_1): Likewise.
2114         * sysdeps/s390/s390-32/sub_n.S (__mpn_sub_n): Likewise.
2115         * sysdeps/s390/s390-64/sub_n.S (__mpn_sub_n): Likewise.
2116         * sysdeps/unix/sysv/linux/s390/s390-32/mmap64.S (__mmap64): Likewise.
2117         * sysdeps/unix/sysv/linux/s390/s390-32/mmap.S (__mmap): Likewise.
2118         * sysdeps/unix/sysv/linux/s390/s390-64/mmap.S (__mmap): Likewise.
2119         * sysdeps/unix/sysv/linux/s390/s390-32/syscall.S (syscall): Likewise.
2120         * sysdeps/unix/sysv/linux/s390/s390-64/syscall.S (syscall): Likewise.
2121         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S (__syscall_error):
2122         Likewise.
2123         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S (__syscall_error):
2124         Likewise.
2125         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S (__clone): Add CFI
2126         directives. Move thread_start out of ENTRY/PSEUDO_END block to
2127         make backchain terminate.
2128         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S (__clone): Likewise.
2130         * sysdeps/s390/s390-32/backtrace.c (trace_arg): New structure.
2131         (unwind_backtrace, unwind_getip): New variables.
2132         (init, __backchain_backtrace, backtrace_helper): New functions.
2133         (__backtrace): Use unwind info for backtrace instead of backchain
2134         walking if the unwind functions can be found.
2135         * sysdeps/s390/s390-64/backtrace.c: Likewise.
2137         * sysdeps/unix/sysv/linux/s390/s390-32/posix_fadvise64.c: New file.
2139         * sysdeps/unix/sysv/linux/s390/sys/procfs.h (ELF_NGREG32): New #define.
2140         (elf_greg_t32, elf_gregset_t32, elf_fpregset_t32): New types.
2141         (elf_prstatus32, elf_prpsinfo32): New structures.
2142         (prgregset32_t, prfpregset32_t, prstatus32_t, prpsinfo32_t): New types.
2144         * scripts/data/c++-types-s390-linux-gnu.data: New file.
2145         * scripts/data/c++-types-s390x-linux-gnu.data: New file.
2147 2003-11-30  Petter Reinholdtsen  <pere@hungry.com>
2149         * stdlib/strfmon.c: Correct formatting of international currency
2150         values.  The international currency formatting should prefer the
2151         int_* values if they are set for a locale, and use the domestic
2152         values if the int_* values are unset.
2154 2003-12-03  Jakub Jelinek  <jakub@redhat.com>
2156         * posix/Makefile (distribute): Add BOOST.tests.
2157         (tests): Add tst-boost, depend on tst-boost-mem.
2158         (generated): Add tst-boost-mem and tst-boost.mtrace.
2159         (tst-boost-ARGS, tst-boost-ENV): Set.
2160         ($(objpfx)tst-boost-mem): New.
2161         * posix/tst-boost.c: New test.
2162         * posix/BOOST.tests: New file.
2164         * posix/Makefile (distribute): Add PCRE.tests.
2165         (tests): Add tst-pcre, depend on tst-pcre-mem.
2166         (generated): Add tst-pcre-mem and tst-pcre.mtrace.
2167         (tst-pcre-ARGS, tst-pcre-ENV): Set.
2168         ($(objpfx)tst-pcre-mem): New.
2169         * posix/tst-pcre.c: New test.
2170         * posix/PCRE.tests: New file.
2172 2003-12-02  Jakub Jelinek  <jakub@redhat.com>
2174         * intl/locale.alias: Use nb_NO instead of no_NO for bokm.l.
2176         * sysdeps/powerpc/fpu/libm-test-ulps: Regenerated.
2177         * sysdeps/s390/fpu/libm-test-ulps: Regenerated.
2179 2003-12-03  Ulrich Drepper  <drepper@redhat.com>
2181         * locale/programs/locarchive.c (enlarge_archive): Print size info
2182         only in verbose mode.
2184         * locale/iso-3166.def: Three letter code of Romania changed.
2186 2003-12-02  Roland McGrath  <roland@redhat.com>
2188         * scripts/config.sub: Update from master, timestamp='2003-10-20'.
2189         * scripts/config.guess: Update from master, timestamp='2003-10-20'.
2191 2003-11-30  Andreas Jaeger  <aj@suse.de>
2193         * config.make.in (fno-unit-at-a-time): Define.
2195         * configure.in: Add test for -fno-unit-at-a-time.
2196         Fix text for -fpie.
2198         * csu/Makefile (CFLAGS-initfini.s): Add $(fno_unit_at_a_time).
2199         * locale/Makefile (CFLAGS-loadlocale.c): Likewise.
2201 2003-12-01  Automatic
2203         * version.h (VERSION): Bump to 2.3.3.
2205 2003-11-30  Andreas Jaeger  <aj@suse.de>
2207         * stdio-common/vfprintf.c: Do not inline buffered_vfprintf to
2208         decrease stack usage.
2210 2003-11-30  Andreas Schwab  <schwab@suse.de>
2212         * sysdeps/unix/sysv/linux/m68k/sysdep.h (PSEUDO_ERRVAL)
2213         (PSEUDO_END_ERRVAL, ret_ERRVAL): Define.
2215 2003-11-29  Ulrich Drepper  <drepper@redhat.com>
2217         * misc/mntent_r.c (decode_name): Be compatible with util-linux and
2218         recognize \134 as well.
2220 2003-10-09  H.J. Lu  <hongjiu.lu@intel.com>
2222         * sysdeps/ia64/fpu/fraiseexcpt.c: Don't include <asm/fpu.h>.
2224 2003-10-08  H.J. Lu  <hongjiu.lu@intel.com>
2226         * sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h: Don't include
2227         <asm/fpu.h>.
2228         (struct ia64_fpreg): New definition.
2230         * sysdeps/unix/sysv/linux/ia64/sys/procfs.h: Don't include
2231         <asm/elf.h>.
2232         (ELF_NGREG): New #define.
2233         (ELF_NFPREG): Likewise.
2234         (elf_greg_t): New type.
2235         (elf_gregset_t): Likewise.
2236         (elf_fpreg_t): Likewise.
2237         (elf_fpregset_t): Likewise.
2239 2003-10-08  H.J. Lu  <hongjiu.lu@intel.com>
2241         * sysdeps/unix/sysv/linux/ia64/sys/ptrace.h: Include
2242         <sys/ucontext.h>.
2243         (__ptrace_request): Add PTRACE_GETREGS and PTRACE_SETREGS.
2244         (pt_all_user_regs): New type.
2246 2003-10-10  Simon Josefsson  <jas@extundo.com>
2248         * argp/argp-namefrob.h [!_LIBC]: Include mempcpy.h, strcase.h,
2249         strchrnul.h, strndup.h (from gnulib).
2250         * argp/argp-parse.c: Add alloca.h include snippet verbatim from
2251         Autoconf manual.
2252         * argp/argp-help.c: Replace alloca.h include snipper with verbatim
2253         Autoconf manual version.
2254         * argp/argp.h: Map __restrict to restrict or empty string when
2255         necessary, copied verbatim from posix/regex.h.
2257 2003-10-09  Steven Munroe  <sjmunroe@us.ibm.com>
2259         * Makefile: Allow for c++-types-$(config-machine)-$(config-os).data in
2260         addition to c++-types-$(base-machine)-$(config-os).data.
2261         * scripts/data/c++-types-powerpc-linux-gnu.data: New file.
2262         * scripts/data/c++-types-powerpc64-linux-gnu.data: New file.
2264 2003-11-28  Ulrich Drepper  <drepper@redhat.com>
2266         * misc/mntent_r.c (decode_name): Fix decoding of tab, add decoding
2267         of newline.
2268         * manual/sysinfo.texi (mtab): Adjust description accordingly.
2269         Reported by Andries.Brouwer@cwi.nl.
2271         * sysdeps/x86_64/fpu/libm-test-ulps: Add some more minor changes
2272         to compensate other setup.
2274 2003-11-27  Andreas Jaeger  <aj@suse.de>
2276         * sysdeps/x86_64/fpu/libm-test-ulps: Add ulps for new atan2 test.
2278         * math/libm-test.inc (atan2_test): Add test that run infinitly.
2279         Reported by "Willus" <etc231etc231@willus.com>.
2281 2003-11-27  Michael Matz  <matz@suse.de>
2283         * sysdeps/ieee754/dbl-64/mpsqrt.c (fastiroot): Fix 64-bit problem
2284         with wrong types.
2286 2003-11-28  Jakub Jelinek  <jakub@redhat.com>
2288         * posix/regexec.c (acquire_init_state_context): Make inline.
2289         Add always_inline attribute.
2290         (check_matching): Add BE macro.  Move if (cur_state->has_backref)
2291         into if (dfa->nbackref).
2292         (sift_states_backward): Fix comment.
2293         (transit_state): Add BE macro.  Move if (next_state->has_backref)
2294         into if (dfa->nbackref && next_state).  Don't check for next_state
2295         != NULL twice.
2296         * posix/regcomp.c (peek_token): Use opr.ctx_type instead of opr.idx
2297         for ANCHOR.
2298         (parse_expression): Only call init_word_char if word context will be
2299         needed.
2301         * posix/bug-regex11.c (tests): Add new tests.
2303         * posix/tst-regex.c: Include getopt.h.
2304         (timing): New variable.
2305         (main): Set timing to 1 if --timing argument is present.
2306         Add 2 new tests.
2307         (run_test, run_test_backwards): Handle timing.
2309 2003-11-27  Jakub Jelinek  <jakub@redhat.com>
2311         * posix/regex_internal.h (re_string_t): Remove mbs_case field.
2312         Add offsets, valid_raw_len, raw_len, raw_stop, mbs_allocated and
2313         offsets_needed fields.  Change icase, is_utf8 and map_notascii
2314         type from int bitfield to unsigned char.
2315         (MBS_ALLOCATED, MBS_CASE_ALLOCATED): Remove.
2316         (build_wcs_upper_buffer): Change prototype to return int.
2317         (re_string_peek_byte_case, re_string_fetch_byte_case): Remove
2318         defines, add prototypes.
2319         * posix/regex_internal.c (re_string_allocate): Don't initialize
2320         stop here.  Don't initialize mbs_case.  Set valid_raw_len.
2321         Use mbs_allocated instead of MBS_* macros.
2322         (re_string_construct): Don't initialize stop and valid_len here.
2323         Don't initialize mbs_case.  Use mbs_allocated instead of MBS_*
2324         macros.  Reallocate buffers if build_wcs_upper_buffer converted
2325         too few bytes.  Set valid_len to bufs_len only for single byte
2326         no translation and set in that case valid_raw_len as well.
2327         (re_string_realloc_buffers): Reallocate offsets if not NULL.
2328         Use mbs_allocated instead of MBS_ALLOCATED.  Don't reallocate
2329         mbs_case.
2330         (re_string_construct_common): Initialize raw_len, mbs_allocated,
2331         stop and raw_stop.
2332         (build_wcs_buffer): Apply pstr->trans before mbrtowc instead of
2333         after it.  Set valid_raw_len.  Don't set mbs_case.
2334         (build_wcs_upper_buffer): Return REG_NOERROR or REG_ESPACE.
2335         Only use the fast path if !pstr->offsets_needed.  Apply pstr->trans
2336         before mbrtowc instead of after it.  If upper case character
2337         uses different number of bytes than lower case, goto to the
2338         slow path.  Don't call towupper unnecessarily twice.  Set
2339         valid_raw_len as well.  Handle in the slow path the case if
2340         lower and upper case use different number of characters.
2341         Don't set mbs_case.
2342         (re_string_skip_chars): Use valid_raw_len instead of valid_len.
2343         (build_upper_buffer): Don't set mbs_case.  Add BE macro.  Set
2344         valid_raw_len.
2345         (re_string_translate_buffer): Set mbs instead of mbs_case.  Set
2346         valid_raw_len.
2347         (re_string_reconstruct): Use raw_len/raw_stop to initialize
2348         len/stop.  Clear valid_raw_len and offsets_needed when clearing
2349         valid_len.  Use mbs_allocated instead of MBS_* macros.
2350         Check original offset against valid_raw_len instead of valid_len.
2351         Remove mbs_case handling.  Adjust valid_raw_len together with
2352         valid_len.  If is_utf8 and looking for tip context, apply
2353         pstr->trans first.  If buffers start with partial multi-byte
2354         character, initialize mbs array as well if mbs_allocated.
2355         Check return value of build_wcs_upper_buffer.
2356         (re_string_peek_byte_case): New function.
2357         (re_string_fetch_byte_case): New function.
2358         (re_string_destruct): Use mbs_allocated instead of MBS_ALLOCATED.
2359         Don't free mbs_case.  Free offsets.
2360         * posix/regcomp.c (init_dfa): Only check if charset name is UTF-8
2361         if mb_cur_max == 6.
2362         * posix/regexec.c (re_search_internal): Initialize input.raw_stop
2363         as well.  Use valid_raw_len instead of valid_len when looking
2364         through fastmap.  Adjust registers through input.offsets.
2365         (extend_buffers): Allow build_wcs_upper_buffer to fail.
2366         * posix/bug-regex18.c (tests): Enable #ifdefed out tests.  Add new
2367         tests.
2369 2003-11-26  Jakub Jelinek  <jakub@redhat.com>
2371         * posix/regexec.c (check_subexp_limits): Only check close
2372         subexpression limitation if one is found.  Formatting.
2373         (sift_states_backward, check_arrival, check_arrival_add_next_nodes):
2374         Formatting.
2375         * posix/bug-regex11.c (tests): Enable most #ifdefed out tests.
2376         Add new test.
2378 2003-11-26  Ulrich Drepper  <drepper@redhat.com>
2380         * sysdeps/unix/sysv/linux/kernel-features.h
2381         (__ASSUME_PROT_GROWSUPDOWN): Define for 2.6.1 and up.
2382         * sysdeps/unix/sysv/linux/dl-execstack.c: Omit compatibility code
2383         if __ASSUME_PROT_GROWSUPDOWN is defined.
2385 2003-11-26  Andreas Jaeger  <aj@suse.de>
2387         * sysdeps/unix/sysv/linux/dl-execstack.c
2388         (_dl_make_stack_executable): Set dl_stack_flags always for
2389         success.
2391 2003-06-22  Petter Reinholdtsen  <pere@hungry.com>
2393         * locale/program/ld-monetary.c: Only check the first three
2394         characters in int_curr_symbol against ISO-4217, to make the
2395         separator character used by a locale independent of the content
2396         in iso-4217.def.
2397         * locale/iso-4217.def: Remove the space character from all
2398         currency values to get the new test code in ld-monetary.c working.
2400 2003-11-21  David Mosberger  <davidm@hpl.hp.com>
2402         * elf/soinit.c (_fini): Put _fini() in .init_array section if
2403         HAVE_INITFINI_ARRAY is defined.
2405 2003-11-25  Ulrich Drepper  <drepper@redhat.com>
2407         * sysdeps/i386/fpu/bits/mathinline.h: Introduce __libc_sqrtl symbol.
2408         Define it appropriately after last change.  Use it where __sqrtl
2409         was used.
2411 2003-11-25  H.J. Lu  <hongjiu.lu@intel.com>
2413         * sysdeps/i386/fpu/bits/mathinline.h (sqrt): Don't inline
2414         sqrt for gcc 3.3 and above.
2416 2003-11-25  Ulrich Drepper  <drepper@redhat.com>
2418         * posix/runptests.c (main): Make errors fatal.
2419         * posix/PTESTS: One test in GA135 and GA136 check functionality
2420         which seems not guaranteed.
2422 2003-11-25  Jakub Jelinek  <jakub@redhat.com>
2424         * posix/regexec.c (re_search_internal): If prune_impossible_nodes
2425         returned REG_NOMATCH, set match_last to -1.  Don't initialize
2426         pmatch[0] needlessly.  Fix comment.
2427         (prune_impossible_nodes): Don't segfault on NULL state_log entry.
2428         (set_regs): Fix comment.
2429         * posix/regcomp.c (parse_bracket_exp): Only set has_plural_match
2430         if adding both SIMPLE_BRACKET and COMPLEX_BRACKET.
2431         (build_charclass_op): Set has_plural_match if adding both
2432         SIMPLE_BRACKET and COMPLEX_BRACKET.
2433         * posix/bug-regex11.c (tests): Fix register values for one commented
2434         out test.  Add new tests.
2436         * posix/regex_internal.c (re_string_allocate): Make sure init_len
2437         is at least dfa->mb_cur_max.
2438         (re_string_reconstruct): If is_utf8, don't fall back into
2439         re_string_skip_chars just because idx points into a middle of
2440         valid UTF-8 character.  Instead, set the wcs bytes which correspond
2441         to the partial character bytes to WEOF.
2442         * posix/regexec.c (re_search_internal): Allocate input.bufs_len + 1
2443         instead of dfa->nodes_len + 1 state_log entries initially.
2444         * posix/bug-regex20.c (main): Uncomment backwards case insensitive
2445         tests.
2447 2003-11-24  Jakub Jelinek  <jakub@redhat.com>
2449         * posix/regex_internal.h (re_token_t): Add word_char bit.  Add
2450         comment.
2451         (re_dfa_t): Add sb_char field.
2452         (bitset_mask): New function.
2453         * posix/regcomp.c (free_dfa_content): Free sb_char.
2454         (init_dfa): Don't initialize word_char unnecessarily.
2455         Initialize sb_char.
2456         (duplicate_node): Don't duplicate !word_char CHARACTERs with
2457         NEXT_WORD_CONSTRAINT constraint or word_char CHARACTERs with
2458         NEXT_NOTWORD_CONSTRAINT.  Return -1 in *new_idx instead.
2459         (duplicate_node_closure): Handle clone_dest == -1 from
2460         duplicate_node.
2461         (peek_token): Initialize word_char bit.
2462         (parse_expression, parse_dup_op): Add comments.
2463         (parse_bracket_exp): Don't set bitmask bits for multi-byte char
2464         starting bytes here at the beginning.  Mask off the bits right
2465         before creating SIMPLE_BRACKET.
2466         (build_charclass_op): Likewise.
2467         * posix/regexec.c (group_nodes_into_DFAstates) <case OP_PERIOD>: Only
2468         set accept bits for single-byte characters.
2469         (group_nodes_into_DFAstates): Don't rely on characters 0 .. 127
2470         being single byte encoded and the rest multi-byte.
2471         * posix/bug-regex19.c (tests): Add new tests.
2472         (do_mb_tests): Initialize t to *test.
2473         (main): Fail even on do_mb_tests errors.
2475 2003-11-23  Ulrich Drepper  <drepper@redhat.com>
2477         * posix/regexec.c: Correct several memory allocation problems.
2478         Add more BE.
2479         * posix/regex_internal.c: Likewise.
2480         * posix/regcomp.c: Likewise.
2482         * posix/regexec.c: Add const in a number of places.
2483         * posix/regex_internal.h: Make EPSILON_BIT a macro to help
2484         debugging.  Its value isn't important.
2486 2003-11-22  Ulrich Drepper  <drepper@redhat.com>
2488         * posix/PTESTS: Fix first test of GA143.
2490 2003-11-21  Ulrich Drepper  <drepper@redhat.com>
2492         * posix/regex_internal.c (re_dfa_add_node): Add BE, reallocation
2493         isn't likely.
2495         * locale/programs/charmap.c (charmap_read): If encoding is found
2496         not ASCII compatible, set enc_not_ascii_compatible.
2497         * locale/programs/charmap.h: Declare enc_not_ascii_compatible.
2498         * locale/programs/ld-ctype.c (ctype_startup): If
2499         enc_not_ascii_compatible is set, initialize to_nonascii to 1.
2501 2003-11-22  Jakub Jelinek  <jakub@redhat.com>
2503         * elf/rtld.c (process_envvars): Only honor LD_USE_LOAD_BIAS
2504         if !__libc_enable_secure.
2506         * sysdeps/generic/ldsodefs.h (_dl_use_load_bias): New _rtld_global
2507         field.
2508         * elf/rtld.c (_rtld_global): Initialize _dl_use_load_bias field.
2509         (dl_main): Set GL(dl_use_load_bias) default.
2510         (process_envvars): Set GL(dl_use_load_bias) from LD_USE_LOAD_BIAS.
2511         Add EXTRA_LD_ENVVARS_13.
2512         * elf/dl-support.c (_dl_use_load_bias): New variable.
2513         * elf/dl-load.c (_dl_map_object_from_fd): Mask c->mapstart
2514         with GL(dl_use_load_bias).
2515         * sysdeps/generic/unsecvars.h (UNSECURE_ENVVARS): Add
2516         LD_USE_LOAD_BIAS.
2517         * sysdeps/unix/sysv/linux/dl-librecon.h (EXTRA_LD_ENVVARS): Remove.
2518         (EXTRA_LD_ENVVARS_LINUX): Renamed to...
2519         (EXTRA_LD_ENVVARS_13): ... this.  Remove case at the beginning.
2520         * sysdeps/unix/sysv/linux/i386/dl-librecon.h (EXTRA_LD_ENVVARS):
2521         Don't undefine first.  Remove EXTRA_LD_ENVVARS_LINUX.
2523 2003-11-21  Ulrich Drepper  <drepper@redhat.com>
2525         * posix/regcomp.c (duplicate_node): Remove unnecessary local variable.
2527         * posix/regcomp.c (re_dfa_add_tree_node): Make fourth parameter a
2528         pointer.  Adjust callers.
2530         * posix/regcomp.c (fetch_token): Change interface to match
2531         peek_token.  This avoids some copying and reduces code size.
2533 2003-11-21  Jakub Jelinek  <jakub@redhat.com>
2535         * posix/bug-regex19.c (tests): Add more tests.
2537         * posix/bug-regex11.c: And one more commented out test.
2539         * posix/tst-rxspencer.c (mb_tests): Don't run identical multi-byte
2540         tests multiple times unnecessarily.
2542         * posix/bug-regex19.c (BRE, ERE): Define.
2543         (tests): Add many new tests, remove UTF-8 ones.
2544         (do_one_test, do_mb_tests): New functions.
2545         (main): Rewritten using do_one_test and do_mb_tests.
2547 2003-11-20  Ulrich Drepper  <drepper@redhat.com>
2549         * posix/PTESTS: Fix first test in GA143.
2551 2003-11-20  Jakub Jelinek  <jakub@redhat.com>
2553         * posix/regex_internal.h (re_dfastate_t): Remove trtable_search.
2554         Add word_trtable.
2555         * posix/regex_internal.c (create_newstate_common, free_state):
2556         Don't free trtable_search.
2557         * posix/regexec.c (check_matching): Remove fl_search argument.
2558         (transit_state_sb): Likewise.  #ifdef out as unused.
2559         (build_trtable): Remove fl_search argument.  Set state->word_trtable
2560         and state->trtable.  Build separate word and non-word tables if
2561         multi-byte and they differ for some character.
2562         (transit_state): Remove fl_search argument.  Don't update
2563         state->trtable here.  Handle state->word_trtable.
2564         #ifdef out unused call to transit_state_sb.
2565         (re_search_internal): Update check_matching caller.
2566         (group_nodes_into_DFAstates): Don't clear non-ascii chars in accepts
2567         bitmask for multi-byte locales.
2568         * posix/bug-regex19.c (tests): Enable some commented out tests, add
2569         2 new tests.
2570         * posix/tst-rxspencer.c (mb_tests): Don't test [[=b=]] for now as
2571         multi-byte.  Don't run identical multi-byte tests multiple times
2572         unnecessarily.
2573         (main): Check setlocale return value.
2574         * posix/Makefile (tst-rxspencer-ARGS): Add --utf8 argument.
2575         (tst-rxspencer-ENV): Remove MALLOC_TRACE, add LOCPATH.
2576         ($(objpfx)tst-rxspencer-mem): Run another tst-rxspencer test
2577         here, without --utf8 argument but with MALLOC_TRACE.
2579 2003-11-19  Jakub Jelinek  <jakub@redhat.com>
2581         * posix/regexec.c (extend_buffers): Don't allocate
2582         twice as big state_log as needed.  Don't modify pstr->valid_len
2583         for mb_cur_max == 1 !icase !trans.
2585         * posix/regcomp.c (free_bin_tree): Removed.
2586         (create_tree): Add dfa argument.  Don't call re_malloc for
2587         each tree, instead allocate from str_tree_storage.
2588         (re_dfa_add_tree_node): New function.
2589         (free_dfa_content): Handle freeing if dfa->nodes == NULL
2590         or dfa->state_table == NULL.
2591         (re_compile_internal): Call free_dfa_content if init_dfa
2592         fails.  Call free_workarea_compile, re_string_destruct
2593         and free_dfa_content for most of the other failure paths.
2594         (init_dfa): Initialize str_tree_storage_idx.
2595         Don't clear any fields on allocation failure.
2596         (free_workarea_compile): Free str_tree_storage chunks
2597         instead of free_bin_tree (dfa->str_tree).
2598         (parse): Call re_dfa_add_tree_node instead of re_dfa_add_node
2599         followed by create_tree.  Add dfa argument to remaining
2600         create_tree calls.  Remove new_idx variable.  Remove calls
2601         to free_bin_tree.
2602         (parse_reg_exp, parse_branch, parse_expression, parse_sub_exp,
2603         parse_dup_op, parse_bracket_exp, build_charclass_op): Likewise.
2604         (duplicate_tree): Remove calls to free_bin_tree, add dfa
2605         argument to create_tree.
2606         * posix/regex_internal.h (BIN_TREE_STORAGE_SIZE): Define.
2607         (bin_tree_storage_t): New type.
2608         (re_dfa_t): Add str_tree_storage and str_tree_storage_idx
2609         fields.
2610         * posix/Makefile (tests): Add bug-regex21.
2611         (generated): Add bug-regex21-mem, bug-regex21.mtrace,
2612         tst-rxspencer-mem and tst-rxspencer.mtrace.
2613         (tests): Depend on $(objpfx)bug-regex21-mem
2614         and $(objpfx)tst-rxspencer-mem.
2615         (bug-regex21-ENV, tst-rxspencer-ENV): Set.
2616         ($(objpfx)bug-regex21-mem, $(objpfx)tst-rxspencer-mem): New.
2617         * posix/tst-rxspencer.c (main): Add call to mtrace.
2618         Free line at the end.
2619         * posix/bug-regex21.c: New test.
2621 2003-11-19  Ulrich Drepper  <drepper@redhat.com>
2623         * posix/bug-regex20.c: Correct invalid UTF-8 sequences.
2625         * posix/regex_internal.c (build_wcs_upper_buffer): If mbrtowc
2626         fails, just use the byte, do no fancy conversions.
2628         * posix/regex_internal.h (re_string_first_byte): Use ->valid_len
2629         not ->len.
2630         (re_string_is_single_byte_char): Likewise.
2632 2003-11-18  Ulrich Drepper  <drepper@redhat.com>
2634         * posix/regexec.c (get_subexp): After calling get_subexp_sub
2635         reload buf and bkref_str.  Little optimization by avoiding memcmp.
2637 2003-11-14  David Mosberger   <davidm@hpl.hp.com>
2639         * sysdeps/unix/sysv/linux/ia64/sysdep.h
2640         (GAS_ALIGN_BREAKS_UNWIND_INFO): Define this macro to indicate
2641         that all existing GAS versions have a problem with .align inside
2642         a function.
2643         * sysdeps/ia64/memccpy.S: Work around GAS_ALIGN_BREAKS_UNWIND_INFO bug.
2644         * sysdeps/ia64/memcpy.S: Likewise.
2645         * sysdeps/ia64/memset.S: Likewise.
2646         * sysdeps/ia64/memmove.S: Likewise.  Also move the jump-table to
2647         out of .text into .rodata, where it belongs.
2649         * sysdeps/unix/sysv/linux/ia64/pipe.S: There is no need to
2650         save/restore input-arguments, because they're necessarily
2651         preserved by the kernel to support syscall-restart.
2653 2003-11-18  Jakub Jelinek  <jakub@redhat.com>
2655         * posix/regex_internal.h (re_token_type_t): Remove unused ALT,
2656         END_OF_RE_TOKEN_T and SUBEXP.  Reorder values.  Add OP_UTF8_PERIOD
2657         and EPSILON_BIT.
2658         (IS_EPSILON_NODE): Just test if EPSILON_BIT is set.
2659         (ACCEPT_MB_NODE): Return 1 for OP_UTF8_PERIOD as well.
2660         * posix/regex_internal.c (create_ci_newstate, create_cd_newstate):
2661         Handle OP_UTF8_PERIOD.
2662         (re_string_reconstruct): Set valid_len for single byte char searching
2663         with no translation and case sensitivity.
2664         * posix/regcomp.c (re_compile_fastmap_iter, calc_first): Handle
2665         OP_UTF8_PERIOD.
2666         (re_compile_internal): Don't call optimize_utf8 if preg->translate
2667         != NULL.
2668         (optimize_utf8): Remove BACK_SLASH case.
2669         Transform OP_PERIOD into OP_UTF8_PERIOD if the searching can be
2670         optimized.
2671         (parse_bracket_exp): Don't create SIMPLE_BRACKET if it doesn't have
2672         any bits set and COMPLEX_BRACKET is used.
2673         * posix/regexec.c (transit_state_mb): Fix comment typo.
2674         (group_nodes_into_DFAstates, check_node_accept): Handle
2675         OP_UTF8_PERIOD.
2676         (check_node_accept_bytes): Likewise.  Reorder slightly so that
2677         re_string_char_size_at and re_string_elem_size_at are called
2678         only when needed.
2679         * posix/bug-regex20.c (BRE, ERE): Define.
2680         (tests): Use them to make lines shorter.  Expect . to be
2681         optimized.  Add lots of new tests.
2682         (main): Run (ATM just case sensitive) test with backwards searching
2683         as well.
2685 2003-11-18  Jakub Jelinek  <jakub@redhat.com>
2687         * io/bug-ftw4.c: Include string.h.
2688         * posix/fnmatch.c (mbsinit): Remove define.
2690 2003-11-17  Jakub Jelinek  <jakub@redhat.com>
2692         * posix/regcomp.c (optimize_utf8): Optimize multi-byte chars as
2693         well.
2694         * posix/bug-regex20.c (tests): Add new tests.  Multi-byte char
2695         followed by dup operator is expected to be optimized.
2697         * posix/regexec.c (check_node_accept_bytes): Move nrules and j
2698         variables to the block where they are only used, initialize
2699         nrules only immediately before using it.
2701 2003-11-15  Andreas Jaeger  <aj@suse.de>
2703         * sysdeps/x86_64/fpu/s_scalbnl.S: New file.
2704         * sysdeps/x86_64/fpu/s_truncl.S: New file.
2705         * sysdeps/x86_64/fpu/s_nearbyintl.S: New file.
2706         * sysdeps/x86_64/fpu/s_floorl.S: New file.
2707         * sysdeps/x86_64/fpu/s_ilogbl.S: New file.
2708         * sysdeps/x86_64/fpu/e_remainderl.S: New file.
2710         * math/libm-test.inc (floor_test): Test also Â±0.25.
2711         (ceil_test): Test -0.25.
2713 2003-11-17  Ulrich Drepper  <drepper@redhat.com>
2715         * sysdeps/posix/getaddrinfo.c: Add support for destination address
2716         selection according to RFC 3484.
2718 2003-11-15  Ulrich Drepper  <drepper@redhat.com>
2720         * posix/regex_internal.h: Add forward declaration of re_dfa_t.
2721         Replace last two parameters of re_string_allocate and
2722         re_string_construct with pointer to DFA.
2723         (re_dfa_t): Add map_notascii field.
2724         * posix/regcomp.c (re_compile_internal): Add call of
2725         re_string_construct.
2726         (init_dfa): Initialize map_notascii.
2727         * posix/regex_internal.c: Adjust definitions of re_string_allocate
2728         and re_string_construct.
2729         Pass DFA to re_string_construct.  Adjust definition.  Initialize
2730         map_notascii field.
2731         (build_wcs_upper_buffer): If map_notascii is zero use simplified
2732         method to map ASCII values to upper case.
2733         * posix/regex.c: Include localeinfo.h.
2734         * posix/regexec.c: Adjust call of re_string_allocate.
2736         * locale/langinfo.h: Add _NL_CTYPE_MAP_TO_NONASCII.
2737         * locale/localeinfo.h (LIMAGIC): Change value.
2738         * locale/categories.def. Add entry for _NL_CTYPE_MAP_TO_NONASCII.
2739         * locale/C-ctype.h: Likewise.
2740         * locale/programs/ld-ctype.c: Compute whether any mapping maps from
2741         ASCII to non-ASCII value.  Write out that value.
2743         * wcsmbs/mbsinit.c: Undef mbsinit and __mbsinit.
2744         * include/wchar.h: Provide inline versions of mbsinit and __mbsinit.
2746 2003-11-14  Jakub Jelinek  <jakub@redhat.com>
2748         * posix/tst-rxspencer.c (check_match): @ without any following
2749         characters must match only end of string.
2750         (main): Fix filename in error message.
2752 2003-11-12  David Mosberger  <davidm@hpl.hp.com>
2754         * sysdeps/ia64/dl-machine.h: Force inlining of
2755         elf_machine_runtime_setup().
2757 2003-11-13  Andreas Jaeger  <aj@suse.de>
2759         * math/Makefile (CFLAGS-test-float.c): Add -fno-builtin.
2760         (CFLAGS-test-double.c): Likewise.
2761         (CFLAGS-test-ldouble.c): Likewise.
2762         (CPPFLAGS-test-ifloat.c): Likewise.
2763         (CPPFLAGS-test-idouble.c): Likewise.
2764         (CPPFLAGS-test-ildoubl.c): Likewise.
2766         * math/libm-test.inc (ceil_test): Test ceil (0.25).
2768 2003-11-04  Ulrich Drepper  <drepper@redhat.com>
2770         * sysdeps/unix/sysv/linux/ifaddrs.c: Make sure it's the kernel who
2771         sends the netlink data.
2772         * sysdeps/unix/sysv/linux/check_pf.c: Likewise.
2774 2003-11-13  Jakub Jelinek  <jakub@redhat.com>
2776         * posix/regcomp.c (optimize_utf8): Optimize even if SIMPLE_BRACKET
2777         with no bits set for >= 0x80 chars is seen.
2778         * posix/bug-regex20.c (tests): Add new tests.  Expect [ABC] to be
2779         optimized.
2780         (main): Run all tests with RE_ICASE as well.
2782 2003-11-13  Ulrich Drepper  <drepper@redhat.com>
2784         * posix/Makefile: Add rules to build and run tst-rxspencer.
2785         (distribute): Add rxspencer/tests and rxspencer/COPYRIGHT.
2786         * posix/tst-rxspencer.c: New file.
2787         * posix/rxspencer/tests: New file.
2788         * posix/rxspencer/COPYRIGHT: New file.
2789         Patch mostly by Jakub Jelinek.
2791         * posix/regcomp.c (parse_bracket_exp): Don't check for range if
2792         this is no option given the first token.
2794         * posix/regcomp.c (parse_bracket_exp): Fix test for EOS after
2795         hyphen in range expression.  Return EBRACK in this case.
2797         * posix/regcomp.c (parse_bracket_element): Reject hyphens unless
2798         we expect them or it's the last element in the bracket expression.
2799         Indicated by new parameter.  Adjust all callers.
2801         * posix/runtests.c (run_a_test): If regcomp failed, reset last_pattern.
2802         Prettier error messages.
2804         * posix/regcomp.c (parse_dup_op): Fail with REG_BADBR is first
2805         number in {,} expression is larger.
2807 2003-11-13  Andreas Jaeger  <aj@suse.de>
2809         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_TGKILL):
2810         Define appropriately for x86_64.
2811         (__ASSUME_UTIMES): Likewise.
2812         (__ASSUME_CLONE_THREAD_FLAGS): Likewise.
2814         * sysdeps/x86_64/fpu/s_ceill.S: New file.
2816 2003-11-13  Ulrich Drepper  <drepper@redhat.com>
2818         * posix/regcomp.c (parse_expression): In BRE consecutive
2819         duplications are not allowed.
2821 2003-11-12  Ulrich Drepper  <drepper@redhat.com>
2823         * posix/regcomp.c (parse_bracket_exp): If end of expression is
2824         seen, return EBRACK error, not BADPAT.
2826         * posix/regcomp.c (parse_expression): If token is OP_OPEN_DUP_NUM
2827         and RE_CONTEXT_INVALID_DUP syntax flag is set, fail.
2828         * posix/regex.h (RE_CONTEXT_INVALUD_OPS): New macro.
2829         (RE_SYNTAX_POSIX_BASIC): Use RE_CONTEXT_INVALUD_OPS.
2831         * posix/regcomp.c (parse_sub_exp): In case of not-matching ( )
2832         return REG_EPAREN.
2834         * posix/PTESTS: Cleanup.  Fix typoes.  Correct bugs in 2003.2.
2835         * posix/runptests.c (main): Handle comments.
2836         * posix/PTESTS2C.sed: Handle comments.
2838 2003-11-12  Jakub Jelinek  <jakub@redhat.com>
2840         * posix/regcomp.c (optimize_utf8): New function.
2841         (re_compile_fastmap_iter): Use dfa->mb_cur_max > 1 instead
2842         of !icase.
2843         (re_compile_internal): Call optimize_utf8 if not case insensitive
2844         and in UTF-8 locale.
2845         * posix/regex_internal.h: Ifdef out some prototypes if
2846         RE_NO_INTERNAL_PROTOTYPES is defined to shut up warnings.
2847         * posix/Makefile (tests): Add bug-regex20.
2848         (bug-regex20-ENV): Add LOCPATH.
2849         * posix/bug-regex20.c: New test.
2851 2003-11-12  Jakub Jelinek  <jakub@redhat.com>
2853         * io/ftw.c (NFTW_NEW_NAME, NFTW_OLD_NAME): Add prototypes.
2855 2003-11-12  Jakub Jelinek  <jakub@redhat.com>
2857         * posix/tst-regex.c (umemlen): New variable.
2858         (test_expr): Add expectedicase argument.  Test case insensitive
2859         searches as well as backwards searches (case sensitive and
2860         insensitive) too.
2861         (run_test): Add icase argument.  Use it to compute regcomp flags.
2862         (run_test_backwards): New function.
2863         (main): Cast read to size_t to avoid warning.  Set umemlen.
2864         Add expectedicase arguments to test_expr.
2865         * posix/regex_internal.c (re_string_reconstruct): If is_utf8,
2866         find previous character by walking back instead of converting
2867         all chars from beginning.
2869 2003-11-12  Jakub Jelinek  <jakub@redhat.com>
2871         * posix/regex_internal.h (struct re_string_t): Add is_utf8
2872         and mb_cur_max fields.
2873         (struct re_dfa_t): Likewise.  Reorder fields to make structure
2874         smaller on 64-bit arches.
2875         (re_string_allocate, re_string_construct): Add mb_cur_max and
2876         is_utf8 arguments.
2877         (re_string_char_size_at, re_string_wchar_at): Use pstr->mb_cur_max
2878         instead of MB_CUR_MAX.
2879         * posix/regcomp.c (re_compile_fastmap_iter): Use dfa->mb_cur_max
2880         instead of MB_CUR_MAX.
2881         (re_compile_internal): Pass new arguments to re_string_construct.
2882         (init_dfa): Initialize mb_cur_max and is_utf8 fields.
2883         (peek_token, peek_token_bracket): Use input->mb_cur_max instead
2884         of MB_CUR_MAX.
2885         (parse_expression, parse_bracket_exp, parse_charclass_op): Use
2886         dfa->mb_cur_max instead of MB_CUR_MAX.
2887         * posix/regex_internal.c (re_string_construct_common): Add
2888         mb_cur_max and is_utf8 arguments.  Initialize fields with them.
2889         (re_string_allocate, re_string_construct): Add mb_cur_max and
2890         is_utf8 arguments, pass them to re_string_construct_common.
2891         Use mb_cur_max instead of MB_CUR_MAX.
2892         (re_string_realloc_buffers): Use pstr->mb_cur_max instead of
2893         MB_CUR_MAX.
2894         (re_string_reconstruct): Likewise.
2895         (re_string_context_at): Use input->mb_cur_max instead of
2896         MB_CUR_MAX.
2897         (create_ci_newstate, create_cd_newstate): Use dfa->mb_cur_max
2898         instead of MB_CUR_MAX.
2899         * posix/regexec.c (re_search_internal): Likewise.
2900         Pass new arguments to re_string_allocate.
2901         (check_matching, transit_state_sb): Use dfa->mb_cur_max instead of
2902         MB_CUR_MAX.
2903         (extend_buffers): Use pstr->mb_cur_max instead of MB_CUR_MAX.
2905 2003-11-12  Jakub Jelinek  <jakub@redhat.com>
2907         * posix/Makefile (tests): Add bug-regex19.
2908         (bug-regex19-ENV): Add LOCPATH.
2909         * posix/bug-regex19.c: New test.
2911 2003-11-11  Jakub Jelinek  <jakub@redhat.com>
2913         * posix/regcomp.c (re_compile_fastmap_iter): Handle RE_ICASE
2914         with MB_CUR_MAX > 1 locales in the fastmap.
2916 2003-11-11  Jakub Jelinek  <jakub@redhat.com>
2918         * posix/regex_internal.c (build_wcs_buffer): Fix comment typo.
2919         (build_wcs_upper_buffer): Likewise.  Use towupper for wchar_t instead
2920         of toupper.
2921         * posix/Makefile (tests): Add bug-regex17 and bug-regex18.
2922         (bug-regex17-ENV, bug-regex18-ENV): Add LOCPATH.
2923         * posix/bug-regex17.c: New file
2924         * posix/bug-regex18.c: New file.
2926 2003-10-08  Thorsten Kukuk  <kukuk@suse.de>
2928         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h (pread, pwrite):
2929         Define __NR_pread/__NR_pwrite if not done in kernel headers
2931 2003-11-11  Roland McGrath  <roland@redhat.com>
2933         * manual/xtract-typefun.awk: Swallow [(){}*] from function names.
2935         * manual/Makefile (info): Don't depend on dir-add.info.
2936         (libc.dvi libc.pdf libc.info): Depend on dir-add.texi.
2937         (dir-add.info): Target removed, replaced with ...
2938         (dir-add.texi): New target.
2939         (distribute): Add it.
2940         (install): Remove variant with --section arguments.
2941         Let the @dircategory directives do their work.
2942         (mostlyclean): Don't remove dir-add.info here.
2943         (realclean): Remove dir-add.texi here.
2944         * manual/libc.texinfo: @include dir-add.texi
2945         * configure.in: Remove check for old Debian install-info.
2946         * configure: Regenerated.
2947         * config.make.in (OLD_DEBIAN_INSTALL_INFO): Variable removed.
2949 2003-11-08  Andreas Schwab  <schwab@suse.de>
2951         * scripts/data/c++-types-ia64-linux-gnu.data: New file.
2953 2003-11-10  Carlos O'Donell  <carlos@baldric.uwo.ca>
2955         * io/ftwtest-sh: Fix nested sed commands.
2957 2003-11-10  Jakub Jelinek  <jakub@redhat.com>
2959         * posix/regex_internal.h (re_string_char_size_at): Don't look beyond
2960         valid_len wide chars.
2962 2003-11-09  Roland McGrath  <roland@redhat.com>
2964         * manual/examples/dir2.c (one): Add const to argument type.
2965         Reported by J de Haan <j.de.haan@home.nl>.
2967 2003-11-07  Ulrich Drepper  <drepper@redhat.com>
2969         * po/pl.po: Update from translation team.
2971 2003-11-07  Jakub Jelinek  <jakub@redhat.com>
2973         * io/ftw.c (NFTW_OLD_NAME, NFTW_NEW_NAME): Define.
2974         (ftw_dir, ftw_startup): Add __attribute ((noinline)).
2975         (NFTW_OLD_NAME, NFTW_NEW_NAME): New functions.
2976         (NFTW_NAME): Only define if !_LIBC, add versioned_symbol
2977         and compat_symbol.
2978         * io/ftw64.c (NFTW_OLD_NAME, NFTW_NEW_NAME): Define.
2979         * io/Versions (libc): Export nftw@@GLIBC_2.3.3
2980         and nftw64@@GLIBC_2.3.3.
2982         * io/ftw.h (FTW_ACTIONRETVAL): New flag.
2983         (FTW_CONTINUE, FTW_STOP, FTW_SKIP_SUBTREE, FTW_SKIP_SIBLINGS): New.
2984         * io/ftw.c (ftw_dir): Add old_dir argument.
2985         Clear result if it was FTW_SKIP_SIBLINGS after processing all
2986         dir entries.  Change cwd back if old_dir != NULL.
2987         (process_entry): Adjust caller.  Don't change cwd back here.
2988         Change FTW_SKIP_SUBTREE result to 0.
2989         (ftw_startup): Adjust ftw_dir caller.
2990         Clear result if it was FTW_SKIP_SUBTREE or FTW_SKIP_SIBLINGS.
2991         * io/ftwtest.c (skip_subtree, skip_siblings): New variables.
2992         (options, main): Add --skip-subtree and --skip-siblings options.
2993         (cb): Use return FTW_CONTINUE instead of return 0.
2994         Handle --skip-subtree and --skip-siblings.
2995         * io/ftwtest-sh: Add tests for FTW_ACTIONRETVAL.
2996         * manual/filesys.texi: Document FTW_ACTIONRETVAL.
2998 2003-11-04  Jakub Jelinek  <jakub@redhat.com>
3000         * io/ftw.c (ftw_dir): Close dir if callback with FTW_D type returns
3001         non-zero.
3002         * io/Makefile (tests): Add bug-ftw4.
3003         * io/bug-ftw4.c: New test.
3005 2003-10-27  Daniel Jacobowitz  <drow@mvista.com>
3007         * libio/libioP.h [_IO_USE_OLD_IO_FILE]
3008         (struct _IO_FILE_complete_plus): New type.
3009         * libio/oldiofopen.c (_IO_old_fopen): Use _IO_FILE_complete_plus.
3010         * libio/oldiofdopen.c (_IO_old_fdopen): Likewise.
3011         * libio/oldiopopen.c (struct _IO_proc_file, _IO_old_popen): Likewise.
3012         Call _IO_old_init instead of _IO_init.
3014 2003-11-03  Ulrich Drepper  <drepper@redhat.com>
3016         * intl/locale.alias: nb_NO is now the correct name, not no_NO.
3018         * locale/iso-639.def: Add Blin.
3019         Patch by Daniel Yacob <locales@geez.org>.
3021 2003-10-31  Steven Munroe  <sjmunroe@us.ibm.com>
3023         * sysdeps/powerpc/powerpc32/strncmp.S: New File.
3024         * sysdeps/powerpc/powerpc64/strncmp.S: New File.
3026 2003-11-01  Randolph Chung  <tausq@debian.org>
3028         * sysdeps/unix/sysv/linux/hppa/sysdep.h (LOAD_ARGS_0, LOAD_ARGS_1,
3029         LOAD_ARGS_2, LOAD_ARGS_3, LOAD_ARGS_4, LOAD_ARGS_5, LOAD_ARGS_6):
3030         Add missing parentheses.
3032 2003-11-01  Roland McGrath  <roland@redhat.com>
3034         * libio/bug-ftell.c (do_test): Add a cast.
3036 2003-09-26  Daniel Jacobowitz  <drow@mvista.com>
3038         * Makerules (shlib.lds): Make sure that ld doesn't try to link
3039         anything while generating the linker script.
3041 2003-10-31  Roland McGrath  <roland@redhat.com>
3043         * locale/lc-ctype.c (_nl_postload_ctype): Update _nl_global_locale's
3044         special members.
3046 2003-10-29  Ulrich Drepper  <drepper@redhat.com>
3048         * po/be.po: Update from translation team.
3050 2003-10-27  Ulrich Drepper  <drepper@redhat.com>
3052         * elf/rtld.c (map_doit): Pass __RTLD_OPENEXEC in last parameter to
3053         _dl_map_object.
3055         * elf/sprof.c (load_shobj): Use l_map_start not l_addr to locate
3056         ELF header.
3058         * inet/rcmd.c (__validuser2_sa): Remove unnecessary code to skip
3059         rest of line.  We use getline which means this cannot happen.
3061 2003-10-26  Ulrich Drepper  <drepper@redhat.com>
3063         * sysdeps/unix/sysv/linux/internal_statvfs.c (__internal_statvfs):
3064         Avoid infinite loops in case the mounts file is hosed.
3065         * io/Makefile: Add rules to build and run tst-statvfs.
3066         * io/tst-statvfs.c: New file.
3068         * include/dlfcn.h (__RTLD_OPENEXEC): Define.
3069         * elf/dl-load.c (_dl_map_object_from_fd): Don't allow loading
3070         executables unless __RTLD_OPENEXEC flag is present.
3071         * elf/rtld.c (dl_main): Pass __RTLD_OPENEXEC flag to
3072         _dl_map_object when loading the executable.
3074         * sysdeps/generic/glob.c (glob): Handle GLOB_BRACE and escaping
3075         correctly.
3076         * posix/globtest.sh: Add tests for GLOB_BRACE and escaping.
3078         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Default
3079         reverse lookup format for IPv6 addresses is using bitstring and
3080         .ip6.arpa suffix.
3081         * resolv/ns_name.c: Implement encoding and decoding bitstring in
3082         hex format.
3084 2003-10-23  Jakub Jelinek  <jakub@redhat.com>
3086         * locale/programs/locale.c (show_info): Fix printing word values on
3087         64-bit big-endian architectures.
3089 2003-10-19  Bruno Haible  <bruno@clisp.org>
3091         * intl/hash-string.c (hash_string): Zero-extend each char from the
3092         string; the old code did a sign-extend on some platforms.
3094 2003-10-22  Steven Munroe  <sjmunroe@us.ibm.com>
3096         * sysdeps/powerpc/powerpc32/Makefile (+cflags, asm-CPPFLAGS): Don't
3097         append options to these.
3098         * sysdeps/powerpc/powerpc64/Makefile (+cflags, asm-CPPFLAGS): Likewise.
3100 2003-10-18  Carlos O'Donell  <carlos@baldric.uwo.ca>
3102         * sysdeps/unix/sysv/linux/hppa/sysdep.h: Fix merge error.
3104 2003-10-15  Roland McGrath  <roland@redhat.com>
3106         * elf/dl-iteratephdr.c [! SHARED] (dl_iterate_phdr): New function.
3107         Fake an entry for the main executable and then call __dl_iterate_phdr.
3108         * elf/Makefile (routines): Remove dl-iteratephdr-static.
3109         (elide-routines.os): Likewise.
3110         (CFLAGS-dl-iterate-phdr-static.c): Variable removed.
3111         * sysdeps/generic/dl-iteratephdr-static.c: File removed.
3112         * sysdeps/unix/sysv/linux/ia64/dl-iteratephdr-static.c: File removed.
3114 2003-10-15  Jakub Jelinek  <jakub@redhat.com>
3116         * elf/rtld.c (print_statistics): Print also number of relative
3117         relocations.
3119 2003-10-12  Carlos O'Donell  <carlos@baldric.uwo.ca>
3121         * sysdeps/hppa/sysdep.h: Undef JUMPTARGET before use.
3122         * sysdeps/unix/sysv/linux/hppa/sysdep.h: Define PSEUDO_ERRVAL,
3123         SYSCALL_ERROR_LABEL under all conditions, INTERNAL_SYSCALL_DECL,
3124         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO, INTERNAL_SYSCALL,
3125         and undef JUMPTARGET before use.
3126         [PIC]: Save pic register around syscall.
3127         * sysdeps/unix/sysv/linux/hppa/sysdep.c (syscall):
3128         Cleanup asm statment.
3130 2003-10-13  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
3132         * sysdeps/unix/sysv/linux/sh/sysdep.h (DO_CALL): Add SYSCALL_INST_PAD
3133         after trapa instruction.
3135 2003-10-09  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
3137         * sysdeps/unix/sysv/linux/sh/syscalls.list: Add waitpid.
3139 2003-10-10  Carlos O'Donell  <carlos@baldric.uwo.ca>
3141         * sysdeps/hppa/Makefile (CFLAGS-malloc.c): Variable removed.
3143 2003-10-09  Roland McGrath  <roland@redhat.com>
3145         * elf/rtld.c (dl_main): Don't set l_name for sysinfo DSO, since there
3146         is no file to name.
3148 2003-10-08  Jakub Jelinek  <jakub@redhat.com>
3150         * sysdeps/generic/dl-sysdep.c (_dl_important_hwcaps): Don't generate
3151         two identical copies of strings.
3153 2003-10-06  Ulrich Drepper  <drepper@redhat.com>
3155         * posix/bug-regex11.c: Add some more tests which fail so far.
3156         Disable them.  Patch by Paolo Bonzini <bonzini@gnu.org>.
3158 2003-10-05  Paolo Bonzini  <bonzini@gnu.org>
3160         * posix/bug-regex11.c: Add more backreference-related test cases.
3161         (main): Show the failing regex in the error messages.
3162         * posix/regexec.c (check_dst_limits_calc_pos):
3163         Simplify some nested conditionals.  Replace if's with a switch
3164         statement.
3165         (check_dst_limits_calc_pos <TYPE_BKREF>): Rename parameter NODE to
3166         FROM_NODE, it shadows a local variable; don't recurse if FROM_NODE
3167         does not change in the recursive invocation, fixing an infinite loop
3168         in the ()\1*\1* regex.
3169         (sift_states_backward): Fix function comment.
3170         * posix/regcomp.c (calc_epsdest): Add an assertion.
3172 2003-10-06  Ulrich Drepper  <drepper@redhat.com>
3174         * manual/examples/testopt.c: Fix warnings.  Better error message
3175         for missing -c argument.
3176         Patch mostly by Gitonga Marete <bgmarete@comcast.net>.
3178         * timezone/asia: Update from tzdata2003d.
3179         * timezone/australasia: Likewise.
3180         * timezone/backward: Likewise.
3181         * timezone/europe: Likewise.
3182         * timezone/iso3166.tab: Likewise.
3183         * timezone/northamerica: Likewise.
3184         * timezone/southamerica: Likewise.
3185         * timezone/zone.tab: Likewise.
3187 2003-10-05  Jakub Jelinek  <jakub@redhat.com>
3189         * sysdeps/ia64/backtrace.c: New file.
3190         * sysdeps/x86_64/backtrace.c: New file.
3191         * sysdeps/generic/unwind.h (_Unwind_Trace_Fn): New type.
3192         (_Unwind_Backtrace): New prototype.
3194 2003-10-03  Ulrich Drepper  <drepper@redhat.com>
3196         * sysdeps/i386/elf/bsd-setjmp.S: Use linkonce section for PIC stub.
3197         * sysdeps/i386/elf/setjmp.S: Likewise.
3199 2003-10-02  Roland McGrath  <roland@redhat.com>
3201         * argp/argp-help.c (__argp_short_program_name): Move inside [! _LIBC].
3202         * argp/argp-namefrob.h
3203         [_LIBC || HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME]
3204         (__argp_short_program_name): Don't declare fn, define it as a macro.
3206 2003-08-22  Simon Josefsson  <jas@extundo.com>
3208         * argp/argp-fmtstream.h [!__attribute__]: Define to nothing.
3210         * argp/argp-help.c: Don't include malloc.h, some platforms
3211         complain and it doesn't appear to be used.
3212         [!_LIBC && HAVE_STRERROR_R && !HAVE_DECL_STRERROR_R]: Declare
3213         strerror_r.
3214         [!_LIBC && !HAVE_STRERROR_R && !HAVE_DECL_STRERROR]: Declare
3215         strerror.
3216         (hol_entry_long_iterate): Change __attribute to __attribute__.
3217         (_help, __argp_error, __argp_failure) [!_LIBC && (HAVE_FLOCKFILE
3218         && HAVE_FUNLOCKFILE)]: Protect call to flockfile and funlockfile.
3219         (__argp_basename) [!_LIBC]: New. Taken from LSH, by Niels Möller,
3220         modified after comments from Ulrich Drepper.
3221         (__argp_short_program_name): Ditto.
3222         (__argp_state_help, __argp_error, __argp_failure): Use it.
3223         (__argp_failure): Use strerror when necessary.
3225         * argp/argp-namefrob.h (__flockfile, __funlockfile, __mempcpy)
3226         (__strchrnul, __strerror_r, __strndup) [!_LIBC]: Remove __-prefix.
3227         (clearerr_unlocked, feof_unlocked, ferror_unlocked)
3228         (fflush_unlocked, fgets_unlocked, fputc_unlocked, fputs_unlocked)
3229         (fread_unlocked, fwrite_unlocked, getc_unlocked, getchar_unlocked)
3230         (putc_unlocked, putchar_unlocked) [!_LIBC && !HAVE_DECL_*]: Map to
3231         non-unlocked functions.
3232         [!_LIBC]: Add prototypes for __argp_basename and
3233         __argp_short_program_name.
3235         * argp/argp-parse.c (argp_default_parser): Only use
3236         program_invocation{_short,}_name if declared.
3237         (parser_init): Use __argp_short_program_name.
3239         * argp/argp-xinl.c [_LIBC || HAVE_FEATURES_H]: Add CPP check for
3240         '#include features.h'.
3242         * argp/argp.h [!__attribute__]: Define to nothing.
3244 2003-09-26  Paolo Bonzini  <bonzini@gnu.org>
3246         * posix/regcomp.c (parse_sub_exp): Pass RE_CARET_ANCHORS_HERE
3247         for the first token in a subexpression as well.
3249 2003-10-02  Jakub Jelinek  <jakub@redhat.com>
3251         * posix/regcomp.c (peek_token): Add 2003-09-20 changes for anchor
3252         handling again.
3253         (parse_reg_exp): Likewise.
3254         * posix/regex.h (RE_CARET_ANCHORS_HERE): Define.
3256         * posix/bug-regex11.c (tests): Add new tests.
3257         * posix/bug-regex12.c (tests): Add new test.
3259 2003-10-01  Thorsten Kukuk  <kukuk@suse.de>
3261         * elf/dl-reloc.c (_dl_allocate_static_tls): Move definition of
3262         variables only used if TLS_DTV_AT_TP is defined into the #if branch.
3264 2003-10-02  Jeroen Dekkers  <jeroen@dekkers.cx>
3266         * sysdeps/mach/hurd/malloc-machine.h: Copy the tsd code from
3267         the old thread-m.h header too.
3269 2003-10-02  Ulrich Drepper  <drepper@redhat.com>
3271         * sysdeps/unix/sysv/linux/ia64/bits/sigstack.h (MINSIGSTKSZ): Go
3272         back to 131027 since this is what the kernel enforces.
3274         * inet/getnameinfo.c: Move domain out of nrl_domainname scope and
3275         define it with libc_freeres_ptr.
3277 2003-10-01  Roland McGrath  <roland@redhat.com>
3279         * elf/rtld.c (dl_main): Add cast in last change.
3281 2003-09-10  Chris Demetriou  <cgd@broadcom.com>
3283         * sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h: Remove
3284         "#if 0" surrounding most of contents.
3285         (SYSCALL_ERROR_LABEL): Define.
3286         (__SYSCALL_CLOBBERS): Add $10.
3287         (internal_syscall7): Remove.
3288         * sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h: Likewise.
3290 2003-09-30  Ulrich Drepper  <drepper@redhat.com>
3292         * elf/rtld.c (dl_main): Also set l_map_start.
3294 2003-09-30  Daniel Jacobowitz  <drow@mvista.com>
3296         * elf/rtld.c (dl_main): Set l_libname and l_name for the sysinfo DSO
3297         to work around kernel problem.
3299 2003-09-27  Wolfram Gloger  <wg@malloc.de>
3301         * malloc/malloc.c: Include <malloc-machine.h> earlier instead of
3302         "thread-m.h", so that default parameters can be overridden in a
3303         system-specific malloc-machine.h.  Remove extra ; from extern "C"
3304         closing brace.
3305         * sysdeps/generic/malloc-machine.h: New file.
3306         * sysdeps/mach/hurd/malloc-machine.h: New file.
3307         * malloc/thread-m.h: Removed.
3308         * malloc/Makefile: Remove CFLAGS-malloc.c parameter addition, it
3309         is in sysdeps/generic/malloc-machine.h now.
3311 2003-09-29  Ulrich Drepper  <drepper@redhat.com>
3313         * elf/dl-reloc.c (_dl_allocate_static_tls): Move definition of
3314         variables only used if TLS_TCB_AT_TP is defined into the #if
3315         branch.
3317         * sysdeps/unix/sysv/linux/sys/sysmacros.h: Add __extension__ as
3318         well to cover using long long in C90.
3320 2003-09-28  Alfred M. Szmidt  <ams@kemisten.nu>
3322         * sysdeps/mach/hurd/bits/libc-lock.h (__libc_cleanup_pop):
3323         Redefine and use __libc_cleanup_region_end instead.
3325 2003-09-29  Thorsten Kukuk  <kukuk@suse.de>
3327         * sysdeps/unix/sysv/linux/sys/sysmacros.h: Use __inline and
3328         fix prototypes for picky C++ compilers.
3330 2003-09-27  Ulrich Drepper  <drepper@redhat.com>
3332         * sysdeps/unix/sysv/linux/ustat.c (ustat): Set errno to EINVAL if
3333         the device ID is invalid and return -1.
3334         * sysdeps/unix/sysv/linux/xmknod.c (__xmknod): Likewise.
3336 2003-09-26  Andreas Schwab  <schwab@suse.de>
3338         * sysdeps/unix/sysv/linux/ia64/getcontext.S: Pass fourth argument to
3339         rt_sigprocmask system call.
3341 2003-09-25  Roland McGrath  <roland@redhat.com>
3343         * sysdeps/unix/sysv/linux/dl-execstack.c (_dl_make_stack_executable):
3344         Don't check for zero __libc_stack_end, it should be initialized.
3345         [_STACK_GROWS_DOWN] [PROT_GROWSDOWN]: Try using PROT_GROWSDOWN flag
3346         and fall back if it fails with EINVAL.
3347         [_STACK_GROWS_UP] [PROT_GROWSUP]: Likewise for PROT_GROWSUP.
3349 2003-09-25  Jakub Jelinek  <jakub@redhat.com>
3351         * sysdeps/unix/sysv/linux/x86_64/dl-procinfo.c: Include
3352         sysdeps/i386/dl-procinfo.c instead of
3353         sysdeps/unix/sysv/linux/i386/dl-procinfo.c.
3354         * sysdeps/unix/sysv/linux/i386/dl-procinfo.h: Avoid using
3355         #include_next.
3357 2003-09-25  Ulrich Drepper  <drepper@redhat.com>
3359         * posix/regcomp.c (peek_token): Remove recent changes for anchor
3360         handling again.
3361         (parse_reg_exp): Likewise.
3362         * posix/regex.h: Remove RE_CARET_ANCHORS_HERE.
3364         * csu/Makefile ($(objpfx)version-info.h): Fix sed script to handle
3365         banners.
3367         * nis/nis_table.c (nis_list): Always strdup string used with
3368         ibreq->ibr_name.  Add several NULL pointer checks.
3370         * nis/nss_nisplus/nisplus-alias.c: Add check for NULL return value
3371         of nis_list.
3372         * nis/nss_nisplus/nisplus-ethers.c: Likewise.
3373         * nis/nss_nisplus/nisplus-grp.c: Likewise.
3374         * nis/nss_nisplus/nisplus-hosts.c: Likewise.
3375         * nis/nss_nisplus/nisplus-netgrp.c: Likewise.
3376         * nis/nss_nisplus/nisplus-network.c: Likewise.
3377         * nis/nss_nisplus/nisplus-proto.c: Likewise.
3378         * nis/nss_nisplus/nisplus-publickey.c: Likewise.
3379         * nis/nss_nisplus/nisplus-pwd.c: Likewise.
3380         * nis/nss_nisplus/nisplus-rpc.c: Likewise.
3381         * nis/nss_nisplus/nisplus-service.c: Likewise.
3382         * nis/nss_nisplus/nisplus-spwd.c: Likewise.
3384         * sysdeps/unix/sysv/linux/alpha/bits/mman.h: Define PROT_GROWSDOWN
3385         and PROT_GROWSUP.
3386         * sysdeps/unix/sysv/linux/arm/bits/mman.h: Likewise.
3387         * sysdeps/unix/sysv/linux/cris/bits/mman.h: Likewise.
3388         * sysdeps/unix/sysv/linux/hppa/bits/mman.h: Likewise.
3389         * sysdeps/unix/sysv/linux/i386/bits/mman.h: Likewise.
3390         * sysdeps/unix/sysv/linux/ia64/bits/mman.h: Likewise.
3391         * sysdeps/unix/sysv/linux/m68k/bits/mman.h: Likewise.
3392         * sysdeps/unix/sysv/linux/powerpc/bits/mman.h: Likewise.
3393         * sysdeps/unix/sysv/linux/s390/bits/mman.h: Likewise.
3394         * sysdeps/unix/sysv/linux/sh/bits/mman.h: Likewise.
3395         * sysdeps/unix/sysv/linux/sparc/bits/mman.h: Likewise.
3396         * sysdeps/unix/sysv/linux/x86_64/bits/mman.h: Likewise.
3398 2003-09-25  Jakub Jelinek  <jakub@redhat.com>
3400         * misc/syslog.c: Include locale.h.
3401         (vsyslog): Add date always in C locale %h %e %T format.
3403 2003-09-24  Paul Eggert  <eggert@twinsun.com>
3405         * argp/argp-fmtstream.c (__argp_fmtstream_ensure): Check for
3406         size_t overflow when reallocating storage.
3407         * argp/argp-help.c (make_hol, hol_append): Likewise.
3408         (SIZE_MAX): New macro.
3410 2003-08-07  Alfred M. Szmidt  <ams@kemisten.nu>
3412         * sysdeps/mach/hurd/bits/libc-lock.h
3413         (__libc_cleanup_push, __libc_cleanup_pop): New macros.
3415 2003-08-01  Alfred M. Szmidt  <ams@kemisten.nu>
3417         * sysdeps/i386/dl-procinfo.h: New file, contents taken from ...
3418         * sysdeps/unix/sysv/linux/i386/dl-procinfo.h: ... here.
3419         #include_next dl-procinfo.h to get them.
3420         (_DL_HWCAP_COUNT): Moved to sysdeps/i386/dl-procinfo.h.
3421         (_DL_PLATFORMS_COUNT): Likewise.
3422         (_DL_FIRST_PLATFORM): Likewise.
3423         (_DL_HWCAP_PLATFORM): Likewise.
3424         (HWCAP_I386_FPU, HWCAP_I386_VME, HWCAP_I386_DE, HWCAP_I386_PSE,
3425         HWCAP_I386_TSC, HWCAP_I386_MSR, HWCAP_I386_PAE, HWCAP_I386_MCE,
3426         HWCAP_I386_CX8, HWCAP_I386_APIC, HWCAP_I386_SEP, HWCAP_I386_MTRR,
3427         HWCAP_I386_PGE, HWCAP_I386_MCA, HWCAP_I386_CMOV,
3428         HWCAP_I386_FCMOV, HWCAP_I386_MMX, HWCAP_I386_OSFXSR,
3429         HWCAP_I386_XMM, HWCAP_I386_XMM2, HWCAP_I386_AMD3D,
3430         HWCAP_IMPORTANT): Likewise.
3431         (_DL_PROCINFO_H_): Likewise.
3432         (_dl_hwcap_string, _dl_platform_string, _dl_string_hwcap): Likewise.
3433         (_dl_string_platform): Likewise.
3434         * sysdeps/unix/sysv/linux/i386/dl-procinfo.c: Moved to ...
3435         * sysdeps/i386/dl-procinfo.c: ... here, new file.
3437 2003-09-24  Ulrich Drepper  <drepper@redhat.com>
3439         * sysdeps/unix/sysv/linux/dl-execstack.c
3440         (_dl_make_stack_executable): Remember that we changed the permission.
3442         * sysdeps/ia64/dl-machine.h (RTLD_START): Remove setting of
3443         __libc_stack_end.  Patch by David Mosberger.
3445 2003-09-24  Jakub Jelinek  <jakub@redhat.com>
3447         * elf/Versions (ld): Export __libc_stack_end@GLIBC_2.1 instead of
3448         __libc_stack_end@GLIBC_PRIVATE.
3450         * sysdeps/generic/dl-sysdep.c (DL_STACK_END): Define if not defined.
3451         (_dl_sysdep_start): Set __libc_stack_end here.
3452         * sysdeps/alpha/dl-machine.h (RTLD_START): Remove setting of
3453         __libc_stack_end.
3454         * sysdeps/arm/dl-machine.h (RTLD_START): Likewise.
3455         * sysdeps/cris/dl-machine.h (RTLD_START): Likewise.
3456         * sysdeps/i386/dl-machine.h (RTLD_START): Likewise.
3457         * sysdeps/m68k/dl-machine.h (RTLD_START): Likewise.
3458         * sysdeps/s390/s390-32/dl-machine.h (RTLD_START): Likewise.
3459         * sysdeps/s390/s390-64/dl-machine.h (RTLD_START): Likewise.
3460         * sysdeps/sh/dl-machine.h (RTLD_START): Likewise.
3461         * sysdeps/x86_64/dl-machine.h (RTLD_START): Likewise.
3462         * sysdeps/ia64/dl-machine.h (DL_STACK_END): Define.
3463         * sysdeps/sparc/sparc32/dl-machine.h (DL_STACK_END): Define.
3464         (RTLD_START): Remove setting of __libc_stack_end.
3465         * sysdeps/sparc/sparc64/dl-machine.h (DL_STACK_END): Define.
3466         (RTLD_START): Remove setting of __libc_stack_end.
3468 2003-09-24  Ulrich Drepper  <drepper@redhat.com>
3470         * sysdeps/unix/sysv/linux/sys/sysmacros.h: Add gnu_dev_ prefix to
3471         function definitions.  Adjust macro expansions accordingly.
3472         * sysdeps/unix/sysv/linux/Versions: Add gnu_dev_ prefix to major,
3473         minor, makedev name.
3474         * sysdeps/unix/sysv/linux/makedev.c: Likewise.
3476 2003-09-24  Jakub Jelinek  <jakub@redhat.com>
3478         * sysdeps/unix/sysv/linux/sys/sysmacros.h (major, minor, makedev):
3479         Add __THROW.
3481 2003-09-24  Jakub Jelinek  <jakub@redhat.com>
3483         * nscd/Makefile (others): Add nscd before including ../Rules.
3485 2003-09-24  Ulrich Drepper  <drepper@redhat.com>
3487         * nscd/Makefile: Add rules to build nscd as a PIE.
3488         * configure.in: Check for -fpie and -pie compiler options.
3489         * config.make.in (have-fpie): Define.
3491 2003-09-23  Ulrich Drepper  <drepper@redhat.com>
3493         * sysdeps/unix/sysv/linux/sys/sysmacros.h: Adjust for larger
3494         kernel dev_t size.
3495         * sysdeps/unix/sysv/linux/alpha/sys/sysmacros.h: Removed.
3496         * sysdeps/unix/sysv/linux/sparc/sys/sysmacros.h: Removed.
3497         * sysdeps/unix/sysv/linux/makedev.c: New file.
3498         * sysdeps/unix/sysv/linux/Dist: Add makedev.c.
3499         * sysdeps/unix/sysv/linux/Makefile [subdir=misc]
3500         (sysdep_routines): Add makedev.
3501         * sysdeps/unix/sysv/linux/Versions [libc] (GLIBC_2.3.3): Add
3502         major, minor, makedev.
3503         * sysdeps/unix/sysv/linux/ustat.c (ustat): Adjust for 32-bit
3504         kernel dev_t.
3505         * sysdeps/unix/sysv/linux/alpha/ustat.c: Removed.
3506         * sysdeps/unix/sysv/linux/xmknod.c (__xmknod): Likewise.
3507         * sysdeps/unix/sysv/linux/alpha/xmknod.c: Removed.
3508         Code by Alexander Viro <aviro@redhat.com>.
3510 2003-09-23  Ulrich Drepper  <drepper@redhat.com>
3512         * sysdeps/unix/sysv/linux/powerpc/powerpc32/Versions [libc]
3513         (GLIBC_2.3.3): Add setcontext, getcontext, swapcontext, and
3514         makecontext.
3515         * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: Correct change
3516         for include Altivec support for PPC32.  It was not compatible.
3517         * sysdeps/unix/sysv/linux/powerpc/powerpc32/ucontext_i.h: Adjust
3518         offsets for ucontext_t change.
3519         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Adjust
3520         for ucontext_t change.  Add compatibility code.
3521         * sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S: Likewise.
3522         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Likewise.
3523         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Likewise.
3524         Patch by Paul Mackerras <paulus@samba.org>.
3526 2003-02-25  Randolph Chung  <tausq@debian.org>
3528         * sysdeps/hppa/Makefile: Include compat code in build.
3529         * sysdeps/hppa/libgcc-compat.c: New file.
3530         * sysdeps/hppa/Dist: Add libgcc-compat.c.
3531         * sysdeps/hppa/Versions [GLIBC_2.2]: Add __clz_tab.
3533 2003-09-23  Roland McGrath  <roland@redhat.com>
3535         * elf/rtld.c (dl_main): In rtld_is_main case, reinitialize
3536         GL(dl_stack_flags) according to rtld's own PT_GNU_STACK.
3537         Move GL(dl_make_stack_executable_hook) initialization up.
3538         * elf/tst-execstack-prog.c: New file.
3539         * elf/Makefile (tests-execstack-yes): Add it.
3540         (LDFLAGS-tst-execstack-prog): New variable.
3542 2003-09-23  Jakub Jelinek  <jakub@redhat.com>
3544         * sysdeps/x86_64/dl-machine.h (RTLD_START): Set __libc_stack_end
3545         before calling _dl_start, using %rip relative access.
3546         Use %rip relative access to _dl_skip_args, _rtld_local._dl_loaded
3547         and _dl_fini.
3549 2003-09-23  Roland McGrath  <roland@redhat.com>
3551         * sysdeps/i386/dl-machine.h (RTLD_START): Set __libc_stack_end before
3552         calling _dl_start, using GOTOFF access.
3554         * configure.in (libc_cv_z_execstack): New check.
3555         * configure: Regenerated.
3556         * config.make.in (have-z-execstack): New variable set by it.
3557         * elf/tst-execstack.c: New file.
3558         * elf/tst-execstack-mod.c: New file.
3559         * elf/tst-execstack-needed.c: New file.
3560         * elf/Makefile (tests-execstack-yes, modules-execstack-yes): New
3561         variables.
3562         (tests, modules-names): Conditionally include them.
3563         (distribute): Add tst-execstack-mod.c here.
3564         ($(objpfx)tst-execstack, $(objpfx)tst-execstack.out): New targets.
3565         (LDFLAGS-tst-execstack, LDFLAGS-tst-execstack-mod): New variables.
3566         ($(objpfx)tst-execstack-needed): New target.
3567         (LDFLAGS-tst-execstack-needed): New variable.
3569         * sysdeps/generic/ldsodefs.h (struct rtld_global): Add _dl_stack_flags
3570         and _dl_make_stack_executable_hook.  Declare _dl_make_stack_executable.
3571         * elf/rtld.c (_rtld_global): Add initializer for _dl_stack_flags.
3572         (dl_main): Reset _dl_stack_flags according to PT_GNU_STACK phdr.
3573         Initialize _dl_make_stack_executable_hook.
3574         * elf/dl-support.c: Define those new variables.
3575         (_dl_non_dynamic_init): Scan phdrs for PT_GNU_STACK.
3576         (_dl_phdr): Fix type.
3577         * elf/dl-load.c (_dl_map_object_from_fd): Grok PT_GNU_STACK phdr and
3578         enable execute permission for the stack if necessary.
3579         * sysdeps/generic/dl-execstack.c: New file.
3580         * elf/Makefile (dl-routines): Add it.
3581         * elf/Versions (ld: GLIBC_PRIVATE): Add _dl_make_stack_executable.
3582         * sysdeps/unix/sysv/linux/dl-execstack.c: New file.
3584 2003-09-23  Ulrich Drepper  <drepper@redhat.com>
3586         * sysdeps/posix/sprofil.c (pc_to_index): Remove inline marker.
3588 2003-09-20  Alfred M. Szmidt  <ams@kemisten.nu>
3590         * sysdeps/generic/utmp_file.c (setutent_file, LOCK_FILE,
3591         UNLOCK_FILE, setutent_file): Use fcntl_not_cancel instead of
3592         __fcntl_nocancel.
3594 2003-09-22  Ulrich Drepper  <drepper@redhat.com>
3596         * malloc/malloc.c: Include <stdint.h>.
3598 2003-09-20  Paolo Bonzini  <bonzini@gnu.org>
3600         * posix/regcomp.c (build_word_op): Rename like...
3601         (build_charclass_op): ...this.  Accept two extra parameters,
3602         CLASS_NAME and EXTRA.  Add EXTRA to the result, not only _.
3603         (peek_token): Accept \s and \S as OP_SPACE and OP_NOTSPACE.
3604         (parse_expression): Replace build_word_op with
3605         build_charclass_op, add new arguments, accept OP_SPACE
3606         and OP_NOTSPACE.
3607         * posix/regex_internal.h (re_token_type_t): Add OP_SPACE
3608         and OP_NOTSPACE.
3610         * posix/regcomp.c (peek_token): Don't look back for ( or |
3611         to check whether to treat a caret as special.  It fails
3612         for the (extended) regex \(^.
3613         (parse, parse_reg_exp): Pass RE_CARET_ANCHORS_HERE to fetch_token.
3614         * posix/regex.h: Define RE_CARET_ANCHORS_HERE.
3616         * posix/regexec.c: Check out of bounds value before shifting.
3618         * posix/regex_internal.h: Define __attribute for non-gcc.
3620 2003-09-22  Jakub Jelinek  <jakub@redhat.com>
3622         * include/atomic.h (atomic_compare_and_exchange_val_rel,
3623         atomic_compare_and_exchange_bool_rel): Swap oldval/newval arguments
3624         to avoid confusion.
3626         * sysdeps/unix/opendir.c: Include string.h.
3628 2003-09-22  Ulrich Drepper  <drepper@redhat.com>
3630         * timezone/zdump.c: Update from tzcode2003c.
3631         * timezone/zic.c: Likewise.
3632         * timezone/leapseconds: Update from tzdata2003c.
3634 2003-09-19  Ulrich Drepper  <drepper@redhat.com>
3636         * elf/Makefile ($(objpfx)librtld.os): Create link map also for
3637         final build to ease quality control.
3639         * sysdeps/unix/sysv/linux/getcwd.c (__getcwd): If compiled for
3640         ld.so, don't include NULL buffer pointer handling.
3642 2003-09-19  Jakub Jelinek  <jakub@redhat.com>
3644         * dlfcn/dlopen.c (dlopen): Add static_link_warning.
3646 2003-09-18  Jakub Jelinek  <jakub@redhat.com>
3648         * libio/memstream.c (open_memstream): Use _IO_init instead of
3649         _IO_old_init.
3651 2003-09-17  Ulrich Drepper  <drepper@redhat.com>
3653         * sysdeps/generic/wordexp.c (eval_expr_val): Use strtol since we
3654         have to recognize octal and hexadecimal numbers as well.  Simplify
3655         function, signs are handled in strtol.
3656         * posix/wordexp-test.c: Add tests for octal and hexadecimal
3657         numbers in arithmetic expressions.
3659 2003-09-17  Jakub Jelinek  <jakub@redhat.com>
3661         * elf/Makefile (distribute): Add tst-alignmod.c.
3662         (tests): Add tst-align.
3663         (modules-names): Add tst-alignmod.
3664         (CFLAGS-tst-align.c, CFLAGS-tst-alignmod.c): Add
3665         $(stack-align-test-flags).
3666         ($(objpfx)tst-align): Depend on libdl.
3667         ($(objpfx)tst-align.out): Depend on tst-alignmod.so.
3668         * elf/tst-align.c: New file.
3669         * elf/tst-alignmod.c: New file.
3670         * misc/Makefile (CFLAGS-tst-tsearch.c): Add $(stack-align-test-flags).
3671         * misc/tst-tsearch.c: Include tst-stack-align.h.
3672         (stack_align_check): New array.
3673         (cmp_fn, walk_action): Use TEST_STACK_ALIGN ().
3674         (main): Report error if stack was not enough aligned
3675         in cmp_fn or walk_action.
3676         * stdlib/Makefile (CFLAGS-tst-qsort.c): Add $(stack-align-test-flags).
3677         * stdlib/tst-qsort.c: Include tst-stack-align.h.
3678         (align_check): New var.
3679         (compare): Use TEST_STACK_ALIGN () macro.
3680         (main): Report error if stack was not enough aligned in compare.
3681         * sysdeps/i386/i686/Makefile (stack-align-test-flags): Remove
3682         unneeded -mpreferred-stack-boundary=4.
3683         * sysdeps/x86_64/tst-stack-align.h: New file.
3685         * libio/memstream.c (_IO_wmem_jumps): Remove unused structure.
3686         (_IO_wmem_sync, _IO_wmem_finish): Remove unused functions.
3688 2003-09-17  Philip Blundell  <philb@gnu.org>
3690         * sysdeps/arm/dl-machine.h (CALL_ROUTINE): Deleted.
3691         (BX): Define.
3692         (ELF_MACHINE_RUNTIME_TRAMPOLINE): Optimise a little.
3694         * sysdeps/arm/sysdep.h (DO_RET): New.
3696         * sysdeps/unix/sysv/linux/arm/vfork.S: Add #error if __NR_vfork
3697         required but not defined.  Improve test of error code.
3699 2003-09-17  Jakub Jelinek  <jakub@redhat.com>
3701         * sysdeps/i386/Makefile (stack-align-test-flags): Add
3702         -malign-double -mpreferred-stack-boundary=4.
3704 2003-09-17  Ulrich Drepper  <drepper@redhat.com>
3706         * sysdeps/posix/utimes.c (__utimes): Truncate instead of round.
3707         * sysdeps/unix/sysv/linux/utimes.c (__utimes): Likewise.
3709 2003-09-15  Jakub Jelinek  <jakub@redhat.com>
3711         * sysdeps/i386/Makefile (sysdep-CFLAGS): If not in math or csu
3712         subdir, add -mpreferred-stack-boundary=4, with few exceptions.
3714 2003-09-17  Jakub Jelinek  <jakub@redhat.com>
3716         * Makeconfig (stack-align-test-flags): Set.
3717         * stdlib/Makefile (CFLAGS-tst-bsearch.c): Add
3718         $(stack-align-test-flags).
3719         * stdlib/tst-bsearch.c: Include tst-stack-align.h.
3720         (align_check): New var.
3721         (comp): Use TEST_STACK_ALIGN macro.
3722         (do_test): Fail if align_check != 1.
3723         * sysdeps/generic/tst-stack-align.h: New file.
3724         * sysdeps/i386/i686/Makefile (stack-align-test-flags): Add -msse.
3725         * sysdeps/i386/i686/tst-stack-align.h: New file.
3727 2003-09-17  Ulrich Drepper  <drepper@redhat.com>
3729         * sysdeps/unix/sysv/linux/i386/clone.S: Make sure child gets a
3730         stack which is aligned (mod 16).
3732 2003-09-17  Uwe Reimann  <Uwe_Reimann@gmx.net>
3733             Hans-Peter Nilsson  <hp@axis.com>
3735         * sysdeps/cris/dl-machine.h (elf_machine_type_class): Classify
3736         R_CRIS_GLOB_DAT as ELF_RTYPE_CLASS_PLT.  Clarify comment.
3738 2003-09-17  Jakub Jelinek  <jakub@redhat.com>
3740         * dirent/scandir.c: Include bits/libc-lock.h.
3741         (struct scandir_cancel_struct): New type.
3742         (cancel_handler): New function.
3743         (SCANDIR): Add __libc_cleanup_{push,pop}, save state into
3744         scandir_cancel_struct.
3746 2003-09-16  Ulrich Drepper  <drepper@redhat.com>
3748         * sysdeps/unix/sysv/linux/Dist: Remove internal_statvfs.c.
3749         * sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines):
3750         Add internal_statvfs.
3751         * sysdeps/unix/sysv/linux/fstatvfs.c: Call __internal_statvfs
3752         instead of including "internal_statvfs.c".
3753         * sysdeps/unix/sysv/linux/statvfs.c: Likewise.
3754         * sysdeps/unix/sysv/linux/internal_statvfs.c: Make it a real function.
3755         Add code to avoid the stat calls on all the reported mount points
3756         when we can determine mismatch in advance.
3757         * sysdeps/unix/sysv/linux/linux_fsinfo.h: Add AUTOFS_SUPER_MAGIC and
3758         USBDEVFS_SUPER_MAGIC.
3760 2003-09-16  Jakub Jelinek  <jakub@redhat.com>
3762         * posix/Versions (sched_getaffinity, sched_setaffinity): Change
3763         from GLIBC_2.3.2 to GLIBC_2.3.3 symbol version.
3765 2003-09-16  Bruno Haible  <bruno@clisp.org>
3767         * intl/tst-gettext2.sh: Set GCONV_PATH and LOCPATH only after
3768         invoking msgfmt, not before.
3770 2003-09-15  Jakub Jelinek  <jakub@redhat.com>
3772         * argp/argp.h (argp_parse, __argp_parse): Remove __THROW.
3773         * argp/Makefile (CFLAGS-argp-help.c, CFLAGS-argp-parse.c): Add
3774         $(uses-callbacks).
3775         * dirent/Makefile (CFLAGS-scandir.c, CFLAGS-scandir64.c): Likewise.
3776         * elf/Makefile (CFLAGS-dl-iterate-phdr.c,
3777         CFLAGS-dl-iterate-phdr-static.c): Add $(uses-callbacks).
3778         * elf/dl-iteratephdr.c (cancel_handler): New function.
3779         (__dl_iterate_phdr): Add __libc_cleanup_{push,pop}.
3780         * elf/link.h (dl_iterate_phdr): Remove __THROW.
3781         * io/Makefile (CFLAGS-fts.c): Merge into one assignment.
3782         Add $(uses-callbacks).
3783         (CFLAGS-ftw.c, CFLAGS-ftw64.c): Add $(uses-callbacks).
3784         * misc/Makefile (CFLAGS-tsearch.c, CFLAGS-lsearch.c): Change
3785         $(exceptions) to $(uses-callbacks).
3786         * Makeconfig (uses-callbacks): Set to $(exceptions).
3787         * posix/Makefile (CFLAGS-glob.c, CFLAGS-glob64.c): Add
3788         $(uses-callbacks).
3789         * stdlib/Makefile (CFLAGS-bsearch.c, CFLAGS-msort.c, CFLAGS-qsort.c):
3790         Likewise.
3792 2003-09-15  Andreas Schwab  <schwab@suse.de>
3794         * sysdeps/m68k/setjmp.c: Add hidden_def.
3796 2003-09-14  Ulrich Drepper  <drepper@redhat.com>
3798         * libio/memstream.c (open_memstream): Don't allow wide char operations.
3800         * dirent/dirent.h: Remove __THROW from scandir.
3802 2003-09-14  Philip Blundell  <philb@gnu.org>
3804         * sysdeps/unix/sysv/linux/arm/mmap.S: Use sys_mmap2 if it's known
3805         to be available.
3807         * sysdeps/unix/sysv/linux/arm/mmap64.S: Optimise code a little.
3809         * sysdeps/arm/memset.S: Rewrite.
3811 2003-09-12  Jakub Jelinek  <jakub@redhat.com>
3813         * sysdeps/unix/sysv/linux/s390/bits/typesizes.h: New.
3814         (__SSIZE_T_TYPE): Define to __SWORD_TYPE for gcc 2.95.x and
3815         __SLONGWORD_TYPE otherwise.
3817 2003-09-14  Ulrich Drepper  <drepper@redhat.com>
3819         * io/Makefile (CFLAGS-ftw.c): Add -fexceptions.
3820         (CFLAGS-ftw64.c): Likewise.
3822 2003-09-13  Ulrich Drepper  <drepper@redhat.com>
3824         * nscd/Makefile (CFLAGS-nscd_getpw_r.c): Add -fexceptions.
3825         (CFLAGS-nscd_getgr_r.c): Likewise.
3826         (CFLAGS-nscd_gethst_r.c): Likewise.
3828 2003-09-12  Ulrich Drepper  <drepper@redhat.com>
3830         * sysdeps/unix/sysv/linux/if_index.c: Use only non-cancelable
3831         interfaces.
3833         * grp/Makefile (CFLAGS-getgrgid_r.c, CFLAGS-getgrnam_r.c,
3834         CFLAGS-fgetgrent.c, CFLAGS-fgetgrent_r.c, CFLAGS-putgrent.c,
3835         CFLAGS-initgroups.c, CFLAGS-getgrgid.c): Add -fexceptions.
3836         * inet/Makefile (CFLAGS-either_ntoh.c, CFLAGS-either_hton.c,
3837         CFLAGS-getnetgrent.c, CFLAGS-getnetgrent_r.c): Likewise.
3838         * io/Makefile (CFLAGS-posix_fallocate.c, CFLAGS-posix_fallocate64.c):
3839         Likewise.
3840         * misc/Makefile (CFLAGS-err.c): Likewise.
3841         * posix/Makefile (CFLAGS-getaddrinfo.c, CFLAGS-spawn.c,
3842         CFLAGS-spawnp.c, CFLAGS-spawni.c, CFLAGS-pause.c, CFLAGS-glob.c,
3843         CFLAGS-glob64.c): Likewise.
3844         * pwd/Makefile (CFLAGS-getpw.c): Likewise.
3845         * shadow/Makefile (CFLAGS-fgetspent.c, CFLAGS-fgetspent_r.c,
3846         CFLAGS-putspent.c, CFLAGS-getspnam.c, CFLAGS-getspnam_r.c): Likewise.
3847         * stdio-common/Makefile (CFLAGS-cuserid.c): Likewise.
3848         * sunrpc/Makefile (CFLAGS-openchild.c): Likewise.
3850         * stdlib/Makefile (CFLAGS-mkstemp.c): Remove definition.
3852         * libio/stdio.h: Remove __THROW from cuserid prototype.
3854         * locale/loadarchive.c: Use only non-cancelable interfaces.
3855         * resolv/herror.c (herror): Likewise.
3857         * malloc/hooks.c: Before using IO stream mark stream so it uses
3858         only non-cancelable interfaces.
3859         * malloc/malloc.c: Likewise.
3860         * posix/getopt.c: Likewise.
3863 2003-09-11  Jakub Jelinek  <jakub@redhat.com>
3865         * Makerules (LDFLAGS-c.so): Remove -u __register_frame.
3867 2003-09-12  Ulrich Drepper  <drepper@redhat.com>
3869         * stdio-common/stdio_ext.h: Mark most functions with __THROW.
3871         * misc/err.h: Remove __THROW from all prototypes.
3873         * posix/getopt.h (__THROW): Define if not already defined.  Add
3874         __THROW to the getopt functions.
3876 2003-09-11  Ulrich Drepper  <drepper@redhat.com>
3878         * io/Makefile (CFLAGS-lockf.c): Add -fexceptions.
3879         (CFLAGS-fts.c): Likewise.
3880         * io/fcntl.h: Remove __THROW from lockf prototypes.
3881         * io/fts.h: Remove most __THROW.
3883 2003-09-11  H.J. Lu  <hongjiu.lu@intel.com>
3885         * elf/tls-macros.h (TLS_IE): Add a stop bit for ia64.
3886         (TLS_LD): Likewise.
3887         (TLS_GD): Likewise.
3889 2003-09-11  Jakub Jelinek  <jakub@redhat.com>
3891         * libio/fileops.c (_IO_new_file_overflow): Add INTUSE to
3892         _IO_free_backup_area call.
3894 2003-09-10  Chris Demetriou  <cgd@broadcom.com>
3896         * sysdeps/unix/sysv/linux/mips/pread64.c (__libc_pread64): Fix
3897         syscall invocation.
3898         * sysdeps/unix/sysv/linux/mips/pwrite64.c (__libc_pwrite64): Likewise.
3899         * sysdeps/unix/sysv/linux/mips/pread.c (__libc_pread): Likewise.
3900         Also, only assert off_t size is 4 for N32 and O32, and clean up
3901         white space.
3902         * sysdeps/unix/sysv/linux/mips/pwrite.c (__libc_pwrite): Likewise.
3904 2003-09-10  Roland McGrath  <roland@redhat.com>
3906         * sysdeps/unix/sysv/linux/tcgetattr.c (__tcgetattr):
3907         Don't use c_ispeed under [! _HAVE_STRUCT_TERMIOS_C_ISPEED].
3908         Don't use c_ospeed under [! _HAVE_STRUCT_TERMIOS_C_OSPEED].
3909         * sysdeps/unix/sysv/linux/tcsetattr.c (tcsetattr): Likewise.
3910         Reported by Daniel Jacobowitz  <drow@mvista.com>.
3912 2003-09-10  Jakub Jelinek  <jakub@redhat.com>
3914         * string/Makefile (strop-tests): Add memccpy.
3915         * string/test-memccpy.c: New test.
3917 2003-09-09  Jakub Jelinek  <jakub@redhat.com>
3919         * sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h (SIGCONTEXT): Add
3920         siginfo_t * argument before, change into struct ucontext *.
3921         (SIGCONTEXT_EXTRA_ARGS): Define to _si,.
3922         (GET_PC, GET_FRAME, GET_STACK): Adjust for ctx being a pointer
3923         instead of structure.
3924         * sysdeps/unix/sysv/linux/x86_64/register-dump.h (REGISTER_DUMP):
3925         Likewise.
3927 2003-09-09  Ulrich Drepper  <drepper@redhat.com>
3929         * string/stratcliff.c (main): Check memccpy.
3931 2003-04-11  Jes Sorensen  <jes@wildopensource.com>
3933         * sysdeps/ia64/memccpy.S: When recovering for src_aligned and the
3934         character is found during recovery, use correct register when
3935         determining the position of the found character.
3937 2003-04-01  Jes Sorensen  <jes@wildopensource.com>
3939         * sysdeps/ia64/memccpy.S: Use speculatively loads for readahead to
3940         avoid segfaults when reading from unmapped pages. For aligned
3941         reload and continue, for misaligned, roll back and use byte copy.
3942         Save ar.ec on entry and restore on exit.
3944 2003-09-09  Chris Demetriou  <cgd@broadcom.com>
3946         * sysdeps/unix/mips/sysdep.h (PSEUDO_END): Undef before defining.
3948 2003-09-08  Chris Demetriou  <cgd@broadcom.com>
3950         * sysdeps/mips/mips64/n32/Implies: Move ieee754/ldbl-128 to
3951         the top of the list.
3952         * sysdeps/mips/mips64/n64/Implies: Likewise.
3954 2003-09-08  Roland McGrath  <roland@frob.com>
3956         * sysdeps/unix/sysv/linux/speed.c
3957         (cfsetospeed): Only set c_ospeed under [_HAVE_STRUCT_TERMIOS_C_OSPEED].
3958         (cfsetispeed): Only set c_ispeed under [_HAVE_STRUCT_TERMIOS_C_ISPEED].
3959         * sysdeps/unix/sysv/linux/bits/termios.h
3960         (_HAVE_STRUCT_TERMIOS_C_ISPEED, _HAVE_STRUCT_TERMIOS_C_OSPEED): Define.
3961         * sysdeps/unix/sysv/linux/alpha/bits/termios.h: Likewise.
3962         * sysdeps/unix/sysv/linux/powerpc/bits/termios.h: Likewise.
3964 2003-09-08  Ulrich Drepper  <drepper@redhat.com>
3966         * sysdeps/unix/sysv/linux/x86_64/register-dump.h: Undo last change.
3967         * sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h: Likewise.
3969 2003-09-08  Jakub Jelinek  <jakub@redhat.com>
3971         * sysdeps/generic/bits/types.h (__quad_t): Make long int if 64-bit.
3972         (__u_quad_t): Make unsigned long int if 64-bit.
3973         (__SQUAD_TYPE): Make long int if 64-bit.
3974         (__UQUAD_TYPE): Make unsigned long int if 64-bit.
3975         * sysdeps/unix/sysv/linux/s390/bits/typesizes.h: Remove.
3977 2003-09-08  Ulrich Drepper  <drepper@redhat.com>
3979         * Makefile (tests): Run check-c++-types.sh if possible.
3980         * scripts/check-c++-types.h: New file.
3981         * scripts/data/c++-types-i386-linux-gnu.data: New file.
3983 2003-09-08  Andreas Jaeger  <aj@suse.de>
3985         * sysdeps/unix/sysv/linux/x86_64/register-dump.h (register_dump):
3986         Use struct sigcontext.
3988         * sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h (SIGCONTEXT):
3989         Use struct sigcontext.
3990         (GET_PC): Adopt.
3991         (GET_FRAME): Likewise.
3992         (GET_STACK): Likewise.
3994 2003-09-08  Wolfram Gloger  <wg@malloc.de>
3996         * malloc/malloc.c (sYSMALLOc): Move foreign sbrk accounting into
3997         contiguous case.  Bug report from Prem Gopalan <prem@mazunetworks.com>.
3998         (mALLOPt): Avoid requirement of C99.
4000 2003-09-08  Ulrich Drepper  <drepper@redhat.com>
4002         * libio/bug-ftell.c: Include <sys/types.h>.
4003         (main): Mark cp as const.
4005 2003-09-07  Jakub Jelinek  <jakub@redhat.com>
4007         * sysdeps/unix/sysv/linux/syscalls.list (fcntl): Remove.
4008         * sysdeps/unix/sysv/linux/x86_64/fcntl.c: Remove.
4010 2003-09-05  Roland McGrath  <roland@redhat.com>
4012         * sysdeps/unix/sysv/linux/tcgetattr.c (__tcgetattr): Fill in c_ispeed
4013         and c_ospeed fields.
4014         * sysdeps/unix/sysv/linux/speed.c (cfsetospeed): Set c_ospeed field.
4015         (cfsetispeed): Set c_ispeed field.
4016         * sysdeps/unix/sysv/linux/tcsetattr.c (IBAUD0): Define unconditionally
4017         to match corresponding speed.c code.
4019 2003-09-06  Ulrich Drepper  <drepper@redhat.com>
4021         * libio/wfileops.c (_IO_wfile_underflow): Mark beginning of the
4022         narrow character buffer.
4023         * libio/Makefile: Add rules to build and run bug-ftell.
4024         * libio/bug-ftell.c: New file.
4026         * stdio-common/vfprintf.c: Don't use the first grouping number twice.
4028         * stdio-common/vfscanf.c (vfscanf): Fix recognition of characters
4029         matching the decimal point and possibly leading the thousands
4030         separator.  This caused the recognition of thousands separators to
4031         always fail.
4033 2003-09-05  Ulrich Drepper  <drepper@redhat.com>
4035         * libio/fileops.c (_IO_new_file_overflow): Handle switching to
4036         write mode from read in backup buffer.
4037         * libio/Makefile (tests): Add bug-ungetc2.
4038         * libio/bug-ungetc2.c: New file.
4040 2003-09-05  Roland McGrath  <roland@redhat.com>
4042         * nss/getXXbyYY.c (FUNCTION_NAME): Remove unused variable.
4044 2003-09-04  Roland McGrath  <roland@frob.com>
4046         * sysdeps/mach/hurd/mmap.c (__mmap): If io_map fails with MIG_BAD_ID,
4047         EOPNOTSUPP, or ENOSYS, change it to ENODEV.
4049 2003-09-04  H.J. Lu  <hongjiu.lu@intel.com>
4051         * sysdeps/unix/sysv/linux/ia64/bits/sigstack.h (MINSIGSTKSZ):
4052         Fix a typo.
4054 2003-09-05  Andreas Jaeger  <aj@suse.de>
4056         * sysdeps/i386/bits/string.h (__memrchr): Do addition in assembler
4057         to make it conforming C.
4058         * sysdeps/i386/i486/bits/string.h (__memrchr): Likewise.
4060         * sysdeps/unix/sysv/linux/i386/fcntl.c (__fcntl_nocancel): Change
4061         prototype to use variable argument lists and get the possible one
4062         argument via va_arg.
4063         * sysdeps/unix/sysv/linux/fcntl.c (__fcntl_nocancel): Likewise.
4064         * sysdeps/unix/sysv/linux/x86_64/fcntl.c: New.
4066 2003-09-04  Ulrich Drepper  <drepper@redhat.com>
4068         * posix/unistd.h: Add back __THROW to sysconf, pathconf, fpathconf.
4070         * sysdeps/unix/sysv/linux/pathconf.c (__statfs_filesize_max):
4071         Report correct value for vxfs.
4072         * sysdeps/unix/sysv/linux/linux_fsinfo.h: Define VXFS_SUPER_MAGIC.
4074         * gmon/gmon.c: Use only not-cancelable syscalls to write profiling
4075         data.
4077         * sysdeps/generic/utmp_file.c: Use not-cancelable syscalls all
4078         over the place.  It would be allowed to have these functions as
4079         cancellation points but the cleanup would be ugly and a lot of
4080         work.
4082         * sysdeps/generic/not-cancel.h (fcntl_not_cancel): Define.
4083         * sysdeps/unix/sysv/linux/not-cancel.h (fcntl_not_cancel): Define.
4085         * include/fcntl.h (__fcntl_nocancel): Declare.
4086         * sysdeps/unix/sysv/linux/fcntl.c: New file.
4087         * sysdeps/unix/sysv/linux/i386/fcntl.c (__libc_fcntl): Only enable
4088         cancellation if absolutely needed.
4089         (__fcntl_nocancel): Define.
4091         * posix/unistd.h (gethostid): Remove __THROW.  Clarify comment.
4092         * sysdeps/unix/sysv/linux/Makefile (CFLAGS-gethostid.c): Add
4093         -fexceptions.
4094         * sysdeps/unix/sysv/linux/gethostid.c (gethostid): Use
4095         extend_alloca.
4097         * resolv/res_init.c (__res_nclose): Use close_not_cancel_no_status
4098         instead of __close.
4100         * nss/getXXbyYY.c (FUNCTION_NAME): Add a few casts.  Remove
4101         unnecessary errno handling.
4103         * nss/getXXbyYY_r.c (INTERNAL): Use better variable name.
4104         Initialize it in all cases.  Change it to be a bit more like the
4105         code we had before.
4107 2003-09-04  Jakub Jelinek  <jakub@redhat.com>
4109         * libio/fileops.c (_IO_file_read, _IO_new_file_write): Add
4110         __builtin_expect.
4111         (_IO_file_open): Likewise.  Use close_not_cancel.
4113 2003-09-04  Ulrich Drepper  <drepper@redhat.com>
4115         * libio/libio.h: Define _IO_FLAGS2_NOTCANCEL.
4116         * libio/fileops.c [_LIBC]: Remove close macro.
4117         (_IO_file_open): If _IO_FLAGS2_NOTCANCEL is set, use open_not_cancel.
4118         (_IO_new_file_open): Recognize 'c' flag in mode string.
4119         (_IO_file_read): If _IO_FLAGS2_NOTCANCEL is set use read_not_cancel.
4120         (_IO_new_file_write): If _IO_FLAGS2_NOTCANCEL is set use
4121         write_not_cancel.
4122         * iconv/gconv_conf.c: Use fopen with 'c' mode flag.
4123         * inet/rcmd.c: Likewise.
4124         * inet/ruserpass.c: Likewise.
4125         * intl/localealias.c: Likewise.
4126         * malloc/mtrace.c: Likewise.
4127         * misc/getpass.c: Likewise.
4128         * misc/getttyent.c: Likewise.
4129         * misc/mntent_r.c: Likewise.
4130         * misc/getusershell.c: Likewise.
4131         * nss/nsswitch.c: Likewise.
4132         * resolv/res_hconf.c: Likewise.
4133         * resolv/res_init.c: Likewise.
4134         * sysdeps/unix/sysv/linux/getsysstats.c: Likewise.
4135         * time/getdate.c: Likewise.
4136         * time/tzfile.c: Likewise.
4137         * misc/fstab.h: Undo last change.
4138         * misc/mntent.h: Likewise.
4139         * misc/Makefile: Remove CFLAGS-mntent_r.c, CFLAGS-mntent.c, and
4140         CFLAGS-fstab.c definition.
4142 2003-09-04  Jakub Jelinek  <jakub@redhat.com>
4144         * sysdeps/generic/unwind.h (_Unwind_GetBSP): Add prototype.
4146 2003-09-03  Ulrich Drepper  <drepper@redhat.com>
4148         * nss/getXXbyYY_r.c (INTERNAL): Explicitly set errno and avoid
4149         returning ERANGE if this wasn't intended.
4151 2003-09-03  Jakub Jelinek  <jakub@redhat.com>
4153         * intl/loadmsgcat.c (open, close, read, mmap, munmap): Define as
4154         function-like macros.
4156 2003-09-03  Ulrich Drepper  <drepper@redhat.com>
4158         * grp/Makefile (CFLAGS-getgrent_r.c): Add -fexceptions.
4159         (CFLAGS-getgrent.c): Likewise.
4160         * pwd/Makefile (CFLAGS-getpwent_r.c): Add -fexceptions.
4161         (CFLAGS-getpwent.c): Likewise.
4162         * shadow/Makefile (CFLAGS-getspent_r.c): Add -fexceptions.
4163         (CFLAGS-getspent.c): Likewise.
4165         * inet/Makefile: Add -fexceptions to CFLAGS for the various
4166         getXXent and getXXbyYY functions.
4168         * locale/loadlocale.c: Use not-cancelable variants of open, close,
4169         and read.
4171 2003-09-02  Jakub Jelinek  <jakub@redhat.com>
4173         * sysdeps/unix/sysv/linux/alpha/Makefile (sysdep_routines): Remove
4174         rt_sigsuspend, rt_sigprocmask, rt_sigtimedwait, rt_sigqueueinfo and
4175         rt_sigpending.
4176         * sysdeps/unix/sysv/linux/alpha/sigaction.c (__syscall_rt_sigaction):
4177         New prototype.
4178         * sysdeps/unix/sysv/linux/arm/syscalls.list (__syscall_*): Remove
4179         unused __syscall_ stubs.
4180         * sysdeps/unix/sysv/linux/arm/Makefile (sysdep_routines): Remove
4181         rt_*.
4182         * sysdeps/unix/sysv/linux/cris/Makefile: Removed.
4183         * sysdeps/unix/sysv/linux/mips/mips64/syscalls.list
4184         (__syscall_recvfrom, __syscall_sendto): Remove unused aliases.
4185         * sysdeps/unix/sysv/linux/mips/syscalls.list (__syscall_*): Remove
4186         unused __syscall_ stubs.
4187         * sysdeps/unix/sysv/linux/mips/Makefile (sysdep_routines): Remove rt_*.
4188         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list
4189         (__syscall_*): Remove unused __syscall_ stubs.
4190         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list
4191         (__syscall_*): Likewise.
4192         * sysdeps/unix/sysv/linux/powerpc/Makefile (sysdep_routines): Remove
4193         rt_*.
4194         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (__syscall_*):
4195         Remove unused __syscall_ stubs.
4196         * sysdeps/unix/sysv/linux/sh/Makefile (sysdep_routines): Remove rt_*.
4197         * sysdeps/unix/sysv/linux/rt_sigaction.c: Removed.
4198         * sysdeps/unix/sysv/linux/rt_sigpending.c: Removed.
4199         * sysdeps/unix/sysv/linux/rt_sigprocmask.c: Removed.
4200         * sysdeps/unix/sysv/linux/rt_sigqueueinfo.c: Removed.
4201         * sysdeps/unix/sysv/linux/rt_sigreturn.c: Removed.
4202         * sysdeps/unix/sysv/linux/rt_sigsuspend.c: Removed.
4203         * sysdeps/unix/sysv/linux/rt_sigtimedwait.c: Removed.
4204         * sysdeps/unix/sysv/linux/s_pread64.c: Removed.
4205         * sysdeps/unix/sysv/linux/s_pwrite64.c: Removed.
4206         * sysdeps/unix/sysv/linux/alpha/gethostname.c: Remove unused
4207         __syscall_* prototypes.
4208         * sysdeps/unix/sysv/linux/alpha/ipc_priv.h: Likewise.
4209         * sysdeps/unix/sysv/linux/alpha/msgctl.c: Likewise.
4210         * sysdeps/unix/sysv/linux/alpha/semctl.c: Likewise.
4211         * sysdeps/unix/sysv/linux/alpha/shmctl.c: Likewise.
4212         * sysdeps/unix/sysv/linux/arm/sigaction.c: Likewise.
4213         * sysdeps/unix/sysv/linux/i386/chown.c: Likewise.
4214         * sysdeps/unix/sysv/linux/i386/fchown.c: Likewise.
4215         * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.
4216         * sysdeps/unix/sysv/linux/i386/fxstat.c: Likewise.
4217         * sysdeps/unix/sysv/linux/i386/getegid.c: Likewise.
4218         * sysdeps/unix/sysv/linux/i386/geteuid.c: Likewise.
4219         * sysdeps/unix/sysv/linux/i386/setuid.c: Likewise.
4220         * sysdeps/unix/sysv/linux/i386/getgid.c: Likewise.
4221         * sysdeps/unix/sysv/linux/i386/getgroups.c: Likewise.
4222         * sysdeps/unix/sysv/linux/i386/getmsg.c: Likewise.
4223         * sysdeps/unix/sysv/linux/i386/xstat.c: Likewise.
4224         * sysdeps/unix/sysv/linux/i386/getresgid.c: Likewise.
4225         * sysdeps/unix/sysv/linux/i386/getresuid.c: Likewise.
4226         * sysdeps/unix/sysv/linux/i386/getrlimit.c: Likewise.
4227         * sysdeps/unix/sysv/linux/i386/getuid.c: Likewise.
4228         * sysdeps/unix/sysv/linux/i386/lchown.c: Likewise.
4229         * sysdeps/unix/sysv/linux/i386/lockf64.c: Likewise.
4230         * sysdeps/unix/sysv/linux/i386/lxstat.c: Likewise.
4231         * sysdeps/unix/sysv/linux/i386/putmsg.c: Likewise.
4232         * sysdeps/unix/sysv/linux/i386/setfsgid.c: Likewise.
4233         * sysdeps/unix/sysv/linux/i386/setfsuid.c: Likewise.
4234         * sysdeps/unix/sysv/linux/i386/setgid.c: Likewise.
4235         * sysdeps/unix/sysv/linux/i386/setgroups.c: Likewise.
4236         * sysdeps/unix/sysv/linux/i386/setregid.c: Likewise.
4237         * sysdeps/unix/sysv/linux/i386/setresgid.c: Likewise.
4238         * sysdeps/unix/sysv/linux/i386/setresuid.c: Likewise.
4239         * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise.
4240         * sysdeps/unix/sysv/linux/i386/setrlimit.c: Likewise.
4241         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
4242         * sysdeps/unix/sysv/linux/ia64/fxstat.c: Likewise.
4243         * sysdeps/unix/sysv/linux/ia64/lxstat.c: Likewise.
4244         * sysdeps/unix/sysv/linux/ia64/sigaction.c: Likewise.
4245         * sysdeps/unix/sysv/linux/ia64/sigpending.c: Likewise.
4246         * sysdeps/unix/sysv/linux/ia64/sigprocmask.c: Likewise.
4247         * sysdeps/unix/sysv/linux/ia64/sigsuspend.c: Likewise.
4248         * sysdeps/unix/sysv/linux/ia64/xstat.c: Likewise.
4249         * sysdeps/unix/sysv/linux/m68k/chown.c: Likewise.
4250         * sysdeps/unix/sysv/linux/mips/ftruncate64.c: Likewise.
4251         * sysdeps/unix/sysv/linux/mips/pread.c: Likewise.
4252         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
4253         * sysdeps/unix/sysv/linux/mips/ptrace.c: Likewise.
4254         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
4255         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
4256         * sysdeps/unix/sysv/linux/mips/sigaction.c: Likewise.
4257         * sysdeps/unix/sysv/linux/mips/truncate64.c: Likewise.
4258         * sysdeps/unix/sysv/linux/mips/ustat.c: Likewise.
4259         * sysdeps/unix/sysv/linux/mips/xmknod.c: Likewise.
4260         * sysdeps/unix/sysv/linux/powerpc/chown.c: Likewise.
4261         * sysdeps/unix/sysv/linux/powerpc/ioctl.c: Likewise.
4262         * sysdeps/unix/sysv/linux/s390/s390-32/chown.c: Likewise.
4263         * sysdeps/unix/sysv/linux/s390/s390-32/lchown.c: Likewise.
4264         * sysdeps/unix/sysv/linux/s390/s390-64/xstat.c: Likewise.
4265         * sysdeps/unix/sysv/linux/s390/s390-64/fxstat.c: Likewise.
4266         * sysdeps/unix/sysv/linux/s390/s390-64/lxstat.c: Likewise.
4267         * sysdeps/unix/sysv/linux/s390/s390-64/sigaction.c: Likewise.
4268         * sysdeps/unix/sysv/linux/s390/s390-64/sigpending.c: Likewise.
4269         * sysdeps/unix/sysv/linux/s390/s390-64/sigprocmask.c: Likewise.
4270         * sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c: Likewise.
4271         * sysdeps/unix/sysv/linux/sparc/sparc64/sigpending.c: Likewise.
4272         * sysdeps/unix/sysv/linux/sparc/sparc64/sigprocmask.c: Likewise.
4273         * sysdeps/unix/sysv/linux/x86_64/sigaction.c: Likewise.
4274         * sysdeps/unix/sysv/linux/pwrite.c: Likewise.
4275         * sysdeps/unix/sysv/linux/execve.c: Likewise.
4276         * sysdeps/unix/sysv/linux/aio_sigqueue.c: Likewise.
4277         * sysdeps/unix/sysv/linux/reboot.c: Likewise.
4278         * sysdeps/unix/sysv/linux/_exit.c: Likewise.
4279         * sysdeps/unix/sysv/linux/ftruncate64.c: Likewise.
4280         * sysdeps/unix/sysv/linux/pwrite64.c: Likewise.
4281         * sysdeps/unix/sysv/linux/fxstat64.c: Likewise.
4282         * sysdeps/unix/sysv/linux/gai_sigqueue.c: Likewise.
4283         * sysdeps/unix/sysv/linux/readahead.c: Likewise.
4284         * sysdeps/unix/sysv/linux/getcwd.c: Likewise.
4285         * sysdeps/unix/sysv/linux/sigwait.c: Likewise.
4286         * sysdeps/unix/sysv/linux/getdents.c: Likewise.
4287         * sysdeps/unix/sysv/linux/readv.c: Likewise.
4288         * sysdeps/unix/sysv/linux/getpriority.c: Likewise.
4289         * sysdeps/unix/sysv/linux/sigaction.c: Likewise.
4290         * sysdeps/unix/sysv/linux/ipc_priv.h: Likewise.
4291         * sysdeps/unix/sysv/linux/llseek.c: Likewise.
4292         * sysdeps/unix/sysv/linux/sysctl.c: Likewise.
4293         * sysdeps/unix/sysv/linux/lxstat64.c: Likewise.
4294         * sysdeps/unix/sysv/linux/mmap64.c: Likewise.
4295         * sysdeps/unix/sysv/linux/ustat.c: Likewise.
4296         * sysdeps/unix/sysv/linux/poll.c: Likewise.
4297         * sysdeps/unix/sysv/linux/pread64.c: Likewise.
4298         * sysdeps/unix/sysv/linux/writev.c: Likewise.
4299         * sysdeps/unix/sysv/linux/pread.c: Likewise.
4300         * sysdeps/unix/sysv/linux/ptrace.c: Likewise.
4301         * sysdeps/unix/sysv/linux/sigpending.c: Likewise.
4302         * sysdeps/unix/sysv/linux/sigprocmask.c: Likewise.
4303         * sysdeps/unix/sysv/linux/sigqueue.c: Likewise.
4304         * sysdeps/unix/sysv/linux/sigsuspend.c: Likewise.
4305         * sysdeps/unix/sysv/linux/sigtimedwait.c: Likewise.
4306         * sysdeps/unix/sysv/linux/sigwaitinfo.c: Likewise.
4307         * sysdeps/unix/sysv/linux/truncate64.c: Likewise.
4308         * sysdeps/unix/sysv/linux/xmknod.c: Likewise.
4309         * sysdeps/unix/sysv/linux/xstat64.c: Likewise.
4311 2003-09-02  Jakub Jelinek  <jakub@redhat.com>
4313         * sysdeps/unix/sysv/linux/i386/sysdep.h (PSEUDO): Revert last change.
4314         * sysdeps/unix/sysv/linux/powerpc/syscalls.list: New file.
4315         * sysdeps/unix/sysv/linux/sparc/syscalls.list: New file.
4317 2003-09-02  Ulrich Drepper  <drepper@redhat.com>
4319         * stdio-common/Makefile (CFLAGS-vprintf.c): Add -fexceptions.
4321         * intl/loadmsgcat.c: For _LIBC, call not cancelable versions of
4322         open, close, and read.
4324         * sysdeps/unix/sysv/linux/i386/sysdep.h (PSEUDO): Also define
4325         *_nocancel name.
4327         * sysdeps/unix/sysv/linux/i386/syscalls.list: Add waitpid.
4329         * libio/Makefile (CFLAGS-oldtmpfile.c): Add -fexceptions.
4330         * sysdeps/generic/tmpfile.c (tmpfile): Use __unlink instead of remove.
4331         * libio/oldtmpfile.c (__old_tmpfile): Likewise.
4333         * misc/Makefile (CFLAGS-getusershell.c): Add -fexceptions.
4335         * io/Makefile (CFLAGS-statfs.c): Add -fexceptions.
4336         (CFLAGS-fstatfs.c): Likewise.
4337         (CFLAGS-statvfs.c): Likewise.
4338         (CFLAGS-fstatvfs.c): Likewise.
4340 2003-09-01  Ulrich Drepper  <drepper@redhat.com>
4342         * misc/Makefile (CFLAGS-getsysstats.c): Add -fexceptions.
4343         * posix/unistd.h: Remove __THROW from pathconf, fpathconf,
4344         sysconf.
4345         * posix/Makefile (CFLAGS-sysconf.c): Add -fexceptions.
4346         (CFLAGS-pathconf.c): Likewise.
4347         (CFLAGS-fpathconf.c): Likewise.
4349         * misc/Makefile (CFLAGS-fstab.c): Add -fexceptions.
4350         * misc/fstab.h: Remove all __THROW.
4351         * misc/Makefile (CFLAGS-mntent.c): Add -fexceptions.
4352         (CFLAGS-mntent_r.c): Likewise.
4353         * misc/mntent.h: Remove most __THROW.
4355         * misc/Makefile (CFLAGS-mkstemp.c): Add -fexceptions.
4356         (CFLAGS-mkstemp64.c): Likewise.
4358         * sysdeps/generic/wordexp.c (parse_comm): Disable cancellation
4359         around call to exec_comm.
4360         * posix/wordexp.h: Remove __THROW from wordexp.
4361         * posix/Makefile (CFLAGS-wordexp.c): Add -fexceptions.
4363         * sysdeps/unix/sysv/linux/getloadavg.c (getloadavg): Use
4364         not-cancelable functions.
4366         * libio/Makefile (CFLAGS-oldiofopen.c): Add -fexceptions.
4367         (CFLAGS-iofopen.c): Likewise.
4368         (CFLAGS-iofopen64.c): Likewise.
4370         * stdlib/fmtmsg.c (fmtmsg): Disable cancellation around output
4371         functions.
4372         * stdlib/Makefile (CFLAGS-fmtmsg.c): Add -fexceptions.
4373         * stdlib/fmtmsg.h: Remove __THROW from fmtmsg.
4375         * stdlib/stdlib.h: Remove __THROW from posix_openpt and getpt.
4376         * login/Makefile (CFLAGS-getpt.c): Add -fexceptions.
4378 2003-09-01  Thorsten Kukuk  <kukuk@suse.de>
4380         * nis/nss_compat/compat-spwd.c (getspnam_plususer): Return
4381         NSS_STATUS_SUCCESS if entry was found.
4382         (getspent_next_file): Store user in blacklist after entry
4383         was found, use innetgr.
4385 2003-09-01  Jakub Jelinek  <jakub@redhat.com>
4387         * sysdeps/unix/sysv/linux/powerpc/powerpc32/posix_fadvise.c: New.
4388         * sysdeps/unix/sysv/linux/powerpc/powerpc32/posix_fadvise64.c: New.
4390         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Fix tls offset
4391         computation for TCB_AT_TP.  Support l_firstbyte_offset != 0 for
4392         DTV_AT_TP, optimize.
4394 2003-08-31  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
4396         * sysdeps/unix/sysv/linux/sh/Versions: Add posix_fadvise64 and
4397         posix_fallocate64 at GLIBC_2.3.3.
4398         * sysdeps/unix/sysv/linux/sh/sysdep.h (PSEUDO_ERRVAL): Define.
4399         (PSEUDO_END_ERRVAL, ret_ERRVAL): Likewise.
4401 2003-08-08  H.J. Lu  <hongjiu.lu@intel.com>
4403         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Remove __syscall_
4404         functions.
4406 2003-08-31  Ulrich Drepper  <drepper@redhat.com>
4408         * libio/libioP.h (_IO_acquire_lock_fct): Define as inline function.
4409         Code by Richard Henderson.
4411 2003-08-31  Philip Blundell  <philb@gnu.org>
4413         * sysdeps/unix/sysv/linux/arm/Versions: Add posix_fadvise64 and
4414         posix_fallocate64 at GLIBC_2.3.3.
4416 2003-08-31  Ulrich Drepper  <drepper@redhat.com>
4418         * sysdeps/x86_64/bsd-_setjmp.S: Use HIDDEN_JUMPTARGET.
4419         * include/setjmp.h: Add libc_hidden_proto for __sigsetjmp.
4421 2003-08-30  Jakub Jelinek  <jakub@redhat.com>
4423         * sysdeps/generic/sysdep.h (cfi_window_save, CFI_WINDOW_SAVE): Define.
4424         * sysdeps/unix/sysv/linux/sparc/bits/setjmp.h: Allow file to be
4425         included multiple times.
4426         * sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__clone): Pass
4427         ptid, tls, ctid arguments to the kernel.
4428         * sysdeps/unix/sysv/linux/sparc/sparc32/getpagesize.c (__getpagesize):
4429         Use INTERNAL_SYSCALL instead of __syscall_getpagesize.
4430         * sysdeps/unix/sysv/linux/sparc/sparc32/sigaction.c
4431         (__libc_sigaction): Use INLINE_SYSCALL instead of
4432         __syscall_rt_sigaction.
4433         * sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list
4434         (__syscall_getgroups, __syscall_getpagesize, __syscall__llseek,
4435         __syscall_setfsgid, __syscall_setfsuid, __syscall_setgid,
4436         __syscall_setgroups, __syscall_setregid, __syscall_setreuid,
4437         __syscall_ipc, __syscall_setuid, __syscall_rt_sigaction,
4438         __syscall_rt_sigpending, __syscall_rt_sigprocmask,
4439         __syscall_rt_sigqueueinfo, __syscall_rt_sigsuspend,
4440         __syscall_rt_sigtimedwait): Remove unneeded syscall stubs.
4441         * sysdeps/unix/sysv/linux/sparc/sparc32/Makefile (sysdep_routines):
4442         Remove rt_sigsuspend, rt_sigprocmask, rt_sigtimedwait,
4443         rt_sigqueueinfo, rt_sigaction and rt_sigpending.
4444         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h
4445         (__CLONE_SYSCALL_STRING): Define.
4446         * sysdeps/unix/sysv/linux/sparc/sparc32/socket.S (__socket): Add
4447         CFI directives.
4448         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h
4449         (__CLONE_SYSCALL_STRING): Define.
4450         * sysdeps/unix/sysv/linux/sparc/sysdep.h (INLINE_CLONE_SYSCALL):
4451         Define.
4452         * sysdeps/unix/sysv/linux/sparc/system.c: New file.
4454 2003-08-30  Ulrich Drepper  <drepper@redhat.com>
4456         * sunrpc/rpc/clnt.h: Remove a few __THROW.
4457         * sunrpc/Makefile (CFLAGS-auth_unix.c): Add -fexceptions.
4458         (CFLAGS-key_call.c): Likewise.
4459         (CFLAGS-pmap_rmt.c): Likewise.
4460         (CFLAGS-clnt_perr.c): Likewise.
4461         * sunrpc/rpc/auth.h: Remove serveral __THROW.
4463         * inet/Makefile (CFLAGS-gethstbyad_r.c): Add -fexceptions.
4464         (CFLAGS-gethstbynm_r.c): Likewise.
4465         (CFLAGS-gethstbynm2_r.c): Likewise.
4466         (CFLAGS-rcmd.c): Likewise.
4467         * resolv/Makefile (CFLAGS-res_hconf.c): Add -fexceptions.
4469         * argp/Makefile (CFLAGS-argp-help.c): Add -fexceptions.
4470         (CFLAGS-argp-fmtstream.c): Likewise.
4471         * argp/argp.h: Remove a number of __THROW.
4473         * misc/sys/syslog.h (vsyslog): Remove __THROW.
4475         * misc/Makefile (CFLAGS-getpass.c): Add -fexceptions.
4476         * misc/getpass.c (getpass): Add cleanup handler to ensure the
4477         stream is closed even if the thread is canceled.
4478         (call_fclose): New function.
4479         * posix/unistd.h: Remove __THROW from getpass prototype.
4481         * posix/Makefile (CFLAGS-getopt.c): Add -fexceptions.
4483         * signal/signal.h (psignal): Remove __THROW.
4484         * stdio-common/Makefile (CFLAGS-psignal.c): Add -fexceptions.
4486         * misc/Makefile (CFLAGS-error.c): Define.
4487         * misc/error.c (error): Disable cancellation handling around the
4488         actual output.  The message should in any case be printed.
4489         (error_at_line): Likewise.
4491         * misc/error.h: Protect parameter names with leading __.
4493 2003-08-28  Carlos O'Donell  <carlos@baldric.uwo.ca>
4495         * sysdeps/unix/sysv/linux/hppa/syscalls.list: Add semtimedop.
4497 2003-08-29  Jakub Jelinek  <jakub@redhat.com>
4499         * libio/iofgetpos64.c (_IO_new_fgetpos64): Move lock release to the
4500         end.
4502 2003-08-29  Ulrich Drepper  <drepper@redhat.com>
4504         * libio/stdio.h: Remove a few more __THROW.
4506 2003-08-29  Jakub Jelinek  <jakub@redhat.com>
4508         * libio/Makefile: Compile fputc.c, fputwc.c, freopen64.c, freopen.c,
4509         fseek.c, fseeko64.c, fseeko.c, ftello64.c, ftello.c, fwide.c, getc.c,
4510         getchar.c, getwc.c, getwchar.c, iofclose.c, iofflush.c, iofgetpos64.c,
4511         iofgetpos.c, iofgets.c, iofgetws.c, iofputs.c, iofputws.c, iofread.c,
4512         iofsetpos64.c, iofsetpos.c, ioftell.c, iofwrite.c, iogetdelim.c,
4513         iogetline.c, iogets.c, iogetwline.c, ioputs.c, ioseekoff.c,
4514         ioseekpos.c, iosetbuffer.c, iosetvbuf.c, ioungetc.c, ioungetwc.c,
4515         oldfileops.c, oldiofclose.c, oldiofgetpos64.c, oldiofgetpos.c,
4516         oldiofsetpos64.c, oldiofsetpos.c, peekc.c, putc.c, putchar.c, putwc.c,
4517         putwchar.c and rewind.c with exceptions.
4518         * sysdeps/generic/bits/stdio-lock.h (_IO_acquire_lock,
4519         _IO_release_lock): Define.
4520         * libio/fileops.c (_IO_new_file_underflow): Use it.
4521         * libio/fputc.c (fputc): Likewise.
4522         * libio/fputwc.c (fputwc): Likewise.
4523         * libio/freopen64.c (freopen64):
4524         * libio/freopen.c (freopen): Likewise.
4525         * libio/fseek.c (fseek): Likewise.
4526         * libio/fseeko64.c (fseeko64): Likewise.
4527         * libio/fseeko.c (fseeko): Likewise.
4528         * libio/ftello64.c (ftello64): Likewise.
4529         * libio/ftello.c (ftello): Likewise.
4530         * libio/fwide.c (fwide): Likewise.
4531         * libio/getc.c (_IO_getc): Likewise.
4532         * libio/getchar.c (getchar): Likewise.
4533         * libio/getwc.c (_IO_getwc): Likewise.
4534         * libio/getwchar.c (getwchar): Likewise.
4535         * libio/iofclose.c (_IO_new_fclose):
4536         * libio/iofflush.c (_IO_fflush): Likewise.
4537         * libio/iofgetpos64.c (_IO_new_fgetpos64): Likewise.
4538         * libio/iofgetpos.c (_IO_new_fgetpos): Likewise.
4539         * libio/iofgets.c (_IO_fgets): Likewise.
4540         * libio/iofgetws.c (fgetws): Likewise.
4541         * libio/iofputs.c (_IO_fputs): Likewise.
4542         * libio/iofputws.c (fputws): Likewise.
4543         * libio/iofread.c (_IO_fread): Likewise.
4544         * libio/iofsetpos64.c (_IO_new_fsetpos64): Likewise.
4545         * libio/iofsetpos.c (_IO_new_fsetpos): Likewise.
4546         * libio/ioftell.c (_IO_ftell): Likewise.
4547         * libio/iofwrite.c (_IO_fwrite): Likewise.
4548         * libio/iogetdelim.c (_IO_getdelim): Likewise.
4549         * libio/iogets.c (_IO_gets): Likewise.
4550         * libio/ioputs.c (_IO_puts): Likewise.
4551         * libio/ioseekoff.c (_IO_seekoff): Likewise.
4552         * libio/ioseekpos.c (_IO_seekpos): Likewise.
4553         * libio/iosetbuffer.c (_IO_setbuffer): Likewise.
4554         * libio/iosetvbuf.c (_IO_setvbuf): Likewise.
4555         * libio/ioungetc.c (_IO_ungetc): Likewise.
4556         * libio/ioungetwc.c (ungetwc): Likewise.
4557         * libio/oldiofclose.c (_IO_old_fclose): Likewise.
4558         * libio/oldiofgetpos64.c (_IO_old_fgetpos64): Likewise.
4559         * libio/oldiofgetpos.c (_IO_old_fgetpos): Likewise.
4560         * libio/oldiofsetpos64.c (_IO_old_fsetpos64): Likewise.
4561         * libio/oldiofsetpos.c (_IO_old_fsetpos): Likewise.
4562         * libio/peekc.c (_IO_peekc_locked): Likewise.
4563         * libio/putc.c (_IO_putc): Likewise.
4564         * libio/putchar.c (putchar): Likewise.
4565         * libio/putwc.c (putwc): Likewise.
4566         * libio/putwchar.c (putwchar): Likewise.
4567         * libio/rewind.c (rewind): Likewise.
4568         * libio/wfileops.c (_IO_wfile_underflow): Likewise.
4570 2003-08-29  Ulrich Drepper  <drepper@redhat.com>
4572         * signal/signal.h: sighold, sigrelse, sigignore, sigset were
4573         available in XPG4.2.
4575 2003-08-27  Phil Knirsch  <pknirsch@redhat.com>
4576             Jakub Jelinek  <jakub@redhat.com>
4578         * sunrpc/svc.c (svc_getreqset): Fix fds_bits reading on 64-bit
4579         big endian arches.  Don't read beyond end of fds_bits array.
4581 2003-04-27  Bruno Haible  <bruno@clisp.org>
4583         * manual/message.texi (Advanced gettext functions): Add information
4584         about Korean, Portuguese, Latvian. Gaeilge is also known as Irish.
4585         Add section about Lithuanian, reported by Ricardas Cepas
4586         <rch@richard.eu.org>.
4587         Add information about Croatian.
4588         Ukrainian is like Russian, reported by Andy Rysin <arysin@yahoo.com>.
4589         Remove remark about continuation lines that is not true for PO files.
4590         Fix formula for Slovenian, reported by Roman Maurer
4591         <roman.maurer@amis.net>.
4593 2003-08-27  Ulrich Drepper  <drepper@redhat.com>
4595         * math/math_private.h: Declare __copysignf.
4596         * sysdeps/ieee754/flt-32/s_scalbnf.c: Use __copysignf instead of
4597         copysignf.
4599         * sysdeps/x86_64/fpu/bits/mathinline.h: Define __signbitf,
4600         __signbit, and __signbitl inline functions.
4602         * sysdeps/unix/sysv/linux/x86_64/__start_context.S: Use
4603         HIDDEN_JUMPTARGET instead of JUMPTARGET to call exit().
4605         * sysdeps/x86_64/bsd-_setjmp.S [PIC]: Jump to __GI___sigsetjmp.
4606         * sysdeps/x86_64/setjmp.S: Add libc_hidden_def for __sigsetjmp.
4608 2003-08-27  Jakub Jelinek  <jakub@redhat.com>
4610         * inet/inet_mkadr.c (inet_makeaddr): Optimize.
4612 2003-08-27  Ulrich Drepper  <drepper@redhat.com>
4614         * include/stdio.h: Add declarations for __builtin_fwrite and
4615         __builtin_fwrite_unlocked.
4617 2003-08-27  Jakub Jelinek  <jakub@redhat.com>
4619         * sysdeps/unix/opendir.c (__opendir): Make sure even struct dirent64
4620         fits into allocation.  Add padding on 32-bit arches so that
4621         dirp->data is enough aligned for struct dirent64.
4622         Avoid clearing of the buffer, just clear DIR structure.
4624 2003-08-26  Ulrich Drepper  <drepper@redhat.com>
4626         * nss/nsswitch.c: Add libc_hidden_def for __nss_lookup_function.
4627         * nss/nsswitch.h: Add libc_hidden_proto for __nss_lookup_function.
4629 2003-08-26  Steven Munroe  <sjmunroe@us.ibm.com>
4631         * sysdeps/powerpc/powerpc64/elf/Makefile: New file.
4633 2003-08-26  Jakub Jelinek  <jakub@redhat.com>
4635         * login/programs/utmpdump.c (print_entry): Cast tv_usec to long
4636         to match format string.
4637         * sysdeps/unix/sysv/linux/sparc/sparc32/semctl.c (union semun): Add
4638         __old_buf.
4639         (__new_semctl): Shut up warning.
4640         * sysdeps/unix/sysv/linux/sparc/sparc32/dl-procinfo.h
4641         (_dl_string_hwcap): Add __attribute__ ((always_inline)).
4643 2003-08-26  Jakub Jelinek  <jakub@redhat.com>
4645         * elf/ldconfig.c (search_dir): When checking for GNU-style .so
4646         link file use the real file name, not the resolved name we got by
4647         following the symlinks.
4649 2003-08-25  Ulrich Drepper  <drepper@redhat.com>
4651         * libio/oldfileops.c (_IO_old_file_init): Initialize _mode field
4652         if the object size is large enough.
4654 2003-08-25  Jakub Jelinek  <jakub@redhat.com>
4656         * elf/ldconfig.c (search_dir): Treat symlink as regular file
4657         if it won't point to itself unless it is .so symlink for the linker.
4659 2003-08-25  Ulrich Drepper  <drepper@redhat.com>
4661         * libio/libio.h (_IO_fwide): In the mode==0 optimization, don't
4662         use _mode if _IO_fwide_maybe_incompatible.
4663         * libio/iofwide.c (_IO_fwide): Move the test for mode == 0 after
4664         the compatibility test.
4666 2003-08-25  Jakub Jelinek  <jakub@redhat.com>
4668         * elf/cache.c (save_cache): Don't write beyond end of file_entries
4669         buffer.
4670         Duplicate last old cache entry if the count would be odd.
4672 2003-08-25  Andreas Jaeger  <aj@suse.de>
4674         * sysdeps/unix/sysv/linux/posix_fadvise64.c: Cast arguments of
4675         __LONG_LONG_PAIR to long.
4677 2003-08-25  Philip Blundell  <philb@gnu.org>
4679         * sysdeps/unix/sysv/linux/arm/sysdep.h (PSEUDO_ERRVAL): Define.
4680         (PSEUDO_END_ERRVAL, ret_ERRVAL): Likewise.
4682 2003-08-18  Alfred M. Szmidt  <ams@kemisten.nu>
4684         * sysdeps/generic/bits/libc-lock.h (__libc_cleanup_pop): Redefine
4685         and use __libc_cleanup_region_end instead.
4687 2003-08-25  Ulrich Drepper  <drepper@redhat.com>
4689         * elf/ldconfig.c (search_dir): Revert patch of 2003-7-21.
4691 2003-08-22  Ulrich Drepper  <drepper@redhat.com>
4693         * io/fcntl.h (posix_fallocate): Change type of third parameter to
4694         off_t.
4695         (posix_fallocate64): Change type of third parameter to off64_t.
4696         * sysdeps/generic/posix_fallocate.c: Adjust for type change.
4697         * sysdeps/posix/posix_fallocate.c: Likewise.
4698         * sysdeps/generic/posix_fallocate64.c: Likewise.
4699         * sysdeps/posix/posix_fallocate64.c: Likewise.  Add compatibility
4700         code for 32-bit platforms.
4701         * sysdeps/unix/sysv/linux/i386/Versions: Add new version for
4702         posix_fallocate64.
4703         * sysdeps/unix/sysv/linux/powerpc/powerpc32/Versions: Likewise.
4704         * sysdeps/unix/sysv/linux/s390/s390-32/Versions: Likewise.
4705         * sysdeps/unix/sysv/linux/sparc/sparc32/Versions: Likewise.
4707 2003-08-19  Ulrich Drepper  <drepper@redhat.com>
4709         * string/bits/string2.h (__STRING2_COPY_TYPE): Add attribute to
4710         the type, not to name.
4712         * stdio-common/test-vfprintf.c (main): Don't write temporary file
4713         into source directory.
4715         * malloc/malloc.c (_int_free): Add cheap test for some invalid
4716         block sizes.
4718         * sysdeps/unix/sysv/linux/i386/posix_fadvise64.S: Fix typo in
4719         syscall name.
4721 2003-08-18  Ulrich Drepper  <drepper@redhat.com>
4723         * sysdeps/unix/sysv/linux/shm_open.c (shm_open): Fold EISDIR error
4724         into EINVAL.
4726 2003-08-18  H.J. Lu  <hongjiu.lu@intel.com>
4728         * sysdeps/ia64/dl-machine.h (elf_machine_rela): Use _dl_reloc_bad_type.
4729         (elf_machine_lazy_rel): Likewise.
4731 2003-08-18  Art Haas  <ahaas@airmail.net>
4733         * malloc/malloc.h: Remove unneeded ';' where closing the C++
4734         extern block.
4736 2003-08-18  Ulrich Drepper  <drepper@redhat.com>
4738         * sysdeps/ia64/dl-fptr.h (ELF_MACHINE_LOAD_ADDRESS): Support
4739         loading big binaries where @gprel(sym) cannot be handled in 'add'
4740         but instead has to be used with 'movl'.
4742 2003-08-17  Juergen Kreileder <jk@blackdown.de>
4743             Andreas Jaeger  <aj@suse.de>
4745         * sysdeps/x86_64/bits/byteswap.h: New file.
4747 2003-08-17  Andreas Jaeger  <aj@suse.de>
4749         * sysdeps/unix/sysv/linux/i386/posix_fadvise64.S: Fix typo.
4751 2003-08-16  Jakub Jelinek  <jakub@redhat.com>
4753         * sysdeps/powerpc/powerpc32/sysdep.h (PSEUDO_ERRVAL,
4754         PSEUDO_RET_ERRVAL, ret_ERRVAL, PSEUDO_END_ERRVAL): Define.
4755         * sysdeps/powerpc/powerpc64/sysdep.h (PSEUDO_ERRVAL,
4756         PSEUDO_RET_ERRVAL, ret_ERRVAL, PSEUDO_END_ERRVAL): Define.
4757         * sysdeps/unix/alpha/sysdep.h (PSEUDO_ERRVAL,
4758         ret_ERRVAL, PSEUDO_END_ERRVAL): Define.
4759         * sysdeps/unix/mips/sysdep.h (PSEUDO_ERRVAL,
4760         ret_ERRVAL, PSEUDO_END_ERRVAL): Define.
4761         * sysdeps/unix/sparc/sysdep.h (PSEUDO_ERRVAL,
4762         ret_ERRVAL): Define.
4763         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (PSEUDO_ERRVAL,
4764         PSEUDO_END_ERRVAL, ret_ERRVAL): Define.
4765         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (PSEUDO_ERRVAL,
4766         PSEUDO_END_ERRVAL, ret_ERRVAL): Define.
4767         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h (PSEUDO_ERRVAL):
4768         Define.
4769         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h (PSEUDO_ERRVAL,
4770         PSEUDO_END_ERRVAL, ret_ERRVAL): Define.
4771         * sysdeps/unix/sysdep.h (PSEUDO_END_ERRVAL): Define.
4773         * sysdeps/unix/sysv/linux/syscalls.list (posix_fadvise64,
4774         posix_fadvise64_64): Remove.
4775         * sysdeps/unix/sysv/linux/alpha/syscalls.list (posix_fadvise64): Add
4776         V flag.
4777         * sysdeps/unix/sysv/linux/ia64/syscalls.list (posix_fadvise64):
4778         Likewise.
4779         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list
4780         (posix_fadvise64): Likewise.
4781         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list
4782         (posix_fadvise64): Likewise.
4783         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list
4784         (posix_fadvise64): Likewise.
4785         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (posix_fadvise64):
4786         Likewise.
4787         * sysdeps/unix/sysv/linux/i386/posix_fadvise64_64.S: Moved to...
4788         * sysdeps/unix/sysv/linux/i386/posix_fadvise64.S: ...here.
4789         (__posix_fadvise64_l64): Fix a typo in fadvise64 syscall invocation.
4790         (__posix_fadvise64_l32): New function.
4791         * sysdeps/unix/sysv/linux/i386/Makefile: Revert last change.
4792         * sysdeps/unix/sysv/linux/powerpc/powerpc32/Versions (libc): Export
4793         posix_fadvise64@@GLIBC_2.3.3.
4794         * sysdeps/unix/sysv/linux/s390/s390-32/Versions (libc): Likewise.
4795         * sysdeps/unix/sysv/linux/sparc/sparc32/Versions (libc): Likewise.
4796         * sysdeps/unix/sysv/linux/posix_fadvise.c (posix_fadvise): Return
4797         error value.
4798         * sysdeps/unix/sysv/linux/posix_fadvise64.c: New file.
4800         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h
4801         (SYSCALL_ERROR_HANDLER): Use TLS errno/__libc_errno if USE___THREAD.
4803 2003-08-15  Jakub Jelinek  <jakub@redhat.com>
4805         * sysdeps/sparc/sparc32/dl-machine.h (WEAKADDR): Remove.
4806         (elf_machine_matches_host): Remove weak extern stuff.
4807         Use GL(dl_hwcap) unconditionally and GL(dl_hwcap_mask) if SHARED.
4808         (elf_machine_runtime_setup, sparc_fixup_plt): Remove weak extern
4809         stuff.  Use GL(dl_hwcap) unconditionally.
4811 2003-08-16  Alan Modra  <amodra@bigpond.net.au>
4813         * sysdeps/powerpc/powerpc64/elf/start.S: Add a nop after
4814         __libc_start_main branch.
4816 2003-08-16  Jakub Jelinek <jakub@redhat.com>,
4817             Andreas Jaeger  <aj@suse.de>
4819         * sysdeps/generic/posix_fadvise.c (posix_fadvise): Return ENOSYS
4820         instead of setting errno.
4821         * sysdeps/generic/posix_fadvise64.c (posix_fadvise64): Likewise.
4823 2003-08-16  Andreas Jaeger  <aj@suse.de>
4825         * sysdeps/generic/posix_fadvise.c (posix_fadvise): Adjust prototype.
4826         * sysdeps/generic/posix_fadvise64.c (posix_fadvise64): Likewise.
4828 2003-08-15  Ulrich Drepper  <drepper@redhat.com>
4830         * io/fcntl.h (posix_fadvise64): Change type of third parameter to
4831         off_t.
4832         * sysdeps/unix/sysv/linux/posix_fadvise.c: Adjust definition.
4833         * sysdeps/unix/make-syscalls.sh: Recognize V prefix to the parameter
4834         description indicating the error value is returned, not -1.
4835         * sysdeps/unix/sysv/linux/kernel-features.h: Add definition of
4836         __ASSUME_FADVISE64_64_SYSCALL.
4837         * sysdeps/unix/sysv/linux/syscalls.list: Don't define madvise and
4838         posix_madvise in one file.  Have posix_madvise defined with error
4839         value returned.
4840         Define posix_fadvise64_64 entry.  Add version info to posix_fadvise64
4841         entry.
4842         * sysdeps/unix/sysv/linux/i386/posix_fadvise.S: New file.
4843         * sysdeps/unix/sysv/linux/i386/sysdep.h: Define PSEUDO_ERRVAL,
4844         PSEUDO_END_ERRVAL, and ret_ERRVAL.
4845         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Likewise.
4846         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
4847         * sysdeps/unix/sysv/linux/i386/Versions [GLIBC_2.3.3]: Add
4848         posix_fadvise64.
4850         * posix/Makefile (routines): Add posix_madvise.
4851         * sysdeps/generic/madvise.c: Don't define posix_madvise.
4852         * sysdeps/generic/posix_madvise.c: New file.
4853         * sysdeps/unix/sysv/aix/posix_madvise.c: New file.
4854         * sysdeps/unix/sysv/linux/i386/Makefile [subdir=io] (subdir_routines):
4855         Add posix_fadvise64_64.
4857 2003-08-15  Jakub Jelinek  <jakub@redhat.com>
4859         * assert/assert.h (assert_perror): Use __builtin_expect for gcc >=
4860         3.0, not for !gcc or gcc < 3.0.
4862 2003-08-11  Carlos O'Donell  <carlos@baldric.uwo.ca>
4864         * dlfcn/default.c (main): Cast dlsym loaded value to same type as main.
4865         Address passed to test_in_mod1 and test_in_mod2 without casting.
4866         * dlfcn/defaultmod1.c: Change prototype of test_in_mod1.
4867         (test_in_mod1): Cast dlsym loaded value to same type as mainp.
4868         * dlfcn/defaultmod2.c: Change prototype of test_in_mod2.
4869         (test_in_mod2): Cast dlsym loaded value to same type as mainp.
4871 2003-08-15  Jakub Jelinek  <jakub@redhat.com>
4873         * sysdeps/sparc/sparc32/elf/configure.in (libc_cv_sparc32_tls):
4874         Change quotes before using [].
4876         * sysdeps/unix/sysv/linux/sparc/sys/user.h: New file.
4878         * sysdeps/sparc/sparc32/bits/atomic.h (__sparc32_atomic_lock):
4879         Renamed to...
4880         (__sparc32_atomic_locks): ...this.  Change into 64-byte array.
4881         (__sparc32_atomic_do_lock, __sparc32_atomic_do_unlock): Add addr
4882         argument.  Select one of 64 locks from address bits.
4883         (atomic_compare_and_exchange_val_acq,
4884         atomic_compare_and_exchange_bool_acq): Pass memory address to
4885         __sparc32_atomic_do_{,un}lock.
4887 2003-08-14  Ulrich Drepper  <drepper@redhat.com>
4889         * assert/assert.h (assert): Use !! in front of expression to allow
4890         use of pointers.
4892         * iconvdata/cp932.c: Fixed checking of a few border of code areas.
4893         Changed conversion of JIS X 0201 from using a table to calculating.
4894         * iconvdata/euc-jp-ms.c: Fixed conversion table and rewrote
4895         conversion routine.  Changed CHARSET_NAME definition from EUCJP-MS to
4896         EUC-JP-MS.
4897         * iconvdata/tst-tables.sh: Add CP932 and EUC-JP-MS.
4898         * iconvdata/CP932.irreversible: New file.
4899         * iconvdata/EUC-JP-MS.irreversible: New file.
4900         Patch by MORIYAMA Masayuki <msyk@mtg.biglobe.ne.jp>.
4902 2003-08-13  Ulrich Drepper  <drepper@redhat.com>
4904         * sysdeps/unix/sysv/linux/i386/syscalls.list: Add time syscall.
4906         * elf/Makefile: Use LC_ALL=C in a few cases where we call external
4907         text processing tools.
4909         * sysdeps/pthread/aio_misc.h (struct waitlist): Don't add caller_pid
4910         element unless BROKEN_THREAD_SIGNALS is defined.
4911         (struct requestlist): Likewise.
4912         * sysdeps/pthread/aio_misc.c (__aio_enqueue_request): Don't fill in
4913         caller_pid of new request unless BROKEN_THREAD_SIGNALS is defined.
4914         * sysdeps/pthread/aio_suspend.c (aio_suspend): Likewise.
4915         * sysdeps/pthread/aio_notify.c (__aio_notify_only): Remove caller_pid
4916         parameter unless BROKEN_THREAD_SIGNALS is defined.  Adjust callers.
4917         Pass current PID to __aio_sigqueue.
4918         * sysdeps/pthread/lio_listio.c (lio_listio): Adjust __aio_notify_only
4919         call.  Don't initialize caller_pid field of waitlist element.
4921 2003-08-12  Jakub Jelinek  <jakub@redhat.com>
4923         * libio/libioP.h (_IO_vtable_offset): Define.
4924         * libio/freopen.c (freopen): Use it.
4925         * libio/ioputs.c (_IO_puts): Likewise.
4926         * libio/freopen64.c (freopen64): Likewise.
4927         * libio/genops.c (__underflow, __uflow, _IO_flush_all_lockp):
4928         Likewise.
4929         * libio/iofclose.c (_IO_new_fclose): Likewise.
4930         * libio/iofputs.c (_IO_fputs): Likewise.
4931         * libio/ioftell.c (_IO_ftell): Likewise.
4932         * libio/iofwrite.c (_IO_fwrite): Likewise.
4933         * libio/ioseekoff.c (_IO_seekoff_unlocked): Likewise.
4934         * libio/iosetbuffer.c (_IO_setbuffer): Likewise.
4935         * stdio-common/vfprintf.c (ORIENT, vfprintf): Likewise.
4936         * stdio-common/vfscanf.c (ORIENT): Likewise.
4938 2003-08-11  Ulrich Drepper  <drepper@redhat.com>
4940         * assert/assert.h: Use __builtin_expect in assert and
4941         assert_perror definitions if possible.
4943 2003-08-07  Jakub Jelinek  <jakub@redhat.com>
4945         * sysdeps/generic/ldsodefs.h (_rtld_global): Add
4946         _dl_rtld_lock_recursive and _dl_rtld_unlock_recursive.
4947         * elf/rtld.c (rtld_lock_default_lock_recursive,
4948         rtld_lock_default_unlock_recursive): New functions.
4949         (dl_main): Initialize _dl_rtld_lock_recursive and
4950         _dl_rtld_unlock_recursive.
4952 2003-08-05  Jakub Jelinek  <jakub@redhat.com>
4954         * elf/ldconfig.c (main): Append SLIBDIR and LIBDIR to
4955         config_file directories instead of prepending.
4957 2003-08-02  Ulrich Drepper  <drepper@redhat.com>
4959         * sysdeps/unix/sysv/linux/kernel-features.h: Define
4960         __ASSUME_CLONE_STOPPED.
4962 2003-08-01  Ulrich Drepper  <drepper@redhat.com>
4964         * sysdeps/generic/bits/libc-lock.h
4965         (__libc_cleanup_push,__libc_cleanup_pop): Define even here.
4967 2003-08-01  Roland McGrath  <roland@frob.com>
4969         * sysdeps/mach/hurd/getdents.c: Just use sysdeps/generic/getdents.c.
4971 2003-07-31  Jakub Jelinek  <jakub@redhat.com>
4973         * sysdeps/generic/bits/types.h (__ssize_t): Use __SSIZE_T_TYPE
4974         instead of __SWORD_TYPE.
4975         * sysdeps/generic/bits/typesizes.h (__SSIZE_T_TYPE): Define.
4976         * sysdeps/mach/hurd/bits/typesizes.h (__SSIZE_T_TYPE): Define.
4977         * sysdeps/unix/bsd/bsd4.4/freebsd/bits/typesizes.h (__SSIZE_T_TYPE):
4978         Define.
4979         * sysdeps/unix/sysv/linux/alpha/bits/typesizes.h (__SSIZE_T_TYPE):
4980         Define.
4981         * sysdeps/unix/sysv/linux/sparc/bits/typesizes.h (__SSIZE_T_TYPE):
4982         Define.
4983         * sysdeps/unix/sysv/linux/s390/bits/typesizes.h: New file.
4985         * dlfcn/dlerror.c (once): New.
4986         (dlerror): Call __libc_once.
4987         (_dlerror_run): Remove once.
4989         * sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h (struct sigcontext):
4990         Sync with 2.5.7 and 2.5.73 kernel changes.
4992         * dlfcn/eval.c (funcall): Add noinline attribute to shut up warnings.
4993         * elf/rtld.c (dl_main): Cast ElfW(Addr) arguments with %Zx/%Zd
4994         formats to size_t.
4995         * elf/dl-lookup.c (_dl_debug_bindings): Likewise.
4996         * elf/tst-tls6.c (do_test): Use %zd format for l_tls_modid.
4997         * elf/tst-tls8.c (do_test): Use %zd format for modid1 and modid2.
4998         * gmon/tst-sprofil.c (main): Add parens to shut up warning.
4999         * iconv/tst-iconv3.c (main): Use %td instead of %zd for pointer
5000         difference argument.
5001         * stdio-common/tst-wc-printf.c (main): Cast arguments with %C
5002         format to wint_t.
5003         * stdlib/tst-limits.c (main): For WORD_BIT and LONG_BIT, use
5004         %d format and cast expected value to int.
5005         * sysdeps/generic/libc-start.c (STATIC): Add
5006         __attribute__((always_inline) if LIBC_START_MAIN is already defined.
5007         * sysdeps/powerpc/fpu/w_sqrt.c (a_nan, a_inf): Change from uint32_t
5008         to ieee_float_shape_type.
5009         (__sqrt): Avoid type punning.
5010         * sysdeps/powerpc/fpu/w_sqrtf.c (a_nan, a_inf): Change from uint32_t
5011         to ieee_float_shape_type.
5012         (__sqrtf): Avoid type punning.
5013         * sysdeps/s390/s390-32/dl-machine.h (elf_machine_rela): Don't define
5014         refsym if in dl-conflict.c.
5015         * sysdeps/s390/s390-64/dl-machine.h (elf_machine_rela): Likewise.
5016         * sysdeps/unix/sysv/linux/i386/semctl.c (union semun): Add __old_buf.
5017         (__new_semctl): Shut up warning.
5018         * sysdeps/unix/sysv/linux/semctl.c (union semun): Add __old_buf.
5019         (__new_semctl): Shut up warning.
5020         * sysdeps/unix/sysv/linux/shmctl.c (__new_shmctl): Wrap long lines.
5021         Change old into union of __old_shmid_ds and __old_shminfo structs.
5022         Adjust all users.
5023         * wcsmbs/wcsmbs-tst1.c (main): Cast arguments with %C format to wint_t.
5025         * sysdeps/unix/sysv/linux/utimes.c (__utimes): Fix actime and
5026         modtime computation.
5027         * sysdeps/unix/sysv/linux/futimes.c (__futimes): Likewise.
5028         * sysdeps/posix/utimes.c (__utimes): Likewise.
5030 2003-07-30  Jakub Jelinek  <jakub@redhat.com>
5032         * elf/dl-reloc.c (_dl_allocate_static_tls): Don't return any value,
5033         call dl_signal_error directly.  If already relocated, call
5034         GL(dl_init_static_tls) directly, otherwise queue it for later.
5035         (CHECK_STATIC_TLS): Undo 2003-07-24 change.
5036         * elf/rtld.c (dl_main): Initialize GL(dl_init_static_tls).
5037         * elf/dl-open.c (dl_open_worker): Call GL_dl_init_static_tls
5038         for all static TLS initializations delayed in _dl_allocate_static_tls.
5039         * elf/dl-support.c (_dl_init_static_tls): New variable.
5040         * include/link.h (struct link_map): Add l_need_tls_init.
5041         * sysdeps/generic/ldsodefs.h (_rtld_global): Add _dl_init_static_tls.
5042         (_dl_nothread_init_static_tls): New prototype.
5043         (_dl_allocate_static_tls): Adjust prototype.
5045         * elf/tls-macros.h (VAR_INT_DEF): Add alignment directive.
5047 2003-07-31  Alexandre Oliva  <aoliva@redhat.com>
5049         * elf/dynamic-link.h (elf_machine_rel, elf_machine_rela,
5050         elf_machine_rel_relative, elf_machine_rela_relative): Don't assume
5051         reloc_addr is aligned.
5052         * sysdeps/alpha/dl-machine.h (elf_machine_rela,
5053         elf_machine_rela_relative): Adjust.
5054         * sysdeps/arm/dl-machine.h (elf_machine_rel, elf_machine_rela,
5055         elf_machine_rel_relative, elf_machine_rela_relative): Adjust.
5056         * sysdeps/cris/dl-machine.h (elf_machine_rela,
5057         elf_machine_rela_relative): Adjust.
5058         * sysdeps/hppa/dl-machine.h (elf_machine_rela,
5059         elf_machine_rela_relative): Adjust.
5060         * sysdeps/i386/dl-machine.h (elf_machine_rel, elf_machine_rela,
5061         elf_machine_rel_relative, elf_machine_rela_relative): Adjust.
5062         * sysdeps/ia64/dl-machine.h (elf_machine_rela,
5063         elf_machine_rela_relative): Adjust.
5064         * sysdeps/m68k/dl-machine.h (elf_machine_rela,
5065         elf_machine_rela_relative): Adjust.
5066         * sysdeps/mips/dl-machine.h (elf_machine_rela,
5067         elf_machine_rela_relative): Adjust.
5068         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela,
5069         elf_machine_rela_relative): Adjust.
5070         * sysdeps/powerpc/powerpc64/dl-machine.h
5071         (elf_machine_rela_relative, elf_machine_rela): Adjust.
5072         * sysdeps/s390/s390-32/dl-machine.h (elf_machine_rela,
5073         elf_machine_rela_relative): Adjust.
5074         * sysdeps/s390/s390-64/dl-machine.h (elf_machine_rela,
5075         elf_machine_rela_relative): Adjust.
5076         * sysdeps/sh/dl-machine.h (elf_machine_rela,
5077         elf_machine_rela_relative): Adjust.
5078         * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela,
5079         elf_machine_rela_relative): Adjust.
5080         * sysdeps/sparc/sparc64/dl-machine.h (elf_machine_rela,
5081         elf_machine_rela_relative): Adjust.
5082         * sysdeps/x86_64/dl-machine.h (elf_machine_rela,
5083         elf_machine_rela_relative): Adjust.
5085 2003-07-29  Ulrich Drepper  <drepper@redhat.com>
5087         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Restore
5088         alignment of TCB used before the last change so that it matches
5089         ld's output for IE code.
5091 2003-07-29  Jakub Jelinek  <jakub@redhat.com>
5093         * include/ctype.h (__ctype_b_loc, __ctype_toupper_loc,
5094         __ctype_tolower_loc): Avoid "dereferencing type-punned pointer will
5095         break strict-aliasing rules" warnings.
5097 2003-07-29  Roland McGrath  <roland@redhat.com>
5099         * elf/Makefile: Revert accidental changes in last commit.
5100         * elf/dl-support.c: Likewise.
5102         * rt/tst-timer2.c: New file.
5103         * rt/Makefile (tests): Add it.
5105 2003-07-25  Jakub Jelinek  <jakub@redhat.com>
5107         * elf/dl-support.c (_dl_hwcap): Add nocommon attribute.
5109 2003-07-29  Roland McGrath  <roland@redhat.com>
5111         * elf/Makefile (tests) [$(build-shared) = yes]:
5112         Depend on $(test-modules).
5113         * dlfcn/Makefile: Likewise.
5115 2003-07-28  Roland McGrath  <roland@redhat.com>
5117         * sysdeps/generic/bits/types.h (__STD_TYPE): New macro.
5118         Use that instead of `typedef' when using __*_TYPE macros in rhs.
5120         * elf/tst-tls14.c [USE_TLS && HAVE___THREAD]: Conditionalize on this.
5121         * elf/tst-tlsmod14a.c: Likewise.
5123         * sysdeps/unix/sysv/linux/sys/sysctl.h: Include <linux/compiler.h>
5124         before <linux/sysctl.h>.
5126 2003-07-27  Ulrich Drepper  <drepper@redhat.com>
5128         * sysdeps/unix/sysv/syscalls.list: time syscall never fails.
5129         * sysdeps/unix/sysv/linux/x86_64/time.S: time syscall never fails.
5130         * sysdeps/unix/sysv/i386/time.S: time syscall never fails.
5131         * sysdeps/unix/syscalls.list: umask syscall never fails.
5133 2003-07-27  Andreas Jaeger  <aj@suse.de>
5135         * sysdeps/unix/sysv/linux/init-first.c: Mark init as used.
5137 2003-07-25  Jakub Jelinek  <jakub@redhat.com>
5139         * sysdeps/unix/sysv/linux/a.out.h: Replace with i386 version.
5140         Include bits/a.out.h.
5141         * sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Add
5142         bits/a.out.h.
5143         * sysdeps/unix/sysv/linux/bits/a.out.h: New file.
5144         * sysdeps/unix/sysv/linux/i386/bits/a.out.h: New file.
5145         * sysdeps/unix/sysv/linux/m68k/bits/a.out.h: New file.
5146         * sysdeps/unix/sysv/linux/x86_64/bits/a.out.h: New file.
5147         * sysdeps/unix/sysv/linux/alpha/a.out.h: New file.
5148         * sysdeps/unix/sysv/linux/alpha/bits/a.out.h: New file.
5149         * sysdeps/unix/sysv/linux/sparc/a.out.h: New file.
5150         * sysdeps/unix/sysv/linux/sparc/bits/a.out.h: New file.
5152 2003-07-24  Jakub Jelinek  <jakub@redhat.com>
5154         * sysdeps/pthread/aio_cancel.c (aio_cancel): Return AIO_ALLDONE
5155         if aiocbp != NULL and has already completed.  Return -1/EINVAL if
5156         aiocbp->aio_fildes does not match fildes.
5158 2003-07-24  Ulrich Drepper  <drepper@redhat.com>
5160         * timezone/zic.c (rpytime): Replace cheap overflow check with a
5161         functioning one.
5163         * include/link.h (struct link_map): Add l_tls_firstbyte_offset field.
5164         * sysdeps/generic/dl-tls.c [TLS_TCB_AT_TP] (_dl_determine_tlsoffset):
5165         Fix calculation of offsets to take misalignment of first byte in
5166         file into account.
5167         * elf/dl-load.c (_dl_map_object_from_fd): Initialize
5168         l_tls_firstbyte_offset field.
5169         * elf/rtld.c (_dl_start_final, _dl_start, dl_main): Likewise.
5170         * elf/dl-reloc.c (_dl_allocate_static_tls): Change return type to int.
5171         Take l_tls_firstbyte_offset information into account.
5172         (CHECK_STATIC_TLS): _dl_allocate_static_tls can fail now.
5173         * sysdeps/generic/ldsodefs.h: Adjust _dl_allocate_static_tls prototype.
5174         * elf/Makefile: Add rules to build and run tst-tls14.
5175         * elf/tst-tls14.c: New file.
5176         * elf/tst-tlsmod14a.c: New file.
5177         * elf/tst-tlsmod14b.c: New file.
5179 2003-07-23  Jakub Jelinek  <jakub@redhat.com>
5181         * sysdeps/pthread/lio_listio.c (LIO_OPCODE_BASE): Define.
5182         (lio_listio): Use it.
5183         * sysdeps/pthread/lio_listio64.c: Include lio_listio.c instead of
5184         after few defines to avoid duplication.
5186 2003-07-22  Jakub Jelinek  <jakub@redhat.com>
5188         * include/stdio.h (__libc_fatal): Add libc_hidden_proto.
5189         * include/dlfcn.h (__libc_dlopen_mode, __libc_dlsym, __libc_dlclose):
5190         Likewise.
5191         * elf/dl-libc.c (__libc_dlopen_mode, __libc_dlsym, __libc_dlclose):
5192         Add libc_hidden_def.
5193         * sysdeps/generic/libc_fatal.c (__libc_fatal): Likewise.
5194         * sysdeps/posix/libc_fatal.c (__libc_fatal): Likewise.
5195         * sysdeps/unix/sysv/linux/libc_fatal.c (__libc_fatal): Likewise.
5196         * elf/Versions (libc): Export __libc_dlopen_mode@@GLIBC_PRIVATE,
5197         __libc_dlsym@@GLIBC_PRIVATE and __libc_dlclose@@GLIBC_PRIVATE.
5198         * libio/Versions (libc): Export __libc_fatal@@GLIBC_PRIVATE.
5199         * sysdeps/generic/unwind-dw2.c: Readd #ifs removed during last
5200         change.
5201         * sysdeps/generic/unwind.inc: Removed.
5203         * include/resolv.h (__resp): Declare.  Define to __libc_resp
5204         if in libc.so.
5205         (_res): If USE___THREAD, define to (*__resp).
5206         * resolv/res_libc.c (_res): Normal .bss variable with compat_symbol
5207         even if USE___THREAD.
5208         (__resp): New __thread variable.
5209         (__libc_resp): New alias.
5210         * resolv/Versions (libc): Export _res@GLIBC_2.0 even if
5211         USE_TLS && HAVE___THREAD.  Export __resp@@GLIBC_PRIVATE.
5212         * sysdeps/generic/res-state.c (__res_state): Return __resp
5213         if USE___THREAD.
5215 2003-07-22  H.J. Lu  <hongjiu.lu@intel.com>
5217         * elf/dl-support.c (_dl_hwcap): New variable.
5218         (_dl_aux_init): Initialize GL(dl_hwcap) for static binaries.
5220         * sysdeps/i386/fpu/fclrexcpt.c: Include <unistd.h>, <ldsodefs.h>
5221         and <dl-procinfo.h>.
5222         (__feclearexcept): Clear MXCSR if needed.
5223         * sysdeps/i386/fpu/fsetexcptflg.c: Likewise.
5225         * sysdeps/i386/fpu_control.h (_FPU_GETCW, _FPU_SETCW): Document
5226         that newer hardware needs more than these macros.
5228         * sysdeps/i386/setfpucw.c: New file.
5230 2003-07-22  Jakub Jelinek  <jakub@redhat.com>
5232         * elf/Makefile (CFLAGS-ldconfig.c): Define IS_IN_ldconfig.
5233         * elf/ldconfig.c: Include dl-procinfo.c.
5234         (PROCINFO_CLASS): Define.
5235         * sysdeps/generic/ldsodefs.h (PROCINFO_CLASS): Define.
5236         * sysdeps/unix/sysv/linux/x86_64/dl-procinfo.c: New file.
5237         * sysdeps/unix/sysv/linux/x86_64/dl-procinfo.h: New file.
5238         * sysdeps/unix/sysv/linux/i386/dl-procinfo.c (PROCINFO_CLASS):
5239         Define if not yet defined.  Use it instead of EXTERN.  Undefine
5240         at the end of the file.
5241         * sysdeps/unix/sysv/linux/arm/dl-procinfo.c (PROCINFO_CLASS):
5242         Likewise.
5243         * sysdeps/unix/sysv/linux/sparc/sparc32/dl-procinfo.c
5244         (PROCINFO_CLASS): Likewise.
5245         * sysdeps/unix/sysv/linux/sparc/sparc64/dl-procinfo.c
5246         (PROCINFO_CLASS): Likewise.
5248 2003-07-22  H.J. Lu  <hongjiu.lu@intel.com>
5250         * elf/ldconfig.c (main): Issue a fatal error if relative path
5251         is used to build cache.
5253 2003-07-22  Ulrich Drepper  <drepper@redhat.com>
5255         * elf/readlib.c (process_file): Avoid possible overflow in assignment.
5257 2003-07-21  Art Haas  <ahaas@airmail.net>
5259         * manual/charset.texi (Converting a Character): Fix example code so a
5260         valid pointer is returned.
5262 2003-07-22  Andreas Jaeger  <aj@suse.de>
5264         * elf/readlib.c (process_file): Check that file is a shared
5265         object.
5267         * elf/sofini.c (__FRAME_END__): Use attribute used so that gcc
5268         will not optimize it away.
5269         (__DTOR_END__): Likewise.
5270         (__CTOR_END__): Likewise.
5272         * include/libc-symbols.h (_elf_set_element): Use attribute used so
5273         that gcc will not optimize it away.
5274         (link_warning): Likewise.
5276 2003-07-22  Ulrich Drepper  <drepper@redhat.com>
5278         * wcsmbs/wcpncpy.c (__wcpncpy): Correct destination pointer handling.
5279         * wcsmbs/Makefile (tests): Add tst-wcpncpy.
5280         * wcsmbs/tst-wcpncpy.c: New file.
5282 2003-07-21  Ulrich Drepper  <drepper@redhat.com>
5284         * sysdeps/unix/sysv/linux/bits/sched.h (CLONE_STOPPED): Define.
5286         * sysdeps/i386/fpu/feenablxcpt.c (feenableexcept): Reverse use of
5287         stmxcsr and ldmxcsr.
5289         * Makerules (build-module-helper): Add -z defs unless explicitly said
5290         not to do it.
5291         * dlfcn/Makefile: Define various *-no-z-defs variables for test DSOs
5292         which has undefined symbols.
5293         * elf/Makefile: Likewise.
5295         * sysdeps/i386/fpu/fedisblxcpt.c: Use dl_hwcap, not dl_hwcap_mask.
5296         * sysdeps/i386/fpu/feenablxcpt.c: Likewise.
5297         * sysdeps/i386/fpu/feholdexcpt.c: Likewise.
5298         * sysdeps/i386/fpu/fesetround.c: Likewise.
5299         * sysdeps/i386/fpu/ftestexcept.c: Likewise.
5301 2003-07-21  HJ Lu  <hongjiu.lu@intel.com>
5303         * elf/ldconfig.c (search_dir): Treat symlink as regular file
5304         if it won't point to itself.
5306 2003-07-20  Ulrich Drepper  <drepper@redhat.com>
5308         * sysdeps/ia64/hp-timing.h (REPEAT_READ): Cast to long int not to int.
5310 2003-07-20  Andreas Jaeger  <aj@suse.de>
5312         * iconvdata/cp932.c (BODY): STANDARD_ERR_HANDLER is now called
5313         STANDARD_TO_LOOP_ERR_HANDLER.
5314         * iconvdata/euc-jp-ms.c (BODY): Likewise.
5316 2003-07-19  Ulrich Drepper  <drepper@redhat.com>
5318         * sysdeps/unix/sysv/linux/bits/sched.h (__CPU_ZERO): Fix typo.
5320         * sysdeps/unix/sysv/linux/syscalls.list: Remove affinity syscalls.
5322 2003-07-16  Daniel Jacobowitz  <drow@mvista.com>
5323             Andreas Jaeger  <aj@suse.de>
5325         * sysdeps/unix/sysv/linux/mips/bits/shm.h (SHMLBA): Define to
5326         256K, remove unneeded declaration of __getpagesize.
5328 2003-07-16  Andreas Schwab  <schwab@suse.de>
5330         * sysdeps/unix/sysv/linux/futimes.c: Include <string.h>.
5332 2003-07-15  Ulrich Drepper  <drepper@redhat.com>
5334         * io/test-utime.c (main): Make test yet more robust.
5336 2003-07-14  Ulrich Drepper  <drepper@redhat.com>
5338         More cancellation handling fixups.
5339         * sysdeps/unix/sysv/linux/not-cancel.h: Add waitpid_not_cancel.
5340         * sysdeps/generic/not-cancel.h: Likewise.
5341         * catgets/open_catalog.c: Use not-cancelable syscalls.
5342         * time/Makefile (CFLAGS-getdate.c): Add -fexceptions.
5343         * sysdeps/unix/sysv/linux/llseek.c: Must not be cancelable.
5344         * sysdeps/unix/syscalls.list: Don't mark lseek as cancelable.
5345         * dlfcn/dlfcn.h: Mark dlopen with __THROW again.
5346         * io/fcntl.h: Don't mark posix_fallocate with __THROW.
5347         * libio/fileops.c: Use not-cancelable syscalls for fclose.
5348         * libio/iopopen.c: Use no-cancelable syscalls.
5349         * libio/stdio.h: Mark popen and pclose with __THROW again.
5350         * misc/Makefile (CFLAGS-syslog.c): Add -fexceptions.
5351         * misc/syslog.c: Fix locking and cancellation cleanup handling.
5352         * posix/unistd.h: Mark ttyname and ttyname_r again with __THROW.
5353         * stdio-common/Makefile (CFLAGS-tmpfile.c, CFLAGS-tmpfile64.c,
5354         CFLAGS-tempname.c): Add -fexceptions.
5355         * stdlib/Makefile (CFLAGS-mkstemp.c): Add -fexceptions.
5356         * string/string.h: Mark strerror and strerror_r with _THROW again.
5357         * sysdeps/generic/unwind.inc: New file.  Copied from gcc.
5358         * sysdeps/generic/unwind-dw2.c: Update from gcc version.  Remove
5359         #ifs since we now need all the code compiled.
5360         * sysdeps/posix/spawni.c: Use close_not_cancel instead of close.
5361         * sysdeps/unix/closedir.c: Use not-cancelable syscalls.
5362         * sysdeps/unix/opendir.c: Likewise.
5364         * iconvdata/Makefile (modules): Add CP932 and EUC-JP-MS.
5365         Add rule for EUC-JP-MS dependency.
5366         * iconvdata/cp932.c: New file.
5367         * iconvdata/eucjp-ms.c: New file.
5368         * iconvdata/gconv-modules: Add entries for CP932 and EUC-JP-MS.
5369         Patch by MORIYAMA Masayuki <msyk@mtg.biglobe.ne.jp>.
5371 2003-07-15  Jakub Jelinek  <jakub@redhat.com>
5373         * sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S (__socket): Add
5374         cfi directives.
5376 2003-07-14  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
5378         * sysdeps/unix/sysv/linux/kernel-features.h
5379         (__ASSUME_FIXED_CLONE_SYSCALL): New macro.
5380         * sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S: Use it.
5382         * sysdeps/unix/sysv/linux/utimes.c: Include sysdep.h.
5384 2003-07-14  Ulrich Drepper  <drepper@redhat.com>
5386         * sysdeps/unix/sysv/linux/kernel-features.h: Define
5387         __ASSUME_TGKILL for Alpha appropriately.
5389 2003-07-12  Ulrich Drepper  <drepper@redhat.com>
5391         * sysdeps/unix/sysv/linux/bits/statfs.h (_STATFS_F_FRSIZE): Define.
5392         * sysdeps/unix/sysv/linux/alpha/bits/statfs.h (_STATFS_F_FRSIZE):
5393         Likewise.
5394         * sysdeps/unix/sysv/linux/s390/bits/statfs.h (_STATFS_F_FRSIZE):
5395         Likewise.
5397         * sysdeps/unix/sysv/linux/kernel-features.h: Define
5398         __ASSUME_UTIMES for x86 and kernels > 2.5.75.
5400         * sysdeps/unix/sysv/linux/futimes.c (__futimes): Handle case with
5401         second parameter == NULL.
5402         * sysdeps/unix/sysv/linux/utimes.c: New file.
5404 2003-07-12  Jakub Jelinek  <jakub@redhat.com>
5406         * sysdeps/unix/sysv/linux/futimes.c: Include kernel-features.h.
5407         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_UTIMES): Fix
5408         a typo.
5410 2003-07-12  Ulrich Drepper  <drepper@redhat.com>
5412         * time/sys/time.h: Namespace cleanup.
5413         * sysdeps/unix/sysv/linux/kernel-features.h: Define
5414         __ASSUME_UTIMES for the architectures which always had the syscall.
5415         * sysdeps/unix/sysv/linux/futimes.c: New file.
5417 2003-07-12  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
5419         * sysdeps/unix/sysv/linux/sh/socket.S: Save and restore the PR
5420         register across CENABLE and CDISABLE.
5422 2003-07-11  Jakub Jelinek  <jakub@redhat.com>
5424         * sysdeps/unix/sysv/linux/sigwait.c: Include string.h.
5425         * sysdeps/unix/sysv/linux/sigwaitinfo.c: Likewise.
5426         * sysdeps/unix/sysv/linux/sigtimedwait.c: Likewise.
5427         * sysdeps/unix/sysv/linux/sleep.c (__sleep): Cast value to unsigned
5428         int before assigning to max to avoid warnings.
5430 2003-07-11  Jakub Jelinek  <jakub@redhat.com>
5432         * sysdeps/unix/sysv/linux/powerpc/powerpc32/socket.S (__socket): Add
5433         cfi directives.
5434         * sysdeps/unix/sysv/linux/s390/s390-32/socket.S (__socket): Likewise.
5435         * sysdeps/unix/sysv/linux/s390/s390-64/socket.S (__socket): Likewise.
5437 2003-07-10  Jakub Jelinek  <jakub@redhat.com>
5439         * sysdeps/powerpc/powerpc64/elf/start.S: Set section flags of
5440         .data.rel.ro.local to "aw".
5442 2003-07-10  Ulrich Drepper  <drepper@redhat.com>
5444         * sysdeps/m68k/Makefile: Remove CLFAGS-.oS addition.
5445         * Makeconfig (CFLAGS-.oS): Use PIC-ccflag instead of pic-ccflag.
5446         (PIC-ccflag): Define.
5448 2003-07-04  Jakub Jelinek  <jakub@redhat.com>
5450         * sysdeps/s390/s390-32/elf/start.S: Emit position independent code
5451         if PIC.
5452         * sysdeps/s390/s390-64/elf/start.S: Likewise.
5454 2003-07-07  Jakub Jelinek  <jakub@redhat.com>
5456         * sysdeps/powerpc/powerpc64/elf/start.S: Put L(start_address)
5457         into .data.rel.ro.local section if PIC to avoid DT_TEXTREL.
5459 2003-07-07  Ulrich Drepper  <drepper@redhat.com>
5461         * sysdeps/unix/sysv/linux/kernel-features.h: Version
5462         __ASSUME_CORRECT_SI_PID and __ASSUME_TGKILL if possible.
5464         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Adjust for
5465         compilation with HAVE_AUX_SECURE defined.
5467 2003-07-05  Richard Henderson  <rth@redhat.com>
5469         * sysdeps/alpha/elf/initfini.c: Avoid .ent/.end.
5471 2003-07-03  Ulrich Drepper  <drepper@redhat.com>
5473         * configure.in: Also check for .cfi_rel_offset pseudo-op.
5475 2003-07-03  Jakub Jelinek  <jakub@redhat.com>
5477         * sysdeps/unix/sysv/linux/prof-freq.c (__profile_frequency): Fix a
5478         typo.
5480 2003-07-03  Ulrich Drepper  <drepper@redhat.com>
5482         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_AT_CLKTCK):
5483         Define.
5484         * sysdeps/unix/sysv/linux/prof-freq.h: New file.
5486 2003-07-02  Jakub Jelinek  <jakub@redhat.com>
5488         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Protect new_sysinfo
5489         decl and use with #ifdef NEED_DL_SYSINFO.
5491 2003-07-02  Ulrich Drepper  <drepper@redhat.com>
5493         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Don't set
5494         GL(dl_sysinfo) unles GL(dl_sysinfo_dso) is also set.
5495         * sysdeps/unix/sysv/linux/kernel-features.h: Define
5496         __ASSUME_VSYSCALL only for 2.5.69 and up since this is when the
5497         vsyscall DSO was added.
5499         * posix/bits/posix1_lim.h (_POSIX_NGROUPS_MAX): Define to 8 or 0
5500         depending on selected standard.
5501         (NGROUPS_MAX): Define to 8 if not defined.
5503 2003-07-02  Andreas Jaeger  <aj@suse.de>
5505         * sysdeps/unix/sysv/linux/x86_64/sys/epoll.h: New file.
5507 2003-05-04  H.J. Lu  <hongjiu.lu@intel.com>
5509         * malloc/arena.c (arena_get2): Add atomic_write_barrier.
5510         * malloc/thread-m.h: Include <atomic.h>.
5511         (atomic_full_barrier): Provide default.
5512         (atomic_read_barrier): Likewise.
5513         (atomic_write_barrier): Likewise.
5514         * sysdeps/ia64/bits/atomic.h (atomic_full_barrier): New #define.
5516 2003-06-30  Ulrich Drepper  <drepper@redhat.com>
5518         * sysdeps/generic/sysdep.h: Define cfi_rel_offset and CFI_REL_OFFSET.
5520 2003-06-30  Richard Henderson  <rth@redhat.com>
5522         * sysdeps/alpha/bits/atomic.h (__arch_compare_and_exchange_bool_*_int):
5523         Invert the sense of the return value.
5524         (__arch_exchange_16_int): Fix paste-o.
5525         (__arch_exchange_{32,64}_int): Fix think-o.
5527         * sysdeps/unix/sysv/linux/alpha/clone.S: Load child_tid properly.
5529 2003-06-30  Richard Henderson  <rth@redhat.com>
5531         * include/sys/resource.h (__getrusage): Mark hidden.
5532         * include/sys/time.h (__settimeofday, __setitimer, __utimes): Likewise.
5533         * include/sys/wait.h (__wait4): Likewise.
5535 2003-06-17  Guido Guenther  <agx@sigxcpu.org>
5537         * sysdeps/unix/sysv/linux/mips/xstatconv.c: Handle STAT_IS_KERNEL_STAT
5538         case.
5539         (xstat_conv): Rename to __xstat_conv and remove static inline.
5540         (xstat64_conv): Likewise.
5542 2003-06-29  Ulrich Drepper  <drepper@redhat.com>
5544         * sysdeps/unix/sysv/linux/sleep.c (__sleep): Handle parameter
5545         values which cannot be handled in one nanosleep call.
5547 2003-06-25  Alfred M. Szmidt  <ams@kemisten.nu>
5549         * sysdeps/generic/bits/in.h (IPV6_HOPOPTS, IPV6_DSTOPTS): New macros.
5550         (IPV6_RXHOPOPTS, IPV6_RXDSTOPTS): Use them.
5552         * sysdeps/generic/ifreq.h (__if_nextreq) [_HAVE_SA_LEN]: Typo fix.
5554 2003-06-04  Thorsten Kukuk  <kukuk@suse.de>
5556         * sysdeps/unix/sysv/linux/net/if_arp.h: Sync with kernel header,
5557         fix typo.
5559 2003-06-26  Steven Munroe  <sjmunroe@us.ibm.com>
5561         * sysdeps/unix/sysv/linux/xstatconv.h [!STAT_IS_KERNEL_STAT]:
5562         Conditionalize function definitions that use struct kernel_stat.
5563         * sysdeps/unix/sysv/linux/fxstat.c: Remove __syscall_fstat extern.
5564         * sysdeps/unix/sysv/linux/lxstat.c: Remove __syscall_lstat extern.
5565         * sysdeps/unix/sysv/linux/xstat.c: Remove __syscall_stat extern.
5567 2003-06-28  Ulrich Drepper  <drepper@redhat.com>
5569         * sysdeps/unix/sysv/linux/s390/semtimedop.c (semtimedop): Add real
5570         implementation.
5572 2003-06-07  Thorsten Kukuk  <kukuk@suse.de>
5574         * nis/nss_compat/compat-grp.c: Remove unused nis_first variable.
5575         (getgrent_next_file): Don't store group name to early in blacklist.
5577         * nis/nss_compat/compat-pwd.c (internal_getpwuid_r): Save strlen result
5578         and use memcpy instead of strcpy.
5580 2003-06-28  Ulrich Drepper  <drepper@redhat.com>
5582         * nis/nss_compat/compat-grp.c: Optimize several little things.  Use
5583         stream unlocked.
5584         * nis/nss_compat/compat-initgroups.c: Likewise.
5585         * nis/nss_compat/compat-pwd.c: Likewise.
5586         * nis/nss_compat/compat-spwd.c: Likewise.
5588 2003-06-27  Thorsten Kukuk  <kukuk@suse.de>
5590         * nis/nss_compat/compat-initgroups.c: Don't use our own NIS/NIS+
5591         functions, dlopen corresponding NSS module instead.
5593 2003-06-27  Jeroen Dekkers  <jeroen@dekkers.cx>
5595         * sysdeps/mach/hurd/alpha/init-first.c: Remove call to __libc_init.
5596         * sysdeps/mach/hurd/i386/init-first.c: Likewise.
5597         * sysdeps/mach/hurd/mips/init-first.c: Likewise.
5598         * sysdeps/mach/hurd/powerpc/init-first.c: Likewise.
5600 2003-06-27  Ulrich Drepper  <drepper@redhat.com>
5602         * rt/Makefile (CFLAGS-librt-cancellation.c): Define.
5604 2003-06-26  Roland McGrath  <roland@frob.com>
5606         * sysdeps/mach/configure.in: Barf rather than define NO_CREATION_TIME.
5607         * sysdeps/mach/configure: Regenerated.
5608         * sysdeps/mach/hurd/times.c (times_init): Function removed.
5609         (__times): Assume `creation_time' field is available.
5610         * sysdeps/mach/hurd/Makefile [$(subdir) = csu] (sysdep_routines):
5611         Don't append set-init.
5612         * sysdeps/mach/hurd/set-init.c: File removed.
5614 2003-06-26  Roland McGrath  <roland@redhat.com>
5616         * elf/elf.h (AT_SECURE): New macro.
5617         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Grok it,
5618         set __libc_enable_secure.
5619         (_dl_show_auxv): Add AT_SECURE to name table.
5620         * elf/dl-support.c (_dl_aux_init): Grok AT_SECURE, set
5621         __libc_enable_secure and __libc_enable_secure_decided.
5622         * sysdeps/unix/sysv/linux/ldsodefs.h
5623         [__ASSUME_AT_SECURE] (HAVE_AUX_SECURE): Define it.
5624         * sysdeps/unix/sysv/linux/kernel-features.h
5625         [__LINUX_KERNEL_VERSION >= 132426] (__ASSUME_AT_SECURE): Define it.
5627 2003-06-26  Ulrich Drepper  <drepper@redhat.com>
5629         * io/test-utime.c: If _STATBUF_ST_NSEC is defined, adjust lower
5630         boundary test to take rounding of nanoseconds into account.
5632         * sysdeps/unix/sysv/linux/bits/stat.h: Define _STATBUF_ST_NSEC.
5633         * sysdeps/unix/sysv/linux/ia64/bits/stat.h: Likewise.
5634         * sysdeps/unix/sysv/linux/m68k/bits/stat.h: Likewise.
5635         * sysdeps/unix/sysv/linux/powerpc/bits/stat.h: Likewise.
5636         * sysdeps/unix/sysv/linux/s390/bits/stat.h: Likewise.
5637         * sysdeps/unix/sysv/linux/sparc/bits/stat.h: Likewise.
5638         * sysdeps/unix/sysv/linux/x86_64/bits/stat.h: Likewise.
5640 2003-06-26  Andreas Schwab  <schwab@suse.de>
5642         * sysdeps/m68k/fpu/bits/mathinline.h: Don't inline frexp.
5643         * sysdeps/m68k/fpu/s_frexp.c: Put implementation here.
5644         * sysdeps/m68k/fpu/s_frexpl.c: Fix to handle unnormalized numbers.
5646 2003-06-17  Thorsten Kukuk  <kukuk@suse.de>
5648         * nis/Makefile: Remove NIS/NIS+ files from nss_compat module.
5649         * nis/nss_compat/compat-grp.c: Don't use our own NIS/NIS+ functions,
5650         dlopen corresponding NSS module instead.
5651         * nis/nss_compat/compat-pwd.c: Likewise.
5652         * nis/nss_compat/compat-spwd.c: Likewise.
5653         * nis/nss_compat/compat-initgroups.c: Disabled for now.
5654         * nss/Versions: Export __nss_lookup_function.
5656 2003-06-19  Daniel Jacobowitz  <drow@mvista.com>
5658         * sysdeps/unix/sysv/linux/kernel-features.h: Update kernel features
5659         for the SH architecture.
5661 2003-06-25  Thorsten Kukuk  <kukuk@suse.de>
5663         * csu/Makefile: Use CPPFLAGS to find correct linux/version.h.
5665 2003-06-25  Andreas Jaeger  <aj@suse.de>
5667         * stdlib/tst-strtod.c (main): Declare constant long double as
5668         suggested by Jakub Jelinek and Andreas Schwab.
5670         * posix/tst-nanosleep.c: Include <time.h> for nanosleep
5671         declaration.
5673         * stdio-common/tst-fphex.c: Fix format string.
5675         * posix/transbug.c: Include <string.h> for memset and strlen
5676         declarations.
5678         * stdio-common/tst-sprintf.c: Include <stdlib.h> for free declaration.
5680         * stdlib/tst-strtod.c (main): Pass long double value.
5682         * test-skeleton.c: Include <time.h> for nanosleep declaration.
5684 2003-06-25  Ulrich Drepper  <drepper@redhat.com>
5686         * include/time.h: Don't define CLOCK_IDFIELD_SIZE if _ISOMAC is
5687         defined.
5689 2003-06-11  Jakub Jelinek  <jakub@redhat.com>
5691         * elf/Versions (libc): Add _dl_open_hook@GLIBC_PRIVATE.
5692         * elf/dl-libc.c (struct dl_open_hook): New.
5693         (_dl_open_hook): New variable.
5694         (do_dlsym_private): New function.
5695         (__libc_dlopen_mode) [!SHARED]: Lookup _dl_open_hook@GLIBC_PRIVATE
5696         and initialize it if found.
5697         (__libc_dlopen_mode) [SHARED]: If _dl_open_hook is non-NULL,
5698         call dlopen_mode hook.
5699         (__libc_dlsym) [SHARED]: If _dl_open_hook is non-NULL,
5700         call dlsym hook.
5701         (__libc_dlclose) [SHARED]: If _dl_open_hook is non-NULL,
5702         call dlclose hook.
5704 2003-06-25  Ulrich Drepper  <drepper@redhat.com>
5706         * sysdeps/unix/sysv/linux/cris/sysdep.h (INLINE_SYSCALL): Cast
5707         result to long int so that extensions to long long int work.
5708         Patch by Uwe Reimann <libc-alpha@pulsar.homelinux.net>.
5710 2003-06-19  Jakub Jelinek  <jakub@redhat.com>
5712         * elf/ldconfig.c (main): Use add_system_dir instead of add_dir.
5713         * sysdeps/generic/dl-cache.h (add_system_dir): Define.
5714         * sysdeps/unix/sysv/linux/x86_64/dl-cache.h: Include sparc
5715         dl-cache.h.
5716         * sysdeps/unix/sysv/linux/s390/dl-cache.h: New file.
5717         * sysdeps/unix/sysv/linux/mips/dl-cache.h: New file.
5718         * sysdeps/unix/sysv/linux/powerpc/dl-cache.h: New file.
5719         * sysdeps/unix/sysv/linux/sparc/dl-cache.h: New file.
5721 2003-06-19  Jakub Jelinek  <jakub@redhat.com>
5723         * test-skeleton.c (timeout_handler): If waitpid returned 0,
5724         retry once after a second.  If killed == 0, assume
5725         WTERMSIG (status) == SIGKILL.
5727 2003-06-18  Roland McGrath  <roland@redhat.com>
5729         * sysdeps/generic/dl-sysdep.c (_dl_show_auxv): Catch uninitialized
5730         elements in the table instead of printing an empty name string.
5732 2003-06-05  Roland McGrath  <roland@redhat.com>
5734         * elf/elf.h (PT_GNU_STACK): New macro.
5736 2003-06-24  Ulrich Drepper  <drepper@redhat.com>
5738         * include/time.h: Define CLOCK_IDFIELD_SIZE.
5739         * sysdeps/posix/clock_getres.c: Recognize thread CPU clock IDs.
5740         * sysdeps/unix/clock_gettime.c: Likewise.
5741         * sysdeps/unix/clock_settime.c: Likewise.
5742         * sysdeps/unix/clock_nanosleep.c (CPUCLOCK_P): Adjust for new
5743         clock id for thread CPU clocks.
5745         * sysdeps/unix/sysv/linux/fstatfs64.c (__fstatfs64): Add support
5746         for the fstatfs64 syscall.
5747         * sysdeps/unix/sysv/linux/statfs64.c (__statfs64): Add support for
5748         the statfs64 syscall.
5750         * sysdeps/unix/sysv/linux/kernel-features.h: Define
5751         __ASSUME_STATFS64 appropriately.
5753         * sysdeps/unix/sysv/linux/internal_statvfs.c: Use f_frsize field
5754         from statfs structure if it has been filled in.
5756         * sysdeps/unix/sysv/linux/bits/statfs.h (struct statfs): Add f_frsize
5757         field.
5758         (struct statfs64): Likewise.
5759         * sysdeps/unix/sysv/linux/alpha/bits/statfs.h: Likewise.
5760         * sysdeps/unix/sysv/linux/s390/bits/statfs.h: Likewise.
5762 2003-06-24  Richard Henderson  <rth@redhat.com>
5764         * sysdeps/unix/sysv/linux/alpha/syscalls.list (pread, pwrite): Use
5765         the 64-bit syscall name.
5767         * sysdeps/alpha/setjmp.S (_setjmp, setjmp): Mark .prologue.
5769         * sysdeps/alpha/fpu/bits/mathinline.h: Honor
5770         __LIBC_INTERNAL_MATH_INLINES.  Implement __signbitf, __signbit.
5772         * sysdeps/unix/sysv/linux/alpha/clone.S: Use HIDDEN_JUMPTARGET.
5773         * sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S: Use
5774         libc_hidden_def.
5775         * sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S: Likewise.
5776         * sysdeps/unix/sysv/linux/alpha/setfpucw.c: Use libc_hidden_proto
5777         on them.
5779         * sysdeps/alpha/bits/atomic.h: New file.
5781 2003-06-24  Andreas Schwab  <schwab@suse.de>
5783         * sysdeps/m68k/fpu/libm-test-ulps: Update.
5785 2003-06-24  Andreas Jaeger  <aj@suse.de>
5787         * sysdeps/unix/sysv/linux/x86_64/stat.h (_STAT_VER_LINUX): Avoid
5788         redeclaration with 32-bit code.
5790 2003-05-19  Ed Connell  <ed.connell@sas.com>
5792         * sysdeps/unix/sysv/linux/i386/getcontext.S (getcontext): Retain
5793         floating point mask.
5794         * sysdeps/i386/fpu/fegetenv.c (fegetenv): Likewise.
5796 2003-06-23  Ulrich Drepper  <drepper@redhat.com>
5798         * sysdeps/pthread/aio_misc.h: Mark __aio_requests_mutex,
5799         __aio_enqueue_request, __aio_find_req, __aio_find_req_fd,
5800         __aio_free_request, __aio_notify, and __aio_sigqueue as hidden.
5802         * sysdeps/pthread/aio_suspend.c (aio_suspend): Set errno to the result
5803         of pthread_cond_wait if there was an error.  Use pthread_cleanup_*
5804         instead of __libc_cleanup_region_*.
5806 2003-06-20  Richard Henderson  <rth@redhat.com>
5808         * sysdeps/unix/make-syscalls.sh: Implement ! prefix for strong aliases.
5809         * sysdeps/unix/sysv/linux/alpha/syscalls.list (open, open64): New.
5811 2003-06-20  Richard Henderson  <rth@redhat.com>
5813         * sysdeps/unix/alpha/sysdep.h (INLINE_SYSCALL1): Use __builtin_expect.
5814         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_ST_INO_64_BIT)
5815         Unset for alpha.
5816         (__ASSUME_TIMEVAL64): Set for alpha.
5817         * sysdeps/unix/sysv/linux/alpha/Makefile (sysdep_routines): Remove
5818         adjtimex, osf_sigprocmask, old_adjtimex.
5819         * sysdeps/unix/sysv/linux/alpha/adjtime.c: Use INLINE_SYSCALL,
5820         __ASSUME_TIMEVAL64.  Reorg tv64 functions to avoid uninit variable.
5821         * sysdeps/unix/sysv/linux/alpha/getitimer.S: Use __ASSUME_TIMEVAL64.
5822         * sysdeps/unix/sysv/linux/alpha/getrusage.S: Likewise.
5823         * sysdeps/unix/sysv/linux/alpha/gettimeofday.S: Likewise.
5824         * sysdeps/unix/sysv/linux/alpha/select.S: Likewise.
5825         * sysdeps/unix/sysv/linux/alpha/setitimer.S: Likewise.
5826         * sysdeps/unix/sysv/linux/alpha/settimeofday.S: Likewise.
5827         * sysdeps/unix/sysv/linux/alpha/utimes.S: Likewise.
5828         * sysdeps/unix/sysv/linux/alpha/wait4.S: Likewise.
5829         * sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S: Streamline
5830         PIC code sequence.
5831         * sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S: Likewise.
5832         * sysdeps/unix/sysv/linux/alpha/sigaction.c: New file.
5833         * sysdeps/unix/sysv/linux/alpha/sigprocmask.c: Use INLINE_SYSCALL.
5834         * sysdeps/unix/sysv/linux/alpha/ustat.c: Likewise.
5835         * sysdeps/unix/sysv/linux/alpha/xmknod.c: Likewise.
5836         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Remove osf_sigprocmask,
5837         sys_ustat, sys_mknod, adjtimex, old_adjtimex.
5838         * sysdeps/unix/sysv/linux/alpha/sysdep.h (INLINE_SYSCALL): Don't
5839         defer to __syscall_name; error for rt_sigaction.
5840         * sysdeps/unix/sysv/linux/alpha/xstatconv.c: Include kernel_stat.h.
5842 2003-06-18  Ulrich Drepper  <drepper@redhat.com>
5844         * malloc/malloc.c (public_mALLINFo): Initialize malloc if it
5845         hasn't happened yet.
5847         * sysdeps/unix/sysv/linux/x86_64/register-dump.h (register_dump):
5848         Fix completely broken implementation.  The second parameter is of
5849         type struct ucontext*.
5851         * sysdeps/x86_64/dl-machine.h (elf_machine_runtime_setup): Always
5852         inline.
5854         * sysdeps/i386/i686/dl-hash.h: Don't inline _dl_elf_hash.
5855         * sysdeps/generic/dl-hash.h: Likewise.
5857         * sysdeps/generic/memcmp.c: Remove inline from
5858         memcmp_common_alignment and memcmp_not_common_alignment definition.
5860         * intl/localealias.c (read_alias_file): Determine whether line is
5861         read incompletely early, before we modify the line.
5863 2003-06-17  Jakub Jelinek  <jakub@redhat.com>
5865         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela)
5866         <case R_PPC64_DTPREL64>: Don't segfault on undefined symbols.
5868 2003-06-17  Paul Mackerras  <paulus@samba.org>
5870         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: New file.
5871         * sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S: New file.
5872         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: New file.
5873         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: New file.
5874         * sysdeps/unix/sysv/linux/powerpc/powerpc32/ucontext_i.h: New file.
5875         * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: Adjust.
5877 2003-06-17  Jakub Jelinek  <jakub@redhat.com>
5879         * posix/regcomp.c (build_word_op): Use alnum instead of alpha class.
5881 2003-06-17  Ulrich Drepper  <drepper@redhat.com>
5883         * sysdeps/unix/clock_nanosleep.c (clock_nanosleep): nanosleep
5884         takes care of enabling cancellation.
5886         * sysdeps/pthread/aio_suspend.c (aio_suspend): Make aio_suspend
5887         cancelable.  It's not correct to disable cancellation.  Instead of
5888         a cleanup handler.
5890         * sysdeps/unix/sysv/linux/sigtimedwait.c: If SIGCANCEL is defined
5891         and part of the incoming set, create a temporary set without this
5892         signal.
5893         * sysdeps/unix/sysv/linux/sigwait.c: Likewise.
5894         * sysdeps/unix/sysv/linux/sigwaitinfo.c: Likewise.
5896         * sysdeps/unix/sysv/linux/sleep.c: Use CANCELLATION_P if defined before
5897         returning because seconds==0.  Add __builtin_expect.
5899 2003-06-16  Ulrich Drepper  <drepper@redhat.com>
5901         * sysdeps/unix/sysv/linux/i386/socket.S: Add unwind information.
5903         * sysdeps/unix/sysv/linux/wait.c (__libc_wait): Fix type of result
5904         variable.
5906 2003-06-16  Thorsten Kukuk  <kukuk@suse.de>
5908         * include/libc-symbols.h: Add static_link_warning macro.
5909         * grp/initgroups.c: Print linker warning if this function
5910         is called in a static linked binary.
5911         * nss/getXXbyYY.c: Likewise.
5912         * nss/getXXbyYY_r.c: Likewise.
5913         * nss/getXXent.c: Likewise.
5914         * nss/getXXent_r.c: Likewise.
5915         * sysdeps/posix/getaddrinfo.c: Likewise.
5917 2003-06-16  Bruno Haible  <bruno@clisp.org>
5919         * iconvdata/gconv-modules (ISO-8859-15): Add aliases ISO_8859-15,
5920         LATIN-9.
5921         (ISO-8859-16): Add aliases ISO_8859-16:2001, ISO_8859-16.
5922         (IBM1047): Add alias IBM-1047.
5923         (GBK): Add aliases MS936, WINDOWS-936.
5925 2003-06-16  Jakub Jelinek  <jakub@redhat.com>
5927         * sysdeps/unix/sysv/linux/xstatconv.c (__xstat_conv): Define even if
5928         defined __ASSUME_STAT64_SYSCALL && defined XSTAT_IS_XSTAT64.
5929         (__xstat64_conv): Change xstat_conv to __xstat_conv.
5931 2003-06-16  Ulrich Drepper  <drepper@redhat.com>
5933         * locale/iso-639.def: Update from current official ISO 639.
5935         * math/tgmath.h (__TGMATH_UNARY_IMAG_ONLY): Removed.
5937 2003-06-15  Andreas Jaeger  <aj@suse.de>
5939         * sysdeps/i386/fpu/feenablxcpt.c (feenableexcept): Correct setting
5940         of MXCSR.
5941         * sysdeps/i386/fpu/fedisblxcpt.c (fedisableexcept): Likewise.
5942         * sysdeps/i386/fpu/feholdexcpt.c (feholdexcept): Likewise.
5943         Reported by Arnaud Desitter <arnaud.desitter@geography.oxford.ac.uk>.
5945         * math/tgmath.h (carg): Handle real arguments.
5946         (conj): Likewise.
5947         (cproj): Likewise.
5948         (cimag): Likewise.
5949         (creal): Likewise.
5951         * math/Makefile (CFLAGS-test-tgmath-ret.c): New.
5952         (tests): Add test-tgmath-ret.
5953         * math/test-tgmath-ret.c: New file.
5955         * math/tgmath.h (ilogb): Return always an int.
5957 2003-06-16  Ulrich Drepper  <drepper@redhat.com>
5959         * elf/rtld.c (dl_main): Use l_map_start not l_addr in Phdr
5960         computation so that prelinking works.
5962 2003-06-15  Ulrich Drepper  <drepper@redhat.com>
5964         * elf/dl-iteratephdr.c (__dl_iterate_phdr): Don't skip dynamic
5965         linker's map.
5966         * elf/rtld.c (dl_main): Initialize l_phdr and l_phnum of of the
5967         dynamic linker's map.
5969         Fix cancellation point handling wrt exception based cleanup.
5970         * io/Makefile: Compile fcntl.c, poll.c, and lockf.c with exceptions.
5971         * misc/Makefile: Compile pselect.c, readv.c, writev.c, and usleep.c
5972         with exceptions.
5973         * posix/Makefile: Compile pread.c, pread64.c, pwrite.c, pwrite64.c,
5974         sleep.c, wait.c, waitid.c, and waitpid.c with exceptions.
5975         * rt/Makefile: Compile aio_suspend.c and clock_nanosleep.c with
5976         exceptions.
5977         * signal/Makefile: Compile sigpause.c, sigsuspend.c, sigtimedwait.c,
5978         sigwait.c, and sigwaitinfo.c with exceptions.
5979         * stdlib/Makefile: Compile system.c with exceptions.
5980         * sysvipc/Makefile: Compile msgrcv.c and msgsnd.c with exceptions.
5981         * termios/Makefile: Compile tcdrain.c with exceptions.
5982         * sysdeps/generic/lockf.c: Add comment explaining the cancellation
5983         situation.
5984         * sysdeps/generic/pselect.c: Likewise.
5985         * sysdeps/posix/sigpause.c: Likewise.
5986         * sysdeps/posix/system.c: Likewise.
5987         * sysdeps/posix/waitid.c: Likewise.
5988         * sysdeps/unix/sysv/linux/sleep.c: Likewise.
5989         * sysdeps/unix/sysv/linux/usleep.c: Likewise.
5990         * sysdeps/unix/sysv/linux/i386/sysdep.h: Major rewrite of
5991         INTERNAL_SYSCALL to not use push inside asm statement so that
5992         unwind info is correct around the syscall.
5993         * sysdeps/unix/clock_nanosleep.c: Add cancellation support.
5994         * sysdeps/unix/sysv/linux/clock_nanosleep.c: Likewise.
5996 2003-06-15  Andreas Jaeger  <aj@suse.de>
5998         * sysdeps/x86_64/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
5999         Add CFI directives.
6001 2003-06-15  Guido Guenther  <agx@sigxcpu.org>
6003         * sysdeps/unix/sysv/linux/mips/Makefile: Add missing endif and
6004         create $(objpfx).
6006 2003-06-14  Ulrich Drepper  <drepper@redhat.com>
6008         * sysdeps/unix/sysv/linux/check_pf.c (__check_pf): Use __close,
6009         not close.
6011         * inet/inet6_option.c (inet6_option_alloc): Add libc_hidden_def.
6012         * include/netinet/in.h (inet6_option_alloc): Add libc_hidden_proto
6013         definition.
6015         * inet/netinet/ip6.h (IP6OPT_PAD1, IP6OPT_PADN): Define.
6016         * inet/netinet/in.h: Add prototypes for inet6_option_* functions.
6017         * inet/Makefile (routines): Add inet6_option.
6018         * inet/inet6_option.c: New file.
6019         * inet/Versions [GLIBC_2.3.3] (libc): Add inet6_option_space,
6020         inet6_option_init, inet6_option_append, inet6_option_alloc,
6021         inet6_option_next, and inet6_option_find.
6023 2003-06-13  Ulrich Drepper  <drepper@redhat.com>
6025         * inet/netinet/ip6.h (struct ip6_ext): Define.
6027         * sysdeps/unix/sysv/linux/sys/param.h (howmany): Optimize for gcc.
6029         Fixing gcc 3.3 warnings, part II.
6030         * argp/argp-help.c (hol_entry_long_iterate): Always inline.
6031         * elf/dl-load.c (cache_rpath): Don't inline.
6032         * iconvdata/cns11642l2.h: Always inline all functions.
6033         * iconvdata/iso-ir-165.h: Likewise.
6034         * locale/Makefile (aux): Add coll-lookup.
6035         * locale/coll-lookup.c: New file.
6036         * locale/coll-lookup.h (collidx_table_lookup): Do not define here.
6037         (collseq_table_lookup): Likewise.
6038         * locale/weightwc.h: Adjust collidx_table_lookup calls for name change.
6039         * posix/fnmatch_loop.c: Adjust collseq_table_lookup calls for name
6040         change.
6041         * posix/regcomp.c: Likewise.
6042         * posix/regexec.c: Likewise.
6043         * locale/programs/3level.h (*_get): Always inline.
6044         * locale/programs/locfile.h: Move definition of handle_copy to...
6045         * locale/programs/locfile.c: ...here.
6046         * locale/programs/ld-collate.c (obstack_int32_grow): Always inline.
6047         (obstack_int32_grow_fast): Likewise.
6048         (utf8_encode): Likewise.
6049         (find_element): Avoid aliasing problems.
6050         (insert_value): Likewise.
6051         (collate_read): Likewise.
6052         * nss/getent.c (print_hosts): Don't inline
6053         (print_networks): Likewise.
6054         (print_shadow): Likewise.
6055         (build_doc): Likewise.
6056         * nss/nss_files/files-parse.c [ENTDATA] (parser_stclass): Don't
6057         inline.
6058         * posix/regcomp.c (re_set_fastmap): Always inline.
6059         (seek_collating_symbol_entry): Likewise.
6060         (lookup_collation_sequence_value): Likewise.
6061         (build_range_exp): Likewise.
6062         (build_collating_symbol): Likewise.
6063         * posix/regexec.c (acquire_init_state_context): Don't inline.
6064         (clean_state_log_if_need): Likewise.
6065         * resolv/res_send.c (eConsIovec): Rewrite to not return struct and
6066         adjust all callers.
6067         (evConsTime): Likewise.
6068         (evAddTime): Likewise.
6069         (evSubTime): Likewise.
6070         (evNowTime): Likewise.
6071         (evTimeSpec): Removed.
6072         (__libc_res_nsend): Avoid aliasing problem.
6073         * sysdeps/unix/sysv/linux/ifreq.h: Move old_siocgifconf definition to..
6074         * sysdeps/unix/sysv/linux/ifreq.c: ...here.
6075         * sysdeps/unix/sysv/linux/i386/dl-procinfo.h (_dl_string_hwcap):
6076         Always inline.
6077         (_dl_string_platform): Likewise.
6078         * wctype/wchar-lookup.h (wctype_table_lookup): Always inline.
6079         (wcwidth_table_lookup): Likewise.
6080         (wctrans_table_lookup): Likewise.
6082         * sysdeps/unix/sysv/linux/sys/epoll.h: Include <stdint.h>.
6084 2003-06-12  Ulrich Drepper  <drepper@redhat.com>
6086         * wcsmbs/wchar.h: Define wint_t in std namespace, too [PR libc/5034].
6088 2003-05-29  Jim Meyering  <jim@meyering.net>
6090         * time/strftime.c (my_strftime) [!defined _NL_CURRENT
6091         && HAVE_STRFTIME]: Use underlying_strftime for %r.
6092         Suggested by Daniel Yacob <locales@geez.org>.
6094 2003-06-12  Steven Munroe  <sjmunroe@us.ibm.com>
6096         * sysdeps/powerpc/powerpc64/dl-machine.h (RTLD_START): Replace
6097         @got notation with @toc.
6098         * sysdeps/powerpc/powerpc64/sysdep.h (CALL_MCOUNT): Likewise.
6099         * sysdeps/unix/sysv/linux/powerpc/powerpc64/brk.S (__brk): Likewise.
6101 2003-06-12  Ulrich Drepper  <drepper@redhat.com>
6103         * sysdeps/posix/getaddrinfo.c (gaih_inet): Set no_inet6_date also
6104         if only PF_INET address is needed.
6106         * nss/getXXbyYY_r.c: Make sure we always return a nonzero value in
6107         case of an error.
6109         * scripts/config.guess: Update from upstream version.
6110         * scripts/config.sub: Likewise.
6112 2003-06-12  Jakub Jelinek  <jakub@redhat.com>
6114         * locale/programs/ld-time.c (time_output): Also copy the era format,
6115         not only the name.
6117 2003-06-12  H.J. Lu  <hongjiu.lu@intel.com>
6119         * posix/transbug.c (run_test): Return 1 for failure.
6120         (do_test): Compare only if run_test is successful.
6122 2003-06-12  Simon Josefsson  <jas@extundo.com>
6124         * argp/argp.h [!__THROW]: Define if undefined.
6126 2003-06-12  Ulrich Drepper  <drepper@redhat.com>
6128         * sysdeps/unix/sysv/linux/cris/sysdep.h: Fix handling of syscalls with
6129         more than four parameters.
6130         Patch by Uwe Reimann <libc-alpha@pulsar.homelinux.net>.
6132 2003-06-12  Jakub Jelinek  <jakub@redhat.com>
6134         * sysdeps/unix/sysv/linux/ia64/kernel_stat.h: New file.
6135         * sysdeps/unix/sysv/linux/s390/s390-64/kernel_stat.h: New file.
6136         * sysdeps/unix/sysv/linux/x86_64/kernel_stat.h: New file.
6138         * stdio-common/printf-parsemb.c: Include stdlib.h and sys/param.h.
6140 2003-06-12  Roland McGrath  <roland@redhat.com>
6142         * Makerules ($(objpfx)stubs): Rewrite sed magic.
6144 2003-02-28  Isamu Hasegawa  <isamu@yamato.ibm.com>
6146         * posix/regcomp.c (parse_expression): Deliver translation to
6147         build_word_op, and build_charclass.
6148         (build_charclass): Apply translation for character classes too.
6149         (build_word_op): Deliver translation to build_charclass.
6150         * posix/transbug.c: New file.
6151         * posix/Makefile (tests): Add transbug.
6153 2003-06-04  Paolo Bonzini  <bonzini@gnu.org>
6155         * posix/regexec.c (group_nodes_into_DFAstates): Check for
6156         NEXT_ENDBUF_CONSTRAINT.  Move check for constraints which do a
6157         'continue' before the others.
6159 2003-06-11  Ulrich Drepper  <drepper@redhat.com>
6161         * dirent/scandir.c (SCANDIR): Reset errno after calling selector
6162         function [PR libc/5045].
6164         * sysdeps/i386/bits/byteswap.h (__bswap_32): Use bswap instruction
6165         also for P4.
6167         * time/tzfile.c: Add a couple of __builtin_expect.
6169         Remove warnings gcc 3.3 shows.
6170         * argp/argp-help.c (hol_entry_short_iterate): Don't inline.
6171         * elf/dl-load.c (fillin_rpath): Likewise.
6172         (add_path): Likewise.
6173         * elf/dl-version.c (find_needed): Always inline.
6174         * elf/do-lookup.c (FCT): Don't inline.
6175         * iconv/Makefile: Extend vpath to intl subdir.
6176         (iconvconfig-modules): Add hash-string.
6177         * iconv/gconv_charset.h (strip): Don't inline.
6178         (upstr): Always inline.
6179         Move __gconv_compare_alias prototype to...
6180         * iconv/gconv_int.h: ...here.
6181         * iconv/gconv_db.c: Don't include gconv_charset.h.
6182         * iconv/gconv_conf.c (add_alias): Don't inline.
6183         (insert_module): Likewise.
6184         * iconv/gconv_simple.c (internal_ucs4_loop): Always inline.
6185         (internal_ucs4_loop_unaligned): Likewise.
6186         (internal_ucs4_loop_single): Likewise.
6187         (ucs4_internal_loop): Likewise.
6188         (ucs4_internal_loop_unaligned): Likewise.
6189         (ucs4_internal_loop_single): Likewise.
6190         (internal_ucs4le_loop): Always inline.
6191         (internal_ucs4le_loop_unaligned): Likewise.
6192         (internal_ucs4le_loop_single): Likewise.
6193         (ucs4le_internal_loop): Likewise.
6194         (ucs4le_internal_loop_unaligned): Likewise.
6195         (ucs4le_internal_loop_single): Likewise.
6196         * iconv/loop.c: Always inline the defined functions.
6197         * iconvdata/cns11642.h: Likewise.
6198         * iconvdata/cns11642l1.h: Likewise.
6199         * iconvdata/euc-kr.c: Likewise.
6200         * iconvdata/gb2312.h: Likewise.
6201         * iconvdata/jis0201.h: Likewise.
6202         * iconvdata/jis0208.h: Likewise.
6203         * iconvdata/jis0212.h: Likewise.
6204         * iconvdata/jisx0213.h: Likewise.
6205         * iconvdata/ksc5601.h: Likewise.
6206         * iconvdata/utf-7.c (base64): Don't inline.
6207         * include/libc-symbols.h (symbol_set_first_element): Add cast
6208         (symbol_set_end_p): Likewise.
6209         * include/set-hooks (RUN_HOOK): Likewise.
6210         * inet/Makefile (aux): Add ifreq.
6211         * intl/Makefile (aux): Add some entries from routines.  Add
6212         hash-string.
6213         * intl/hash-string.c: New file.
6214         * intl/hash-string.h: Remove hash_string definition.  Declare
6215         __hash_string.
6216         * iconv/gconv_cache.c (find_module_idx): Adjust hash_string caller.
6217         * iconv/iconvconfig.c (new_name): Likewise.
6218         * intl/dcigettext.c (_nl_find_msg): Likewise.
6219         * intl/loadmsgcat.c (_nl_load_domain): Likewise.
6220         * io/ftw.c (open_dir_stream): Always inline.
6221         (process_entry): Don't inline.
6222         * locale/findlocale.c: Include gconv_int.h.
6223         * locale/setlocale.c (new_composite_name): Don't inline.
6224         * locale/weight.h (findidx): Always inline.
6225         * locale/weightwc.h (findidx): Likewise.
6226         * locale/programs/linereader.c (lr_ignore_rest): Define here.
6227         * locale/programs/linereader.h (lr_ignore_rest): Don't define here,
6228         just declare it.
6229         (lr_getc): Always inline.
6230         (lr_ungetc): Likewise.
6231         * nss/nss_files/files-parse.c (parse_list): Likewise.
6232         * stdio-common/Makefile (aux): Add printf-parsemb and
6233         printf-parsewc.
6234         * stdio-common/_itoa.h (_itoa_word): Always inline.
6235         (_fitoa_word, _fitoa): Don't define here, only declare.
6236         * stdio-common/_itoa.c (_iftoa_word): Add here.
6237         (_fitoa): Likewise.
6238         * stdio-common/_itowa.h (_itowa_word): Always inline.
6239         * stdio-common/printf-parse.h (read_int): Don't inline.
6240         (find_spec): Don't define.
6241         Declare __find_specmb and __find_specwc.
6242         (parse_one_spec): Don't define.
6243         Declare __parse_one_specmb and __parse_one_specwc.
6244         * stdio-common/printf-parsemb.c: New file.
6245         * stdio-common/printf-parsewc.c: New file.
6246         * stdio-common/vfprintf.c: Update calls to find_spec and
6247         parse_one_spec for new names.
6248         * stdio-common/printf-prs.c: Likewise.  Define DONT_NEED_READ_INT.
6249         * stdlib/Makefile (aux): Add grouping and groupingwc.
6250         * stdlib/grouping.c: New file.
6251         * stdlib/groupingwc.c: New file.
6252         * stdlib/grouping.h (correctly_grouped_prefix): Don't define here.
6253         Just prototype.
6254         * stdlib/rpmatch.c (try): Don't inline.
6255         * stdlib/strtod.c (round_and_return): Don't line.
6256         (str_to_mpn): Likewise.
6257         (__mpn_lshift_1): Always inline.  Optimize only for constant count.
6258         Adjust for name change of correctly_grouped_prefix.
6259         * sysdeps/generic/strtol.c: Adjust for name change of
6260         correctly_grouped_prefix.
6261         * string/strxfrm.c (utf8_encode): Don't inline.
6262         * sysdeps/generic/dl-cache.c: Define _dl_cache_libcmp.
6263         * sysdeps/generic/dl-cache.h: Just declare _dl_cache_libcmp.
6264         * sysdeps/generic/ifreq.c: New file.
6265         * sysdeps/unix/sysv/linux/ifreq.c: New file.
6266         * sysdeps/generic/ifreq.h (__ifreq): Only declare here.
6267         * sysdeps/unix/sysv/linux/ifreq.h: Likewise.
6268         * sysdeps/generic/ldsodefs.h (_dl_name_match_p): Always inline.
6269         * sysdeps/generic/unwind-dw2-fde.c (start_fde_sort): Don't inline.
6270         (fde_split): Likewise.
6271         (fde_merge): Likewise.
6272         (end_fde_sort): Likewise.
6273         (init_object): Likewise.
6274         (binary_search_unencoded_fdes): Likewise.
6275         (binary_search_single_encoding_fdes): Likewise.
6276         (binary_search_mixed_encoding_fdes): Likewise.
6277         * sysdeps/generic/wordexp.c (w_addchar): Don't inline.
6278         * sysdeps/i386/dl-machine.c (elf_machine_runtime_setup): Always inline.
6279         * sysdeps/posix/sprofil.c (profil_count): Don't inline.
6280         * sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines):
6281         Add xstatconv.
6282         * sysdeps/unix/sysv/linux/xstatconv.h: New file.
6283         * sysdeps/unix/sysv/linux/xstatconv.c: Don't inline the function.
6284         Export them.  Prepend __ to name.
6285         * sysdeps/unix/sysv/linux/Dist: Add xstatconv.h.
6286         * sysdeps/unix/sysv/linux/fxstat.c: Adjust for name change of
6287         conversion functions.
6288         * sysdeps/unix/sysv/linux/fxstat64.c: Likewise.
6289         * sysdeps/unix/sysv/linux/lxstat.c: Likewise.
6290         * sysdeps/unix/sysv/linux/lxstat64.c: Likewise.
6291         * sysdeps/unix/sysv/linux/xstat.c: Likewise.
6292         * sysdeps/unix/sysv/linux/xstat64.c: Likewise.
6293         * sysdeps/unix/sysv/linux/i386/fxstat.c: Likewise.
6294         * sysdeps/unix/sysv/linux/i386/lxstat.c: Likewise.
6295         * sysdeps/unix/sysv/linux/i386/xstat.c: Likewise.
6296         * sysdeps/unix/sysv/linux/pathconf.c (__statfs_link_max,
6297         __statfs_filesize_max, __statfs_symlinks): Define here.  __ prepended
6298         to name.  Change callers.
6299         * sysdeps/unix/sysv/linux/pathconf.h (__statfs_link_max,
6300         __statfs_filesize_max, __statfs_symlinks): Don't define here, just
6301         declare.
6302         * sysdeps/unix/sysv/linux/fpathconf.c: Change all callers.
6303         * time/tzfile.c (decode): Always inline.
6304         * wcsmbs/wcsnrtombs.c: Change type of inbuf to unsigned char*.
6305         Remove cast in tomb function call.
6306         * wcsmbs/wcsrtombs.c Likewise.
6307         * wcsmbs/wcstob.c: Introduce new temp variable to take pointer in
6308         tomb function call.
6310 2003-06-10  Ulrich Drepper  <drepper@redhat.com>
6312         * po/zh_CN.po: Update from translation team.
6314 2003-06-10  Jakub Jelinek  <jakub@redhat.com>
6316         * sysdeps/unix/sysv/linux/bits/in.h (IPV6_V6ONLY, IPV6_JOIN_ANYCAST,
6317         IPV6_LEAVE_ANYCAST, IPV6_IPSEC_POLICY, IPV6_XFRM_POLICY): Define.
6319 2003-06-10  Ulrich Drepper  <drepper@redhat.com>
6321         * inet/Makefile (aux): Add check_pf.
6322         * include/ifaddrs.h: Add prototype for __check_pf.
6323         * sysdeps/generic/check_pf.c: New file.
6324         * sysdeps/unix/sysv/linux/check_pf.c: New file.
6325         * sysdeps/unix/sysv/linux/ifaddrs.h (__no_netlink_support): Renamed
6326         from no_netlink_support.  Export.
6327         * sysdeps/posix/getaddrinfo.c (getaddrinfo): Don't call getifaddrs,
6328         call __check_pf.
6330         * sysdeps/generic/ifaddrs.h: Add libc_hidden_def.
6332         * sysdeps/posix/getaddrinfo.c (getaddrinfo): Don't leak memory
6333         from getifaddr calls.
6335 2003-06-09  Jakub Jelinek  <jakub@redhat.com>
6337         * sysdeps/unix/sysv/linux/kernel-features.h
6338         (__ASSUME_SETRESGID_SYSCALL): Define.
6339         * sysdeps/unix/sysv/linux/setegid.c: Use __ASSUME_SETRESGID_SYSCALL
6340         instead of __ASSUME_SETRESUID_SYSCALL.
6341         (setegid): Only use setresgid32 inline syscall if __NR_setresgid32 is
6342         defined.
6343         * sysdeps/unix/sysv/linux/seteuid.c (seteuid): Only use setresgid32
6344         inline syscall if __NR_setresuid32 is defined.
6345         * sysdeps/unix/sysv/linux/i386/setegid.c (setegid): Use
6346         __ASSUME_SETRESGID_SYSCALL instead of __ASSUME_SETRESUID_SYSCALL.
6347         * sysdeps/unix/sysv/linux/i386/setregid.c: Backout last changes.
6348         * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise.
6349         * sysdeps/unix/sysv/linux/sparc/sparc32/setegid.c (setegid): Protect
6350         code handling non-existant setresgid32 syscall with
6351         #if __ASSUME_SETRESGID_SYSCALL == 0.
6353 2003-06-09  Andreas Schwab  <schwab@suse.de>
6355         * sunrpc/Makefile (generated): Remove rpc-proto.c, rpc-proto.d.
6356         ($(rpcsvc:%.x=$(objpfx)x%$o)): Don't depend on
6357         $(objpfx)rpc-proto.d.
6358         (rpcsvc-dt-files, rpcsvc-depfiles): Define.  Include
6359         $(rpcsvc-depfiles) instead of $(objpfx)rpc-proto.d.
6360         ($(objpfx)rpc-proto.d, $(objpfx)rpc-proto.c): Remove rules.
6362 2003-06-08  Ulrich Drepper  <drepper@redhat.com>
6364         * sysdeps/unix/sysv/linux/seteuid.c (seteuid): Use setresuid32
6365         syscall directly if possible.  If __ASSUME_SETRESUID_SYSCALL is
6366         defined drop compatibility code.
6367         * sysdeps/unix/sysv/linux/setegid.c (setegid): Use setresgid32
6368         syscall directly if possible.  If __ASSUME_SETRESUID_SYSCALL is
6369         defined drop compatibility code.
6370         * sysdeps/unix/sysv/linux/i386/seteuid.c (seteuid): Use
6371         setresuid32 syscall directly if possible.
6372         * sysdeps/unix/sysv/linux/i386/setegid.c (setegid): Use
6373         setresgid32 syscall directly if possible.
6374         * sysdeps/unix/sysv/linux/i386/setregid.c (__setregid): Make POSIX
6375         compliant.  Don't change sgid.
6376         * sysdeps/unix/sysv/linux/i386/setreuid.c (__setreuid): Make POSIX
6377         compliant.  Don't change suid.
6379         * config.h.in: Add have-forced-unwind.
6380         * configure.in: Add AC_SUBST(libc_cv_forced_unwind).
6382 2003-06-07  Ulrich Drepper  <drepper@redhat.com>
6384         * test-skeleton.c (main): If EXPECTED_STATUS is defined check that
6385         returned status from child matches.
6387         * Makeconfig (gnulib): Add -lgcc_eh once again.
6389 2003-06-06  Ulrich Drepper  <drepper@redhat.com>
6391         * test-skeleton.c (main): Use TEMP_FAILURE_RETRY with waitpid.
6393         * sysdeps/unix/sysv/linux/i386/sysdep.h (ASMFMT_2): Only allow
6394         %edx for first parameter.  This means no pushl and therefore the
6395         unwind info isn't screwed up.
6397 2003-06-04  Richard Henderson  <rth@redhat.com>
6399         * sysdeps/alpha/dl-machine.h (RTLD_START): Fix top-of-stack backtrace.
6400         * sysdeps/unix/sysv/linux/alpha/clone.S: Likewise.
6401         * sysdeps/alpha/elf/start.S: Likewise.  Remove pointless allocation.
6402         * sysdeps/unix/sysv/linux/alpha/rt_sigaction.S: Use standard ldgp
6403         entry sequence and explicit relocs.  Add unwind info for sigreturn
6404         and rt_sigreturn.
6405         * configure.in (libc_cv_asm_cfi_directives): Test .cfi_remember_state.
6407         * sysdeps/unix/sysv/linux/alpha/syscalls.list (semtimedop): New.
6408         Annotate some parameters.
6409         * sysdeps/unix/sysv/linux/alpha/sysdep.h (__NR_semtimedop): New.
6411         * sysdeps/unix/sysv/linux/alpha/gettimeofday.S: Fix typo in conversion.
6413         * include/libc-symbols.h (symbol_set_declare): Use arrays
6414         of unspecified size.
6416 2003-06-04  Jakub Jelinek  <jakub@redhat.com>
6418         * config.make.in (ASFLAGS-config): New.
6419         * Makeconfig (ASFLAGS): Append $(ASFLAGS-config).
6420         * configure.in (libc_cv_as_noexecstack): New check.
6421         (ASFLAGS_config): Substitute.
6423 2003-06-04  Jakub Jelinek  <jakub@redhat.com>
6425         * sysdeps/i386/fpu/bits/mathinline.h (log1p, asinh, acosh, atanh,
6426         hypot, logb): Protect with #ifdef __FAST_MATH__.
6428 2003-06-04  Thorsten Kukuk  <kukuk@suse.de>
6430         * sysdeps/i386/fpu/bits/mathinline.h (ldexpf, ldexpl): Protect with
6431         #ifdef __FAST_MATH__.
6433 2003-06-03  Ulrich Drepper  <drepper@redhat.com>
6435         * sysdeps/generic/glob.c [HAVE_D_TYPE] (glob_in_dir): Also allow
6436         DT_LNK entries if GLOB_ONLYDIR is set [PR libc/5043].
6437         * posix/globtest.sh: Adjust for this change.
6439         * sysdeps/unix/sysv/linux/ifaddrs.c (netlink_open): Call getsockname
6440         to get the actual PID value used in the records passed up.
6441         (getifaddrs): Don't initialize nh.pid here.
6443 2003-06-02  Ulrich Drepper  <drepper@redhat.com>
6445         * sysdeps/unix/sysv/linux/ifaddrs.c (netlink_receive): Minor
6446         optimization.
6448         * po/zh_CN.po: Update from translation team.
6450         * posix/getconf.c (main): Also recognize names without the
6451         _POSIX_ prefix.
6453         * elf/Makefile (CFLAGS-dl-lookup.c): Define.
6455 2003-06-02  Bernd Schmidt  <bernds@redhat.com>
6457         * sysdeps/i386/fpu/bits/mathinline.h (sqrt, __sqrtl, ldexp,
6458         ldexpf, ldexpl): Only define if __FAST_MATH__.
6460 2003-06-02  Richard C. Bilson  <rcbilson@plg.uwaterloo.ca>
6462         Replace hard-coded offsets into struct sigcontext with generated file.
6463         * sysdeps/unix/sysv/linux/ia64/sigcontext-offsets.sym: New file.
6464         * sysdeps/unix/sysv/linux/ia64/Makefile
6465         [$(subdir) = stdlib] (gen-as-const-headers): Add it.
6466         * sysdeps/unix/sysv/linux/ia64/ucontext_i.h: Include it instead of
6467         defining SC_* macros here.
6469 2003-06-02  Jakub Jelinek  <jakub@redhat.com>
6471         * sysdeps/unix/sysv/linux/bits/sched.h (CLONE_PID): Remove.
6473 2003-06-01  Jakub Jelinek  <jakub@redhat.com>
6475         * sysdeps/i386/dl-machine.h: Include <sysdep.h>.
6477 2003-06-01  Ulrich Drepper  <drepper@redhat.com>
6479         * test-skeleton.c (main): Request getopt to not reorder the
6480         command line.
6482         * elf/Makefile (CFLAGS-dl-runtime.c): Define.
6484         * wcsmbs/wcpncpy.c (__wcpncpy): Fix broken implementation to match
6485         stpncpy.
6487 2003-05-31  Ulrich Drepper  <drepper@redhat.com>
6489         * sysdeps/unix/sysv/linux/ia64/bits/sigaction.h (SA_NOCLDWAIT): Define.
6491 2003-05-31  Jakub Jelinek  <jakub@redhat.com>
6493         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_plt_conflict):
6494         New function.
6495         (elf_machine_rela) <case R_PPC64_JMP_SLOT>: Avoid
6496         RESOLVE_CONFLICT_FIND_MAP.  If RESOLVE_CONFLICT_FIND_MAP is defined,
6497         call elf_machine_plt_conflict instead of elf_machine_fixup_plt.
6499 2003-05-31  Ulrich Drepper  <drepper@redhat.com>
6501         * sysdeps/i386/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE): Add
6502         CFI directives.
6504         * csu/Makefile: Fix Makefile warnings regarding Scrt1.o.
6506         * libio/fileops.c (_IO_file_open): Don't mark as inline.
6508         * sysdeps/ia64/elf/initfini.c (gmon_initializer): Mark with
6509         attribute used.
6511 2003-05-30  Ulrich Drepper  <drepper@redhat.com>
6513         * scripts/config.guess: Update from master copy.
6514         * scripts/config.sub: Likewise.
6516 2003-05-30  Guido Guenther  <agx@sigxcpu.org>
6518         * sysdeps/mips/mips64/bsd-_setjmp.S: Include <sys/asm.h> for
6519         SETUP_GP64 and friends.
6520         * sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h: Fix register
6521         names in internal_syscall{6,7}.
6522         * sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h: Likewise.
6523         * sysdeps/unix/sysv/linux/mips/pread.c [_MIPS_SIM == _ABI64]: Fix
6524         number of syscall arguments.
6525         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
6526         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
6527         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
6529 2003-05-30  Andreas Jaeger  <aj@suse.de>
6531         * sysdeps/x86_64/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
6532         Add CFI directives.
6534         * sysdeps/unix/sysv/linux/x86_64/sigaction.c (RESTORE2): Add CFI
6535         directives.
6537         * sysdeps/generic/sysdep.h: Add CFI_* macros for C files.
6539         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
6540         Add CFI directives.
6542 2003-05-30  Jakub Jelinek  <jakub@redhat.com>
6544         * sysdeps/powerpc/powerpc32/elf/start.S: Make code compilable with
6545         SHARED.
6547 2003-05-11  Andreas Schwab  <schwab@suse.de>
6549         * Makerules: Always use -MP together with -MD.
6550         (sed-remove-dotot): Substitute $(..) also at start of line.
6551         ($(stdio_lim:h=st)): Use -MD instead of SUNPRO_DEPENDENCIES.
6552         Generated defines with a single compiler call.
6553         Use $(sed-remove-dotdot).
6554         * mach/Makefile ($(objpfx)mach-syscalls.mk): Use -MD instead
6555         of DEPENDENCIES_OUTPUT, and use $(sed-remove-objpfx).
6556         * sysdeps/unix/sysv/linux/Makefile ($(objpfx)syscall-%.h):
6557         Use -MD instead of SUNPRO_DEPENDENCIES, and use $(sed-remove-objpfx).
6558         * sysdeps/unix/sysv/linux/mips/Makefile
6559         ($(objpfx)syscall-%.h): Likewise.
6561 2003-05-28  Roland McGrath  <roland@redhat.com>
6563         * malloc/malloc.h [! __GNUC__] (__const): Define if undefined.
6565 2003-05-26  Aldy Hernandez  <aldyh@redhat.com>
6567         * soft-fp/soft-fp.h (FP_EX_UNDERFLOW): Define to 0.
6569 2003-05-28  Roland McGrath  <roland@redhat.com>
6571         * sysdeps/unix/sysv/linux/ia64/setcontext.S: Pass fourth argument to
6572         rt_sigprocmask system call.
6573         * sysdeps/unix/sysv/linux/ia64/ucontext_i.h (SC_MASK): Fix value.
6574         From Peter A. Buhr <pabuhr@plg2.math.uwaterloo.ca>.
6576 2003-05-28  Ulrich Drepper  <drepper@redhat.com>
6578         * include/libc-symbols.h: Define hidden attribute for real also if
6579         LIBC_NONSHARED is defined.  Patch by Jakub Jelinek.
6581         * csu/Makefile: Add rules to build Scrt1.o.
6582         * sysdeps/i386/elf/start.S: Make code compilable with SHARED.
6583         * sysdeps/x86_64/elf/start.S: Likewise.
6585 2003-05-27  Jakub Jelinek  <jakub@redhat.com>
6587         * stdio-common/vfprintf.c (process_arg, process_string_arg): Use
6588         pa_int/pa_u_int instead of pa_short_int, pa_u_short_int and pa_char.
6589         * stdio-common/printf-parse.h (union printf_arg): Remove pa_char,
6590         pa_short_int, pa_u_short_int and pa_float.
6592 2003-05-26  Jakub Jelinek  <jakub@redhat.com>
6594         * libio/strops.c (_IO_str_init_static): Change into a wrapper around
6595         _IO_str_init_static_internal.
6596         (_IO_str_init_static_internal): Moved from _IO_str_init_static,
6597         change size argument to _IO_size_t, don't limit sprintf to 64M.
6598         (_IO_str_init_readonly): Call _IO_str_init_static_internal.
6599         * libio/wstrops.c (_IO_wstr_init_static): Change size argument to
6600         _IO_size_t, don't limit swprintf to 256M.
6601         (_IO_wstr_init_readonly): Remove.
6602         * libio/libioP.h (_IO_str_init_static_internal, _IO_wstr_init_static):
6603         Adjust prototypes.
6604         (_IO_wstr_init_readonly): Remove prototype.
6605         * libio/iovsprintf.c (_IO_vsprintf): Use
6606         _IO_str_init_static_internal instead of INTUSE(_IO_str_init_static).
6607         * libio/iovsscanf.c (_IO_vsscanf): Likewise.
6608         * libio/memstream.c (open_memstream): Likewise.
6609         * libio/obprintf.c (_IO_obstack_vfprintf): Likewise.
6610         * libio/vasprintf.c (_IO_vasprintf): Likewise.
6611         * libio/vsnprintf.c (_IO_vsnprintf): Likewise.
6612         * stdio-common/tst-sprintf.c (main): Add new test.
6614 2003-05-26  Ulrich Drepper  <drepper@redhat.com>
6616         * stdio-common/vfprintf.c (vfprintf): Be bug-compatible with some
6617         other implementation in respect of multiple uses of parameter with
6618         different types.
6620 2003-05-25  Ulrich Drepper  <drepper@redhat.com>
6622         * sysdeps/unix/sysv/linux/kernel-features.h: Define
6623         __ASSUME_FUTEX_REQUEUE for >= 2.5.70.
6625 2003-05-22  Andreas Jaeger  <aj@suse.de>
6627         * sysdeps/unix/sysv/linux/x86_64/gettimeofday.S: Add CFI
6628         directives.
6629         * sysdeps/unix/sysv/linux/x86_64/time.S: Likewise.
6630         * sysdeps/x86_64/strtok.S: Likewise.
6632 2003-05-20  Guido Guenther  <agx@sigxcpu.org>
6634         * sysdeps/unix/sysv/linux/mips/bits/siginfo.h: Change SI_ASYNCNL
6635         to -60 and define SI_TKILL.
6637 2003-05-21  H.J. Lu  <hongjiu.lu@intel.com>
6639         * math/test-fenv.c (feexcp_nomask_test): Fix comment.
6640         (feexcp_mask_test): Likewise.
6642 2003-05-21  Ulrich Drepper  <drepper@redhat.com>
6644         * locale/programs/locale.c (main): Fix typo in last patch.
6646         * csu/elf-init.c: Mark __preinit_array_start, __preinit_array_end,
6647         __init_array_start, __init_array_end, __fini_array_start, and
6648         __fini_array_end as hidden.
6650 2003-05-21  Petter Reinholdtsen  <pere@hungry.com>
6652         * locale/programs/locale.c (main): Report an error if setlocale()
6653         fails [PR libc/2254].
6655 2003-05-21  Jakub Jelinek  <jakub@redhat.com>
6657         * sysdeps/unix/sysv/linux/s390/system.c: New file.
6659 2003-05-21  Jakub Jelinek  <jakub@redhat.com>
6661         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (LOADARGS_0,
6662         LOADARGS_1, LOADARGS_2, LOADARGS_3, LOADARGS_4, LOADARGS_5,
6663         LOADARGS_6): Don't error if syscall argument is a string literal.
6664         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h (LOADARGS_0,
6665         LOADARGS_1, LOADARGS_2, LOADARGS_3, LOADARGS_4, LOADARGS_5,
6666         LOADARGS_6): Likewise.
6668 2003-05-21  Andreas Jaeger  <aj@suse.de>
6670         * sysdeps/generic/sysdep.h (cfi_offset, cfi_startproc,
6671         cfi_endproc, cfi_def_cfa, cfi_def_ccfa_register,
6672         cfi_def_cfa_offset, cfi_adjust_cfa_offset, cfi_offset): Define.
6674         * sysdeps/x86_64/sysdep.h (CALL_MCOUNT): Add cfi directives.
6675         (ENTRY): Likewise.
6676         (END): Likewise.
6678         * configure.in: Test for asm cfi directives.
6680         * config.h.in: Add HAVE_ASM_CFI_DIRECTIVES.
6682 2003-05-17  Andreas Jaeger  <aj@suse.de>
6684         * sysdeps/unix/sysv/linux/x86_64/syscall.S: Revert last patch.
6686         * rt/tst-clock_nanosleep.c: Include <time.h> for clock_nanosleep.
6688 2003-05-16  Ulrich Drepper  <drepper@redhat.com>
6690         * rt/Makefile (tests): Add tst-clock_nanosleep.
6691         * rt/tst-clock_nanosleep.c: New file.
6692         * posix/Makefile (tests): Add tst-nanosleep.
6693         * posix/tst-nanosleep.c: New file.
6695         * sysdeps/unix/clock_nanosleep.c (CPUCLOCK_P): Fix definition.
6697         * include/features.h (__USE_XOPEN2K): Define also for
6698         _POSIX_C_SOURCE>=200112L.
6700         * sysdeps/unix/sysv/linux/sigwaitinfo.c (do_sigwaitinfo): Fold
6701         SI_TKILL code into SI_USER.
6702         * sysdeps/unix/sysv/linux/sigtimedwait.c (do_sigtimedwait): Likewise.
6704         * sysdeps/posix/sigpause.c (do_sigpause): Use sigdelset after all.
6706 2003-05-15  Jakub Jelinek  <jakub@redhat.com>
6708         * sysdeps/powerpc/powerpc32/dl-machine.c (_dl_reloc_overflow):
6709         Remove sym argument, always use refsym.
6710         (__process_machine_rela): Adjust callers.
6711         * sysdeps/powerpc/powerpc64/dl-machine.c (_dl_reloc_overflow):
6712         Likewise.
6713         * sysdeps/powerpc/powerpc32/dl-machine.h (_dl_reloc_overflow):
6714         Adjust prototype.
6715         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela): Likewise.
6717 2003-05-15  Ulrich Drepper  <drepper@redhat.com>
6719         * sysdeps/generic/dl-sysdep.c (_dl_show_auxv): Fix typo
6720         (DL_NEED_SYSINFO -> NEED_DL_SYSINFO).  If aux value is not known
6721         print numeric values.
6723 2003-05-12  Thorsten Kukuk  <kukuk@suse.de>
6725         * inet/netinet/igmp.h: Sync with Linux Kernel 2.5.69 and *BSD.
6727 2003-05-14  Andreas Schwab  <schwab@suse.de>
6729         * sysdeps/unix/sysv/linux/ia64/umount.c: New file.
6731 2003-05-14  Jakub Jelinek  <jakub@redhat.com>
6733         * elf/rtld.c (dl_main): For LD_TRACE_PRELINKING print search scope
6734         even if no DT_NEEDED is present.
6736 2003-05-13  David Mosberger  <davidm@hpl.hp.com>
6738         * sysdeps/unix/sysv/linux/ia64/setjmp.S: Fix the fix from
6739         2003-03-27: setjmp is NOT a leaf-routine (due to the call to
6740         __sigjmp_save) so we can't keep the saved unat value in a scratch
6741         register (r16).  Use loc2 instead.
6743 2003-05-13  Ulrich Drepper  <drepper@redhat.com>
6745         * csu/Makefile: Do compile elf-init with PIC flag since in dynamic
6746         binaries it has to be relocatable.
6748         * sysdeps/unix/sysv/linux/waitpid.c: Use waitpid syscall is available.
6750 2003-05-12  Steven Munroe  <sjmunroe@us.ibm.com>
6752         * sysdeps/powerpc/bits/atomic.h
6753         (__arch_compare_and_exchange_bool_8_rel): Define.
6754         (__arch_compare_and_exchange_bool_16_rel): Define.
6755         (__ARCH_REL_INSTR): Define if not already defined.
6756         (__arch_atomic_exchange_and_add_32): Add "memory" to clobber list.
6757         (__arch_atomic_decrement_if_positive_32):
6758         Add "memory" to clobber list.
6759         (__arch_compare_and_exchange_val_32_acq): Remove release sync.
6760         (__arch_compare_and_exchange_val_32_rel): Define.
6761         (__arch_atomic_exchange_32): Remove.
6762         (__arch_atomic_exchange_32_acq): Define.
6763         (__arch_atomic_exchange_32_rel): Define.
6764         (atomic_compare_and_exchange_val_rel): Define.
6765         (atomic_exchange_acq): Use __arch_atomic_exchange_*_acq forms.
6766         (atomic_exchange_rel): Define.
6767         * sysdeps/powerpc/powerpc32/bits/atomic.h
6768         (__arch_compare_and_exchange_bool_32_acq): Remove release sync.
6769         (__arch_compare_and_exchange_bool_32_rel): Define.
6770         (__arch_compare_and_exchange_bool_64_rel): Define.
6771         (__arch_compare_and_exchange_val_64_rel): Define.
6772         (__arch_atomic_exchange_64): Remove.
6773         (__arch_atomic_exchange_64_acq): Define.
6774         (__arch_atomic_exchange_64_rel): Define.
6775         * sysdeps/powerpc/powerpc64/bits/atomic.h
6776         (__arch_compare_and_exchange_bool_32_rel): Define.
6777         (__arch_compare_and_exchange_bool_64_acq): Remove release sync.
6778         (__arch_compare_and_exchange_bool_64_rel): Define.
6779         (__arch_compare_and_exchange_val_64_acq): Remove release sync.
6780         (__arch_compare_and_exchange_val_64_rel): Define.
6781         (__arch_atomic_exchange_64): Remove.
6782         (__arch_atomic_exchange_64_acq): Define.
6783         (__arch_atomic_exchange_64_rel): Define.
6784         (__arch_atomic_exchange_and_add_64): Add "memory" to clobber list.
6785         (__arch_atomic_decrement_if_positive_64):
6786         Add "memory" to clobber list.
6787         [!UP](__ARCH_REL_INSTR): Define as lwsync.
6789 2003-05-11  Andreas Schwab  <schwab@suse.de>
6791         * io/Makefile ($(objpfx)ftwtest.out): Use absolute file names.
6793 2003-05-11  Ulrich Drepper  <drepper@redhat.com>
6795         * time/tst-strftime.c (do_test): Add tests for - flag.
6797 2003-05-11  Jim Meyering  <jim@meyering.net>
6799         * time/strftime.c (my_strftime): Let the `-' (no-pad) flag affect
6800         the space-padded-by-default conversion specifiers, %e, %k, %l.
6802 2003-05-11  Andreas Schwab  <schwab@suse.de>
6804         * sysdeps/generic/sched_setaffinity.c: Fix parameter name.
6806 2003-05-10  Ulrich Drepper  <drepper@redhat.com>
6808         * sysdeps/generic/bits/sched.h: Define cpu_set_t only if not
6809         already defined and when really needed.
6810         * sysdeps/unix/sysv/linux/bits/sched.h: Likewise.
6812 2003-05-09  Thorsten Kukuk  <kukuk@suse.de>
6814         * sysdeps/unix/sysv/linux/netinet/igmp.h: Don't include kernel
6815         headers, add defines from kernel header, move it from here...
6816         * inet/netinet/igmp.h: ... to here.
6817         * inet/Makefile (headers): Add netinet/igmp.h.
6818         * sysdeps/unix/sysv/linux/Makefile: Remove netinet/igmp.h.
6819         * sysdeps/unix/sysv/linux/Dist: Remove netinet/igmp.h.
6821 2003-05-10  Ulrich Drepper  <drepper@redhat.com>
6823         * sysdeps/pthread/lio_listio64.c (lio_listio64): If SIG == NULL,
6824         use dummy sigevent structure with SIGEV_NONE [PR libc/5015].
6826 2003-05-09  Thorsten Kukuk <kukuk@suse.de>
6828         * libio/bits/stdio.h: Sync prototypes with libio/stdio.h
6829         (remove __THROW from possible cancellation points).
6831 2003-05-10  Ulrich Drepper  <drepper@redhat.com>
6833         * posix/sched.h (CPU_SETSIZE): Define.
6835 2003-05-09  Ulrich Drepper  <drepper@redhat.com>
6837         * Makeconfig (gnulib): Remove -lgcc_eh again.
6839         * posix/sched.h: Change prototypes of sched_getaffinity and
6840         sched_setaffinity.  Define CPU_SET, CPU_CLR, CPU_ISSET, and CPU_ZERO.
6841         * sysdeps/generic/sched_getaffinity.c: Adjust definition.
6842         * sysdeps/generic/sched_setaffinity.c: Likewise.
6843         * sysdeps/generic/bits/sched.h: Define __CPU_SETSIZE, __NCPUBITS,
6844         __CPUELT, __CPUMASK, cpu_set_t, __cpu_mask, __CPU_ZERO, __CPU_SET,
6845         __CPU_CLR, and __CPU_ISSET.
6846         * sysdeps/unix/sysv/linux/bits/sched.h: Likewise.
6847         * sysdeps/unix/sysv/linux/sched_getaffinity.c: New file.
6848         * sysdeps/unix/sysv/linux/sched_setaffinity.c: New file.
6850         * include/atomic.h (atomic_exchange_acq): Renamed from atomic_exchange.
6851         (atomic_exchange_rel): New #define.
6852         * sysdeps/ia64/bits/atomic.h: Likewise.
6853         * sysdeps/i386/i486/bits/atomic.h (atomic_exchange_acq): Renamed from
6854         atomic_exchange.
6855         * sysdeps/m68k/m68020/bits/atomic.h: Likewise.
6856         * sysdeps/powerpc/bits/atomic.h: Likewise.
6857         * sysdeps/sparc/sparc32/sparcv9/bits/atomic.h: Likewise.
6858         * sysdeps/sparc/sparc64/bits/atomic.h: Likewise.
6859         * sysdeps/x86_64/bits/atomic.h: Likewise.
6860         * csu/tst-atomic.c: Use atomic_exchange_acq instead of atomic_exchange.
6862         * sysdeps/unix/sysv/linux/x86_64/get_clockfreq.c: New file.
6864 2003-05-08  Ulrich Drepper  <drepper@redhat.com>
6866         * malloc/thread-m.h: Remove special handling of thread_atfork if
6867         HAVE_register_atfork_malloc is defined.
6869 2003-05-07  Andreas Jaeger  <aj@suse.de>
6871         * sysdeps/unix/sysv/linux/x86_64/syscall.S: Add DWARF2 unwind
6872         information.
6874 2003-05-06  Ulrich Drepper  <drepper@redhat.com>
6876         * libio/oldiofdopen.c (_IO_old_fdopen): Use _IO_old_init not _IO_init.
6877         * libio/oldiofopen.c (_IO_old_fopen): Likewise.
6878         * libio/libioP.h: Declare _IO_old_init.
6879         * libio/genops.c (_IO_no_init): Split in two.  New function
6880         _IO_old_init.
6882 2003-05-05  Ulrich Drepper  <drepper@redhat.com>
6884         * sysdeps/generic/enbl-secure.c (__libc_enable_secure_decided): New
6885         variable.
6886         (__libc_init_secure): Don't do anything if __libc_enable_secure_decided
6887         is nonzero.
6888         * include/unistd.h: Declare __libc_enable_secure_decided.
6889         * elf/dl-support.c (_dl_aux_init): Recognize AT_UID, AT_EUID, AT_GID,
6890         and AT_EGID.  If all found, set __libc_enable_secure and
6891         __libc_enable_secure_decided.
6893         * sysdeps/generic/libc-start.c [!SHARED]: Call
6894         __libc_check_standard_fds after __libc_init_first.
6896 2003-05-05  Roland McGrath  <roland@redhat.com>
6898         * Makerules (common-before-compile): New variable.
6899         ($(common-objpfx)%.make): Depend on that instead of $(before-compile).
6900         ($(common-objpfx)%.h $(common-objpfx)%.h.d): Likewise.  Move this rule
6901         to after all setting of before-compile.
6903 2003-05-05  Jakub Jelinek  <jakub@redhat.com>
6905         * sysdeps/ia64/bits/atomic.h (__arch_compare_and_exchange_val_8_acq,
6906         __arch_compare_and_exchange_val_16_acq): Cast 0 to mem's type.
6907         * sysdeps/powerpc/powerpc32/bits/atomic.h
6908         (__arch_compare_and_exchange_val_64_acq): Likewise.
6909         * sysdeps/sparc/sparc32/sparcv9/bits/atomic.h
6910         (__arch_compare_and_exchange_val_8_acq,
6911         __arch_compare_and_exchange_val_16_acq,
6912         __arch_compare_and_exchange_val_64_acq): Likewise.
6913         * sysdeps/sparc/sparc64/bits/atomic.h
6914         (__arch_compare_and_exchange_val_8_acq,
6915         __arch_compare_and_exchange_val_16_acq): Likewise.
6916         * sysdeps/s390/bits/atomic.h (__arch_compare_and_exchange_val_8_acq,
6917         __arch_compare_and_exchange_val_16_acq,
6918         __arch_compare_and_exchange_val_64_acq): Likewise.
6919         * sysdeps/unix/sysv/linux/sh/bits/atomic.h
6920         (__arch_compare_and_exchange_val_64_acq): Likewise.
6921         * sysdeps/s390/s390-64/backtrace.c (__backtrace): Add cast to shut
6922         up warning.
6923         * sysdeps/s390/fpu/fegetenv.c (fegetenv): Likewise.
6925         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h
6926         (INLINE_SYSCALL, INTERNAL_SYSCALL_DIRECT, INTERNAL_SYSCALL_SVC0):
6927         Return long instead of int.
6928         (INTERNAL_SYSCALL_ERROR_P): Cast val to unsigned long, replace
6929         0xfffff001u with -4095UL.
6931 2003-05-05  Andreas Jaeger  <aj@suse.de>
6933         * sysdeps/x86_64/fpu_control.h: New from i386.
6935         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (__NR_semtimedop):
6936         Define if not defined.
6938         * sunrpc/Makefile (generated-dirs): New variable.
6939         * resolv/Makefile (generated): New variable.
6941 2003-05-04  Roland McGrath  <roland@redhat.com>
6943         * csu/Makefile ($(csu-dummies) target rule): Don't use a temp C file.
6944         Depend on $(before-compile).
6946         * csu/Makefile ($(objpfx)crt%.o): Replace implicit rule with a static
6947         pattern rule.  The implicit rule could be ruled out when $(objpfx)
6948         didn't exist at the time of its consideration (ugh!).
6950         * Makerules (+make-deps): Fix target matching.
6951         Use $(sed-remove-dotdot).
6953 2003-05-03  Ulrich Drepper  <drepper@redhat.com>
6955         * nscd/nscd.c (main): Parse config file right after parsing
6956         parameters.  Then, if get_stats is true, call receive_print_stats.
6957         Drop parameter from nscd_init call.
6958         (get_stats): New variable.
6959         (parse_opt): Set get_stats, don't call receive_print_stats here.
6960         * nscd/nscd.h: Declare dbs, stat_user, and stat_uid.  Adjust nscd_init
6961         prototype.
6962         * nscd/connections.c (stat_user, stat_uid): New variables.
6963         (dbs): Make global.
6964         (nscd_init): Don't read configuration file here.  Drop parameter.
6965         (handle_request): Cleanup handling of non-database lookup requests.
6966         * nscd/nscd_conf.c (nscd_parse_file): Recognize stat-user entry.
6967         Get UID of the specified user.  Use xstrdup instead of strdup.
6968         * nscd/nscd_stat.c (receive_print_stats): Check UID.  If not zero,
6969         check stat_user.
6970         * nscd/Makefile (nscd-modules): Add xstrdup.
6971         * nscd/nscd.conf: Document stat-user entry.
6973 2003-05-03  H.J. Lu  <hongjiu.lu@intel.com>
6975         * sysdeps/unix/sysv/linux/ia64/sysdep.h (__NR_semtimedop): Define
6976         if not defined.
6978 2003-04-22  Roland McGrath  <roland@redhat.com>
6980         * elf/elf.h (AT_SYSINFO_EHDR): New macro, replaces AT_SYSINFO_EH_FRAME.
6981         * sysdeps/generic/ldsodefs.h (struct rtld_global): Remove
6982         dl_sysinfo_eh_frame member, add dl_sysinfo_dso member instead.
6983         * elf/dl-support.c: Update defn.
6984         * sysdeps/generic/libc-start.c: Don't call __register_frame_info_bases.
6985         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start) [NEED_DL_SYSINFO]:
6986         Set GL(dl_sysinfo_dso) from AT_SYSINFO_EHDR.
6987         (_dl_show_auxv): Grok AT_SYSINFO_EHDR, not AT_SYSINFO_EH_FRAME.
6988         * elf/rtld.c (dl_main) [NEED_DL_SYSINFO]: If GL(dl_sysinfo_dso) is
6989         set, set up a link_map for the preloaded, prelinked object.
6991 2003-05-03  Roland McGrath  <roland@redhat.com>
6993         * sysdeps/gnu/Makefile (generated): Append errlist-compat.c here, ...
6994         * stdio-common/Makefile: ... not here.
6996         * csu/Makefile ($(objpfx)initfini.s): Depend on $(before-compile).
6997         * sysdeps/gnu/Makefile ($(objpfx)errlist-compat.c): Likewise.
6999 2003-05-02  Ulrich Drepper  <drepper@redhat.com>
7001         * sysdeps/unix/sysv/linux/s390/semtimedop.c: New file.
7003         * sysdeps/unix/sysv/linux/alpha/ipc_priv.h (IPCOP_semtimedop): Define.
7005         * sysdeps/generic/dl-fptr.c (_dl_make_fptr): Use 0 not NULL for
7006         comparing ftab elements.
7007         (_dl_unmap): Fix typo in test.
7008         (_dl_make_fptr): Fix typos introduced in last change.
7010         * sysdeps/generic/dl-fptr.c: Put back one optimization from the
7011         original patch.  Use non-exported symbols.  Mark translatable
7012         strings.  Pretty printing.
7014 2003-05-02  Roland McGrath  <roland@redhat.com>
7016         * Makerules (do-stamp): Do $(make-target-directory).
7018 2003-04-07  H.J. Lu  <hjl@gnu.org>
7020         * sysdeps/generic/dl-fptr.c: Modify to remove the lock.
7022 2003-04-03  H.J. Lu  <hjl@gnu.org>
7024         * sysdeps/ia64/dl-fptr.c: Moved to ...
7025         * sysdeps/generic/dl-fptr.c: Here.
7027         * sysdeps/generic/dl-fptr.h: New.
7028         * sysdeps/ia64/dl-fptr.h: New.
7030         * sysdeps/ia64/dl-symaddr.c: Moved to ...
7031         * sysdeps/generic/dl-symaddr.c: here.
7033         * sysdeps/ia64/dl-machine.h: Include <dl-fptr.h>.
7034         (IA64_BOOT_FPTR_TABLE_LEN): Removed.
7035         (ia64_fdesc): Likewise.
7036         (ia64_fdesc_table): Likewise.
7037         (__ia64_make_fptr): Likewise.
7038         (__ia64_init_bootstrap_fdesc_table): Replace __ia64_boot_fptr_table
7039         with _dl_boot_fptr_table.
7040         (elf_machine_runtime_setup): Replace `struct ia64_fdesc' with
7041         `struct fdesc'.
7042         (elf_machine_rela): Replace __ia64_make_fptr with _dl_make_fptr.
7044 2003-05-01  Roland McGrath  <roland@redhat.com>
7046         * sysdeps/generic/bp-thunks.h: Protect includes with [!__ASSEMBLER__].
7047         * sysdeps/unix/sysv/linux/i386/bp-thunks.h: Likewise.
7049         * sysdeps/unix/sysv/linux/Makefile ($(objpfx)syscall-%.h):
7050         Use $(make-target-directory).
7051         * sysdeps/unix/Makefile ($(objpfx)stub-syscalls.c): Likewise.
7053         * Makerules (compile-mkdep-flags): New variable, pass -MD -MF $@.d.
7054         (compile-command.S): Don't use ifndef.  Append $(compile-mkdep-flags).
7055         (compile-command.s, compile-command.c): Likewise.
7056         ($(objpfx)%.d): All such pattern rules removed.
7057         ($(+sysdir_pfx)sysd-rules): Don't generate them.
7058         ($(common-objpfx)dummy.d): Target removed.
7059         (make-dummy-dep): Variable removed.
7060         (generate-md5): Likewise.
7061         (%.d: %.dt): New pattern rule.
7062         (+depfiles): Use $(wildcard) function to get just existing *.d files
7063         and .d files for existing *.dt files.
7064         (common-clean): Remove all *.d and *.dt files.
7065         (before-compile): Add $(objpfx). when it doesn't exist,
7066         regardless of $(no_deps).
7067         * elf/rtld-Rules ($(objpfx)rtld-%.d): All such pattern rules removed.
7068         (rtld-depfiles): Use .os.d instead of .d names.
7069         Include existing *.d files and .d files for existing *.dt files.
7071         * Makerules ($(common-objpfx)%.make): Protect with [! subdir].
7072         Use -MD, -MT and -MF flags instead of SUNPRO_DEPENDENCIES variable.
7074         * sysdeps/unix/Makefile ($(common-objpfx)s-%.d): Remove compat.h hack.
7075         Do s-*.d includes only if we have some syscall routines in this subdir.
7077         * include/libc-symbols.h (libc_freeres_ptr): Use %nobits instead of
7078         @nobits.  The former is accepted by gas on any ELF platform.
7080 2003-05-01  Ulrich Drepper  <drepper@redhat.com>
7082         * sysdeps/unix/sysv/linux/semtimedop.c: New file.
7084         * malloc/malloc.c (mSTATs): Call ptmalloc_init if necessary.
7086 2003-04-29  Andreas Schwab  <schwab@suse.de>
7088         * string/test-strcat.c (do_one_test): Fix attribute name.
7090 2003-04-30  Alexandre Oliva  <aoliva@redhat.com>
7092         * sysdeps/unix/sysv/linux/mips/sys/ucontext.h (ucontext): Make
7093         uc_flags long for all ABIs.
7095 2003-04-30  Andreas Jaeger  <aj@suse.de>
7097         * sysdeps/unix/sysv/linux/x86_64/sys/debugreg.h
7098         (DR_CONTROL_RESERVED): Use correct value for 64-bit.
7099         Reported by Andrew Derrick Balsa <andrebalsa@mailingaddress.org>.
7100         Add bi-arch support.
7102 2003-04-30  Ulrich Drepper  <drepper@redhat.com>
7104         * malloc/malloc.c (mEMALIGn): Define alias __memalign_internal.
7105         (__posix_memalign): Use __memalign_internal instead of memalign.
7107 2003-04-29  Roland McGrath  <roland@redhat.com>
7109         * configure.in: Search for AUTOCONF unconditionally.
7110         Just don't complain about missing it under --without-cvs.
7112         * include/libc-symbols.h (__symbol_set_attribute): New macro,
7113         give hidden for [SHARED] and weak for [! SHARED].
7114         (symbol_set_declare): Use that.  Never need weak_extern these days.
7115         * Makerules ($(common-objpfx)shlib.lds): Go back to using PROVIDE.
7116         Depend on $(..)Makerules.
7118 2003-04-29  Ulrich Drepper  <drepper@redhat.com>
7120         * sysdeps/unix/sysv/linux/ifaddrs.c (getifaddrs): Use __ protected
7121         variants of socket, bind, recvmsg, and sendto.
7123         * sysdeps/i386/fpu/ftestexcept.c: Also check SSE status word.
7125         * include/signal.h: Use libc_hidden_proto for sigaddset and sigdelset.
7126         * signal/sigaddset.c: Add libc_hidden_def.
7127         * signal/sigdelset.c: Likewise.
7129 2003-04-29  Jakub Jelinek  <jakub@redhat.com>
7131         * sysdeps/i386/i486/string-inlines.c (__memcpy_g, __strchr_g): Move
7132         to the end of the file.
7134         * configure.in: Change __oline__ to $LINENO.
7135         (HAVE_BUILTIN_REDIRECTION): New check.
7136         * config.h.in (HAVE_BUILTIN_REDIRECTION): Add.
7137         * include/libc-symbols.h (libc_hidden_builtin_proto,
7138         libc_hidden_builtin_def, libc_hidden_builtin_weak,
7139         libc_hidden_builtin_ver): Define.
7140         * include/string.h (memchr, memcpy, memmove, memset, strcat, strchr,
7141         strcmp, strcpy, strcspn, strlen, strncmp, strncpy, strpbrk, strrchr,
7142         strspn, strstr): Add libc_hidden_builtin_proto.
7143         * intl/plural.y: Include string.h.
7144         * sysdeps/alpha/alphaev6/memchr.S (memchr): Add
7145         libc_hidden_builtin_def.
7146         * sysdeps/alpha/alphaev6/memcpy.S (memcpy): Likewise.
7147         * sysdeps/alpha/alphaev6/memset.S (memset): Likewise.
7148         * sysdeps/alpha/alphaev67/strcat.S (strcat): Likewise.
7149         * sysdeps/alpha/alphaev67/strchr.S (strchr): Likewise.
7150         * sysdeps/alpha/alphaev67/strlen.S (strlen): Likewise.
7151         * sysdeps/alpha/alphaev67/strrchr.S (strrchr): Likewise.
7152         * sysdeps/alpha/memchr.S (memchr): Likewise.
7153         * sysdeps/alpha/memset.S (memset): Likewise.
7154         * sysdeps/alpha/strcat.S (strcat): Likewise.
7155         * sysdeps/alpha/strchr.S (strchr): Likewise.
7156         * sysdeps/alpha/strcmp.S (strcmp): Likewise.
7157         * sysdeps/alpha/strcpy.S (strcpy): Likewise.
7158         * sysdeps/alpha/strlen.S (strlen): Likewise.
7159         * sysdeps/alpha/strncmp.S (strncmp): Likewise.
7160         * sysdeps/alpha/strncpy.S (strncpy): Likewise.
7161         * sysdeps/alpha/strrchr.S (strrchr): Likewise.
7162         * sysdeps/arm/memset.S (memset): Likewise.
7163         * sysdeps/arm/strlen.S (strlen): Likewise.
7164         * sysdeps/generic/memchr.c (memchr): Likewise.
7165         * sysdeps/generic/memcpy.c (memcpy): Likewise.
7166         * sysdeps/generic/memmove.c (memmove): Likewise.
7167         * sysdeps/generic/memset.c (memset): Likewise.
7168         * sysdeps/generic/strcat.c (strcat): Likewise.
7169         * sysdeps/generic/strchr.c (strchr): Likewise.
7170         * sysdeps/generic/strcmp.c (strcmp): Likewise.
7171         * sysdeps/generic/strcpy.c (strcpy): Likewise.
7172         * sysdeps/generic/strcspn.c (strcspn): Likewise.
7173         * sysdeps/generic/strlen.c (strlen): Likewise.
7174         * sysdeps/generic/strncmp.c (strncmp): Likewise.
7175         * sysdeps/generic/strncpy.c (strncpy): Likewise.
7176         * sysdeps/generic/strpbrk.c (strpbrk): Likewise.
7177         * sysdeps/generic/strrchr.c (strrchr): Likewise.
7178         * sysdeps/generic/strspn.c (strspn): Likewise.
7179         * sysdeps/generic/strstr.c (strstr): Likewise.
7180         * sysdeps/i386/i486/strcat.S (strcat): Likewise.
7181         * sysdeps/i386/i486/strlen.S (strlen): Likewise.
7182         * sysdeps/i386/i586/memcpy.S (memcpy): Likewise.
7183         * sysdeps/i386/i586/memset.S (memset): Likewise.
7184         * sysdeps/i386/i586/strchr.S (strchr): Likewise.
7185         * sysdeps/i386/i586/strcpy.S (strcpy): Likewise.
7186         * sysdeps/i386/i586/strlen.S (strlen): Likewise.
7187         * sysdeps/i386/i686/memcpy.S (memcpy): Likewise.
7188         * sysdeps/i386/i686/memmove.S (memmove): Likewise.
7189         * sysdeps/i386/i686/memset.S (memset): Likewise.
7190         * sysdeps/i386/i686/strcmp.S (strcmp): Likewise.
7191         * sysdeps/i386/memchr.S (memchr): Likewise.
7192         * sysdeps/i386/memset.c (memset): Likewise.
7193         * sysdeps/i386/strchr.S (strchr): Likewise.
7194         * sysdeps/i386/strcspn.S (strcspn): Likewise.
7195         * sysdeps/i386/strlen.c (strlen): Likewise.
7196         * sysdeps/i386/strpbrk.S (strpbrk): Likewise.
7197         * sysdeps/i386/strrchr.S (strrchr): Likewise.
7198         * sysdeps/i386/strspn.S (strspn): Likewise.
7199         * sysdeps/ia64/memchr.S (memchr): Likewise.
7200         * sysdeps/ia64/memcpy.S (memcpy): Likewise.
7201         * sysdeps/ia64/memmove.S (memmove): Likewise.
7202         * sysdeps/ia64/memset.S (memset): Likewise.
7203         * sysdeps/ia64/strcat.S (strcat): Likewise.
7204         * sysdeps/ia64/strchr.S (strchr): Likewise.
7205         * sysdeps/ia64/strcmp.S (strcmp): Likewise.
7206         * sysdeps/ia64/strcpy.S (strcpy): Likewise.
7207         * sysdeps/ia64/strlen.S (strlen): Likewise.
7208         * sysdeps/ia64/strncmp.S (strncmp): Likewise.
7209         * sysdeps/ia64/strncpy.S (strncpy): Likewise.
7210         * sysdeps/m68k/memchr.S (memchr): Likewise.
7211         * sysdeps/m68k/strchr.S (strchr): Likewise.
7212         * sysdeps/mips/mips64/memcpy.S (memcpy): Likewise.
7213         * sysdeps/mips/mips64/memset.S (memset): Likewise.
7214         * sysdeps/mips/memcpy.S (memcpy): Likewise.
7215         * sysdeps/mips/memset.S (memset): Likewise.
7216         * sysdeps/powerpc/powerpc32/memset.S (memset): Likewise.
7217         * sysdeps/powerpc/powerpc32/strchr.S (strchr): Likewise.
7218         * sysdeps/powerpc/powerpc32/strcmp.S (strcmp): Likewise.
7219         * sysdeps/powerpc/powerpc32/strcpy.S (strcpy): Likewise.
7220         * sysdeps/powerpc/powerpc32/strlen.S (strlen): Likewise.
7221         * sysdeps/powerpc/powerpc64/memcpy.S (memcpy): Likewise.
7222         * sysdeps/powerpc/powerpc64/memset.S (memset): Likewise.
7223         * sysdeps/powerpc/powerpc64/strchr.S (strchr): Likewise.
7224         * sysdeps/powerpc/powerpc64/strcmp.S (strcmp): Likewise.
7225         * sysdeps/powerpc/powerpc64/strcpy.S (strcpy): Likewise.
7226         * sysdeps/powerpc/powerpc64/strlen.S (strlen): Likewise.
7227         * sysdeps/powerpc/strcat.c (strcat): Likewise.
7228         * sysdeps/sparc/sparc32/memchr.S (memchr): Likewise.
7229         * sysdeps/sparc/sparc32/memcpy.S (memcpy): Likewise.
7230         * sysdeps/sparc/sparc32/memset.S (memset): Likewise.
7231         * sysdeps/sparc/sparc32/strcat.S (strcat): Likewise.
7232         * sysdeps/sparc/sparc32/strchr.S (strchr, strrchr): Likewise.
7233         * sysdeps/sparc/sparc32/strcmp.S (strcmp): Likewise.
7234         * sysdeps/sparc/sparc32/strcpy.S (strcpy): Likewise.
7235         * sysdeps/sparc/sparc32/strlen.S (strlen): Likewise.
7236         * sysdeps/sparc/sparc64/sparcv9b/memcpy.S (memcpy, memmove): Likewise.
7237         * sysdeps/sparc/sparc64/memchr.S (memchr): Likewise.
7238         * sysdeps/sparc/sparc64/memcpy.S (memcpy, memmove): Likewise.
7239         * sysdeps/sparc/sparc64/memset.S (memset): Likewise.
7240         * sysdeps/sparc/sparc64/strcat.S (strcat): Likewise.
7241         * sysdeps/sparc/sparc64/strchr.S (strchr, strrchr): Likewise.
7242         * sysdeps/sparc/sparc64/strcmp.S (strcmp): Likewise.
7243         * sysdeps/sparc/sparc64/strcpy.S (strcpy): Likewise.
7244         * sysdeps/sparc/sparc64/strcspn.S (strcspn): Likewise.
7245         * sysdeps/sparc/sparc64/strlen.S (strlen): Likewise.
7246         * sysdeps/sparc/sparc64/strncmp.S (strncmp): Likewise.
7247         * sysdeps/sparc/sparc64/strncpy.S (strncpy): Likewise.
7248         * sysdeps/sparc/sparc64/strpbrk.S (strpbrk): Likewise.
7249         * sysdeps/sparc/sparc64/strspn.S (strspn): Likewise.
7250         * sysdeps/sh/memcpy.S (memcpy): Likewise.
7251         * sysdeps/sh/memset.S (memset): Likewise.
7252         * sysdeps/sh/strlen.S (strlen): Likewise.
7253         * sysdeps/s390/s390-32/memchr.S (memchr): Likewise.
7254         * sysdeps/s390/s390-32/memcpy.S (memcpy): Likewise.
7255         * sysdeps/s390/s390-32/memset.S (memset): Likewise.
7256         * sysdeps/s390/s390-32/strcmp.S (strcmp): Likewise.
7257         * sysdeps/s390/s390-32/strcpy.S (strcpy): Likewise.
7258         * sysdeps/s390/s390-32/strncpy.S (strncpy): Likewise.
7259         * sysdeps/s390/s390-64/memchr.S (memchr): Likewise.
7260         * sysdeps/s390/s390-64/memcpy.S (memcpy): Likewise.
7261         * sysdeps/s390/s390-64/memset.S (memset): Likewise.
7262         * sysdeps/s390/s390-64/strcmp.S (strcmp): Likewise.
7263         * sysdeps/s390/s390-64/strcpy.S (strcpy): Likewise.
7264         * sysdeps/s390/s390-64/strncpy.S (strncpy): Likewise.
7265         * sysdeps/x86_64/memcpy.S (memcpy): Likewise.
7266         * sysdeps/x86_64/memset.S (memset): Likewise.
7267         * sysdeps/x86_64/strcat.S (strcat): Likewise.
7268         * sysdeps/x86_64/strchr.S (strchr): Likewise.
7269         * sysdeps/x86_64/strcmp.S (strcmp): Likewise.
7270         * sysdeps/x86_64/strcpy.S (strcpy): Likewise.
7271         * sysdeps/x86_64/strcspn.S (strcspn): Likewise.
7272         * sysdeps/x86_64/strlen.S (strlen): Likewise.
7273         * sysdeps/x86_64/strspn.S (strspn): Likewise.
7274         * string/string-inlines.c: Move...
7275         * sysdeps/generic/string-inlines.c: ...here.
7276         (__memcpy_g, __strchr_g): Remove.
7277         (__NO_INLINE__): Define before including <string.h>,
7278         undefine after.  Include bits/string.h and bits/string2.h.
7279         * sysdeps/i386/i486/string-inlines.c: New file.
7280         * sysdeps/i386/string-inlines.c: New file.
7281         * sysdeps/i386/i486/Versions: Remove.
7282         All GLIBC_2.1.1 symbols moved...
7283         * sysdeps/i386/Versions (libc): ...here.
7285 2003-04-29  Ulrich Drepper  <drepper@redhat.com>
7287         * sysdeps/i386/fpu/Makefile: New file.
7288         * sysdeps/i386/fpu/fedisblxcpt.c: Also set SSE control word.
7289         * sysdeps/i386/fpu/feenablxcpt.c: Likewise.
7290         * sysdeps/i386/fpu/feholdexcpt.c: Likewise.
7291         * sysdeps/i386/fpu/fesetround.c: Also set SSE rounding mode
7292         [PR libc/4987].
7294 2003-04-28  Ulrich Drepper  <drepper@redhat.com>
7296         * nscd/nscd_getgr_r.c: Compact code a bit.  Add some __builtin_expect.
7297         * nscd/nscd_getpw_r.c: Likewise.
7298         * nscd/nscd_gethst_r.c: Likewise.
7300 2003-04-27  Ulrich Drepper  <drepper@redhat.com>
7302         * nscd/pwdcache.c: Initialize .version element in result.
7303         * nscd/grpcache.c: Likewise.
7304         * nscd/pwdcache.c: Likewise.
7306 2003-04-27  Andreas Schwab  <schwab@suse.de>
7308         * Makeconfig ($(common-objpfx)sysd-sorted): Fix for running in
7309         subdirectory.
7311 2003-04-27  Andreas Schwab  <schwab@suse.de>
7313         * sysdeps/unix/sysv/linux/m68k/semtimedop.S: New file.
7315 2003-04-27  Ulrich Drepper  <drepper@redhat.com>
7317         * nscd/connections.c (client_queued): New variable.
7318         (nscd_run): Revamp the loop.  Don't call poll except for cleanup
7319         threads.  Keep track of the number of delays caused because of busy
7320         worker threads.
7321         * nscd/nscd.h: Declare client_queued.
7322         * nscd/nscd_stat.c: Transmit and print client_queued information.
7324         * locale/programs/locale.c (show_info): Use '\177' instead of CHAR_MAX.
7326         * Makerules ($(common-objpfx)shlib.lds): Don't use PROVIDE to
7327         define __start_libc_freeres_ptrs and __stop___libc_freeres_ptrs.
7329 2003-04-26  Ulrich Drepper  <drepper@redhat.com>
7331         * elf/dl-close.c [USE_TLS && TLS_TCB_AT_TP] (_dl_close): Reimplement
7332         tracking of freed memory in static TLS block.
7333         * elf/Makefile: Add rules to build and run tst-tls13.
7334         * elf/tst-tls13.c: New file.
7335         * elf/tst-tlsmod13.c: New file.
7336         * elf/tst-tlsmod13a.c: New file.
7338         * elf/tst-tls8.c: Adjust types of variables to avoid warnings.
7340         * elf/dl-reloc.c: Pretty printing.
7342 2003-04-26  Roland McGrath  <roland@redhat.com>
7344         * Makerules ($(common-objpfx)shlib.lds): New target.
7345         (common-generated): Add it.
7346         (build-shlib, build-module): Use that instead of generating every time.
7347         ($(common-objpfx)libc.so): Depend on it.
7348         (lib%.so rule): Likewise.
7349         (build-module-helper-objlist): Remove %.lds.
7350         (LDSEDCMD-c.so): Variable removed.
7351         * iconvdata/extra-module.mk ($(objpfx)$(mod).so):
7352         Depend on $(common-objpfx)shlib.lds.
7353         * dlfcn/Makefile ($(test-modules)): Likewise.
7355 2003-04-26  Roland McGrath  <roland@frob.com>
7357         * sysdeps/mach/hurd/tmpfile.c: Remove USE_IN_LIBIO conditionals.
7359 2003-04-26  Andreas Schwab  <schwab@suse.de>
7361         * elf/dl-close.c (remove_slotinfo): Fix missing parens.
7363 2003-04-25  Ulrich Drepper  <drepper@redhat.com>
7365         * nscd/cache.c (cache_search): Keep track of how many chain links
7366         we searched and update table statistics.
7367         (cache_add): Keep track of how many values are in the table.
7368         (prune_cache): Likewise.  Keep track of locking success.
7369         Print messages about removed entries in separate pass.
7370         * nscd/connections.c (handle_request): Don't print debug message here.
7371         The caller will do it.  Keep track of locking success.
7372         (nscd_run): Print debug message.  Also print PID of the client process.
7373         * nscd/nscd.c (start_time): New variable.
7374         (main): Remember start time.
7375         * nscd/nscd.h: Declare start_time.
7376         (struct database): Add more members for new statistics.
7377         * nscd/nscd_stat.c: Add support for sending, receiving, and printing
7378         of new statistics.
7380         * sysdeps/posix/getaddrinfo.c: Include <stdbool.h>.
7382 2003-04-22  Jakub Jelinek  <jakub@redhat.com>
7384         * include/link.h (NO_TLS_OFFSET): Define to 0 if not defined.
7385         * elf/dl-close.c (_dl_close): Use NO_TLS_OFFSET.
7386         * elf/dl-object.c (_dl_new_object): Initialize l_tls_offset to
7387         NO_TLS_OFFSET.
7388         * elf/rtld.c (_dl_start_final, _dl_start): Likewise.
7389         * elf/dl-reloc.c (CHECK_STATIC_TLS): Use NO_TLS_OFFSET.
7390         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Likewise.
7391         * sysdeps/powerpc/dl-tls.h (TLS_TPREL_VALUE): Don't subtract
7392         TLS_TCB_SIZE.
7394 2003-04-24  Ulrich Drepper  <drepper@redhat.com>
7396         * nss/getent.c: Implement alternative host database lookup via
7397         getaddrinfo.
7399         * include/ifaddrs.h: New file.
7400         * include/netdb.h: Move definitions of AI_V4MAPPED, AI_ALL, and
7401         AI_ADDRCONFIG...
7402         * resolv/netdb.h: ...here.
7403         * sysdeps/gnu/ifaddrs.c. Use libc_hidden_def where appropriate.
7404         * sysdeps/unix/sysv/linux/ifaddrs.c: Likewise.
7405         * sysdeps/posix/getaddrinfo.c: Implement AI_V4MAPPED, AI_ALL, and
7406         AI_ADDRCONFIG.
7408 2003-04-24  Roland McGrath  <roland@redhat.com>
7410         * elf/dl-reloc.c (_dl_allocate_static_tls): Add internal_function.
7412 2003-04-24  Jakub Jelinek  <jakub@redhat.com>
7414         * elf/dl-reloc.c (allocate_static_tls): Rename to...
7415         (_dl_allocate_static_tls): ... this function.  No longer static.
7416         (CHECK_STATIC_TLS): Adjust.
7417         * sysdeps/generic/ldsodefs.h (_dl_allocate_static_tls): New prototype.
7418         * sysdeps/powerpc/powerpc32/dl-machine.h (__process_machine_rela):
7419         Add SYM_MAP argument.
7420         (elf_machine_rela): Adjust caller.  Declare SYM_MAP unconditionally.
7421         Check if SYM_MAP != NULL for R_PPC_DTPREL32.  Only handle 32-bit
7422         TLS relocs here.  #ifdef out relocs which never appear in
7423         .gnu.conflict section from dl-conflict.c processing.
7424         * sysdeps/powerpc/powerpc32/dl-machine.c (__process_machine_rela):
7425         Add SYM_MAP argument.  Handle 16-bit TLS relocs here.
7427         * sysdeps/s390/s390-32/dl-machine.h (elf_machine_rela): #ifdef
7428         out relocs which never appear in .gnu.conflict section from
7429         dl-conflict.c processing.
7430         * sysdeps/s390/s390-64/dl-machine.h (elf_machine_rela): Likewise.
7431         * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Likewise.
7432         * sysdeps/i386/dl-machine.h (elf_machine_rela): Likewise.
7433         Use r_type in RESOLVE macro.
7435 2003-04-23  Ulrich Drepper  <drepper@redhat.com>
7437         * nis/ypclnt.c (__yp_bind): Expect YPDB parameter to always be !=
7438         NULL.  Remove code made redundant by this assumption.
7439         (__yp_unbind): Add call to free.  Adjust all callers.
7441         * nis/ypclnt.c (yp_all): Free the dom_binding object after
7442         unbinding it.
7444         * grp/initgroups.c (getgrouplist): Don't copy too much into the
7445         user buffer if more groups are found than fit into it.
7447         * nis/nss_nis/nis-initgroups.c (_nss_nis_initgroups_dyn): Use
7448         extend_alloca.
7450 2003-04-23  Jakub Jelinek  <jakub@redhat.com>
7452         * sysdeps/posix/getaddrinfo.c (gaih_inet): Check for rc == ERANGE,
7453         not rc == errno.  Use extend_alloca.
7455         * elf/tst-tls12.c (main): Fix declaration.
7456         * elf/tst-tls10.c (dummy): Make hidden instead of static.
7457         * elf/tst-tlsmod7.c (dummy): Likewise.
7458         * elf/tst-tlsmod8.c (dummy): Likewise.
7459         * elf/tst-tlsmod9.c (dummy): Likewise.
7461 2003-04-22  Roland McGrath  <roland@redhat.com>
7463         * sysdeps/unix/sysv/linux/not-cancel.h: Put parens around macro args.
7464         (open_not_cancel): Make last argument non-optional.
7465         * sysdeps/generic/check_fds.c (check_one_fd): Update caller.
7466         * sysdeps/unix/sysv/linux/gethostid.c (gethostid): Likewise.
7467         * iconv/gconv_cache.c (__gconv_load_cache): Likewise.
7469         * include/tls.h: Protect against multiple inclusion.
7471 2003-04-22  Ulrich Drepper  <drepper@redhat.com>
7473         * nscd/nscd-client.h: Add declaration for __nscd_open_socket.
7474         * nscd/nscd_gethst_r.c (__nscd_open_socket): Renamed from
7475         open_socket.  Not static anymore.
7476         (nscd_gethst_r): Use __nscd_open_socket.
7477         * nscd/nscd_getgr_r.c (open_socket): Removed.
7478         (nscd_getgr_r): Use __nscd_open_socket.
7479         * nscd/nscd_getpw_r.c (open_socket): Removed.
7480         (nscd_getpw_r): Use __nscd_open_socket.
7482         * nscd/nscd.c (main): Change type of fdn to long int and use strtol.
7483         * nscd/connections.c (handle_request): Add cast to avoid warning.
7485 2003-04-21  Ulrich Drepper  <drepper@redhat.com>
7487         * signal/sigfillset.c: Moved to...
7488         * sysdeps/generic/sigfillset.c: ...here.  If SIGCANCEL is defined
7489         do not set the corresponding bit.
7491         * sysdeps/unix/sysv/linux/sigprocmask.c: Prevent changing mask for
7492         SIGCANCEL.
7493         * sysdeps/unix/sysv/linux/alpha/bits/siginfo.h: Define SI_TKILL.
7494         * sysdeps/unix/sysv/linux/bits/siginfo.h: Define SI_TKILL.
7495         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Define SI_TKILL.
7496         * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Define SI_TKILL.
7497         * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Define SI_TKILL.
7499 2003-04-20  Ulrich Drepper  <drepper@redhat.com>
7501         * sysdeps/unix/sysv/linux/not-cancel.h (open_not_cancel): Cast
7502         first syscall parameter to const char*.
7504 2003-04-19  Ulrich Drepper  <drepper@redhat.com>
7506         * intl/Makefile ($(objpfx)msgs.h): Use C locale for sed run.
7508         * configure.in: Add AC_PROG_CXX.
7509         * config.make.in (CXX): Define.
7511         * sysdeps/i386/i686/hp-timing.h (HP_TIMING_PRINT): Change type of
7512         __len to size_t to avoid warnings.
7514 2003-04-18  Jes Sorensen  <jes@wildopensource.com>
7516         * libc/sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Sync with Linux
7517         2.5.67.
7518         * libc/sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Likewise.
7520 2003-04-19  Ulrich Drepper  <drepper@redhat.com>
7522         * stdlib/cxa_finalize.c (__cxa_finalize): Don't call
7523         UNREGISTER_ATFORK if d == NULL.
7525         * catgets/nl_types.h: Remove __THROW marker from cancellation points.
7526         * dirent/dirent.h: Likewise.
7527         * dlfcn/dlfcn.h: Likewise.
7528         * grp/grp.h: Likewise.
7529         * iconv/iconv.h: Likewise.
7530         * io/fcntl.h: Likewise.
7531         * io/ftw.h: Likewise.
7532         * libio/stdio.h: Likewise.
7533         * misc/sys/mman.h: Likewise.
7534         * misc/sys/select.h: Likewise.
7535         * misc/sys/syslog.h: Likewise.
7536         * misc/sys/uio.h: Likewise.
7537         * posix/spawn.h: Likewise.
7538         * posix/unistd.h: Likewise.
7539         * posix/sys/wait.h: Likewise.
7540         * pwd/pwd.h: Likewise.
7541         * resolv/netdb.h: Likewise.
7542         * rt/aio.h: Likewise.
7543         * shadow/shadow.h: Likewise.
7544         * signal/signal.h: Likewise.
7545         * socket/sys/socket.h: Likewise.
7546         * stdlib/stdlib.h: Likewise.
7547         * streams/stropts.h: Likewise.
7548         * string/string.h: Likewise.
7549         * sysdeps/gnu/utmpx.h: Likewise.
7550         * sysvipc/sys/msg.h: Likewise.
7551         * termios/termios.h: Likewise.
7552         * time/time.h: Likewise.
7553         * wcsmbs/wchar.h: Likewise.
7554         * iconv/gconv_cache.c: Include <not-cancel.h> and use non-cancelable
7555         functions.
7556         * misc/daemon.c: Likewise.
7557         * sysdeps/generic/backtracesymsfd.c: Likewise.
7558         * sysdeps/generic/check_fds.c: Likewise.
7559         * sysdeps/unix/sysv/linux/gethostid.c: Likewise.
7560         * sysdeps/unix/sysv/linux/not-cancel.h: New file.
7561         * sysdeps/generic/not-cancel.h: New file.
7562         * csu/Makefile (distribute): Add not-cancel.h.
7563         * sysdeps/unix/sysv/linux/fatal-prepare.h: New file.
7564         * sysdeps/unix/sysv/linux/Makefile: Define FATAL_PREPARE_INCLUDE
7565         for assert.c and assert-perr.c to include <fatal-prepare.h>.
7566         * sysdeps/unix/sysv/linux/Dist: Add fatal-prepare.h.
7568         * sysdeps/posix/remove.c (remove): Rewrite.  No need to restore
7569         errno and unlink first.
7571         * io/ftw.c (ftw_dir): In all places assume fchdir is available.
7573 2003-04-18  Ulrich Drepper  <drepper@redhat.com>
7575         * sysdeps/unix/sysv/linux/libc_fatal.c (__libc_fatal): Use
7576         INTERNAL_SYSCALL instead of INLINE_SYSCALL.
7578 2003-04-17  Ulrich Drepper  <drepper@redhat.com>
7580         * sysdeps/unix/sysv/linux/Makefile: Remove db2 directory handling.
7582         * malloc/Makefile (CFLAGS-malloc.c): Define DEFAULT_TOP_PAD to 128k.
7583         * sysdeps/unix/sysv/linux/Makefile (CFLAGS-malloc.c): Add to, not
7584         replace.
7586         * signal/Makefile (tests): Add tst-sigsimple.
7587         * signal/tst-sigsimple.c: New file.
7589 2003-04-16  Jakub Jelinek  <jakub@redhat.com>
7591         * elf/Makefile (distribute): Add tst-tlsmod{[7-9],1[0-2]}.c and
7592         tst-tls10.h.
7593         (tests): Add tst-tls1[0-2].
7594         (modules-names): Add tst-tlsmod{[7-8],1[0-2]}.
7595         ($(objpfx)tst-tlsmod8.so): Depend on tst-tlsmod7.so.
7596         ($(objpfx)tst-tlsmod10.so): Depend on tst-tlsmod9.so.
7597         ($(objpfx)tst-tlsmod12.so): Depend on tst-tlsmod11.so.
7598         ($(objpfx)tst-tls10): Depend on tst-tlsmod8.so.
7599         ($(objpfx)tst-tls11): Depend on tst-tlsmod10.so.
7600         ($(objpfx)tst-tls12): Depend on tst-tlsmod12.so.
7601         * elf/tst-tls10.c: New test.
7602         * elf/tst-tls11.c: New test.
7603         * elf/tst-tls12.c: New test.
7604         * elf/tst-tls10.h: New file.
7605         * elf/tst-tlsmod7.c: New file.
7606         * elf/tst-tlsmod8.c: New file.
7607         * elf/tst-tlsmod9.c: New file.
7608         * elf/tst-tlsmod10.c: New file.
7609         * elf/tst-tlsmod11.c: New file.
7610         * elf/tst-tlsmod12.c: New file.
7612 2003-04-15  Steven Munroe  <sjmunroe@us.ibm.com>
7614         * sysdeps/powerpc/bits/atomic.h: Moved ppc32/64 specific code to ...
7615         * sysdeps/powerpc/powerpc32/bits/atomic.h: New file.
7616         * sysdeps/powerpc/powerpc64/bits/atomic.h: New file.
7618 2003-04-17  Ulrich Drepper  <drepper@redhat.com>
7620         * posix/regex.h: Include <sys/types.h>.
7622         * signal/sigrelse.c (sigrelse): Use sigdelset and not __sigdelset.
7623         The signal number must be checked.
7624         * signal/sighold.c (sighold): Use sigaddset and not __sigaddset.
7625         The signal number must be checked [PR libc/5004].
7627         * sysdeps/unix/sysv/linux/system.c: If compiled without threads
7628         don't do anything fancy.
7630         * sysdeps/generic/bits/libc-lock.h: Define
7631         __rtld_lock_define_initialized_recursive.
7633         * nss/getXXbyYY_r.c [USE_NSCD] (REENTRANT_NAME): Only retry
7634         contacting nscd if NOT_USENSCD_NAME > 0.
7635         * nss/nsswitch.c (__nss_disable_nscd): New function.
7636         * nss/nsswitch.h: Declare it.
7637         * nss/Versions [GLIBC_PRIVATE]: Export __nss_disable_nscd.
7638         * nscd/nscd.c (main): Call __nss_disable_nscd.
7640 2003-04-16  Ulrich Drepper  <drepper@redhat.com>
7642         * stdio-common/perror.c (perror): We don't need to set the offset
7643         to _IO_pos_bad, this is how streams are initialized.
7645         * locale/programs/ld-time.c (TESTARR_ELEM): Make i unsigned.
7646         (time_output): If necessary, allocate new buffer for .name string if
7647         padding is required.
7649         * sysdeps/unix/sysv/linux/ifaddrs.c (getifaddrs): Check lengths
7650         before copying.  This might leave holes in the list.  Adjust
7651         pointers if necessary.
7652         (netlink_receive): Allocate only one block.
7653         (free_netlink_handle): Adjust appropriately.
7654         (getifaddrs): Lots of cleanups.
7656         * string/test-strncpy.c (do_one_test): Mark start and stop as
7657         possibly unused.
7658         * string/test-memchr.c: Likewise.
7659         * string/test-memcmp.c: Likewise.
7660         * string/test-memcpy.c: Likewise.
7661         * string/test-memmove.c: Likewise.
7662         * string/test-memset.c: Likewise.
7663         * string/test-strcat.c: Likewise.
7664         * string/test-strchr.c: Likewise.
7665         * string/test-strcmp.c: Likewise.
7666         * string/test-strcpy.c: Likewise.
7667         * string/test-strlen.c: Likewise.
7668         * string/test-strncmp.c: Likewise.
7669         * string/test-strpbrk.c: Likewise.
7670         * string/test-strrchr.c: Likewise.
7671         * string/test-strspn.c: Likewise.
7673 2003-04-15  Roland McGrath  <roland@redhat.com>
7675         * libio/fileops.c (_IO_file_close_it): Macro tweak to avoid warning.
7677         * sysdeps/generic/libc-start.c [NEED_DL_SYSINFO]: Add decl for
7678         INTUSE(__register_frame_info_bases).
7680 2003-04-15  Ulrich Drepper  <drepper@redhat.com>
7682         * elf/elf.h: Define AT_SYSINFO_EH_FRAME.
7683         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Handle
7684         AT_SYSINFO_EH_FRAME.  Adjust string width.
7685         (_dl_show_auxv):Display AT_SYSINFO_EH_FRAME value.
7686         * sysdeps/generic/ldsodefs.h [NEED_DL_SYSINFO] (struct rtld_global):
7687         Add _dl_sysinfo_eh_frame field.
7688         * elf/dl-support.c [NEED_DL_SYSINFO]: Define _dl_sysinfo_eh_frame.
7689         * sysdeps/generic/libc-start.c [NEED_DL_SYSINFO] Define eh_obj
7690         variable.
7691         [NEED_DL_SYSINFO] (LIBC_START_MAIN): Call __register_frame_info_bases
7692         if _dl_sysinfo_eh_frame is non-NULL.
7694         * Makeconfig (gnulib): Add -lgcc_eh.
7696         * config.h.in: Define HAVE_FORCED_UNWIND.
7698 2003-04-15  Steven Munroe  <sjmunroe@us.ibm.com>
7700         * sysdeps/powerpc/powerpc64/strcmp.S: Convert to full 64-bit.
7701         * sysdeps/powerpc/powerpc64/strcpy.S: Likewise.
7703 2003-04-15  Jakub Jelinek  <jakub@redhat.com>
7705         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Avoid
7706         checking R_PPC_RELATIVE, R_PPC_NONE and whether relocation is
7707         against local symbol in conflict processing.
7709 2003-04-15  Steven Munroe  <sjmunroe@us.ibm.com>
7711         * sysdeps/powerpc/bits/atomic.h
7712         [__powerpc64] (__arch_compare_and_exchange_val_64_acq): Define.
7713         [! __powerpc64] (__arch_compare_and_exchange_val_64_acq): Defined
7714         as abort stub.
7715         (__arch_compare_and_exchange_val_32_acq): Define.
7716         (atomic_compare_and_exchange_val_acq): Define.
7718 2003-04-15  Ulrich Drepper  <drepper@redhat.com>
7720         * include/atomic.h: Pretty printing.
7722 2003-04-14  Ulrich Drepper  <drepper@redhat.com>
7724         * stdio-common/vfscanf.c: Add casts to avoid warnings.
7726 2003-04-14  Jakub Jelinek  <jakub@redhat.com>
7728         * sysdeps/i386/i486/bits/atomic.h: Rename LOCK to LOCK_PREFIX.
7729         * sysdeps/x86_64/bits/atomic.h: Likewise.
7731 2003-04-14  Ulrich Drepper  <drepper@redhat.com>
7733         * sysdeps/unix/sysv/linux/i386/sysdep.h: Change PUSHARGS_1 and
7734         POPARGS_1 to emit labels for the mov instructions.
7736 2003-04-14  Jakub Jelinek  <jakub@redhat.com>
7738         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h (ret_NOERRNO): Define.
7740 2003-04-14  Roland McGrath  <roland@redhat.com>
7742         * sysdeps/generic/unwind-dw2.c (_Unwind_GetCFA): Add a cast to silence
7743         compiler warning.
7745         * sysdeps/generic/unwind-pe.h: Fix decl hacks broken in merge.
7747 2003-04-14  Ulrich Drepper  <drepper@redhat.com>
7749         * string/strxfrm.c (STRXFRM): Terminate rulearr at correct
7750         position.  Reported by jreiser@BitWagon.com.
7752 2003-04-13  Ulrich Drepper  <drepper@redhat.com>
7754         * sysdeps/generic/unwind-dw2-fde.c: Update from recent gcc version.
7755         * sysdeps/generic/unwind-dw2-fde.h: Likewise.
7756         * sysdeps/generic/unwind-dw2.c: Likewise.
7757         * sysdeps/generic/unwind-pe.h: Likewise.
7759 2003-04-13  Alexandre Oliva  <aoliva@redhat.com>
7761         * sysdeps/unix/sysv/linux/mips/profil-counter: New.
7762         * sysdeps/unix/sysv/linux/mips/sigcontextinfo.h: Port to n32/n64.
7763         * sysdeps/unix/sysv/linux/mips/bits/sigcontext.h: New.
7764         * sysdeps/unix/sysv/linux/mips/sys/ucontext.h: Port to n32/n64.
7765         (mcontext_t): Make it match the 32-bit mips kernel in o32.
7766         * sysdeps/unix/sysv/linux/mips/sys/user.h: Bring in constants from
7767         the mips and mips64 headers.
7768         (struct user): Port to n32/n64.
7770 2003-04-12  Ulrich Drepper  <drepper@redhat.com>
7772         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Add cast to
7773         avoid warning.
7775         * sysdeps/unix/sysv/linux/i386/sigaction.c (__libc_sigaction): If
7776         __ASSUME_VSYSCALL is defined don't add restorer.
7777         * sysdeps/unix/sysv/linux/kernel-features.h: Define
7778         __ASSUME_VSYSCALL for 2.5.53.
7780 2003-04-11  Ulrich Drepper  <drepper@redhat.com>
7782         * sysdeps/generic/libc-start.c: Cleanup MAIN_AUXVEC_ARG handling.
7783         Remove HAVE_CANCELBUF code.  Replace with code using the new
7784         initializers for unwind-based cleanup handling.
7785         * sysdeps/generic/unwind.h: Update from latest gcc version.
7786         * sysdeps/unix/sysv/linux/i386/sysdep.h: Define labels in a few
7787         places to allow unwind data generation.
7788         * sysdeps/i386/bits/setjmp.h: Allow file to be included multiple times.
7789         * sysdeps/x86_64/bits/setjmp.h: Likewise.
7790         * sysdeps/sh/bits/setjmp.h: Likewise.
7791         * sysdeps/powerpc/bits/setjmp.h: Likewise.
7792         * sysdeps/unix/sysv/linux/ia64/bits/setjmp.h: Likewise.
7793         * sysdeps/alpha/bits/setjmp.h: Likewise.
7795 2003-04-11  Roland McGrath  <roland@redhat.com>
7797         * csu/tst-empty.c: New file.
7798         * csu/Makefile (tests, tests-static): Add it.
7800 2003-04-11  Jakub Jelinek  <jakub@redhat.com>
7802         * string/test-strcmp.c (do_random_tests): Test whether return value
7803         has been promoted to wordsize if the ABI requires caller to do so.
7804         * string/test-strncmp.c (do_random_tests): Likewise.
7805         * string/test-memcmp.c (do_random_tests): Likewise.
7807         * sysdeps/powerpc/powerpc64/strcmp.S (strcmp): Sign extend rRTN
7808         before returning.
7810         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c
7811         (__fe_nomask_env): Try prctl even if __ASSUME_NEW_PRCTL_SYSCALL
7812         is not defined, but the prctl constants are.
7814         * string/tester.c (test_strcmp): Fix a typo.
7816 2003-04-09  Ulrich Drepper  <drepper@redhat.com>
7818         * sysdeps/alpha/fpu/bits/mathdef.h: Remove FLT_EVAL_METHOD definition.
7819         * sysdeps/powerpc/fpu/bits/mathdef.h: Likewise.
7821 2003-04-08  Alexandre Oliva  <aoliva@redhat.com>
7823         * sysdeps/mips/sys/regdef.h (t4,t5,t6,t7): Renamed to t0..t3 on
7824         NewABI.
7825         (ta0, ta1, ta2, ta3): Defined to t4..t7 on o32, and a4..a7 on
7826         NewABI.
7827         * sysdeps/mips/mips64/memcpy.S: Adjust register naming
7828         conventions.
7829         * sysdeps/mips/mips64/memset.S: Likewise.
7830         * sysdeps/unix/mips/sysdep.S (__syscall_error) [_LIBC_REENTRANT]:
7831         Use t0 instead of t4 as temporary.
7833 2003-04-07  Ulrich Drepper  <drepper@redhat.com>
7835         * elf/ldconfig.c (parse_conf): Ignore leading whitespace.  Use
7836         feof_unlocked instead of feof.
7837         (add_dir): Ignore trailing whitespace.
7839 2003-04-07  Jakub Jelinek  <jakub@redhat.com>
7841         * posix/bug-regex4.c (main): Cap RANGE and STOP arguments to
7842         sum of SIZE1 and SIZE2 arguments.
7844 2003-04-06  Ulrich Drepper  <drepper@redhat.com>
7846         * iconv/iconv_prog.c (process_block): Don't print message about
7847         invalid input if the -c option is used.
7848         (main): Correctly append IGNORE string for -c option.
7850 2003-04-06  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
7852         * sysdeps/sh/bits/atomic.h: Moved to ...
7853         * sysdeps/unix/sysv/linux/sh/bits/atomic.h: ... here.  Add comments.
7854         (__arch_compare_and_exchange_val_*_acq): Add parens around macro
7855         arguments.
7856         (atomic_bit_set, atomic_bit_test_set): Likewise.
7857         (atomic_exchange_and_add): Likewise.  Don't evaluate VALUE argument
7858         twice.
7859         (atomic_add, atomic_add_negative, atomic_add_zero): Likewise.
7861 2003-04-06  Roland McGrath  <roland@redhat.com>
7863         * sysdeps/unix/sysv/linux/i386/swapcontext.S: Rewrite register
7864         restoration as done for setcontext yesterday.
7866 2003-04-06  Jakub Jelinek  <jakub@redhat.com>
7868         * elf/rtld.c: Revert 2003-03-14 change.
7869         * elf/dl-conflict.c (_dl_resolve_conflicts): Move
7870         #if ! ELF_MACHINE_NO_RELA conditional into the routine.
7872 2003-04-05  Ulrich Drepper  <drepper@redhat.com>
7874         * sunrpc/xdr.c (xdr_string): Catch nodesize == 0 [PR libc/4999].
7876         * sysdeps/ieee754/ldbl-96/e_gammal_r.c (__ieee754_gammal_r):
7877         Always initialize *signgamp before returning an error.
7879 2003-04-05  Roland McGrath  <roland@redhat.com>
7881         * sysdeps/unix/sysv/linux/i386/setcontext.S: Rewrite to avoid writing
7882         below the stack pointer even if switching to the same context we are
7883         running right now.
7885 2003-04-05  Ulrich Drepper  <drepper@redhat.com>
7887         * catgets/gencat.c (read_input_file): Make sure that \n is not
7888         alone on the line before testing for continuation.
7890         * math/test-tgmath.c (compile_test): Initialize c.
7892 2003-04-05  Alexandre Oliva  <aoliva@redhat.com>
7894         * sysdeps/unix/sysv/linux/mips/mips64/n32/ftruncate64.c: New.
7895         * sysdeps/unix/sysv/linux/mips/mips64/n32/truncate64.c: New.
7896         * sysdeps/unix/sysv/linux/kernel-features.h: fcntl64 is available
7897         on mips n32.
7898         * sysdeps/unix/sysv/linux/mips/kernel_stat.h: Explain why
7899         XSTAT_IS_XSTAT64 must not be used for mips n64.  Use 64-bit data
7900         structure on n32 as well.
7901         * sysdeps/unix/sysv/linux/mips/bits/stat.h: Use POSIX-compliant
7902         data types on n32 and n64.
7904 2003-04-05  Ulrich Drepper  <drepper@redhat.com>
7906         * libio/fileops.c (_IO_new_file_fopen): Don't free step data right
7907         after getting them.
7909         * malloc/thread-m.h [PTHREAD_MUTEX_INITIALIZER]: If
7910         HAVE_register_atfork_malloc is defined use __register_atfork_malloc
7911         instead of __register_atfork.
7913 2003-04-05  Jakub Jelinek  <jakub@redhat.com>
7915         * stdio-common/reg-printf.c (__register_printf_function): Calloc
7916         instead of malloc __printf_arginfo_table and __printf_function_table.
7917         Reported by John Reiser <jreiser@BitWagon.com>.
7919 2003-04-04  Steven Munroe  <sjmunroe@us.ibm.com>
7921         * sysdeps/powerpc/powerpc64/strchr.S: 64-bit optimizations.
7922         * sysdeps/powerpc/powerpc64/strlen.S: 64-bit optimizations.
7924         * sysdeps/powerpc/fpu/bits/mathdef.h (FLT_EVAL_METHOD): Undef before
7925         defining.
7927 2003-04-04  Alexandre Oliva  <aoliva@redhat.com>
7929         * sysdeps/unix/sysv/linux/mips/bits/fcntl.h (struct flock): Adjust
7930         for n64 abi.
7932 2003-04-03  Roland McGrath  <roland@redhat.com>
7934         * configure.in: Fix up use of compilation flags to match the build:
7935         For .s files, $ASFLAGS;
7936         For .S files, $CPPFLAGS $ASFLAGS;
7937         For .c files, $CFLAGS $CPPFLAGS;
7938         when linking, add $LDFLAGS.
7939         * configure: Regenerated.
7941 2003-04-03  Jakub Jelinek  <jakub@redhat.com>
7943         * sysdeps/unix/sysv/linux/getsysstats.c (get_proc_path): Reverse test
7944         for atomic_compare_and_exchange_bool_acq failure.
7946 2003-04-03  Ulrich Drepper  <drepper@redhat.com>
7948         * posix/unistd.h: Define _POSIX_VERSION, _POSIX2_VERSION,
7949         _POSIX2_C_BIND, _POSIX2_C_DEV, _POSIX2_SW_DEV, and
7950         _POSXI2_LOCALEDEF to 200112L.  Remove _POSIX2_C_VERSION.
7951         Remove declaration of pthread_atfork.
7953 2003-04-02  Ulrich Drepper  <drepper@redhat.com>
7955         * locale/iso-639.def: Add many more languages from the current ISO 639.
7957         * sysdeps/unix/sysv/linux/ipc_priv.h: Define IPCOP_semtimedop.
7958         * sysdeps/generic/semtimedop.c: New file.
7959         * sysdeps/unix/sysv/linux/i386/semtimedop.S: New file.
7960         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Add semtimedop.
7961         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
7962         * sysvipc/Makefile (routines): Add semtimedop.
7963         * sysvipc/Versions [GLIBC_2.3.3] (glibc): Add semtimedop.
7964         * sysvipc/sys/sem.h: Declare semtimedop.
7966 2003-04-02  Daniel Jacobowitz  <drow@mvista.com>
7968         * configure.in: Check for __register_frame_info in both
7969         -lgcc and -lgcc_eh.
7970         * configure: Regenerated.
7972 2003-04-01  Roland McGrath  <roland@redhat.com>
7974         * scripts/abilist.awk: Allow dots in soname suffix.
7976         * scripts/abilist.awk (emit): Fix bailout condition.
7978 2003-04-01  Jakub Jelinek  <jakub@redhat.com>
7980         * sysdeps/unix/sysv/linux/sparc/sparc64/sigsuspend.c: Use the
7981         IA-64 version.
7983         * elf/tls-macros.h [__ia64__] (TLS_IE, TLS_LD, TLS_GD): Add gp
7984         register as input to asm.
7986 2003-04-01  Jakub Jelinek  <jakub@redhat.com>
7988         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h (sigevent_t): Fix a typo.
7990 2003-04-01  Andreas Jaeger  <aj@suse.de>
7992         * configure.in: Output as/ld as name if version is too old.
7994 2003-03-31  Daniel Jacobowitz  <drow@mvista.com>
7996         * configure.in: Don't require an installed C library in the test
7997         for ".set" assembler support.
7999 2003-03-31  Roland McGrath  <roland@redhat.com>
8001         * signal/tst-sigset.c: New file.
8002         * signal/Makefile (tests): Add it.
8004 2003-03-31  Ulrich Drepper  <drepper@redhat.com>
8006         * sysdeps/unix/sysv/linux/alpha/bits/signum.h (_NSIG): Define to 65.
8007         * sysdeps/unix/sysv/linux/hppa/bits/signum.h (_NSIG): Likewise.
8008         * sysdeps/unix/sysv/linux/sparc/bits/signum.h (_NSIG): Likewise.
8009         * sysdeps/unix/sysv/linux/bits/signum.h (_NSIG): Likewise.
8010         (__SIGRTMAX): Adjust accordingly.
8011         * sysdeps/gnu/siglist.c: If OLD2_SIGLIST_SIZE is defined define
8012         second compatibility symbol set.
8013         * sysdeps/unix/sysv/linux/siglist.h (OLD2_SIGLIST_SIZE): Define.
8015 2003-03-31  Andreas Schwab  <schwab@suse.de>
8017         * sysdeps/m68k/m68020/bits/atomic.h (atomic_increment_and_test):
8018         Define.
8019         (atomic_decrement_and_test): Fix test.
8021 2003-03-31  Jakub Jelinek  <jakub@redhat.com>
8023         * sysdeps/sparc/sparc32/bits/atomic.h: New file.
8024         * sysdeps/sparc/sparc32/sparcv9/bits/atomic.h: New file.
8025         * sysdeps/sparc/sparc64/bits/atomic.h: New file.
8026         * sysdeps/sparc/sparc32/atomicity.h: Removed.
8027         * sysdeps/sparc/sparc32/sparcv9/atomicity.h: Removed.
8028         * sysdeps/sparc/sparc64/atomicity.h: Removed.
8030 2003-03-30  Roland McGrath  <roland@redhat.com>
8032         * scripts/abilist.awk: Grok .opd foo plus .text .foo as "foo F" alone.
8034         * intl/po2test.sed: Anchor substitution regexps to fix last change.
8036 2003-03-29  Paolo Bonzini  <bonzini@gnu.org>
8038         * intl/po2test.sed: Unify the transformations for msgid and msgstr
8039         and remove a useless s/// command.
8041 2003-03-27  David Mosberger  <davidm@hpl.hp.com>
8043         * sysdeps/ia64/dl-machine.h (RTLD_START): Wrap ".save rp, r0"
8044         directive into empty .prologue region to ensure that call-chain
8045         is terminated even for the first instruction.
8047         * sysdeps/ia64/elf/start.S (_start): Use ".save rp, r0" idiom
8048         to terminate call-chain right from the get-go.
8050         * sysdeps/unix/sysv/linux/ia64/fork.S (fork): Remove unnecessary
8051         stop bit between compare & branch.
8053 2003-03-29  Ulrich Drepper  <drepper@redhat.com>
8055         * stdlib/strtod.c (INTERNAL): Recognize first digit after decimal
8056         point correctly [PR libc/4993].
8058         * sysdeps/unix/sysv/linux/ifaddrs.c (getifaddrs): Avoid
8059         netlink_open calls if netlink is known to not be available.
8061 2003-03-29  Alexandre Oliva  <aoliva@redhat.com>
8063         * configure.in: Add mips64* support.
8064         * sysdeps/mips/bits/endian.h: Make it bi-endian.
8065         * sysdeps/mips/mipsel/bits/endian.h: Removed.
8066         * sysdeps/mips/mips64/n32/el/bits/endian.h: Removed.
8067         * sysdeps/mips/mips64/n64/el/bits/endian.h: Removed.
8068         * sysdeps/mips/mips32/Makefile (CC): Add -mabi=32.
8069         * sysdeps/mips/mips64/n32/Makefile (CC): Add -mabi=n32.
8070         * sysdeps/mips/mips64/n64/Makefile (CC): Add -mabi=64.
8071         * sysdeps/mips/Implies: Moved wordsize-32 to...
8072         * sysdeps/mips/mips32/Implies: New file.
8073         * sysdeps/unix/mips/sysdep.h (PSEUDO_NOERRNO, PSEUDO_END_NOERRNO,
8074         ret_NOERRNO): New.
8075         (ret, PSEUDO_END): Moved past END.
8076         (PSEUDO): Moved to...
8077         * sysdeps/unix/mips/mips32/sysdep.h: New file.
8078         * sysdeps/unix/mips/mips64/n32/sysdep.h: Removed #undef PSEUDO.
8079         * sysdeps/unix/mips/mips64/n64/sysdep.h: Likewise.
8080         * sysdeps/unix/sysv/linux/mips/sysdep.h: Move to...
8081         * sysdeps/unix/sysv/linux/mips/mips32/sysdep.h: New file.
8082         * sysdeps/unix/sysv/linux/mips/mips32/kern64/sysdep.h: New file.
8084         * sysdeps/unix/sysv/linux/mips/clone.S (__thread_start):
8085         Re-introduce ENTRY.
8087 2003-03-28  Thorsten Kukuk  <kukuk@suse.de>
8089         * sysdeps/unix/sysv/linux/ifaddrs.c: New file.
8090         * inet/test-ifaddrs.c: Allow AF_PACKET.
8091         * sysdeps/unix/sysv/linux/kernel-features.h: Add
8092         __ASSUME_NETLINK_SUPPORT.
8094 2003-03-28  Ulrich Drepper  <drepper@redhat.com>
8096         * elf/vismain.c (do_test): Comment out tests which fail in the moment.
8098 2003-03-26  H.J. Lu  <hjl@gnu.org>
8100         * elf/vismod.h (getvarlocal1): Return const char **.
8101         (getvarinmod1): Likewise.
8102         (getvaritcpt1): Likewise.
8103         (getvarlocal2): Likewise.
8104         (getvarinmod2): Likewise.
8105         (getvaritcpt2): Likewise.
8106         (getvaritcpt3): Likewise.
8107         * elf/vismain.c (do_test): Adjusted.
8108         * elf/vismod1.c (getvarlocal1): Return address.
8109         (getvarinmod1): Likewise.
8110         (getvaritcpt1): Likewise.
8111         * elf/vismod2.c (getvarlocal2): Likewise.
8112         (getvarinmod2): Likewise.
8113         (getvaritcpt2): Likewise.
8114         * elf/vismod3.c (getvaritcpt3): Likewise.
8116 2003-03-28  Roland McGrath  <roland@redhat.com>
8118         * elf/vismain.c (do_test): Print both addresses when they don't match.
8120         * scripts/abilist.awk: If given -v filename_regexp and/or -v
8121         libname_regexp when parsing names, then produce output only
8122         for those matching the given regexps.  In combine mode, save all
8123         stanzas for a final sorting by stanza header at the end.
8124         Emit a blank line between stanzas.
8126         * scripts/abilist.awk: When given -v combine=1, do parse_names and
8127         emit a single output stream with lib name in stanza header lines.
8129         * scripts/abilist.awk: Emit A for all *ABS* regardless of type.
8131 2003-03-27  Roland McGrath  <roland@redhat.com>
8133         * sysdeps/powerpc/bits/atomic.h [! __powerpc64__]
8134         (__arch_atomic_decrement_if_positive_64): Fix bogus definition.
8136 2003-03-28  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
8138         * sysdeps/sh/bits/atomic.h (__arch_compare_and_exchange_val_8_acq):
8139         Return old value. Make asm output reg constraint earlyclobber.
8140         Renamed from...
8141         (__arch_compare_and_exchange_8_acq): ... this.
8142         (__arch_compare_and_exchange_val_16_acq):
8143         Return old value. Make asm output reg constraint earlyclobber.
8144         Renamed from...
8145         (__arch_compare_and_exchange_16_acq): ... this.
8146         (__arch_compare_and_exchange_val_32_acq):
8147         Return old value. Make asm output reg constraint earlyclobber.
8148         Renamed from...
8149         (__arch_compare_and_exchange_32_acq): ... this.
8150         (__arch_compare_and_exchange_val_64_acq):
8151         Renamed from...
8152         (__arch_compare_and_exchange_64_acq): ... this.
8153         (atomic_exchange_and_add): Use local variables and
8154         __arch_compare_and_exchange_val_64_acq.
8155         (atomic_add): Likewise.
8156         (atomic_add_negative, atomic_add_zero): Use local variables.
8158 2003-03-28  Alexandre Oliva  <aoliva@redhat.com>
8160         * sysdeps/unix/mips/sysdep.S: Include sys/asm.h.
8162 2003-03-27  Ulrich Drepper  <drepper@redhat.com>
8164         * Makefile: Remove libmd5crypt goal.
8166 2003-03-25  Jakub Jelinek  <jakub@redhat.com>
8168         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Restore
8169         special handling of relocations against local symbols.
8171 2003-03-27  Steven Munroe  <sjmunroe@us.ibm.com>
8173         * sysdeps/powerpc/bits/atomic.h
8174         (__arch_compare_and_exchange_bool_32_acq): Move to [!__powerpc64__].
8175         [__powerpc64__] (__arch_compare_and_exchange_bool_32_acq):
8176         Define PPC64 specific version.
8177         [__powerpc64__] (__arch_compare_and_exchange_bool_64_acq):
8178         Change (mem) constraint to "b".
8179         [__powerpc64__] (__arch_atomic_exchange_and add_64):
8180         Replace addi with add. Change (value) contraint to "r".
8181         Change (mem) constraint to "b".
8182         [__powerpc64__] (__arch_atomic_decrement_if_positive_64): New macro.
8183         (__arch_atomic_exchange_32): Change (mem) constraint to "b".
8184         (__arch_atomic_exchange_and_add_32): Change (mem) constraint to "b".
8185         (__arch_atomic_decrement_if_positive_32): New macro.
8186         (atomic_decrement_if_positive): Use __arch* macros.
8188 2003-03-27  Jakub Jelinek  <jakub@redhat.com>
8190         * sysdeps/ia64/fpu/libm-test-ulps: Update.
8192 2003-03-27  Roland McGrath  <roland@redhat.com>
8194         * scripts/rpm2dynsym.sh: New file.
8195         * Makefile (distribute): Add it.
8197 2003-03-27  David Mosberger  <davidm@hpl.hp.com>
8199         * sysdeps/unix/sysv/linux/ia64/getcontext.S: Restore caller's
8200         ar.unat before returning.  Add missing .mem.offset directives
8201         to ensure file gets assembled without warnings.
8202         * sysdeps/unix/sysv/linux/ia64/setjmp.S: Likewise.
8204 2003-03-27  Jakub Jelinek  <jakub@redhat.com>
8206         * sysdeps/unix/sysv/linux/sysconf.c (__sysconf) <_SC_MONOTONIC_CLOCK>:
8207         Return -1 instead of 0 if clock_getres failed.
8209 2003-03-27  Roland McGrath  <roland@redhat.com>
8211         * scripts/abilist.awk: If variable `parse_names' is set, grok the file
8212         header lines and write out foo.symlist files for each foo.so.NN listed.
8214         * libio/libioP.h (_IO_wfile_jumps): Remove attribute_hidden.
8215         This symbol is exported, and we don't want to hide it.
8216         Add libc_hidden_proto instead.
8217         (_IO_file_jumps): Add libc_hidden_proto.
8218         * libio/wfileops.c (_IO_wfile_jumps): Add libc_hidden_data_def.
8219         Remove INTVARDEF.
8220         * libio/fileops.c (_IO_file_jumps): Likewise.
8221         * libio/stdfiles.c: Don't use INTUSE on them.
8222         * libio/iofdopen.c (_IO_new_fdopen): Likewise.
8223         * libio/iofopen.c (__fopen_internal): Likewise.
8224         * libio/freopen.c (freopen): Likewise.
8225         * libio/freopen64.c (freopen64): Likewise.
8226         * libio/iovdprintf.c (_IO_vdprintf): Likewise.
8228         * Makerules (check-abi) [$(enable-check-abi) = warn]:
8229         Ignore exit status from diff.
8230         * configure.in (enable_check_abi): Document possible value "warn".
8231         Change default to no for now.
8232         * configure: Regenerated.
8234         * sysdeps/unix/Makefile ($(objpfx)stub-syscalls.c): Emit stub_warning
8235         macro calls and a #include <stub-tag.h> at the end.
8236         * Makerules ($(objpfx)stubs): Tweak sed commands.
8238         * sysdeps/unix/sysv/linux/syscalls.list: Use - rather than EXTRA in
8239         caller column for *xattr syscalls, since they are in sysdeps/generic.
8241         * sysdeps/unix/sysv/linux/i386/setfsuid.c: setfsgid -> setfsuid
8242         * sysdeps/unix/sysv/linux/i386/setfsgid.c: setfsuid -> setfsgid
8244 2003-03-26  Roland McGrath  <roland@redhat.com>
8246         * Makerules (check-abi-config): Use /thread instead of /tls when
8247         use-thread and not just use-tls is set.
8249         * Makerules (update-abi): Put quotes around $(update-abi-config).
8251         * elf/Makefile (check-abi): Depend on check-abi-ld.
8252         (update-abi): Depend on update-abi-ld.
8254 2003-03-26  GOTO Masanori  <gotom@debian.or.jp>
8256         * sysdeps/unix/sysv/linux/i386/setfsuid.c: Use INTERNAL_SYSCALL and
8257         do not check for errors (unless testing for 32bit variant).
8258         * sysdeps/unix/sysv/linux/i386/setfsgid.c: Likewise.
8260 2003-03-27  Philip Blundell  <philb@gnu.org>
8262         * sysdeps/unix/sysv/linux/arm/sysdep.h (PSEUDO_RET_NOERRNO): Use
8263         unconditional mov.  Remove nop.
8265         * sysdeps/unix/sysv/linux/kernel-features.h
8266         (__ASSUME_VFORK_SYSCALL): Define for kernel 2.4 on arm.
8267         * sysdeps/unix/sysv/linux/arm/vfork.S: Elide compatibility code
8268         when __ASSUME_VFORK_SYSCALL is defined.
8269         * sysdeps/unix/sysv/linux/arm/mmap64.S: Likewise for
8270         __ASSUME_MMAP2_SYSCALL.
8271         * sysdeps/unix/sysv/linux/arm/sigaction.c: Likewise for
8272         __ASSUME_REALTIME_SIGNALS.
8274 2003-03-26  Ulrich Drepper  <drepper@redhat.com>
8276         * sysdeps/generic/ldsodefs.h (ELF_RTYPE_CLASS_COPY): Define to 2
8277         only if DL_NO_COPY_RELOCS is not defined.
8278         * sysdeps/ia64/dl-lookupcfg.h: Define DL_NO_COPY_RELOCS.
8280 2003-03-26  Roland McGrath  <roland@redhat.com>
8282         * sysdeps/unix/make-syscalls.sh: When an undefined syscall has
8283         SOURCE=-, append its symbol names to make variable unix-stub-syscalls.
8284         * sysdeps/unix/Makefile [$(subdir) = misc] [unix-stub-syscalls]
8285         (sysdep_routines): Add stub-syscalls.
8286         ($(objpfx)stub-syscalls.c): New target.
8287         (generated): Add stub-syscalls.c.
8289         * tls.make.c: Also define use-tls according to USE_TLS macro.
8291 2003-03-26  Ulrich Drepper  <drepper@redhat.com>
8293         * sysdeps/unix/sysv/linux/alpha/bits/siginfo.h (struct siginfo): Avoid
8294         no-op padding element.
8295         * sysdeps/unix/sysv/linux/bits/siginfo.h: Likewise.
8296         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Likewise.
8297         * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Likewise.
8298         * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Likewise.
8300 2003-03-26  GOTO Masanori  <gotom@debian.or.jp>
8302         * sysdeps/unix/sysv/linux/i386/getgroups.c: Fix the error
8303         condition check for the return value of getgroups32.
8305 2003-03-26  Jakub Jelinek  <jakub@redhat.com>
8307         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (PSEUDO_NOERRNO):
8308         Fix a typo.
8309         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h (PSEUDO_NOERRNO,
8310         PSEUDO_END_NOERRNO): Define.
8311         * sysdeps/unix/sysdep.h (PSEUDO_END_NOERRNO): Fix a typo.
8312         Define to PSEUDO_END.
8314 2003-03-26  Ulrich Drepper  <drepper@redhat.com>
8316         * abilist/librt.abilist: Add new timer interfaces for 64-bit archs.
8318 2003-03-25  Jiro SEKIBA  <jir@yamato.ibm.com>
8320         * iconvdata/euc-tw.c (from_euc_tw): Fix return value of TO_LOOP.
8321         * iconvdata/bug-iconv4.c: New file.
8322         * iconvdata/Makefile (tests): Add bug-iconv4.
8324 2003-03-25  H.J. Lu  <hjl@gnu.org>
8326         * elf/dl-lookup.c (_dl_lookup_symbol): Avoid looking up protected
8327         symbols twice.
8328         (_dl_lookup_versioned_symbol): Likewise.
8330 2003-03-26  Jakub Jelinek  <jakub@redhat.com>
8332         * csu/tst-atomic.c (do_test): Add some new
8333         atomic_compare_and_exchange_val_acq, atomic_add_zero,
8334         atomic_compare_and_exchange_bool_acq and atomic_add_negative tests.
8335         * include/atomic.h (atomic_add_negative, atomic_add_zero):
8336         Prefix local variable so that it doesn't clash with the one
8337         in atomic_exchange_and_add.
8338         * sysdeps/ia64/bits/atomic.h (atomic_exchange): Fix for long/void *
8339         pointers.
8340         (atomic_exchange_and_add): Implement using __sync_fetch_and_add_?i.
8341         * sysdeps/powerpc/bits/atomic.h (atomic_exchange_and_add): Force
8342         value into register.
8343         * sysdeps/s390/bits/atomic.h (__arch_compare_and_exchange_val_64_acq):
8344         Cast newval to long.
8345         * sysdeps/x86_64/bits/atomic.h
8346         (__arch_compare_and_exchange_val_64_acq): Cast newval and oldval to
8347         long.
8348         (atomic_exchange): Cast newvalue to long if sizeof == 8.
8349         (atomic_exchange_and_add): Cast value to long if sizeof == 8.
8350         (atomic_add, atomic_add_negative, atomic_add_zero): Likewise.
8351         (atomic_bit_set): Shift 1L up in all cases to shut up warnings.
8353 2003-03-21  Martin Schwidefsky  <schwidefskyde.ibm.com>
8355         * sysdeps/s390/s390-32/backtrace.c (__backtrace): Remove high order
8356         bit from backtrace addresses.
8358 2003-03-21  Andreas Schwab  <schwab@suse.de>
8360         * sysdeps/unix/sysv/linux/i386/chown.c: Don't define any versioned
8361         __chown symbols.
8363 2003-03-25  Roland McGrath  <roland@redhat.com>
8365         * config.make.in (enable-check-abi): New variable from configure.
8366         * configure.in (enable_check_abi): New substituted variable,
8367         controlled by --{enable,disable}-check-abi (default yes).
8368         * configure: Regenerated.
8369         * Makerules [$(enable-check-abi) = yes] (tests): Put this condition
8370         on check-abi dependency.
8372 2003-03-26  Andreas Schwab  <schwab@suse.de>
8374         * sysdeps/m68k/m68020/bits/atomic.h: Fix typos.
8375         * include/atomic.h: Likewise.
8377         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Define ret_NOERRNO.
8379 2003-03-25  Roland McGrath  <roland@redhat.com>
8381         * sysdeps/powerpc/bits/atomic.h (__arch_atomic_exchange_32): New macro.
8382         (__arch_atomic_exchange_64): New macro.
8383         (atomic_exchange): Use them.
8384         (__arch_atomic_exchange_and_add_32): New macro.
8385         (__arch_atomic_exchange_and_add_64): New macro.
8386         (atomic_exchange_and_add): Use them.
8387         Original patch from Steven Munroe <sjmunroe@us.ibm.com>.
8389 2003-03-25  Alexandre Oliva  <aoliva@redhat.com>
8391         * sysdeps/mips/sgidefs.h (_MIPS_ISA_MIPS32, _MIPS_ISA_MIPS64):
8392         Define.
8393         * sysdeps/mips/sys/asm.h: Test _MIPS_ISA against them on all
8394         ISA tests.
8395         (ALSZ, ALMASK, SZREG, REG_S, REG_L): Define based on ABI, not ISA.
8396         (PTR_ADD, etc): Test _MIPS_SZPTR instead of _MIPS_SZLONG.
8397         * sysdeps/unix/sysv/linux/mips/bits/sigaction.h: Use _MIPS_SZPTR
8398         to decide whether to add padding.
8399         * sysdeps/unix/sysv/linux/mips/bits/sigaction.h: Use _MIPS_SZPTR
8400         to decide whether to add padding.
8401         * sysdeps/unix/sysv/linux/mips/kernel_sigaction.h (struct
8402         old_kernel_sigaction): Likewise.
8404 2003-03-25  Ulrich Drepper  <drepper@redhat.com>
8406         * csu/tst-atomic.c: Adjust tests to what atomic_add_negative and
8407         atomic_add_zero were supposed to do.
8408         * include/atomic.h: Adjust atomic_add_negative and atomic_add_zero
8409         to x86 behavior.
8411         * sysdeps/generic/bits/typesizes.h (__TIMER_T_TYPE): Define as void*.
8412         This matches the new timer implementation.
8413         * sysdeps/unix/sysv/linux/sparc/bits/typesizes.h (__TIMER_T_TYPE):
8414         Likewise.
8415         * sysdeps/unix/sysv/linux/alpha/bits/typesizes.h (__TIMER_T_TYPE):
8416         Likewise.
8417         * sysdeps/unix/sysv/linux/bits/siginfo.h (struct siginfo): Adjust
8418         timer info for what the kernel provides these days.
8419         (struct sigevent): Add _tid field.
8420         Define SIGEV_THREAD_ID.
8421         Remove struct __pthread_attr_s forward declaration.
8422         * sysdeps/unix/sysv/linux/alpha/bits/siginfo.h: Likewise.
8423         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Likewise.
8424         * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Likewise.
8425         * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Likewise.
8427         * Versions.def (librt): Add GLIBC_2.3.3.
8429         * abilist/libpthread.abilist: Update for nptl.
8431 2003-03-24  Jon Grimm  <jgrimm@us.ibm.com>
8433         * inet/netinet/in.h: Add IPPROTO_SCTP.
8435 2003-03-24  Ulrich Drepper  <drepper@redhat.com>
8437         * sysdeps/unix/sysv/linux/sys/epoll.h (EPOLLET): Define.
8439 2003-03-24  Philip Blundell  <philb@gnu.org>
8441         * sysdeps/unix/sysv/linux/arm/sysdep.h (INTERNAL_SYSCALL):
8442         Remove a1 from clobber list.
8444 2003-03-24  Ulrich Drepper  <drepper@redhat.com>
8446         * timezone/antarctica: Update from tzdata2003a.
8447         * timezone/asia: Likewise.
8448         * timezone/australasia: Likewise.
8449         * timezone/europe: Likewise.
8450         * timezone/iso3166.tab: Likewise.
8451         * timezone/northamerica: Likewise.
8452         * timezone/southamerica: Likewise.
8453         * timezone/zone.tab: Likewise.
8455 2003-03-24  Steven Munroe  <sjmunroe@us.ibm.com>
8457         * sysdeps/powerpc/powerpc64/sysdep.h (PSEUDO_END_NOERRNO): Fix typo.
8459 2003-03-23  Ulrich Drepper  <drepper@redhat.com>
8461         * sysdeps/unix/sysv/linux/ia64/sysdep.h (ret_NOERRNO): Avoid
8462         unwanted expansion by definining to ret.  Patch by Ian Wienand.
8464         * sysdeps/unix/make-syscalls.sh: Recognize 'E' in first position of
8465         the parameter description to denote no error checking.  Generate
8466         appropriate pseudo asm code.
8467         * sysdeps/unix/syscalls.list: Mark getgid, getpid, getuid with 'E'.
8468         * sysdeps/unix/sysv/linux/syscalls.list: Mark getegid, geteuid,
8469         getpgrp, and getppid with 'E'.
8470         * sysdeps/powerpc/powerpc32/sysdep.h: Define PSEUDO_NOERRNO,
8471         PSEUDO_END_NOERRNO, and ret_NOERRNO.
8472         * sysdeps/powerpc/powerpc64/sysdep.h: Likewise.
8473         * sysdeps/unix/sysdep.h: Likewise.
8474         * sysdeps/unix/alpha/sysdep.h: Likewise.
8475         * sysdeps/unix/sparc/sysdep.h: Likewise.
8476         * sysdeps/unix/sysv/linux/arm/sysdep.h: Likewise.
8477         * sysdeps/unix/sysv/linux/cris/sysdep.h: Likewise.
8478         * sysdeps/unix/sysv/linux/hppa/sysdep.h: Likewise.
8479         * sysdeps/unix/sysv/linux/i386/sysdep.h: Likewise.
8480         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Likewise.
8481         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Likewise.
8482         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Likewise.
8483         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise.
8484         * sysdeps/unix/sysv/linux/sh/sysdep.h: Likewise.
8485         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Likewise.
8486         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
8488 2003-03-23  Roland McGrath  <roland@redhat.com>
8490         * Makeconfig (+includes): Don't use $(last-includes).
8492 2003-03-22  Alexandre Oliva  <aoliva@redhat.com>
8494         * sysdeps/unix/sysv/linux/configure.in: Update mips64 patterns.
8495         * sysdeps/unix/sysv/linux/configure: Rebuilt.
8497 2003-03-23  Jakub Jelinek  <jakub@redhat.com>
8499         * sysdeps/alpha/fpu/libm-test-ulps: Update.
8500         * sysdeps/arm/libm-test-ulps: Update.
8501         * sysdeps/hppa/fpu/libm-test-ulps: Update.
8502         * sysdeps/ia64/fpu/libm-test-ulps: Update.
8503         * sysdeps/mips/fpu/libm-test-ulps: Update.
8504         * sysdeps/powerpc/nofpu/libm-test-ulps: Update.
8505         * sysdeps/powerpc/fpu/libm-test-ulps: Update.
8506         * sysdeps/sparc/sparc32/fpu/libm-test-ulps: Update.
8507         * sysdeps/sparc/sparc64/fpu/libm-test-ulps: Update.
8508         * sysdeps/sh/sh4/fpu/libm-test-ulps: Update.
8509         * sysdeps/s390/fpu/libm-test-ulps: Update.
8510         * sysdeps/x86_64/fpu/libm-test-ulps: Update.
8512 2003-03-22  Roland McGrath  <roland@redhat.com>
8514         * include/atomic.h: Put parens around all macro arguments.
8515         (__atomic_val_bysize, __atomic_bool_bysize): New macros.
8516         (atomic_compare_and_exchange_val_acq): Use it.
8517         (atomic_compare_and_exchange_bool_acq): Likewise.
8518         (atomic_increment_and_test): Invert sense of test.
8519         (atomic_decrement_and_test): Likewise.
8520         * csu/tst-atomic.c: Update those tests to match.
8522 2003-03-22  Jakub Jelinek  <jakub@redhat.com>
8524         * include/atomic.h (atomic_compare_and_exchange_val_acq): Add comment.
8525         Don't define if __arch_compare_and_exchange_val_32_acq is not defined.
8526         (atomic_compare_and_exchange_bool_acq): Add comment.  Don't use
8527         __oldval variable in the macro, since it might be macro argument.
8528         (atomic_decrement_if_positive): Initialize __memp, remove setting
8529         of non-existent variable.
8530         (atomic_bit_test_set): Cast 1 to __typeof (*mem) before shifting.
8531         * sysdeps/ia64/bits/atomic.h (atomic_exchange_and_add): Implement
8532         using atomic_compare_and_exchange_val_acq.
8533         (atomic_decrement_if_positive, atomic_bit_test_set): Define.
8534         * sysdeps/s390/bits/atomic.h (__arch_compare_and_exchange_val_8_acq):
8535         Renamed from...
8536         (__arch_compare_and_exchange_bool_8_acq): ... this.
8537         (__arch_compare_and_exchange_val_16_acq): Renamed from...
8538         (__arch_compare_and_exchange_bool_16_acq): ... this.
8539         (__arch_compare_and_exchange_val_32_acq): Return old value.  Renamed
8540         from...
8541         (__arch_compare_and_exchange_bool_32_acq): ... this.
8542         (__arch_compare_and_exchange_val_64_acq): Return old value.  Renamed
8543         from...
8544         (__arch_compare_and_exchange_bool_64_acq): ... this.
8545         (__arch_compare_and_exchange_val_32_acq): Use __typeof for local
8546         variables types instead of assuming int.
8547         Change prefix of local variables to __arch.
8548         * sysdeps/generic/bits/atomic.h (arch_compare_and_exchange_acq):
8549         Remove.
8550         (atomic_compare_and_exchange_val_acq,
8551         atomic_compare_and_exchange_bool_acq): Define.
8553         * csu/tst-atomic.c: New test.
8554         * csu/tst-atomic-long.c: New test.
8555         * csu/Makefile (tests): Add tst-atomic and tst-atomic-long.
8557         * malloc/memusagestat.c (main): Kill warning if uint64_t is ulong.
8559         * sysdeps/s390/Versions: Add trailing newline.
8561         * sysdeps/unix/sysv/linux/sysconf.c (__sysconf): Kill warning
8562         if INTERNAL_SYSCALL_ERROR_P doesn't use its first argument.
8564 2003-03-22  Andreas Schwab  <schwab@suse.de>
8566         * sysdeps/m68k/fpu/libm-test-ulps: Update.
8568         * sysdeps/m68k/m68020/bits/atomic.h: New file.
8569         * sysdeps/m68k/m68020/atomicity.h: Removed.
8571 2003-03-22  Alexandre Oliva  <aoliva@redhat.com>
8573         * sysdeps/mips/elf/ldsodefs.h: Add mips-specific elf64 relocation
8574         data structures and macros.  Protect from multiple inclusion.
8576         * sysdeps/mips/dl-machine.h (ELF_MIPS_GNU_GOT1_MASK): Fix harmless
8577         typo in #if test.
8579 2003-03-21  Andreas Jaeger  <aj@suse.de>
8581         * sysdeps/i386/fpu/libm-test-ulps: Update.
8583         * math/libm-test.inc (tgamma_test): Recompute some constants with
8584         36 digits precision.
8585         (lgamma_test): Likewise.
8586         (ccos_test): Likewise.
8587         (ccosh_test): Likewise.
8588         (clog10_test): Likewise.
8589         (csin_test): Likewise.
8590         (csinh_test): Likewise.
8591         (ctan_test): Likewise.
8592         (ctanh_test): Likewise.
8594 2003-03-19  Jakub Jelinek  <jakub@redhat.com>
8596         * sysdeps/sparc/sparc64/fpu/libm-test-ulps: Regenerated.
8598 2003-03-21  Roland McGrath  <roland@redhat.com>
8600         * sysdeps/i386/i486/bits/atomic.h (atomic_bit_set): Use "ir"
8601         constraint to permit non-constant BIT argument.
8602         (atomic_bit_test_set): Likewise.
8603         * sysdeps/x86_64/bits/atomic.h (atomic_bit_test_set): Likewise.
8604         (atomic_bit_set): Likewise.  Use 1UL in case that BIT might be >= 32.
8605         For quadword case, use "i" constraint if __builtin_constant_p and < 32
8606         or "r" constraint otherwise.
8608         * configure.in: Move AC_PROG_CC and other program-finding before all
8609         the version checks.
8610         * configure: Regenerated.
8612 2003-03-21  Alexandre Oliva  <aoliva@redhat.com>
8614         * sysdeps/mips/mips64/memcpy.S: Fix porting bug that broke
8615         unaligned copying of 8-15 bytes.  From Chris Demetriou
8616         <cgd@broadcom.com>.  Fix label names.
8617         * sysdeps/mips/mips64/memset.S: Fix label names.  Make similar
8618         change as to memcpy.S.
8619         * sysdeps/mips/memcpy.S: Formatting changes.
8620         * sysdeps/mips/memset.S: Likewise.
8622 2003-03-21  Roland McGrath  <roland@redhat.com>
8624         * sysdeps/arm/sysdep.h (CALL_MCOUNT): Add trailing semicolon.
8626 2003-03-21  Alexandre Oliva  <aoliva@redhat.com>
8628         * sysdeps/mips/mips64/memcpy.S, sysdeps/mips/mips64/memset.S: New.
8629         * sysdeps/mips/memcpy.S, sysdeps/mips/memset.S: Update comments.
8631 2003-03-21  Roland McGrath  <roland@redhat.com>
8633         * sysdeps/i386/i486/bits/atomic.h
8634         (__arch_compare_and_exchange_val_64_acq): Rewrite abort-calling
8635         version of the macro to avoid compile-time warnings.
8636         [! __PIC__] (__arch_compare_and_exchange_64_acq): Rename to above.
8637         (atomic_exchange_and_add, atomic_add): Fix name and usage of it.
8638         (atomic_increment, atomic_decrement): Likewise.
8640 2003-03-21  Ulrich Drepper  <drepper@redhat.com>
8642         * sysdeps/x86_64/bits/atomic.h: Don't use matching memory constraints.
8643         * sysdeps/i386/i486/bits/atomic.h: Likewise.
8645 2003-03-21  Roland McGrath  <roland@redhat.com>
8647         * include/atomic.h (atomic_compare_and_exchange_bool_acq): Typo fix.
8649 2003-03-20  Ulrich Drepper  <drepper@redhat.com>
8651         * include/atomic.h: Define atomic_compare_and_exchange_val_acq,
8652         atomic_compare_and_exchange_val_rel,
8653         atomic_compare_and_exchange_bool_acq, and
8654         atomic_compare_and_exchange_bool_rel instead of
8655         atomic_compare_and_exchange_acq and atomic_compare_and_exchange_rel.
8656         * sysdeps/i386/i486/bits/atomic.h: Define
8657         __arch_compare_and_exchange_val_*_acq instead of
8658         __arch_compare_and_exchange_*_acq.
8659         * sysdeps/x86_64/bits/atomic.h: Likewise.
8660         * sysdeps/ia64/bits/atomic.h: Define
8661         __arch_compare_and_exchange_bool_*_acq instead of
8662         __arch_compare_and_exchange_*_acq.
8663         * sysdeps/powerpc/bits/atomic.h: Likewise.
8664         * sysdeps/s390/bits/atomic.h: Likewise.
8665         * gmon/mcount.c: Adjust for new form of compare&exchange macros.
8666         * malloc/set-freeres.c: Likewise.
8667         * nscd/cache.c: Likewise.
8668         * stdlib/cxa_finalize.c: Likewise.
8669         * sysdeps/unix/sysv/linux/getsysstats.c: Likewise.
8671 2003-03-20  Alexandre Oliva  <aoliva@redhat.com>
8673         * sysdeps/mips/bits/setjmp.h: n32 has only 6 call-saved fpregs.
8674         * sysdeps/mips/mips64/setjmp_aux.c (__sigsetjmp_aux): Adjust.
8675         * sysdeps/mips/mips64/__longjmp.c (__longjmp): Likewise.
8677         * sysdeps/unix/sysv/linux/mips/pread.c: Don't break up offset
8678         into high and low halves on n64.
8679         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
8680         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
8681         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
8683 2003-03-20  Ulrich Drepper  <drepper@redhat.com>
8685         * include/atomic.h (atomic_decrement_if_positive): Adjust for the
8686         correct atomic_compare_and_exchange_acq semantics.
8688 2003-03-20  Alexandre Oliva  <aoliva@redhat.com>
8690         * sysdeps/mips/ieee754.h: Remove excess #endif.
8692 2003-03-20  Roland McGrath  <roland@redhat.com>
8694         * sysdeps/powerpc/bits/atomic.h (atomic_exchange): Remove unused
8695         variable.  Remove superfluous memory clobber.
8697         * include/atomic.h: Syntax braino fix.
8699         * posix/tst-nice.c (do_test): Use %m formats instead of printing errno
8700         in decimal.  Don't bail if niced at start.  Just check that nice call
8701         bumps the total at all.
8703 2003-03-20  Alexandre Oliva  <aoliva@redhat.com>
8705         * sysdeps/mips/bits/setjmp.h: Store all N32 and N64 registers,
8706         including pc, gp, sp and fp, as long long.
8707         * sysdeps/mips/mips64/setjmp.S: Pass gp to __sigsetjmp_aux.
8708         * sysdeps/mips/mips64/setjmp_aux.c: Adjust type of arguments.
8709         Add gp argument, and set gp in the jmpbuf to it.
8710         * sysdeps/mips/setjmp_aux.c: Revert to o32-only.
8712 2003-03-20  Ulrich Drepper  <drepper@redhat.com>
8714         * include/atomic.h: Define atomic_exchange and
8715         atomic_decrement_if_positive if not already defined.  Add some
8716         __builtin_expect.
8717         * sysdeps/i386/i486/bits/atomic.h: Define atomic_exchange.
8718         * sysdeps/x86_64/bits/atomic.h: Likewise.
8719         * sysdeps/ia64/bits/atomic.h: Pretty printing.  Define atomic_exchange.
8720         * sysdeps/powerpc/bits/atomic.h: Pretty printing.  Define
8721         atomic_exchange, atomic_exchange_and_add, and
8722         atomic_decrement_if_positive
8724 2003-03-20  Alexandre Oliva  <aoliva@redhat.com>
8726         * sysdeps/unix/sysv/linux/mips/mips64/n64/ioctl.S: Sign-extend
8727         with a single instruction.
8729         * sysdeps/mips/dl-machine.h (ELF_MIPS_GNU_GOT1_MASK): Define
8730         properly for n64.
8731         (elf_machine_runtime_setup): Cast link_map pointer to Elf Addr
8732         type.
8733         (elf_machine_rel, elf_machine_rel_relative): Cast symidx to Elf
8734         Word before comparing with gotsym.  Take reloc_addr argument as
8735         void*.  Remove the code added for the compiler to drop any
8736         alignment assumptions.
8738 2003-03-19  Ulrich Drepper  <drepper@redhat.com>
8740         * Makefile (distribute): Add include/atomic.h and bits/atomic.h.
8741         * include/atomic.h: New file.
8742         * sysdeps/i386/i486/bits/atomic.h: New file.
8743         * sysdeps/x86_64/bits/atomic.h: New file.
8744         * sysdeps/s390/bits/atomic.h: New file.
8745         * sysdeps/sh/bits/atomic.h: New file.
8746         * sysdeps/ia64/bits/atomic.h: New file.
8747         * sysdeps/powerpc/bits/atomic.h: New file.
8748         * sysdeps/generic/bits/atomic.h: New file.
8749         * sysdeps/i386/i486/atomicity.h: Removed.
8750         * sysdeps/x86_64/atomicity.h: Removed.
8751         * sysdeps/s390/s390-32/atomicity.h: Removed.
8752         * sysdeps/s390/s390-64/atomicity.h: Removed.
8753         * sysdeps/ia64/atomicity.h: Removed.
8754         * sysdeps/powerpc/powerpc32/atomicity.h: Removed.
8755         * sysdeps/powerpc/powerpc64/atomicity.h: Removed.
8756         * elf/dl-profile.c: Use atomic.h instead of atomicity.h.  Adjust
8757         use of macros from atomicity.h to new names and semantics.
8758         * gmon_mcount.c: Likewise.
8759         * malloc/set-freeres.c: Likewise.
8760         * nscd/cache.c: Likewise.
8761         * stdlib/cxa_finalize.c: Likewise.
8762         * sysdeps/unix/sysv/linux/getsysstats.c: Likewise.
8764 2003-03-19  Alexandre Oliva  <aoliva@redhat.com>
8766         * sysdeps/mips/ieee754.h: New file, suitable to replace both
8767         ../ieee754/ieee754.h and ../ieee754/ldbl-128/ieee754.h, kept
8768         mips-specific for now.
8770 2003-03-19  Ulrich Drepper  <drepper@redhat.com>
8772         * stdlib/strtod.c (INTERNAL): While eating trailing zeros handle
8773         hexdigits correctly.  Reported by Fred Tydeman <tydeman@tybor.com>.
8774         * stdlib/tst-strtod.c: Add test for the bug.
8776         * posix/tst-nice.c (do_test): Remove invalid of return value.
8777         Don't run test if initial level != 0.
8779 2003-03-19  Amos Waterland  <apw@us.ibm.com>
8781         * posix/tst-nice.c: New file.
8782         * posix/Makefile (tests): Add tst-nice.
8784 2003-03-18  Roland McGrath  <roland@redhat.com>
8786         * abilist: New directory of libfoo.abilist files maintained using
8787         scripts/merge-abilist.awk and "make update-abi" rules.
8788         * Makefile (distribute): Add abilist/*.abilist.
8789         * Makerules [$(build-shared) = yes] [$(subdir)] (tests):
8790         Depend on check-abi.
8792         * configure.in: Move $critic_missing check after all AC_CHECK_PROG_VER.
8793         * configure: Regenerated.
8795         * sysdeps/unix/sysv/linux/syscalls.list (posix_fadvise64): Fix name.
8797 2003-03-18  Ulrich Drepper  <drepper@redhat.com>
8799         * sysdeps/posix/sysconf.c (__sysconf): Handle _SC_MONOTONIC_CLOCK
8800         correctly.
8802 2003-03-18  Steven Munroe  <sjmunroe@us.ibm.com>
8804         * sysdeps/powerpc/powerpc64/memcpy.S: New file.
8806 2003-03-18  Ulrich Drepper  <drepper@redhat.com>
8808         * Versions.def: Add GLIBC_2.3.3 for libpthread.
8810 2003-03-17  Ulrich Drepper  <drepper@redhat.com>
8812         * sysdeps/generic/libc-start.c [!SHARED &&
8813         !LIBC_START_MAIN_AUXVEC_ARG]: Compute beginning of auxvec correctly.
8815 2003-03-17  Roland McGrath  <roland@redhat.com>
8817         * include/ctype.h: Revert last change.
8819 2003-03-17  Ulrich Drepper  <drepper@redhat.com>
8821         * argp/tst-argp1.c: Use test-skeleton.c.
8822         * locale/tst-C-locale.c: Likewise.
8824 2003-03-17  Alexandre Oliva  <aoliva@redhat.com>
8826         * sysdeps/mips/mips64/Implies: Move wordsize-64 to...
8827         * sysdeps/mips/mips64/n64/Implies: New file.
8828         * sysdeps/mips/mips64/n64/Makefile: New file.
8829         * sysdeps/mips/mips64/n64/el/bits/endian.h: New file.
8830         * sysdeps/mips/mips64/n32/Implies: New file.
8831         * sysdeps/mips/mips64/n32/Makefile: New file.
8832         * sysdeps/mips/mips64/n32/el/bits/endian.h: New file.
8833         * sysdeps/unix/mips/mips64/n32/sysdep.h: New file.
8834         * sysdeps/unix/mips/mips64/n64/sysdep.h: New file.
8835         * sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h: New file.
8836         * sysdeps/unix/sysv/linux/mips/mips64/n64/glob64.c: New file.
8837         * sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h: New file.
8838         * sysdeps/unix/sysv/linux/mips/mips64/ldconfig.h: New file.
8839         * sysdeps/unix/sysv/linux/mips/mips64/llseek.c: New file.
8840         * sysdeps/unix/sysv/linux/mips/mips64/recv.c: New file.
8841         * sysdeps/unix/sysv/linux/mips/mips64/send.c: New file.
8842         * sysdeps/unix/sysv/linux/mips/mips64/syscall.S: New file.
8843         * sysdeps/unix/sysv/linux/mips/mips64/syscalls.list: New file.
8844         * sysdeps/unix/sysv/linux/mips/mips64/umount.c: New file.
8845         * sysdeps/unix/sysv/linux/mips/mips64/n64/ioctl.S: New file.
8847         * sysdeps/unix/sysv/linux/configure.in (libc_cv_slibdir): Use
8848         lib64 for mips64/n64 and lib32 for mips64/n32.
8849         (ldd_rewrite_script): Needed for all mips64 configurations.
8850         * sysdeps/unix/sysv/linux/configure: Rebuilt.
8851         * sysdeps/unix/sysv/linux/mips/mips64/ldd-rewrite.sed: New file.
8852         * sysdeps/unix/sysv/linux/mips/mips64/Dist: New file.
8854         * sysdeps/mips/machine-gmon.h (MCOUNT): Define for N32 and N64 as
8855         well.
8857         * sysdeps/unix/sysv/linux/mips/configure.in: New.  Pre-process
8858         asm/unistd.h into asm-unistd.h.
8859         * sysdeps/unix/sysv/linux/mips/configure: Generated.
8860         * sysdeps/unix/sysv/linux/mips/Makefile: Do custom processing
8861         of syscall list.
8862         * sysdeps/unix/sysv/linux/mips/sys/syscall.h: New file.
8863         * sysdeps/unix/sysv/linux/mips/clone.S: Don't include
8864         asm/unistd.h.
8866         * sysdeps/unix/sysv/linux/mips/sys/ptrace.h: New file.
8867         * sysdeps/unix/sysv/linux/mips/ptrace.c: New file.  Use long
8868         long type for registers on n32.
8870         * sysdeps/mips/bits/wordsize.h: New file, appropriate for all
8871         3 ABIs.
8872         * sysdeps/mips/mips64/gmp-mparam.h: New file.  Define
8873         BITS_PER_LONGINT to __WORDSIZE, to match all 3 ABIs.
8874         * sysdeps/mips/setjmp_aux.c (STRINGXP, REGS, PTRS): New macros.
8875         (__sigsetjmp_aux): Use them.  Adjust for all 3 ABIs.
8876         * sysdeps/mips/elf/start.S: Adjust for all 3 ABIs.
8877         * sysdeps/unix/mips/brk.S: Likewise.
8878         * sysdeps/unix/mips/sysdep.S: Likewise.
8879         * sysdeps/unix/sysv/linux/mips/clone.S: Likewise.
8880         * sysdeps/mips/bits/setjmp.h (__jmp_buf): Likewise.
8881         * sysdeps/mips/sys/ucontext.h: Likewise.
8882         * sysdeps/unix/sysv/linux/mips/sys/profcs.h: Likewise.
8883         * sysdeps/unix/sysv/linux/mips/sys/ucontext.h: Likewise.
8884         * sysdeps/unix/sysv/linux/mips/kernel_stat.h: Likewise.
8885         * sysdeps/mips/mips64/bsd-_setjmp.S: Likewise.
8886         * sysdeps/mips/mips64/bsd-setjmp.S: Likewise.
8887         * sysdeps/mips/mips64/setjmp.S: Likewise.
8888         * sysdeps/mips/mips64/bits/setjmp.h: Deleted, obsolete.
8889         * sysdeps/mips/mips64/soft-fp/sfp-machine.h: Use long long for
8890         64-bit types.
8892 2003-03-16  Ulrich Drepper  <drepper@redhat.com>
8894         * sysdeps/unix/clock_settime.c (HANDLE_REALTIME): Define tv here,
8895         not at function level.
8896         * sysdeps/unix/clock_gettime.c (HANDLE_REALTIME): Likewise.
8898 2003-03-15  Roland McGrath  <roland@redhat.com>
8900         * nis/nss_nis/nis-hosts.c (internal_gethostbyname2_r): int -> size_t
8901         * nis/nss_nis/nis-network.c (_nss_nis_getnetbyname_r): Likewise.
8902         * nis/nss_nis/nis-alias.c (_nss_nis_getaliasbyname_r): Likewise.
8903         * nis/nis_table.c (__create_ib_request): Likewise.
8905         * posix/fnmatch_loop.c: Add casts for signedness.
8906         * nss/nss_files/files-hosts.c: Likewise.
8907         * nscd/nscd_getpw_r.c (nscd_getpw_r): Likewise.
8908         * gmon/gmon.c (write_call_graph): Use u_long for FROM_LEN.
8909         * nscd/nscd_getgr_r.c (nscd_getgr_r): Use nscd_ssize_t for CNT.
8911         * configure.in (libc_cv_visibility_attribute): Use AC_TRY_COMMAND,
8912         get errors into the log file.
8913         (libc_cv_broken_visibility_attribute): Likewise.
8914         (libc_cv_broken_alias_attribute): Likewise.
8915         (libc_cv_asm_weak_directive): Likewise.
8916         (libc_cv_need_minus_P): Likewise.
8917         (libc_cv_dot_text): Likewise.
8918         (libc_cv_asm_global_directive): Likewise.
8919         (libc_cv_asm_type_prefix): Likewise.
8920         * configure: Regenerated.
8922         * nscd/cache.c (cache_search): Give first arg type `request_type'.
8923         * nscd/nscd.h: Update decl.
8925         * nscd/nscd_getpw_r.c (nscd_getpw_r): Add casts for signedness.
8926         * nscd/nscd_getgr_r.c (nscd_getgr_r): Likewise.
8927         * elf/dl-close.c (_dl_close): Likewise.
8928         * sysdeps/unix/sysv/linux/powerpc/chown.c (__chown): int -> size_t
8929         * io/fts.c (fts_build): Likewise.
8930         * elf/cache.c (add_to_cache): Likewise.
8931         * locale/programs/locarchive.c (show_archive_content): Likewise.
8933         * posix/fnmatch.c (fnmatch): Tweak __builtin_expect use.
8935         * include/ctype.h (__ctype_b_loc): Tweak type punning to make gcc 3.3
8936         happy.
8937         (__ctype_toupper_loc, __ctype_tolower_loc): Likewise.
8939 2003-03-15  Ulrich Drepper  <drepper@redhat.com>
8941         * sysdeps/unix/sysv/linux/ia64/system.c: Use the generic Linux
8942         code for most parts.
8944 2003-03-15  Roland McGrath  <roland@redhat.com>
8946         * sysdeps/unix/sysv/linux/i386/system.c: Moved to ...
8947         * sysdeps/unix/sysv/linux/system.c: ... here.
8948         (FORK): Don't #define if already #define'd.
8949         * sysdeps/unix/sysv/linux/s390/system.c: File removed.
8950         * sysdeps/unix/sysv/linux/kernel-features.h [__powerpc__]:
8951         (__ASSUME_CLONE_THREAD_FLAGS): Define for kernel >= 2.5.64.
8953         * dlfcn/tst-dlinfo.c: New file.
8954         * dlfcn/Makefile (tests): Add tst-dlinfo.
8955         ($(objpfx)tst-dlinfo): New target.
8957         * dlfcn/dlinfo.c: New file.
8958         * dlfcn/Makefile (libdl-routines): Add it.
8959         * dlfcn/Versions (libdl: GLIBC_2.3.3): Add dlinfo.
8960         * dlfcn/dlfcn.h [__USE_GNU]: Declare dlinfo.
8961         [__USE_GNU] (RTLD_DI_*): New enum constants.
8962         [__USE_GNU] (Dl_serpath, Dl_serinfo): New types.
8963         * elf/dl-load.c (cache_rpath): New inline function.
8964         (_dl_map_object): Use it.
8965         (_dl_rtld_di_serinfo): New function.
8966         * sysdeps/generic/ldsodefs.h: Declare it.
8967         * elf/Versions (ld: GLIBC_PRIVATE): Add it.
8969         * sysdeps/powerpc/elf/libc-start.c (AUX_VECTOR_INIT): Define it.
8970         (LIBC_START_MAIN, LIBC_START_MAIN_AUXVEC_ARG, MAIN_AUXVEC_ARG)
8971         (INIT_MAIN_ARGS): Define, and #include <sysdeps/generic/libc-start.c>.
8972         (__libc_start_main): Just call the generic one for most of the work.
8974         * sysdeps/generic/libc-start.c [LIBC_START_MAIN]: If defined, define a
8975         static function by that name instead of BP_SYM (__libc_start_main).
8976         [LIBC_START_MAIN_AUXVEC_ARG]: Take AUXVEC as argument.
8977         [MAIN_AUXVEC_ARG]: Pass 4th argument to MAIN.
8978         [INIT_MAIN_ARGS]: Give INIT the same args as MAIN.
8980         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start) [DL_PLATFORM_AUXV]:
8981         Use this macro for extra AT_* cases.
8982         * sysdeps/unix/sysv/linux/powerpc/dl-sysdep.c (DL_PLATFORM_AUXV):
8983         New macro, guts from ...
8984         (__aux_init_cache): ... here, function removed.
8985         (DL_PLATFORM_INIT): Don't define this.
8987         * sysdeps/powerpc/powerpc32/memset.S: Put __cache_line_size in bss.
8988         * sysdeps/powerpc/powerpc64/memset.S: Likewise.
8990         * Versions.def (libthread_db): Add GLIBC_2.3.3 set.
8992 2003-03-14  Roland McGrath  <roland@redhat.com>
8994         * dlfcn/dlerror.c (dlerror): If objname is "", don't put ": " after it.
8996 2003-03-14  Jakub Jelinek  <jakub@redhat.com>
8998         * sysdeps/unix/sysv/linux/Makefile (syscall-%.h): Fix a typo.
9000         * sysdeps/unix/sysv/linux/sparc/sparc64/pause.c: Include
9001         sysdeps/posix/pause.c instead of sysdeps/unix/common/pause.c.
9003 2003-03-14  Alexandre Oliva  <aoliva@redhat.com>
9005         * sysdeps/mips/fpu/bits/mathdef.h: New.
9006         (__NO_LONG_DOUBLE_MATH): Define for o32.
9008         * sysdeps/mips/sys/asm.h: Formatting changes.
9009         (PTR, PTRSIZE, PTRLOG): Adjust for all 3 ABIs.
9010         (CPADD): Define for all of them.
9011         (SETUP_GP, SETUP_GPX, SETUP_GPX_L, SAVE_GP, SETUP_GP64,
9012         SETUP_GPX64, SETUP_GPX64_L, RESTORE_GP64, USE_ALT_CP,
9013         NARGSAVE): Define per ABI spec.
9014         (END): Don't redefine.
9015         (LONG_SLL, LONG_SLLV, LONG_SRL, LONG_SRLV, LONG_SRA,
9016         LONG_SRAV): Remove duplicate definitions.
9017         (PTR_ADD, PTR_ADDI, PTR_ADDU, PTR_ADDIU, PTR_SUB, PTR_SUBI,
9018         PTR_SUBU, PTR_SUBIU, PTR_L, PTR_S, PTR_SLL, PTR_SLLV, PTR_SRL,
9019         PTR_SRLV, PTR_SRA, PTR_SRAV, PTR_SCALESHIFT): Define for n32.
9020         (PTR_LA): Define for all 3 ABIs.
9022         * sysdeps/mips/dl-machine.h: Include sys/asm.h.
9023         (elf_machine_matches_host): Prevent linking of o32 and n32
9024         together.
9025         (elf_machine_dynamic): Document assumption on $gp.
9026         (STRINGXP, STRINGXV, STRINGV_): New macros.
9027         (elf_machine_load_address): Use them to stringize PTR_LA and
9028         PTR_SUBU.
9029         (ELF_DL_FRAME_SIZE, ELF_DL_SAVE_ARG_REGS,
9030         ELF_DL_RESTORE_ARG_REGS, IFABIO32): New macros used in...
9031         (_dl_runtime_resolve): Adjust it for all 3 ABIs.
9032         (__dl_runtime_resolve): Cast the symtab initializer to the
9033         right type.
9034         (RTLD_START): Use it.  Adjust it for all 3 ABIs.
9035         (elf_machine_rel): Mark as always_inline in RTLD_BOOTSTRAP.
9036         Handle 64-bit R_MIPS_REL composite relocation and accept
9037         R_MIPS_64 relocations to shift addend size to 64 bits.
9038         Document assumption regarding local GOT entries.  Document
9039         backward-compatibility departing from the ABI behavior in
9040         applying relocations that reference section symbols, no longer
9041         used.  Support relocations to mis-aligned offsets.
9042         * sysdeps/mips/mips64/dl-machine.h: Deleted, obsolete.
9044         * sysdeps/unix/sysv/linux/mips/readelflib.c: New file.
9046         * sysdeps/unix/sysv/linux/mips/kernel_sigaction.h
9047         (_KERNEL_NSIG_BPW): Define in terms of _MIPS_SZLONG.
9048         * sysdeps/unix/sysv/linux/mips/sigaction.c: Define restore and
9049         restore_rt functions.  Use them.
9051         * sysdeps/unix/sysv/linux/mips/sys/tas.h (_test_and_set): Don't
9052         .set mips2 on new abis.
9054 2003-03-13  Ulrich Drepper  <drepper@redhat.com>
9056         * posix/getconf.c: Recognize POSIX2_SYMLINKS.
9057         * sysdeps/generic/bits/confname.h: Define _PC_2_SYMLINKS.
9058         * sysdeps/posix/fpathconf.c: Handle _PC_2_SYMLINKS.
9059         * sysdeps/posix/pathconf.c: Likewise.
9060         * sysdeps/unix/sysv/linux/fpathconf.c: Likewise.
9061         * sysdeps/unix/sysv/linux/pathconf.c: Likewise.
9062         * sysdeps/unix/sysv/linux/pathconf.h: Define statfs_symlinks.
9064         * sysdeps/unix/sysv/linux/linux_fsinfo.h: Define some more magic
9065         words.
9067 2003-03-14  Alexandre Oliva  <aoliva@redhat.com>
9069         * include/gmp.h: Include/gmp-mparam.h.
9070         * stdlib/strtod.c: Include gmp-mparam.h before gmp.h and
9071         gmp-impl.h.
9073         * elf/dl-conflict.c: Don't compile _dl_resolve_conflicts if
9074         ELF_MACHINE_NO_RELA is set.
9075         * elf/rtld.c (dl_main): No prelink support for REL-only.
9077         * sysdeps/generic/ldconfig.h (FLAG_MIPS64_LIBN32,
9078         FLAG_MIPS64_LIBN64): Define.
9079         * elf/cache.c (print_entry): Handle mips64 n32 and n64.
9081         * sysdeps/mips/memcpy.S: Map t0-3 to a4-7 on new abis.
9082         * sysdeps/mips/memset.S: Likewise.
9083         * sysdeps/mips/sys/regdef.h: Alias a4-7 or t0-3 to $8-11
9084         depending on the ABI.
9086         * sysdeps/mips/atomicity.h (exchange_and_add, atomic_add):
9087         Don't .set mips2 on new abi.
9088         (compare_and_swap): Likewise.  Support 64-bit longs on n64.
9090         * stdlib/fpioconst.h: Include gmp.h with angle brackets.
9092 2003-03-13  Roland McGrath  <roland@redhat.com>
9094         * elf/dl-load.c (_dl_map_object_from_fd): Bail if no PT_LOAD phdrs
9095         found.  Reported by Alexandre Oliva <aoliva@redhat.com>.
9097 2003-03-13  Alexandre Oliva  <aoliva@redhat.com>
9099         * stdio-common/_itoa.c (_itoa_base_table): Make 64-bit
9100         literals long long.
9101         * stdlib/fpioconst.c: Likewise.
9102         * stdlib/strtod.c: Likewise.
9104         * sysdeps/mips/add_n.S: Use L macro for local labels.
9105         * sysdeps/mips/addmul_1.S: Likewise.
9106         * sysdeps/mips/lshift.S: Likewise.
9107         * sysdeps/mips/memcpy.S: Likewise.
9108         * sysdeps/mips/memset.S: Likewise.
9109         * sysdeps/mips/mul_1.S: Likewise.
9110         * sysdeps/mips/rshift.S: Likewise.
9111         * sysdeps/mips/sub_n.S: Likewise.
9112         * sysdeps/mips/submul_1.S: Likewise.
9113         * sysdeps/mips/mips64/add_n.S: Likewise.
9114         * sysdeps/mips/mips64/addmul_1.S: Likewise.
9115         * sysdeps/mips/mips64/lshift.S: Likewise.
9116         * sysdeps/mips/mips64/mul_1.S: Likewise.
9117         * sysdeps/mips/mips64/rshift.S: Likewise.
9118         * sysdeps/mips/mips64/sub_n.S: Likewise.
9119         * sysdeps/mips/mips64/submul_1.S: Likewise.
9120         * sysdeps/unix/mips/sysdep.h: Define L() according to ABI
9121         conventions.  Define END as in sys/asm.h.
9122         * sysdeps/unix/mips/sysdep.S: Likewise.
9123         * sysdeps/unix/mips/wait.S: Likewise.
9124         * sysdeps/unix/sysv/linux/mips/clone.S: Likewise.
9126         * sysdeps/ieee754/dbl-64/dbl2mpn.c (__mpn_extract_double):
9127         Cast shifted values that may be too narrow to mp_limb_t.
9128         * sysdeps/ieee754/dbl-64/mpn2dbl.c (__mpn_construct_double):
9129         Likewise.
9130         * sysdeps/ieee754/flt-32/mpn2flt.c (__mpn_construct_float):
9131         Likewise.
9132         * sysdeps/ieee754/ldbl-128/ldbl2mpn.c
9133         (__mpn_extract_long_double): Likewise.
9134         * sysdeps/ieee754/ldbl-128/mpn2ldbl.c
9135         (__mpn_construct_long_double): Likewise.
9136         * sysdeps/ieee754/ldbl-96/ldbl2mpn.c
9137         (__mpn_extract_long_double): Likewise.
9138         * sysdeps/ieee754/ldbl-96/mpn2ldbl.c
9139         (__mpn_construct_long_double): Likewise.
9141 2003-03-13  Roland McGrath  <roland@redhat.com>
9143         * elf/Makefile ($(objpfx)librtld.mk): Tweak regexp so that one-line
9144         entries in the map file match too.
9146 2003-03-13  Guido Guenther  <agx@sigxcpu.org>
9148         * sysdeps/unix/sysv/linux/mips/clone.S: introduce and use local
9149         label .Lthread_start since current binutils don't allow branches
9150         to globally visible symbols.
9152 2003-03-13  Jakub Jelinek  <jakub@redhat.com>
9154         * sysdeps/unix/sysv/linux/ia64/sysdep.h (BREAK_INSN_1, BREAK_INSN,
9155         ASM_OUTARGS_0, ASM_OUTARGS_1, ASM_OUTARGS_2, ASM_OUTARGS_3,
9156         ASM_OUTARGS_4, ASM_OUTARGS_5, ASM_OUTARGS_6): Define.
9157         (INTERNAL_SYSCALL, INLINE_SYSCALL): Use it.  Make syscall arguments
9158         clobbered by the syscall.
9159         (ASM_ARGS_1, ASM_ARGS_2, ASM_ARGS_3, ASM_ARGS_4, ASM_ARGS_5,
9160         ASM_ARGS_6): Change constraints from r to index of corresponding
9161         output register.
9162         * sysdeps/unix/sysv/linux/ia64/clone2.S (__clone2): Swap
9163         ptid and ctid to match kernel.
9164         * sysdeps/unix/sysv/linux/ia64/system.c (FORK): Likewise.
9166 2003-03-12  Steven Munroe  <sjmunroe@us.ibm.com>
9168         * sysdeps/powerpc/powerpc64/elf/configure.in: Remove
9169         AC_DEFINE(PI_STATIC_AND_HIDDEN).  Not supported for PowerPC64.
9170         * sysdeps/powerpc/powerpc64/elf/configure: Regenerated.
9172 2003-03-11  Roland McGrath  <roland@redhat.com>
9174         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela):
9175         Check SYM_MAP rather than SYM as definedness check.
9176         Handle R_PPC64_ADDR32, R_PPC64_ADDR30, and R_PPC64_REL64 relocs.
9177         Don't handle R_PPC64_REL24 reloc.
9178         Mostly from Steven Munroe <sjmunroe@us.ibm.com>.
9180         * sysdeps/powerpc/powerpc64/dl-machine.h
9181         [USE_TLS] (elf_machine_type_class): Match all the TLS relocs in a
9182         block, so we cover all the TPREL16* flavors without 6 ||s.
9183         [USE_TLS] (elf_machine_tprel): New function.
9184         (elf_machine_rela) [USE_TLS]: Use elf_machine_tprel for TPREL64 reloc,
9185         and handle TPREL16 relocs too.  Return rather than break for DTPREL64.
9186         Mostly from Steven Munroe <sjmunroe@us.ibm.com>.
9188 2003-03-11  Ralf Baechle  <ralf@linux-mips.org>
9190         * sysdeps/unix/sysv/linux/mips/clone.S (__thread_start): Use jal
9191         instead of jalr to invoke subroutine so restoring the $gp register
9192         will work properly.
9194 2003-03-11  Martin Schwidefsky  <schwidefsky@de.ibm.com>
9196         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (__NR_pread64): Define
9197         to __NR_pread if not defined.
9198         (__NR_pwrite64): Define to __NR_pwrite if not defined.
9200 2003-03-11  Jakub Jelinek  <jakub@redhat.com>
9202         * sysdeps/unix/sysv/linux/ia64/system.c: New file.
9203         * sysdeps/unix/sysv/linux/kernel-features.h
9204         (__ASSUME_CLONE_THREAD_FLAGS): Define for IA-64 and s390* with
9205         kernel >= 2.5.64.
9207 2003-03-11  Jakub Jelinek  <jakub@redhat.com>
9209         * sysdeps/generic/dl-sysdep.c (_dl_important_hwcaps): If CNT == 1,
9210         allocate space even for the trailing '/'.
9211         Reported by John Reiser <jreiser@BitWagon.com>.
9213         * sysdeps/unix/sysv/linux/ia64/sysdep.h (LOAD_ARGS_6, ASM_ARGS_6,
9214         ASM_CLOBBERS_6): Define.
9215         (ASM_CLOBBERS_5): Use ASM_CLOBBERS_6.
9216         * sysdeps/unix/sysv/linux/ia64/clone2.S (__clone2): Reorder arguments
9217         to match IA-32 order.
9218         * sysdeps/unix/sysv/linux/i386/clone.S: Fix comment.
9220 2003-03-10  Steven Munroe  <sjmunroe@us.ibm.com>
9222         * sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S: Don't clobber R7.
9223         Copy extra params for NPTL to registers used in clone syscall.
9225 2003-03-10  Martin Schwidefsky  <schwidefsky@de.ibm.com>
9227         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Correct system
9228         call names for pread and pwrite.
9230 2003-03-10  Roland McGrath  <roland@redhat.com>
9232         * dlfcn/Makefile (libdl-routines): Add dladdr1.
9233         * dlfcn/dladdr1.c: New file.
9234         * dlfcn/dlfcn.h [__USE_GNU]: Declare dladdr1.
9235         [__USE_GNU] (RTLD_DL_SYMENT, RTLD_DL_LINKMAP): New enum constants.
9236         * elf/dl-addr.c (_dl_addr): Take new args, a struct link_map ** and
9237         a const ElfNN_Sym ** to fill in.
9238         * include/dlfcn.h: Update decl.  Include <link.h>.
9239         * dlfcn/dladdr.c (dladdr): Update caller.
9240         * malloc/mtrace.c (tr_where): Likewise.
9241         * sysdeps/generic/elf/backtracesyms.c: Likewise.
9242         * sysdeps/generic/elf/backtracesymsfd.c: Likewise.
9243         * dlfcn/Versions (libdl: GLIBC_2.3.3): New set, add dladdr1.
9244         * Versions.def (libdl): Define GLIBC_2.3.3 set.
9246         * sysdeps/unix/make-syscalls.sh: Generate $(compile-syscall) for
9247         assembler command.
9248         * sysdeps/unix/Makefile (compile-syscall): New variable.
9249         Pass -g0 to compiler for assembling syscall stubs from stdin.
9251         * sysdeps/i386/sysdep.h [HAVE_CPP_ASM_DEBUGINFO]
9252         (STABS_CURRENT_FILE, STABS_CURRENT_FILE1, STABS_FUN, STABS_FUN_END):
9253         Define these to do nothing.
9255         * configure.in: New check for -g on .S files.
9256         * configure: Regenerated.
9257         * config.make.in (have-cpp-asm-debuginfo): New variable.
9258         * config.h.in (HAVE_CPP_ASM_DEBUGINFO): New #undef.
9259         * Makeconfig (ASFLAGS): New variable, if undefined and
9260         $(have-cpp-asm-debuginfo), take options matching -g% from $(CFLAGS).
9261         * Makerules (compile.S, COMPILE.S): Use $(ASFLAGS).
9263 2003-03-09  Roland McGrath  <roland@redhat.com>
9265         * sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S: Take 3 new args
9266         used by NPTL on new kernels.  From Paul Mackerras <paulus@samba.org>.
9268 2003-03-09  Ulrich Drepper  <drepper@redhat.com>
9270         * po/fi.po: Update from translation team.
9271         * po/ca.po: Likewise.
9272         * po/da.po: Likewise.
9274 2003-03-08  Ulrich Drepper  <drepper@redhat.com>
9276         * rt/tst-aio7.c (do_test): Change BYTES into a #define.
9278 2003-03-07  Ulrich Drepper  <drepper@redhat.com>
9280         * rt/tst-aio7.c (do_test): Give BUFF permanent extent, too.
9282         * sysdeps/powerpc/fpu/w_sqrt.c: Fix comment.
9284 2003-03-07  Roland McGrath  <roland@redhat.com>
9286         * sysdeps/s390/s390-32/sysdep.h (L): Use .Lfoo instead of foo.
9287         * sysdeps/s390/s390-64/sysdep.h (L): Likewise.
9289 2003-03-04  Guido Guenther  <agx@sigxcpu.org>
9291         * sysdeps/unix/sysv/linux/mips/syscalls.list: Remove unneeded
9292         stubs, we have INLINE_SYSCALL.
9293         * sysdeps/unix/sysv/linux/mips/bits/mman.h: Define MAP_POPULATE,
9294         MAP_NONBLOCK.
9296 2003-03-06  Roland McGrath  <roland@redhat.com>
9298         * rt/tst-aio7.c (do_test): Revert last change.  Instead, give CB1
9299         permanent extent and add a comment about testing its implicit teardown.
9301 2003-03-06  Martin Schwidefsky  <schwidefsky@de.ibm.com>
9303         * rt/tst-aio7.c (do_test): Cancel i/o on CB1 before it's out of scope.
9305 2003-03-05  Ulrich Drepper  <drepper@redhat.com>
9307         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage): Fix
9308         reversed __builtin_expect expectation.
9310 2003-03-05  Roland McGrath  <roland@redhat.com>
9312         * stdio-common/sscanf.c: Use prototype defn with ... syntax.
9313         * libio/swscanf.c: Likewise.
9314         * libio/swprintf.c: Likewise.
9316 2003-03-04  Roland McGrath  <roland@redhat.com>
9318         * sysdeps/powerpc/powerpc64/dl-machine.h: Include <dl-tls.h>.
9319         (elf_machine_rela): Always use RESOLVE_MAP, needed for
9320         R_PPC64_JMP_SLOT as well as TLS cases.
9321         (BIT_INSERT): Move parenthesis where it ought to have been.
9322         Reported by Steven Munroe <sjmunroe@us.ibm.com>.
9324         * posix/confstr.c (confstr): Correct STRING_LEN values for
9325         _CS_GNU_LIBC_VERSION and _CS_GNU_LIBPTHREAD_VERSION, add missing
9326         break.  Reported by Alexandre Julliard <julliard@winehq.com>.
9328 2003-03-04  Jakub Jelinek  <jakub@redhat.com>
9330         * sysdeps/ia64/fpu/libm-test-ulps: Regenerated.
9332 2003-03-04  Ulrich Drepper  <drepper@redhat.com>
9334         * sysdeps/unix/sysv/linux/x86_64/clone.S: Add support for the new
9335         clone parameters.
9337         * po/sv.po: Update from translation team.
9339 2003-03-04  Andreas Jaeger  <aj@suse.de>
9340             Ulrich Drepper  <drepper@redhat.com>
9342         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Fix comments.
9344 2003-03-03  Ulrich Drepper  <drepper@redhat.com>
9346         * sysdeps/generic/dl-sysdep.h: Add double include protection.
9348         * po/tr.po: Update from translation team.
9350         * elf/dl-load.c (_dl_map_object_from_fd): Determine whether there
9351         are holes between the segments.  Only call mprotect to set
9352         proection to PROT_NONE if there are some.
9354         * elf/dl-load.c (struct filebuf): Actually use FILEBUF_SIZE.
9355         Update comment.
9357         * include/sched.h (__clone2): Use ... instead of adding all the
9358         new parameters.
9360 2003-03-03  Roland McGrath  <roland@redhat.com>
9362         * elf/dl-load.c (struct filebuf): Fix typo in last change.
9364         * sysdeps/powerpc/powerpc32/elf/configure.in: Don't define
9365         PI_STATIC_AND_HIDDEN.
9367 2003-03-03  Ian Wienand  <ianw@gelato.unsw.edu.au>
9369         * sysdeps/unix/sysv/linux/ia64/clone2.S: Update to take extra clone
9370         flags.
9371         * include/sched.h: Update clone2 prototype.
9373 2003-03-03  Andreas Jaeger  <aj@suse.de>
9375         * math/tgmath.h (__TGMATH_UNARY_REAL_RET_ONLY): New definition.
9376         (llrint): Use it to correct return type.
9377         (lrint): Likewise.
9378         (lround): Likewise.
9379         (llround): Likewise.
9381 2003-03-03  Ulrich Drepper  <drepper@redhat.com>
9383         * elf/dl-load.c (struct filebuf): For 64-bit platforms use 640
9384         byte filebuf size.
9386         * libio/fileops.c (_IO_new_file_fopen): Close stillborn descriptor
9387         if ccs parameter isn't valid.  Reported by Andreas Schwab.
9389 2003-03-03  Martin Schwidefsky  <schwidefsky@de.ibm.com>
9391         * sysdeps/unix/sysv/linux/s390/s390-32/syscall.S (syscall): Add support
9392         for system call numbers > 255.
9393         * sysdeps/unix/sysv/linux/s390/s390-32/syscall.h (DO_CALL,
9394         INLINE_SYSCALL, INTERNAL_SYSCALL_DIRECT, INTERNAL_SYSCALL_SVC0,
9395         INTERNAL_SYSCALL): Likewise.
9396         * sysdeps/unix/sysv/linux/s390/s390-64/syscall.S (syscall): Likewise.
9397         * sysdeps/unix/sysv/linux/s390/s390-64/syscall.h (DO_CALL,
9398         INLINE_SYSCALL, INTERNAL_SYSCALL_DIRECT, INTERNAL_SYSCALL_SVC0,
9399         INTERNAL_SYSCALL): Likewise.
9401 2003-03-03  Martin Schwidefsky  <schwidefsky@de.ibm.com>
9403         * sysdeps/generic/dl-tls.c (_dl_deallocate_tls): Don't free the dtv
9404         array if it is the initial dtv.
9406 2003-03-03  Ulrich Drepper  <drepper@redhat.com>
9408         * po/es.po: Update from translation team.
9409         * po/fr.po: Likewise.
9410         * po/gl.po: Likewise.
9411         * po/sk.po: Likewise.
9412         * po/sv.po: Likewise.
9414         * sysdeps/unix/sysv/linux/syscalls.list: Add remap_file_pages entry.
9415         * misc/sys/mman.h: Add prototype for remap_file_pages.
9416         * sysdeps/generic/remap_file_pages.c: New file.
9417         * misc/Makefile (routines): Add remap_file_pages.
9418         * misc/Versions [libc:GLIBC_2.3.3]: Add remap_file_pages.
9420         * sysdeps/unix/sysv/linux/x86_64/bits/mman.h: Define MAP_POPULATE
9421         and MAP_NONBLOCK.
9422         * sysdeps/unix/sysv/linux/s390/bits/mman.h: Likewise.
9423         * sysdeps/unix/sysv/linux/powerpc/bits/mman.h: Likewise
9424         * sysdeps/unix/sysv/linux/m68k/bits/mman.h: Likewise.
9425         * sysdeps/unix/sysv/linux/arm/bits/mman.h: Likewise.
9426         * sysdeps/unix/sysv/linux/ia64/bits/mman.h: Likewise.
9427         * sysdeps/unix/sysv/linux/hppa/bits/mman.h: Likewise.
9428         * sysdeps/unix/sysv/linux/alpha/bits/mman.h: Likewise.
9429         * sysdeps/unix/sysv/linux/i386/bits/mman.h: Likewise.
9431 2003-03-03  Roland McGrath  <roland@redhat.com>
9433         * sysdeps/ia64/dl-fptr.c (__ia64_make_fptr): Revert last change.
9434         * sysdeps/ia64/dl-machine.h: Likewise.
9435         * sysdeps/ia64/dl-symaddr.c (_dl_symbol_address): Remove const from
9436         argument type.
9437         * sysdeps/ia64/dl-lookupcfg.h: Update decl.
9439         * sysdeps/wordsize-64/strtol_l.c (strtoll_l): Define as weak alias.
9440         * sysdeps/wordsize-64/strtoul_l.c (strtoull_l): Define as weak alias.
9441         * locale/Versions (libc: GLIBC_2.3): Move those to ...
9442         * sysdeps/wordsize-32/Versions (libc: GLIBC_2.3): ... here, new file.
9443         * sysdeps/wordsize-64/Versions (libc: GLIBC_2.3.3) Likewise.
9444         * Versions.def (libc): Add GLIBC_2.3.3 set.
9446         * sysdeps/ia64/dl-fptr.c (__ia64_make_fptr): Add const to MAP arg.
9447         * sysdeps/ia64/dl-machine.h: Update decl.
9449 2003-03-03  Andreas Jaeger  <aj@suse.de>
9451         * sysdeps/unix/clock_settime.c (HANDLE_REALTIME): Add missing brace.
9453 2003-03-02  Roland McGrath  <roland@redhat.com>
9455         * scripts/abilist.awk: Reject data items with apparent 0 size.
9457         * scripts/merge-abilist.awk: Restore hack to elide pattern foo.*/bar
9458         after foo.* as if it were a duplicate.
9460         * sysdeps/unix/sysv/linux/ia64/brk.S: Add .type and .size for __curbrk.
9462 2003-03-02  Ulrich Drepper  <drepper@redhat.com>
9464         * elf/dl-load.c (struct filebuf): Reduce buf array to 512 bytes.
9466         * sysdeps/generic/bits/time.h: Define CLOCK_MONOTONIC.
9467         * sysdeps/posix/clock_getres.c: Define code for CLOCK_REALTIME only
9468         if not already defined.  Use SYSDEP_GETRES to allow other files to
9469         provide alternative implementations.
9470         * sysdeps/unix/sysv/linux/clock_getres.c: New file
9471         * sysdeps/unix/clock_gettime.c: Define code for CLOCK_REALTIME only
9472         if not already defined.  Use SYSDEP_GETTIME to allow other files to
9473         provide alternative implementations.
9474         * sysdeps/unix/sysv/linux/clock_gettime.c: New file.
9475         * sysdeps/unix/clock_settime.c: Define code for CLOCK_REALTIME only
9476         if not already defined.  Use SYSDEP_GETTIME to allow other files to
9477         provide alternative implementations.
9478         * sysdeps/unix/sysv/linux/clock_settime.c: New file.
9479         * sysdeps/unix/clock_nanosleep.c: Use SYSDEP_NANOSLEEP to allow
9480         other files to provide alternative implementations.  Rearrange
9481         tests for invalid parameters.
9482         * sysdeps/unix/sysv/linux/clock_nanosleep.c: New file.
9483         * sysdeps/unix/sysv/linux/sysconf.c: New file.
9484         * sysdeps/unix/sysv/linux/kernel-features.h: Define
9485         __ASSUME_POSIX_TIMERS for Linux 2.5.63 and up.
9486         * sysdeps/unix/sysv/linux/bits/posix_opt.h: Define
9487         _POSIX_MONOTONIC_CLOCK.
9489 2003-03-02  Roland McGrath  <roland@redhat.com>
9491         * scripts/merge-abilist.awk: More checks for bogus input.
9492         Uniquify duplicate config names.
9494         * scripts/abilist.awk: Don't distinguish weak symbols in normal output.
9496         * sysdeps/powerpc/powerpc32/dl-machine.c (_dl_reloc_overflow): Renamed
9497         from dl_reloc_overflow, make global.
9498         (__process_machine_rela): Update callers.
9499         * sysdeps/powerpc/powerpc32/dl-machine.h: Declare _dl_reloc_overflow.
9500         Add attribute_hidden to __process_machine_rela decl.
9501         (elf_machine_type_class, elf_machine_rela): Handle 16-bit TLS relocs.
9503         * sysdeps/generic/libc-start.c (__libc_start_main): Don't assign const
9504         variable.
9506         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_fixup_plt):
9507         Don't use weak_extern for dl_rtld_map.  Instead check only if [SHARED].
9508         (elf_machine_rela): Clean up.
9510         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Clean up.
9512         PowerPC TLS support contributed by Paul Mackerras <paulus@samba.org>.
9513         * sysdeps/powerpc/powerpc32/elf/configure.in: New file.
9514         * sysdeps/powerpc/powerpc32/elf/configure: New generated file.
9515         * elf/tls-macros.h [__powerpc__ && !__powerpc64__]
9516         (TLS_LE, TLS_IE, TLS_LD, TLS_GD): Define them.
9517         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Support
9518         new relocs for TLS.
9520         * sysdeps/powerpc/dl-tls.h (TLS_TP_OFFSET, TLS_DTV_OFFSET): Move these
9521         macros out of [SHARED].
9522         (TLS_TPREL_VALUE, TLS_DTPREL_VALUE): New macros.
9524         * elf/elf.h: Define R_PPC_* relocs for TLS support.
9525         Clean up R_PPC64_* macro definition comments.
9527         * configure.in: In "running configure fragment for" message,
9528         omit $srcdir from the name if we prepended it.
9529         * configure: Regenerated.
9531         * elf/dl-reloc.c (allocate_static_tls): Fix calculations.
9532         From Jakub Jelinek <jakub@redhat.com>.
9534         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Revert last change,
9535         which duplicated the O_DIRECT defn.
9537 2003-03-01  GOTO Masanori  <gotom@debian.or.jp>
9539         * stdlib/stdlib.h: Add missing __USE_BSD enclosure for BSD derived
9540         random functions.
9542 2003-03-01  Andreas Schwab  <schwab@suse.de>
9544         * resolv/Makefile (tests): Don't depend on
9545         $(objpfx)mtrace-tst-leaks when cross compiling.
9547         * sysdeps/m68k/dl-machine.h (_dl_start_user): Access
9548         __libc_stack_end through GOT since it is a global symbol.
9550 2003-03-01  GOTO Masanori  <gotom@debian.or.jp>
9552         * argp/argp.h: Fix a typo.
9553         Reported by H.S.Teoh <hsteoh@quickfur.ath.cx>.
9555         * manual/terminal.texi: Fix cfmakeraw() definition from int to void.
9557 2003-02-27  Pat Rankin  <rankin@pactechdata.com>
9559         * posix/regexec.c (proceed_next_node): Cast re_string_get_buffer to
9560         char *.
9561         (get_subexp): Likewise.
9563 2003-03-01  GOTO Masanori  <gotom@debian.or.jp>
9565         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (O_DIRECT): Define.
9567 2003-02-26  Steven Munroe  <sjmunroe@us.ibm.com>
9569         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h (O_DIRECT): Define.
9571 2003-02-27  Roland McGrath  <roland@redhat.com>
9573         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela): Remove
9574         special case for dl_rtld_map in R_PPC64_RELATIVE; it's harmless to
9575         repeat it and avoids the test for the common case.
9576         Clean up and fix calculations for TLS relocs.
9578         * sysdeps/powerpc/powerpc64/dl-tls.h: Moved to ...
9579         * sysdeps/powerpc/dl-tls.h: ... here.
9580         (TLS_TP_OFFSET): New macro.
9582         * sunrpc/svc_udp.c (svcudp_recv): Add a cast to last change.
9584 2003-02-27  Ulrich Drepper  <drepper@redhat.com>
9586         * sysdeps/i386/fpu/libm-test-ulps: Increase ULPs for yn due to
9587         code generation changes in recent gcc.
9589 2003-02-26  Steven Munroe  <sjmunroe@us.ibm.com>
9591         * sysdeps/powerpc/fpu/fpu_control.h (_FPU_GETCW, _FPU_SETCW):
9592         Rename argument to avoid symbol conflict.
9594         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h
9595         [__USE_GNU] (O_DIRECT): New macro.
9597 2003-02-24  David Mosberger  <davidm@hpl.hp.com>
9599         * sysdeps/unix/sysv/linux/ia64/sysdep.S (__syscall_error): Fix
9600         unwind info.
9602 2003-02-27  Ulrich Drepper  <drepper@redhat.com>
9604         * resolv/res_libc.c [USE___THREAD] (_res): Don't need the
9605         initializer anymore now that res_thread_freeres is more careful.
9607         * sunrpc/svc_udp.c (svcudp_recv): Remove all control messages
9608         except the PKTINFO.  Reset interface in PKTINFO.
9609         Patch by Neil Brown <neilb@cse.unsw.edu.au> [PR libc/4973].
9611 2003-02-25  Steven Munroe  <sjmunroe@us.ibm.com>
9613         * elf/elf.h: Add new R_PPC64_* relocs for TLS.
9614         * elf/tls-macros.h [__powerpc64__] (TLS_LE, TLS_IE, TLS_LD, TLS_GD):
9615         Define.
9616         * sysdeps/powerpc/powerpc64/elf/configure.in: New file.
9617         * sysdeps/powerpc/powerpc64/elf/configure: New file (generated).
9618         * sysdeps/powerpc/powerpc64/dl-machine.h: Support new TLS relocs.
9619         * sysdeps/powerpc/powerpc64/dl-tls.h: New file.
9621         * sysdeps/powerpc/elf/libc-start.c (__libc_start_main):
9622         Do DL_SYSDEP_OSCHECK here, matching 2002-12-01 change to generic file.
9624 2003-02-25  Andreas Jaeger  <aj@suse.de>
9626         * manual/memory.texi (Malloc Tunable Parameters): Clarify
9627         behaviour of M_MMAP_THRESHOLD.
9629 2003-02-25  Roland McGrath  <roland@redhat.com>
9631         * resolv/res_init.c (res_thread_freeres): Bail out if _res.nscount is
9632         zero, inidicating _res was not initialized yet.
9634 2003-02-24  Ulrich Drepper  <drepper@redhat.com>
9636         * sysdeps/unix/sysv/linux/ttyname_r.c (__ttyname_r): Remove EACCES
9637         test.
9639 2003-02-24  Roland McGrath  <roland@redhat.com>
9641         * sysdeps/posix/pause.c: Add LIBC_CANCEL_HANDLED.
9643 2003-02-23  Roland McGrath  <roland@redhat.com>
9645         * sysdeps/posix/pause.c: New file.
9646         * sysdeps/unix/common/pause.c: File removed.
9648 2003-02-23  Ulrich Drepper  <drepper@redhat.com>
9650         * sysdeps/generic/bits/confname.h: Remove #ifs.
9652         * posix/Makefile (CFLAGS-regex.c): Remove RE_ENABLE_I18N definition.
9653         * posix/regex_internal.h (RE_ENABLE_I18N): Pretty printing.
9655         * resolv/res_libc.c [USE___THREAD] (_res): Initialize _vcsock
9656         element to -1.
9658 2003-02-22  Ulrich Drepper  <drepper@redhat.com>
9660         * sysdeps/generic/dl-sysdep.c: Avoid warning.
9662 2003-02-22  Roland McGrath  <roland@redhat.com>
9664         * resolv/tst-leaks.c: New file by Daniel Jacobowitz <drow@mvista.com>.
9665         * resolv/Makefile (tests): Add tst-leaks.
9666         ($(objpfx)tst-leaks): Depend on $(objpfx)libresolv.so.
9667         (tst-leaks-ENV): New variable.
9668         ($(objpfx)mtrace-tst-leaks): New target.
9669         (tests): Depend on it.
9671         * include/libc-internal.h: Declare __libc_thread_freeres.
9673         * Makerules: Fix last change to use $($(subdir)-version) when set.
9675         * Makerules (install-lib-nosubdir): Depend on installed
9676         libfoo-X.Y.Z.so and libfoo.so.NN files so they are installed
9677         regardless of the libfoo.so target's dependencies.
9679         * MakeTAGS (sub-make-vars): New variable, includes generating=t.
9680         Use that in $(MAKE) calls.
9682 2003-02-22  Ulrich Drepper  <drepper@redhat.com>
9684         * catgets/gencat.c (read_input_file): Collision between
9685         auto-assigned numbers and user-defined nubmers is not fatal.
9686         Handle it.
9687         Patch by Michael M. Lampkin <michael.lampkin@ieee.org>.
9688         * catgets/Makefile: Add rules to run test2.msg test.
9689         * catgets/test2.msg: New file.
9691         * catgets/gencat.c (main): Return 1 if messages have been printed.
9693         * iconv/iconv_prog.c (main): Unify messages.
9695         * stdlib/strtod.c (INTERNAL): Remove bogus clearing of second word
9696         when shifting retval.
9697         * stdlib/tst-strtod.c (main): Add strtold test case.
9698         Reported by Fred J. Tydeman <tydeman@tybor.com>.
9700 2003-02-21  Roland McGrath  <roland@redhat.com>
9702         * malloc/thread-freeres.c: Conditionalize on _LIBC_REENTRANT.
9703         * sunrpc/rpc_thread.c: Likewise for text_set_element use.
9704         (__rpc_thread_destroy): Add it to __libc_subfreeres too.
9706         * include/resolv.h: Add libc_hidden_proto for __res_nclose.
9707         * resolv/res_init.c (__res_nclose): Add libc_hidden_def.
9708         (res_thread_freeres): New function, on __libc_thread_subfreeres and
9709         __libc_subfreeres.
9711         * malloc/Versions (libc: GLIBC_PRIVATE): Add __libc_thread_freeres.
9712         * malloc/thread-freeres.c: New file.
9713         * malloc/Makefile (aux): Add it.
9714         * sunrpc/Versions (libc: GLIBC_PRIVATE): Removed.
9715         * sunrpc/rpc_thread.c (__rpc_thread_destroy): Put in special section
9716         "__libc_thread_freeres_fn" and add to __libc_thread_subfreeres set.
9718         * sysdeps/unix/sysv/linux/i386/geteuid.c (__geteuid): Typo fix.
9719         * sysdeps/unix/sysv/linux/i386/getgid.c (__getgid): Typo fix.
9721 2003-02-21  Roland McGrath  <roland@frob.com>
9723         * sysdeps/mach/hurd/opendir.c (__opendir): Use O_NONBLOCK in open.
9725         * iconvdata/Makefile (tests): Add bug-iconv3 only if
9726         [$(have-thread-library) = yes].
9728 2003-02-21  Ulrich Drepper  <drepper@redhat.com>
9730         * sysdeps/unix/sysv/linux/bits/signum.h (__SIGRTMAX): Define as _NSIG.
9732         * sysdeps/unix/sysv/linux/i386/getuid.c: Use INTERNAL_SYSCALL and do
9733         not chechk for errors (unless testing for 32bit variant).
9734         * sysdeps/unix/sysv/linux/i386/getgid.c: Likewise.
9735         * sysdeps/unix/sysv/linux/i386/geteuid.c: Likewise.
9736         * sysdeps/unix/sysv/linux/i386/getegid.c: Likewise.
9738 2003-02-21  Jakub Jelinek  <jakub@redhat.com>
9740         * sysdeps/x86_64/dl-machine.h (elf_machine_rela) <R_X86_64_PC32>:
9741         Check for signed overflow, not unsigned.
9743         * sysdeps/sparc/sparc64/elf/configure.in: New file.
9744         * sysdeps/unix/sysv/linux/sparc/sparc64/Makefile (sysdep-CFLAGS):
9745         Use -fcall-used-g6, not -fcall-used-g7.
9747 2003-02-21  Andreas Jaeger  <aj@suse.de>
9749         * sysdeps/x86_64/fpu/fesetenv.c (fesetenv): Fix setting of default
9750         mode.
9752         * sysdeps/x86_64/fpu/fsetexcptflg.c (fesetexceptflag): Do not
9753         clear whole mxcsr but only exceptions.
9755 2003-02-21  Roland McGrath  <roland@redhat.com>
9757         * Makerules: Filter $(install-lib-ldscripts) out of list of targets
9758         for libfoo.so that need $(make-link) rules.
9760 2003-02-21  Roland McGrath  <roland@frob.com>
9762         * sysdeps/mach/hurd/bits/typesizes.h (__DEV_T_TYPE): Use __U32_TYPE
9763         to match existing struct stat layout in mig protocols.
9765 2003-02-20  Ulrich Drepper  <drepper@redhat.com>
9767         * version.h (VERSION): Bump to 2.3.2.
9769         * elf/Makefile (distribute): Add reldep9.c, tst-array1.exp,
9770         tst-array2.exp, tst-array4.exp, tst-array2dep.c, check-textrel.c,
9771         and dl-sysdep.h.
9772         * sysdeps/generic/Dist: Add sysdep-cancel.h.
9773         * sysdeps/powerpc/nofpu/Dist: Add soft-supp.h.
9774         * sysdeps/unix/Dist: Add s-proto-bp.S and s-proto-cancel.S.
9775         * sysdeps/unix/sysv/linux/Dist: Add pathconf.h.
9776         * sysdeps/unix/sysv/linux/i386/Dist: Add bp-thunk.h.
9777         * sysdeps/unix/sysv/linux/powerpc/powerpc64/Dist: Add fe_nomask.c and
9778         ucontext_i.h.
9779         * Makefile (distribute): Add include/stubs-prologue.h,
9780         include/gnu/stubs.h, scripts/merge-abilist.awk, and
9781         scripts/extract-abilist.awk.
9783 2003-02-20  Roland McGrath  <roland@redhat.com>
9785         * math/Makefile (distribute): Don't add generated files.
9787 2003-02-20  Ulrich Drepper  <drepper@redhat.com>
9789         * math/Makefile: Rearrange variable definitions slightly to get
9790         definition in the right order.
9792 2003-02-20  Roland McGrath  <roland@redhat.com>
9794         * Makerules: Clean up conditional around include of tls.make.
9795         * Make-dist: Export generating=t to prevent using that.
9796         (+distinfo): Likewise for $(shell $(MAKE) ...) runs.
9798 2003-02-20  Ulrich Drepper  <drepper@redhat.com>
9800         * inet/rcmd.c (rresvport_af): Avoid using invliad values.  Wrap
9801         around in search if port IPPORT_RESERVED/2 has been test.
9803 2003-02-20  Paolo Bonzini  <bonzini@gnu.org>
9805         * posix/regcomp.c: Remove inclusions.
9806         * posix/regexec.c: Likewise.
9807         * posix/regex_internal.c: Likewise.
9808         * posix/regex_internal.h: Add inclusions here.
9809         * posix/regex.c: Only include sys/types.h before regex.h.  Include
9810         regex_internal.h here.  Include regex_internal.c before regcomp.c
9811         and regexec.c (might expose more opportunities to the C compiler).
9813         * posix/regcomp.c (parse_expression): Fix construct rejected by SGI CC.
9815         * posix/regex_internal.h [!_LIBC] (__mempcpy): Fix typo.
9816         [!_LIBC] (__wcrtomb): New definition.
9817         [!_LIBC]: Conditionalize enabling of I18N on HAVE_WCSCOLL and
9818         HAVE_LOCALE_H as well.
9820 2003-02-20  Ulrich Drepper  <drepper@redhat.com>
9822         * sysdeps/unix/sysv/linux/tcsetattr.c (tcsetattr): Remove obsolete
9823         patch to check for system call errors.
9825 2002-07-24  Philip Blundell  <philb@gnu.org>
9827         * sysdeps/unix/sysv/linux/arm/ioperm.c (init_iosys): Yield ENODEV
9828         on unknown systems.
9830 2003-02-20  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
9832         * sysdeps/powerpc/powerpc32/atomicity.h: Remove compiler workaround.
9833         * sysdeps/unix/sysv/linux/kernel-features.h
9834         (__ASSUME_NEW_PRCTL_SYSCALL): Defined for ppc32 too.
9835         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fe_nomask.c: Use prctl
9836         if possible.
9837         * sysdeps/unix/sysv/linux/powerpc/powerpc32/vfork.S: Avoid short
9838         interprocedure branches.
9839         * sysdeps/powerpc/soft-fp/Dist (sim-full.c, fenv_const.c): Move to...
9840         * sysdeps/powerpc/nofpu/Dist: ...here.
9841         * sysdeps/unix/sysv/linux/powerpc/Dist (fe_nomask.c): Move to...
9842         * sysdeps/unix/sysv/linux/powerpc/powerpc32/Dist: ...here.
9843         * sysdeps/unix/sysv/linux/s390/s390-64/Dist (kernel_stat.h): Delete.
9844         * sysdeps/unix/sysv/linux/sparc/Dist (bits/utmpx.h): Delete.
9845         * sysdeps/unix/sysv/linux/x86_64/Dist (bits/utmpx.h): Delete.
9847 2003-02-18  Alan Modra  <amodra@bigpond.net.au>
9849         * sysdeps/powerpc/powerpc32/sysdep.h (HIDDEN_JUMPTARGET): Redefine.
9851 2003-02-20  Philip Blundell  <philb@gnu.org>
9853         * sysdeps/unix/sysv/linux/arm/sysdep.h (INLINE_SYSCALL): Add
9854         missing arguments to INTERNAL_SYSCALL_ERROR_P and
9855         INTERNAL_SYSCALL_ERRNO.
9857 2003-02-20  Martin Schwidefsky  <schwidefsky@de.ibm.com>
9859         * sysdeps/unix/sysv/linux/s390/s390-32/chown.c (__real_chown): Test
9860         for __ASSUME_32BITUIDS.
9862 2003-02-20  Andreas Schwab  <schwab@suse.de>
9864         * sysdeps/unix/sysv/linux/m68k/bits/mman.h: Add MADV_* and
9865         POSIX_MADV_* constants.
9867 2003-02-20  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
9869         * sysdeps/unix/sysv/linux/sh/pread.c: New file.
9870         * sysdeps/unix/sysv/linux/sh/pread64.c: New file.
9871         * sysdeps/unix/sysv/linux/sh/pwrite.c: New file.
9872         * sysdeps/unix/sysv/linux/sh/pwrite64.c: New file.
9874 2003-02-19  Jiro Sekiba  <jir@yamato.ibm.com>
9876         * iconvdata/utf-16.c (gconv_end): Fix range of low surrogate.
9878 2003-02-16  Roland McGrath  <roland@redhat.com>
9880         * signal/signal.h: Include <sys/ucontext.h>, not <ucontext.h>.
9882 2003-02-19  Ulrich Drepper  <drepper@redhat.com>
9884         * stdlib/strtod.c (INTERNAL): Up the safety margin for cutting off
9885         decimal input digits.
9886         * stdlib/tst-strtod.c (main): Add test for strtof bug.
9888 2003-02-18  Ulrich Drepper  <drepper@redhat.com>
9890         * sysdeps/unix/sysv/linux/ttyname_r.c (__ttyname_r): Recognize
9891         invalid file descriptors and missing access permissions.
9893 2003-02-17  Ulrich Drepper  <drepper@redhat.com>
9895         * nss/getXXbyYY_r.c (REENTRANT_NAME): Return 0 if no entry has
9896         been found.
9898         * sysdeps/posix/sysconf.c (__sysconf): Test for LOGIN_NAME_MAX and
9899         TTY_NAME_MAX and not the _POSIX_* minimal value macros.
9900         * sysdeps/unix/sysv/linux/bits/local_lim.h: Define TTY_NAME_MAX
9901         and LOGIN_NAME_MAX.
9903 2003-02-17  Kevin B. Hendricks  <kevin.hendricks@sympatico.ca>
9904             Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
9906         * sysdeps/powerpc/elf/libc-start.c: Handle NONTLS_INIT_TP.
9907         * sysdeps/powerpc/powerpc32/__longjmp.S: Remove R2 handling.
9908         * sysdeps/powerpc/powerpc32/setjmp.S: Likewise.
9909         * sysdeps/powerpc/powerpc32/fpu/__longjmp.S: Likewise.
9910         * sysdeps/powerpc/powerpc32/fpu/setjmp.S: Likewise.
9912 2003-02-17  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
9914         * sysdeps/unix/sysv/linux/powerpc/ftruncate64.c: Delete.
9915         * sysdeps/unix/sysv/linux/powerpc/truncate64.c: Delete.
9916         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Delete.
9917         * sysdeps/unix/sysv/linux/powerpc/pread.c: Delete.
9918         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Delete.
9919         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Delete.
9921         * sysdeps/unix/sysv/linux/powerpc/fe_nomask.c: Move file...
9922         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fe_nomask.c: ...here.
9923         * sysdeps/unix/sysv/linux/powerpc/glob64.c: Move file...
9924         * sysdeps/unix/sysv/linux/powerpc/powerpc32/glob64.c: ...here.
9926         * sysdeps/unix/sysv/linux/tcgetattr.c: Use INLINE_SYSCALL.
9927         * sysdeps/unix/sysv/linux/tcsetattr.c: Likewise.
9928         * sysdeps/unix/sysv/linux/powerpc/tcgetattr.c: Delete.
9929         * sysdeps/unix/sysv/linux/powerpc/tcsetattr.c: Delete.
9931 2003-02-14  Thorsten Kukuk  <kukuk@suse.de>
9933         * nss/getent.c (print_hosts): Print all IP addresses of one host.
9935 2003-02-15  Roland McGrath  <roland@frob.com>
9937         * sysdeps/mach/hurd/tls.h: New file.
9938         * sysdeps/mach/hurd/i386/tls.h: New file.
9940         * mach/errsystems.awk: Include <errno.h> in generated output.
9942         * sysdeps/mach/Makefile (mach-before-compile rule): Pass generating=t,
9943         use target mach-before-compile instead of generated.
9944         (mach-before-compile): New target.
9945         * Makerules: Disable use of tls.make if $(generating) is set.
9946         * mach/Makefile: Include mach-syscalls.mk even if no_deps=t.
9947         * sysdeps/mach/hurd/Makefile: Make generated hurd headers depend on
9948         mach-shortcuts.h so mach/ generation happens before hurd/.
9950 2003-02-14  Ulrich Drepper  <drepper@redhat.com>
9952         * sysdeps/i386/fpu/s_nextafterl.c: Decrement high word of mantissa
9953         of demorm correctly if low word is zero.
9954         Reported by Fred J. Tydeman <tydeman@tybor.com>.
9955         * math/libm-test.inc (nextafter_test): New test, but disabled due
9956         to gcc bug.
9958         * sysdeps/generic/libc-start.c [HAVE_PTR_NTHREADS]: Decrement thread
9959         counter and only call __exit_thread if this is not the last thread.
9961 2003-02-13  Jakub Jelinek  <jakub@redhat.com>
9963         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Add instead of
9964         subtracting map->l_tls_offset.
9966 2003-02-12  Ulrich Drepper  <drepper@redhat.com>
9968         * sysdeps/generic/bits/confname.h: Define _CS_GNU_LIBC_VERSION and
9969         _CS_GNU_LIBPTHREAD_VERSION.
9970         * posix/conststr.c: Handle these new values.
9971         * posix/getconf.c: Likewise.
9973         * sysdeps/mips/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE): Fix
9974         masking of version index.
9975         Patch by Lance Larsh <Lance.Larsh@oracle.com>.
9977 2003-02-11  Ulrich Drepper  <drepper@redhat.com>
9979         * nss/nss_files/files-hosts.c (HOST_DB_LOOKUP): Compute alignment
9980         correctly.  Reported by Thorsten Kukuk.
9982 2003-02-10  Ulrich Drepper  <drepper@redhat.com>
9984         * elf/Makefile (check-textrel-CFLAGS): Pass _XOPEN_SOURCE and
9985         _BSD_SOURCE to compiler.
9986         * elf/check-textrel.c (SWAP): Add parenthesis to avoid warnings.
9987         Patches by Alan Modra.
9989 2003-02-08  Ulrich Drepper  <drepper@redhat.com>
9991         * io/ftwtest.c: Get current working directory before and after the
9992         nftw call and make sure they match.
9994 2003-02-08  Jim Meyering  <jim@meyering.net>
9996         * io/ftw.c (ftw_startup): When using FTW_CHDIR, always remember
9997         the current directory, not just when DIR contains a slash.
9998         Reported by Manoj Srivastava.
10000 2003-02-07  Jim Meyering  <jim@meyering.net>
10002         * io/ftw.c: Add autoconf-recommended block of alloca-related code.
10003         Include autoconf-recommended block of dirent/NAMELEN-related
10004         definitions and includes.  Use NAMELEN throughout, rather than
10005         _D_EXACT_NAMLEN.
10006         [_LIBC]: Define NAMELEN to _D_EXACT_NAMLEN.
10007         [!_LIBC] (__getcwd): Define to xgetcwd and declare xgetcwd.
10008         (stpcpy): Declare, if necessary.
10009         (mempcpy): Define, if necessary.
10010         [!_LIBC] (__stpcpy, __mempcpy): Define.
10011         [!_LIBC] (LXSTAT, XSTAT): Define.
10012         (lstat) [!LIBC && !LSTAT_FOLLOWS_SLASHED_SYMLINK]: Define to rpl_lstat.
10013         (find_object): Don't use c99-style struct initializer.
10014         Tweak wording in a couple comments.
10016 2003-02-07  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
10018         * elf/tls-macros.h: Add non-PIC TLS macros and fix clobber list
10019         for SH.
10020         * sysdeps/unix/sysv/linux/sh/brk.c: Add SYSCALL_INST_PAD
10021         after the trapa instruction.
10022         * sysdeps/unix/sysv/linux/sh/clone.S (__clone): Add additional
10023         parameters.
10024         * sysdeps/unix/sysv/linux/sh/sh4/sysdep.h: New file.
10025         (NEED_SYSCALL_INST_PAD): Define.
10026         * sysdeps/unix/sysv/linux/sh/sys/user.h (start_thread): Undef to
10027         avoid to use definition for the kernel.
10028         * sysdeps/unix/sysv/linux/sh/sysdep.h (SYSCALL_ERROR_HANDLER):
10029         Save and restore the frame pointer.
10030         (SYSCALL_INST_PAD): Define.
10031         (INLINE_SYSCALL): Make use of INTERNAL_SYSCALL.
10032         (INTERNAL_SYSCALL): Make use of ERR parameter. Add SYSCALL_INST_PAD
10033         after trapa instruction.
10034         (INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
10035         INTERNAL_SYSCALL_ERROR_P): Adjust accordingly.
10037 2003-02-07  Jakub Jelinek  <jakub@redhat.com>
10039         * resolv/res_libc.c (_res): Ensure _res is not common symbol,
10040         so that it can have aliases.
10041         * inet/herrno.c (h_errno): Put it into .bss not .data section.
10043 2003-02-07  Ulrich Drepper  <drepper@redhat.com>
10045         * elf/dl-runtime.c (fixup): Correct typo in version index computation.
10046         (profile_fixup): Likewise.
10047         Patch by Lance Larsh <Lance.Larsh@oracle.com>.
10049 2002-11-24  Robert Love  <rml@tech9.net>
10051         * posix/sched.h: Second parameter of sched_setaffinity and
10052         sched_getaffinity is `unsigned int', not `unsigned long'.
10053         * sysdeps/generic/sched_setaffinity.c: Likewise.
10054         * sysdeps/generic/sched_getaffinity.c: Likewise.
10056 2003-02-05  Ulrich Drepper  <drepper@redhat.com>
10058         * debug/catchsegv.sh: Fix typo in error messsage.
10059         Reported by John Levon <levon@movementarian.org>.
10061         * sysdeps/unix/sysv/linux/posix_fadvise.c: New file.
10062         * sysdeps/unix/sysv/linux/syscalls.list: Add posix_fadvise64 syscall.
10063         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Likewise.
10064         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
10065         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Likewise.
10066         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
10067         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
10069         * libio/putwc_u.c: Use _IO_putwc_unlocked, not _IO_putc_unlocked.
10070         Patch by Moritz Schulte <moritz@duesseldorf.ccc.de>.
10072 2003-02-05  Jim Meyering  <jim@meyering.net>
10074         Fix a heap-corrupting bug.
10075         * io/ftw.c: Include <limits.h>.
10076         (PATH_MAX) [!defined PATH_MAX]: Define to 1024.
10077         (process_entry): Allocate enough space to hold the resulting
10078         file name.  Don't presume that 2*dirbufsize is enough.
10079         (ftw_startup): Always use PATH_MAX to compute buffer size, now that
10080         it is guaranteed to be defined.
10082 2003-02-04  Ulrich Drepper  <drepper@redhat.com>
10084         * iconvdata/Makefile: Add rules to build and run bug-iconv3.
10085         * iconvdata/bug-iconv3.c: New file.
10087 2003-02-04  Martin Schwidefsky  <schwidefsky@de.ibm.com>
10089         * sysdeps/unix/sysv/linux/s390/system.c: New file.
10091 2003-02-03  Jakub Jelinek  <jakub@redhat.com>
10093         * sysdeps/sparc/sparc32/elf/configure.in (BROKEN_SPARC_WDISP22): New
10094         check.
10095         * config.h.in (BROKEN_SPARC_WDISP22): Add.
10097 2003-02-03  Ulrich Drepper  <drepper@redhat.com>
10099         * sysdeps/i386/i686/memmove.S: New file.
10101 2003-01-31  Steven Munroe  <sjmunroe@us.ibm.com>
10103         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c:
10104         Include kernel-features.h
10105         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: Likewise.
10106         * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S: Likewise.
10107         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: Likewise.
10108         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Likewise.
10110 2003-02-02  Jakub Jelinek  <jakub@redhat.com>
10112         * elf/tls-macros.h [sparc] (TLS_LD, TLS_GD): Add "cc" clobbers.
10114 2003-01-25  Jim Meyering  <jim@meyering.net>
10116         * io/ftw.c (object_compare): Compare inode numbers before device
10117         numbers, since the former are much more likely to differ.
10119 2003-02-01  Ulrich Drepper  <drepper@redhat.com>
10121         * time/tzfile.c (__tzfile_compute): Change return value type to
10122         void.  Adjust return statements.
10123         * include/time.h (__tzfile_compute): Adjust prototype.
10125 2003-02-01  Jim Meyering  <jim@meyering.net>
10127         * time/tzset.c (__tz_convert): Remove dead code; __tzfile_compute
10128         always returns 1.
10130 2003-01-31  Steven Munroe  <sjmunroe@us.ibm.com>
10132         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c
10133         [!__ASSUME_NEW_PRCTL_SYSCALL]: Noop prctl syscall and set ENOSYS.
10135 2003-01-31  Steven Munroe  <sjmunroe@us.ibm.com>
10137         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S
10138         [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Generate ENOSYS stub.
10139         * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S
10140         [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Likewise.
10141         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S
10142         [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Likewise.
10143         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S
10144         [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Likewise.
10146 2003-01-31  Steven Munroe  <sjmunroe@us.ibm.com>
10148         * sysdeps/unix/sysv/linux/configure.in: Change arch_minimum_kernel
10149         back to 2.4.19 for powerpc64.
10150         * sysdeps/unix/sysv/linux/kernel-features.h
10151         (__ASSUME_NEW_PRCTL_SYSCALL): Define for powerpc64.
10152         (__ASSUME_NEW_RT_SIGRETURN_SYSCALL): Define for powerpc64.
10154 2003-02-01  Ulrich Drepper  <drepper@redhat.com>
10156         * wcsmbs/wcscpy.c (wcscpy): Add alternative implementation for
10157         platforms with strange alignment requirements on wchar_t.
10159 2003-01-31  Andreas Schwab  <schwab@suse.de>
10161         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Remove __GI_*
10162         aliases, already added by make-syscalls.sh.
10163         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
10164         * sysdeps/unix/sysv/linux/hppa/syscalls.list: Likewise.
10165         * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise.
10166         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
10167         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
10168         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
10169         * sysdeps/unix/sysv/linux/syscalls.list: Likewise.
10170         * sysdeps/unix/inet/syscalls.list: Likewise.
10171         * sysdeps/unix/syscalls.list: Likewise.
10173 2003-01-31  Andreas Schwab  <schwab@suse.de>
10175         * sysdeps/m68k/Makefile (sysdep-CFLAGS): Don't define, not needed
10176         any more.
10178 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
10180         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S (__clone): Use lg,
10181         not l to load tls from stack.
10183 2003-01-30  Roland McGrath  <roland@redhat.com>
10185         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Move check for
10186         null argument before all else.
10187         Reported by Martin Schwidefsky <schwidefsky@de.ibm.com>.
10189 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
10191         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_lazy_rel):
10192         Move to RESOLVE protected part of the header.
10193         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_lazy_rel):
10194         Likewise.
10196 2003-01-30  Ulrich Drepper  <drepper@redhat.com>
10198         * stdio-common/Makefile (tests): Add bug15.
10199         (bug15-ENV): Define.
10200         * stdio-common/bug15.c: New file.
10202 2002-10-07  Wolfram Gloger  <wg@malloc.de>
10204         * malloc/malloc.c (sYSMALLOc): Only check for breakage due
10205         to foreign sbrk()'s if arena is contiguous.  Bug report from
10206         Bruno Haible <bruno@clisp.org>.
10208 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
10210         * sysdeps/s390/libc-tls.c: Include stdlib.h.
10212 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
10214         * stdio-common/vfprintf.c (vfprintf): Only subtract lowest 3 bits of
10215         ps.__count.
10217 2003-01-30  Ulrich Drepper  <drepper@redhat.com>
10219         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S: Fix storing and
10220         restoring of %r6.
10221         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S: Likewise.  Use
10222         64-bit load.
10223         Patch by Martin Schwidefsky  <schwidefsky@de.ibm.com>.
10225 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
10227         * elf/dl-reloc.c (CHECK_STATIC_TLS): Move _dl_signal_error...
10228         (allocate_static_tls): ...here.  Add __attribute_noinline__.
10229         Don't return on failure.
10230         (_dl_reloc_bad_type): Add __attribute_noinline__.
10231         * elf/do-rel.h (elf_dynamic_do_rel): Add
10232         __attribute__((always_inline)).
10233         * elf/dynamic-link.h (elf_machine_rel, elf_machine_rela,
10234         elf_machine_rel_relative, elf_machine_rela_relative,
10235         elf_machine_lazy_rel): Add prototypes with
10236         __attribute__((always_inline)).
10238 2003-01-29  David Mosberger  <davidm@hpl.hp.com>
10240         * elf/dl-support.c (_dl_aux_init): Handle AT_SYSINFO.
10242 2003-01-29  Roland McGrath  <roland@redhat.com>
10244         * configure.in: Barf if configured in $srcdir.
10246 2003-01-28  Steven Munroe  <sjmunroe@us.ibm.com>
10248         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c
10249         (__fe_nomask_env): Change __prctl call to INTERNAL_SYSCALL.
10251 2003-01-28  Martin Schwidefsky  <schwidefsky@de.ibm.com>
10253         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S: Reorder additional
10254         clone parameters to match the order used on ia32.
10255         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S: Likewise.
10257 2003-01-27  Martin Schwidefsky  <schwidefsky@de.ibm.com>
10259         * elf/elf.h: Add new s390 relocs.
10260         * elf/tls-macros.h: Add s390 versions.
10261         * sysdeps/s390/Versions [GLIBC_2.3] (ld): Export __tls_get_offset.
10262         * sysdeps/s390/dl-tls.h: New file.
10263         * sysdeps/s390/libc-tls.c: New file.
10264         * sysdeps/s390/s390-32/dl-machine.h (elf_machine_type_class): Add TLS
10265         relocs for class PLT.
10266         (elf_machine_rela): Handle TLS relocs.
10267         * sysdeps/s390/s390-64/dl-machine.h: Likewise.
10268         * sysdeps/s390/s390-32/elf/configure.in: Add TLS check.
10269         * sysdeps/s390/s390-64/elf/configure.in: Likewise.
10270         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S: Add support for
10271         CLONE_CHILD_*TID flags.
10272         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S: Likewise.
10273         * sysdeps/unix/sysv/linux/s390/s390-64/mmap.S: Use branch with 32
10274         bit offset.
10275         * sysdeps/unix/sysv/linux/s390/s390-64/socket.S: Likewise.
10276         * sysdeps/unix/sysv/linux/s390/s390-64/syscall.S: Likewise.
10277         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S (__syscall_error):
10278         Support USE___THREAD. Define RTLD_PRIVATE_ERRNO variant.
10279         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S (__syscall_error):
10280         Likewise.
10281         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h:
10282         (SYSCALL_ERROR_LABEL): Move define next to SYSCALL_ERROR_HANDLER.
10283         (SYSCALL_ERROR_HANDLER): Add USE___THREAD and RTLD_PRIVATE_ERRNO
10284         variants.
10285         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h:
10286         (SYSCALL_ERROR_LABEL): Move define next to SYSCALL_ERROR_HANDLER. Use
10287         direct branch to syscall_error for !PIC and PIC && !_LIBC_REENTRANT.
10288         (SYSCALL_ERROR_HANDLER): Add USE___THREAD and RTLD_PRIVATE_ERRNO
10289         variants.
10291 2003-01-28  Ulrich Drepper  <drepper@redhat.com>
10293         * sysdeps/unix/common/pause.c (do_pause): New function.  Split
10294         from __libc_pause.  Implement using sigsuspend.
10295         (__libc_pause): Call do_pause to do the real work.
10297         * sysdeps/posix/sigpause.c (do_sigpause): Check range of
10298         sig_or_mask parameter is is_sig != 0.
10300 2003-01-21  Philip Blundell  <philb@gnu.org>
10302         * sysdeps/unix/sysv/linux/bits/ioctls.h (SIOCSIFNAME): Define.
10304 2003-01-27  Steven Munroe  <sjmunroe@us.ibm.com>
10306         * stdio-common/Makefile: Add bug14-ENV to set LOCPATH for make check.
10308 2003-01-27  Ulrich Drepper  <drepper@redhat.com>
10310         * stdio-common/bug14.c: Use official name for the locale.
10312         * stdio-common/vfprintf.c [USE_IN_LIBIO]: Use _IO_cleanup_region_start
10313         instead of __libc_cleanup_region_start and _IO_cleanup_region_end
10314         instead of __libc_cleanup_region_end.
10316         * sysdeps/unix/sysv/linux/i386/system.c (CLEANUP_HANDLER): Pass 1
10317         as first parameter to __libc_cleanup_region_start.
10319         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c
10320         (__fe_nomask_env): Use __prctl not prctl.
10321         * sysdeps/unix/sysv/linux/syscalls.list: Add __prctl alias for
10322         prctl syscall.
10324         * elf/dl-reloc.c (CHECK_STATIC_TLS): Improve error message.
10326         * elf/dl-open.c (_dl_tls_static_size): Bump to 2048.
10328         * elf/dl-reloc.c (allocate_static_tls): Avoid arithmetic
10329         wrap-around in test.
10331 2003-01-26  Andreas Schwab  <schwab@suse.de>
10333         * sysdeps/wordsize-32/divdi3.c: Export the functions only as
10334         compatibility symbols.  Remove INTDEF for __divdi3.
10335         * sysdeps/wordsize-32/lldiv.c: Don't use __divdi3_internal.
10336         * sysdeps/powerpc/powerpc32/divdi3.c: Remove.
10337         * sysdeps/powerpc/powerpc32/Makefile (CPPFLAGS-divdi3.c): Don't
10338         define.
10339         * sysdeps/powerpc/powerpc32/Dist: Remove divdi3.c.
10341 2003-01-24  Jakub Jelinek  <jakub@redhat.com>
10343         * elf/tls-macros.h: Add SPARC 32-bit definitions.
10344         * sysdeps/sparc/sparc32/elf/configure.in: Add TLS check.
10345         * sysdeps/sparc/sparc32/dl-machine.h: Add dl_machine_h guards
10346         for the first half of the header.  Include tls.h.
10347         (elf_machine_type_class): Return ELF_RTYPE_CLASS_PLT for TLS
10348         relocs too.
10349         (elf_machine_rela): Handle TLS relocs.
10350         * sysdeps/sparc/dl-tls.h: New file.
10352         * sysdeps/unix/sysv/linux/sparc/sparc32/socket.S: Add cancellation
10353         support.
10355         * sysdeps/sparc/sparc32/sparcv9/hp-timing.h: Use %g6 instead of %g7.
10356         * sysdeps/sparc/sparc32/memchr.S: Likewise.
10357         * sysdeps/sparc/sparc32/memcpy.S: Likewise.
10358         * sysdeps/sparc/sparc32/strcat.S: Likewise.
10359         * sysdeps/sparc/sparc32/strchr.S: Likewise.
10360         * sysdeps/sparc/sparc32/strcmp.S: Likewise.
10361         * sysdeps/sparc/sparc32/strcpy.S: Likewise.
10362         * sysdeps/sparc/sparc64/sparcv9b/memcpy.S: Likewise.
10363         * sysdeps/sparc/sparc64/hp-timing.h: Likewise.
10364         * sysdeps/sparc/sparc64/memcpy.S: Likewise.
10365         * sysdeps/sparc/sparc64/stpcpy.S: Likewise.
10366         * sysdeps/sparc/sparc64/stpncpy.S: Likewise.
10367         * sysdeps/sparc/sparc64/strcat.S: Likewise.
10368         * sysdeps/sparc/sparc64/strchr.S: Likewise.
10369         * sysdeps/sparc/sparc64/strcmp.S: Likewise.
10370         * sysdeps/sparc/sparc64/strcpy.S: Likewise.
10371         * sysdeps/sparc/sparc64/strncmp.S: Likewise.
10372         * sysdeps/sparc/sparc64/strncpy.S: Likewise.
10373         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Likewise.
10374         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h: Likewise.
10376 2003-01-24  Andreas Schwab  <schwab@suse.de>
10378         * elf/dl-close.c (_dl_close): Don't relocate DT_FINI_ARRAY
10379         elements, and process them backwards.
10380         * elf/Makefile ($(objpfx)tst-array4): New target.
10381         ($(objpfx)tst-array4.out): Likewise.
10382         (tests) [$(have-initfini-array) = yes]: Add tst-array4.
10383         * elf/tst-array4.c: New file.
10384         * elf/tst-array4.exp: Likewise.
10386 2003-01-24  Steven Munroe  <sjmunroe@us.ibm.com>
10388         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c: New file.
10390 2003-01-27  Guido Guenther  <agx@sigxcpu.org>
10392         * sysdeps/unix/sysv/linux/mips/sysdep.h (SYSCALL_ERROR_LABEL): Define.
10393         * sysdeps/unix/sysv/linux/mips/pread.c: Add support for
10394         cancellation handling and handle both __NR_pread64 and __NR_pread.
10395         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
10396         * sysdeps/unix/sysv/linux/mips/pwrite.c: Add support for
10397         cancellation handling and handle both __NR_pwrite64 and __NR_pwrite.
10398         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
10399         * sysdeps/unix/mips/sysdep.S: Don't set errno in the _LIBC_REENTRANT
10400         case, use register names consistently.
10402 2003-01-27  Wolfram Gloger  <wg@malloc.de>
10404         * malloc/hooks.c (mem2chunk_check): Check alignment of mem
10405         pointer, not of the computed chunk.  Bug report from Carlos
10406         O'Donell <carlos@baldric.uwo.ca>.
10408 2003-01-25  Andreas Schwab  <schwab@suse.de>
10410         * sysdeps/m68k/dl-machine.h (_dl_start_user): Use pc-relative
10411         addressing to save GOT entries.
10413 2003-01-21  Jakub Jelinek  <jakub@redhat.com>
10415         * sysdeps/unix/alpha/sysdep.h (inline_syscall0,
10416         inline_syscall1, inline_syscall2, inline_syscall3,
10417         inline_syscall4, inline_syscall5, inline_syscall6): Add __volatile__.
10418         * sysdeps/unix/sysv/linux/alpha/sysdep.h (INTERNAL_SYSCALL): Add
10419         __attribute__((unused)) to ChEcK.
10421 2003-01-20  Martin Schwidefsky  <schwidefsky@de.ibm.com>
10423         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (INTERNAL_SYSCALL):
10424         Fix inline assembler constraints.
10425         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (INTERNAL_SYSCALL):
10426         Likewise.
10428         * sysdeps/s390/s390-64/Makefile (pic-ccflag): Use -fpic instead of
10429         -fPIC.
10431 2003-01-20  Segher Boessenkool  <segher@koffie.nl>
10433         * sysdeps/ieee754/dbl-64/sincos32.c (__mpcos): Really
10434         compute the cosine, not the sine, even if x > 0.8.
10436 2003-01-19  Ulrich Drepper  <drepper@redhat.com>
10438         * nis/nss_nis/nis-spwd.c: Make _nss_nis_endspent an alias of
10439         _nss_nis_setspent.  Work around the different prototypes.
10440         * nis/nss_nis/nis-rpc.c (internal_nis_setrpcent): Use
10441         internal_nis_endrpcent.
10442         (internal_nis_endrpcent): Change return type to void.  Change callers.
10443         * nis/nss_nis/nis-pwd.c: Make _nss_nis_endpwent an alias of
10444         _nss_nis_setpwent.  Work around the different prototypes.
10445         * nis/nss_nis/nis-proto.c (_nss_nis_endprotoent): Split out body
10446         of the function to...
10447         (internal_nis_endprotoent): ... here.  New function.
10448         (internal_nis_setprotoent): Use internal_nis_endprotoent.
10449         * nis/nss_nis/nis-network.c: Make _nss_nis_endnetent an alias of
10450         _nss_nis_setnetent.  Work around the different prototypes.
10451         * nis/nss_nis/nis-netgrp.c (_nss_nis_endnetgrent): Split out body
10452         of the function to...
10453         (internal_nis_endnetgrent): ... here.  New function.
10454         (_nss_nis_setnetgrent): Use internal_nis_endnetgrent.
10456 2003-01-19  Jim Meyering  <jim@meyering.net>
10458         * time/strftime.c: (widen): Merge nearly-identical definitions.
10459         (nl_get_alt_digit) [! defined my_strftime]: Define.
10460         (my_strftime) [_NL_CURRENT]: Merge nearly-identical uses of
10461         _nl_get_alt_digit and _nl_get_walt_digit.
10463 2003-01-19  Ulrich Drepper  <drepper@redhat.com>
10465         * time/strftime.c (my_strftime): Handle very large width
10466         specifications for numeric values correctly.  Improve checks for
10467         overflow.
10468         * time/Makefile (tests): Add tst-strftime.
10469         * time/tst-strftime.c: New file.
10471 2003-01-18  Ulrich Drepper  <drepper@redhat.com>
10473         * nis/nss_nis/nis-hosts.c: Make _nss_nis_endhostent an alias of
10474         _nss_nis_sethostent.  Work around the different prototypes.
10475         * nis/nss_nis/nis-grp.c: Make _nss_nis_endgrent an alias of
10476         _nss_nis_setgrent.  Work around the different prototypes.
10477         * nis/nss_nis/nis-ethers.c (internal_nis_endetherent): New
10478         function.  Split out from _nss_nis_endetherent.
10479         (internal_nis_setetherent): Use internal_nis_endetherent instead of
10480         duplicating the code.
10481         * nis/nss_nis/nis-alias.c: Make _nss_nss_nis_endaliasent an alias
10482         of _nss_nis_setaliasent.
10483         * nis/nss_nis/nis-service.c (internal_nis_setservent): Reuse
10484         internal_nis_endservent code, don't duplicate it.
10486         * inet/rexec.c (rexec_af): Protect socket operations with
10487         TEMP_FAILURE_RETRY.  Use writev instead of multiple write.
10488         * inet/rcmd.c (rcmd_af): Likewise.
10490 2003-01-17  Roland McGrath  <roland@redhat.com>
10492         * math/libm-test.inc (sin_test, cos_test, sincos_test) [TEST_DOUBLE]:
10493         Add test of value 0.80190127184058835.
10495         * elf/dl-open.c: Fix typo ifdef -> ifndef on _dl_tls_static_size defn.
10497 2003-01-17  Richard Henderson  <rth@redhat.com>
10499         * sysdeps/alpha/dl-machine.h (elf_machine_type_class): Add TLS
10500         relocs for class PLT.
10501         * sysdeps/alpha/libc-tls.c: New file.
10502         * sysdeps/unix/alpha/sysdep.S (EPILOGUE, GPSAVEREG): New.
10503         (LOADGP) [!PIC]: Rewrite to preserve caller's gp.
10505 2003-01-17  Jakub Jelinek  <jakub@redhat.com>
10507         * sysdeps/unix/sysv/linux/ia64/dl-static.c (_dl_static_init): Use
10508         __libc_lock_{,un}lock_recursive instead of __libc_lock_{,un}lock
10509         on _dl_static_lock.
10511 2003-01-17  Andreas Jaeger  <aj@suse.de>
10513         * stdio-common/bug14.c: Include stdlib.h for exit prototype.
10515 2003-01-16  Steven Munroe  <sjmunroe@us.ibm.com>
10517         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: New file.
10518         * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S: New file.
10519         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: New file.
10520         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: New file.
10521         * sysdeps/unix/sysv/linux/powerpc/powerpc64/ucontext_i.h: New file.
10522         * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: New file.
10523         * sysdeps/unix/sysv/linux/configure.in: Minimum kernel for PPC64
10524         is 2.4.21.
10526 2003-01-16  Ulrich Drepper  <drepper@redhat.com>
10528         * sysdeps/generic/glob.c (glob): Assume sysconf() always returns
10529         values != -1 for _LIBC.  Use extend_alloca to reallocate alloca'ed
10530         buffers.
10532         * sysdeps/generic/sysconf.c: Unconditionally implement
10533         _SC_GETPW_R_SIZE_MAX and _SC_GETGR_R_SIZE_MAX.
10534         * sysdeps/posix/sysconf.c: Likewise.
10536 2003-01-16  Jakub Jelinek  <jakub@redhat.com>
10538         * posix/regcomp.c (parse_bracket_exp): If build_charclass fails,
10539         set *err to the returned error, not to REG_ESPACE unconditionally.
10540         (build_word_op): Likewise.
10541         * posix/Makefile (tests): Add bug-regex16.
10542         * posix/bug-regex16.c: New test.
10544 2003-01-16  Jakub Jelinek  <jakub@redhat.com>
10546         * elf/dl-load.c (_dl_map_object_from_fd): Use
10547         GL(dl_tls_dtv_slotinfo_list) != NULL to check whether TLS has
10548         been already initialized.
10550 2003-01-15  Dmitry V. Levin  <ldv@altlinux.org>
10552         * sysdeps/unix/sysv/linux/ptsname.c: Fix typo in comment.
10554 2003-01-16  Jakub Jelinek  <jakub@redhat.com>
10556         * posix/regcomp.c (re_compile_internal): If clearing buffer, clear
10557         allocated too.  Reported by Al Viro <aviro@redhat.com>.
10559 2003-01-16  Roland McGrath  <roland@redhat.com>
10561         Tweak merged .abilist file format to merge duplicate symbols in
10562         different sets into multi-version stanzas with new "| SET regexp..."
10563         header continuation lines.
10564         * scripts/merge-abilist.awk: Rewritten for new format.
10565         * scripts/extract-abilist.awk: Likewise.
10567 2003-01-15  Ulrich Drepper  <drepper@redhat.com>
10569         * nscd/connections.c (nscd_run): Remove bogus return which isn't
10570         necessary with gcc 3.2+.
10571         (nscd_init): Don't use error() to print message, use dbg_log.
10573         * iconv/gconv_simple.c (STORE_REST): Explicitly store the total
10574         expected size into state.
10575         (UNPACK_BYTES): Do the reverse.
10576         * iconv/loop.c: Use CLEAR_STATE if defined to clear __state element.
10577         * wcsmbs/tst-mbrtowc.c (utf8_test_1): Add test for the bug.
10578         Reported by Al Viro <aviro@redhat.com>.
10580         * stdio-common/Makefile (tests): Add bug14.
10581         * stdio-common/bug14.c: New file.
10583         * stdio-common/vfscanf.c: When recognizing multibyte characters in
10584         string reset the byte counter after mbrtowc reported it is not a
10585         partial character.  Reported by Al Viro <aviro@redhat.com>.
10587 2003-01-15  Steven Munroe  <sjmunroe@us.ibm.com>
10589         * sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S: Include
10590         sysdep-cancel.h, not sysdep.h.
10592 2003-01-15  Ulrich Drepper  <drepper@redhat.com>
10594         * nscd/connections.c (nscd_run): Protect accept call with
10595         TEMP_FAILURE_RETRY.
10597 2003-01-15  Andreas Schwab  <schwab@suse.de>
10599         * sysdeps/unix/Makefile: Include $(common-objpfx)s-proto-bp.d.
10600         (common-generated): Add s-proto-bp.d.
10601         * sysdeps/unix/make-syscalls.sh: Use s-proto-bp.d for dependencies
10602         of bp thunks.
10603         * sysdeps/unix/s-proto-bp.S: New file.
10604         * sysdeps/generic/bp-thunks.h: Don't include <sys/vm86.h> here.
10605         Use <io/sys/sendfile.h> instead of <sys/sendfile.h>.
10606         * sysdeps/unix/sysv/linux/i386/bp-thunks.h: New file.
10608 2003-01-15  Roland McGrath  <roland@redhat.com>
10610         * Makerules: Use -include for tls.make, suppresses warning.
10611         Move gen-as-const-headers rules up so before-compile is set in time.
10612         (sed-remove-dotdot): Fix to work right for subdirs or top dir.
10614 2003-01-15  Ulrich Drepper  <drepper@redhat.com>
10616         * nscd/nscd.c (main): Make code to close all file descriptors
10617         faster and more robust.
10619         * nscd/nscd_getpw_r.c (nscd_getpw_r): Consolidate writing of the
10620         request with one writev call.  Protect all read calls with
10621         TEMP_FAILURE_RETRY.
10622         * nscd/nscd_getgr_r.c (nscd_getgr_r): Likewise.
10623         * nscd/nscd_gethst_r.c (nscd_gethst_r): Likewise.
10625         * nscd/hstcache.c: Use extend_alloca to reallocate alloca'd buffer.
10626         Protect writev calls with TEMP_FAILURE_RETRY.
10627         * nscd/grpcache.c: Likewise.
10628         * nscd/pwdcache.c: Likewise.
10630         * nscd/hstcache.c (addhstbynamev6): Don't interpret hostname as
10631         IPv6 address in debug output.
10633 2003-01-14  Roland McGrath  <roland@redhat.com>
10635         * Makerules (check-abi-%): Use two rules for $(common-objpfx) and
10636         $(objpfx) directories, and get rid of vpath directives.  The previous
10637         arrangement resulted in files being written to the source directories
10638         when run in a clean build.  Find all .abilist files in $(..)abilist/.
10639         (update-abi-%): Likewise.
10640         (generated): Don't add .symlist files, they'll be intermediates.
10642         * sysdeps/generic/init-first.c: Add a comment.
10644         * elf/Makefile ($(objpfx)ld.so): Pass -z defs in link.
10646         * scripts/gen-as-const.awk: Grok lone "--" as a separator between
10647         #includes and expressions.
10649         * scripts/merge-abilist.awk: Omit cpu-.*-os.*/modifier from merged
10650         config list when it already contains cpu-.*-os.* without / part.
10652         * Makerules (sed-remove-dotdot): New variable.
10653         ($(common-objpfx)%.make): Use it.  Depend on $(before-compile).
10654         ($(common-objpfx)%.h $(common-objpfx)%.h.d): Likewise.
10655         (check-abi-config): New variable, append /tls or /notls to the tuple.
10656         (check-abi-%): Use that for -v config value.
10657         Find .abilist files in abilist/libfoo.abilist, not in subdir.
10658         * Rules: Move bits/stdio_lim.h generation rules to Makerules.
10660 2003-01-14  Ulrich Drepper  <drepper@redhat.com>
10662         * manual/install.texi: Correct description of header preparation for
10663         Linux build.  Patch by mhwood@Ameritech.Net [PR libc/4941].
10665 2003-01-14  Guido Guenther  <agx@sigxcpu.org>
10667         * sysdeps/unix/sysv/linux/mips/sysdep.h (INTERNAL_SYSCALL,
10668         INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
10669         INTERNAL_SYSCALL_ERROR_P, INLINE_SYSCALL): Define.
10671 2003-01-14  Steven Munroe  <sjmunroe@us.ibm.com>
10673         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h
10674         (INTERNAL_SYSCALL): Make use of ERR parameter.
10675         (INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
10676         INTERNAL_SYSCALL_ERROR_P): Adjust accordingly.
10677         (INLINE_SYSCALL): Make use of INTERNAL_SYSCALL.
10678         * sysdeps/unix/sysv/linux/powerpc/powerpc64/vfork.S: New file.
10680 2003-01-14  Ulrich Drepper  <drepper@redhat.com>
10682         * sunrpc/pm_getport.c (pmap_getport): Open TCP socket if protocol
10683         == IPPROTO_TCP.
10684         Patch by James Strandboge <jamie@tpptraining.com> [PR libc/4943].
10686         * sysdeps/unix/sysv/linux/i386/dl-procinfo.c (_dl_x86_cap_flags):
10687         Fix entry for bit 31.
10689         * iconvdata/Makefile: Add rules to build IBM866NAV.
10690         * iconvdata/ibm866nav.c: New file.
10691         * iconvdata/tst-tables.sh: Add IBM866NAV.
10692         * iconvdata/gconv-modules: Add entries for IBM866NAV.
10694 2003-01-13  Ulrich Drepper  <drepper@redhat.com>
10696         * string/tester.c (test_strcpy): Use the previously #if 0'ed code
10697         to test void* parameters.
10699         * sysdeps/i386/i486/bits/string.h (__STRING_SMALLL_GET16): Cast
10700         source pointer before dereferencing.
10701         (__STRING_SMALLL_GET32): Likewise.
10702         (__memset_gc): Add missing parenthesis around macro arguments.
10703         Patch by Denis Zaitsev <zzz@cd-club.ru>.
10705         * sysdeps/i386/i486/bits/string.h (__strspn_cg): Tell the compiler
10706         that %eax is modified.  Reported by Denis Zaitsev <zzz@cd-club.ru>.
10708 2003-01-14  Jakub Jelinek  <jakub@redhat.com>
10710         * sysdeps/unix/alpha/sysdep.h (INLINE_SYSCALL): Undefined before
10711         defining.
10713 2003-01-13  Martin Schwidefsky  <schwidefsky@de.ibm.com>
10715         * sysdeps/s390/s390-64/initfini.c: Avoid unterminated string literals.
10716         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (L): Don't define it
10717         here.
10718         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (L): Likewise.
10720 2003-01-13  Martin Schwidefsky  <schwidefsky@de.ibm.com>
10722         * sysdeps/s390/s390-32/sysdep.h (JUMPTARGET): Move branch instructions
10723         from here...
10724         (PSEUDO): ... to here.
10725         * sysdeps/s390/s390-64/sysdep.h (JUMPTARGET): Move branch instruction
10726         from here...
10727         (PSEUDO): ... to here.
10729 2003-01-13  Ulrich Drepper  <drepper@redhat.com>
10731         * locale/programs/charmap-dir.c (charmap_readdir): Use struct
10732         dirent64 instead of struct dirent for dirent.  Call readdir64
10733         instead of readdir.
10735         * locale/programs/locfile.c (siblings_uncached): Use struct
10736         dirent64 instead of struct dirent for other_dentry.  Call
10737         readdir64 instead of readdir.
10739         * elf/ldconfig.c (direntry): Change type to struct dirent64.
10740         (search_dir): Use readdir64 instead of readdir.
10741         Patch by Zhangfan Xing <xing@pacific.jpl.nasa.gov>.
10743 2003-01-12  Roland McGrath  <roland@redhat.com>
10745         * hurd/lookup-retry.c (__hurd_file_name_lookup_retry): Use strtoul,
10746         not strtol.  The former is usable in ld.so, the latter not.
10748         * include/fcntl.h: Declare __libc_creat.
10750         * sysdeps/mach/hurd/Makefile (libmachuser-link.so-no-z-defs,
10751         libhurduser-link.so-no-z-defs): New variables.
10753         * malloc/malloc.c: Revert last change.
10754         * malloc/malloc.h (_int_*): Move these decls to ...
10755         * include/malloc.h: ... here.  Add attribute_hidden.
10756         (_int_valloc): Declare it too.
10758 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
10760         * elf/dl-close.c (_dl_close): Fix typo, must be == not = in
10761         search for removed searchlist.  Reported by Roland McGrath.
10763         * io/ftwtest-sh: Add test for case of symlink to nonexisting file
10764         given as start file.
10766         * io/ftw.c (ftw_startup): Use correct name in check for symlink
10767         without existing target.  Patch by Jim Meyering.
10769         * Makerules (build-shlib-helper): Don't use -z defs linker option
10770         if no-z-defs is defined either.
10772 2003-01-10  Martin Schwidefsky  <schwidefsky@de.ibm.com>
10774         * sysdeps/unix/sysv/linux/s390/s390-64/kernel_stat.h: Remove unused
10775         file.
10777 2003-01-10  Martin Schwidefsky  <schwidefsky@de.ibm.com>
10779         * sysdeps/unix/sysv/linux/s390/s390-32/syscalls.list: Add vfork.
10780         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
10782 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
10784         * io/ftwtest-sh: Add test case for relative path with /. at the end.
10786 2003-01-12  Jim Meyering  <jim@meyering.net>
10788         * io/ftw.c (ftw_startup): When trying to stat the starting directory,
10789         use the basename if we've already chdir'd into its parent directory.
10791 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
10793         * io/ftw.c (process_entry): Use relative path when using chdir()
10794         to change directory after call to ftw_dir.
10795         * io/ftwtest-sh: Add test for relative path argument to nftw()
10796         with FTW_CHDIR option.
10798 2003-01-12  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
10800         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_VFORK_SYSCALL):
10801         Define for powerpc.
10802         * sysdeps/unix/sysv/linux/powerpc/syscall.S: Take register alignment
10803         into account.
10804         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h
10805         (INTERNAL_SYSCALL): Make use of ERR parameter.
10806         (INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
10807         INTERNAL_SYSCALL_ERROR_P): Adjust accordingly.
10808         (INLINE_SYSCALL): Make use of INTERNAL_SYSCALL.
10809         * sysdeps/unix/sysv/linux/powerpc/powerpc32/vfork.S: New file.
10811 2003-01-09  Richard Henderson  <rth@redhat.com>
10813         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Compute
10814         DTPREL64 and TPREL64 without loadbase applied.
10816 2003-01-09  Richard Henderson  <rth@redhat.com>
10818         * sysdeps/unix/alpha/sysdep.S: Use correct definition of errno
10819         for NOT_IN_libc.
10821         * sysdeps/unix/sysv/linux/alpha/sysdep.h: Move inline syscall bits...
10822         * sysdeps/unix/alpha/sysdep.h: ... here.
10823         (PSEUDO_LOADGP): Remove.
10824         (PSEUDO_PROLOGUE): Load GP in non-pic case.
10825         (SYSCALL_ERROR_LABEL): New.
10826         (PSEUDO): Use it in error branch.
10827         (PSEUDO_END): Add $syscall_error label.
10829 2003-01-12  Andreas Jaeger  <aj@suse.de>
10831         * math/bits/mathcalls.h: Round is a const function.
10833 2003-01-11  Jim Meyering  <jim@meyering.net>
10835         * io/ftw.c [HAVE_CONFIG_H]: Include <config.h>.
10836         [HAVE_SYS_PARAM_H || _LIBC]: Guard inclusion of <sys/param.h>.
10837         Include <sys/stat.h>, not <include/sys/stat.h>, if !_LIBC.
10838         [!_LIBC] (__chdir, __closedir, __fchdir, __getcwd, __opendir): Define.
10839         [!_LIBC] (__readdir64, __tdestroy, __tfind, __tsearch): Define.
10840         [!_LIBC] (internal_function, dirent64, MAX): Define.
10841         (__set_errno): Define if not already defined.
10842         (open_dir_stream): When FTW_CHDIR is enabled, invoke opendir on
10843         the basename, not the entire file name.
10844         (process_entry): When FTW_CHDIR is enabled, invoke XSTAT or LXSTAT on
10845         the basename, not the entire file name.
10847 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
10849         * string/tester.c (test_strcpy): Disable last added strcpy until
10850         it is fixed.
10852 2003-01-11  Philip Blundell  <philb@gnu.org>
10854         * sysdeps/unix/sysv/linux/arm/socket.S: Add cancellation support.
10856 2003-01-11  Andreas Schwab  <schwab@suse.de>
10858         * Makerules: Add vpath for %.dynsym and %.so so that the
10859         implicit rule chaining for check-abi works.
10861 2003-01-11  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
10863         * sysdeps/unix/sysv/linux/sh/sysdep.h (SYSCALL_ERROR_HANDLER):
10864         Add non-PIC case.
10866 2003-01-11  Jakub Jelinek  <jakub@redhat.com>
10868         * elf/tls-macros.h [__ia64__] (__TLS_CALL_CLOBBERS): Define.
10869         [__ia64__] (TLS_LE, TLS_IE): Fix typos.  Add ;; at start of asm if
10870         gp is used early.
10871         [__ia64__] (TLS_LD, TLS_GD): Likewise.  Use __TLS_CALL_CLOBBERS.
10872         * elf/Makefile ($(objpfx)tst-tlsmod5.so, $(objpfx)tst-tlsmod6.so):
10873         Ensure libc.so in DT_NEEDED.
10874         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Move
10875         CHECK_STATIC_TLS before l_tls_offset use.
10876         * sysdeps/i386/dl-machine.h (elf_machine_rel, elf_machine_rela):
10877         Likewise.
10878         * sysdeps/sh/dl-machine.h (elf_machine_rela): Likewise.
10879         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage) [TLS_DTV_AT_TP]:
10880         Allocate TLS_PRE_TCB_SIZE bytes below result.
10881         (_dl_deallocate_tls) [TLS_DTV_AT_TP]: Adjust before freeing.
10882         * sysdeps/generic/libc-tls.c (__libc_setup_tls): If
10883         TLS_INIT_TP_EXPENSIVE is not defined, allocate even if no PT_TLS
10884         segment has been found.  If TLS_DTV_AT_TP, allocate TLS_PRE_TCB_SIZE
10885         bytes below result and add tcb_offset to memsz.
10886         * sysdeps/ia64/dl-tls.h (__tls_get_addr): New prototype.
10887         * sysdeps/ia64/dl-machine.h: Include tls.h.
10888         (elf_machine_type_class): Return ELF_RTYPE_CLASS_PLT for TLS relocs
10889         too.
10890         (elf_machine_rela): Assume if sym_map != NULL sym is non-NULL too.
10891         Handle R_IA64_DTPMOD*, R_IA64_DTPREL* and R_IA64_TPREL* relocations.
10892         * sysdeps/ia64/libc-tls.c: New file.
10894 2003-01-10  Steven Munroe  <sjmunroe@us.ibm.com>
10896         * sysdeps/powerpc/powerpc64/sysdep.h (PSEUDO_RET): Add branch hit.
10897         * sysdeps/unix/sysv/linux/powerpc/bits/stat.h (STAT_VER_LINUX):
10898         Fix type.  Move definition out of #if.
10899         * sysdeps/unix/sysv/linux/powerpc/powerpc64/ftruncate64.c: New file.
10900         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pread.c: New file.
10901         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pread64.c: New file.
10902         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pwrite.c: New file.
10903         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pwrite64.c: New file.
10904         * sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S: Add cancellation
10905         support.
10906         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Remove
10907         ftruncate64, pread64, pwrite64, truncate64 entries.
10908         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h
10909         (INLINE_SYSCALL): New version that supports function call like
10910         syscalls.  Add __builtin_expect.
10911         (LOADARGS_n): Add argument size safety checks.
10912         (INTERNAL_SYSCALL): New Macro.
10913         * sysdeps/unix/sysv/linux/powerpc/powerpc64/truncate64.c: New file.
10914         * sysdeps/unix/sysv/linux/powerpc/sys/procfs.h [__PPC_ELF_H]: Avoid
10915         redefinition of elf_fpreg_t and elf_fpregset_t.
10917 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
10919         * elf/dl-close.c (_dl_close): Add several asserts.  Correct and
10920         simplify test for unloading.  If loader of a DSO is unloaded do not
10921         use its scope anymore.  Fall back to own scope and adjust opencounts.
10922         Fix several comments.
10923         * elf/dl-deps.c (_dl_map_object_deps): Always allocate memory for
10924         the l_searchlist, not only for l_initfini.
10926         * elf/dl-lookup.c (add_dependencies): Avoid creating relocation
10927         dependencies if objects cannot be removed.  Remove object with the
10928         definition as not unloadable if necessary.
10930         * elf/reldep6.c: Create relocation dependency before closing the first
10931         module.
10933 2003-01-10  Guido Günther  <agx@sigxcpu.org>
10935         * sysdeps/unix/mips/fork.S: Add PSEUDO_END.
10936         * sysdeps/unix/mips/brk.S: Likewise.
10937         * sysdeps/unix/mips/pipe.S: Likewise.
10939 2003-01-10  Andreas Schwab  <schwab@suse.de>
10941         * sysdeps/unix/sysv/linux/m68k/getsysstats.c: New file.
10943         * sysdeps/unix/sysv/linux/m68k/vfork.S: Optimize for kernels which
10944         are known to have the vfork syscall.
10946         * sysdeps/m68k/sysdep.h (JUMPTARGET): Undefine before defining it.
10948         * sysdeps/unix/sysv/linux/kernel-features.h
10949         (__ASSUME_MMAP2_SYSCALL, __ASSUME_TRUNCATE64_SYSCALL)
10950         (__ASSUME_STAT64_SYSCALL, __ASSUME_FCNTL64)
10951         (__ASSUME_VFORK_SYSCALL): Define for m68k kernels >= 2.4.12.
10953 2003-01-09  Jakub Jelinek  <jakub@redhat.com>
10955         * elf/Makefile: Add rules to build and run reldep9 test.
10956         * elf/reldep9.c: New file.
10957         * elf/reldep9mod1.c: New file.
10958         * elf/reldep9mod2.c: New file.
10959         * elf/reldep9mod3.c: New file.
10961 2003-01-09  Jakub Jelinek  <jakub@redhat.com>
10963         * elf/Makefile: Add rules to build and run nodelete2 test.
10964         * elf/nodelete2.c: New file.
10965         * elf/nodel2mod1.c: New file.
10966         * elf/nodel2mod2.c: New file.
10967         * elf/nodel2mod3.c: New file.
10969 2003-01-09  Jakub Jelinek  <jakub@redhat.com>
10971         * posix/test-vfork.c (noop): Add __attribute_noinline__.
10972         * sysdeps/generic/sysdep.h (JUMPTARGET): Define if not defined.
10973         * sysdeps/i386/sysdep.h (JUMPTARGET): Undefine JUMPTARGET before
10974         defining it.
10975         * sysdeps/powerpc/powerpc32/sysdep.h (JUMPTARGET): Likewise.
10976         * sysdeps/powerpc/powerpc64/sysdep.h (JUMPTARGET): Likewise.
10977         * sysdeps/s390/s390-32/sysdep.h (JUMPTARGET): Likewise.
10978         * sysdeps/s390/s390-64/sysdep.h (JUMPTARGET): Likewise.
10979         * sysdeps/x86_64/sysdep.h (JUMPTARGET): Likewise.
10981 2003-01-09  Andreas Schwab  <schwab@suse.de>
10983         * sysdeps/m68k/fpu/libm-test-ulps: Regenerated.
10985 2003-01-08  Ulrich Drepper  <drepper@redhat.com>
10987         * sysdeps/unix/sysv/linux/arm/sysdep.h (INTERNAL_SYSCALL,
10988         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Add err
10989         argument.
10990         (INTERNAL_SYSCALL_DECL): Define.
10992 2003-01-06  Jakub Jelinek  <jakub@redhat.com>
10994         * sysdeps/unix/sysv/linux/ia64/sysdep.h (INTERNAL_SYSCALL,
10995         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Add err
10996         argument.
10997         (INTERNAL_SYSCALL_DECL): Define.
10998         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h: Likewise.
10999         * sysdeps/unix/sysv/linux/sparc/sysdep.h: Likewise.
11000         * sysdeps/unix/sysv/linux/i386/sysdep.h: Likewise.
11001         (INLINE_SYSCALL): Adjust.
11002         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Likewise.
11003         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise.
11004         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Likewise.
11005         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
11006         * elf/dl-misc.c (_dl_debug_vdprintf): Add INTERNAL_SYSCALL_DECL,
11007         add err argument to INTERNAL_SYSCALL* macros.
11008         * sysdeps/unix/sysv/linux/i386/brk.c (__brk): Likewise.
11009         * sysdeps/unix/sysv/linux/i386/system.c (cancel_handler): Likewise.
11010         * sysdeps/unix/sysv/linux/m68k/brk.c (__brk): Likewise.
11011         * sysdeps/unix/sysv/linux/m68k/getpagesize.c  (__getpagesize):
11012         Likewise.
11013         * sysdeps/unix/sysv/linux/sigwait.c (do_sigwait): Likewise.
11014         * sysdeps/unix/sysv/linux/i386/sigaction.c (__libc_sigaction): Use
11015         INLINE_SYSCALL instead of INTERNAL_SYSCALL and setting errno.
11017 2003-01-07  Ulrich Drepper  <drepper@redhat.com>
11019         Unify symbols in user namespace exported by libc.so and libc.a.
11020         * argp/argp-fmtstream.c: Don't define argp_make_fmtstream,
11021         argp_fmtstream_free, and argp_fmtstream_printf.
11022         * argp/argp-fs-xinl.c: Don't define argp_fmtstream_putc,
11023         argp_fmtstream_puts, argp_fmtstream_write, argp_fmtstream_set_lmargin,
11024         argp_fmtstream_set_rmargin, argp_fmtstream_set_wmargin, and
11025         argp_fmtstream_point.
11026         * gmon/gmon.c: Don't define write_profiling.
11027         * libio/genops.c: Don't define _cleanup.
11029         * intl/explodename.c (_nl_find_language.c): Mark as static.
11030         * intl/loadinfo.h: Remove _nl_find_language prototype.
11032         * libio/fileops.c (_IO_file_seekoff_maybe_mmap): Mark as static.
11033         * libio/libioP.h: Remove declaration.
11035         * libio/iopopen.c (_IO_proc_jumps): Mark as static.
11036         * libio/libioP.h: Remove declaration.
11038         * sysdeps/generic/unwind-dw2.c: Mark __frame_state_for with STATIC.
11039         * sysdeps/generic/framestate.c: Define STATIC before including
11040         unwind-dw2.c.
11042         * time/Versions [GLIBC_2.3.2] (libc): Export strptime_l.
11044 2003-01-06  Philip Blundell  <philb@gnu.org>
11046         * sysdeps/unix/arm/sysdep.S (syscall_error): Optimise a little.
11047         [__LIBC_REENTRANT]: Unify PIC and non-PIC cases.
11049         * sysdeps/unix/sysv/linux/arm/sysdep.h (PSEUDO): Remove .type
11050         directive.
11051         (PSEUDO_RET): Use SYSCALL_ERROR in place of __syscall_error.
11052         (SYSCALL_ERROR): New.
11053         (SYSCALL_ERROR_HANDLER) [NOT_IN_libc]: Provide local copy of error
11054         handling code.
11055         (INTERNAL_SYSCALL): Define.
11056         (INLINE_SYSCALL): Use it.
11057         (INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Define.
11058         * sysdeps/unix/sysv/linux/arm/socket.S (__socket): Use
11059         SYSCALL_ERROR in place of __syscall_error.
11061 2003-01-07  Jakub Jelinek  <jakub@redhat.com>
11063         * sysdeps/ia64/bits/byteswap.h [__GNUC__ >= 2] (__bswap_16,
11064         __bswap_32, __bswap_64): Put x into temporary variable
11065         to avoid warnings.
11066         [!__GNUC__] (__bswap_16, __bswap_32, __bswap_64): Change into static
11067         (inline) functions.
11068         * sysdeps/s390/bits/byteswap.h [__GNUC__ >= 2] (__bswap_16,
11069         __bswap_32, __bswap_64): Put x into temporary variable
11070         to avoid warnings.
11071         [!__GNUC__] (__bswap_16, __bswap_32, __bswap_64): Change into static
11072         (inline) functions.
11073         * sysdeps/i386/bits/byteswap.h [!__GNUC__] (__bswap_16, __bswap_32):
11074         Likewise.
11076 2003-01-07  Jakub Jelinek  <jakub@redhat.com>
11078         * sysdeps/unix/sysv/linux/alpha/adjtime.c (ntp_adjtime): New weak
11079         alias.
11081 2003-01-07  Jakub Jelinek  <jakub@redhat.com>
11083         * elf/rtld.c (_rtld_global): Remove _dl_dynamic_weak initializer.
11084         * elf/dl-support.c (_dl_dynamic_weak): Initialize to 0.
11086 2003-01-07  Ulrich Drepper  <drepper@redhat.com>
11088         * math/libm-test.inc (significand_test): New function.
11089         (main): Call it.
11091 2003-01-06  Roland McGrath  <roland@redhat.com>
11093         * sysdeps/i386/i486/bits/string.h (memset): Add parens around macro
11094         arguments.
11095         (memcpy, memrchr, strcpy, __stpcpy, strncpy, strcat): Likewise.
11096         (strcmp, strncat, strncmp, strchr, __strchrnul, strchrnul): Likewise.
11097         (index, strrchr, rindex, strcspn, strspn, strpbrk, strstr): Likewise.
11099         * string/tester.c (test_strcpy): Add test with `void *' arguments.
11101 2003-01-06  Ulrich Drepper  <drepper@redhat.com>
11103         * sysdeps/i386/fpu/s_significandl.c (__significandl): Really
11104         return significand and not the exponent.
11105         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
11107         * elf/dl-misc.c (_dl_debug_vdprintf): Help PPC port by explicitly
11108         taking address of iov in INTERNAL_SYSCALL call.  Patch by Franz Sirl.
11110         * malloc/malloc.c: Mark all _int_* functions as static.
11112 2003-01-06  Jakub Jelinek  <jakub@redhat.com>
11114         * sysdeps/unix/alpha/sysdep.h (PSEUDO): Use PSEUDO_PREPARE_ARGS.
11115         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S: Add cancellation
11116         handling.
11117         * sysdeps/unix/sysv/linux/alpha/select.S: Likewise.
11119 2003-01-06  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
11121         * sysdeps/powerpc/powerpc32/sysdep.h (PSEUDO_RET): Add branch hint.
11122         * sysdeps/unix/sysv/linux/powerpc/powerpc32/socket.S: Add cancellation
11123         support.
11124         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Remove
11125         ftruncate64, truncate64, pread64 and pwrite64 entries.
11126         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h
11127         (INLINE_SYSCALL): Add __builtin_expect.
11128         (LOADARGS_n): Add argument size safety checks.
11129         * sysdeps/unix/sysv/linux/powerpc/powerpc32/ftruncate64.c: New file.
11130         * sysdeps/unix/sysv/linux/powerpc/powerpc32/truncate64.c: New file.
11131         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pread.c: New file.
11132         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pread64.c: New file.
11133         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pwrite.c: New file.
11134         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pwrite64.c: New file.
11136 2003-01-06  Jakub Jelinek  <jakub@redhat.com>
11138         * sysdeps/generic/sysdep-cancel.h (LIBC_CANCEL_HANDLED): Define.
11139         * sysdeps/generic/creat.c: Include sysdep-cancel.h.
11140         (LIBC_CANCEL_HANDLED): Add.
11142         * sysdeps/unix/sysv/linux/alpha/sysdep.h
11143         (inline_syscall_r0_constraint): Rename to...
11144         (inline_syscall_r0_out_constraint): ... this.  Add =.
11145         (inline_syscall[0-6]): Use inline_syscall_r0_out_constraint.
11147 2003-01-06  Andreas Schwab  <schwab@suse.de>
11149         * sysdeps/m68k/dl-machine.h (elf_machine_runtime_setup): Make
11150         sure this is always inlined.
11151         (elf_machine_rela): Likewise.
11153         * sysdeps/m68k/Makefile (sysdep-CFLAGS): Increase inline limit.
11155 2003-01-04  Roland McGrath  <roland@redhat.com>
11157         * Makeconfig (+mkdep): Add -MP flag.
11158         Suggested by Art Haas <ahaas@airmail.net>.
11160 2003-01-05  Andreas Schwab  <schwab@suse.de>
11162         * sysdeps/m68k/Makefile (CFLAGS-.oS): Append -fPIC.
11164 2003-01-05  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
11166         * sysdeps/unix/sysv/linux/sh/clone.S (__clone): Use
11167         SYSCALL_ERROR_HANDLER.
11168         * sysdeps/unix/sysv/linux/sh/pipe.S (__libc_pipe): Likewise.
11169         * sysdeps/unix/sysv/linux/sh/socket.S (__socket): Likewise.
11170         Add support for cancellation handling.
11171         * sysdeps/unix/sysv/linux/sh/syscall.S (__syscall): Use
11172         SYSCALL_ERROR_HANDLER.
11173         * sysdeps/unix/sysv/linux/sh/vfork.S (__vfork): Likewise.
11174         * sysdeps/unix/sysv/linux/sh/sysdep.h (PSEUDO): Likewise.
11175         Add support for cancellation handling.
11176         (SYSCALL_ERROR_HANDLER): Define PIC variants.
11178 2003-01-04  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
11180         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Mark
11181         __syscall_pread64 and __syscall_pwrite64 cancelable.
11182         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h
11183         (INTERNAL_SYSCALL): New macro.
11184         (LOADARGS_0, LOADARGS_1): Fix.
11186 2003-01-05  Ulrich Drepper  <drepper@redhat.com>
11188         * Makerules (build-shlip-helper): Unless told otherwise, add
11189         -Wl,-z,defs to linker command line.
11190         * rt/Makefile (librt.so): Link with ld.so.
11191         * dlfcn/Makefile (libdl.so): Likewise.
11193 2003-01-05  Jakub Jelinek  <jakub@redhat.com>
11195         * sysdeps/unix/sysv/linux/s390/s390-32/socket.S: Add support for
11196         cancellation handling.
11197         * sysdeps/unix/sysv/linux/s390/s390-64/socket.S: Likewise.
11198         * sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c: Likewise.
11200 2003-01-04  Ulrich Drepper  <drepper@redhat.com>
11202         * sysdeps/unix/sysv/linux/i386/system.c (cancel_handler): Correct
11203         order of parameters passed to kill.
11205 2003-01-04  Andreas Schwab  <schwab@suse.de>
11207         * sysdeps/unix/sysv/linux/m68k/bits/stat.h: Add nanosecond fields.
11209 2003-01-03  Paul Eggert  <eggert@twinsun.com>
11211         * malloc/obstack.h (__INT_TO_PTR) [__STDC__]: Cast result to
11212         (void *) to avoid diagnostic with native c89 on SGI IRIX 6.5
11213         when compiling Bison 1.875's `bitset bset = obstack_alloc
11214         (bobstack, bytes);'.  Problem reported by Nelson H. F. Beebe.
11216 2003-01-04  Ulrich Drepper  <drepper@redhat.com>
11218         * sysdeps/posix/system.c (do_system): Minor optimizations.  Remove
11219         unnecessary code.
11220         Correct reference counter in case SIGQUIT handler installation failed.
11222 2003-01-03  Ulrich Drepper  <drepper@redhat.com>
11224         * include/libc-symbols.h [HAVE_WEAK_SYMBOLS] (_weak_extern):
11225         Define using _Pragma(weak ...).
11227 2003-01-03  Andreas Jaeger  <aj@suse.de>, Jakub Jelinek <jakub@redhat.com>
11229         * resolv/res_libc.c: Provide declaration for __res_init_weak and
11230         reorder declarations.
11232 2003-01-03  Art Haas  <ahaas@airmail.net>
11234         * localedata/tests-mbwc/dat_iswalnum.c: Convert GCC extension
11235         initializer syntax to C99.
11236         * localedata/tests-mbwc/dat_iswalpha.c: Likewise.
11237         * localedata/tests-mbwc/dat_iswcntrl.c: Likewise.
11238         * localedata/tests-mbwc/dat_iswctype.c: Likewise.
11239         * localedata/tests-mbwc/dat_iswdigit.c: Likewise.
11240         * localedata/tests-mbwc/dat_iswgraph.c: Likewise.
11241         * localedata/tests-mbwc/dat_iswlower.c: Likewise.
11242         * localedata/tests-mbwc/dat_iswprint.c: Likewise.
11243         * localedata/tests-mbwc/dat_iswpunct.c: Likewise.
11244         * localedata/tests-mbwc/dat_iswspace.c: Likewise.
11245         * localedata/tests-mbwc/dat_iswupper.c: Likewise.
11246         * localedata/tests-mbwc/dat_iswxdigit.c: Likewise.
11247         * localedata/tests-mbwc/dat_mblen.c: Likewise.
11248         * localedata/tests-mbwc/dat_mbrlen.c: Likewise.
11249         * localedata/tests-mbwc/dat_mbrtowc.c: Likewise.
11250         * localedata/tests-mbwc/dat_mbsrtowcs.c: Likewise.
11251         * localedata/tests-mbwc/dat_mbstowcs.c: Likewise.
11252         * localedata/tests-mbwc/dat_mbtowc.c: Likewise.
11253         * localedata/tests-mbwc/dat_strcoll.c: Likewise.
11254         * localedata/tests-mbwc/dat_strfmon.c: Likewise.
11255         * localedata/tests-mbwc/dat_strxfrm.c: Likewise.
11256         * localedata/tests-mbwc/dat_swscanf.c: Likewise.
11257         * localedata/tests-mbwc/dat_towctrans.c: Likewise.
11258         * localedata/tests-mbwc/dat_towlower.c: Likewise.
11259         * localedata/tests-mbwc/dat_towupper.c: Likewise.
11260         * localedata/tests-mbwc/dat_wcrtomb.c: Likewise.
11261         * localedata/tests-mbwc/dat_wcscat.c: Likewise.
11262         * localedata/tests-mbwc/dat_wcschr.c: Likewise.
11263         * localedata/tests-mbwc/dat_wcscmp.c: Likewise.
11264         * localedata/tests-mbwc/dat_wcscoll.c: Likewise.
11265         * localedata/tests-mbwc/dat_wcscpy.c: Likewise.
11266         * localedata/tests-mbwc/dat_wcscspn.c: Likewise.
11267         * localedata/tests-mbwc/dat_wcslen.c: Likewise.
11268         * localedata/tests-mbwc/dat_wcsncat.c: Likewise.
11269         * localedata/tests-mbwc/dat_wcsncmp.c: Likewise.
11270         * localedata/tests-mbwc/dat_wcsncpy.c: Likewise.
11271         * localedata/tests-mbwc/dat_wcspbrk.c: Likewise.
11272         * localedata/tests-mbwc/dat_wcsrtombs.c: Likewise.
11273         * localedata/tests-mbwc/dat_wcsspn.c: Likewise.
11274         * localedata/tests-mbwc/dat_wcsstr.c: Likewise.
11275         * localedata/tests-mbwc/dat_wcstod.c: Likewise.
11276         * localedata/tests-mbwc/dat_wcstok.c: Likewise.
11277         * localedata/tests-mbwc/dat_wcstombs.c: Likewise.
11278         * localedata/tests-mbwc/dat_wcswidth.c: Likewise.
11279         * localedata/tests-mbwc/dat_wcsxfrm.c: Likewise.
11280         * localedata/tests-mbwc/dat_wctob.c: Likewise.
11281         * localedata/tests-mbwc/dat_wctomb.c: Likewise.
11282         * localedata/tests-mbwc/dat_wctrans.c: Likewise.
11283         * localedata/tests-mbwc/dat_wctype.c: Likewise.
11284         * localedata/tests-mbwc/dat_wcwidth.c: Likewise.
11286 2003-01-03  Richard Henderson  <rth@redhat.com>
11288         * sysdeps/unix/sysv/linux/alpha/sysdep.h (inline_syscall_r0_asm): New.
11289         (inline_syscall_r0_constraint): New.
11290         (inline_syscall[0-6]): Use them.
11292 2003-01-03  Jakub Jelinek  <jakub@redhat.com>
11294         * sysdeps/generic/ldsodefs.h (_dl_allocate_tls, _dl_deallocate_tls):
11295         Add rtld_hidden_proto.
11296         * sysdeps/generic/dl-tls.c (_dl_deallocate_tls): Add rtld_hidden_def.
11297         (_dl_allocate_tls): Likewise.  Remove INTDEF.
11299 2002-07-05  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
11301         * sysdeps/sh/memcpy.S: Optimize.  Based on a patch by Toshiyasu
11302         Morita <toshiyasu.morita@hsa.hitachi.com>.
11303         * sysdeps/sh/memcpy.S: Likewise.
11305 2003-01-02  Ulrich Drepper  <drepper@redhat.com>
11307         * sysdeps/pthread/aio_suspend.c (aio_suspend): Don't quite remove
11308         any, but unify the test.
11310 2003-01-02  Jakub Jelinek  <jakub@redhat.com>
11312         * sysdeps/unix/sysv/linux/arm/sigaction.c (__sigaction,
11313         sigaction): Protect weak_alias and libc_hidden_weak with
11314         #ifndef LIBC_SIGACTION.
11315         * sysdeps/unix/sysv/linux/ia64/sigaction.c (__sigaction,
11316         sigaction): Likewise.
11317         * sysdeps/unix/sysv/linux/mips/sigaction.c (__sigaction,
11318         sigaction): Likewise.
11319         * sysdeps/unix/sysv/linux/s390/s390-64/sigaction.c (__sigaction,
11320         sigaction): Likewise.
11321         * sysdeps/unix/sysv/linux/sparc/sparc32/sigaction.c (__sigaction,
11322         sigaction): Likewise.
11323         * sysdeps/unix/sysv/linux/sparc/sparc64/sigaction.c (__sigaction,
11324         sigaction): Likewise.
11325         * sysdeps/unix/sysv/linux/x86_64/sigaction.c (__sigaction,
11326         sigaction): Likewise.
11327         * sysdeps/unix/sysv/linux/i386/sigaction.c (__sigaction,
11328         sigaction): Likewise.  Remove SIGCANCEL handling here.
11329         * sysdeps/unix/sysv/linux/sigaction.c (__sigaction, sigaction):
11330         Likewise.
11332 2003-01-02  Art Haas  <ahaas@airmail.net>
11334         * login/tst-utmp.c: Convert GCC extension initializer syntax to C99.
11336 2003-01-02  Ulrich Drepper  <drepper@redhat.com>
11338         * posix/getconf.c: Update copyright year.
11339         * nss/getent.c: Likewise.
11340         * nscd/nscd_nischeck.c: Likewise.
11341         * iconv/iconvconfig.c: Likewise.
11342         * iconv/iconv_prog.c: Likewise.
11343         * elf/ldconfig.c: Likewise.
11344         * catgets/gencat.c: Likewise.
11345         * csu/version.c: Likewise.
11346         * elf/ldd.bash.in: Likewise.
11347         * elf/sprof.c (print_version): Likewise.
11348         * locale/programs/locale.c: Likewise.
11349         * locale/programs/localedef.c: Likewise.
11350         * nscd/nscd.c (print_version): Likewise.
11351         * debug/xtrace.sh: Likewise.
11352         * malloc/memusage.sh: Likewise.
11353         * malloc/mtrace.pl: Likewise.
11355 2003-01-01  Jakub Jelinek  <jakub@redhat.com>
11357         * io/sys/stat.h: Include time.h with __need_timespec even if
11358         __USE_MISC is defined but __USE_XOPEN is not.
11360 2003-01-01  Andreas Jaeger  <aj@suse.de>
11362         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Use union
11363         type to avoid strict aliasing problem.
11364         (_nss_dns_gethostbyname2_r): Likewise.
11365         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyaddr_r): Likewise.
11366         (_nss_dns_getnetbyname_r): Likewise.
11367         * resolv/gethnamaddr.c (_gethtent): Likewise.
11368         (gethostbyname2): Likewise.
11370 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
11372         * string/string-inlines.c: Define __memcpy_g and __strchr_g macros
11373         to avoid using the exported symbols.  Define aliases with the
11374         original names separately.
11376         * include/time.h: Add libc_hidden_proto for __strftime_l.
11377         * include/wchar.h: Add libc_hidden_proto for __wcsftime_l.
11378         * time/strftime.c: Always use libc_hidden_def if _LIBC.
11380         * libio/libioP.h: Add libc_hidden_proto for _IO_file_open.
11381         * libio/fileops.c: Add libc_hidden_def for _IO_file_open.
11383         * malloc/mtrace.c: Add libc_hidden_proto and libc_hidden_def for
11384         tr_break.
11386         * csu/Makefile (routines): Add dso_handle.
11387         * csu/dso_handle.c: New file.
11389 2002-12-31  Roland McGrath  <roland@redhat.com>
11391         * Makerules (compile.S, COMPILE.S): Remove -DASSEMBLER here.
11392         Use $(S-CPPFLAGS) in place of $(asm-CPPFLAGS).
11393         (S-CPPFLAGS): Add -DASSEMBLER here instead.
11394         (generate-md5, +make-deps): Fix magic to get $(S-CPPFLAGS).
11396 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
11398         * malloc/thread-m.h [SHARED] (thread_atfork): Assume __dso_handle
11399         is available.
11401 2002-12-31  Andreas Jaeger  <aj@suse.de>
11403         * sysdeps/unix/sysv/linux/powerpc/powerpc32/kernel_stat.h: Sync
11404         with Linux kernel.
11405         * sysdeps/unix/sysv/linux/sparc/sparc32/kernel_stat.h: Likewise.
11406         * sysdeps/unix/sysv/linux/s390/s390-64/kernel_stat.h: Likewise.
11407         * sysdeps/unix/sysv/linux/hppa/kernel_stat.h: Likewise.
11409         * sysdeps/unix/sysv/linux/kernel_stat.h
11410         (_HAVE_STAT_NSEC,_HAVE_STAT_NSEC64): New.
11412         * sysdeps/unix/sysv/linux/xstatconv.c (xstat_conv): Re-add
11413         __unused[1-3] since they're needed by some platforms.  Handle
11414         _HAVE_STAT_NSEC and _HAVE_STAT_NSEC64.
11416         * sysdeps/unix/sysv/linux/x86_64/bits/stat.h: Add nsec resolution
11417         for structs stat and stat64.
11418         * sysdeps/unix/sysv/linux/ia64/bits/stat.h: Likewise.
11419         * sysdeps/unix/sysv/linux/powerpc/bits/stat.h: Likewise.
11420         * sysdeps/unix/sysv/linux/sparc/bits/stat.h: Likewise.
11421         * sysdeps/unix/sysv/linux/s390/bits/stat.h: Likewise.
11423         * io/sys/stat.h [__USE_MISC]: Define __need_timespec for struct stat.
11425         * sysdeps/unix/sysv/linux/xstatconv.c (xstat_conv): Adjust for
11426         nsec resolution changes.
11427         (xstat64_conv): Likewise.
11428         (xstat32_conv): Likewise.
11430         * sysdeps/unix/sysv/linux/kernel_stat.h: Add nsec resolution for
11431         struct kernel_stat.
11433         * sysdeps/unix/sysv/linux/bits/stat.h: Add nsec resolution for
11434         structs stat and stat64.
11436         * time/time.h (__timespec_defined): Define for __USE_MISC.
11438 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
11440         * include/signal.h: Add libc_hidden_proto for __libc_current_sigrtmin
11441         and __libc_current_sigrtmax.
11443 2002-12-31  Jakub Jelinek  <jakub@redhat.com>
11445         * include/errno.h (__errno_location): Add prototype.
11446         Use libc_hidden_proto unconditionally.
11447         * include/netdb.h (__h_errno_location): Use libc_hidden_proto
11448         unconditionally.
11449         * include/resolv.h (__res_state): Likewise.
11451         * hurd/errno-loc.c (__errno_location): Add libc_hidden_def.
11452         * include/sys/socket.h (accept): Add libc_hidden_proto.
11453         * include/errno.h (__errno_location): Likewise.
11454         * include/netdb.h (__h_errno_location): Likewise.
11455         * include/resolv.h (__res_state): Likewise.
11456         * include/unistd.h (__lseek): Likewise.
11457         * sysdeps/generic/errno-loc.c (__errno_location): Add libc_hidden_def.
11458         * sysdeps/generic/herrno-loc.c (__h_errno_location): Likewise.
11459         * sysdeps/generic/res-state.c (__res_state): Likewise.
11460         * sysdeps/generic/accept.c (accept): Likewise.
11461         * sysdeps/generic/lseek.c (__lseek): Likewise.
11462         * sysdeps/generic/allocrtsig.c (__libc_current_sigrtmin,
11463         __libc_current_sigrtmax): Likewise.
11464         * sysdeps/mach/hurd/accept.c (accept): Likewise.
11465         * sysdeps/mach/hurd/lseek.c (__lseek): Likewise.
11466         * sysdeps/unix/sysv/aix/accept.c (accept): Likewise.
11467         * sysdeps/unix/sysv/aix/lseek.c (__lseek): Likewise.
11468         * sysdeps/unix/sysv/linux/accept.S (accept): Likewise.
11469         * sysdeps/unix/inet/syscalls.list (__GI_accept): New alias to accept.
11470         * sysdeps/unix/sysv/linux/alpha/syscalls.list (__GI_accept): Likewise.
11471         * sysdeps/unix/sysv/linux/hppa/syscalls.list (__GI_accept): Likewise.
11472         * sysdeps/unix/sysv/linux/ia64/syscalls.list (__GI___lseek): New
11473         alias to llseek.
11474         (__GI_accept): New alias to accept.
11475         * sysdeps/unix/sysv/linux/mips/syscalls.list (__GI_accept): Likewise.
11476         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (__GI___lseek):
11477         New alias to llseek.
11478         (__GI_accept): New alias to accept.
11479         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list (__GI_accept):
11480         Likewise.
11481         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (__GI_accept):
11482         Likewise.
11483         * sysdeps/unix/syscalls.list (__GI___lseek): New alias to lseek.
11485         * sysdeps/alpha/setjmp.S : Use libc_hidden_def(name) instead of
11486         strong_alias (name, __GI_name).
11487         * sysdeps/arm/bsd-_setjmp.S : Likewise.
11488         * sysdeps/hppa/bsd-_setjmp.S : Likewise.
11489         * sysdeps/i386/bsd-_setjmp.S : Likewise.
11490         * sysdeps/mips/mips64/bsd-_setjmp.S : Likewise.
11491         * sysdeps/mips/bsd-_setjmp.S : Likewise.
11492         * sysdeps/powerpc/powerpc32/bsd-_setjmp.S : Likewise.
11493         * sysdeps/powerpc/powerpc64/setjmp.S : Likewise.
11494         * sysdeps/s390/s390-32/elf/setjmp.S : Likewise.
11495         * sysdeps/s390/s390-32/bsd-_setjmp.S : Likewise.
11496         * sysdeps/s390/s390-64/elf/setjmp.S : Likewise.
11497         * sysdeps/s390/s390-64/bsd-_setjmp.S : Likewise.
11498         * sysdeps/sh/bsd-_setjmp.S : Likewise.
11499         * sysdeps/sparc/sparc32/setjmp.S : Likewise.
11500         * sysdeps/unix/arm/fork.S : Likewise.
11501         * sysdeps/unix/bsd/hp/m68k/vfork.S : Likewise.
11502         * sysdeps/unix/bsd/i386/vfork.S : Likewise.
11503         * sysdeps/unix/bsd/osf/alpha/fork.S : Likewise.
11504         * sysdeps/unix/bsd/sun/m68k/vfork.S : Likewise.
11505         * sysdeps/unix/bsd/ultrix4/mips/vfork.S : Likewise.
11506         * sysdeps/unix/bsd/vax/vfork.S : Likewise.
11507         * sysdeps/unix/i386/fork.S : Likewise.
11508         * sysdeps/unix/mips/fork.S : Likewise.
11509         * sysdeps/unix/sparc/fork.S : Likewise.
11510         * sysdeps/unix/sparc/vfork.S : Likewise.
11511         * sysdeps/unix/sysv/linux/arm/vfork.S : Likewise.
11512         * sysdeps/unix/sysv/linux/cris/vfork.S : Likewise.
11513         * sysdeps/unix/sysv/linux/i386/vfork.S : Likewise.
11514         * sysdeps/unix/sysv/linux/ia64/fork.S : Likewise.
11515         * sysdeps/unix/sysv/linux/ia64/setjmp.S : Likewise.
11516         * sysdeps/unix/sysv/linux/ia64/vfork.S : Likewise.
11517         * sysdeps/unix/sysv/linux/m68k/vfork.S : Likewise.
11518         * sysdeps/unix/sysv/linux/sh/vfork.S : Likewise.
11519         * sysdeps/unix/sysv/linux/sparc/sparc64/longjmp.S : Likewise.
11520         * sysdeps/unix/sysv/linux/sparc/sparc64/setjmp.S : Likewise.
11521         * sysdeps/unix/sysv/linux/sparc/fork.S : Likewise.
11522         * sysdeps/unix/sysv/linux/sparc/vfork.S : Likewise.
11523         * sysdeps/unix/sysv/linux/x86_64/vfork.S : Likewise.
11524         * sysdeps/unix/fork.S : Likewise.
11525         * sysdeps/vax/bsd-_setjmp.S : Likewise.
11526         * sysdeps/x86_64/bsd-_setjmp.S : Likewise.
11528         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Guard against multiple
11529         inclusion.
11531 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
11533         * include/unistd.h: Add libc_hidden_proto for __fork and __vfork.
11534         * sysdeps/generic/fork.c: Add libc_hidden_def for __fork.
11535         * sysdeps/mach/hurd/fork.c: Likewise.
11536         * sysdeps/unix/sysv/aix/fork.c: Likewise.
11537         * sysdeps/unix/fork.S: Add __GI___fork alias.
11538         * sysdeps/unix/arm/fork.S: Likewise.
11539         * sysdeps/unix/bsd/osf/alpha/fork.S: Likewise.
11540         * sysdeps/unix/i386/fork.S: Likewise.
11541         * sysdeps/unix/mips/fork.S: Likewise.
11542         * sysdeps/unix/sparc/fork.S: Likewise.
11543         * sysdeps/unix/sysv/linux/ia64/fork.S: Likewise.
11544         * sysdeps/unix/sysv/linux/sparc/fork.S: Likewise.
11545         * sysdeps/unix/sysv/linux/syscalls.list: Likewise.
11546         * sysdeps/generic/vfork.c: Add libc_hidden_def for __vfork.
11547         * sysdeps/unix/bsd/hp/m68k/vfork.S: Add __GI___vfork alias.
11548         * sysdeps/unix/bsd/i386/vfork.S: Likewise.
11549         * sysdeps/unix/bsd/sun/m68k/vfork.S: Likewise.
11550         * sysdeps/unix/bsd/ultrix4/mips/vfork.S: Likewise.
11551         * sysdeps/unix/bsd/vax/vfork.S: Likewise.
11552         * sysdeps/unix/sparc/vfork.S: Likewise.
11553         * sysdeps/unix/sysv/linux/arm/vfork.S: Likewise.
11554         * sysdeps/unix/sysv/linux/cris/vfork.S: Likewise.
11555         * sysdeps/unix/sysv/linux/i386/vfork.S: Likewise.
11556         * sysdeps/unix/sysv/linux/ia64/vfork.S: Likewise.
11557         * sysdeps/unix/sysv/linux/m68k/vfork.S: Likewise.
11558         * sysdeps/unix/sysv/linux/sh/vfork.S: Likewise.
11559         * sysdeps/unix/sysv/linux/sparc/vfork.S: Likewise.
11560         * sysdeps/unix/sysv/linux/x86_64/vfork.S: Likewise.
11562         * include/time.h: Add libc_hidden_proto for __nanosleep.
11563         * sysdeps/generic/nanosleep.c: Add libc_hidden_def for __nanosleep.
11564         * sysdeps/mach/nanosleep.c: Likewise.
11565         * sysdeps/unix/sysv/aix/nanosleep.c: Likewise.
11566         * sysdeps/unix/sysv/linux/syscalls.list: Add __GI___nanosleep alias.
11568         * libio/libioP.h: Add libc_hidden_proto for _IO_list_lock,
11569         _IO_list_unlock, and _IO_list_resetlock.
11570         * libio/genops.c: Add libc_hidden_def for _IO_list_lock,
11571         _IO_list_unlock, and _IO_list_resetlock.
11573         * libio/libioP.h: Add libc_hidden_proto for _IO_iter_begin,
11574         _IO_iter_end, _IO_iter_next, and _IO_iter_file.
11575         * libio/genops.c: Add libc_hidden_def for _IO_iter_begin,
11576         _IO_iter_end, _IO_iter_next, and _IO_iter_file.
11578         * include/setjmp.h: Add libc_hidden_proto for __libc_longjmp.
11579         * sysdeps/generic/longjmp.c: Add libc_hidden_def for __longjmp.
11580         * sysdeps/unix/sysv/linux/sparc/sparc64/longjmp.S: Add
11581         __GI___longjmp alias.
11583         * include/setjmp.h: Add libc_hidden_proto for _setjmp.
11584         * sysdeps/alpha/setjmp.S: Add __GI__setjmp alias.
11585         * sysdeps/arm/bsd-_setjmp.S: Likewise.
11586         * sysdeps/generic/bsd-_setjmp.c: Likewise.
11587         * sysdeps/hppa/bsd-_setjmp.S: Likewise.
11588         * sysdeps/i386/bsd-_setjmp.S: Likewise.
11589         * sysdeps/m68k/bsd-_setjmp.c: Likewise.
11590         * sysdeps/mips/bsd-_setjmp.S: Likewise.
11591         * sysdeps/mips/mips64/bsd-_setjmp.S: Likewise.
11592         * sysdeps/powerpc/powerpc32/bsd-_setjmp.S: Likewise.
11593         * sysdeps/powerpc/powerpc64/setjmp.S: Likewise.
11594         * sysdeps/s390/s390-32/bsd-_setjmp.S: Likewise.
11595         * sysdeps/s390/s390-32/elf/setjmp.S: Likewise.
11596         * sysdeps/s390/s390-64/bsd-_setjmp.S: Likewise.
11597         * sysdeps/s390/s390-64/elf/setjmp.S: Likewise.
11598         * sysdeps/sh/bsd-_setjmp.S: Likewise.
11599         * sysdeps/sparc/sparc32/setjmp.S: Likewise.
11600         * sysdeps/unix/sysv/linux/ia64/setjmp.S: Likewise.
11601         * sysdeps/unix/sysv/linux/sparc/sparc64/setjmp.S: Likewise.
11602         * sysdeps/vax/bsd-_setjmp.S: Likewise.
11603         * sysdeps/x86_64/bsd-_setjmp.S: Likewise.
11605 2002-12-30  Ulrich Drepper  <drepper@redhat.com>
11607         * malloc/thread-m.h (thread_atfork): Define using __register_atfork.
11609 2002-12-30  Roland McGrath  <roland@redhat.com>
11611         * Rules (generated): Target removed.
11612         * mach/Makefile (generated): Define it here instead.
11614         * math/Makefile (generated): Add m_*l and m_*f variants too.
11616 2002-12-30  Ulrich Drepper  <drepper@redhat.com>
11618         * elf/dl-close.c (_dl_close): Handle relocation dependencies among
11619         the to-be-deleted objects right away instead of later separately.
11620         The latter fails because the scope data structures of the DSO
11621         might already be gone.
11623         * elf/Makefile: Add rules to build and run reldep8 test.
11624         * elf/reldep8.c: New file.
11625         * elf/reldep8mod1.c: New file.
11626         * elf/reldep8mod2.c: New file.
11627         * elf/reldep8mod3.c: New file.
11628         Contributed by Jakub Jelinek.
11630 2002-12-24  GOTO Masanori  <gotom@debian.or.jp>
11632         * sysdeps/unix/sysv/linux/getdents.c (__GETDENTS): Fix condition
11633         checking of return value ENOSYS from getdents64.
11635 2002-12-28  Andreas Schwab  <schwab@suse.de>
11637         * sysdeps/unix/Makefile: Include $(common-objpfx)s-proto-cancel.d.
11638         ($(common-objpfx)s-%.d): Generalized from
11639         $(common-objpfx)s-proto.d rule.
11640         (common-generated): Add s-proto-cancel.d.
11641         * sysdeps/unix/make-syscalls.sh: Use s-proto-cancel.d for
11642         cancellable syscalls.
11643         * sysdeps/unix/s-proto-cancel.S: New file.
11645 2002-12-29  Roland McGrath  <roland@redhat.com>
11647         * resolv/res_libc.c: Move _res defn magic after res_init defn
11648         so _res macro is in effect for that code.
11650         * Makerules ($(common-objpfx)%.h $(common-objpfx)%.h.d): Fix sed
11651         pattern for prepending $(..) so it doesn't affect $(foo).
11653         * math/Makefile (generated): Add $(addsuffix .c .S,$(calls:s_%=m_%)).
11655 2002-12-29  Jakub Jelinek  <jakub@redhat.com>
11657         * elf/cache.c (add_to_cache): Don't loop forever with 1ULL << 63 set
11658         in hwcap.
11660 2002-12-28  Ulrich Drepper  <drepper@redhat.com>
11662         * misc/sys/cdefs.h (__attribute_deprecated__): New #define.
11664 2002-12-28  Andreas Jaeger  <aj@suse.de>
11666         * sysdeps/generic/readelflib.c (process_elf_file): Cast value to
11667         avoid warning.
11668         * sysdeps/generic/dl-cache.c (_dl_load_cache_lookup): Likewise.
11670 2002-12-27  Jakub Jelinek  <jakub@redhat.com>
11672         * inet/herrno.c (__h_errno_location): Remove.
11673         * inet/Makefile (routines): Add herrno-loc.
11674         * resolv/res_libc.c (__res_state): Remove.
11675         * resolv/Makefile (routines): Add res-state.
11676         * sysdeps/generic/herrno-loc.c: New file.
11677         * sysdeps/generic/res-state.c: New file.
11679 2002-12-27  Jakub Jelinek  <jakub@redhat.com>
11681         * sysdeps/unix/sysv/linux/i386/sysdep.h (I386_USE_SYSENTER):
11682         Only define if USE_DL_SYSINFO is defined.
11684 2002-12-22  Jakub Jelinek  <jakub@redhat.com>
11686         * sysdeps/unix/sysv/linux/ia64/sysdep.h (INLINE_SYSCALL,
11687         INTERNAL_SYSCALL, INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERROR):
11688         Define. Patch by Richard Henderson and Jes Sorensen.
11689         (PSEUDO): Remove unnecessary ;;.
11690         * elf/rtld.c (dl_main): Initialize TLS even if no PT_TLS segments
11691         are found unless TLS_INIT_TP_EXPENSIVE.  Use NONTLS_INIT_TP.
11692         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Use NONTLS_INIT_TP
11693         if not initializing thread pointer.
11694         [!USE_TLS && NONTLS_INIT_TP] (__pthread_initialize_minimal): New.
11695         * sysdeps/generic/libc-start.c (__pthread_initialize_minimal): Don't
11696         make it weak also if NONTLS_INIT_TP.
11697         * sysdeps/unix/common/pause.c: Handle cancellation.
11698         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h [DONT_LOAD_G1]
11699         (LOADSYSCALL): Remove.
11700         (SYSCALL_ERROR_HANDLER_ENTRY): Define.
11701         (SYSCALL_ERROR_HANDLER): Use it.
11702         (PSEUDO): Don't jump around error handler.
11703         * sysdeps/unix/sysv/linux/sparc/sparc32/pipe.S (__libc_pipe): Don't
11704         jump around error handler.
11705         * sysdeps/unix/sysv/linux/sparc/sparc32/syscall.S (syscall): Likewise.
11706         * sysdeps/unix/sysv/linux/sparc/sparc32/socket.S (__socket): Branch
11707         to __syscall_error_handler on failure.
11708         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h [DONT_LOAD_G1]
11709         (LOADSYSCALL): Remove.
11710         (SYSCALL_ERROR_HANDLER_ENTRY): Define.
11711         (SYSCALL_ERROR_HANDLER): Use it.
11712         (PSEUDO): Don't jump around error handler.
11713         * sysdeps/unix/sysv/linux/sparc/sparc64/pipe.S (__libc_pipe): Don't
11714         jump around error handler.
11715         * sysdeps/unix/sysv/linux/sparc/sparc64/syscall.S (syscall): Likewise.
11716         * sysdeps/unix/sysv/linux/sparc/sparc64/socket.S (__socket): Branch
11717         to __syscall_error_handler on failure.
11719 2002-12-27  Roland McGrath  <roland@redhat.com>
11721         * scripts/gen-as-const.awk: New file.
11722         * Makefile (distribute): Add it.
11723         * Makerules ($(common-objpfx)%.h %.h.d: %.sym): New pattern rule.
11724         (before-compile): Add $(gen-as-const-headers:%.sym=$(common-objpfx)%.h)
11725         to the list.
11726         (+depfiles): Add $(addprefix $(common-objpfx),$(gen-as-const-headers)).
11728 2002-12-27  Andreas Schwab  <schwab@suse.de>
11730         * sysdeps/unix/sysv/linux/m68k/socket.S: Add cancellation support.
11732 2002-12-27  Jakub Jelinek  <jakub@redhat.com>
11734         * malloc/arena.c (ptmalloc_init): Don't call next_env_entry if
11735         _environ is NULL.
11737 2002-12-27  Andreas Schwab  <schwab@suse.de>
11739         * Makerules ($(common-objpfx)%.make): Filter through
11740         $(sed-remove-objpfx).
11742 2002-12-23  Roland McGrath  <roland@redhat.com>
11744         * scripts/abilist.awk: Produce a more compact format, divided into
11745         stanzas for each version set, the set name listed only once.
11746         * scripts/extract-abilist.awk: New file.
11747         * scripts/merge-abilist.awk: New file.
11748         * Makerules (check-abi-%, update-abi-%): New pattern rules.
11749         (update-abi, check-abi): New targets.
11750         * Makefile (+subdir_targets): Add subdir_{check,update}-abi.
11752 2002-12-19  Roland McGrath  <roland@redhat.com>
11754         * Makerules (%.symlist): Use LC_ALL=C when running awk script.
11756         * sysdeps/unix/sysv/linux/i386/brk.c (__brk): Cast result of
11757         INTERNAL_SYSCALL.
11759 2002-12-21  Andreas Schwab  <schwab@suse.de>
11761         * elf/check-textrel.c (handle_file): Swap p_type.
11763 2002-12-21  Andreas Schwab  <schwab@suse.de>
11765         * sysdeps/unix/sysv/linux/m68k/sysdep.h (INTERNAL_SYSCALL): Define.
11766         (INLINE_SYSCALL): Use it.
11767         (INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Define.
11768         (SYSCALL_ERROR_HANDLER): Define RTLD_PRIVATE_ERRNO variant.
11770         * sysdeps/unix/sysv/linux/m68k/getpagesize.c: Use INTERNAL_SYSCALL.
11771         * sysdeps/unix/sysv/linux/m68k/brk.c: Likewise.
11773 2002-12-20  Art Haas  <ahaas@airmail.net>
11775         * sysdeps/gnu/siglist.c: Convert GCC extension initializer
11776         syntax to C99.
11778 2002-12-21  Philip Blundell  <philb@gnu.org>
11780         * sysdeps/arm/elf/start.S (_start): Optimise a little.  Push stack
11781         top as seventh arg to __libc_start_main.
11782         Reported by paulnash@wildseed.com.
11784         * sysdeps/unix/sysv/linux/arm/clone.S: Small optimisation.
11786         * sysdeps/unix/sysv/linux/arm/sigcontextinfo.h: Elide
11787         compatibility cruft when new enough kernel is assumed.
11789 2002-12-20  Jakub Jelinek  <jakub@redhat.com>
11791         * sysdeps/unix/sysv/linux/i386/brk.c (__brk): Use INTERNAL_SYSCALL
11792         instead of INLINE_SYSCALL.
11794 2002-12-20  Ulrich Drepper  <drepper@redhat.com>
11796         * sysdeps/unix/sysv/linux/i386/sigaction.c (__libc_sigaction): Fix
11797         typo.
11799         * sysdeps/unix/sysv/linux/alpha/bits/shm.h: Define SHM_HUGETLB.
11800         * sysdeps/unix/sysv/linux/bits/shm.h: Likewise.
11801         * sysdeps/unix/sysv/linux/hppa/bits/shm.h: Likewise.
11802         * sysdeps/unix/sysv/linux/ia64/bits/shm.h: Likewise.
11803         * sysdeps/unix/sysv/linux/mips/bits/shm.h: Likewise.
11804         * sysdeps/unix/sysv/linux/powerpc/bits/shm.h: Likewise.
11805         * sysdeps/unix/sysv/linux/s390/bits/shm.h: Likewise.
11806         * sysdeps/unix/sysv/linux/sparc/bits/shm.h: Likewise.
11807         * sysdeps/unix/sysv/linux/x86_64/bits/shm.h: Likewise.
11808         Patch by William Lee Irwin <wli@holomorphy.com>.
11810 2002-12-20  Andreas Schwab  <schwab@suse.de>
11812         * locale/programs/ld-measurement.c (measurement_output): Fix
11813         index calculation.
11815 2002-12-20  Ulrich Drepper  <drepper@redhat.com>
11817         * include/libio.h [_IO_MTSAFE_IO && _IO_lock_inexpensive]:
11818         Redefine _IO_flockifle and _IO_funlockfile as inlines.
11820         * sysdeps/generic/dl-sysdep.c (_dl_important_hwcaps): For TLS
11821         builds add "tls" in the search path.
11822         * elf/ldconfig.c (is_hwcap_platform): Also recognize "tls".
11823         (path_hwcap): Recognize "tls".
11825 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
11827         * sysdeps/unix/sysv/linux/i386/system.c (cancel_handler): Use
11828         __waitpid instead of waitpid.
11830         * sysdeps/unix/sysv/linux/i386/_exit.S: Use ENTER_KERNEL instead of
11831         int $0x80.
11832         * sysdeps/unix/sysv/linux/i386/getcontext.S: Likewise.
11833         * sysdeps/unix/sysv/linux/i386/setcontext.S: Likewise.
11834         * sysdeps/unix/sysv/linux/i386/swapcontext.S: Likewise.
11836         * sysdeps/unix/sysv/linux/i386/sysdep.h: Add support to use AT_SYSINFO
11837         information for system calls.
11839         * sysdeps/generic/dl-sysdep.h: Define RTLD_PRIVATE_ERRNO to 1 only
11840         for ld.so.
11842         * elf/rtld.c (_dl_start) [USE___THREAD]: Define initdtv.
11844 2002-12-19  Roland McGrath  <roland@redhat.com>
11846         * iconvdata/ibm856.h: Convert GCC extension initializer syntax to C99.
11847         * iconvdata/ibm922.h: Likewise.
11848         * iconvdata/ibm930.h: Likewise.
11849         * iconvdata/ibm932.h: Likewise.
11850         * iconvdata/ibm933.h: Likewise.
11851         * iconvdata/ibm935.h: Likewise.
11852         * iconvdata/ibm937.h: Likewise.
11853         * iconvdata/ibm939.h: Likewise.
11854         * iconvdata/ibm943.h: Likewise.
11855         * iconvdata/isiri-3342.h: Likewise.
11857 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
11859         * test-skeleton.c (main): Make sure correct value is seen as
11860         argv[0] after adjustment of argv, and argc.
11862         * elf/rtld.c: Don't initialize _dl_dynamic_weak to 1 if
11863         RTLD_CORRECT_DYNAMIC_WEAK is defined.
11865 2002-12-19  Jakub Jelinek  <jakub@redhat.com>
11867         * nscd/connections.c (nscd_run): Shut up warning.
11868         * tst-ungetc.c (assert): Undefined before redefining.
11870 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
11872         * posix/regex.c: Use __builtin_expect even outside glibc if gcc 3
11873         is used.
11875 2002-12-17  Art Haas  <ahaas@airmail.net>
11877         * iconvdata/cp737.h: Convert GCC extension initializer syntax to C99.
11878         * iconvdata/cp775.h: Likewise.
11879         * iconvdata/ibm1046.h: Likewise.
11880         * iconvdata/ibm1124.h: Likewise.
11881         * iconvdata/ibm1129.h: Likewise.
11882         * iconvdata/ibm1132.h: Likewise.
11883         * iconvdata/ibm1133.h: Likewise.
11884         * iconvdata/ibm1160.h: Likewise.
11885         * iconvdata/ibm1161.h: Likewise.
11886         * iconvdata/ibm1162.h: Likewise.
11887         * iconvdata/ibm1163.h: Likewise.
11888         * iconvdata/ibm1164.h: Likewise.
11890 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
11892         * sysdeps/unix/sysv/linux/i386/system.c: Define FORK only if
11893         __ASSUME_CLONE_THREAD_FLAGS is defined.
11894         * sysdeps/unix/sysv/linux/kernel-features.h
11895         (__ASSUME_CLONE_THREAD_FLAGS): Define for x86 and kernel >= 2.5.50.
11897 2002-12-18  Ulrich Drepper  <drepper@redhat.com>
11899         * sysdeps/unix/sysv/linux/i386/brk.c: Use INTERNAL_SYSCALL instead
11900         of asm.
11901         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
11903         * elf/dl-support.c [NEED_DL_SYSINFO]: Define and initialize
11904         _dl_sysinfo.
11905         [DL_SYSINFO_IMPLEMENTATION]: If defined use it to generate the needed
11906         code.
11907         * elf/rtld.c [DL_NEED_SYSINFO]: Initialize _dl_sysinfo element of
11908         _rtld_global.
11909         [DL_SYSINFO_IMPLEMENTATION]: If defined use it to generate the needed
11910         code.
11911         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start) [NEED_DL_SYSINFO]:
11912         Check for AT_SYSINFO and set _dl_sysinfo appropriately.
11913         * sysdeps/generic/ldsodefs.h (struct rtld_global) [NEED_DL_SYSINFO]:
11914         Add _dl_sysinfo.
11916 2002-12-18  Jakub Jelinek  <jakub@redhat.com>
11918         * misc/Versions [libc: GLIBC_2.3.1]: Move __libc_readv and
11919         __libc_writev to...
11920         [libc: GLIBC_PRIVATE]: ...here.
11921         * sysvipc/Versions [libc: GLIBC_2.3.1]: Move __libc_msgrcv and
11922         __libc_msgsnd to...
11923         [libc: GLIBC_PRIVATE]: ...here.
11925 2002-12-18  Ulrich Drepper  <drepper@redhat.com>
11927         * sysdeps/unix/sysv/linux/i386/sysdep.h: Define ENTER_KERNEL macro.
11928         Use it instead of directly int $0x80.
11929         * sysdeps/unix/sysv/linux/i386/brk.c: Use ENTER_KERNEL.
11930         * sysdeps/unix/sysv/linux/i386/mmap64.S: Likewise.
11931         * sysdeps/unix/sysv/linux/i386/mmap.S: Likewise.
11932         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
11933         * sysdeps/unix/sysv/linux/i386/socket.S: Likewise.
11934         * sysdeps/unix/sysv/linux/i386/syscall.S: Likewise.
11936 2002-12-17  Ulrich Drepper  <drepper@redhat.com>
11938         * malloc/malloc.c (mALLOPt): Make sure malloc is initialized.
11940         * elf/elf.h (AT_SYSINFO): New define.
11941         * sysdeps/generic/dl-sysdep.c (_dl_show_auxv): Add support for
11942         AT_SYSINFO.
11944 2002-12-17  Jakub Jelinek  <jakub@redhat.com>
11946         * sysdeps/unix/sysv/linux/alpha/syscalls.list (msgrcv, msgsnd):
11947         Make cancelable.
11948         * sysdeps/unix/sysv/linux/hppa/syscalls.list (msgrcv, msgsnd):
11949         Likewise.
11950         * sysdeps/unix/sysv/linux/ia64/syscalls.list (msgrcv, msgsnd):
11951         Likewise.
11952         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (msgrcv, msgsnd):
11953         Likewise.
11954         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (msgrcv, msgsnd):
11955         Likewise.
11956         * sysdeps/unix/sysv/linux/ia64/sigsuspend.c (__sigsuspend): Likewise.
11958         * malloc/thread-m.h (mutex_init, mutex_lock, mutex_trylock,
11959         mutex_unlock): If not building NPTL, use __libc_maybe_call2 if
11960         available, otherwise __libc_maybe_call.
11961         * sysdeps/unix/sysv/linux/x86_64/recv.c: Add support for
11962         cancellation handling.
11963         * sysdeps/unix/sysv/linux/x86_64/send.c: Likewise.
11965 2002-12-17  Isamu Hasegawa  <isamu@yamato.ibm.com>
11967         * posix/regcomp.c (free_workarea_compile): Free the new member
11968         ORG_INDICES.
11969         (analyze): Initialize ORG_INDICES.
11970         (duplicate_node_closure): Search for a existing node, which is
11971         duplicated from the node ORG_DEST and satisfies the constraint
11972         CONSTRAINT.  And use it to avoid inifimite loop.
11973         (search_duplicated_node): New function.
11974         (duplicate_node): Store the index of the original node.
11975         * posix/regex_internal.c (re_dfa_add_node): Realloc ORG_INDICES
11976         if needed.
11977         * posix/regex_internal.h (re_dfa_t): Add new members.
11979 2002-12-17  Ulrich Drepper  <drepper@redhat.com>
11981         * stdio-common/tst-fdopen.c: Undefine assert before redefining it.
11983 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
11985         * sysdeps/posix/system.c (do_system): Add support for installation
11986         of cancellation handlers.
11987         * sysdeps/unix/sysv/linux/i386/system.c: New file.
11989         * stdlib/Makefile (tests): Add tst-system.
11990         * stdlib/tst-system.c: New file.
11992         * sysdeps/unix/sysv/linux/i386/socket.S [NEED_CANCELLATION &&
11993         CENABLE]: Don't lose content of %ebx.
11995 2002-12-17  Jakub Jelinek  <jakub@redhat.com>
11997         * sysdeps/unix/sysv/linux/i386/socket.S: Use SINGLE_THREAD_P
11998         macro instead of comparing %gs:MULTIPLE_THREADS_OFFSET directly.
12000 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
12002         * sysdeps/posix/getaddrinfo.c (gaih_inet): If __nss_lookup_function
12003         fails to return a function pointer don't use it.
12005 2002-12-16  Art Haas  <ahaas@airmail.net>
12007         * io/ftw.c: Convert GCC extension initializer syntax to C99.
12008         * iconvdata/iso-ir-165.c: Likewise.
12009         * iconvdata/jis0208.c: Likewise.
12010         * iconvdata/jis0212.c: Likewise.
12012 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
12014         * sysdeps/unix/sysv/linux/syscalls.list: Add epoll_create,
12015         epoll_ctl, and epoll_wait.
12016         * sysdeps/unix/sysv/linux/Versions [libc: GLIBC_2.3.2]: Add
12017         epoll_create, epoll_ctl, and epoll_wait.
12018         * sysdeps/unix/sysv/linux/sys/epoll.h: New file.  Written by
12019         Davide Libenzi <davidel@xmailserver.org>.
12020         * sysdeps/unix/sysv/linux/Dist: Add sys/epoll.h.
12021         * sysdeps/unix/sysv/linux/Makefile [subdir=misc] (sysdep_headers):
12022         Add sys/epoll.h.
12024 2002-12-16  Art Haas  <ahaas@airmail.net>
12026         * sysdeps/generic/bp-semctl.h: Convert GCC extension initializer
12027         syntax to C99
12028         * sysdeps/unix/sysv/aix/settimer.c: Likewise.
12029         * sysdeps/unix/sysv/aix/sleep.c: Likewise.
12030         * sysdeps/unix/sysv/aix/usleep.c: Likewise.
12032 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
12034         * stdio-common/Makefile (routines): Remove lockfile.  Add
12035         flockfile, ftrylockfile, and funlockfile.
12036         * sysdeps/generic/lockfile.c: Removed.  Each function has its own file.
12037         * sysdeps/generic/flockfile.c: New file.
12038         * sysdeps/generic/ftrylockfile.c: New file.
12039         * sysdeps/generic/funlockfile.c: New file.
12041 2002-12-16  Jakub Jelinek  <jakub@redhat.com>
12043         * sysdeps/unix/sysv/linux/i386/socket.S: Use CENABLE and CDISABLE
12044         macros instead of doing the calls directly.
12045         * sysdeps/unix/make-syscalls.sh: Add ptw-*.$o target name to rules.
12046         * Makerules ($(+sysdir_pfx)sysd-rules): Emit rules for ptw-%
12047         targets.
12049 2002-12-16  Jakub Jelinek  <jakub@redhat.com>
12051         * sysdeps/i386/fpu/bits/mathinline.h: Backout last change.
12052         * sysdeps/ieee754/bits/nan.h: Likewise.
12054         * sysdeps/unix/sysv/linux/ia64/syscalls.list (__syscall_open,
12055         __syscall_wait4, __syscall_ioctl, __syscall_write): Add.
12057 2002-12-16  Roland McGrath  <roland@redhat.com>
12059         * sunrpc/xdr_mem.c (xdrmem_inline): Fix argument type.
12060         * sunrpc/xdr_rec.c (xdrrec_inline): Likewise.
12061         * sunrpc/xdr_stdio.c (xdrstdio_inline): Likewise.
12063         * sysdeps/unix/sysv/linux/syscalls.list: Add getpmsg, putpmsg.
12064         * sysdeps/unix/sysv/linux/mips/syscalls.list: Remove s_getpmsg,
12065         s_putpmsg.
12066         * sysdeps/unix/sysv/linux/i386/getpmsg.c: File removed.
12067         * sysdeps/unix/sysv/linux/i386/putpmsg.c: File removed.
12068         * sysdeps/unix/sysv/linux/m68k/getpmsg.c: File removed.
12069         * sysdeps/unix/sysv/linux/m68k/putpmsg.c: File removed.
12070         * sysdeps/unix/sysv/linux/mips/getpmsg.c: File removed.
12071         * sysdeps/unix/sysv/linux/mips/putpmsg.c: File removed.
12072         * sysdeps/unix/sysv/linux/powerpc/getpmsg.c: File removed.
12073         * sysdeps/unix/sysv/linux/powerpc/putpmsg.c: File removed.
12075 2002-12-13  Paul Eggert  <eggert@twinsun.com>
12077         * sunrpc/rpc/xdr.h (struct XDR.xdr_ops.x_inline): 2nd arg
12078         is now u_int, not int.
12079         (struct XDR.x_handy): Now u_int, not int.
12080         * sunrpc/xdr_mem.c: Include <limits.h>.
12081         (xdrmem_getlong, xdrmem_putlong, xdrmem_getbytes, xdrmem_putbytes,
12082         xdrmem_inline, xdrmem_getint32, xdrmem_putint32):
12083         x_handy is now unsigned, not signed.
12084         Do not decrement x_handy if no change is made.
12085         (xdrmem_setpos): Check for int overflow.
12086         * sunrpc/xdr_sizeof.c (x_inline): 2nd arg is now unsigned.
12087         (xdr_sizeof): Remove cast that is now unnecessary, now that
12088         x_handy is unsigned.
12090 2002-12-15  Art Haas  <ahaas@airmail.net>
12092         * iconv/gconv_conf.c: Convert GCC extension initializer syntax to C99.
12093         * iconvdata/gap.awk: Likewise.
12094         * iconvdata/gen-8bit-gap-1.sh: Likewise.
12095         * iconvdata/gen-8bit-gap.sh: Likewise.
12096         * locale/C-address.c: Likewise.
12097         * locale/C-collate.c: Likewise.
12098         * locale/C-ctype.c: Likewise.
12099         * locale/C-identification.c: Likewise.
12100         * locale/C-measurement.c: Likewise.
12101         * locale/C-messages.c: Likewise.
12102         * locale/C-monetary.c: Likewise.
12103         * locale/C-name.c: Likewise.
12104         * locale/C-numeric.c: Likewise.
12105         * locale/C-paper.c: Likewise.
12106         * locale/C-telephone.c: Likewise.
12107         * locale/C-time.c: Likewise.
12108         * nscd/connections.c: Likewise.
12109         * nscd/grpcache.c: Likewise.
12110         * nscd/hstcache.c: Likewise.
12111         * nscd/pwdcache.c: Likewise.
12112         * stdio-common/vfprintf.c: Likewise.
12113         * stdlib/random.c: Likewise.
12114         * sysdeps/generic/siglist.c: Likewise.
12115         * sysdeps/i386/fpu/bits/mathinline.h: Likewise.
12116         * sysdeps/ieee754/bits/nan.h: Likewise.
12117         * sysdeps/posix/sprofil.c: Likewise.
12118         * sysdeps/unix/sysv/linux/sleep.c: Likewise.
12119         * sysdeps/unix/sysv/linux/sysctl.c: Likewise.
12120         * sysdeps/unix/sysv/linux/usleep.c: Likewise.
12122 2002-12-15  Roland McGrath  <roland@redhat.com>
12124         * sysdeps/unix/sysv/linux/readv.c (do_readv): Use prototype defn.
12126         * sysdeps/unix/sysv/linux/wait.c: Don't include <nptl/pthreadP.h> or
12127         <tls.h> here, no need for it.
12128         * sysdeps/unix/sysv/linux/waitpid.c: Likewise.
12130         * sysdeps/unix/sysv/linux/i386/fcntl.c (do_fcntl): Take ARG as void *
12131         parameter, not varargs parameter.
12133         * sysdeps/generic/sysdep-cancel.h (LIBC_CANCEL_RESET): Evaluate the
12134         argument so it's not an unused variable.
12136         * resolv/resolv.h (__p_key_syms, __p_cert_syms, __p_class_syms,
12137         __p_type_syms, __p_rcode_syms): Remove decls, never really intended
12138         for users.
12140         * resolv/Versions (libresolv: GLIBC_2.3.2): New set, add __p_rcode.
12142 2002-12-15  Ulrich Drepper  <drepper@redhat.com>
12144         * sysdeps/unix/sysv/linux/i386/fcntl.c (do_fcntl): This is the
12145         original __libc_fcntl code.  Just renamed.
12147 2002-12-15  Andreas Schwab  <schwab@suse.de>
12149         * sysdeps/unix/sysv/linux/m68k/clone.S: Make inline syscall to _exit.
12151 2002-12-14  Olaf Hering  <olh@suse.de>
12153         * sysdeps/powerpc/bits/setjmp.h: Include <bits/wordsize.h>.
12154         * sysdeps/powerpc/powerpc64/setjmp.S: Fix typo in r18 load.
12156 2002-12-15  Ulrich Drepper  <drepper@redhat.com>
12158         * sysdeps/unix/sysv/linux/libc_fatal.c: New file.
12160         * sysdeps/generic/sysdep-cancel.h: Add dummy definitions for
12161         SINGLE_THREAD_P, LIBC_CANCEL_ASYNC, and LIBC_CANCEL_RESET.
12163         * sysdeps/unix/sysv/linux/open64.c: New file.
12165         * sysdeps/generic/pselect.c: Add support for cancellation handling.
12166         * sysdeps/posix/open64.c: Likewise.
12167         * sysdeps/posix/sigpause.c: Likewise.
12168         * sysdeps/posix/sigwait.c: Likewise.
12169         * sysdeps/posix/system.c: Likewise.
12170         * sysdeps/posix/waitid.c: Likewise.
12171         * sysdeps/unix/sysv/linux/accept.S: Likewise.
12172         * sysdeps/unix/sysv/linux/connect.S: Likewise.
12173         * sysdeps/unix/sysv/linux/llseek.c: Likewise.
12174         * sysdeps/unix/sysv/linux/msgrcv.c: Likewise.
12175         * sysdeps/unix/sysv/linux/msgsnd.c: Likewise.
12176         * sysdeps/unix/sysv/linux/poll.c: Likewise.
12177         * sysdeps/unix/sysv/linux/pread.c: Likewise.
12178         * sysdeps/unix/sysv/linux/pread64.c: Likewise.
12179         * sysdeps/unix/sysv/linux/pwrite.c: Likewise.
12180         * sysdeps/unix/sysv/linux/pwrite64.c: Likewise.
12181         * sysdeps/unix/sysv/linux/readv.c: Likewise.
12182         * sysdeps/unix/sysv/linux/recv.S: Likewise.
12183         * sysdeps/unix/sysv/linux/recvfrom.S: Likewise.
12184         * sysdeps/unix/sysv/linux/recvmsg.S: Likewise.
12185         * sysdeps/unix/sysv/linux/send.S: Likewise.
12186         * sysdeps/unix/sysv/linux/sendmsg.S: Likewise.
12187         * sysdeps/unix/sysv/linux/sendto.S: Likewise.
12188         * sysdeps/unix/sysv/linux/sigsuspend.c: Likewise.
12189         * sysdeps/unix/sysv/linux/sigtimedwait.c: Likewise.
12190         * sysdeps/unix/sysv/linux/sigwait.c: Likewise.
12191         * sysdeps/unix/sysv/linux/sigwaitinfo.c: Likewise.
12192         * sysdeps/unix/sysv/linux/tcdrain.c: Likewise.
12193         * sysdeps/unix/sysv/linux/wait.c: Likewise.
12194         * sysdeps/unix/sysv/linux/waitpid.c: Likewise.
12195         * sysdeps/unix/sysv/linux/writev.c: Likewise.
12196         * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.
12197         * sysdeps/unix/sysv/linux/i386/socket.S: Likewise.
12199 2002-12-14  Jakub Jelinek  <jakub@redhat.com>
12201         * sysdeps/generic/sysdep-cancel.h: New file.
12202         * sysdeps/unix/make-syscalls.sh: Handle C at start of args as
12203         cancelable syscall.
12204         * sysdeps/unix/inet/syscalls.list (accept, connect, recv, recvfrom,
12205         recvmsg, send, sendmsg, sendto): Make cancelable.
12206         * sysdeps/unix/mman/syscalls.list (msync): Likewise.
12207         * sysdeps/unix/sysv/linux/alpha/syscalls.list (llseek, pread,
12208         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
12209         sendto, osf_select): Likewise.
12210         * sysdeps/unix/sysv/linux/hppa/syscalls.list (accept, connect, recv,
12211         recvfrom, recvmsg, send, sendmsg, sendto): Likewise.
12212         * sysdeps/unix/sysv/linux/ia64/syscalls.list (llseek, pread,
12213         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
12214         sendto): Likewise.
12215         * sysdeps/unix/sysv/linux/mips/syscalls.list (accept, connect, recv,
12216         recvfrom, recvmsg, send, sendmsg, sendto): Likewise.
12217         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (llseek, pread,
12218         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
12219         sendto): Likewise.
12220         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list (llseek, pread,
12221         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
12222         sendto, select): Likewise.
12223         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (llseek, pread,
12224         pwrite, accept, connect, recvfrom, recvmsg, sendmsg, sendto):
12225         Likewise.
12226         * sysdeps/unix/sysv/linux/syscalls.list (creat, nanosleep, pause,
12227         select, fcntl): Likewise.
12228         * sysdeps/unix/sysv/syscalls.list (pause, poll): Likewise.
12229         * sysdeps/unix/syscalls.list (close, fcntl, fsync, lseek, open,
12230         read, readv, select, sigsuspend, write, writev): Likewise.
12232 2002-12-14  Jakub Jelinek  <jakub@redhat.com>
12234         * dirent/bug-readdir1.c: Include unistd.h.
12236 2002-12-13  Jakub Jelinek  <jakub@redhat.com>
12238         * locale/programs/locale.c: Include locarchive.h.
12239         (ARCHIVE_NAME): Define.
12240         (write_archive_locales): New function.
12241         (write_locales): Use it.  Ensure the same locale is not printed
12242         multiple times in verbose mode.
12243         Mode LC_IDENTIFICATION and LC_CTYPE printing into...
12244         (print_LC_IDENTIFICATION, print_LC_CTYPE): ... these helper
12245         functions.
12246         (struct nameent): New type.
12247         (nameentcmp): New function.
12249 2002-12-14  Jakub Jelinek  <jakub@redhat.com>
12251         * posix/regex_internal.c (re_string_context_at): Guard wide char
12252         code with #ifdef RE_ENABLE_I18N.
12254 2002-11-22  Paolo Bonzini  <bonzini@gnu.org>
12256         * posix/regcomp.c (regcomp): __re_compile_fastmap -> re_compile_fastmap
12258 2002-12-13  Roland McGrath  <roland@redhat.com>
12260         * posix/bug-regex15.c: New file.
12261         * posix/Makefile (tests): Add it.
12263         * test-skeleton.c (TEST_DATA_LIMIT): New macro, default to 64MB.
12264         (main): Set RLIMIT_DATA limit to TEST_DATA_LIMIT (or lower if need be).
12266 2002-12-13  Ulrich Drepper  <drepper@redhat.com>
12268         * elf/dl-misc.c (_dl_debug_vdprintf): Don't depend on 5-digit PIDs.
12270         * misc/syslog.c (log_cleanup): Don't use parameter in
12271         __libc_lock_unlock call, use syslog_lock directly.  Adjust callers to
12272         pass NULL instead of a pointer to syslog_lock.
12274 2002-12-12  Ulrich Drepper  <drepper@redhat.com>
12276         * iconvdata/Makefile: iconv-rules: Add definition to use gconv.map
12277         linker map for all iconv modules.
12278         (distribute): Add gconv.map.
12279         * iconvdata/gconv.map: New file.
12281         * elf/Makefile: Also check all iconv modules for text relocations.
12283         * stdlib/Makefile: Remove code to automatically import GMP.
12285         * elf/Makefile (tests): Add rules to build and run check-textrel.
12286         * elf/check-textrel.c: New file.
12288         * sysdeps/unix/sysv/linux/i386/sysdep.h (SETUP_PIC_REG): Add .size
12289         directive.
12291 2002-12-11  Jakub Jelinek  <jakub@redhat.com>
12293         * io/test-utime (main): If stnow.st[am]time is wrong, print it and
12294         not st.st[am]time.
12296 2002-04-30  Bruno Haible  <bruno@clisp.org>
12298         * intl/loadmsgcat.c (_nl_init_domain_conv): Don't append //TRANSLIT to
12299         the encoding if it already has slashes.
12300         Reported by Perry Rapp <prapp@erols.com>.
12302 2002-12-11  Roland McGrath  <roland@redhat.com>
12304         * csu/Makefile ($(objpfx)elf-init.oS): Remove target, braino.
12305         (CPPFLAGS-elf-init.oS, CFLAGS-elf-init.oS): New variables.
12306         Turn off PIC for compiling this file.
12308 2002-12-11  Ulrich Drepper  <drepper@redhat.com>
12310         * malloc/thread-m.h: Remove thread_id type and MUTEX_INITIALIZER
12311         definitions.  Not needed.
12312         [_LIBC]: Use definitions from libc-lock.h instead of referencing
12313         pthread routines directly.
12314         * malloc/arena.c (ptmalloc_unlock_all2): Don't add (void) to
12315         mutex_init calls.
12316         (arena_get2): Don't look at return value of mutex_lock.
12318 2002-12-11  Roland McGrath  <roland@redhat.com>
12320         * csu/Makefile ($(objpfx)elf-init.oS): New target, just clone
12321         elf-init.o instead of compiling a PIC version.
12323 2002-12-11  Bruno Haible  <bruno@clisp.org>
12325         * intl/gettext.h: Renamed to ...
12326         * intl/gmo.h: ... here.
12327         * intl/Makefile (distribute): Add gmo.h, remove gettext.h.
12328         * intl/gettextP.h: Update.
12329         * intl/loadmsgcat.c: Update.
12331         * intl/gettextP.h (PARAMS): Make more portable.
12332         (attribute_hidden): Define as empty macro if not already defined.
12333         * intl/hash-string.h (PARAMS): Make more portable.
12334         * intl/loadinfo.h (PARAMS): Likewise.
12335         * intl/plural-exp.h (PARAMS): Likewise.
12336         (attribute_hidden): Move definition near the definition of
12337         internal_function.
12339         * intl/gettextP.h (_nl_locale_name) [!_LIBC]: New declaration.
12340         * intl/plural-exp.h (plural_eval) [!_LIBC]: New declaration.
12342 2002-07-13  Bruno Haible  <bruno@clisp.org>
12344         * intl/dcigettext.c (freea): New macro.
12345         (FREE_BLOCKS): Free also the registered blocks.
12346         (DCIGETTEXT): Free the 'search' variable.
12347         Reported by Andreas Fischer <a.fischer@asentics.de>.
12349 2002-04-27  Bruno Haible  <bruno@clisp.org>
12351         * intl/gettextP.h [! _LIBC]: Use prefix libintl_ instead of suffix __.
12352         * intl/dcigettext.c: Likewise.
12353         * intl/dcgettext.c: Likewise.
12354         * intl/dgettext.c: Likewise.
12355         * intl/gettext.c: Likewise.
12356         * intl/dcngettext.c: Likewise.
12357         * intl/dngettext.c: Likewise.
12358         * intl/ngettext.c: Likewise.
12359         * intl/textdomain.c: Likewise.
12360         * intl/bindtextdom.c: Likewise.
12361         * intl/plural-exp.h: Likewise.
12363 2002-01-02  Bruno Haible  <bruno@clisp.org>
12365         * intl/loadmsgcat.c (_nl_init_domain_conv): Use PARAMS in extern decl.
12367 2001-04-30  Bruno Haible  <bruno@clisp.org>
12369         * intl/dcigettext.c (getuid, getgid, geteuid, getegid): Provide
12370         default macro definitions.  Needed for mingw32.
12372 2002-12-10  Ulrich Drepper  <drepper@redhat.com>
12374         * sysdeps/i386/bits/byteswap.h (__bswap_64): Apply
12375         __builtin_constant_p to macro parameter.
12377         * sysdeps/generic/sigpause.c: Define all functions as weak.
12378         * sysdeps/posix/sigpause.c: Likewise.
12380         * elf/tst-tls7.c (do_test): Adjustments for l_tls_modid being of
12381         type size_t.
12383 2002-12-10  Jakub Jelinek  <jakub@redhat.com>
12385         * elf/tst-array1.c (preinit_array, init_array, fini_array):
12386         Explicitly align the array to sizeof (void *).
12387         * elf/tst-array2dep.c (init_array, fini_array): Likewise.
12389         * include/libc-symbols.h: Fix a comment typo.
12391         * sysdeps/unix/sysv/linux/alpha/select.S (__libc_select): New alias.
12392         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S (__libc_sigsuspend):
12393         Likewise.
12394         * sysdeps/unix/sysv/linux/ia64/sigsuspend.c (__libc_sigsuspend):
12395         Likewise.
12396         * sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c
12397         (__libc_sigsuspend): Likewise.
12398         * sysdeps/unix/sysv/linux/sparc/sparc64/sigsuspend.c
12399         (__libc_sigsuspend): Likewise.
12400         * sysdeps/generic/creat.c (__libc_creat): Renamed from creat.
12401         (creat): New weak alias.
12403 2002-12-10  Roland McGrath  <roland@redhat.com>
12405         * manual/libc-texinfo.sh: Emit @set ADD-ON for each ADD-ON that
12406         contributes a manual chapter.
12407         * manual/signal.texi (Process Signal Mask): Use @ifset linuxthreads
12408         around xref to it.
12410         * sysdeps/unix/sysv/linux/dl-librecon.h (EXTRA_LD_ENVVARS): Refer to
12411         and move contents to ...
12412         (EXTRA_LD_ENVVARS_LINUX): ... this new macro.  Add break for nonmatch.
12413         * sysdeps/unix/sysv/linux/i386/dl-librecon.h (EXTRA_LD_ENVVARS): Use
12414         it instead of duplicating its contents.
12415         (EXTRA_LD_ENVVARS): Likewise.  Add break for nonmatch.
12417 2002-12-09  Jakub Jelinek  <jakub@redhat.com>
12419         * elf/dl-support.c (_dl_non_dynamic_init): Add DL_OSVERSION_INIT if
12420         defined.
12421         * sysdeps/unix/sysv/linux/dl-librecon.h (_dl_osversion_init): New
12422         function.
12423         (EXTRA_LD_ENVVARS): Use it.
12424         (DL_OSVERSION_INIT): Define.
12425         * sysdeps/unix/sysv/linux/i386/dl-librecon.h: Include linux
12426         dl-librecon.h.
12427         (EXTRA_LD_ENVVARS): Undef before defining.  Use _dl_osversion_init.
12429 2002-12-10  Ulrich Drepper  <drepper@redhat.com>
12431         * Versions.def: No new symbols in 2.3.1, but some new ones in 2.3.2.
12433         * sysdeps/unix/closedir.c (__closedir): Remove __libc_lock_lock
12434         call.  It is not allowed to destroy pthread mutexes which are
12435         still in use even though it is safe for our implementations.  If
12436         somebody still uses the descriptor it is a bug.
12438 2002-12-09  Richard Henderson  <rth@redhat.com>
12440         * csu/abi-note.S: Use .p2align, not .align.
12442 2002-12-09  Ulrich Drepper  <drepper@redhat.com>
12444         * sysdeps/unix/sysv/linux/syscalls.list: Add __libc_creat and
12445         __libc_select aliases.
12447         * sysdeps/unix/sysv/linux/sigwaitinfo.c: Define __libc_sigwaitinfo
12448         alias.
12450         * sysdeps/unix/sysv/linux/sigwait.c: Define __libc_sigwait alias.
12452         * sysdeps/unix/sysv/linux/sigsuspend.c: Define __libc_sigsuspend alias.
12454         * sysdeps/unix/sysv/linux/poll.c: Define __libc_poll alias.
12456         * sysdeps/unix/syscalls.list: Define __libc_select alias.
12458         * sysdeps/posix/waitid.c: Define __libc_waitid alias.
12460         * sysdeps/posix/sigpause.c: Define __libc_sigpause and
12461         __libc___xpg_sigpause aliases.
12463         * sysdeps/generic/pselect.c: Define __libc_pselect alias.
12465         * misc/error.c: Remove use of USE_IN_LIBIO.
12467 2002-12-08  Roland McGrath  <roland@redhat.com>
12469         * elf/Makefile (tests): Uncomment tst-array[123].
12470         * Makeconfig (CPPFLAGS-.oS): Add -DLIBC_NONSHARED=1.
12471         * csu/elf-init.c: New file.
12472         * csu/Makefile (routines, static-only-routines): Add elf-init.
12473         * sysdeps/alpha/elf/start.S: Use __libc_csu_init in place of _init
12474         and __libc_csu_fini in place of _fini.
12475         * sysdeps/arm/elf/start.S: Likewise.
12476         * sysdeps/cris/elf/start.S: Likewise.
12477         * sysdeps/hppa/elf/start.S: Likewise.
12478         * sysdeps/i386/elf/start.S: Likewise.
12479         * sysdeps/ia64/elf/start.S: Likewise.
12480         * sysdeps/m68k/elf/start.S: Likewise.
12481         * sysdeps/mach/hurd/powerpc/static-start.S: Likewise.
12482         * sysdeps/mips/elf/start.S: Likewise.
12483         * sysdeps/powerpc/powerpc32/elf/start.S: Likewise.
12484         * sysdeps/powerpc/powerpc64/elf/start.S: Likewise.
12485         * sysdeps/s390/s390-32/elf/start.S: Likewise.
12486         * sysdeps/s390/s390-64/elf/start.S: Likewise.
12487         * sysdeps/sh/elf/start.S: Likewise.
12488         * sysdeps/sparc/sparc32/elf/start.S: Likewise.
12489         * sysdeps/sparc/sparc64/elf/start.S: Likewise.
12490         * sysdeps/x86_64/elf/start.S: Likewise.
12492         * sysdeps/pthread/aio_notify.c (notify_func_wrapper): Take a malloc'd
12493         struct containing function ptr and value, free it.
12494         (__aio_notify_only): Allocate that and copy values from SIGEV into it.
12495         It's not safe to let the new thread use the SIGEV pointer.
12497 2001-10-20  Paul Eggert  <eggert@twinsun.com>
12499         * misc/error.c (strerror_r): Do not declare unless [!_LIBC].
12500         Do not check for HAVE_DECL_STRERROR_R missing unless STRERROR_R_CHAR_P.
12501         Use strerror_r that is only a macro, even if it is not a function.
12502         (strerror): Check for HAVE_DECL_STRERROR before declaring.
12503         (private_strerror): Use prototypes, not old-style function definition.
12504         (print_errno_message): New function.
12505         Support the POSIX 'int'-flavored strerror_r, as well as the traditional
12506         char*-flavored one.
12507         (error_tail, error, error_at_line): Use it.
12509 2002-12-07  Carlos O'Donell  <carlos@baldric.uwo.ca>
12511         * sysdeps/unix/sysv/linux/hppa/bits/shm.h: Added SHMLBA #define.
12513 2002-12-08  Ulrich Drepper  <drepper@redhat.com>
12515         * scripts/output-format.sed: Fix bug in one of the s expressions
12516         which used / for one too many things.
12518         * include/unistd.h: Declare __libc_close.
12520 2002-12-07  Ulrich Drepper  <drepper@redhat.com>
12522         * sysdeps/generic/bits/stdio-lock.h (_IO_lock_trylock): New define.
12524 2002-12-07  Roland McGrath  <roland@redhat.com>
12526         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Reintroduce changes
12527         from 2002-12-06, but remove unnecessary memset call without removing
12528         necessary copy of initialization image.
12530         * Makerules ($(common-objpfx)format.lds): New target.
12531         (common-generated): Add it.
12532         ($(inst_libdir)/libc.so): Depend on that, and cat it into the result.
12533         * scripts/output-format.sed: New file.
12534         * Makefile (distribute): Add it.
12536 2002-12-07  Ulrich Drepper  <drepper@redhat.com>
12538         * sysdeps/generic/libc-tls.c: Include <sys/param.h>.
12539         Reported by Art Haas <ahaas@airmail.net>.
12541 2002-12-07  Kenneth W. Chen  <kenneth.w.chen@intel.com>
12543         * sysdeps/ia64/strncpy.S (strncpy): Clear ar.ec.  Fix .recovery4.
12545 2002-12-07  Jakub Jelinek  <jakub@redhat.com>
12547         * string/test-strncpy.c (do_random_tests): Improve test coverage.
12549 2002-12-06  Ulrich Drepper  <drepper@redhat.com>
12551         * test-skeleton.c (timeout_handler): Allow expected signal to be
12552         SIGALRM.
12554         * wctype/wcfuncs.c: Add libc_hidden_def for iswalnum.
12556         * sysdeps/posix/raise.c: Add libc_hidden_def for raise.
12558 2002-12-07  Jakub Jelinek  <jakub@redhat.com>
12560         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h [RTLD_PRIVATE_ERRNO]
12561         (SYSCALL_ERROR_HANDLER): Fix a pasto.
12562         Reported by Jeff Bailey <jbailey@nisa.net>.
12564 2002-12-06  Ulrich Drepper  <drepper@redhat.com>
12566         * sysdeps/generic/libc-tls.c: Undo last patch.
12568         * include/wctype.h: Define iswalnum with libc_hidden_proto.
12570         * include/signal.h: Define raise with libc_hidden_proto.
12572         * sysdeps/unix/sysv/linux/fexecve.c (fexecve): Use __snprintf and
12573         __execve instead of snprintf and execve.
12575         * sysdeps/x86_64/fpu/libm-test-ulps: Relax errors for float and double
12576         again a bit.
12578 2002-12-06  Jakub Jelinek  <jakub@redhat.com>
12580         * posix/Makefile (annexc.out): Add -I../dir for all sorted-dirs.
12581         * posix/annexc.c (fmt, testfmt): Remove -D_LIBC.
12583 2002-12-06  Ulrich Drepper  <drepper@redhat.com>
12585         * misc/syslog.c (log_cleanup): New function.
12586         (openlog): Use log_cleanup instead of __libc_mutex_unlock.
12587         (closelog): Likewise.
12589         * elf/dl-close.c: Use __rtld_lock_* macros instead of __libc_lock_*.
12590         * elf/dl-iteratephdr.c: Likewise.
12591         * elf/dl-lookup.c: Likewise.
12592         * elf/dl-misc.c: Likewise.
12593         * elf/dl-open.c: Likewise.
12594         * elf/dl-support.c: Likewise.
12595         * elf/rtld.c: Likewise.
12596         * sysdeps/generic/ldsodefs.h: Likewise.
12597         * sysdeps/generic/bits/libc-lock.h: Define __rtld_lock_* macros.
12598         * sysdeps/mach/bits/libc-lock.h: Likewise.
12599         * sysdeps/mach/hurd/bits/libc-lock.h: Likewise.
12601 2002-12-06  Roland McGrath  <roland@redhat.com>
12603         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Cope with zero ALIGN.
12605         * malloc/hooks.c [_LIBC && (USE___THREAD || (USE_TLS && !SHARED))]
12606         (malloc_starter, memalign_starter, free_starter): Don't define these.
12607         * malloc/malloc.c [_LIBC && (USE___THREAD || (USE_TLS && !SHARED))]:
12608         Don't declare them either.
12609         * malloc/arena.c (ptmalloc_init) [_LIBC && USE_TLS]: Don't call
12610         __pthread_initialize, so no need to set hooks to *_starter.
12611         (ptmalloc_init_minimal): New function, broken out of ptmalloc_init.
12612         [_LIBC && SHARED && USE_TLS && !USE___THREAD]
12613         (__libc_malloc_pthread_startup): New function.
12614         * malloc/Versions (libc: GLIBC_PRIVATE): New set, add that function.
12616         * malloc/hooks.c (memalign_starter): New function.
12617         * malloc/malloc.c: Declare it.
12618         * malloc/arena.c (save_memalign_hook): New variable.
12619         (ptmalloc_init): Set __memalign_hook to memalign_starter.
12621         * elf/dl-minimal.c (free): Clear the memory.
12622         (calloc): Just call malloc, knowing all memory it returns is cleared.
12624         * sysdeps/generic/dl-tls.c (allocate_dtv): Use calloc instead of
12625         malloc and memset; calloc can avoid the zeroing when redundant.
12626         (_dl_tls_setup): Likewise.
12627         * elf/dl-load.c (decompose_rpath): Likewise.
12628         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Comment out memset
12629         call, since memory from sbrk at startup is already zero.
12631         * elf/rtld.c (_dl_start, dl_main): TLS_INIT_TP macro now returns an
12632         error string for failure, null for success.  Update callers.
12633         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Likewise.
12634         * elf/dl-load.c (_dl_map_object_from_fd): Likewise.
12636 2002-12-05  Jakub Jelinek  <jakub@redhat.com>
12638         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (sendfile): Change
12639         args to i:iipi.
12640         (readahead): Change args to i:iii.
12641         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list (readahead):
12642         Change args to i:iii.
12643         * sysdeps/unix/sysv/linux/mips/syscalls.list (readahead): Change
12644         args to i:iiii.
12646 2002-12-05  Roland McGrath  <roland@redhat.com>
12648         * stdlib/cxa_finalize.c (__cxa_finalize): When given a null argument,
12649         call all functions rather than none.
12650         Reported by Mark P. Mitchell <mark@codesourcery.com>.
12652 2002-12-04  Roland McGrath  <roland@redhat.com>
12654         * locale/localeinfo.h [NL_CURRENT_INDIRECT]: Use attribute_tls_model_ie
12655         on _nl_current_LC_* variables.
12657 2002-12-05  Ulrich Drepper  <drepper@redhat.com>
12659         * dirent/bug-readdir1.c (main): Don't call closedir, just close
12660         the file descriptor.  This is testing what the bug report was about.
12662 2002-12-04  Ulrich Drepper  <drepper@redhat.com>
12664         * po/be.po: New file.
12666         * argp/Makefile (tests): Add tst-argp1.
12668         * sysdeps/unix/sysv/linux/alpha/bits/siginfo.h: (struct sigevent):
12669         Change type of _attribute to void*.
12670         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Likewise.
12671         * sysdeps/unix/sysv/linux/bits/siginfo.h: Likewise.
12672         * sysdeps/unix/sysv/linux/mips/bits/siginfo.h: Likewise.
12673         * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Likewise.
12674         * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Likewise.
12676 2002-12-04  Roland McGrath  <roland@redhat.com>
12678         * sysdeps/generic/ldsodefs.h (struct rtld_global): Move all [USE_TLS]
12679         members to the end, so a libpthread compiled with !USE_TLS will still
12680         find other members properly.
12682         * sysdeps/i386/i486/bits/string.h (__strcpy_g): Add dummy output
12683         operand for DEST memory.  Fix dummy input operand to use SRC.
12684         Reported by Davin McCall <davmac@ozonline.com.au>.
12686         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Account for TCB
12687         alignment when initializing the DTV entry.
12689         * elf/dl-load.c (_dl_map_object_from_fd): If we hit a TLS segment
12690         when TLS has not been set up, try to set it up if we can.
12691         * elf/tst-tls4.c: Revert last change.
12692         * elf/tst-tls5.c: Likewise.
12693         * elf/tst-tls6.c: Likewise.
12694         * elf/tst-tls7.c: Likewise.
12695         * elf/tst-tls8.c: Likewise.
12696         * elf/tst-tls9.c: Likewise.
12698         * sysdeps/generic/dl-tls.c [SHARED] (_dl_tls_setup): New function.
12699         * sysdeps/generic/ldsodefs.h: Declare it.
12700         * elf/Versions (ld: GLIBC_PRIVATE): Add it.
12701         * sysdeps/generic/libc-tls.c (init_slotinfo): New static inline
12702         function, broken out of __libc_setup_tls.
12703         (init_static_tls): Likewise.
12704         (__libc_setup_tls): Call them.
12705         (_dl_tls_setup): New function, uses new subroutines.
12707         * elf/dl-close.c (free_slotinfo): Make argument pointer to pointer.
12708         Clear the pointer when returning true.
12709         (libc_freeres_fn) [SHARED]: If GL(dl_initial_dtv) is null, free the
12710         first element of the slotinfo list too.
12712         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Define only if
12713         [SHARED].
12715         * sysdeps/generic/ldsodefs.h (_dl_next_tls_modid): Declare as hidden.
12716         (_dl_determine_tlsoffset): Likewise.
12718         * elf/rtld.c (_dl_initial_error_catch_tsd): Renamed from
12719         startup_error_tsd, made global.
12720         (dl_main): Update initialization.
12721         * elf/dl-tsd.c: Likewise.
12722         * sysdeps/generic/ldsodefs.h: Declare it.
12724 2002-12-03  Ulrich Drepper  <drepper@redhat.com>
12726         * manual/texinfo.tex: Update from latest upstream version.
12728 2002-12-03  Roland McGrath  <roland@redhat.com>
12730         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Include static TLS
12731         area surplus in calculation for sbrk call.
12733         * iconvdata/cp1125.c: New file.
12734         * iconvdata/Makefile (distribute): Add it.
12735         (modules): Add CP1125.
12736         (gen-8bit-gap-modules): Add cp1125.
12737         * iconvdata/gconv-modules: Add CP1125, alias RUSCII.
12738         * iconvdata/tst-tables.sh: Add CP1125 to the list to test.
12740 2002-12-03  Andreas Jaeger  <aj@suse.de>
12742         * sysdeps/x86_64/fpu/libm-test-ulps: Regenerated.
12744 2002-12-03  Ulrich Drepper  <drepper@redhat.com>
12746         * sysdeps/posix/system.c (do_system): Make signal handler
12747         installation thread safe.
12749 2002-12-02  Roland McGrath  <roland@redhat.com>
12751         * sysdeps/unix/sysv/linux/alpha/syscalls.list (readahead): Change
12752         caller from EXTRA to -.
12753         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
12754         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
12755         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
12757 2002-12-02  Carlos O'Donell  <carlos@baldric.uwo.ca>
12759         * sysdeps/hppa/fpu/fesetround.c (fesetround): Use ~FE_DOWNWARD so both
12760         bits of RM are cleared.
12762 2002-12-02  Roland McGrath  <roland@redhat.com>
12764         * elf/tst-tls4.c: Define an unused TLS variable here, so that no lazy
12765         TLS setup is required.
12766         * elf/tst-tls5.c: Likewise.
12767         * elf/tst-tls6.c: Likewise.
12768         * elf/tst-tls7.c: Likewise.
12769         * elf/tst-tls8.c: Likewise.
12770         * elf/tst-tls9.c: Likewise.
12772         * elf/rtld.c (dl_main): Remove [! SHARED] conditional from
12773         `if (GL(dl_tls_max_dtv_idx) > 0)' tests for doing TLS setup.
12774         * elf/dl-close.c (libc_freeres_fn): Check GL(dl_tls_dtv_slotinfo_list)
12775         for being null before calling free_slotinfo.
12776         * elf/dl-load.c (_dl_map_object_from_fd) [SHARED]: For PT_TLS in
12777         dynamic loading, bail with error if GL(dl_tls_max_dtv_idx) is zero.
12779 2002-11-30  Bruno Haible  <bruno@clisp.org>
12781         * iconv/gconv.h (__gconv_btowc_fct): New typedef.
12782         (struct __gconv_step): New field __btowc_fct.
12783         * wcsmbs/btowc.c (__btowc): Use the __btowc_fct shortcut if possible.
12784         * iconv/gconv_int.h (__BUILTIN_TRANSFORM): Renamed from
12785         __BUILTIN_TRANS.
12786         (__gconv_btwoc_ascii): New declaration.
12787         * iconv/gconv_simple.c (BUILTIN_TRANSFORMATION): Add BtowcFct argument.
12788         (__gconv_btwoc_ascii): New function.
12789         * iconv/gconv_builtin.h: Add BtowcFct argument to all
12790         BUILTIN_TRANSFORMATION invocations.
12791         * iconv/gconv_conf.c (BUILTIN_TRANSFORMATION): Add BtowcFct argument.
12792         * iconv/iconvconfig.c (BUILTIN_TRANSFORMATION): Likewise.
12793         * iconv/gconv_builtin.c (map): New field btowc_fct.
12794         (BUILTIN_TRANSFORMATION): Add BtowcFct argument. Use it to initialize
12795         btowc_fct field.
12796         (__gconv_get_builtin_trans): Initialize __btowc_fct field.
12797         * iconv/gconv_cache.c (find_module): Initialize __btowc_fct field.
12798         * iconv/gconv_db.c (gen_steps, increment_counter): Likewise.
12799         * wcsmbs/wcsmbsload.c (to_wc, to_mb): Likewise.
12800         * iconv/skeleton.c: Document STORE_REST and FROM_ONEBYTE.
12801         (gconv_init): Initialize __btowc_fct field.
12802         Undefine EXTRA_LOOP_ARGS and FROM_ONEBYTE at the end.
12803         * iconv/loop.c: Document ONEBYTE_BODY.
12804         (gconv_btowc, FROM_ONEBYTE): Define if ONEBYTE_BODY is defined.
12805         Undefine ONEBYTE_BODY at the end.
12806         * iconvdata/8bit-generic.c (ONEBYTE_BODY): New macro.
12807         * iconvdata/8bit-gap.c (NONNUL): New macro.
12808         (BODY for FROM_LOOP): Use it.
12809         (ONEBYTE_BODY): New macro.
12810         * iconvdata/isiri-3342.c (HAS_HOLES): Set to 1.
12811         (NONNUL): New macro.
12812         * iconvdata/ansi_x3.110.c (ONEBYTE_BODY): New macro.
12813         * iconvdata/armscii-8.c (ONEBYTE_BODY): New macro.
12814         * iconvdata/cp1255.c (ONEBYTE_BODY): New macro.
12815         * iconvdata/cp1258.c (ONEBYTE_BODY): New macro.
12816         * iconvdata/tcvn5712-1.c (ONEBYTE_BODY): New macro.
12817         * iconvdata/big5.c (ONEBYTE_BODY): New macro.
12818         * iconvdata/big5hkscs.c (ONEBYTE_BODY): New macro.
12819         * iconvdata/euc-cn.c (ONEBYTE_BODY): New macro.
12820         * iconvdata/euc-jp.c (ONEBYTE_BODY): New macro.
12821         * iconvdata/euc-jisx0213.c (ONEBYTE_BODY): New macro.
12822         * iconvdata/euc-kr.c (ONEBYTE_BODY): New macro.
12823         * iconvdata/euc-tw.c (ONEBYTE_BODY): New macro.
12824         * iconvdata/gbk.c (ONEBYTE_BODY): New macro.
12825         * iconvdata/gb18030.c (ONEBYTE_BODY): New macro.
12826         * iconvdata/ibm932.c: Include <stdbool.h>.
12827         (TRUE, FALSE): Remove macros.
12828         (BODY for FROM_LOOP): Remove unused variable rp1.
12829         (ONEBYTE_BODY): New macro.
12830         (BODY for TO_LOOP): Use bool.
12831         * iconvdata/ibm932.h (__ibm932sb_to_ucs4_idx): Remove array.
12832         * iconvdata/ibm943.c: Include <stdbool.h>.
12833         (TRUE, FALSE): Remove macros.
12834         (BODY for FROM_LOOP): Remove unused variable rp1.
12835         (ONEBYTE_BODY): New macro.
12836         (BODY for TO_LOOP): Use bool.
12837         * iconvdata/ibm943.h (__ibm943sb_to_ucs4_idx): Remove array.
12838         * iconvdata/iso8859-1.c (ONEBYTE_BODY): New macro.
12839         * iconvdata/iso_6937-2.c (ONEBYTE_BODY): New macro.
12840         * iconvdata/iso_6937.c (ONEBYTE_BODY): New macro.
12841         * iconvdata/johab.c (ONEBYTE_BODY): New macro.
12842         * iconvdata/sjis.c (ONEBYTE_BODY): New macro.
12843         * iconvdata/shift_jisx0213.c (ONEBYTE_BODY): New macro.
12844         * iconvdata/t.61.c (ONEBYTE_BODY): New macro.
12845         * iconvdata/uhc.c (ONEBYTE_BODY): New macro.
12846         * iconvdata/gbbig5.c: Tweak comment.
12848 2002-12-02  Ulrich Drepper  <drepper@redhat.com>
12850         * po/fi.po: Update from translation team.
12852 2002-12-01  Roland McGrath  <roland@redhat.com>
12854         * sysdeps/unix/sysv/linux/getdents.c (__GETDENTS): Fix condition
12855         testing getdents64 return value.
12857         * scripts/versions.awk: Don't pass -n flag to sort command.
12859         * posix/bug-regex13.c: Include <string.h>.
12861         * sysdeps/generic/libc-start.c (__libc_start_main): Do
12862         DL_SYSDEP_OSCHECK here.
12863         * sysdeps/unix/sysv/linux/init-first.c (init): Not here.
12864         * sysdeps/unix/sysv/linux/dl-osinfo.h: Include <fcntl.h>.
12866         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Bail if
12867         argument TCBSIZE <= TLS_INIT_TCB_SIZE, not just if it's zero.
12869         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Check l_tls_offset
12870         instead of l_type to decide whether to use TLS_DTV_UNALLOCATED.
12872         * include/link.h: Comment typo fix.
12874 2002-12-01  Roland McGrath  <roland@frob.com>
12876         * sysdeps/mach/hurd/bits/posix_opt.h (_POSIX_FSYNC): Set to 200112L.
12877         (_POSIX_SPAWN, _POSIX_MAPPED_FILES, _POSIX_MEMLOCK_RANGE,
12878         _POSIX_MEMORY_PROTECTION): Likewise.
12879         (_POSIX_POLL, _POSIX_SELECT): Removed.
12881 2002-11-28  Ulrich Drepper  <drepper@redhat.com>
12883         * sysdeps/unix/sysv/linux/bits/posix_opt.h: Define macros which
12884         require it to 200112L.  Remove _POSIX_POLL and _POSIX_SELECT.
12886 2002-11-28  Jakub Jelinek  <jakub@redhat.com>
12888         * sysdeps/unix/alpha/sysdep.S: Change defined(USE___THREAD) to
12889         USE___THREAD.
12890         * sysdeps/unix/sysv/linux/alpha/sysdep.h (inline_syscall*): Avoid
12891         "=v" constraints.
12893 2002-11-28  Ulrich Drepper  <drepper@redhat.com>
12895         * sysdeps/unix/sysv/linux/x86_64/vfork.S: Don't trash the CPU's
12896         branch prediction buffers by using unpaired call/ret.
12898 2002-11-27  Ulrich Drepper  <drepper@redhat.com>
12900         * sysdeps/unix/sysv/linux/i386/sysdep.h (ASMFMT_2): Fix typo in
12901         first parameters constraint string.
12902         (ASMFMT_3): Likewise.  Patch by stefan.lauterbach@mincom.de.
12904 2002-11-27  Isamu Hasegawa  <isamu@yamato.ibm.com>
12906         * posix/regcomp.c (parse_expression): Set the bit since the back
12907         reference is used in the regular expression.
12908         * posix/regex_internal.c (re_node_set_init_1): Make it clean in case
12909         of malloc failure.
12910         (re_node_set_init_copy): Likewise.
12911         * posix/regex_internal.h (state_array_t): New structure.
12912         (re_sub_match_last_t): Likewise.
12913         (re_sub_match_top_t): Likewise.
12914         (re_match_context_t): Add new members.
12915         (re_dfa_t): Likewise.
12916         * posix/regexec.c (re_search_internal): Invoke prune_impossible_nodes
12917         to check the matching is really correct, and retry if failed.
12918         Move the routin pruning the impossible nodes from here, ...
12919         (prune_impossible_nodes): To this function.
12920         (check_matching): Invoke check_subexp_matching_top, and replace
12921         redundant checking with transit_state_bkref invocation.
12922         (proceed_next_node): Replace strncmp with memcmp.  Reported by
12923         Paolo Bonzini  <bonzini@gnu.org>.
12924         (update_cur_sifted_state): Remove search_subexp invocation.
12925         (search_subexp): Remove this function.
12926         (check_dst_limits_calc_pos): Use search_cur_bkref_entry for
12927         optimization.
12928         (sift_states_bkref): Use search_cur_bkref_entry for optimization.
12929         Remove unused invocation of match_ctx_add_entry.
12930         (transit_state): Invoke check_subexp_matching_top.
12931         (check_subexp_matching_top): New function.
12932         (transit_state_bkref): Remove unused array.
12933         Merge transit_state_bkref_loop.
12934         (transit_state_bkref_loop): Use get_subexp instead of
12935         sift_states_backward.  Use search_cur_bkref_entry for optimization.
12936         Merge this function to transit_state_bkref.
12937         (get_subexp): New function.
12938         (get_subexp_sub): Likewise.
12939         (find_subexp_node): Likewise.
12940         (check_arrival): Likewise.
12941         (check_arrival_expand_ecl): Likewise.
12942         (check_arrival_expand_ecl_sub): Likewise.
12943         (expand_bkref_cache): Likewise.
12944         (match_ctx_init): Initialize new members.
12945         (match_ctx_clean): New function.
12946         (match_ctx_free): Release new members.
12947         (match_ctx_free_subtops): New function.
12948         (match_ctx_add_entry): Fix indent.
12949         (search_cur_bkref_entry): New function.
12950         (match_ctx_add_subtop): Likewise.
12951         (match_ctx_add_sublast): Likewise.
12953 2002-11-25  Ulrich Drepper  <drepper@redhat.com>
12955         * iconv/Makefile (tests): Remove tst-iconv4.c
12956         * iconv/tst-iconv4.c: Moved to...
12957         * iconvdata/tst-iconv4.c: ...here.  New file.
12958         * iconvdata/Makefile (tests): Add tst-iconv4.  Add dependencies.
12960 2002-11-25  Roland McGrath  <roland@redhat.com>
12962         * inet/test-ifaddrs.c (main: addr_string): Handle null SA.
12963         Grok AF_LINK if defined.
12964         From Momchil Velikov <velco@fadata.bg>.
12966         * sysdeps/gnu/ifaddrs.c (getifaddrs): If ioctl fails for netmask,
12967         brdaddr, or dstaddr, just set those pointers to null and don't fail.
12968         Reported by Momchil Velikov <velco@fadata.bg>.
12970         * sysdeps/generic/ifreq.h (__if_nextreq) [_HAVE_SA_LEN]: If sa_len
12971         is > sizeof IFR->ifa_addr, advance past the whole longer length.
12972         (__ifreq): Count up NIFS that way too.
12973         Reported by Momchil Velikov <velco@fadata.bg>.
12975         * sysdeps/mach/hurd/lchmod.c: Include <fcntl.h>.
12977         * sysdeps/mach/hurd/i386/init-first.c: Include <ldsodefs.h>
12978         and <fpu_control.h>.
12980 2002-11-24  Ulrich Drepper  <drepper@redhat.com>
12982         * elf/elf.h (EM_ST19): Fix typo.
12984 2002-11-25  Jakub Jelinek  <jakub@redhat.com>
12986         * include/errno.h (__set_errno): Define as errno = val
12987         unconditionally.
12989 2002-11-24  Roland McGrath  <roland@redhat.com>
12991         * sysdeps/posix/readv.c: Include <errno.h>, use __set_errno macro.
12992         * sysdeps/posix/writev.c: Likewise.
12993         From Momchil Velikov <velco@fadata.bg>.
12995         * elf/dl-error.c [! _LIBC_REENTRANT]: Use a static variable instead of
12996         calling *GL(dl_error_catch_tsd) for a thread-local location.
12997         * elf/rtld.c (startup_error_tsd): Conditionalize on [_LIBC_REENTRANT].
12998         (dl_main): Same for GL(dl_error_catch_tsd) initialization.
12999         * elf/dl-tsd.c: Conditionalize contents on [_LIBC_REENTRANT].
13001         * libio/iofflush.c: Add libc_hidden_def.
13002         * libio/iofwrite.c: Likewise.
13003         * sysdeps/generic/sigtimedwait.c: Likewise.
13004         * sysdeps/generic/sigwaitinfo.c: Likewise.
13005         * sysdeps/posix/sigwait.c: Likewise.
13006         Reported by Momchil Velikov <velco@fadata.bg>.
13008         * inet/inet_lnaof.c (inet_lnaof): Change return type to in_addr_t
13009         to match <arpa/inet.h> declaration.
13010         * inet/inet_netof.c (inet_netof): Likewise.
13011         * inet/inet_mkadr.c (inet_makeaddr): Likewise for argument types.
13012         Reported by Momchil Velikov <velco@fadata.bg>.
13014         * configure.in: Skip AUTOCONF check under --without-cvs.
13015         * configure: Regenerated.
13017         * posix/Makefile (headers): Add bits/pthreadtypes.h.
13018         * sysdeps/unix/sysv/linux/Makefile (sysdep_heaers): Don't add it here.
13019         * sysdeps/unix/sysv/linux/Dist: Remove it from the list.
13021 2002-11-24  Andreas Schwab  <schwab@suse.de>
13023         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Support inline syscall
13024         with six arguments.
13026 2002-11-19  Jim Meyering  <jim@meyering.net>
13028         * time/mktime.c (__mon_yday, __mktime_internal) [!_LIBC]: Declare
13029         as `static'.
13030         * time/strptime.c (__mon_yday) [!_LIBC]: Declare as `static'.
13032 2002-11-23  Roland McGrath  <roland@redhat.com>
13034         * scripts/abilist.awk: Avoid strtonum function, not there in mawk.
13035         Just produce hex output for datum sizes.
13037         * elf/Makefile ($(objpfx)librtld.mk): Tighten up regexp.
13038         Reported by Luca Barbieri <ldb@ldb.ods.org>.
13040 2002-11-20  Steven Munroe  <sjmunroe@us.ibm.com>
13042         * sysdeps/unix/sysv/linux/powerpc/bits/msq.h (msqid_ds)
13043         [__WORDSIZE == 32]: Only PPC32 requires __unused1, __unused2,
13044         and __unused3 fields.
13045         * sysdeps/unix/sysv/linux/powerpc/bits/sem.h (semid_ds)
13046         [__WORDSIZE == 32]: Only PPC32 requires __unused1
13047         and __unused2 fields.
13048         * sysdeps/unix/sysv/linux/powerpc/bits/shm.h (shmid_ds)
13049         [__WORDSIZE == 32]: Only PPC32 requires __unused1, __unused2,
13050         __unused3, and __unused4 fields.
13052         * csu/gmon-start.c (__gmon_start__): Always use TEXT_START macro to
13053         obtain lowest address for profiling in __monstartup call.
13055 2002-11-21  Roland McGrath  <roland@redhat.com>
13057         * sysdeps/ia64/fpu/Makefile (libm-sysdep_routines): Remove redunant
13058         $(calls) $(calls:=f) $(long-c-$(long-double-fcts)).
13060         * locale/localeinfo.h (struct locale_data): Revert last change.
13062         * sysdeps/unix/sysv/linux/ia64/syscalls.list (s_exit_group): Add it.
13063         From Ian Wienand <ianw@gelato.unsw.edu.au>.
13065         * sysdeps/unix/sysv/linux/ia64/sysdep.h (__NR_pread): Define to
13066         __NR_pread64 if not defined.
13067         (__NR_pwrite): Define to __NR_pwrite64 if not defined.
13068         From Ian Wienand <ianw@gelato.unsw.edu.au>.
13070 2002-11-21  Roland McGrath  <roland@frob.com>
13072         * sysdeps/mach/hurd/i386/init-first.c (posixland_init): Set
13073         __libc_multiple_libcs here.  Call __setfpucw.
13075 2002-11-21  Ulrich Drepper  <drepper@redhat.com>
13077         * elf/Makefile (tests): Don't run test-arrayX tests for now.
13079         * sysdeps/unix/sysv/linux/bits/sched.h: Add new CLONE_* flags.
13080         * sysdeps/unix/sysv/linux/i386/clone.S: Add support for
13081         CLONE_CHILD_*TID flags.
13083 2002-11-20  Andreas Jaeger  <aj@suse.de>
13085         * sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h (SIGCONTEXT):
13086         We pass struct ucontext on x86-64.
13087         (GET_PC): Adjust.
13088         (GET_FRAME): Adjust.
13089         (GET_STACK): Adjust.
13091 2002-11-20  Roland McGrath  <roland@redhat.com>
13093         * sysdeps/powerpc/powerpc32/dl-machine.c [! SHARED]: Further
13094         conditionalize [! DO_VERSIONING] #error.
13096         * scripts/abilist.awk: Grok function descriptor symbols.
13098         * intl/tst-gettext.c (main): Check return values from setlocale.
13099         Add necessary unsetenv's to make LANG=existing-locale check work.
13101         * intl/tst-gettext.sh: Use mkdir -p.  Copy test files unconditionally,
13102         so aborted prior runs don't confuse things.
13104         * locale/localeinfo.h (struct locale_data: union locale_data_value):
13105         Use uintptr_t instead of unsigned int for `word' member.
13106         (_NL_CURRENT_WORD): Cast to uint32_t.
13108         * posix/bug-regex5.c (main): Use union to extract _NL_COLLATE_NRULES
13109         value.
13111 2002-11-20  Ulrich Drepper  <drepper@redhat.com>
13113         * elf/tls-macros.h: Add IA-64 definitions.
13114         Patch by Ian Wienand <ianw@gelato.unsw.edu.au>.
13116         * iconv/Makefile (tests): Add tst-iconv4.
13117         * iconv/tst-iconv4.c: New file.
13119         * iconv/gconv_simple.c (internal_ucs4le_loop_unaligned): Return
13120         __GCONV_EMPTY_INPUT only if input is really empty.  Otherwise
13121         __GCONV_INCOMPLETE_INPUT.
13122         (ucs4le_internal_loop): Likewise.
13123         (ucs4le_internal_loop_unaligned): Likewise.
13124         * iconvdata/unicode.c (PREPARE_LOOP): Likewise.
13125         * iconvdata/utf-16.c (PREPARE_LOOP): Likewise.
13126         * iconvdata/utf-32.c (PREPARE_LOOP): Likewise.
13128         * iconv/loop.c (LOOPFCT): First test for empty input then for full
13129         output buffer.
13131         * inet/getnameinfo.c: Use extend_alloca where appropriate.
13132         * sysdeps/posix/getaddrinfo.c: Likewise.
13134         * include/alloca.h (extend_alloca): New define.  Based on stack
13135         direction it'll try to append to the previouls allocated buffer.
13137 2002-11-07  Thorsten Kukuk  <kukuk@suse.de>
13139         * sysdeps/posix/getaddrinfo.c (gaih_inet): If AF_UNSPEC is set,
13140         use the same service for AF_INET and AF_INET6.
13142 2002-11-19  Ulrich Drepper  <drepper@redhat.com>
13144         * intl/localealias.c (read_alias_file): Use only about 400 bytes
13145         of stack space instead of 16k.
13147 2002-11-18  Wolfram Gloger  <wg@malloc.de>
13149         * malloc/arena.c
13150         (ptmalloc_lock_all, ptmalloc_unlock_all, ptmalloc_unlock_all2): Do
13151         nothing if not initialized.  Bug report from Marcus Brinkmann
13152         <Marcus.Brinkmann@ruhr-uni-bochum.de>.
13154 2002-11-19  Roland McGrath  <roland@redhat.com>
13156         * posix/Versions (libc: GLIBC_2.3.2): Add sched_getaffinity and
13157         sched_setaffinity.
13159         * configure.in (libc_cv_gcc_dwarf2_unwind_info check): Use libraries
13160         `-lgcc -lgcc_eh -lgcc', not just `-lgcc -lgcc_eh' in link commands for
13161         test leading to libc_cv_gcc_dwarf2_unwind_info=no_registry_needed.
13162         * configure: Regenerated.
13164 2002-11-19  Ulrich Drepper  <drepper@redhat.com>
13166         * include/dlfcn.h: __libc_dlopen is now a macro calling
13167         __libc_dlopen_mode with the extra parameter RTLD_LAZY.
13168         (__libc_dlopen_mode): New prototype.
13169         * elf/dl-libc.c (__libc_dlopen_mode): Renamed from __libc_dlopen.  Add
13170         new parameter.  Store new parameter in mode field of structure passed
13171         to do_dlopen.
13172         (struct do_dlopen_args): Add new field mode.
13173         (do_dlopen): Pass mode from parameter structure to _dl_open.
13175 2002-11-11  Randolf Chung  <tausq@debian.org>
13177         * sysdeps/unix/sysv/linux/hppa/bits/fcntl.h [__USE_FILE_OFFSET64]
13178         (F_GETLK, F_SETLK, F_SETLKW): Define to F_*64 versions.
13179         * sysdeps/unix/sysv/linux/hppa/fcntl.c: New file.
13181         * sysdeps/hppa/fpu/libm-test-ulps: New file (generated).
13183         * sysdeps/hppa/Makefile (CFLAGS-rtld.c): New variable.
13184         Set -mdisable-fpregs for this file.
13186 2002-11-11  Carlos O'Donell  <carlos@baldric.uwo.ca>
13188         * sysdeps/unix/sysv/linux/configure.in:
13189         Make 2.4.19 minimum linux kernel for hppa, and add unwind symbols
13190         from gcc-3.0 era for backwards compatibility.
13191         * sysdeps/unix/sysv/linux/configure: Regenerate.
13193         * sysdeps/unix/sysv/linux/hppa/sys/ucontext.h:
13194         Define mcontext_t as a sigcontext.
13196 2002-11-18  Roland McGrath  <roland@redhat.com>
13198         * dlfcn/dlerror.c (fini): New function, __attribute__ ((destructor)).
13199         Free memory in `last_result' if it was used.
13201         * resolv/nss_dns/dns-network.c (getanswer_r): In BYNAME case, search
13202         all aliases for one that matches the "<dotted-quad>.IN-ADDR.ARPA" form.
13203         Do the parsing inline instead of copying strings and calling
13204         inet_network, and properly skip all alias names not matching the form.
13206         * manual/pattern.texi (Variable Substitution): Fix # and ## examples.
13208 2002-11-17  Ulrich Drepper  <drepper@redhat.com>
13210         * manual/pattern.texi (Wordexp Example): Fix sample code.
13212         * sysdeps/unix/sysv/linux/i386/clone.S: Initialize word in the
13213         childs stack which will be loaded into the %esi register.
13215 2002-11-14  Paul Eggert  <eggert@twinsun.com>
13217         * resolv/nss_dns/dns-network.c (getanswer_r): Check for buffer
13218         overflow when skipping the question part and when unpacking aliases.
13220 2002-11-15  Roland McGrath  <roland@redhat.com>
13222         * math/Makefile (libm-calls): Remove s_copysign, s_isinf, s_isnan,
13223         s_finite, s_modf, s_scalbn, s_frexp, m_ldexp, s_signbit.
13224         Instead add $(calls:s_%=m_%) to get m_* versions of them all.
13226 2002-11-15  Jakub Jelinek  <jakub@redhat.com>
13228         * sysdeps/i386/dl-machine.h (elf_machine_rela): Handle R_386_COPY.
13229         * sysdeps/arm/dl-machine.h (elf_machine_rela): Handle R_ARM_COPY.
13231 2002-11-15  Roland McGrath  <roland@redhat.com>
13233         * math/Makefile (libm-calls): Change s_ldexp to m_ldexp.
13234         * Makerules ($(+sysdir_pfx)sysd-rules): Emit pattern rules for m_%.[Sc]
13235         from sysdeps/.../s_%.[Sc] with commands $(+make-include-of-dep).
13236         (+make-include-of-dep): New canned sequence.
13238         * stdlib/canonicalize.c (__realpath): Check for malloc failure.
13239         From Dmitry V. Levin <ldv@altlinux.org>.
13241 2002-11-14  Roland McGrath  <roland@redhat.com>
13243         * sysdeps/generic/errno.c (__libc_errno): Remove alias.
13244         * inet/herrno.c (__libc_h_errno): Likewise.
13245         * resolv/res_libc.c (__libc_res): Likewise.
13246         [USE___THREAD]: Use this in place of [USE_TLS && HAVE___THREAD].
13247         (__res_state) [! USE___THREAD]: Don't define as weak.
13248         * csu/Versions: Revert last change.
13249         * resolv/Versions: Revert last change.
13251         * Makerules ($(common-objpfx)%.make): New pattern rule.
13252         * tls.make.c: New file.
13253         * Makefile (distribute): Add it.
13255         * sysdeps/generic/errno.c [! USE___THREAD]
13256         [HAVE_ELF && SHARED && DO_VERSIONING] (errno, _errno): Declare these
13257         with compat_symbol so they are not link-time visible.
13258         [! USE___THREAD] (__libc_errno): New alias for errno.
13259         * csu/Versions [!(USE_TLS && HAVE___THREAD)] (libc: GLIBC_PRIVATE):
13260         Add __libc_errno here.
13261         * inet/herrno.c [USE___THREAD]: Use this conditional
13262         in place of [USE_TLS && HAVE___THREAD].
13263         [! USE___THREAD] [HAVE_ELF && SHARED && DO_VERSIONING]
13264         (h_errno, _h_errno): Declare these with compat_symbol so they are not
13265         link-time visible.
13266         [! USE___THREAD] (__libc_h_errno): New alias for h_errno.
13267         * resolv/res_libc.c [! USE___THREAD]
13268         [HAVE_ELF && SHARED && DO_VERSIONING] (_res): Likewise.
13269         (_res): Use __attribute__ ((section (".bss"))) so we can have an alias.
13270         (__libc_res): Define as alias for _res.
13271         * resolv/Versions [!(USE_TLS && HAVE___THREAD)] (libc: GLIBC_PRIVATE):
13272         Add __libc_h_errno and __libc_res here.
13274 2002-11-14  Jakub Jelinek  <jakub@redhat.com>
13276         * csu/Versions (errno): Move STT_TLS symbol to GLIBC_PRIVATE for now.
13277         * resolv/Versions (h_errno, _res): Likewise.
13279 2002-11-14  Roland McGrath  <roland@redhat.com>
13281         * Makerules (%.dynsym): Remove $(objpfx) from target and dep.
13282         (%.symlist): Likewise.
13284 2002-11-13  Roland McGrath  <roland@redhat.com>
13286         * scripts/abilist.awk: New file.
13287         * Makefile (distribute): Add it.
13288         * Makerules ($(objpfx)%.dynsym, $(objpfx)%.symlist): New rules.
13289         (tests): Depend on .symlist file for each $(install-lib.so-versioned).
13290         [$(subdir) = elf] (tests): Depend on libc.symlist.
13291         (generated, common-generated): Add those files.
13293         * aclocal.m4 (LIBC_PROG_BINUTILS): Check for objdump, set OBJDUMP.
13294         * configure: Regenerated.
13295         * config.make.in (OBJDUMP): New variable, substituted by configure.
13297         * malloc/mcheck.c (struct hdr): New members `block' and `magic2'.
13298         (mallochook, reallochook): Set them up.
13299         (checkhdr): Check HDR->magic2 value.
13300         (freehook): Reset HDR->magic2.
13301         (memalignhook): New static function.
13302         (old_memalign_hook): New static variable.
13303         (mcheck, reallochook): Set __memalign_hook to memalignhook.
13305         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage): Zero the space
13306         for the new TCB.
13308 2002-11-13  Andreas Jaeger  <aj@suse.de>
13310         * sysdeps/unix/sysv/linux/x86_64/sigaction.c: Check for visibility
13311         attribute.
13312         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
13314 2002-11-11  Paul Eggert  <eggert@twinsun.com>
13316         * manual/crypt.texi (Cryptographic Functions): Mention that
13317         the MD5 one-way algorithm is compatible with BSD's.
13319 2002-11-11  Isamu Hasegawa  <isamu@yamato.ibm.com>
13321         * posix/regex_internal.c (re_string_skip_chars): Also return the last
13322         wide character.
13323         (re_string_reconstruct): Calculate the context by itself when the
13324         offset points out of the valid range.
13325         (re_string_context_at): Use wide character when MB_CUR_MAX > 1.
13326         * posix/regex_internal.h (WIDE_NEWLINE_CHAR): New macro.
13327         (IS_WIDE_WORD_CHAR): New macro.
13328         (IS_WIDE_NEWLINE): New macro.
13330 2002-11-12  Andreas Jaeger  <aj@suse.de>
13332         * sysdeps/x86_64/strchr.S: Don't use one register for two
13333         purposes, this fixes a bug noticed by test-strchr.c.
13335         * sysdeps/x86_64/strcat.S: Fix algorithm to align source pointer
13336         correctly.
13338 2002-11-12  Roland McGrath  <roland@redhat.com>
13340         * libio/libioP.h [_LIBC && !SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_1)]
13341         (_G_IO_NO_BACKWARD_COMPAT): Define it.
13343         * sysdeps/ia64/dl-fptr.c [_LIBC_REENTRANT]: Include <ia64intrin.h>
13344         instead of <pt-machine.h>.
13345         [_LIBC_REENTRANT] (lock, unlock): Use __sync_lock_* macros instead of
13346         testandset.
13347         From Ian Wienand <ianw@gelato.unsw.edu.au>.
13349 2002-11-10  Roland McGrath  <roland@redhat.com>
13351         * libio/bug-wfflush.c (do_test): Call rewind instead of fsetpos.
13352         Call fputs instead of fwprintf (simpler to follow in debugger).
13354         * crypt/md5-crypt.c: Doc fix.
13356         * sysdeps/unix/make-syscalls.sh: Insert $(make-target-directory) at
13357         the beginning of generated target commands.
13359         * csu/Makefile ($(objpfx)crti.o, $(objpfx)crtn.o): Add explicit
13360         dependencies for these in case implicit rule search skipped the
13361         nonexistent source directory.
13362         * sysdeps/gnu/Makefile ($(objpfx)errlist.d): Give this rule all the
13363         files with $(object-suffixes) as targets too.
13364         * Makerules [no_deps && objpfx] (before-compile): Add $(objpfx).
13365         and a target for it using $(make-target-directory).
13367         * Rules (before-compile): Add $(common-objpfx)bits/stdio-lim.h.
13369 2002-11-10  Roland McGrath  <roland@frob.com>
13371         * sysdeps/unix/sysv/linux/bits/pthreadtypes.h: Moved to ...
13372         * sysdeps/generic/bits/pthreadtypes.h: ... here.
13374         * sysdeps/mach/hurd/fcntl.c (__libc_fcntl): Treat a struct flock with
13375         l_start == 0 and l_len == 1 as we do l_len == 0.
13377 2002-11-10  Ulrich Drepper  <drepper@redhat.com>
13379         * po/da.po: Update from translation team.
13381 2002-11-10  Roland McGrath  <roland@redhat.com>
13383         * config.make.in (includedir): New variable, substituted by configure.
13384         Reported missing by Jocelyn Fournier <joc@presence-pc.com>.
13385         * Makeconfig (includedir): Use $(prefix), not $(exec_prefix).
13387 2002-11-10  Andreas Jaeger  <aj@suse.de>
13389         * sysdeps/unix/sysv/linux/x86_64/sys/ucontext.h (enum): Add
13390         REG_OLDMASK and REG_CR2 to synch with kernel header.
13391         (NGREG): Increase.
13393         * nss/getXXent.c (GETFUNC_NAME): Use union type to avoid strict
13394         aliasing problem.
13395         * nss/getXXbyYY_r.c (INTERNAL): Likewise.
13396         * nss/getnssent_r.c (__nss_getent_r): Likewise.
13397         (__nss_setent): Likewise.
13398         (__nss_getent_r): Likewise.
13399         * inet/getnetgrent_r.c (innetgr): Likewise.
13400         (__internal_setnetgrent_reuse): Likewise.
13401         (internal_getnetgrent_r): Likewise.
13402         * inet/ether_hton.c (ether_hostton): Likewise.
13403         * inet/ether_ntoh.c (ether_ntohost): Likewise.
13404         * sunrpc/netname.c (netname2user): Likewise.
13405         * sunrpc/publickey.c (getpublickey): Likewise.
13406         (getsecretkey): Likewise.
13408 2002-11-09  Marcus Brinkmann  <marcus@gnu.org>
13410         * sysdeps/mach/hurd/i386/ioperm.c (ioperm): Correct off by one
13411         error in range calculation.
13413 2002-10-09  Jakub Jelinek  <jakub@redhat.com>
13415         * string/test-strspn.c (do_test): Ensure zero termination.
13416         * string/test-strpbrk.c (do_test): Likewise.
13417         * string/test-strncmp.c (stupid_strncmp): Use strnlen, not strlen.
13418         * string/test-strncpy.c (stupid_strncpy): Likewise.
13419         * string/test-stpncpy.c (stupid_stpncpy): Likewise.
13421 2002-10-08  Roland McGrath  <roland@redhat.com>
13423         * string/test-string.h (test_init): Fill BUF1 and BUF2 with
13424         nonzero characters.
13426 2002-09-22  H.J. Lu  <hjl@gnu.org>
13428         * sysdeps/unix/sysv/linux/mmap64.c (MMAP2_PAGE_SHIFT): Renamed
13429         from PAGE_SHIFT.  Define if not defined.  Check MMAP2_PAGE_SHIFT
13430         only if __NR_mmap2 is defined.
13432         * sysdeps/unix/sysv/linux/powerpc/mmap64.c: Moved to ...
13433         * sysdeps/unix/sysv/linux/mmap64.c: ... here.
13434         * sysdeps/unix/sysv/linux/hppa/mmap64.c: File removed.
13435         * sysdeps/unix/sysv/linux/sparc/sparc32/mmap64.c: FIle removed,
13437 2002-11-08  Jakub Jelinek  <jakub@redhat.com>
13439         * posix/bug-regex13.c (tests): Add new test.
13441         * string/test-strchr.c (stupid_strchr): New function.
13442         (do_random_tests): Make sure the string is zero terminated.
13443         * string/test-strpbrk.c (stupid_strpbrk): New function.
13444         (do_random_tests): Make sure the string is zero terminated.
13445         * string/test-strcmp.c (stupid_strcmp): New function.
13446         (do_random_tests): Make sure the strings are zero terminated.
13447         * string/test-strspn.c (stupid_strspn): New function.
13448         (simple_strspn): Rename rej argument to acc.
13449         (do_random_tests): Make sure the string is zero terminated.
13450         * string/test-strcspn.c (stupid_strcspn): New function.
13451         * string/test-strncpy.c (stupid_strncpy): New function.
13452         * string/test-stpncpy.c (stupid_stpncpy): New function.
13453         * string/test-strncmp.c (stupid_strncmp): New function.
13454         (do_random_tests): Make sure the strings are zero terminated.
13455         * string/test-string.h (impl_t): Change test into long.
13456         (IMPL): Add __attribute__((aligned (sizeof (void *)))).
13458 2002-11-08  Roland McGrath  <roland@redhat.com>
13460         * sysdeps/ia64/elf/configure.in: Add TLS check.
13461         From Ian Wienand <ianw@cse.unsw.edu.au>.
13462         * sysdeps/ia64/elf/configure: Regenerated.
13464 2002-11-07  Roland McGrath  <roland@redhat.com>
13466         * libio/fileops.c (_IO_new_file_overflow): Use INTUSE(_IO_do_write) in
13467         place of _IO_new_do_write.
13468         [_LIBC] (_IO_do_write): Define as macro for _IO_new_do_write and
13469         #undef before versioned_symbol use.
13471 2002-11-07  Richard Henderson  <rth@redhat.com>
13473         * configure.in (ASM_ALPHA_NG_SYMBOL_PREFIX): Remove test.
13474         * configure: Regenerated.
13475         * config.h.in (ASM_ALPHA_NG_SYMBOL_PREFIX): Remove #undef.
13476         * sysdeps/alpha/dl-machine.h (TRAMPOLINE_TEMPLATE): Use !samegp.
13477         (RTLD_START): Likewise.  Access _dl_skip_args, _rtld_local, and
13478         _dl_fini via gp-relative relocations.
13479         * sysdeps/alpha/fpu/e_sqrt.c: Use !samegp.
13481         * elf/tls-macros.h: Add alpha versions.
13482         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Handle TLS relocs.
13483         * sysdeps/unix/alpha/sysdep.S: Support USE___THREAD.
13484         * sysdeps/unix/alpha/sysdep.h: Likewise.  Add SYSCALL_ERROR_HANDLER.
13485         * sysdeps/unix/sysv/linux/alpha/brk.S: Use it.
13486         * sysdeps/unix/sysv/linux/alpha/clone.S: Likewise.
13487         * sysdeps/unix/sysv/linux/alpha/getitimer.S: Likewise.
13488         * sysdeps/unix/sysv/linux/alpha/getrusage.S: Likewise.
13489         * sysdeps/unix/sysv/linux/alpha/gettimeofday.S: Likewise.
13490         * sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S: Likewise.
13491         * sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S: Likewise.
13492         * sysdeps/unix/sysv/linux/alpha/rt_sigaction.S: Likewise.
13493         * sysdeps/unix/sysv/linux/alpha/select.S: Likewise.
13494         * sysdeps/unix/sysv/linux/alpha/setitimer.S: Likewise.
13495         * sysdeps/unix/sysv/linux/alpha/settimeofday.S: Likewise.
13496         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S: Likewise.
13497         * sysdeps/unix/sysv/linux/alpha/syscall.S: Likewise.
13498         * sysdeps/unix/sysv/linux/alpha/utimes.S: Likewise.
13499         * sysdeps/unix/sysv/linux/alpha/wait4.S: Likewise.
13501         * sysdeps/unix/sysv/linux/alpha/sysdep.h: Re-include protect.
13502         Kill argument registers across the inline syscall.
13504         * sysdeps/unix/sysv/linux/alpha/clone.S: Add user_tid and tls args.
13506         * linuxthreads/sysdeps/alpha/tls.h: New file.
13507         * sysdeps/alpha/dl-tls.h: New file.
13509 2002-10-29  David Mosberger  <davidm@hpl.hp.com>
13511         * sysdeps/ia64/elf/initfini.c [HAVE_INITFINI_ARRAY]
13512         (gmon_initializer): New function.
13513         (.init prologue): If HAVE_INITFINI_ARRAY is true, don't call
13514         __gmon_start__ here.  Call it from gmon_initializer() instead.
13516 2002-03-12  H.J. Lu  <hjl@gnu.org>
13518         * elf/Makefile [$(have-initfini-array) = yes] (tests): Add tst-array1,
13519         tst-array2, and tst-array3.
13520         [$(have-initfini-array) = yes] (tests-static): Add tst-array3.
13521         [$(have-initfini-array) = yes] (modules-names): Add tst-array2dep.
13522         ($(objpfx)tst-array1.out): New target.
13523         ($(objpfx)tst-array2): Likewise.
13524         ($(objpfx)tst-array2.out): Likewise.
13525         ($(objpfx)tst-array3.out): Likewise.
13526         * elf/tst-array1.c: New file.
13527         * elf/tst-array1.exp: Likewise.
13528         * elf/tst-array2.c: Likewise.
13529         * elf/tst-array2dep.c: Likewise.
13530         * elf/tst-array2.exp: Likewise.
13531         * elf/tst-array3.c: Likewise.
13533 2002-10-28  David Mosberger  <davidm@hpl.hp.com>
13535         * elf/dl-fini.c (_dl_fini): Invoke fini_array in _reverse_ order.
13536         Don't add L->l_addr to array entry values.
13538 2002-11-07  Jakub Jelinek  <jakub@redhat.com>
13540         * string/test-string.h: New file.
13541         * string/test-strlen.c: New file.
13542         * string/test-string.h: New file.
13543         * string/test-strcmp.c: New file.
13544         * string/test-strchr.c: New file.
13545         * string/test-strrchr.c: New file.
13546         * string/test-strcpy.c: New file.
13547         * string/test-stpcpy.c: New file.
13548         * string/test-strncpy.c: New file.
13549         * string/test-stpncpy.c: New file.
13550         * string/test-strpbrk.c: New file.
13551         * string/test-strcspn.c: New file.
13552         * string/test-strspn.c: New file.
13553         * string/test-strcat.c: New file.
13554         * string/test-strncmp.c: New file.
13555         * string/test-memchr.c: New file.
13556         * string/test-memcmp.c: New file.
13557         * string/test-memset.c: New file.
13558         * string/test-memcpy.c: New file.
13559         * string/test-mempcpy.c: New file.
13560         * string/test-memmove.c: New file.
13561         * string/Makefile (strop-tests): New variable.
13562         (tests): Add strop-tests.
13563         (distribute): Add test-string.h.
13565 2002-11-06  Ulrich Drepper  <drepper@redhat.com>
13567         * posix/regcomp.c: Use tabs instead of spaces.
13568         * posix/regexec.c: Likewise.
13569         * posix/regex_internal.h: Likewise.
13571         * posix/regcomp.c (re_compile_fastmap_iter): Use __wcrtomb not wctomb.
13573 2002-11-06  Jakub Jelinek  <jakub@redhat.com>
13575         * posix/regcomp.c (re_compile_pattern): Don't set regs_allocated
13576         here.
13577         (regcomp): Don't set can_be_null here.
13578         (re_comp): Clear whole re_comp_buf with the exception of fastmap.
13579         (re_compile_internal): Clear can_be_null, set regs_allocated.
13581         * posix/regcomp.c (re_set_fastmap): New function.
13582         (re_compile_fastmap_iter): Use it.  Remove redundant type ==
13583         COMPLEX_BRACKET check.
13584         * posix/regexec.c (re_search_internal): Optimize searching with
13585         fastmap.  Call re_string_reconstruct even if match_first is
13586         smaller than raw_mbs_idx.
13588 2002-11-06  Isamu Hasegawa  <isamu@yamato.ibm.com>
13590         * posix/regcomp (free_dfa_content): Use free_state.
13591         * posix/regex_internal.c (re_string_realloc_buffers): Don't edit
13592         pointers in case that realloc failed.
13593         (re_node_set_merge): Likewise.
13594         (register_state): Likewise.
13595         (create_newstate_common): Invoke memory release functions in case of
13596         error conditions.
13597         (create_ci_newstate): Likewise.
13598         (create_cd_newstate): Likewise.
13599         (free_state): New function.
13600         * posix/regexec.c (re_search_internal): Invoke memory release
13601         functions in case of error conditions.
13602         (sift_states_backward): Likewise.
13603         (merge_state_array): Likewise.
13604         (add_epsilon_src_nodes): Likewise.
13605         (sub_epsilon_src_nodes): Likewise.
13606         (search_subexp): Likewise.
13607         (sift_states_bkref): Likewise.
13608         (transit_state_sb): Likewise.
13609         (transit_state_mb): Likewise.
13610         (transit_state_bkref_loop): Likewise.
13611         (group_nodes_into_DFAstates): Likewise.
13612         (push_fail_stack): Don't edit pointers in case that realloc failed.
13613         (extend_buffers): Likewise.
13614         (match_ctx_add_entry): Likewise.
13616 2002-11-06  Roland McGrath  <roland@redhat.com>
13618         * sysdeps/unix/sysv/linux/mips/configure.in: File removed.
13619         * sysdeps/unix/sysv/linux/mips/configure: Likewise.
13621         * configure.in: Add checks on as and ld for binutils 2.13 or later.
13622         * configure: Regenerated.
13624 2002-11-06  Ulrich Drepper  <drepper@redhat.com>
13626         * posix/regcomp.c (regcomp): __re_compile_fastmap can never fail.
13627         If re_compile_internal failed free fastmap buffer.
13628         (free_dfa_content): Broken out of regfree function.  Frees all dfa
13629         related data.
13630         (regfree): Add free_dfa_content.
13631         (re_compile_internal): If any of the called functions fails free
13632         all dfa related memory.
13634 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
13636         * sysdeps/unix/sysv/linux/sys/sysctl.h: Add ugly hacks to prevent
13637         warnings from the kernel headers.
13639 2002-11-05  Roland McGrath  <roland@redhat.com>
13641         * sysdeps/unix/mips/sysdep.h [! __PIC__] (PSEUDO): Add nop after jump.
13642         From Johannes Stezenbach <js@convergence.de>.
13644         * sysdeps/unix/sysv/linux/mips/Versions (libc: GLIBC_2.0): Change
13645         #errlist-compat magic comment to give 123 as size.
13646         (libc: GLIBC_2.1): Remove this set, moving #errlist-compat magic to ...
13647         (libc: GLIBC_2.2): ... here.
13648         (libc: GLIBC_2.3): Likewise.
13650 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
13652         * elf/dl-fini.c (_dl_fini): Correct the increment of l_opencount
13653         which happens at the beginning so that we can unload modules in
13654         __libc_freeres.
13656 2002-11-06  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
13658         * sysdeps/sh/bits/setjmp.h (JB_SIZE): Define only
13659         under [__USE_MISC || _ASM].
13661         * elf/elf.h: Remove the obsolete SH TLS relocations.
13663 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
13665         * posix/regcomp.c (regcomp): Initialize preg->can_be_null to zero.
13667 2002-11-05  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
13669         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h: Handle
13670         __NR_pread64 and __NR_pwrite64.
13671         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h: Likewise.
13672         * sysdeps/unix/sysv/linux/powerpc/pread.c: Remove __NR_pread64
13673         and __NR_pwrite64.
13674         Revert change to use INLINE_SYSCALL.
13675         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Likewise.
13676         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Likewise.
13677         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Likewise.
13678         * sysdeps/unix/sysv/linux/powerpc/ftruncate64.c: Revert change to use
13679         INLINE_SYSCALL.
13680         * sysdeps/unix/sysv/linux/powerpc/truncate64.c: Likewise.
13682         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (INLINE_SYSCALL):
13683         Update clobber list and add a comment about the syscall ABI.
13685         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list (s_pread64,
13686         s_pwrite64, s_ftruncate, s_truncate): Re-add.
13688 2002-11-05  Jakub Jelinek  <jakub@redhat.com>
13690         * iconv/gconv_dl.c (free_mem): Clear loaded.
13691         * locale/loadarchive.c (_nl_archive_subfreeres): Call locale_data's
13692         cleanup if any.
13694 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
13696         * sysdeps/unix/sysv/linux/fexecve.c: Include <stdio.h>.
13698         * libio/ioseekoff.c: Remove INTDEF.  Define _IO_seekoff_unlocked.  Same
13699         as old code without locking.  _IO_seekoff calls this function after
13700         locking the stream.
13701         * libio/ioseekpos.c: Likewise for _IO_seekpos.
13702         * libio/libioP.h: Replace _IO_seekoff_internal and _IO_seekpos_internal
13703         prototypes with _IO_seekoff_unlocked and _IO_seekpos_unlocked
13704         prototypes.
13705         * libio/iolibio.h (_IO_fseek): Call _IO_seekoff_unlocked instead
13706         of _IO_seekoff_internal.
13707         (_IO_rewind): Likewise.
13708         * libio/ioftell.c: Likewise.
13709         * libio/ftello.c: Likewise.
13710         * libio/ftello64.c: Likewise.
13711         * libio/iofgetpos.c: Likewise.
13712         * libio/iofgetpos64.c: Likewise.
13713         * libio/oldiofgetpos.c: Likewise.
13714         * libio/oldiofgetpos64.c: Likewise.
13715         * libio/iofsetpos.c: Call _IO_seekpos_unlocked instead of
13716         _IO_seekpos_internal.
13717         * libio/iofsetpos64.c: Likewise.
13718         * libio/oldiofsetpos.c: Likewise.
13719         * libio/oldiofsetpos64.c: Likewise.
13721 2002-11-04  Roland McGrath  <roland@redhat.com>
13723         * sysdeps/unix/sysv/linux/powerpc/chown.c: Use INLINE_SYSCALL macro.
13724         * sysdeps/unix/sysv/linux/powerpc/ftruncate64.c: Likewise.
13725         * sysdeps/unix/sysv/linux/powerpc/ioctl.c: Likewise.
13726         * sysdeps/unix/sysv/linux/powerpc/pread.c: Likewise.
13727         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Likewise.
13728         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Likewise.
13729         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Likewise.
13730         * sysdeps/unix/sysv/linux/powerpc/tcgetattr.c: Likewise.
13731         * sysdeps/unix/sysv/linux/powerpc/tcsetattr.c: Likewise.
13732         * sysdeps/unix/sysv/linux/powerpc/truncate64.c: Likewise.
13733         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list (s_ioctl,
13734         s_chown, s_ftruncate64, s_mmap2, s_pread64, s_pwrite64, s_truncate64,
13735         sys_fstat, sys_lstat, sys_mknod, sys_readv, sys_stat, sys_writev):
13736         Remove these, no longer used.
13738 2002-11-04  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
13740         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list (s_ipc,
13741         s_llseek, s_readahead, s_execve, s_fcntl, s_fcntl64, s_fstat64,
13742         s_getcwd, s_getdents, s_getdents64, s_getpmsg, s_getpriority,
13743         s_getrlimit, s_lstat64, s_poll, s_ptrace, s_putpmsg, s_reboot,
13744         s_setrlimit, s_sigaction, s_sigpending, s_sigprocmask, s_sigsuspend,
13745         s_stat64, s_sysctl, s_ugetrlimit, s_ustat, s_vfork): Remove now unused
13746         syscall stubs.
13748         * sysdeps/unix/sysv/linux/pwrite.c: Fix typo.
13749         * sysdeps/unix/sysv/linux/pwrite64.c: Likewise.
13750         * sysdeps/unix/sysv/linux/powerpc/pread.c: Handle both __NR_pread64
13751         and __NR_pread.
13752         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Likewise.
13753         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Handle both __NR_pwrite64
13754         and __NR_pwrite.
13755         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Likewise.
13757 2002-11-03  Roland McGrath  <roland@redhat.com>
13759         * sysdeps/generic/ldsodefs.h (struct rtld_global): New member
13760         `_dl_tls_static_used'.
13761         * sysdeps/generic/libc-tls.c (_dl_tls_static_used): New variable.
13762         (__libc_setup_tls): Initialize it.  Let the initial value of
13763         _dl_tls_static_size indicate some surplus space in the computed value.
13764         * elf/dl-open.c (_dl_tls_static_size): New variable.
13765         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Initialize
13766         _dl_tls_static_used.  Add some surplus space into _dl_tls_static_size.
13767         * elf/dl-reloc.c [USE_TLS] (allocate_static_tls): New function.
13768         (CHECK_STATIC_TLS): Use it.
13769         * elf/dl-close.c (_dl_close): Adjust _dl_tls_static_used when the
13770         closed objects occupied a trailing contiguous chunk of static TLS area.
13772 2002-10-18  Bruno Haible  <bruno@clisp.org>
13774         * charmaps/ISO_5428: Use Greek characters introduced in Unicode 3.0.
13776 2002-11-04  Ulrich Drepper  <drepper@redhat.com>
13778         * libio/wfileops.c (_IO_wfile_seekoff): Don't modify _offset and
13779         _wide_data->_IO_read_end if adjustment can be made in the current
13780         buffer.
13782         * sysdeps/unix/sysv/linux/fexecve.c: New file.
13784         * libio/bug-wfflush.c (do_test): Using fseek is not allowed when
13785         wide oriented streams are used.
13787         * nss/getXXent_r.c (ENDFUNC_NAME): Don't do anything if the
13788         service hasn't been used [PR libc/4744].
13790         * include/features.h: Use __STDC_VERSION__ not __STDC_VERSION.
13791         Reported by Miloslav Trmac <mitr@volny.cz> [PR libc/4766].
13793         * manual/examples/dir.c: Don't include <stddef.h>.
13794         * manual/examples/select.c: Include <errno.h> for TEMP_FAILURE_RETRY.
13795         Reported by Frédéric Delanoy <delanoy_f@yahoo.com>.
13797 2002-11-02  H.J. Lu  <hjl@gnu.org>
13799         * stdio-common/reg-printf.c: Include <stddef.h>.
13801 2002-11-03  Ulrich Drepper  <drepper@redhat.com>
13803         * sysdeps/generic/libc-tls.c: Define _dl_tls_static_used.
13805         * po/ca.po: Update from translation team.
13806         * po/es.po: Likewise.
13808         * sysdeps/generic/segfault.c (catch_segfault): If HAVE_PROC_SELF
13809         is defined write out memory map.
13810         * sysdeps/unix/sysv/linux/segfault.c: New file.
13812 2002-11-02  Roland McGrath  <roland@redhat.com>
13814         * sysdeps/unix/sysv/linux/getdents.c (__GETDENTS): Use union type for
13815         pointers that can alias.
13816         Reported by Daniel Jacobowitz <drow@mvista.com>.
13818         * sysdeps/unix/bsd/bsd4.4/freebsd/bits/typesizes.h: New file.
13820 2002-11-02  Roland McGrath  <roland@redhat.com>
13822         * manual/filesys.texi (Reading/Closing Directory): Rewrite readdir_r
13823         description to be clearer and to say that *RESULT is set to ENTRY.
13825 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
13827         * posix/regexec.c (build_trtable): Alloca or malloc dests_node and
13828         dests_ch arrays together.  Alloca or malloc dest_states,
13829         dest_states_word and dest_states_nl arrays together.  Free memory on
13830         error exit.
13832 2002-10-29  Daniel Jacobowitz  <drow@mvista.com>
13834         * crypt/crypt_util.c (__init_des_r): Initialize current_salt
13835         and current_saltbits.
13837 2002-11-02  Roland McGrath  <roland@redhat.com>
13839         * stdio-common/reg-printf.c: Include <stdlib.h>.
13841 2002-11-02  H.J. Lu  <hjl@gnu.org>
13843         * sysdeps/unix/sysv/linux/mips/syscalls.list (s_execve): Set
13844         caller to EXTRA instead of execve.
13846 2002-11-01  Roland McGrath  <roland@redhat.com>
13848         * sysdeps/generic/errno-loc.c [! USE___THREAD]: Use this conditional
13849         in place of [!(USE_TLS && HAVE___THREAD)].
13850         (__errno_location) [! USE___THREAD]: Define as strong, not weak.
13852 2002-10-31  Roger Sayle  <roger@eyesopen.com>
13854         * sysdeps/i386/soft-fp/sfp-machine.h (_FP_NANFRAC_Q, _FP_NANSIGN_Q):
13855         New macros.
13856         * sysdeps/x86_64/soft-fp/sfp-machine.h: Likewise.
13858         * soft-fp/soft-fp.h: Allow sfp-machine.h to define FP_RND_NEAREST
13859         without defining FP_ROUNDMODE.
13861 2002-10-29  Jakub Jelinek  <jakub@redhat.com>
13863         * sysdeps/gnu/siglist.c (PTR_SIZE_STR): Remove.
13864         (__old_sys_siglist, __old_sys_sigabbrev): Use strong_alias and
13865         declare_symbol.
13866         * sysdeps/mach/hurd/siglist.h (OLD_SIGLIST_SIZE_STR): Remove.
13867         (OLD_SIGLIST_SIZE): Define.
13868         * sysdeps/unix/sysv/linux/siglist.h (OLD_SIGLIST_SIZE_STR): Remove.
13869         (OLD_SIGLIST_SIZE): Define.
13870         * sysdeps/unix/sysv/linux/arm/siglist.c: Remove.
13872 2002-11-01  Jakub Jelinek  <jakub@redhat.com>
13874         * sysdeps/ia64/strncpy.S: Fix recovery code.
13876 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
13878         * include/libc-symbols.h (__libc_freeres_fn_section, libc_freeres_fn):
13879         New macros.
13880         * elf/dl-close.c (free_mem): Use libc_freeres_fn macro, remove
13881         text_set_element.
13882         * elf/dl-libc.c (free_mem): Likewise.
13883         * iconv/gconv_conf.c (free_mem): Likewise.
13884         * iconv/gconv_db.c (free_mem): Likewise.
13885         * iconv/gconv_dl.c (free_mem): Likewise.
13886         * iconv/gconv_cache.c (free_mem): Likewise.
13887         * intl/finddomain.c (free_mem): Likewise.
13888         * intl/dcigettext.c (free_mem): Likewise.
13889         * locale/setlocale.c (free_mem): Likewise.
13890         * misc/fstab.c (fstab_free): Likewise.
13891         * nss/nsswitch.c (free_mem): Likewise.
13892         * posix/regcomp.c (free_mem): Likewise.
13893         * resolv/gai_misc.c (free_res): Likewise.
13894         * stdlib/fmtmsg.c (free_mem): Likewise.
13895         * sunrpc/clnt_perr.c (free_mem): Likewise.
13896         * sysdeps/generic/setenv.c (free_mem): Likewise.
13897         * sysdeps/unix/sysv/linux/shm_open.c (freeit): Likewise.
13898         * sysdeps/pthread/aio_misc.c (free_res): Likewise.
13899         * time/tzset.c (free_mem): Likewise.
13900         * malloc/mtrace.c (release_libc_mem): Add __libc_freeres_fn_section.
13901         * locale/loadarchive.c (_nl_archive_subfreeres): Likewise.
13902         * malloc/set-freeres.c (__libc_freeres): Likewise.
13904         * login/getutent.c: Include stdlib.h instead of stddef.h.
13905         (buffer): Change into pointer to utmp, add libc_freeres_ptr.
13906         (__getutent): Allocate buffer the first time it is run.
13907         * login/getutid.c: Include stdlib.h instead of stddef.h.
13908         (buffer): Change into pointer to utmp, add libc_freeres_ptr.
13909         (__getutid): Allocate buffer the first time it is run.
13910         * login/getutline.c: Include stdlib.h instead of stddef.h.
13911         (buffer): Change into pointer to utmp, add libc_freeres_ptr.
13912         (__getutline): Allocate buffer the first time it is run.
13913         * malloc/mtrace.c (malloc_trace_buffer): Change into char *.
13914         (mtrace): Allocate malloc_trace_buffer.
13915         * resolv/nsap_addr.c (inet_nsap_ntoa): Decrease size of tmpbuf.
13916         * resolv/ns_print.c (ns_sprintrrf): Decrease size of t.
13917         * string/strerror.c: Include libintl.h and errno.h.
13918         (buf): New variable.
13919         (strerror): Only allocate buffer if actually needed (unknown error).
13920         * time/tzfile.c (transitions): Add libc_freeres_ptr.
13921         (freeres): Remove.
13923 2002-10-25  Jakub Jelinek  <jakub@redhat.com>
13925         * include/libc-symbols.h (libc_freeres_ptr): New macro.
13926         * malloc/set-freeres.c (__libc_freeres_ptrs): Define using
13927         symbol_set_define.
13928         (__libc_freeres): Free all pointers in that section.
13929         * Makerules (build-shlib): Add $(LDSEDCMD-$(@F:lib%.so=%).so) to sed
13930         commands when creating .lds script.
13931         (LDSEDCMD-c.so): New variable.
13932         * inet/rcmd.c (ahostbuf): Change into char *.  Add libc_freeres_ptr.
13933         (rcmd_af): Use strdup to allocate ahostbuf.
13934         * inet/rexec.c (ahostbuf): Change into char *.  Add libc_freeres_ptr.
13935         (rexec_af): Use strdup to allocate ahostbuf.
13936         * stdio-common/reg-printf.c (printf_funcs): Remove.
13937         (__printf_arginfo_table): Change into printf_arginfo_function **.
13938         Add libc_freeres_ptr.
13939         (__register_printf_function): Allocate __printf_arginfo_table
13940         and __printf_function_table the first time it is called.
13941         * stdio-common/printf-parse.h (__printf_arginfo_table): Change into
13942         printf_arginfo_function **.
13943         (parse_one_spec): Add __builtin_expect.
13944         * grp/fgetgrent.c (buffer): Add libc_freeres_ptr.
13945         (free_mem): Remove.
13946         * inet/getnetgrent.c (buffer): Add libc_freeres_ptr.
13947         (free_mem): Remove.
13948         * intl/localealias.c (libc_freeres_ptr): Define if !_LIBC.
13949         (string_space, map): Add libc_freeres_ptr.
13950         (free_mem): Remove.
13951         * misc/efgcvt.c (FCVT_BUFPTR): Add libc_freeres_ptr.
13952         (free_mem): Remove.
13953         * misc/mntent.c (getmntent_buffer): Add libc_freeres_ptr.
13954         (free_mem): Remove.
13955         * crypt/md5-crypt.c (libc_freeres_ptr): Define if !_LIBC.
13956         (buffer): Add libc_freeres_ptr.
13957         (free_mem): Remove for _LIBC.
13958         * nss/getXXbyYY.c (buffer): Add libc_freeres_ptr.
13959         (free_mem): Remove.
13960         * nss/getXXent.c (buffer): Add libc_freeres_ptr.
13961         (free_mem): Remove.
13962         * pwd/fgetpwent.c (buffer): Add libc_freeres_ptr.
13963         (free_mem): Remove.
13964         * resolv/res_hconf.c (ifaddrs): Add libc_freeres_ptr.
13965         (free_mem): Remove.
13966         * shadow/fgetspent.c (buffer): Add libc_freeres_ptr.
13967         (free_mem): Remove.
13968         * sysdeps/posix/ttyname.c (getttyname_name): Add libc_freeres_ptr.
13969         (free_mem): Remove.
13970         * sysdeps/unix/sysv/linux/getsysstats.c (mount_proc): Add
13971         libc_freeres_ptr.
13972         (free_mem): Remove.
13973         * sysdeps/unix/sysv/linux/ttyname.c (getttyname_name, ttyname_buf): Add
13974         libc_freeres_ptr.
13975         (free_mem): Remove.
13977 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
13979         * malloc/obstack.c [_LIBC] (obstack_free): Change into strong_alias
13980         instead of duplicating the whole function in libc.
13982 2002-10-31  Roland McGrath  <roland@redhat.com>
13984         * sysdeps/i386/bits/byteswap.h [__GNUC__ < 2] (__bswap_32):
13985         Renamed from __bswap_16 (typo fix).  Reported by <dens@stl.sarov.ru>.
13987 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
13989         * sysdeps/unix/sysv/linux/Makefile (syscall-%.h): Add -D for each
13990         32bit-predefine when creating .new32 list and -U for each
13991         32bit-predefine when creating .new64 list.
13992         * sysdeps/unix/sysv/linux/x86_64/Makefile (32bit-predefine): New.
13994 2002-10-29  Andreas Schwab  <schwab@suse.de>
13996         * sysdeps/generic/allocrtsig.c: Include <testrtsig.h>, not
13997         "testrtsig.h".  Reported by Daniel Jacobowitz <dan@debian.org>.
13999 2002-10-25  Roland McGrath  <roland@redhat.com>
14001         * sysdeps/unix/sysv/linux/configure.in: Fix typo in last change.
14002         * sysdeps/unix/sysv/linux/configure: Regenerated.
14004         * sysdeps/generic/ldsodefs.h: Remove [! SHARED] conditional from
14005         _dl_starting_up decl.
14007 2002-10-20  H.J. Lu  <hjl@gnu.org>
14009         * sysdeps/unix/sysv/linux/configure.in: Don't check
14010         /lib/modules/`uname -r`/build/include for kernel headers if
14011         cross compiling.
14012         * sysdeps/unix/sysv/linux/configure: Regenerated.
14014 2002-10-25  Roland McGrath  <roland@redhat.com>
14016         * math/math.h (M_LOG2El): Correct the value.
14017         From Stephen L Moshier <steve@moshier.net>.
14019         * sysdeps/unix/sysv/linux/init-first.c (init): Remove [! SHARED]
14020         conditional from __libc_multiple_libcs access.  Remove kludge for weak
14021         symbol access with old compilers we no longer support.
14022         * sysdeps/unix/sysv/aix/init-first.c (init): Likewise.
14023         * sysdeps/generic/libc-start.c (__libc_start_main): Likewise.
14025 2002-10-25  Roland McGrath  <roland@redhat.com>
14027         * sysdeps/posix/sigvec.c [SA_RESETHAND]: Disable wrapper hacks and
14028         implement SV_RESETHAND by translating it to SA_RESETHAND.
14030 2002-10-23  Alexandre Oliva  <aoliva@redhat.com>
14032         * elf/dl-reloc.c (_dl_reloc_bad_use): Print the full 32-bit relocation
14033         type on ELF64 platforms.
14035 2002-10-24  Ulrich Drepper  <drepper@redhat.com>
14037         * elf/elf.h (R_X86_64_GOTTPOFF): Renamed from r_x86_64_GOTTPOFF.
14039         * elf/elf.h: Define ELF_NOTE_OS_FREEBSD and NT_TASKSTRUCT.
14041 2002-10-24  Jakub Jelinek  <jakub@redhat.com>
14043         * elf/dl-misc.c: Include <sysdep.h>.
14044         (_dl_debug_vdprintf): Only take dl_load_lock if not _dl_starting_up.
14046         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (INTERNAL_SYSCALL,
14047         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
14048         (INLINE_SYSCALL): Use that.
14049         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (INTERNAL_SYSCALL,
14050         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
14051         (INLINE_SYSCALL): Use that.
14052         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (INTERNAL_SYSCALL,
14053         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
14054         (INLINE_SYSCALL): Use that.
14055         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Include
14056         dl-sysdep.h.
14057         (SYSCALL_ERROR_HANDLER): Define RTLD_PRIVATE_ERRNO variant.
14058         (__INTERNAL_SYSCALL_STRING): Define.
14059         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h: Include
14060         dl-sysdep.h.
14061         (SYSCALL_ERROR_HANDLER): Define RTLD_PRIVATE_ERRNO variant.
14062         (__INTERNAL_SYSCALL_STRING): Define.
14063         * sysdeps/unix/sysv/linux/sparc/sysdep.h (INLINE_SYSCALL): Pass
14064         __SYSCALL_STRING to inline_syscall*.
14065         (INTERNAL_SYSCALL, INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO):
14066         New macros.
14067         (inline_syscall0, inline_syscall1, inline_syscall2, inline_syscall3,
14068         inline_syscall4, inline_syscall5, inline_syscall6): Add string
14069         argument.
14071 2002-10-24  Roland McGrath  <roland@redhat.com>
14073         * sysdeps/generic/ldsodefs.h (_dl_starting_up): Declare it here.
14074         * sysdeps/unix/sysv/linux/init-first.c: Not here.
14075         * sysdeps/powerpc/elf/libc-start.c: Or here.
14076         * sysdeps/unix/sysv/aix/libc-start.c: Or here.
14077         * sysdeps/unix/sysv/aix/start-libc.c: Or here.
14078         * sysdeps/unix/sysv/aix/init-first.c: Or here.
14079         * sysdeps/generic/libc-start.c: Or here.
14080         * sysdeps/unix/sysv/linux/init-first.c (init): Protect _dl_starting_up
14081         access with [! SHARED].
14082         * sysdeps/unix/sysv/aix/init-first.c (init): Likewise.
14084         * libio/bug-wfflush.c: New file.
14085         * libio/Makefile (tests): Add bug-wfflush.
14087 2002-10-23  Roland McGrath  <roland@redhat.com>
14089         * stdio-common/tst-fphex.c: New file.
14090         * stdio-common/Makefile (tests): Add tst-fphex.
14091         * sysdeps/generic/printf_fphex.c (__printf_fphex): Fix initialization
14092         of WNUMEND.  Fix counting of decimal point in WIDTH.  Print '0' pad
14093         chars always before the value digits.
14094         Reported by James Antill <james.antill@redhat.com>.
14096 2002-10-24  Jakub Jelinek  <jakub@redhat.com>
14098         * posix/regcomp.c (re_comp): Call __regfree on re_comp_buf.
14099         (free_mem): New function.
14100         * posix/Makefile (tests): Add bug-regex14.  Add bug-regex14-mem
14101         if not cross compiling.
14102         (generated): Add bug-regex14-mem and bug-regex14.mtrace.
14103         (bug-regex14-ENV): Set.
14104         (bug-regex14-mem): New target.
14105         * posix/bug-regex14.c: New file.
14107 2002-10-23  Roland McGrath  <roland@redhat.com>
14109         * elf/Makefile ($(objpfx)librtld.map): Use temporary file for output
14110         target, so we don't touch it when the link fails.
14112         * libio/ftello.c (ftello): Use _IO_off64_t for type of POS.
14113         Check for the result overflowing off_t and fail with EOVERFLOW.
14114         * libio/ioftell.c (_IO_ftell): Likewise.
14115         * libio/iofgetpos.c (_IO_new_fgetpos): Likewise.
14117         * login/logwtmp.c (logwtmp): If sizeof ut_tv != sizeof struct timeval,
14118         use a temporary timeval on the stack for gettimeofday and copy it.
14119         * login/logout.c (logout): Likewise.
14120         Reported by Steven Munroe <sjmunroe@us.ibm.com>.
14122         * sysdeps/unix/sysv/linux/bits/statfs.h (struct statfs):
14123         Use __SWORD_TYPE instead of int for member types.
14124         (struct statfs64): Likewise.
14125         * sysdeps/unix/sysv/linux/alpha/bits/statfs.h: New file.
14126         * sysdeps/unix/sysv/linux/s390/bits/statfs.h: New file.
14127         * sysdeps/unix/sysv/linux/ia64/bits/statfs.h: File removed.
14128         * sysdeps/unix/sysv/linux/sparc/bits/statfs.h: File removed.
14129         * sysdeps/unix/sysv/linux/x86_64/bits/statfs.h: File removed.
14131         * sysdeps/unix/sysv/linux/sparc/bits/statvfs.h: Moved to ...
14132         * sysdeps/unix/sysv/linux/bits/statvfs.h: ... here.
14133         (ST_NODIRATIME): Restore fixed value of 2048.
14134         * sysdeps/unix/sysv/linux/alpha/bits/statvfs.h: File removed.
14135         * sysdeps/unix/sysv/linux/ia64/bits/statvfs.h: File removed.
14137         Rearranged <bits/types.h> definitions to reduce duplication.
14138         * sysdeps/generic/bits/types.h: Rewritten, using macros from
14139         <bits/wordsize.h> and new header <bits/typesizes.h>.
14140         * posix/Makefile (headers): Add bits/typesizes.h here.
14141         * sysdeps/generic/bits/typesizes.h: New file.
14142         * sysdeps/unix/sysv/linux/alpha/bits/typesizes.h: New file.
14143         * sysdeps/unix/sysv/linux/sparc/bits/typesizes.h: New file.
14144         * sysdeps/mach/hurd/bits/typesizes.h: New file.
14145         * sysdeps/unix/sysv/linux/alpha/bits/types.h: File removed.
14146         * sysdeps/unix/sysv/linux/bits/types.h: File removed.
14147         * sysdeps/unix/sysv/linux/ia64/bits/types.h: File removed.
14148         * sysdeps/unix/sysv/linux/mips/bits/types.h: File removed.
14149         * sysdeps/unix/sysv/linux/s390/bits/types.h: File removed.
14150         * sysdeps/unix/sysv/linux/sparc/bits/types.h: File removed.
14151         * sysdeps/unix/sysv/linux/x86_64/bits/types.h: File removed.
14152         * posix/sys/types.h [__USE_POSIX199506 || __USE_UNIX98]: Include
14153         <bits/pthreadtypes.h> here, not in <bits/types.h>.
14154         * signal/signal.h: Likewise.
14156         * streams/stropts.h: Include <bits/xtitypes.h>.
14157         * streams/Makefile (headers): Add bits/xtitypes.h here.
14158         * sysdeps/generic/bits/xtitypes.h: New file.
14159         * sysdeps/s390/bits/xtitypes.h: New file.
14160         * sysdeps/ia64/bits/xtitypes.h: New file.
14161         * sysdeps/x86_64/bits/xtitypes.h: New file.
14163         * sysvipc/Makefile (headers): Add bits/ipctypes.h here.
14164         * sysdeps/generic/bits/ipctypes.h: New file.
14165         * sysdeps/mips/bits/ipctypes.h: New file.
14166         * sysdeps/gnu/bits/shm.h: Include <bits/ipctypes.h>.
14167         * sysdeps/gnu/bits/msq.h: Likewise.
14168         * sysvipc/sys/ipc.h: Likewise.
14170 2002-10-22  Ulrich Drepper  <drepper@redhat.com>
14172         * elf/dl-load.c (struct filebuf): For buf element to have the
14173         alignment of ElfXX_Ehdr since this is what will be stored in it.
14175 2002-10-22  Jakub Jelinek  <jakub@redhat.com>
14177         * locale/programs/locarchive.c (add_alias): Change locrec_offset arg
14178         into pointer to locrec_offset.
14179         (add_locale_to_archive): Adjust callers.  Free normalized_name right
14180         before returning, not immediately after add_locale, pass it to
14181         add_alias if not NULL instead of name.  Rename second normalized_name
14182         occurence to nnormalized_codeset_name.
14184         * locale/programs/locarchive.c (enlarge_archive): Make sure
14185         string_size is always a multiple of 4.
14186         Reported by Andreas Schwab <schwab@suse.de>.
14188 2002-10-21  Andreas Schwab  <schwab@suse.de>
14190         * sysdeps/unix/sysv/linux/ia64/syscalls.list (s_execve): Set
14191         caller to EXTRA instead of execve, since the latter has a
14192         higher-priority implementation in linuxthreads.
14194 2002-10-21  Roland McGrath  <roland@redhat.com>
14196         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Initialize the static
14197         slotinfo list's len member to the proper size, not just 1.
14198         Initialize static_map.l_tls_initimage.
14200         * elf/dl-open.c (dl_open_worker): Fix loop searching for
14201         dtv_slotinfo_list element containing new modules' l_tls_modid.
14203         * elf/tst-tls9.c, elf/tst-tls9-static.c: New files.
14204         * elf/tst-tlsmod5.c, elf/tst-tlsmod6.c: New files.
14205         * elf/Makefile (tests): Add tst-tls9.
14206         (tests-static): Add tst-tls9-static.
14207         (tst-tls9-static-ENV): New variable.
14208         ($(objpfx)tst-tls9-static, $(objpfx)tst-tls9-static.out): New targets.
14210         * elf/dl-close.c (remove_slotinfo): Remove an assert; the number of
14211         modids used by partially loaded modules being closed can't be known.
14213 2002-10-21  Isamu Hasegawa  <isamu@yamato.ibm.com>
14215         * posix/Makefile: Add a test case for the bug reported by Aharon
14216         Robbins <arnold@skeeve.com>.
14217         * posix/bug-regex13.c: New file.
14218         * posix/regcomp.c (peek_token_bracket): Skip the byte already read.
14220 2002-10-21  Ulrich Drepper  <drepper@redhat.com>
14222         * csu/gmon-start.c: Pretty printing.
14224 2002-10-19  Art Haas  <ahaas@neosoft.com>
14226         * configure.in: Replace AC_CONFIG_HEADER with AC_CONFIG_HEADERS,
14227         add AC_HELP_STRING to all AC_ARG_WITH and AC_ARG_ENABLE macros,
14228         add autoconf quotes to the AC_CONFIG_AUX_DIR macro.
14229         * configure: Regenerated.
14231 2002-10-19  Roland McGrath  <roland@redhat.com>
14233         * configure.in: Call AC_CONFIG_SUBDIRS with empty argument
14234         and then set $subdirs directly, because the new Autoconf breaks
14235         compatibility in every way imaginable and insists on whining
14236         about usage that worked since the dawn of time.
14237         * configure: Regenerated.
14239         * configure: Regenerated (using Autoconf 2.54).
14240         * sysdeps/alpha/elf/configure: Likewise.
14241         * sysdeps/generic/configure: Likewise.
14242         * sysdeps/i386/elf/configure: Likewise.
14243         * sysdeps/ia64/elf/configure: Likewise.
14244         * sysdeps/mach/hurd/configure: Likewise.
14245         * sysdeps/mach/configure: Likewise.
14246         * sysdeps/unix/configure: Likewise.
14247         * sysdeps/unix/common/configure: Likewise.
14248         * sysdeps/unix/sysv/aix/configure: Likewise.
14249         * sysdeps/unix/sysv/linux/configure: Likewise.
14250         * sysdeps/unix/sysv/linux/mips/configure: Likewise.
14251         * sysdeps/x86_64/elf/configure: Likewise.
14253         * config.make.in: Nix completely-soft nonsense.
14254         * configure.in: Likewise.  Under --without-fp, use nofpu subdirectory
14255         of machine directories instead of fpu subdirectory.
14256         * sysdeps/powerpc/soft-fp/Makefile: Remove cruft added in last change.
14257         * sysdeps/powerpc/nofpu/Makefile: Put it in this new file instead.
14258         * sysdeps/powerpc/soft-fp/sim-full.c: Moved to ...
14259         * sysdeps/powerpc/nofpu/sim-full.c: ... here.
14260         * sysdeps/powerpc/soft-fp/fraiseexcpt.c: Moved to ...
14261         * sysdeps/powerpc/nofpu/fraiseexcpt.c: ... here.
14262         * sysdeps/powerpc/soft-fp/fegetexcept.c: Moved to ...
14263         * sysdeps/powerpc/nofpu/fegetexcept.c: ... here.
14264         * sysdeps/powerpc/soft-fp/fclrexcpt.c: Moved to ...
14265         * sysdeps/powerpc/nofpu/fclrexcpt.c: ... here.
14266         * sysdeps/powerpc/soft-fp/ftestexcept.c: Moved to ...
14267         * sysdeps/powerpc/nofpu/ftestexcept.c: ... here.
14268         * sysdeps/powerpc/soft-fp/fgetexcptflg.c: Moved to ...
14269         * sysdeps/powerpc/nofpu/fgetexcptflg.c: ... here.
14270         * sysdeps/powerpc/soft-fp/fsetexcptflg.c: Moved to ...
14271         * sysdeps/powerpc/nofpu/fsetexcptflg.c: ... here.
14272         * sysdeps/powerpc/soft-fp/fedisblxcpt.c: Moved to ...
14273         * sysdeps/powerpc/nofpu/fedisblxcpt.c: ... here.
14274         * sysdeps/powerpc/soft-fp/feenablxcpt.c: Moved to ...
14275         * sysdeps/powerpc/nofpu/feenablxcpt.c: ... here.
14276         * sysdeps/powerpc/soft-fp/fegetenv.c: Moved to ...
14277         * sysdeps/powerpc/nofpu/fegetenv.c: ... here.
14278         * sysdeps/powerpc/soft-fp/fesetenv.c: Moved to ...
14279         * sysdeps/powerpc/nofpu/fesetenv.c: ... here.
14280         * sysdeps/powerpc/soft-fp/fegetround.c: Moved to ...
14281         * sysdeps/powerpc/nofpu/fegetround.c: ... here.
14282         * sysdeps/powerpc/soft-fp/fesetround.c: Moved to ...
14283         * sysdeps/powerpc/nofpu/fesetround.c: ... here.
14284         * sysdeps/powerpc/soft-fp/feupdateenv.c: Moved to ...
14285         * sysdeps/powerpc/nofpu/feupdateenv.c: ... here.
14286         * sysdeps/powerpc/soft-fp/feholdexcpt.c: Moved to ...
14287         * sysdeps/powerpc/nofpu/feholdexcpt.c: ... here.
14288         * sysdeps/powerpc/soft-fp/fenv_const.c: Moved to ...
14289         * sysdeps/powerpc/nofpu/fenv_const.c: ... here.
14290         * sysdeps/powerpc/soft-fp/libm-test-ulps: Moved to ...
14291         * sysdeps/powerpc/nofpu/libm-test-ulps: ... here.
14292         * sysdeps/powerpc/soft-fp/soft-supp.h: Moved to ...
14293         * sysdeps/powerpc/nofpu/soft-supp.h: ... here.
14294         * sysdeps/powerpc/soft-fp/Versions (libc: GLIBC_2.3.2): Moved to ...
14295         * sysdeps/powerpc/nofpu/Versions: ... here, new file.
14297 2002-10-19  Bruno Haible  <bruno@clisp.org>
14299         * sysdeps/unix/bsd/bsd4.4/freebsd/sys/sysmacros.h: New file.
14301 2002-10-18  Roland McGrath  <roland@redhat.com>
14303         * io/Makefile (routines): Add lchmod.
14304         * io/sys/stat.h [__USE_BSD] (lchmod): Declare it.
14305         * sysdeps/generic/lchmod.c: New file.
14306         * sysdeps/mach/hurd/lchmod.c: New file.
14307         * io/Versions (libc: GLIBC_2.3.2): New set, add lchmod.
14309 2002-10-18  Art Haas  <ahaas@neosoft.com>
14311         * configure.in: Remove remaining AC_FD_CC macros, and replace
14312         AC_FD_MSG with AS_MESSAGE_FD.
14314 2002-10-18  Roland McGrath  <roland@redhat.com>
14316         * sysdeps/powerpc/powerpc32/dl-machine.c (__process_machine_rela): Fix
14317         typos: VALUE -> FINALADDR.
14319         * sysdeps/unix/alpha/sysdep.h (INLINE_SYSCALL, INLINE_SYSCALL1)
14320         (inline_syscall_clobbers, inline_syscall0, inline_syscall1)
14321         (inline_syscall2, inline_syscall3, inline_syscall4, inline_syscall5)
14322         (inline_syscall6): Move these macros ...
14323         * sysdeps/unix/sysv/linux/alpha/sysdep.h: ... to here.
14325         * configure.in (libc_link_dests, libc_link_sources): Remove these
14326         variables and the AC_LINK_FILES call.
14328         * sysdeps/powerpc/soft-fp/Versions (libc: GLIBC_2.3.2): Fix last
14329         change to put new symbols here instead of in GLIBC_2.2.
14330         * sysdeps/powerpc/Subdirs: Move this file ...
14331         * sysdeps/powerpc/soft-fp/Subdirs: ... here.
14333 2002-10-07  Roland McGrath  <roland@redhat.com>
14335         * sysdeps/generic/bits/time.h: Replaced with contents of the
14336         sysdeps/unix/sysv/linux/i386/bits/time.h file.  All the following
14337         files were identical except for the absence of CLOCK_THREAD_CPUTIME_ID
14338         and CLOCK_PROCESS_CPUTIME_ID in .../linux/bits/time.h; adding these
14339         macros is ok even for architectures that don't now implement them.
14340         * sysdeps/mach/hurd/bits/time.h: File removed.
14341         * sysdeps/unix/sysv/linux/bits/time.h: File removed.
14342         * sysdeps/unix/sysv/linux/i386/bits/time.h: File removed.
14343         * sysdeps/unix/sysv/linux/ia64/bits/time.h: File removed.
14344         * sysdeps/unix/sysv/linux/sparc/bits/time.h: File removed.
14345         * sysdeps/unix/sysv/linux/x86_64/bits/time.h: File removed.
14347 2002-10-18  Jeff Bailey  <jbailey@gnu.org>
14349         * configure.in: Replace obsolete AC_OUTPUT syntax with
14350         AC_CONFIG_FILES, AC_CONFIG_COMMANDS, and new-type AC_OUTPUT trio.
14352         * aclocal.m4 (GLIBC_PROVIDES): Add AC_PROVIDEs for
14353         _AS_PATH_SEPARATOR_PREPARE and _AS_TEST_PREPARE.
14355         * configure.in: Replace AC_FD_CC with AS_MESSAGE_LOG_FD.
14356         * sysdeps/alpha/elf/configure.in: Likewise.
14357         * sysdeps/i386/elf/configure.in: Likewise.
14358         * sysdeps/mach/hurd/configure.in: Likewise.
14359         * sysdeps/x86_64/elf/configure.in: Likewise.
14361         * configure.in: Use AC_CONFIG_SRCDIR and new AC_INIT syntax.
14363         * sysdeps/alpha/elf/configure.in: Remove unneeded sinclude statement.
14364         * sysdeps/generic/configure.in: Likewise.
14365         * sysdeps/i386/elf/configure.in: Likewise.
14366         * sysdeps/ia64/elf/configure.in: Likewise.
14367         * sysdeps/mach/configure.in: Likewise.
14368         * sysdeps/mach/hurd/configure.in: Likewise.
14369         * sysdeps/unix/configure.in: Likewise.
14370         * sysdeps/unix/common/configure.in: Likewise.
14371         * sysdeps/unix/sysv/aix/configure.in: Likewise.
14372         * sysdeps/unix/sysv/linux/configure.in: Likewise.
14373         * sysdeps/unix/sysv/linux/mips/configure.in: Likewise.
14374         * sysdeps/x86_64/elf/configure.in: Likewise.
14376         * aclocal.m4: Use just the bits from AS_INIT that are needed for the
14377         GLIBC_PROVIDES.  Use plain comment instead of HEADER-COMMENT so
14378         that it's obvious when extra autoconf machinery is being dragged in.
14380 2002-10-18  Roland McGrath  <roland@redhat.com>
14382         * configure.in: Remove bogus echo included in
14383         2002-10-08  Aldy Hernandez  <aldyh@redhat.com> change.
14384         * configure: Regenerated.
14386 2002-10-18  Jakub Jelinek  <jakub@redhat.com>
14388         * sysdeps/unix/sysv/linux/pathconf.h (statfs_link_max): Add inline.
14389         (statfs_filesize_max): New function.
14390         * sysdeps/unix/sysv/linux/linux_fsinfo.h (JFFS_SUPER_MAGIC,
14391         JFFS2_SUPER_MAGIC, JFS_SUPER_MAGIC, NTFS_SUPER_MAGIC,
14392         ROMFS_SUPER_MAGIC, UDF_SUPER_MAGIC): Define.
14393         * sysdeps/unix/sysv/linux/fpathconf.c (__fpathconf): Use
14394         statfs_filesize_max.
14395         * sysdeps/unix/sysv/linux/pathconf.c (__pathconf): Likewise.
14396         * sysdeps/unix/sysv/linux/alpha/fpathconf.c: Removed.
14397         * sysdeps/unix/sysv/linux/alpha/pathconf.c: Removed.
14399 2002-10-17  Roland McGrath  <roland@redhat.com>
14401         * configure.in (MIG): Just AC_SUBST it here.
14402         * configure: Regenerated.
14403         * sysdeps/mach/configure.in (MIG): Do the AC_CHECK_TOOL here.
14404         Adding final - argument to all AC_CHECK_HEADER uses for .defs files.
14405         * sysdeps/mach/configure: Regenerated.
14407         * aclocal.m4 (GLIBC_PROVIDES): Add AC_PROVIDE([_AS_TR_SH_PREPARE])
14408         and AC_PROVIDE([_AS_CR_PREPARE]).
14410         * aclocal.m4 (GLIBC_PROVIDES): Add AC_PROVIDE([_AS_ECHO_N_PREPARE]).
14411         Remove AC_LANG(C) call, instead just define([_AC_LANG], [C]).
14413         * elf/dl-support.c: Move _dl_tls_* variables to ...
14414         * sysdeps/generic/libc-tls.c: ... here.
14416         * elf/dl-close.c (remove_slotinfo): Take new argument.  If false,
14417         allow IDX to be one past the current last slotinfo entry.
14418         (_dl_close): Pass IMAP->l_init_called for that parameter.
14420 2002-10-07  Andreas Schwab  <schwab@suse.de>
14422         * aclocal.m4: Fix for autoconf 2.53.
14423         * configure.in: Likewise.  Require autoconf 2.53.
14425 2002-10-08  Richard Henderson  <rth@redhat.com>
14427         * soft-fp/op-4.h: Handle carry correctly in
14428         __FP_FRAC_ADD_3, __FP_FRAC_ADD_4, __FP_FRAC_SUB_3,
14429         __FP_FRAC_SUB_4, __FP_FRAC_DEC_3, __FP_FRAC_DEC_4.
14430         * soft-fp/op-common.h: New macros _FP_DIV_MEAT_N_loop.
14432 2002-10-08  Aldy Hernandez  <aldyh@redhat.com>
14434         * configure.in: Compute completely-soft.
14435         * config.make.in: Make completely-soft available to sub-makes.
14436         * sysdeps/powerpc/soft-fp/Makefile: Add gcc-single-routines and
14437         gcc-double-routines.  Add sim-full.c.  Add fenv_const and
14438         fe_nomask to libm-support.
14439         * sysdeps/powerpc/soft-fp/sim-full.c: New file.
14440         * sysdeps/powerpc/soft-fp/fraiseexcpt.c: New file.
14441         * sysdeps/powerpc/soft-fp/fegetexcept.c: New file.
14442         * sysdeps/powerpc/soft-fp/fclrexcpt.c: New file.
14443         * sysdeps/powerpc/soft-fp/ftestexcept.c: New file.
14444         * sysdeps/powerpc/soft-fp/fgetexcptflg.c: New file.
14445         * sysdeps/powerpc/soft-fp/fsetexcptflg.c: New file.
14446         * sysdeps/powerpc/soft-fp/fedisblxcpt.c: New file.
14447         * sysdeps/powerpc/soft-fp/feenablxcpt.c: New file.
14448         * sysdeps/powerpc/soft-fp/fegetenv.c: New file.
14449         * sysdeps/powerpc/soft-fp/fesetenv.c: New file.
14450         * sysdeps/powerpc/soft-fp/fegetround.c: New file.
14451         * sysdeps/powerpc/soft-fp/fesetround.c: New file.
14452         * sysdeps/powerpc/soft-fp/feupdateenv.c: New file.
14453         * sysdeps/powerpc/soft-fp/feholdexcpt.c: New file.
14454         * sysdeps/powerpc/soft-fp/fenv_const.c: New file.
14455         * sysdeps/powerpc/soft-fp/libm-test-ulps: New file.
14456         * sysdeps/powerpc/soft-fp/soft-supp.h: New file.
14457         * sysdeps/powerpc/soft-fp/Versions: Add libgcc soft-float
14458         symbols.  Add __sim_disabled_exceptions, __sim_exceptions,
14459         __sim_round_mode.
14460         * sysdeps/powerpc/soft-float/Dist: Add sim-full.c, fenv_const.c.
14461         * sysdeps/powerpc/soft-float/sfp-machine.h: Define
14462         FP_HANDLE_EXCEPTIONS.
14463         Define FP_ROUNDMODE.
14464         Redefine FP_* macros to correspond to the FE_* bit positions.
14465         Define FP_DIV_MEAT_S to _FP_DIV_MEAT_1_loop.
14466         Define externs for __sim_exceptions, __sim_disabled_exceptions,
14467         __sim_round_mode, __simulate_exceptions.
14468         * sysdeps/powerpc/fpu/bits/fenv.h: Move file from here...
14469         * sysdeps/powerpc/bits/fenv.h: ...to here.
14471 2002-10-06  Jakub Jelinek  <jakub@redhat.com>
14473         * sysdeps/powerpc/powerpc32/dl-machine.c (__process_machine_rela):
14474         Store R_PPC_UADDR32 and R_PPC_UADDR16 one byte at a time.
14475         Use __builtin_expect for R_PPC_ADDR24 overflow check.  Fix
14476         R_PPC_ADDR16, R_PPC_UADDR16 and R_PPC_ADDR14* overflow check, use
14477         __builtin_expect.
14479 2002-10-15  Jakub Jelinek  <jakub@redhat.com>
14481         * include/resolv.h (__libc_res_nquery, __libc_res_nsearch,
14482         __libc_res_nsend): New prototypes.
14483         * resolv/res_query.c (QUERYSIZE): Define.
14484         (__libc_res_nquery): Renamed from res_nquery.  Added answerp
14485         argument.  Allocate only QUERYSIZE bytes first, if res_nmkquery
14486         fails use MAXPACKET buffer.  Call __libc_res_nsend instead of
14487         res_nsend, pass answerp.
14488         (res_nquery): Changed into wrapper around __libc_res_nquery.
14489         (__libc_res_nsearch): Renamed from res_nsearch.  Added answerp
14490         argument.  Call __libc_res_nquerydomain and __libc_res_nquery
14491         instead of the non-__libc_ variants, pass them answerp.
14492         (res_nsearch): Changed into wrapper around __libc_res_nsearch.
14493         (__libc_res_nquerydomain): Renamed from res_nquerydomain.
14494         Added answerp argument.  Call __libc_res_nquery instead of
14495         res_nquery, pass answerp.
14496         (res_nquerydomain): Changed into wrapper around
14497         __libc_res_nquerydomain.
14498         * resolv/res_send.c: Include sys/ioctl.h.
14499         (MAXPACKET): Define.
14500         (send_vc): Change arguments.  Reallocate answer buffer if it is
14501         too small.
14502         (send_dg): Likewise.
14503         (__libc_res_nsend): Renamed from res_nsend.  Added ansp argument.
14504         Reallocate answer buffer if it is too small and hooks are in use.
14505         Adjust calls to send_vc and send_dg.
14506         (res_nsend): Changed into wrapper around __libc_res_nsend.
14507         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyname2_r): Allocate
14508         just 1K answer buffer on the stack, use __libc_res_nsearch instead
14509         of res_nsearch.
14510         (_nss_dns_gethostbyaddr_r): Similarly with __libc_res_nquery.
14511         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyaddr_r): Likewise.
14512         (_nss_dns_getnetbyname_r): Similarly with __libc_res_nsearch.
14513         * resolv/gethnamaddr.c (gethostbyname2): Likewise.
14514         (gethostbyaddr): Similarly with __libc_res_nquery.
14515         * resolv/Versions (libresolv): Export __libc_res_nquery and
14516         __libc_res_nsearch at GLIBC_PRIVATE.
14518 2002-10-17  Roland McGrath  <roland@redhat.com>
14520         * configure.in: Grok --without-__thread and disable HAVE___THREAD.
14521         * configure: Regenerated.
14523         * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Do CHECK_STATIC_TLS
14524         before performing the reloc, not after.
14525         * sysdeps/i386/dl-machine.h (elf_machine_rel): Likewise.
14527 2002-10-17  Ulrich Drepper  <drepper@redhat.com>
14529         * locale/programs/locale.c (write_locales): Use 'm' flag in fopen call.
14530         * locale/programs/linereader.c (lr_open): Likewise.
14531         * locale/programs/charmap-dir.c (charmap_open): Likewise.
14532         * locale/programs/locarchive.c (add_locale_to_archive): Likewise.
14534 2002-10-17  Isamu Hasegawa  <isamu@yamato.ibm.com>
14536         * posix/bug-regex11.c: Add a test case for the bug reported by
14537         Paolo Bonzini <bonzini@gnu.org>.
14538         * posix/regexec.c (sift_states_bkref): Use correct destination of
14539         the back reference.
14541 2002-10-17  Roland McGrath  <roland@redhat.com>
14543         * elf/dl-load.c (_dl_map_object_from_fd): Don't check DF_STATIC_TLS.
14544         * elf/dl-reloc.c (_dl_relocate_object: CHECK_STATIC_TLS): New macro
14545         to signal error if an IE-model TLS reloc resolved to a dlopen'd module.
14546         * sysdeps/i386/dl-machine.h (elf_machine_rel, elf_machine_rela):
14547         Call it after performing TPOFF relocs.
14548         * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Likewise.
14549         * sysdeps/sh/dl-machine.h (elf_machine_rela): Likewise.
14550         * elf/dl-conflict.c (CHECK_STATIC_TLS): New macro (no-op).
14552         * elf/dl-close.c (remove_slotinfo): Change asserts so as not to crash
14553         when closing a partially-initialized object.
14555         * elf/dl-load.c (_dl_map_object_from_fd) [! USE_TLS]: Call lose
14556         instead of _dl_fatal_printf when we see PT_TLS.
14558         * Makeconfig (CPPFLAGS): Fix last change to use $(libof-$(<F))
14559         instead of $(libof-$<).
14561 2002-10-16  Roland McGrath  <roland@redhat.com>
14563         * cppflags-iterator.mk (CPPFLAGS-$(cpp-src)): Variable removed.
14564         instead of += to append, to be sure $(lib) gets expanded at defn time.
14565         (libof-$(cpp-src)): New variable, define this instead.
14566         * extra-lib.mk (cpp-srcs-left): Reduce duplication in include setup.
14567         (lib): Don't use override.
14568         (CPPFLAGS-$(lib)): New variable, put -D's here.
14569         * Makeconfig (CPPFLAGS): Use basename fn for CPPFLAGS-basename.
14570         Also add $(CPPFLAGS-LIB) before the file-specific flags, for each
14571         LIB found by $(libof-*) for basename, target, or source.
14572         * Makerules (CPPFLAGS-nonlib): New variable.
14573         * nscd/Makefile (lib): Set to nonlib when using cppflags-iterator.mk.
14574         * locale/Makefile (lib): Likewise.
14575         * sunrpc/Makefile (lib): Likewise.
14577         * sysdeps/unix/sysv/linux/fpathconf.c (LINUX_LINK_MAX): Move macro ...
14578         * sysdeps/unix/sysv/linux/linux_fsinfo.h (LINUX_LINK_MAX): ... here.
14579         * sysdeps/unix/sysv/linux/pathconf.h: New file.
14580         (statfs_link_max): New function, guts from fpathconf.c.
14581         * sysdeps/unix/sysv/linux/fpathconf.c: Rewritten using that.
14582         * sysdeps/unix/sysv/linux/pathconf.c (__pathconf): Likewise.
14583         * sysdeps/unix/sysv/linux/alpha/pathconf.c (__pathconf): Rewritten
14584         to use the linux/pathconf.c code by #include rather than duplication.
14585         * sysdeps/unix/sysv/linux/alpha/fpathconf.c (__pathconf): Likewise.
14587 2002-10-16  Jakub Jelinek  <jakub@redhat.com>
14589         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
14590         Use __libc_errno only for libc itself.
14592 2002-10-16  Andreas Jaeger  <aj@suse.de>
14594         * sysdeps/x86_64/_mcount.S: Fix off-by-1 error in argument access.
14596 2002-10-16  Ulrich Drepper  <drepper@redhat.com>
14598         * sysdeps/unix/sysv/linux/i386/sysdep.h (SYSCALL_ERROR_HANDLER):
14599         Use __libc_errno only for libc itself.
14601 2002-10-15  Roland McGrath  <roland@redhat.com>
14602             Jakub Jelinek  <jakub@redhat.com>
14604         * sysdeps/unix/sysv/linux/Makefile
14605         ($(objpfx)syscall-%.h $(objpfx)syscall-%.d): Take code from
14606         sparc/Makefile to produce a bi-arch file as needed.
14607         That's now parameterized by the variable $(64bit-predefine).
14608         Use LC_ALL=C for `comm' commands in that rule.
14609         No longer conditional on [$(no_syscall_list_h)].
14610         * sysdeps/unix/sysv/linux/sparc/Makefile: Remove replacement rules.
14611         (64bit-predefine): New variable.
14612         * sysdeps/unix/sysv/linux/x86_64/Makefile: Likewise.
14613         * sysdeps/unix/sysv/linux/s390/Makefile: New file.
14614         * sysdeps/unix/sysv/linux/powerpc/Makefile
14615         (64bit-predefine): New variable.
14617 2002-10-15  Roland McGrath  <roland@redhat.com>
14619         * sysdeps/unix/sysv/linux/Makefile
14620         ($(objpfx)syscall-%.h $(objpfx)syscall-%.d)
14622         * login/utmp-private.h: Declare __libc_utmp_lock.
14623         * sysdeps/unix/getlogin_r.c (getlogin_r): Take __libc_utmp_lock once
14624         and call __libc_utmp_jump_table functions directly, instead of using
14625         __setutent et al.
14627         * sysdeps/unix/sysv/linux/configure.in: Use case instead of if.
14628         * sysdeps/unix/sysv/linux/configure: Regenerated.
14630         * sysdeps/gnu/bits/utmp.h: Include <bits/wordsize.h>.
14631         (struct lastlog) [__WORDSIZE == 64 && __WORDSIZE_COMPAT32]:
14632         Use int32_t for ll_time.
14633         (struct utmp) [__WORDSIZE == 64 && __WORDSIZE_COMPAT32]:
14634         Use int32_t instead of long int for ut_session.
14635         Use an anonymous struct with 32-bit fields for ut_tv.
14636         * sysdeps/gnu/bits/utmpx.h: Include <bits/wordsize.h>.
14637         (struct utmpx) [__WORDSIZE == 64 && __WORDSIZE_COMPAT32]: Do the same
14638         here as in utmp.h for `struct utmp'.
14639         * sysdeps/unix/sysv/linux/powerpc/bits/utmp.h: File removed.
14640         * sysdeps/unix/sysv/linux/powerpc/bits/utmpx.h: File removed.
14641         * sysdeps/unix/sysv/linux/sparc/bits/utmp.h: File removed.
14642         * sysdeps/unix/sysv/linux/sparc/bits/utmpx.h: File removed.
14643         * sysdeps/unix/sysv/linux/x86_64/bits/utmp.h: File removed.
14644         * sysdeps/unix/sysv/linux/x86_64/bits/utmpx.h: File removed.
14646         * sysdeps/unix/sysv/linux/bits/resource.h: Replaced with the contents
14647         of the sysdeps/unix/sysv/linux/i386/bits/resource.h file.
14648         All the following files were identical or equivalent to it.
14649         * sysdeps/unix/sysv/linux/i386/bits/resource.h: File removed.
14650         * sysdeps/unix/sysv/linux/arm/bits/resource.h: File removed.
14651         * sysdeps/unix/sysv/linux/cris/bits/resource.h: File removed.
14652         * sysdeps/unix/sysv/linux/hppa/bits/resource.h: File removed.
14653         * sysdeps/unix/sysv/linux/ia64/bits/resource.h: File removed.
14654         * sysdeps/unix/sysv/linux/m68k/bits/resource.h: File removed.
14655         * sysdeps/unix/sysv/linux/powerpc/bits/resource.h: File removed.
14656         * sysdeps/unix/sysv/linux/s390/bits/resource.h: File removed.
14657         * sysdeps/unix/sysv/linux/sh/bits/resource.h: File removed.
14658         * sysdeps/unix/sysv/linux/x86_64/bits/resource.h: File removed.
14660         * sysdeps/unix/sysv/linux/bits/socket.h (struct msghdr): Use size_t
14661         instead of int for msg_iovlen, instead of socklen_t for msg_controllen.
14662         Other than the previously incorrect sign of msg_iovlen, this is a
14663         no-op on 32-bit platforms.  On 64-bit platforms it makes this header
14664         match their layouts as well, so the following are now identical to it.
14665         * sysdeps/unix/sysv/linux/s390/bits/socket.h: File removed.
14666         * sysdeps/unix/sysv/linux/sparc/bits/socket.h: File removed.
14667         * sysdeps/unix/sysv/linux/x86_64/bits/socket.h: File removed.
14668         * sysdeps/unix/sysv/linux/ia64/bits/socket.h: File removed.
14669         * sysdeps/unix/sysv/linux/alpha/bits/socket.h: File removed.
14671 2002-10-15  Ulrich Drepper  <drepper@redhat.com>
14673         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_VFORK_SYSCALL):
14674         Define for 2.4+ kernels.
14676         * sysdeps/unix/sysv/linux/i386/vfork.S: Optimize for kernels which
14677         are known to have the vfork syscall.  Don't confuse the CPUs
14678         branch prediction unit by jumping to the return address.
14680         * sysdeps/unix/sysv/linux/alpha/fpathconf.c (__fpathconf): Add
14681         support for reiserfs and xfs.
14683         * sysdeps/unix/sysv/linux/fpathconf.c (__fpathconf): Add case for
14684         XFS link count.
14685         * sysdeps/unix/sysv/linux/linux_fsinfo.h: Define XFS_SUPER_MAGIC
14686         and XFS_LINK_MAX.
14687         Patch by Eric Sandeen <sandeen@sgi.com> [PR libc/4706].
14689 2002-10-16  Jakub Jelinek  <jakub@redhat.com>
14691         * include/libc-symbols.h (attribute_tls_model_ie): Define.
14692         * include/errno.h (errno): Define to __libc_errno in libc.so.
14693         Add attribute_tls_model_ie.
14694         * include/netdb.h (h_errno): Define to __libc_h_errno in libc.so.
14695         Add attribute_tls_model_ie.
14696         * include/resolv.h (_res): Define to __libc_res in libc.so.  Add
14697         attribute_tls_model_ie.
14698         * inet/herrno.c (__libc_h_errno): Add hidden alias to h_errno.
14699         (h_errno): Define.
14700         * resolv/res_libc.c (__libc_res): Add hidden alias to _res.
14701         (_res): Define.
14702         * sysdeps/generic/bits/libc-tsd.h (__libc_tsd_define): Add
14703         attribute_tls_model_ie.
14704         * sysdeps/generic/errno-loc.c (errno): Only undefine if not using
14705         __thread.
14706         * sysdeps/generic/errno.c (__libc_errno): Add hidden alias to errno.
14707         * sysdeps/unix/sysv/linux/i386/sysdep.h (SYSCALL_ERROR_HANDLER): Use
14708         __libc_errno in USE___THREAD case.
14709         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
14710         Likewise.
14711         * configure.in (HAVE_TLS_MODEL_ATTRIBUTE): Check for
14712         __attribute__((tls_model (""))).
14713         * configure: Rebuilt.
14714         * config.h.in (HAVE_TLS_MODEL_ATTRIBUTE): Add.
14716 2002-10-15  Ulrich Drepper  <drepper@redhat.com>
14718         * timezone/asia: Update from tzdata2002d.
14719         * timezone/australasia: Likewise.
14720         * timezone/iso3166.tab: Likewise.
14721         * timezone/southamerica: Likewise.
14722         * timezone/zone-tab: Likewise.
14724 2002-10-15  Roland McGrath  <roland@redhat.com>
14726         * sysdeps/generic/dl-tls.c (_dl_deallocate_tls) [TLS_TCB_AT_TP]:
14727         Adjust TCB pointer before calling free, so we get the whole block.
14729 2002-10-14  Roland McGrath  <roland@redhat.com>
14731         * sysdeps/unix/sysv/linux/x86_64/sigaction.c
14732         [HAVE_HIDDEN && !HAVE_BROKEN_VISIBILITY_ATTRIBUTE]: Declare restore_rt
14733         extern using attribute_hidden instead of static, avoids warning.
14735 2002-10-09  Jakub Jelinek  <jakub@redhat.com>
14737         * sysdeps/unix/sysv/linux/configure.in: Use */lib64 for s390x too.
14738         * sysdeps/unix/sysv/linux/configure: Rebuilt.
14740 2002-10-14  Ulrich Drepper  <drepper@redhat.com>
14742         * po/sv.po: Update from translation team.
14744 2002-10-12  H.J. Lu  <hjl@gnu.org>
14746         * sunrpc/thrsvc.c (PROCQUIT): New.
14747         (struct rpc_arg): New.
14748         (dispatch): Call exit (0) if request->rq_proc == PROCQUIT.
14749         (test_one_call): Take struct rpc_arg * instead of CLIENT *c.
14750         (thread_wrapper): Modified for struct rpc_arg * and call PROCQUIT.
14751         (main): Modified for struct rpc_arg *.
14753 2002-10-14  Ulrich Drepper  <drepper@redhat.com>
14755         * dirent/scandir.c: Rearrange code a bit to reduce binary size.
14757 2002-10-14  Jakub Jelinek  <jakub@redhat.com>
14759         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Include tls.h.
14760         (SYSCALL_ERROR_HANDLER): Use RTLD_PRIVATE_ERRNO sequence
14761         in ld.so even if __thread is supported.
14763 2002-10-13  Jakub Jelinek  <jakub@redhat.com>
14765         * sysdeps/unix/sysv/linux/arm/profil-counter.h (profil_counter):
14766         Add hack to prevent the compiler from clobbering the signal context.
14767         * sysdeps/unix/sysv/linux/sh/profil-counter.h (profil_counter):
14768         Likewise.
14769         * sysdeps/unix/sysv/linux/x86_64/profil-counter.h (profil_counter):
14770         Likewise.
14772 2002-10-14  Andreas Jaeger  <aj@suse.de>
14774         * sysdeps/mips/fpu/libm-test-ulps: Regenerated by
14775         Guido Guenther <agx@sigxcpu.org>.
14777 2002-10-14  Ulrich Drepper  <drepper@redhat.com>
14779         * po/sk.po: Update from translation team.
14781 2002-09-26  Roland McGrath  <roland@redhat.com>
14783         * elf/dl-load.c (_dl_dst_count, _dl_dst_substitute): Handle $LIB
14784         dynamic string tag.
14785         * elf/Makefile ($(objpfx)trusted-dirs.st): Make the output define
14786         DL_DST_LIB based on $(slibdir).
14788 2002-10-13  Roland McGrath  <roland@frob.com>
14790         * elf/rtld-Rules ($(objpfx)rtld-libc.a): Use $(verbose) in ar command.
14792         * sysdeps/mach/hurd/getresuid.c: New file.
14793         * sysdeps/mach/hurd/getresgid.c: New file.
14794         * sysdeps/mach/hurd/setresuid.c: New file.
14795         * sysdeps/mach/hurd/setresgid.c: New file.
14797         * posix/unistd.h [__USE_GNU] (getresuid, getresgid, setresuid,
14798         setresgid): Declare them.
14799         * NEWS: Mention it.
14800         * include/unistd.h
14801         (__getresuid, __getresgid, __setresuid, __setresgid): Declare them,
14802         add libc_hidden_proto.
14803         * posix/Versions (libc: GLIBC_2.3.2): New set.  Add
14804         getresuid, getresgid, setresuid, setresgid here.
14805         * Versions.def (libc): Define GLIBC_2.3.2 set.
14806         * sysdeps/generic/getresuid.c (__getresuid): Fix argument types.
14807         Add libc_hidden_def.
14808         * sysdeps/generic/getresgid.c (__getresgid): Likewise.
14809         * sysdeps/generic/setresgid.c: New file.
14810         * sysdeps/generic/setresuid.c: New file.
14811         * sysdeps/unix/sysv/linux/Makefile [$(subdir) = misc]
14812         (sysdep_routines): Don't add getresuid and getresgid here.
14813         * sysdeps/unix/sysv/linux/arm/Makefile [$(subdir) = misc]
14814         (sysdep_routines): Don't add setresuid and setresgid here.
14815         * sysdeps/unix/sysv/linux/cris/Makefile: Likewise.
14816         * sysdeps/unix/sysv/linux/sh/Makefile: Likewise.
14817         * sysdeps/unix/sysv/linux/s390/s390-32/Makefile: Likewise.
14818         * sysdeps/unix/sysv/linux/s390/s390-64/Makefile: Likewise.
14819         * sysdeps/unix/sysv/linux/i386/Makefile: Likewise.
14820         * sysdeps/unix/sysv/linux/m68k/Makefile: Likewise.
14821         * posix/Makefile (routines): Add them all here instead.
14822         * sysdeps/unix/sysv/linux/i386/getresuid.c (getresuid): Renamed to
14823         __getresuid.  Add libc_hidden_def for that, and weak alias to old name.
14824         * sysdeps/unix/sysv/linux/i386/getresgid.c (getresgid): Renamed to
14825         __getresgid.  Add libc_hidden_def for that, and weak alias to old name.
14826         * sysdeps/unix/sysv/linux/i386/setresuid.c: Add libc_hidden_def.
14827         [! __NR_setresuid]: Include generic file.
14828         * sysdeps/unix/sysv/linux/i386/setresgid.c (setresgid): Renamed to
14829         __setresgid.  Add libc_hidden_def for that, and weak alias to old name.
14830         [! __NR_setresuid]: Include generic file.
14831         * sysdeps/unix/sysv/linux/syscalls.list (setresuid, setresgid):
14832         Caller is - now, not EXTRA.
14833         * sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list
14834         (setresuid, setresgid, getresuid, getresgid): Likewise.
14835         * sysdeps/unix/sysv/linux/syscalls.list (getresuid, getresgid):
14836         Add these calls here.
14837         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Remove them here.
14838         * sysdeps/unix/sysv/linux/hppa/syscalls.list: Likewise.
14839         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
14840         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
14841         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
14842         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Likewise.
14843         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Likewise.
14844         * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise.
14845         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
14847         * sysdeps/unix/sysv/linux/Makefile [$(subdir) = misc]
14848         (sysdep_routines): Add setfsuid and setfsgid here.
14849         * sysdeps/unix/sysv/linux/arm/Makefile: Not here.
14850         * sysdeps/unix/sysv/linux/sparc/sparc32/Makefile: Likewise.
14851         * sysdeps/unix/sysv/linux/cris/Makefile: Likewise.
14852         * sysdeps/unix/sysv/linux/sh/Makefile: Likewise.
14853         * sysdeps/unix/sysv/linux/s390/s390-32/Makefile: Likewise.
14854         * sysdeps/unix/sysv/linux/s390/s390-64/Makefile: Likewise.
14855         * sysdeps/unix/sysv/linux/i386/Makefile: Likewise.
14856         * sysdeps/unix/sysv/linux/m68k/Makefile: Likewise.
14858         * hurd/errno.c: Renamed to ...
14859         * hurd/errno-loc.c: ... this.
14860         * hurd/Makefile (routines): errno -> errno-loc
14862 2002-10-13  Ulrich Drepper  <drepper@redhat.com>
14864         * po/de.po: Update from translation team.
14866         * MakeTAGS: Add -E flag to xgettext runs.
14868 2002-10-12  Ulrich Drepper  <drepper@redhat.com>
14870         * po/fr.po: Update from translation team.
14872         * sysdeps/posix/system.c: Remove support for old and buggy SCO systems.
14873         Optimize a bit for use in glibc.
14875 2002-10-12  Roland McGrath  <roland@redhat.com>
14877         * stdio-common/tst-rndseek.c (TIMEOUT): Increase to 10 seconds.
14878         Some machines are slow.  Guido Guenther <agx@sigxcpu.org> has one.
14880 2002-10-12  Ulrich Drepper  <drepper@redhat.com>
14882         * po/sv.po: Update from translation team.
14884 2002-10-11  Isamu Hasegawa  <isamu@yamato.ibm.com>
14886         * posix/regcomp.c (re_compile_fastmap_iter): Remove the handling
14887         OP_CONTEXT_NODE.
14888         (regfree): Likewise.
14889         (create_initial_state): Likewise.
14890         (analyze): Remove the substitutions which became useless.
14891         (calc_first): Likewise.
14892         (calc_epsdest): Use edests of OP_BACK_REF in case that it has
14893         epsilon destination.
14894         (duplicate_node_closure): New function.
14895         (duplicate_node): Remove the handling OP_CONTEXT_NODE.
14896         (calc_inveclosure): Likewise.
14897         (calc_eclosure): Likewise.
14898         (calc_eclosure_iter): Invoke duplicate_node_closure instead of
14899         direct invocation of duplicate_node.
14900         (parse): Don't use comma operator in the return to avoid compiler
14901         warning.
14902         (parse_reg_exp): Likewise.
14903         (parse_branch): Likewise.
14904         (parse_expression): Likewise.
14905         (parse_sub_exp): Likewise.
14906         (parse_dup_op): Likewise.
14907         * posix/regex_internal.c (re_dfa_add_node): Remove the substitutions
14908         which became useless.
14909         (create_ci_newstate): Remove the handling OP_CONTEXT_NODE.
14910         (create_cd_newstate): Likewise.
14911         * posix/regex_internal.h (re_token_type_t): Remove the obsolete type.
14912         (re_token_t): Likewise.
14913         (re_dfa_t): Likewise.
14914         (re_node_set_remove): New macro.
14915         * posix/regexec.c (check_matching): Remove the handling
14916         OP_CONTEXT_NODE.
14917         (check_halt_node_context): Likewise.
14918         (proceed_next_node): Likewise.
14919         (pop_fail_stack): Fix the memory leak.
14920         (set_regs): Likewise.
14921         (free_fail_stack_return): New function.
14922         (sift_states_backward): Fix the memory leak.  Remove the handling
14923         OP_CONTEXT_NODE.
14924         (update_cur_sifted_state): Append some if clause to avoid redundant
14925         call.
14926         (sub_epsilon_src_nodes): Use IS_EPSILON_NODE since it might be a
14927         back reference.
14928         (check_dst_limits): Remove the handling OP_CONTEXT_NODE.
14929         (check_subexp_limits): Likewise.
14930         (search_subexp): Likewise.
14931         (sift_states_bkref): Likewise.
14932         (transit_state_mb): Likewise.
14933         (transit_state_bkref_loop): Likewise.
14934         (transit_state_bkref_loop): Likewise.
14935         (group_nodes_into_DFAstates): Likewise.
14936         (check_node_accept): Likewise.
14937         (sift_ctx_init): Add initializing.
14939 2002-10-12  Ulrich Drepper  <drepper@redhat.com>
14941         * sysdeps/unix/sysv/linux/i386/sysdep.h (INLINE_SYSCALL): Use
14942         __builtin_expect.
14944 2002-10-11  Ulrich Drepper  <drepper@redhat.com>
14946         * elf/dl-load.c (_dl_map_object_from_fd): Remove unnecessarily
14947         duplicated variable c.
14949         * sysdeps/unix/sysv/linux/sigwait.c (__sigwait): Use INTERNAL_SYSCALL
14950         if possible.
14952         * sysdeps/unix/sysv/linux/i386/sysdep.h
14953         (INTERNAL_SYSCALL_ERROR_P): New define.
14954         (INTERNAL_SYSCALL_ERRNO): Likewise.
14956         * sysdeps/unix/sysv/linux/i386/profil-counter.h (profil_counter):
14957         Add hack to prevent the compiler from clobbering the signal context.
14959 2002-10-11  Roland McGrath  <roland@redhat.com>
14961         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
14962         Fix typos.
14964         * sysdeps/generic/dl-lookupcfg.h: Include <tls.h>.
14965         * sysdeps/sh/dl-lookupcfg.h: File removed.
14966         * sysdeps/i386/dl-lookupcfg.h: File removed.
14968         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER): Add
14969         missing labels and ; from last change.
14971         * stdio-common/tst-sscanf.c (val_double): Append .0 to large whole
14972         number literals, so they are doubles instead of ints.
14974 2002-10-09  Roland McGrath  <roland@redhat.com>
14976         * sysdeps/generic/bits/libc-tsd.h [USE___THREAD]: Conditional
14977         changed from [USE_TLS && HAVE___THREAD].
14979         * sysdeps/i386/dl-machine.h (elf_machine_type_class, elf_machine_rel):
14980         Disable TLS relocs if [RTLD_BOOTSTRAP && !USE___THREAD].
14981         * sysdeps/x86_64/dl-machine.h
14982         (elf_machine_type_class, elf_machine_rela): Likewise.
14983         * sysdeps/sh/dl-machine.h (elf_machine_type_class, elf_machine_rela):
14984         Likewise.
14986         * include/link.h (struct link_map): Remove member l_tls_tp_initialized.
14987         * elf/rtld.c (_dl_start_final, dl_main): Don't use it.
14988         (_dl_start): Conditionalize PT_TLS check on [USE___THREAD].
14990         * sysdeps/i386/dl-tls.h (__TLS_GET_ADDR): Use ___tls_get_addr_internal
14991         instead of ___tls_get_addr.
14992         (___tls_get_addr_internal): Add attribute_hidden to decl.
14994         * sysdeps/generic/ldsodefs.h (struct rtld_global): New variable
14995         _dl_error_catch_tsd.
14996         * elf/rtld.c (startup_error_tsd): New function.
14997         (dl_main): Point _dl_error_catch_tsd at that.
14998         * elf/dl-error.c: Don't use libc-tsd.h for DL_ERROR,
14999         use new function pointer instead.
15000         * elf/dl-tsd.c: New file.
15001         * elf/Makefile (routines): Add it.
15003 2002-10-07  Roland McGrath  <roland@redhat.com>
15005         * elf/dl-misc.c (_dl_debug_vdprintf): Use INTERNAL_SYSCALL macro for
15006         writev if it's available.  Otherwise if [RTLD_PRIVATE_ERRNO] then
15007         take _dl_load_lock around calling __writev.
15009         * sysdeps/unix/sysv/linux/i386/sysdep.h (INTERNAL_SYSCALL): New macro.
15010         (INLINE_SYSCALL): Use that.
15012         * sysdeps/generic/dl-sysdep.h: New file.
15013         * sysdeps/mach/hurd/dl-sysdep.h: New file.
15014         * sysdeps/generic/ldsodefs.h: Include <dl-sysdep.h>.
15015         * include/errno.h [IS_IN_rtld]: Include <dl-sysdep.h> to define ...
15016         [RTLD_PRIVATE_ERRNO]: Use a hidden global variable for errno and
15017         access it directly.
15018         * elf/dl-minimal.c (__errno_location): Removed.
15019         * sysdeps/unix/i386/sysdep.S (__syscall_errno) [RTLD_PRIVATE_ERRNO]:
15020         Use GOTOFF access for errno.
15021         * sysdeps/unix/sysv/linux/i386/sysdep.h
15022         [RTLD_PRIVATE_ERRNO] (SYSCALL_ERROR_HANDLER): Likewise.
15024         * sysdeps/unix/x86_64/sysdep.S (__syscall_errno) [RTLD_PRIVATE_ERRNO]:
15025         Use PC-relative access for errno.
15026         * sysdeps/unix/sysv/linux/x86_64/sysdep.h
15027         [RTLD_PRIVATE_ERRNO] (SYSCALL_ERROR_HANDLER): Likewise.
15029         * include/tls.h: New file.
15030         (USE___THREAD): New macro.
15031         Define to 1 under [USE_TLS && HAVE___THREAD] and only when compiling
15032         libc or libpthread.
15033         * sysdeps/unix/sysv/linux/i386/sysdep.h [USE___THREAD]: Conditional
15034         changed from [USE_TLS && HAVE___THREAD].
15035         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
15036         * sysdeps/unix/i386/sysdep.S: Likewise.
15037         * sysdeps/unix/x86_64/sysdep.S: Likewise.
15038         * include/errno.h: Likewise.
15039         * include/netdb.h: Likewise.
15040         * include/resolv.h: Likewise.
15042         * sysdeps/generic/errno.c: New file.
15043         * csu/Makefile (aux): New variable, list errno.
15044         * sysdeps/unix/sysv/linux/i386/sysdep.S (errno, _errno): Remove defns.
15045         * sysdeps/unix/sysv/linux/m68k/sysdep.S: Likewise.
15046         * sysdeps/unix/sysv/linux/x86_64/sysdep.S: Likewise.
15047         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S: Likewise.
15048         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S: Likewise.
15049         * sysdeps/unix/sysv/linux/arm/sysdep.S: Likewise.
15050         * sysdeps/unix/sysv/linux/cris/sysdep.S: Likewise.
15051         * sysdeps/unix/sysv/linux/hppa/sysdep.c: Likewise.
15052         * sysdeps/unix/sysv/linux/ia64/sysdep.S: Likewise.
15053         * sysdeps/unix/sysv/linux/powerpc/sysdep.c: Likewise.
15054         * sysdeps/unix/sysv/linux/sparc/sysdep.S: Likewise.
15055         * sysdeps/unix/sysv/linux/sh/sysdep.S: Likewise.
15056         * sysdeps/unix/alpha/sysdep.S: Likewise.
15057         * sysdeps/generic/start.c: Likewise.
15058         * sysdeps/unix/start.c: Likewise.
15059         * sysdeps/unix/arm/start.c: Likewise.
15060         * sysdeps/unix/bsd/ultrix4/mips/start.S: Likewise.
15061         * sysdeps/unix/sparc/start.c: Likewise.
15062         * sysdeps/unix/sysv/irix4/start.c: Likewise.
15063         * sysdeps/unix/sysv/linux/mips/sysdep.S: File removed.
15065         * manual/search.texi (Tree Search Function, Hash Search Function):
15066         Mention search.h clearly.
15068 2002-10-05  Roland McGrath  <roland@redhat.com>
15070         * elf/dl-fxstat64.c: File removed.
15071         * elf/dl-xstat64.c: File removed.
15072         * elf/Makefile (rtld-routines): Remove them.
15073         * sysdeps/unix/sysv/linux/xstat64.c: Remove RTLD_STAT64 conditionals.
15074         Instead, use strong_alias instead of versioned_symbol in the
15075         !SHLIB_COMPAT case.
15076         * sysdeps/unix/sysv/linux/fxstat64.c: Likewise.
15077         * sysdeps/unix/sysv/linux/lxstat64.c: Likewise.
15079         * include/shlib-compat.h
15080         (SHLIB_COMPAT): Require that IS_IN_##lib be defined nonzero.
15081         [! NOT_IN_libc] (IS_IN_libc): Define it.
15082         * cppflags-iterator.mk (CPPFLAGS-$(cpp-src)): Use -Dx=1 not just -Dx.
15083         * elf/Makefile (CPPFLAGS-.os): Likewise.
15085         * sunrpc/rpc_main.c (main): Don't declare with noreturn attribute.
15086         Return the status instead of calling exit.
15088         * Makeconfig (CFLAGS): Prepend -std=gnu99.
15089         * Makerules (+make-deps): Use $(CFLAGS) only for .c sources.
15090         Remove superfluous rm command, whose @ plus make bugs hid
15091         all these commands from the make output.
15093         * include/stubs-prologue.h: New file.  Give #error under #ifdef _LIBC.
15094         * Makefile ($(inst_includedir)/gnu/stubs.h): Depend on it.
15095         Use that file's contents instead of literal echo's for the prologue.
15096         * include/features.h: Include <gnu/stubs.h> unconditionally.
15097         * include/gnu/stubs.h: New file.
15099 2002-09-30  Roland McGrath  <roland@redhat.com>
15101         * elf/rtld-Rules: New file.
15102         * elf/Makefile ($(objpfx)librtld.map, $(objpfx)librtld.mk,
15103         $(objpfx)rtld-libc.a): New targets.
15104         (generated): Add them.
15105         (reloc-link): Remove -o $@ from the variable.
15106         ($(objpfx)dl-allobjs.os): Add -o $@ after $(reloc-link).
15107         (distribute): Add rtld-Rules.
15108         (CPPFLAGS-.os): Define this instead of CFLAGS-.os.
15109         * Makerules ($(+sysdir_pfx)sysd-rules): Emit rules for rtld-% targets.
15110         (common-mostlyclean, common-clean): Clean up rtld-* files.
15111         * sysdeps/unix/make-syscalls.sh: Add rtld-*.os target name to rules.
15113 2003-05-20  Jakub Jelinek  <jakub@redhat.com>
15115         * elf/dynamic-link.h (elf_get_dynamic_info): Add temp argument.
15116         If temp != NULL, copy dynamic entries which need relocation to temp
15117         array before relocating.
15118         (DL_RO_DYN_TEMP_CNT): Define.
15119         * elf/dl-load.c (_dl_map_object_from_fd): Adjust caller.
15120         * elf/rtld.c (_dl_start): Likewise.
15121         (dl_main): Likewise.  Add dyn_temp static variable.
15123 2002-10-11  Roland McGrath  <roland@redhat.com>
15125         * sysdeps/generic/dl-tls.c (__tls_get_addr): After freeing block in
15126         now-unused dtv slot, reset the slot to TLS_DTV_UNALLOCATED.
15128         * elf/tls-macros.h [__x86_64__] (TLS_GD): Fix the sequence with the
15129         proper set of no-op insn prefixes.
15131         * elf/tst-tls8.c (do_test): Use %zd format for l_tls_modid members.
15133 2002-10-11  Ulrich Drepper  <drepper@redhat.com>
15135         * sysdeps/unix/sysv/linux/execve.c: Don't try calling
15136         __pthread_kill_other_threads_np.
15138         * sysdeps/generic/pselect.c: Avoid unnecessary sigprocmask calls.
15140 2002-10-08  Roland McGrath  <roland@redhat.com>
15142         * locale/newlocale.c (__newlocale): If setting all categories to "C",
15143         just return &_nl_C_locobj instead of copying it.
15144         * locale/freelocale.c (__freelocale): Check for &_nl_C_locobj.
15145         * locale/duplocale.c (__duplocale): Likewise.
15147 2002-10-07  Roland McGrath  <roland@frob.com>
15149         * config.h.in (HAVE_I386_SET_GDT): New #undef.
15150         * sysdeps/mach/configure.in: Define it with new check for i386_set_gdt.
15151         * sysdeps/mach/configure: Regenerated.
15153 2002-10-06  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
15155         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (INLINE_SYSCALL):
15156         Add all necessary register outputs for syscall-clobbered registers.
15158 2002-10-02  David Mosberger  <davidm@hpl.hp.com>
15160         * sysdeps/ia64/bzero.S: Rewritten by Sverre Jarp to tune for
15161         Itanium 2 (and Itanium).
15162         Fix unwind directives and make it fit in 80 columns.
15163         * sysdeps/ia64/memset.S: Likewise.
15164         * sysdeps/ia64/memcpy.S: Likewise.
15165         Move jump table to .rodata section.
15167 2002-10-03  Roland McGrath  <roland@frob.com>
15169         * sysdeps/mach/hurd/i386/init-first.c (_hurd_stack_setup): Add
15170         clobbers to asm.
15172 2002-10-10  Andreas Jaeger  <aj@suse.de>
15174         * sysdeps/x86_64/_mcount.S: Restore correct registers.
15176 2002-10-10  Ulrich Drepper  <drepper@redhat.com>
15178         * posix/Versions (libc) [GLIBC_PRIVATE]: Add __pselect.
15180 2002-10-09  Ulrich Drepper  <drepper@redhat.com>
15182         * sysdeps/generic/ldsodefs.h: Remove attribute_hidden from
15183         _dl_allocate_tls_init.  Add rtld_hidden_proto.
15184         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Add
15185         rtld_hidden_def.
15186         * elf/Versions (ld) [GLIBC_PRIVATE]: Add _dl_allocate_tls_init.
15188         * version.h (VERSION): Bump to 2.3.1.
15190         * Make-dist: Add back one of the tar invocations removed before.
15192         * stdlib/Makefile (distribute): Add allocalim.h.
15194         * sysdeps/generic/bits/libc-tsd.h [!(USE_TLS && HAVE___THREAD)]
15195         (__libc_tsd_address): Use correct variable name.
15196         Patch by Stefan Jones <stefan.jones@multigig.com>.
15198         * sysdeps/unix/sysv/linux/ia64/getcontext.S: Add missing ;;.
15199         Reported by edwardsg@sgi.com [PR libc/4678].
15201         * Versions.def (libc): Add GLIBC_2.3.1.
15202         (libpthread): Add GLIBC_2.3.1.
15204         * include/signal.h: Add libc_hidden_proto for __sigwait, __sigwaitinfo,
15205         and __sigtimedwait.
15206         * signal/Versions: Add __sigtimedwait, __sigwait, and __sigwaitinfo.
15207         * sysdeps/unix/sysv/linux/sigtimedwait.c (__sigtimedwait): Add
15208         libc_hidden_def.
15209         * sysdeps/unix/sysv/linux/sigwait.c (__sigwait): Likewise.
15210         * sysdeps/unix/sysv/linux/sigwaitinfo.c (__sigwaitinfo): Likewise.
15212         * include/sys/msg.h: Declare __libc_msgrcv and __libc_msgsnd.
15213         * sysdeps/unix/sysv/linux/msgrcv.c (__msgrcv): Rename to __libc_msgrcv
15214         and make old name an alias.
15215         * sysdeps/unix/sysv/linux/msgsnd.c (__msgsnd): Rename to __libc_msgsnd
15216         and make old name an alias.
15217         * sysvipc/Versions (libc) [GLIBC_PRIVATE]: Add __libc_msgrcv and
15218         __libc_msgsnd.
15220         * include/sys/uio.h: Declare __libc_readv and __libc_writev.
15221         * misc/Versions (libc) [GLIBC_PRIVATE]: Add __libc_readv and
15222         __libc_writev.
15223         * sysdeps/generic/readv.c (__readv): Rename to __libc_readv and make
15224         old name an alias.
15225         * sysdeps/posix/readv.c: Likewise
15226         * sysdeps/unix/sysv/aix/readv.c: Likewise.
15227         * sysdeps/unix/sysv/linux/readv.c: Likewise.
15228         * sysdeps/generic/writev.c (__writev): Rename to __libc_writev and make
15229         old name an alias.
15230         * sysdeps/posix/writev.c: Likewise
15231         * sysdeps/unix/sysv/aix/writev.c: Likewise.
15232         * sysdeps/unix/sysv/linux/writev.c: Likewise.
15234         * include/sys/wait.h: Declare __waitid.
15235         * posix/Versions (libc) [GLIBC_PRIVATE]: Add __waitid.
15236         * sysdeps/generic/waitid.c (waitid): Rename to __waitid and make old
15237         name an alias.
15238         * sysdeps/posix/waitid.c: Likewise.
15239         * sysdeps/unix/sysv/aix/waitid.c: Likewise.
15241         * sysdeps/unix/sysv/linux/syscalls.list: Add creat syscall.
15243 2002-10-07  Jakub Jelinek  <jakub@redhat.com>
15245         * include/alloca.h (__libc_use_alloca, __libc_alloca_cutoff): New
15246         prototypes.
15247         (__MAX_ALLOCA_CUTOFF): Define.
15248         Include allocalim.h.
15249         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyname2_r,
15250         _nss_dns_gethostbyaddr_r): Use alloca or malloc to allocate
15251         host_buffer depending on __libc_use_alloca.
15252         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyname_r,
15253         _nss_dns_getnetbyaddr_r): Use alloca or malloc to allocate
15254         net_buffer depending on __libc_use_alloca.
15255         * resolv/res_query.c (res_nquery): Use alloca or malloc to allocate
15256         buf depending on __libc_use_alloca.
15257         * resolv/gethnamaddr.c (gethostbyname2, gethostbyaddr): Likewise.
15258         * stdio-common/vfprintf.c (vfprintf): Use __libc_use_alloca
15259         instead of hardcoded constants.
15260         Pass proper size argument to alloca and compute end for wide char
15261         version.
15262         * stdio-common/printf_fp.c (__printf_fp): Use __libc_use_alloca
15263         instead of hardcoded constants.
15264         * string/strcoll.c (strcoll): Likewise.
15265         * string/strxfrm.c (strxfrm): Likewise.
15266         * sysdeps/posix/readv.c (__readv): Likewise.
15267         * sysdeps/posix/writev.c (__writev): Likewise.
15268         * sysdeps/generic/allocalim.h: New file.
15270 2002-10-08  Roland McGrath  <roland@redhat.com>
15272         * configure.in (aux_missing warning): Change "too old" to
15273         "incompatible versions", since for autoconf it's "too new" right now.
15274         * configure: Regenerated.
15276         * configure.in (AUTOCONF): New check to set it.  Set to "no" if the
15277         one found doesn't work on our configure.in.
15278         * configure: Regenerated.
15279         * config.make.in (AUTOCONF): New substituted variable.
15280         * Makefile (autoconf-it-cvs): New canned sequence, broken out of ...
15281         (autoconf-it): ... here, use that instead of defining conditionally.
15282         Use $(AUTOCONF) instead of literal autoconf.
15283         [$(AUTOCONF) != no] (configure, %/configure): Protect these rules
15284         with this condition.
15285         * Make-dist (autoconf-it, configure, %/configure): Copy those changes.
15287 2002-10-08  Ulrich Drepper  <drepper@redhat.com>
15289         * Make-dist (dist): Cleanup a bit.  We are not interested in the
15290         14 char filename limit anymore.  Remove intermediate files and
15291         symlinks.
15293 2002-10-05  Ulrich Drepper  <drepper@redhat.com>
15295         * po/sk.po: Update from translation team.
15296         * po/tr.po: Likewise.
15297         * po/gl.po: Likewise.
15299 2002-10-05  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
15301         * elf/tls-macros.h: Fix SH version of macros so as to match ABI syntax.
15303 2002-10-03  Ulrich Drepper  <drepper@redhat.com>
15305         * version.h (RELEASE): Change to stable.
15307 2002-10-03  Jakub Jelinek  <jakub@redhat.com>
15309         * sysdeps/unix/sysv/linux/_exit.c (__syscall_exit,
15310         __syscall_exit_group): New prototypes.
15312 2002-10-03  Ulrich Drepper  <drepper@redhat.com>
15314         * glibc 2.3 released.
15317 See ChangeLog.13 for earlier changes.