(BODY): Remove cast used as lvalue.
[glibc.git] / ChangeLog
blobd72c436aa64202fbfe6b273e00a940507abf52b7
1 2004-03-07  Ulrich Drepper  <drepper@redhat.com>
3         * sysdeps/generic/ldsodefs.h: Move _dl_initial_searclist,
4         _dl_hp_timing_overhead, _dl_init_all_dirs, and the content of
5         dl-procinfo.c from _rtld_global to _rtld_global_ro.
6         * elf/rtld.c: Adjust initializer for _rtld_global_ro.
7         * elf/dl-close.c: Use GLRO instead of GL where appropriate.
8         * elf/dl-libc.c: Likewise.
9         * elf/dl-load.c: Likewise.
10         * sysdeps/i386/dl-procinfo.h: Likewise.
11         * sysdeps/i386/i686/hp-timing.h: Likewise.
12         * sysdeps/ia64/hp-timing.h: Likewise.
13         * sysdeps/sparc/sparc32/sparcv9/hp-timing.h: Likewise.
14         * sysdeps/sparc/sparc64/hp-timing.h: Likewise.
15         * sysdeps/unix/sysv/linux/arm/dl-procinfo.h: Likewise.
16         * sysdeps/unix/sysv/linux/i386/dl-procinfo.h: Likewise.
17         * sysdeps/unix/sysv/linux/sparc/sparc32/dl-procinfo.h: Likewise.
18         * sysdeps/unix/sysv/linux/sparc/sparc64/dl-procinfo.h: Likewise.
19         * string/test-string.h: Define GLRO.
21 2004-03-06  Ulrich Drepper  <drepper@redhat.com>
23         * elf/dl-lookup.c: We don't need for specialized lookup functions.
24         Combining the functionality does not slow down relocation processing,
25         it might even speed it up a little.
26         * sysdeps/generic/ldsodefs.h: Adjust prototypes for lookup function.
27         Add only one function pointer to rtlf_global_ro.
28         * elf/do-lookup.h: Replace #ifs with ifs.
29         * elf/dl-libc.c: Adjust _dl_lookup_* callers.
30         * elf/dl-reloc.c: Likewise.
31         * elf/dl-runtime.c: Likewise.
32         * elf/dl-sym.c: Likewise.
33         * elf/rtld.c: Likewise.  Adjust _rtld_global_ro initialization.
35 2004-03-06  Richard Henderson  <rth@redhat.com>
37         * sysdeps/generic/ldsodefs.h (__rtld_local_attribute__,
38         __rtld_global_attribute__): Undef after use.
39         (_rtld_local_ro): Define __rtld_local_attribute__ with just hidden
40         if available.
42         * soft-fp/quad.h (union _FP_UNION_Q): Add longs structure.
43         * sysdeps/alpha/Implies: Add alpha/soft-fp.
44         * sysdeps/alpha/soft-fp/sfp-machine.h: Rewrite for GEM interface.
45         * sysdeps/alpha/Subdirs: New file.
46         * sysdeps/alpha/soft-fp/Makefile: New file.
47         * sysdeps/alpha/soft-fp/Versions: New file.
48         * sysdeps/alpha/soft-fp/local-soft-fp.h: New file.
49         * sysdeps/alpha/soft-fp/ots_add.c: New file.
50         * sysdeps/alpha/soft-fp/ots_cmp.c: new file.
51         * sysdeps/alpha/soft-fp/ots_cmpe.c: New file.
52         * sysdeps/alpha/soft-fp/ots_cvtqux.c: New file.
53         * sysdeps/alpha/soft-fp/ots_cvtqx.c: New file.
54         * sysdeps/alpha/soft-fp/ots_cvttx.c: New file.
55         * sysdeps/alpha/soft-fp/ots_cvtxq.c: New file.
56         * sysdeps/alpha/soft-fp/ots_cvtxt.c: New file.
57         * sysdeps/alpha/soft-fp/ots_div.c: New file.
58         * sysdeps/alpha/soft-fp/ots_mul.c: New file.
59         * sysdeps/alpha/soft-fp/ots_nintxq.c: New file.
60         * sysdeps/alpha/soft-fp/ots_sub.c: New file.
62 2004-03-06  Ulrich Drepper  <drepper@redhat.com>
64         * configure.in: Recognize --enable-bind-now.
65         * elf/dynamic-link.h (elf_get_dynamic_info): Allow bind-now flags
66         in ld.so.
67         * Makerules (LDFLAGS-c.so): Add -z now if so configured.
68         * elf/Makefile ($(objpfx)ld.so): Likewise.
69         * config.make.in (bind-now): New definition.
71         * elf/dl-fini.c (_dl_fini): Combine _dl_debug_printf calls.
72         * elf/rtld.c (print_statistics): Likewise.
74         * elf/dl-open.c: No need to pass any parameter to _dl_start_profile.
75         They are the same in both places.
76         * elf/dl-profile.c: Likewise.
77         * elf/rtld.c: Likewise.
78         * sysdeps/generic/ldsodefs.h: Likewise.
79         * elf/dl-support.c: Define _dl_profile_output variable.  Initialize it.
81 2004-03-05  Ulrich Drepper  <drepper@redhat.com>
83         * elf/Versions: Remove functions which are not exported anymore.
84         * dlfcn/dlerror.c: Call ld.so functions through GLSO.
85         * dlfcn/dlinfo.c: Likewise.
86         * elf/dl-close.c: Likewise.
87         * elf/dl-libc.c: Likewise.
88         * elf/dl-open.c: Likewise.
89         * elf/dl-sym.c: Likewise.
90         * sysdeps/generic/libc-start.c: Likewise.
91         * elf/dl-debug.c: Remove *_internal definition.  Don't use INTUSE for
92         functions which are not exported anymore.
93         * elf/dl-deps.c: Likewise.
94         * elf/dl-dst.h: Likewise.
95         * elf/dl-error.c: Likewise.
96         * elf/dl-fini.c: Likewise.
97         * elf/dl-init.c: Likewise.
98         * elf/dl-load.c: Likewise.
99         * elf/dl-lookup.c: Likewise.
100         * elf/dl-misc.c: Likewise.
101         * elf/dl-profile.c: Likewise.
102         * elf/dl-profstub.c: Likewise.
103         * elf/dl-reloc.c: Likewise.
104         * elf/dl-runtime.c: Likewise.
105         * elf/dl-version.c: Likewise.
106         * elf/do-lookup.h: Likewise.
107         * include/dlfcn.h: Likewise.
108         * sysdeps/generic/dl-cache.c: Likewise.
109         * sysdeps/generic/dl-fptr.c: Likewise.
110         * sysdeps/generic/dl-origin.c: Likewise.
111         * sysdeps/generic/dl-sysdep.c: Likewise.
112         * sysdeps/generic/dl-tls.c: Likewise.
113         * sysdeps/generic/ldsodefs.h: Likewise.
114         * sysdeps/i386/dl-tls.h: Likewise.
115         * sysdeps/unix/sysv/linux/dl-origin.c: Likewise.
116         * elf/rtld.c: Likewise.  Export function though _rtld_global_ro.
118         * sysdeps/generic/ldsodefs.h (struct rtld_global): Move
119         dl_debug_fd to rtld_global_ro.
120         * elf/rtld.c: Use GLRO instead of GL for dl_debug_fd.
121         * elf/dl-misc.c: Likewise.
123         * malloc/malloc.c: Don't call exported interface in the implementation.
125         * include/wctype.h: Add libc_hidden_proto for __towctrans.
126         * wctype/towctrans.c: Add libc_hidden_def.
128         * libio/memstream.c (open_memstream): Use _IO_init with INTUSE.
130         * posix/regexec.c (transit_state): Remove unused variable
131         next_state.
133         * posix/regcomp.c (init_dfa): Use __btowc instead of btowc.
135         * sysdeps/generic/ldsodefs.h: Define new structure rtld_global_ro.
136         Declare _rtld_global_ro and _rtld_local_ro.  Move members of
137         rtld_global structure into the new one if they are modified only
138         at startup time.  Define GLRO to access _rtld_global_ro.
139         * elf/Versions: Export _rtld_global_ro.
140         * elf/dl-close.c: Use GLRO instead of GL where appropriate.
141         * elf/dl-conflict.c: Likewise.
142         * elf/dl-deps.c: Likewise.
143         * elf/dl-dst.h: Likewise.
144         * elf/dl-error.c: Likewise.
145         * elf/dl-fini.c: Likewise.
146         * elf/dl-init.c: Likewise.
147         * elf/dl-load.c: Likewise.
148         * elf/dl-lookup.c: Likewise.
149         * elf/dl-minimal.c: Likewise.
150         * elf/dl-open.c: Likewise.
151         * elf/dl-profile.c: Likewise.
152         * elf/dl-reloc.c: Likewise.
153         * elf/dl-runtime.c: Likewise.
154         * elf/dl-support.c: Likewise.
155         * elf/dl-version.c: Likewise.
156         * elf/do-lookup.h: Likewise.
157         * elf/rtld.c: Likewise.
158         * sysdeps/generic/dl-cache.c: Likewise.
159         * sysdeps/generic/dl-origin.c: Likewise.
160         * sysdeps/generic/dl-sysdep.c: Likewise.
161         * sysdeps/generic/libc-start.c: Likewise.
162         * sysdeps/generic/dl-cache.c: Likewise.
163         * sysdeps/i386/dl-machine.h: Likewise.
164         * sysdeps/i386/setfpucw.c: Likewise.
165         * sysdeps/i386/fpu/fclrexcpt.c: Likewise.
166         * sysdeps/i386/fpu/fedisblexcpt.c: Likewise.
167         * sysdeps/i386/fpu/feenablxcpt.c: Likewise.
168         * sysdeps/i386/fpu/feholdexcpt.c: Likewise.
169         * sysdeps/i386/fpu/fesetround.c: Likewise.
170         * sysdeps/i386/fpu/fsetexcptflg.c: Likewise.
171         * sysdeps/i386/fpu/ftestexcept.c: Likewise.
172         * sysdeps/unix/sysv/linux/dl-execstat.c: Likewise.
173         * sysdeps/unix/sysv/linux/dl-librecon.h: Likewise.
174         * sysdeps/unix/sysv/linux/dl-origin.c: Likewise.
175         * sysdeps/unix/sysv/linux/dl-osinfo.h: Likewise.
176         * sysdeps/unix/sysv/linux/getclktck.c: Likewise.
177         * sysdeps/unix/sysv/linux/getpagesize.c: Likewise.
178         * sysdeps/unix/sysv/linux/init-first.c: Likewise.
179         * sysdeps/unix/sysv/linux/prof-freq.c: Likewise.
180         * sysdeps/unix/sysv/linux/i386/dl-librecon.h: Likewise.
181         * sysdeps/unix/sysv/linux/i386/sigaction.h: Likewise.
182         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Likewise.
183         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Likewise.
184         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: Likewise.
185         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Likewise.
186         * sysdeps/x86_64/dl-machine.h: Likewise.
187         * sysdeps/sparc/sparc64/dl-machine.h: Likewise.
188         * sysdeps/sparc/sparc32/dl-machine.h: Likewise.
189         * sysdeps/s390/s390-64/dl-machine.h: Likewise.
190         * sysdeps/s390/s390-32/dl-machine.h: Likewise.
191         * sysdeps/powerpc/powerpc64/dl-machine.h: Likewise.
192         * sysdeps/powerpc/powerpc32/dl-machine.c: Likewise.
193         * sysdeps/m68k/dl-machine.h: Likewise.
194         * sysdeps/ia64/dl-machine.h: Likewise.
195         * sysdeps/arm/dl-machine.h: Likewise.
196         * sysdeps/alpha/dl-machine.h: Likewise.
197         * generic/dl-fptr.c: Likewise.
198         * mach/hurd/dl-sysdep.c: Likewise.
199         * unix/sysv/linux/ia64/dl-static.c: Likewise.
200         * unix/sysv/linux/ia64/getpagesize.c: Likewise.
201         * unix/sysv/linux/m68k/getpagesize.c: Likewise.
202         * unix/sysv/linux/sparc/sparc32/getpagesize.c: Likewise.
204 2004-03-04  Ulrich Drepper  <drepper@redhat.com>
206         * sysdeps/generic/ldsodefs.h: Don't define _dl_name_match_p as inline.
207         * elf/dl-misc.c: Define _dl_name_match_p here.
208         * elf/dl-open.c (check_libc_caller): Don't use _dl_name_match_p.
210         * elf/dl-open.c (dl_open_worker): Check that _dl_open is called
211         from the right place.
213 2004-01-15  Paolo Bonzini  <bonzini@gnu.org>
215         * posix/regex.h (REG_STARTEND): Define.
216         * posix/regexec.c (regexec): Check for REG_STARTEND.
218 2004-02-29  Paolo Bonzini  <bonzini@gnu.org>
220         * posix/regexec.c (transit_state): Don't handle state == NULL.
221         Move state log and backreference management...
222         (merge_state_with_log): ... to this function.
223         (find_recover_state): New function.
224         (check_matching): Use find_recover_state to get a non-NULL
225         state when an invalid state is reached.  Compute the amount
226         of initial characters to be skipped less conservatively when
227         multi-byte character sets are in use.  Do not check
228         dfa->nbackref if the state log is NULL.  Initialize err.
229         (acquire_init_state_context): Expect err to be initialized.
230         Fix spacing.
232 2004-03-05  Jakub Jelinek  <jakub@redhat.com>
234         * sysdeps/sparc/sparc32/elf/start.S: Handle PIEs.
235         * sysdeps/sparc/sparc64/elf/start.S: Likewise.
237 2004-03-04  Jakub Jelinek  <jakub@redhat.com>
239         * iconv/iconv_prog.c (process_block): Handle omit_invalid.
240         If iconv returns EILSEQ with omit_invalid, continue converting
241         and return 1 if no other errors are seen.
242         (main): Set status to EXIT_FAILURE whenever process_* returns
243         nonzero, but only stop processing further files if iy returns
244         negative value.
246 2004-03-03  Jakub Jelinek  <jakub@redhat.com>
248         * sysdeps/unix/sysv/linux/x86_64/posix_fadvise.c: New file.
249         * sysdeps/unix/sysv/linux/x86_64/posix_fadvise64.c: New file.
250         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (posix_fadvise64):
251         Remove.
252         * sysdeps/unix/sysv/linux/alpha/posix_fadvise.c: New file.
253         * sysdeps/unix/sysv/linux/alpha/posix_fadvise64.c: New file.
254         * sysdeps/unix/sysv/linux/alpha/syscalls.list (posix_fadvise64):
255         Remove.
256         * sysdeps/unix/sysv/linux/ia64/posix_fadvise.c: New file.
257         * sysdeps/unix/sysv/linux/ia64/posix_fadvise64.c: New file.
258         * sysdeps/unix/sysv/linux/ia64/syscalls.list (posix_fadvise64):
259         Remove.
260         * sysdeps/unix/sysv/linux/powerpc/powerpc64/posix_fadvise.c: New file.
261         * sysdeps/unix/sysv/linux/powerpc/powerpc64/posix_fadvise64.c: New
262         file.
263         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Removed.
264         * sysdeps/unix/sysv/linux/s390/s390-64/posix_fadvise.c: New file.
265         * sysdeps/unix/sysv/linux/s390/s390-64/posix_fadvise64.c: New file.
266         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list
267         (posix_fadvise64): Remove.
268         * sysdeps/unix/sysv/linux/sparc/sparc64/posix_fadvise.c: New file.
269         * sysdeps/unix/sysv/linux/sparc/sparc64/posix_fadvise64.c: New file.
270         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list
271         (posix_fadvise64): Remove.
273 2004-03-02  Andreas Schwab  <schwab@suse.de>
275         * sysdeps/unix/sysv/linux/powerpc/powerpc32/xstat.c: New file.
276         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fxstat.c: New file.
277         * sysdeps/unix/sysv/linux/powerpc/powerpc32/lxstat.c: New file.
279 2004-03-01  Ulrich Drepper  <drepper@redhat.com>
281         * nscd/nscd_getgr_r.c (nscd_getgr_r): Add missing initialization
282         of return value.
283         * nscd/nscd_gethst_r.c (nscd_gethst_r): Likewise.
285         * sysdeps/unix/sysv/linux/kernel-features.h: Add support for
286         __ASSUME_GETDENTS32_D_TYPE.
287         * sysdeps/unix/sysv/linux/getdents.c: For 2.6.4+ kernels use
288         getdents syscall again since it provides d_type information.
290 2004-02-29  Andreas Jaeger  <aj@suse.de>
292         * manual/install.texi (Tools for Compilation): Autoconf 2.53 is
293         required.
294         (Supported Configurations): Add x86_64-*-linux.
296 2004-02-28  Ulrich Drepper  <drepper@redhat.com>
298         * sysdeps/i386/i686/memcmp.S: Move table to .rodata.  Patch by HJ Lu.
300 2004-02-27  Jakub Jelinek  <jakub@redhat.com>
302         * elf/rtld.c (dl_main): Adjust l->l_ld of the vDSO by l->l_addr.
303         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Only set
304         GL(dl_sysinfo) if non-zero.
306         * sysdeps/unix/sysv/linux/sysconf.c: Include stdlib.h.
308 2004-02-26  Ulrich Drepper  <drepper@redhat.com>
310         * nss/getXXbyYY_r.c: Pass result also to the nscd_* function.  Don't
311         set *result here.
312         * nscd/nscd_proto.h: Add new argument for pointer to result pointer
313         to all nscd_* functions.
314         * nscd/nscd_getgr_r.c (nscd_getgr_r): Add new parameter.  Store result
315         pointer in the address provided by the new parameter if successful.
316         Otherwise store NULL.  Return zero if no entry found.
317         (__nscd_getgrnam_r, __nscd_getgrgid_r): Add new parameter and pass
318         it on.
319         * nscd/nscd_gethst_r.c (nscd_gethst_r): Add new parameter.  Store
320         result pointer in the address provided by the new parameter if
321         successful. Otherwise store NULL.  Return zero if no entry found.
322         (__nscd_gethostbyname_r, __nscd_gethostbyname2_r,
323         __nscd_gethostbyaddr_r): Add new parameter and pass it on.
324         * nscd/nscd_getpw_r.c (nscd_getpw_r): Add new parameter.  Store result
325         pointer in the address provided by the new parameter if successful.
326         Otherwise store NULL.  Return zero if no entry found.
327         (__nscd_getpwnam_r, __nscd_getpwuid_r): Add new parameter and pass
328         it on.
330 2004-02-26  Jakub Jelinek  <jakub@redhat.com>
332         * sysdeps/unix/sysv/linux/clock_settime.c (SYSDEP_SETTIME): Set
333         retval to -1 on error.
335 2004-02-26  Ulrich Drepper  <drepper@redhat.com>
337         * stdlib/canonicalize.c (__realpath): Simplify.
339         * posix/regcomp.c (parse_expression): Avoid duplication in calls
340         to build_charclass_op.
342 2004-02-26  Jakub Jelinek  <jakub@redhat.com>
344         * elf/rtld.c (dl_main): Correctly set up l_map_end and l_addr
345         in vDSO's link_map, don't assume l_addr == 0.  Set GL(dl_sysinfo)
346         from e_entry only if AT_SYSINFO not present and adjust by l_addr.
347         Take vDSO into account when inserting rtld into _dl_loaded chain.
349 2004-02-26  Ulrich Drepper  <drepper@redhat.com>
351         * sunrpc/svcauth_des.c (authdes_getucred): Removed fixed limit on
352         number of groups in the cache.  Relax the disconnect between the
353         interface of authdes_getucred and netname2user a bit.
354         * sunrpc/auth_unix.c (authunix_create_default): Don't allocate
355         huge arrays on the stack.
357         * sysdeps/unix/sysv/linux/sysconf.c (__sysconf): Use the official
358         not cancelable interfaces.
360 2004-02-24  Arnold D. Robbins  <arnold@skeeve.com>
362         * posix/regex_internal.c (build_wcs_upper_buffer): Enclose
363         `offsets_needed' label in `#ifdef _LIBC' to silence `unused label'
364         compiler warning.
366 2004-02-24  Nelson H.F. Beebe  <beebe@math.utah.edu>
368         * posix/regcomp.c (parse_expression): Add cast to (const unsigned
369         char *) in calls to `build_charclass_op'.
370         * posix/regex_internal.c (build_wcs_buffer): Add cast to char* in call
371         to `wcrtomb'.
372         * posix/regex_internal.h (bitset_not, bitset_merge, bitset_not_merge,
373         bitset_mask, re_string_char_size_a, re_string_wchar_at,
374         re_string_elem_size_at): Change to use prototypes.
375         (re_string_char_size_at, re_string_wchar_at,
376         re_string_elem_size_at): Declare as `internal_function'.
378 2004-02-25  Ulrich Drepper  <drepper@redhat.com>
380         * sysdeps/unix/sysv/linux/sysconf.c (__sysconf): Handle
381         _SC_NGROUPS_MAX.
383 2004-02-23  Jakub Jelinek  <jakub@redhat.com>
385         * wcsmbs/mbrtowc.c (__mbrtowc): Cap s + n at the end of address space.
386         * stdlib/Makefile (tests): Add testmb2.
387         (testmb2-ENV): New.
388         * stdlib/testmb2.c: New test.
390 2004-02-23  Jakub Jelinek  <jakub@redhat.com>
392         * sysdeps/posix/getaddrinfo.c (gaih_inet): If _res has not been
393         inited yet, try to init it before saving old _res.options.
394         * posix/Makefile (xtests): Add bug-ga2.
395         (generated): Add bug-ga2.mtrace and bug-ga2-mem.
396         (xtests): Depend on bug-ga2-mem.
397         ($(objpfx)bug-ga2-mem, bug-ga2-ENV): New.
398         * posix/bug-ga2.c: New test.
400 2004-02-22  Ulrich Drepper  <drepper@redhat.com>
402         * sysdeps/unix/sysv/linux/i386/posix_fadvise64.S: Pop register
403         content also in case of an overflow in the parameter.
404         Reported by Momchil Velikov <velco@fadata.bg>.
406 2004-02-21  Ulrich Drepper  <drepper@redhat.com>
408         * elf/dynamic-link.h (elf_get_dynamic_info): Recognize DF_1_NOW.
409         In ld.so, neither DT_FLAGS nor DT_FLAGS_1 must be used.
411 2004-02-21  Andreas Jaeger  <aj@suse.de>
413         * posix/bug-ga1.c: Include <string.h> for memset prototype.
415         * elf/dl-load.c (_dl_map_object_from_fd): Fix casts used as lvalue.
417         * iconv/gconv_simple.c (internal_ucs4le_loop): Remove cast used as
418         lvalue.
420 2004-02-19  Carlos O'Donell  <carlos@baldric.uwo.ca>
422         * sysdeps/generic/framestate.c [__USING_SJLJ_EXCEPTIONS__]
423         (__frame_state_for): Set frame_State_for to abort if the compiler
424         is using sjlj.
425         * sysdeps/generic/unwind-dw2.c: Allow sjlj enabled compilers to
426         build the code by removing __USING_SJLJ_EXCEPTIONS__ wrapper.
428 2004-02-20  Alexandre Oliva  <aoliva@redhat.com>
430         * resolv/Versions: Remove semicolon from the end of libresolv's
431         GLIBC_2.3.2 version block.
432         * Versions.def (libresolv): Add GLIBC_2.3.2.
434 2004-02-19  Carlos O'Donell  <carlos@baldric.uwo.ca>
436         * sysdeps/hppa/fpu/feholdexcpt.c (feholdexcept): Fix order of fp
437         status register loads.
439 2004-02-20  Thorsten Kukuk  <kukuk@suse.de>
441         * nscd/nscd.c (termination_handler): Use _exit instead of exit
443 2004-02-20  Ulrich Drepper  <drepper@redhat.com>
445         * nscd/nscd.c (main): Report fork errors.
447         * dlfcn/dlsym.c: Get ld.so loading lock before the call into ld.so.
448         * dlfcn/dlvsym.c: Likewise.
449         * elf/dl-addr.c: Get loading lock while using _dl_loaded data.
450         * elf/dl-fini.c: Likewise.
451         Patch by Shunichi Sagawa <s-sagawa@jp.fujitsu.com>.
453 2004-02-20  Jakub Jelinek  <jakub@redhat.com>
455         * sysdeps/sparc/sparc32/fpu/libm-test-ulps: Add ulps for the
456         2003-11-27 atan2 test.
458         * sysdeps/powerpc/fpu/bits/mathinline.h (lrint, lrintf): Protect
459         with #ifndef __powerpc64__.
461         * sysdeps/generic/ldsodefs.h (_dl_argv, _dl_argv_internal): If
462         DL_ARGV_NOT_RELRO defined, don't use attribute_relro.
463         * sysdeps/alpha/dl-machine.h (DL_ARGV_NOT_RELRO): Remove.
464         * sysdeps/ia64/dl-machine.h (DL_ARGV_NOT_RELRO): Remove.
465         * sysdeps/sparc/sparc32/dl-machine.h (DL_ARGV_NOT_RELRO): Remove.
466         * sysdeps/sparc/sparc64/dl-machine.h (DL_ARGV_NOT_RELRO): Remove.
467         * sysdeps/alpha/dl-sysdep.h: New file.
468         * sysdeps/ia64/dl-sysdep.h: New file.
469         * sysdeps/sparc/dl-sysdep.h: New file.
471 2004-02-19  Jakub Jelinek  <jakub@redhat.com>
473         * sysdeps/sparc/sparc32/bits/atomic.h: Add __make_section_unallocated
474         for .gnu.linkonce.b.__sparc32_atomic_locks section.
475         (__sparc32_atomic_locks): Add __sec_comment at the end of section name.
477 2004-02-19  Steven Munroe  <sjmunroe@us.ibm.com>
479         * sysdeps/generic/libc-start.c [LIBC_START_DISABLE_INLINE] (STATIC):
480         Define as static.
481         * sysdeps/powerpc/elf/libc-start.c: Define LIBC_START_DISABLE_INLINE
482         because gcc does not allow inline of functions that call setjmp.
484 2004-02-19  Steven Munroe  <sjmunroe@us.ibm.com>
486         * sysdeps/powerpc/powerpc64/Makefile: Use -finline-limit.
488 2004-02-19  Jakub Jelinek  <jakub@redhat.com>
490         * elf/rtld.c (_dl_argv): If DL_ARGV_NOT_RELRO defined, don't
491         use attribute_relro for _dl_argv.
492         * sysdeps/alpha/dl-machine.h (DL_ARGV_NOT_RELRO): Define.
493         * sysdeps/ia64/dl-machine.h (DL_ARGV_NOT_RELRO): Define.
494         * sysdeps/sparc/sparc32/dl-machine.h (DL_ARGV_NOT_RELRO): Define.
495         * sysdeps/sparc/sparc64/dl-machine.h (DL_ARGV_NOT_RELRO): Define.
497 2004-02-19  Ulrich Drepper  <drepper@redhat.com>
499         * libio/iopopen.c (_IO_new_proc_open): It's not kosher to use
500         vfork instead of fork.
501         * libio/oldiopopen.c (_IO_old_proc_open): Likewise.
503         * sysdeps/unix/clock_settime.c (clock_settime): Fix typo which
504         prevented system-dependent handling from being used.
506 2004-02-18  Carlos O'Donell  <carlos@baldric.uwo.ca>
508         * test-skeleton.c (main): If set, use environment variable
509         TIMEOUTFACTOR to scale test TIMEOUT.
511 2004-02-18  Ulrich Drepper  <drepper@redhat.com>
513         * nscd/nscd_conf.c: Include <stdio_ext.h>.
515 2004-02-16  Ulrich Drepper  <drepper@redhat.com>
517         * stdlib/test-canon.c (do_test): Test realpath(,NULL) in the loop
518         as well.
520         * stdlib/canonicalize.c (__realpath): Remove unnecessary copy
521         operations.
523         * nscd/nscd_conf.c (nscd_parse_file): Little optimization.
525 2004-02-14  Thorsten Kukuk  <kukuk@suse.de>
527         * nscd/dbg_log.c (set_logfile): Only save name of logfile,
528         don't open it.
529         (init_logfile): New function, open logfile if requested.
530         * nscd/dbg_log.h: Adjust protoype for set_logfile, add init_logfile.
531         * nscd/nscd.c (main): Call init_logfile after forking in background.
532         * nscd/nscd_conf.c (nscd_parse_file): Adjust for new set_logfile.
534 2004-02-16  Ulrich Drepper  <drepper@redhat.com>
536         * elf/rtld.c (dl_main): Don't fail execution if file named in
537         ld.so.preload is not present [BZ #18].
539         * sysdeps/posix/getaddrinfo.c (getaddrinfo): Undo unintended
540         changes in last patch.
542         * posix/regexec.c (transit_state): Fix typo in commented-out code
543         [BZ #6].
545         * sysdeps/posix/getaddrinfo.c (match_prefix): Correctly match
546         partial bytes [BZ #24].
547         * posix/Makefile (tests): Add bug-ga1.
548         * posix/bug-ga1.c: New file.
550 2004-02-13  Steven Munroe  <sjmunroe@us.ibm.com>
552         * sysdeps/powerpc/powerpc64/__longjmp-common.S: New file.
553         * sysdeps/powerpc/powerpc64/__longjmp.S [NOT_IN_libc](__longjmp):
554         Non-versioned __longjmp for rtld-__longjmp.
555         [!NOT_IN_libc](__vmx__longjmp): Add VMX reg support and define as
556         default version of __longjmp.
557         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)]
558         (__novmx__longjmp): Original version of __longjmp.
559         * sysdeps/powerpc/powerpc64/bsd-_setjmp.S [NOT_IN_libc](_setjmp):
560         Non-versioned _setjmp for rtld-_setjmp.
561         [!NOT_IN_libc](__vmx_setjmp): Branch to __vmx__sigsetjmp and define
562         as default version of _setjmp.
563         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)]
564         (__novmx_setjmp): Original version of _setjmp.
565         * sysdeps/powerpc/powerpc64/bsd-setjmp.S (__vmxsetjmp): Branch to
566         __vmx__sigsetjmp and define as default version of setjmp.
567         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)]
568         (__novmxsetjmp): Original version of setjmp.
569         * sysdeps/powerpc/powerpc64/setjmp-common.S: New file.
570         * sysdeps/powerpc/powerpc64/setjmp.S [NOT_IN_libc](__setjmp):
571         Non-versioned __sigsetjmp for rtld-setjmp.
572         [!NOT_IN_libc](__vmx__sigsetjmp): Add VMX reg support and define
573         as default version of __sigsetjmp.
574         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)]
575         (__novmx__sigsetjmp): Original version of __sigsetjmp.
577         * sysdeps/powerpc/powerpc32/__longjmp-common.S: New File
578         * sysdeps/powerpc/powerpc32/__longjmp.S [NOT_IN_libc](__longjmp):
579         Non-versioned __longjmp for rtld-__longjmp.
580         [!NOT_IN_libc](__vmx__longjmp): Add VMX reg support and define as
581         default version of __longjmp.
582         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)]
583         (__novmx__longjmp): Original version of __longjmp.
584         * sysdeps/powerpc/powerpc32/bsd-_setjmp.S [NOT_IN_libc](_setjmp):
585         Non-versioned _setjmp for rtld-_setjmp.
586         [!NOT_IN_libc](__vmx_setjmp): Branch to __vmx__sigsetjmp and define
587         as default version of _setjmp.
588         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)]
589         (__novmx_setjmp): Original version of _setjmp.
590         * sysdeps/powerpc/powerpc32/bsd-setjmp.S (__vmxsetjmp): Branch to
591         __vmx__sigsetjmp and define as default version of setjmp.
592         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)]
593         (__novmxsetjmp): Original version of setjmp.
594         * sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S: New file.
595         * sysdeps/powerpc/powerpc32/fpu/__longjmp.S [NOT_IN_libc](__longjmp):
596         Non-versioned __longjmp for rtld-__longjmp.
597         [!NOT_IN_libc](__vmx__longjmp): Add VMX reg support and define as
598         default version of __longjmp.
599         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)]
600         (__novmx__longjmp): Original version of __longjmp.
601         * sysdeps/powerpc/powerpc32/fpu/setjmp-common.S: New file.
602         * sysdeps/powerpc/powerpc32/fpu/setjmp.S [NOT_IN_libc](__setjmp):
603         Non-versioned __sigsetjmp for rtld-setjmp.
604         [!NOT_IN_libc](__vmx__sigsetjmp): Add VMX reg support and define
605         as default version of __sigsetjmp.
606         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)]
607         (__novmx__sigsetjmp): Original version of __sigsetjmp.
608         * sysdeps/powerpc/powerpc32/setjmp-common.S: New file.
609         * sysdeps/powerpc/powerpc32/setjmp.S [NOT_IN_libc](__setjmp):
610         Non-versioned __sigsetjmp for rtld-setjmp.
611         [!NOT_IN_libc](__vmx__sigsetjmp): Add VMX reg support and define
612         as default version of __sigsetjmp.
613         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)]
614         (__novmx__sigsetjmp): Original version of __sigsetjmp.
616         * sysdeps/powerpc/Dist: New File.
617         * sysdeps/powerpc/Makefile (sysdep_routines): Add novmx-longjmp.c
618         and novmx-sigjmp.c
619         * sysdeps/powerpc/Versions (libc): To GLIBC_2.3_4 add _longjmp,
620         __sigsetjmp, _setjmp, longjmp, and setjmp. To GLIBC_PRIVATE add
621         __novmx__libc_longjmp, __novmx__libc_siglongjmp, __vmx__libc_longjmp,
622         and __vmx__libc_siglongjmp.
623         * sysdeps/powerpc/bits/setjmp.h: Define JB_VRSAVE, JB_VRS, and adjust
624         JB_SIZE to add VMX regs to __jmp_buf.
625         * sysdeps/powerpc/longjmp.c: New file.
626         * sysdeps/powerpc/novmxsetjmp.h: New file.
627         * sysdeps/powerpc/novmx-longjmp.c: New file.
628         * sysdeps/powerpc/novmx-sigjmp.c: New file.
629         * sysdeps/powerpc/sigjmp.c: New file.
631 2004-02-13  Jakub Jelinek  <jakub@redhat.com>
633         * sysdeps/powerpc/powerpc64/fpu/s_llrintf.c (__lrintf, lrintf):
634         Define.
635         (__lrintl, lrintl): Remove.
636         * sysdeps/powerpc/powerpc64/fpu/s_llrint.c (__lrint): Fix a typo in
637         strong_alias spelling.
638         * sysdeps/powerpc/powerpc64/fpu/s_lrintf.S: Remove.
639         * sysdeps/powerpc/powerpc64/fpu/s_lrint.S: New file.
641 2004-02-12  Ulrich Drepper  <drepper@redhat.com>
643         * posix/getopt.h: Add some non-gcc support.  Patch by Aharon Robbins.
645 2004-02-12  Mark Brown  <bmark@us.ibm.com>
647         * sysdeps/ia64/fpu/e_fmodf.S: Added text of Intel license.
649 2004-02-12  Jakub Jelinek  <jakub@redhat.com>
651         * sysdeps/powerpc/fpu/s_lrint.c: Move to...
652         * sysdeps/powerpc/powerpc32/fpu/s_lrint.c: ... here.
653         * sysdeps/powerpc/fpu/s_llrint.c: Move to...
654         * sysdeps/powerpc/powerpc32/fpu/s_llrint.c: ... here.
655         * sysdeps/powerpc/fpu/s_llrintf.c: Move to...
656         * sysdeps/powerpc/powerpc32/fpu/s_llrintf.c: ... here.
657         * sysdeps/powerpc/powerpc64/fpu/s_llrint.c: New file.
658         * sysdeps/powerpc/powerpc64/fpu/s_lrintf.S: New file.
659         * sysdeps/powerpc/powerpc64/fpu/s_llrintf.c: New file.
661         * math/libm-test.inc (lrint_test): Add new test.
662         (llrint_test, lround_test, llround_test): Likewise.
663         * sysdeps/ieee754/ldbl-128/s_lroundl.c (__lroundl): Fix special case
664         with result taking up 48 bits.
665         * sysdeps/ieee754/ldbl-128/s_lrintl.c (__lrintl): Likewise.
666         * sysdeps/ieee754/ldbl-128/s_llroundl.c (__llroundl): Likewise.
667         * sysdeps/ieee754/ldbl-96/s_llrintl.c (__llrintl): Fix special case
668         with result taking up 31 bits.
670 2004-02-12  Ulrich Drepper  <drepper@redhat.com>
672         * locale/programs/locale.c (show_locale_vars): Don't print a value
673         for LANG if it is not set.
675 2004-02-11  Jakub Jelinek  <jakub@redhat.com>
677         * posix/regexec.c (check_node_accept_bytes): Return 0 if char_len is 0.
678         (find_collation_sequence_value): Don't look beyond end of
679         SYMB_EXTRAMB table.
680         * posix/Makefile (tests): Add bug-regex23.
681         (bug-regex23-ENV): New.
682         * posix/bug-regex23.c: New file.
684 2004-02-10  Roland McGrath  <roland@frob.com>
686         * sysdeps/mach/hurd/times.c (__times): Use union instead of cast.
687         * sysdeps/mach/hurd/sendmsg.c (__libc_sendmsg): Likewise.
689         * sysdeps/mach/hurd/configure.in: Move `retcode' check to ...
690         * sysdeps/mach/configure.in: ... here.
691         * sysdeps/mach/hurd/configure: Regenerated.
692         * sysdeps/mach/configure.in: Regenerated.
694 2004-02-10  Ulrich Drepper  <drepper@redhat.com>
696         * sysdeps/generic/setenv.c (__add_to_environ): Don't let the
697         temporary copies of the variables accumulate on the stack.
699         * stdio-common/_i18n_number.h: Finish last patch.
701 2004-02-09  Ulrich Drepper  <drepper@redhat.com>
703         * sysdeps/i386/i686/memcmp.S: New file.  Patch by HJ Lu.
705 2003-12-05  Roland McGrath  <roland@redhat.com>
707         * sysdeps/unix/sysv/linux/i386/syscalls.list: Turn vm86 into vm86old
708         for vm86@GLIBC_2.0 version.  Add new vm86@GLIBC_2.3.4.
709         * sysdeps/unix/sysv/linux/i386/Versions (libc: GLIBC_2.3.4): Add vm86.
710         * sysdeps/unix/sysv/linux/i386/sys/vm86.h: Update vm86 prototype.
712 2004-02-09  Ulrich Drepper  <drepper@redhat.com>
714         * nis/ypclnt.c: Cleanup last patch.
716 2004-02-09  Andreas Jaeger  <aj@suse.de>
718         * configure.in: Remove glibcbug creation.
719         * configure: Regenerated.
721         * sysdeps/x86_64/fpu/s_copysignf.S: Only load 4 bytes.
723 2004-02-03  Thorsten Kukuk  <kukuk@suse.de>
725         * nis/ypclnt.c (__yp_bind_client_create): New, small chunk
726         of duplicated code from __yp_bind.
727         (__yp_bind_file): New, binding dir code from __yp_bind.
728         (__yp_bind_client_create): New, ypbind code from __yp_bind.
729         (__ypclnt_call): New, make NIS query.
730         (do_ypcall): At first use cached data, then try data from
731         binding directory, after this ask ypbind for a working ypserv.
732         Based on a patch from Jeff Bastian <jmbastia@ti.com> and
733         Chris Barrera <cbarrera@ti.com>
735 2004-01-19  Roland McGrath  <roland@redhat.com>
737         * configure.in: Don't set CCVERSION.
738         * configure: Regenerated.
739         * glibcbug.in: File removed.
740         * Makefile (install-bin-script): Remove glibcbug.
741         (glibcbug): Target removed.
742         (distclean-1): Don't rm glibcbug.
743         (distribute): Remove glibcbug.in.
745 2004-02-09  Roland McGrath  <roland@redhat.com>
747         * time/tzset.c (tzset_internal): Cap hour in POSIX $TZ rule format to
748         24, not 23.
750 2004-01-29  Roland McGrath  <roland@redhat.com>
752         * io/ftwtest-sh: Use $tmp consistently, not literal /tmp.
753         Reported by Kevin P. Fleming <kpfleming@backtobasicsmgmt.com>.
755 2004-02-09  Ulrich Drepper  <drepper@redhat.com>
757         * libio/genops.c (_IO_cleanup): Do not use locking when flushing
758         the buffers.  Some thread might be using a stream.
760 2004-02-09  Andreas Jaeger  <aj@suse.de>
762         * sysdeps/x86_64/memcpy.S: Fix alignment [BZ #7].
763         Patch by Jan Beulich <jbeulich@novell.com>.
765 2004-02-09  Andreas Schwab  <schwab@suse.de>
767         * include/rpc/rpc.h: Declare thread variables with their correct type.
768         * sunrpc/clnt_perr.c: Don't cast thread variables.
769         * sunrpc/clnt_raw.c: Likewise.
770         * sunrpc/clnt_simp.c: Likewise.
771         * sunrpc/key_call.c: Likewise.
772         * sunrpc/svcauth_des.c: Likewise.
773         * sunrpc/svc.c: Likewise.
774         * sunrpc/svc_raw.c: Likewise.
775         * sunrpc/svc_simple.c: Likewise.
777 2004-02-09  Ulrich Drepper  <drepper@redhat.com>
779         * stdio-common/_i18n_number.h: Support printing localized decimal
780         point and thousand separator.
781         * wctype/wctrans.c: Add __wctrans alias.
782         * include/wctype.h: Declare __wctrans.
783         Based on a patch by Hamed Malek.
785         * sysdeps/i386/fpu/fclrexcpt.c (__feclearexcept): Don't touch bits
786         other than the status bits [BZ #10].
788 2004-02-08  Ulrich Drepper  <drepper@redhat.com>
790         Make stream locking operations really work.
791         * misc/Makefile (CFLAGS-mntent_r.c): Define.
792         * shadow/Makefile (CFLAGS-fgetspent_r.c): Define.
793         (CFLAGS-putspent.c): Define.
794         * grp/Makefile (CFLAGS-fgetgrent_r.c): Define.
795         (CFLAGS-putgrent.c): Define.
796         * pwd/Makefile (CFLAGS-fgetpwent_r.c): Define.
797         Reported by Shunichi Sagawa <s-sagawa@jp.fujitsu.com>.
799         * elf/dl-load.c (lose): Use noinline attribute instead of silly
800         alloca to prevent inlining.
801         * elf/dl-runtime.c (fixup): Likewise.
802         (profile_fixup): Likewise.
804         * stdio-common/printf_size.c: Undo parts of patch from 2000-2-11.
805         Initialize width correctly.
807 2004-02-07  Andreas Jaeger  <aj@suse.de>
809         * iconv/gconv_simple.c (ucs4le_internal_loop): Remove cast used as
810         lvalue.
811         (internal_ucs4le_loop_single): Likewise.
812         (ucs4_internal_loop): Likewise.
813         (BODY): Likewise.
814         (internal_ucs4_loop_single): Likewise.
815         * iconvdata/iso8859-1.c (BODY): Likewise.
816         * iconvdata/cp1255.c (EMIT_SHIFT_TO_INIT): Likewise.
817         * iconvdata/cp1258.c (EMIT_SHIFT_TO_INIT): Likewise.
818         * iconvdata/gb18030.c (BODY): Likewise.
819         * iconvdata/armscii-8.c (BODY): Likewise.
820         * stdlib/msort.c (msort_with_tmp): Likewise.
822         * iconv/gconv_open.c (__gconv_open): Remove conditional expression
823         as lvalue.
825 2004-02-06  Steven Munroe  <sjmunroe@us.ibm.com>
827         * sysdeps/powerpc/powerpc32/dl-machine.c: Declare __cache_line_size as
828         weak extern.
829         (__elf_machine_runtime_setup): Invalidate the instruction cache over
830         the whole range of the PLT.
832 2004-02-06  Andreas Schwab  <schwab@suse.de>
834         * posix/regcomp.c (build_range_exp): Fix off-by-one.
835         (parse_bracket_exp): Likewise.
837 2004-02-05  Ulrich Drepper  <drepper@redhat.com>
839         * sysdeps/unix/sysv/linux/powerpc/powerpc32/kernel_stat.h: Define
840         _HAVE_STAT_NSEC and _HAVE_STAT64_NSEC.  Patch by Anton Blanchard.
842 2004-02-02  Paolo Bonzini  <bonzini@gnu.org>
844         * posix/regexec.c (check_matching): Add P_MATCH_FIRST parameter.
845         (re_search_internal): Pass new parameter to check_matching.
846         (check_matching): Unless a parenthesized group is found at the
847         beginning of the regexp, advance P_MATCH_FIRST until we entered
848         a state different from the initial state.
850 2004-02-01  Ulrich Drepper  <drepper@redhat.com>
852         * math/libm-test.inc (lround_test): Add new test.
853         (llround_test): Likewise.
854         (lrint_test): Likewise.
855         (llrint_test): Likewise.
856         * sysdeps/ieee754/dbl-64/s_lround.c (__lround): Fix special case
857         with result taking up 20 bits.
858         * sysdeps/ieee754/dbl-64/s_lrint.c (__lrint): Likewise.
859         * sysdeps/ieee754/dbl-64/s_llrint.c (__llrint): Likewise..
860         * sysdeps/ieee754/ldbl-96/s_lroundl.c (__lroundl): Fix special
861         case with result taking up 31 bits.
862         * sysdeps/ieee754/ldbl-96/s_lrintl.c (__lrintl): Likewise.
864         * po/nl.po: Update from translation team.
866 2004-01-30  Andreas Schwab  <schwab@suse.de>
868         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h (ILL_BREAK,
869         FPE_DECOVF, FPE_DECDIV, FPE_DECERR, FPE_INVASC, FPE_INVDEC,
870         SEGV_PSTKOVF): Remove underscore prefix from definition.
872 2004-01-28  Paolo Bonzini  <bonzini@gnu.org>
874         Merge regex changes in gawk.
875         * posix/regcomp.c (build_range_exp) [!_LIBC]: Check validity
876         of collation elements.
877         * posix/regex.c: Include limits.h.
878         * posix/regex.h: Document REG_ECOLLATE correctly.
879         * posix/regex_internal.h [!_LIBC && !ENABLE_NLS]: Disable NLS.
881 2004-01-24  Andreas Jaeger  <aj@suse.de>
883         * malloc/obstack.h: Import gnulib version.
884         * malloc/obstack.c: Likewise.
886 2004-01-26  David Mosberger  <davidm@hpl.hp.com>
888         * elf/link.h (struct dl_phdr_info): Fix typo in comment.
889         * elf/rtld.c (dl_main): After incrementing dl_nloaded, also
890         increment dl_load_adds.
891         * elf/dl-iteratephdr.c (__dl_iterate_phdr): Replace GL(dl_load_subs)
892         with equivalent GL(dl_load_adds - GL(dl_nloaded).
893         (dl_iterate_phdr): Likewise.
894         * elf/dl-close.c (_dl_close): Delete increment of GL(dl_load_subs).
895         * elf/dl-support.c: Remove global variable _dl_load_subs.
896         * sysdeps/generic/ldsodefs.h (struct rtld_global): Remove
897         _dl_load_subs member.
899 2004-01-27  Jakub Jelinek  <jakub@redhat.com>
901         * elf/rtld.c (_dl_start_final): Don't set l_relro_* here.
902         (_dl_start): And neither here.
903         (dl_main): Set GL(dl_loaded)->l_relro_* and
904         GL(dl_rtld_map)->l_relro_*.
906 2004-01-23  David Mosberger  <davidm@hpl.hp.com>
908         * sysdeps/generic/ldsodefs.h (struct rtld_global): Add members
909         _dl_load_adds and _dl_load_subs.
910         * elf/dl-support.c (_dl_load_adds): New variable.
911         (_dl_load_subs): Likewise.
912         * elf/dl-object.c (_dl_new_object): Increment dl_load_adds.
913         * elf/dl-close.c (_dl_close): Increment dl_load_subs.
914         * elf/link.h (struct dl_phdr_info): Add members dlpi_adds and
915         dlpi_subs.
916         * include/link.h: Likewise.
917         * elf/dl-iteratephdr.c (__dl_iterate_phdr): Initialize dlpi_adds
918         and dlpi_subs members.
919         (dl_iterate_phdr): Likewise.
920         * elf/tst-dlmodcount.c: New file.
921         * elf/Makefile (distribute): Mention tst-dlmodcount.c.
922         (tests): If build-shared, mention tst-dlmodcount.
923         ($(objpfx)tst-dlmodcount): If build-shared, build and
924         run tst-dlmodcount.
926 2004-01-22  Jakub Jelinek  <jakub@redhat.com>
928         * elf/dl-reloc.c (_dl_relocate_object): Move PT_GNU_RELRO protection
929         into...
930         (_dl_protect_relro): New routine.
931         * sysdeps/generic/ldsodefs.h (_dl_protect_relro): New prototype.
932         * elf/rtld.c (_dl_start_final): Copy l_relro_addr and l_relro_size
933         from bootstrap_map.
934         (_dl_main): Don't set GL(_dl_loaded)->l_relro_{addr,size} here.
935         Call _dl_protect_relro for libraries if prelinking.
937 2004-01-23  Richard Henderson  <rth@redhat.com>
939         * Versions.def (libm): Replace GLIBC_2.3.3 with GLIBC_2.3.4.
940         * sysdeps/alpha/fpu/Versions (libm): Likewise.
941         * sysdeps/alpha/fpu/cfloat-compat.h (cfloat_versions): Likewise.
942         * sysdeps/alpha/fpu/s_clog10f.c (clog10f): Likewise.
944 2004-01-22  Andreas Jaeger  <aj@suse.de>
946         * sysdeps/ieee754/dbl-64/e_pow.c (log2): Rename to my_log2 to
947         avoid warnings for builtin function log2.
949         * sysdeps/unix/sysv/linux/x86_64/setcontext.S: Add proper unwind
950         information.
952 2004-01-20  Ulrich Drepper  <drepper@redhat.com>
954         * sysdeps/unix/sysv/linux/sys/epoll.h: Add EPOLLONESHOT.
955         * sysdeps/unix/sysv/linux/x86_64/sys/epoll.h: Likewise.
956         Patch by Davide Libenzi.
958         * sysdeps/unix/sysv/linux/kernel-features.h: Define
959         __ASSUME_NO_CLONE_DETACHED for 2.6.2+ kernels.
961         * catgets/Makefile ($(objpfx)de.msg): Run sed in C locale.
963         * sysdeps/unix/sysv/linux/readahead.c (__readahead): Use off64_t
964         instead of loff_t.  Include <fcntl.h>.
965         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Add readahead prototype.
966         * sysdeps/unix/sysv/linux/arm/bits/fcntl.h: Likewise.
967         * sysdeps/unix/sysv/linux/cris/bits/fcntl.h: Likewise.
968         * sysdeps/unix/sysv/linux/hppa/bits/fcntl.h: Likewise.
969         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise.
970         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
971         * sysdeps/unix/sysv/linux/m68k/bits/fcntl.h: Likewise.
972         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
973         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
974         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
975         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise.
976         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
978         * elf/dl-load.c: Don't add attribute_relro to max_dirnamelen.
980         * sysdeps/generic/inttypes.h: Fix PRI*FAST{16,32} macros.
982 2003-12-31  Bruno Haible  <bruno@clisp.org>
984         * iconvdata/iso_6937-2.c (to_ucs4): Map 0x7E to U+007E, not U+203E.
985         Map 0xA6 to U+0023. Map 0xA8 to U+00A4.
986         (to_ucs4_comb): Map 0xC5 0x20 to U+00AF.
987         (from_ucs4): Map U+00ED to 0xC2 0x69, not 0xC2 0xE9.
988         (BODY for TO_LOOP): Don't map U+02DC. Map U+02DD to 0xCD 0x20, not
989         0x00 0x20. Don't map U+2500..U+25E3.
991 2004-01-19  Jakub Jelinek  <jakub@redhat.com>
993         * posix/regexec.c (get_subexp): Remove bkref_str variable.
994         Extend buffers if needed before comparisons.
995         (get_subexp_sub): Handle clean_state_log_if_needed failure.
997 2004-01-17  Ulrich Drepper  <drepper@redhat.com>
999         * sysdeps/i386/i486/bits/atomic.h (atomic_add): Fix test for using
1000         atomic_decrement.  Patch by Davin McCall.
1002 2004-01-13  Daniel Jacobowitz  <drow@mvista.com>
1004         * sysdeps/powerpc/nofpu/sim-full.c (__sim_exceptions)
1005         (__sim_disabled_exceptions, __sim_round_mode): Declare with
1006         hidden data and nocommon.
1007         * sysdeps/powerpc/nofpu/soft-supp.h (__sim_exceptions)
1008         (__sim_disabled_exceptions, __sim_round_mode): Use
1009         libc_hidden_proto.
1010         * sysdeps/powerpc/soft-fp/sfp-machine.h (__sim_exceptions)
1011         (__sim_disabled_exceptions, __sim_round_mode): Likewise.
1013 2004-01-16  Ulrich Drepper  <drepper@redhat.com>
1015         * elf/elf.h: Define PT_IA_64_HP_OPT_ANOT, PT_IA_64_HP_HSL_ANOT, and
1016         PT_IA_64_HP_STACK.
1018 2004-01-16  Richard Henderson  <rth@redhat.com>
1020         * include/unistd.h (__libc_enable_secure): Mark attribute_relro.
1021         (__libc_enable_secure_internal): Likewise.
1023         * elf/dl-load.c: Don't declare __libc_stack_end.
1024         * sysdeps/generic/libc-start.c: Likewise.
1025         * sysdeps/unix/sysv/linux/dl-execstack.c: Likewise.
1026         * sysdeps/generic/segfault.c: Likewise.  Include ldsodefs.h.
1027         * sysdeps/generic/backtrace.c: Likewise.
1029 2004-01-15  Ulrich Drepper  <drepper@redhat.com>
1031         * Versions.def: Add GLIBC_2.3.4.
1033 2004-01-15  Richard Henderson  <rth@redhat.com>
1035         * sysdeps/unix/alpha/sysdep.h: Revert last change.
1037 2004-01-15  Richard Henderson  <rth@redhat.com>
1039         * sysdeps/alpha/dl-machine.h (RTLD_START): Use _dl_argv_internal.
1041         * sysdeps/unix/alpha/sysdep.h [PIC] (SYSCALL_ERROR_HANDLER): Use
1042         !samegp relocation.
1044 2004-01-15  Richard Henderson  <rth@redhat.com>
1046         * sysdeps/unix/sysv/linux/alpha/Makefile [stdlib]: Process
1047         ucontext-offsets.sym.
1048         * sysdeps/unix/sysv/linux/alpha/getcontext.S: New file.
1049         * sysdeps/unix/sysv/linux/alpha/makecontext.S: New file.
1050         * sysdeps/unix/sysv/linux/alpha/setcontext.S: New file.
1051         * sysdeps/unix/sysv/linux/alpha/swapcontext.S: New file.
1052         * sysdeps/unix/sysv/linux/alpha/ucontext-offsets.sym: New file.
1054 2004-01-15  Richard Henderson  <rth@redhat.com>
1056         * sysdeps/unix/sysv/linux/alpha/rt_sigaction.S: Prefix stubs with
1057         __syscall_, move nop inside, adjust users by +4.
1059 2004-01-14  Steven Munroe  <sjmunroe@us.ibm.com>
1061         * include/libc-symbols.h [HAVE_ASM_GLOBAL_DOT_NAME]
1062         (_symbol_version): Use C_SYMBOL_DOT_NAME to create '.'ed symbols.
1063         (_default_symbol_version): Use C_SYMBOL_DOT_NAME to create '.'ed
1064         symbols.
1065         * sysdeps/powerpc/Makefile: Add rtld-global-offsets.sym to
1066         gen-as-const-headers.
1067         * sysdeps/powerpc/elf/rtld-global-offsets.sym: New file.
1068         * sysdeps/powerpc/sysdep.h: Define v# symbols for vector registers.
1069         Define PPC_FEATURE_* masks for Aux Vector AT_HWCAP.
1070         * sysdeps/unix/sysv/linux/kernel-features.h
1071         (__ASSUME_SWAPCONTEXT_SYSCALL): Define for PPC and 2.6.0 kernels.
1072         * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h [!__WORDSIZE == 32]:
1073         Declare mcontext_t inline and include altivec state for 64-bit.
1074         * sysdeps/unix/sysv/linux/powerpc/powerpc64/Versions: Add GLIBC_2.3.4
1075         versions for setcontext, getcontext, and swapcontext.
1077         * sysdeps/unix/sysv/linux/powerpc/powerpc64/Versions: Add GLIBC_2.3.4
1078         versions for setcontext, getcontext, swapcontext, and makecontext.
1079         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S
1080         (__getcontext):  Upgrade to save Altivec regs and version GLIBC_2_3_4.
1081         [SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)] (__novec_getcontext):
1082         Compatible with GLIBC_2.3.3 release.
1083         * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S
1084         (__makecontext): Use parm save area instead of compiler_dw to hold
1085         context pointer.
1086         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S
1087         (__setcontext):  Upgrade to restore Altivec regs and version
1088         GLIBC_2_3_4.
1089         [SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)] (__novec_setcontext):
1090         Compatible with GLIBC_2.3.3 release.
1091         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S
1092         (__swapcontext): Upgrade to swap Altivec regs and version GLIBC_2_3_4.
1093         [SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)] (__novec_swapcontext):
1094         Compatible with GLIBC_2.3.3 release.
1095         * sysdeps/unix/sysv/linux/powerpc/powerpc64/ucontext_i.h
1096         (SIGCONTEXT_V_REGS_PTR, SIGCONTEXT_V_RESERVE): Defined.
1098 2004-01-12  Steven Munroe  <sjmunroe@us.ibm.com>
1100         * sysdeps/unix/sysv/linux/powerpc/powerpc32/Versions: Add GLIBC_2.3.4
1101         versions for setcontext, getcontext, swapcontext, and makecontext.
1102         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S
1103         (__getcontext):  Upgrade to save Altivec regs and version GLIBC_2_3_4.
1104         [SHLIB_COMPAT (libc, GLIBC_2_3_3, GLIBC_2_3_4)] (__novec_getcontext):
1105         Compatible with GLIBC_2.3.3 release.
1106         * sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S
1107         (__makecontext): Upgrade to align for Altivec regs and version
1108         GLIBC_2_3_4.
1109         [SHLIB_COMPAT (libc, GLIBC_2_3_3, GLIBC_2_3_4)] (__novec_makecontext):
1110         Compatible with GLIBC_2.3.3 release.
1111         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S
1112         (__setcontext):  Upgrade to restore Altivec regs and version
1113         GLIBC_2_3_4.
1114         [SHLIB_COMPAT (libc, GLIBC_2_3_3, GLIBC_2_3_4)] (__novec_setcontext):
1115         Compatible with GLIBC_2.3.3 release.
1116         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S
1117         (__swapcontext): Upgrade to swap Altivec regs and version GLIBC_2_3_4.
1118         [SHLIB_COMPAT (libc, GLIBC_2_3_3, GLIBC_2_3_4)]
1119         (__novec_swapcontext): Compatible with GLIBC_2.3.3 release.
1120         * sysdeps/unix/sysv/linux/powerpc/powerpc32/ucontext_i.h:
1121         (_UC_VSCR, _UC_VRSAVE): Define.
1122         (_FRAME_BACKCHAIN, _FRAME_LR_SAVE,_FRAME_PARM_SAVE1,_FRAME_PARM_SAVE2,
1123         _FRAME_PARM_SAVE3, _FRAME_PARM_SAVE4): Defined.
1125 2004-01-15  Ulrich Drepper  <drepper@redhat.com>
1127         * elf/rtld.c: Handle platforms with HP_TIMING_NONAVAIL defined.
1129 2004-01-16  Alfred M. Szmidt  <ams@kemisten.nu>
1131         * sysdeps/generic/dl-execstack.c (_dl_make_stack_executable): Adjust
1132         parameter type.
1134 2004-01-15  Ulrich Drepper  <drepper@redhat.com>
1136         * elf/elf.h: Fix typo in comment.
1138         * sysdeps/generic/dl-sysdep.c: Initialize __libc_stack_end.
1139         * elf/rtld.c: Initialize _dl_argv to allow aliasing.
1141         * resolv/resolv.h: Add RES_USEBSTRING.
1142         * resolv/res_debug.c (p_option): Add handling for RES_USE_INET6,
1143         RES_ROTATE, RES_NOCHECKNAME, and RES_USEBSTRING.
1144         * resolv/res_init.c (res_setioptions): Recognize ip6-bytestring.
1145         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Only perform
1146         bytestring IPv6 lookup with RES_USEBSTRING option is selected.
1147         Otherwise use the two nibble formats.
1149 2004-01-14  Ulrich Drepper  <drepper@redhat.com>
1151         * configure.in: Define HAVE_Z_RELRO if the linker supports -z relro.
1152         * config.h.in: Add entry for HAVE_Z_RELRO.
1153         * include/libc-symbols.h: Define attribute_relro.
1154         * elf/dl-load.c: Add attribute_relro to env_path_list, capstr, ncapstr,
1155         max_capstrlen, and max_dirnamelen definitions.
1156         * elf/rtld.c: Add attribute_relro to _dl_argc, _dl_argv, _dl_skip_args,
1157         load_time, start_time, library_path, preloadlist, version_info,
1158         any_debug.
1159         Remove rtld_total_time.  Make it a local variable.  Pass pointer to
1160         it to print_statistics.  Change print_statistics accordingly.
1161         * sysdeps/generic/dl-sysdep.c: Add attribute_relro to _dl_auxv.  Use
1162         attribute_relro instead of explicitly assigning variable to the
1163         .data.rel.ro section for __libc_enable_secure and __libc_stack_end.
1164         * sysdeps/generic/ldsodefs.h: Declare __libc_stack_end, _dl_argc,
1165         _dl_argv, _dl_argv_internal with attribute_relro.
1167 2004-01-13  Segher Boessenkool  <boessen@de.ibm.com>
1169         * Makerules (gen-as-const): Don't silently continue on failure.
1171 2004-01-14  Steven Munroe  <sjmunroe@us.ibm.com>
1173         * sysdeps/generic/dl-sysdep.c: Define __libc_stack_end with
1174         rtld_hidden_data_def.
1176 2004-01-14  Ulrich Drepper  <drepper@redhat.com>
1178         * libio/libio.h: Add const to function tables types.
1179         * libio/libioP.h: Likewise.
1180         * login/utmp-private.h: Likewise.
1181         * libio/fileops.c: Add const to jump table variable definition.
1182         * libio/genops.c: Likewise.
1183         * libio/iofopncook.c: Likewise.
1184         * libio/iopopen.c: Likewise.
1185         * libio/memstream.c: Likewise.
1186         * libio/obprintf.c: Likewise.
1187         * libio/oldfileops.c: Likewise.
1188         * libio/oldiopopen.c: Likewise.
1189         * libio/strops.c: Likewise.
1190         * libio/vsnprintf.c: Likewise.
1191         * libio/vswprintf.c: Likewise.
1192         * libio/wfileops.c: Likewise.
1193         * libio/wstrops.c: Likewise.
1194         * login/getutent_r.c: Likewise.
1195         * login/getutid_r.c Likewise.
1196         * login/getutline_r.c: Likewise.
1197         * sysdeps/generic/utmp_file.c: Likewise.
1199 2004-01-09  Bruno Haible  <bruno@clisp.org>
1201         * intl/gmo.h (MO_REVISION_NUMBER_WITH_SYSDEP_I): New definition.
1202         * intl/loadmsgcat.c (get_sysdep_segment_value): Handle "I".
1203         (_nl_load_domain): Treat major revision 1 like major revision 0.
1205 2004-01-11  Bruno Haible  <bruno@clisp.org>
1207         * stdio-common/vfprintf.c (vfprintf): Disallow the 'I' flag after
1208         width or precision has been seen.
1210 2004-01-08  Bruno Haible  <bruno@clisp.org>
1212         * intl/loadmsgcat.c (_nl_load_domain): When a string pair uses a system
1213         dependent segment not known to this version of the library, ignore
1214         the string pair instead of crashing.
1216 2004-01-13  Ulrich Drepper  <drepper@redhat.com>
1218         * configure.in: Rewrite test to give gcc to clean up after itself.
1219         Patch by Greg Schafer.
1221         * posix/regex.c: Support crappy compilers and platforms which have
1222         problems with alloca.
1223         * posix/regex_internal.h: Likewise.
1224         Patch by Paolo Bonzini.
1226 2004-01-12  Paolo Bonzini  <bonzini@gnu.org>
1228         * posix/regcomp.c [_LIBC && !RE_ENABLE_I18N]:
1229         Drop code to support this, it is never true.
1230         (build_range_exp) [!_LIBC]: Do not create a range
1231         in MBCSET for a single-byte character set.
1232         (build_range_exp) [_LIBC]: Do not create a range
1233         in MBCSET for a single-byte character set without
1234         collation elements.
1235         (init_dfa): Do not conditionalize on _LIBC, it
1236         just makes the code less clear.
1237         (parse_bracket_exp): Use NON_MATCH variable in
1238         addition to "mbcset->non_match", not as an
1239         alternative.
1240         (build_charclass_op): rename NOT parameter to
1241         NON_MATCH, use it instead of declaring a variable.
1242         (parse_bracket_exp) [!_LIBC]: Pass NULL for MBCSET
1243         if the character set is single-byte.
1245 2004-01-14  Jakub Jelinek  <jakub@redhat.com>
1247         * posix/regcomp.c (peek_token_bracket): Check remaining
1248         string length before re_string_peek_byte (x, 1).
1249         (parse_bracket_symbol): Likewise.
1250         * posix/regex_internal.h (re_string_is_single_byte_char): Return
1251         true at last byte in the string.
1252         * posix/bug-regex22.c (main): Add new test.
1254 2004-01-13  Ulrich Drepper  <drepper@redhat.com>
1256         * sysdeps/generic/dl-sysdep.c: Move __libc_enable_secure into
1257         .data.rel.ro.
1259         * sysdeps/x86_64/dl-machine.h: Include <tls.h>.
1261         * elf/rtld.c (_dl_start_final): Initialze __libc_stack_end here.
1262         * sysdeps/generic/dl-sysdep.c: Define __libc_stack_end with
1263         rtld_hidden_def and move into .data.rel.ro section.
1264         * sysdeps/generic/ldsodefs.h: Declare __libc_stack_end with
1265         rtld_hidden_proto.
1266         * sysdeps/generic/libc-start.c: Only initialize __libc_stack_end here
1267         if !SHARED.
1269 2004-01-13  Richard Henderson  <rth@redhat.com>
1271         * sysdeps/unix/sysv/linux/alpha/rt_sigaction.S: Fix typo.
1273 2004-01-13  Ulrich Drepper  <drepper@redhat.com>
1275         * sysdeps/unix/sysv/linux/dl-execstack.c
1276         (_dl_make_stack_executable): Move common code in front.  Use
1277         __builtin_expect.
1279         * sysdeps/unix/sysv/linux/dl-execstack.c: Change interface.  Add
1280         challenge for caller.
1281         * sysdeps/generic/ldsodefs.h: Change declaration and type of hook
1282         member in rtld_global appropriately.
1283         * elf/dl-support.c: Likewise.
1284         * elf/dl-load.c (_dl_map_object_from_fd): Take additional paramter.
1285         Pass it on to the changed function.
1286         (_dl_map_object): Pass new parameter to _dl_map_object_from_fd.
1288 2004-01-13  Richard Henderson  <rth@redhat.com>
1290         * sysdeps/alpha/bits/atomic.h (__arch_compare_and_exchange_xxx_8_int):
1291         Cast old up to uint64_t before back down to inner width.
1292         (__arch_compare_and_exchange_xxx_16_int): Likewise.
1293         (__arch_compare_and_exchange_xxx_32_int): Likewise.
1294         (__arch_compare_and_exchange_xxx_64_int): Likewise.
1295         (__arch_compare_and_exchange_val_8_int): Cast result to
1296         the type of the memory.
1297         (__arch_compare_and_exchange_val_16_int): Likewise.
1298         (__arch_compare_and_exchange_val_32_int): Likewise.
1299         (__arch_compare_and_exchange_val_64_int): Likewise.
1300         (atomic_compare_and_exchange_bool_acq): Use __atomic_bool_bysize.
1301         (atomic_compare_and_exchange_bool_rel): Likewise.
1303         * sysdeps/unix/alpha/sysdep.h: Select inline_syscall_r0_asm
1304         based on HAVE___THREAD instead of USE_TLS.
1306         * sysdeps/unix/sysv/linux/alpha/adjtime.c (ADJTIMEX32): New.
1307         (__adjtimex_tv64): Use it.
1309         * sysdeps/unix/sysv/linux/alpha/semctl.c (__new_semctl): Cast
1310         to void* rather than directly to the compatibility structure type.
1311         * sysdeps/unix/sysv/linux/alpha/shmctl.c (__new_shmctl): Likewise.
1313         * sysdeps/unix/sysv/linux/alpha/sigaction.c (struct kernel_sigaction):
1314         Forward declare.
1316 2004-01-13  Richard Henderson  <rth@redhat.com>
1318         * Versions.def (libm): Add GLIBC_2.3.3.
1319         * sysdeps/alpha/fpu/Versions: Add __c1_c*f and c*f to GLIBC_2.3.3.
1320         * sysdeps/alpha/fpu/cabsf.c, sysdeps/alpha/fpu/cargf.c,
1321         sysdeps/alpha/fpu/cfloat-compat.h, sysdeps/alpha/fpu/cimagf.c,
1322         sysdeps/alpha/fpu/conjf.c, sysdeps/alpha/fpu/crealf.c,
1323         sysdeps/alpha/fpu/s_cacosf.c, sysdeps/alpha/fpu/s_cacoshf.c,
1324         sysdeps/alpha/fpu/s_casinf.c, sysdeps/alpha/fpu/s_casinhf.c,
1325         sysdeps/alpha/fpu/s_catanf.c, sysdeps/alpha/fpu/s_catanhf.c,
1326         sysdeps/alpha/fpu/s_ccosf.c, sysdeps/alpha/fpu/s_ccoshf.c,
1327         sysdeps/alpha/fpu/s_cexpf.c, sysdeps/alpha/fpu/s_clog10f.c,
1328         sysdeps/alpha/fpu/s_clogf.c, sysdeps/alpha/fpu/s_cpowf.c,
1329         sysdeps/alpha/fpu/s_cprojf.c, sysdeps/alpha/fpu/s_csinf.c,
1330         sysdeps/alpha/fpu/s_csinhf.c, sysdeps/alpha/fpu/s_csqrtf.c,
1331         sysdeps/alpha/fpu/s_ctanf.c, sysdeps/alpha/fpu/s_ctanhf.c: New files.
1332         * sysdeps/alpha/fpu/bits/mathdef.h: Rename complex float
1333         functions for gcc 3.3.
1335         * sysdeps/generic/s_cacosf.c, sysdeps/generic/s_cacoshf.c,
1336         sysdeps/generic/s_casinf.c, sysdeps/generic/s_casinhf.c,
1337         sysdeps/generic/s_catanf.c, sysdeps/generic/s_catanhf.c,
1338         sysdeps/generic/s_ccosf.c, sysdeps/generic/s_ccoshf.c,
1339         sysdeps/generic/s_cexpf.c, sysdeps/generic/s_clog10f.c,
1340         sysdeps/generic/s_clogf.c, sysdeps/generic/s_cpowf.c,
1341         sysdeps/generic/s_cprojf.c, sysdeps/generic/s_csinf.c,
1342         sysdeps/generic/s_csinhf.c, sysdeps/generic/s_csqrtf.c,
1343         sysdeps/generic/s_ctanf.c, sysdeps/generic/s_ctanhf.c: Don't
1344         weak_alias if the function name has been #defined.
1346         * math/cabsf.c: Move ...
1347         * sysdeps/generic/cabsf.c: ... here.
1348         * math/cargf.c: Move ...
1349         * sysdeps/generic/cargf.c: ... here.
1350         * math/cimagf.c: Move ...
1351         * sysdeps/generic/cimagf.c: ... here.
1352         * math/conjf.c: Move ...
1353         * sysdeps/generic/conjf.c: ... here.
1354         * math/crealf.c: Move ...
1355         * sysdeps/generic/crealf.c: ... here.
1357 2004-01-13  Ulrich Drepper  <drepper@redhat.com>
1359         * Makeconfig: Define relro-LDFLAGS if have-z-relro==yes.  Add it to
1360         LDFLAGS.so and LDFLAGS-rtld.
1361         (+link): Add relro-LDFLAGS.
1362         * Makeconfig (shlib.lds): Place __libc_subfreeres, __libc_atexit, and
1363         __libc_thread_subfreeres sections after .jcr section.
1364         * config.make.in: Add have-z-relro.
1365         * configure.in: Add check for -z relro option.
1366         * include/link.h (struct link_map): Add relro_addr and relro_size
1367         members.
1368         * elf/dl-load.c (_dl_map_object_from_fd): Recognize PT_GNU_RELRO.
1369         * elf/dl-reloc.c (_dl_relocate_object): At the end, make relro
1370         part of loaded segments read-only.
1371         * elf/elf.h: Define PT_GNU_RELRO.
1372         * elf/rtld.c (_dl_start): Recognize PT_GNU_RELRO of ld.so.
1373         (dl_main): Recognize PT_GNU_RELRO of the application.  Call
1374         _dl_debug_initialize and initialize l_info[DT_DEBUG] before
1375         relocations.
1377 2004-01-12  Jakub Jelinek  <jakub@redhat.com>
1379         * sysdeps/x86_64/strcspn.S: Fix typo in last patch.
1381 2004-01-11  Andreas Jaeger  <aj@suse.de>
1383         * sysdeps/x86_64/__longjmp.S: Add cfi directives.
1385 2004-01-10  Andreas Jaeger  <aj@suse.de>
1387         * sysdeps/unix/sysv/linux/x86_64/__start_context.S: Add cfi directives.
1388         * sysdeps/unix/x86_64/sysdep.S (__syscall_error): Likewise.
1389         * sysdeps/unix/sysv/linux/x86_64/vfork.S: Likewise.
1390         * sysdeps/x86_64/strcspn.S: Likewise.
1391         * sysdeps/x86_64/strspn.S: Likewise.
1393 2004-01-08  Jakub Jelinek  <jakub@redhat.com>
1395         * sysdeps/unix/sysv/linux/x86_64/clone.S (__clone): Add cfi_endproc
1396         right before syscall and cfi_startproc before PSEUDO_END.
1397         Clear %rbp in thread_start.
1399 2004-01-05  Jakub Jelinek  <jakub@redhat.com>
1401         * posix/regcomp.c (regcomp): Fix comment typo.
1402         (regfree): Free preg->translate, clear buffer, allocated, fastmap
1403         and translate fields.
1405         * posix/regcomp.c (build_charclass, buld_charclass_op): Change first
1406         argument to unsigned RE_TRANSLATE_TYPE.
1407         * posix/regex_internal.h (re_string_t): Change trans type to
1408         unsigned RE_TRANSLATE_TYPE.
1409         * posix/regex_internal.c (re_string_construct_common): Cast
1410         trans to unsigned RE_TRANSLATE_TYPE.
1411         (re_string_peek_byte_case, re_string_fetch_byte_case): Avoid fast
1412         path if pstr->trans.  Never translate the character through
1413         pstr->trans.
1414         * posix/Makefile (tests): Add bug-regex22.
1415         (bug-regex22-ENV): Set.
1416         * posix/bug-regex22.c: New test.
1418 2004-01-02  Paolo Bonzini  <bonzini@gnu.org>
1420         * posix/regex_internal.c (re_node_set_add_intersect,
1421         re_node_set_merge): Rewritten.
1422         (re_node_set_insert, re_node_set_remove_at):
1423         Avoid memmove, we know what direction we should copy and that we
1424         are copying 32-bit words.
1425         (re_node_set_compare): Iterate backwards.
1427 2003-12-30  Paul Eggert  <eggert@twinsun.com>
1429         * time/mktime.c (verify): New macro.
1430         (time_t_is_integer, twos_complement_arithmetic,
1431         right_shift_propagates_sign, base_year_is_a_multiple_of_100,
1432         C99_integer_division): Document these longstanding assumptions in the
1433         code, and verify them at compile-time.
1435 2004-01-02  Jakub Jelinek  <jakub@redhat.com>
1437         * posix/regex_internal.h (re_match_context_t): Add dfa member.
1438         * posix/regexec.c (match_ctx_free_subtops, search_cur_bkref_entry,
1439         match_ctx_add_sublast, sift_ctx_init, acquire_init_state_context,
1440         prune_impossible_nodes, check_halt_state_context, proceed_next_node,
1441         sift_states_backward, update_cur_sifted_state, check_dst_limits,
1442         check_dst_limits_calc_pos, sift_states_bkref, transit_state,
1443         check_subexp_matching_top, transit_state_sb, transit_state_mb,
1444         transit_state_bkref, get_subexp, get_subexp_sub, check_arrival,
1445         check_arrival_add_next_nodes, expand_bkref_cache, check_node_accept):
1446         Remove dfa parameter.  Get dfa from mctx.  Adjust callers.
1447         (re_search_internal): Initialize mctx.dfa.
1449         * posix/regex_internal.c (re_node_set_insert): Remove unused variables.
1451         * posix/regex_internal.h (re_dfa_t): Add syntax field.
1452         * posix/regcomp.c (parse): Initialize dfa->syntax.
1453         * posix/regexec.c (acquire_init_state_context,
1454         prune_impossible_nodes, check_matching, check_halt_state_context,
1455         proceed_next_node, sift_states_iter_mb, sift_states_backward,
1456         update_cur_sifted_state, sift_states_bkref, transit_state,
1457         transit_state_sb, transit_state_mb, transit_state_bkref,
1458         get_subexp, get_subexp_sub, check_arrival, expand_bkref_cache,
1459         build_trtable): Remove preg argument, add dfa argument instead
1460         and remove dfa = preg->buffer initialization in the body.
1461         Adjust all callers.
1462         (check_node_accept_bytes, group_nodes_into_DFAstates,
1463         check_node_accept): Likewise.  Use dfa->syntax instead of
1464         preg->syntax.
1465         (check_arrival_add_next_nodes): Remove preg argument.
1467         * posix/regex_internal.h (re_match_context_t): Make input
1468         re_string_t instead of a pointer to it.
1469         * posix/regex_internal.c (re_string_construct_common): Don't clear
1470         pstr here...
1471         (re_string_construct): ... but only here.
1472         * posix/regexec.c (match_ctx_init): Remove input argument.  Don't
1473         initialize fields to zero.
1474         (re_search_internal): Move input into mctx.input.
1475         (acquire_init_state_context, check_matching,
1476         check_halt_state_context, proceed_next_node,
1477         clean_state_log_if_needed, sift_states_bkref, sift_states_iter_mb,
1478         transit_state, transit_state_sb, transit_state_mb,
1479         transit_state_bkref, get_subexp, check_arrival,
1480         check_arrival_add_next_nodes, check_node_accept, extend_buffers):
1481         Change mctx->input into &mctx->input and mctx->input->field into
1482         mctx->input.field.
1484 2004-01-02  Jakub Jelinek  <jakub@redhat.com>
1485             Paolo Bonzini  <bonzini@gnu.org>
1487         * posix/regex_internal.h (re_const_bitset_ptr_t): New type.
1488         (re_string_t): Add newline_anchor, word_char and word_ops_used fields.
1489         (re_dfa_t): Change word_char type to bitset.  Add word_ops_used field.
1490         (re_string_context_at, re_string_reconstruct): Remove last argument.
1491         * posix/regex_internal.c (re_string_allocate): Initialize
1492         pstr->word_char and pstr->word_ops_used.
1493         (re_string_context_at): Remove newline_anchor argument.
1494         Use input->newline_anchor instead, swap && conditions.
1495         Only use IS_WIDE_WORD_CHAR if input->word_ops_used != 0.
1496         Use input->word_char bitmap instead of IS_WORD_CHAR.
1497         (re_string_reconstruct): Likewise.
1498         Adjust re_string_context_at caller.
1499         * posix/regexec.c (acquire_init_state_context,
1500         check_halt_state_context, transit_state, transit_state_sb,
1501         transit_state_mb, transit_state_bkref, check_arrival,
1502         check_node_accept): Adjust re_string_context_at and
1503         re_string_reconstruct callers.
1504         (re_search_internal): Likewise.  Set input.newline_anchor.
1505         (build_trtable): Use dfa->word_char bitmap instead of IS_WORD_CHAR.
1506         * posix/regcomp.c (init_word_char): Change return type to void.
1507         Set dfa->word_ops_used.
1508         (free_dfa_content): Don't free dfa->word_char.
1509         (parse_expression): Remove error handling for init_word_char.
1511 2004-01-01  Paolo Bonzini  <bonzini@gnu.org>
1513         * posix/regex_internal.h (re_dfastate_t): Fix size of the CONTEXT
1514         bitfield.
1516         * posix/regex_internal.c (re_node_set_insert):  Rewrite.
1518 2004-01-01  Ulrich Drepper  <drepper@redhat.com>
1520         * posix/getconf.c: Update copyright year.
1521         * nss/getent.c: Likewise.
1522         * nscd/nscd_nischeck.c: Likewise.
1523         * iconv/iconvconfig.c: Likewise.
1524         * iconv/iconv_prog.c: Likewise.
1525         * elf/ldconfig.c: Likewise.
1526         * catgets/gencat.c: Likewise.
1527         * csu/version.c: Likewise.
1528         * elf/ldd.bash.in: Likewise.
1529         * elf/sprof.c (print_version): Likewise.
1530         * locale/programs/locale.c: Likewise.
1531         * locale/programs/localedef.c: Likewise.
1532         * nscd/nscd.c (print_version): Likewise.
1533         * debug/xtrace.sh: Likewise.
1534         * malloc/memusage.sh: Likewise.
1535         * malloc/mtrace.pl: Likewise.
1537 2004-01-01  Petter Reinholdtsen  <pere@hungry.com>
1539         * stdlib/strfmon.c: Make formatting of left-justified currency
1540         values match the the POSIX standard.  When using format string
1541         "[%-14#5.4n]" to print -123.45, the result should be
1542         "[-$   123.4500 ]", not "[-$123.4500    ]".
1544 2004-01-01  Andreas Jaeger  <aj@suse.de>
1546         * resolv/Makefile (generated): New.
1548 2003-12-31  Joseph S. Myers  <jsm@polyomino.org.uk>
1550         * CONFORMANCE: Update.
1552 2003-12-30  Paul Eggert  <eggert@twinsun.com>
1554         * time/mktime.c: (my_mktime_localtime_r):
1555         Remove.  All uses changed to __localtime_r.
1556         (__localtime_r) [!defined _LIBC]: New macro.  Include "time_r.h" to
1557         get its implementation.
1558         Fix compile-command to allow for TIME_R_POSIX.
1560         * time/strftime.c (my_strftime_gmtime_r, my_strftime_localtime_r):
1561         Remove.  All uses changed to __localtime_r and __gmtime_r.
1562         (__gmtime_r, __localtime_r) [!HAVE_TM_GMTOFF]: New macros.
1563         Include "time_r.h" to get their implementations.
1565         * time/timegm.c: Allow use in GNU applications outside glibc.
1566         [defined HAVE_CONFIG_H]: Include <config.h>.
1567         [!defined _LIBC]: Include "timegm.h", <time_r.h>.
1568         Define __gmtime_r, and declare __mktime_internal.
1569         (timegm): Define via a prototype, since we can safely assume C89 now.
1571         * time/mktime.c (check_result): Use less-confusing report format.
1572         "long" -> "long int", as per usual GNU style.
1573         (main): Likewise.
1574         Don't loop if the iteration overflows time_t.
1575         Allow a negative step in the iteration.
1577         * time/mktime.c: Assume freestanding C89 or better.
1578         (HAVE_LIMITS_H, STDC_HEADERS) [defined _LIBC]: Remove;
1579         assume they're 1.
1580         (__P): Remove; not used.
1581         (CHAR_BIT, INT_MIN, INT_MAX): Remove; <limits.h> defines them.
1582         (mktime, not_equal_tm, print_tm, check_result, main): Use prototypes.
1583         Prototypes use const * where appropriate.
1584         (main) [DEBUG]: Fix typo in testing code uncovered by above changes,
1585         which caused the testing code to dump core on some hosts.
1587 2003-12-31  Ulrich Drepper  <drepper@redhat.com>
1589         * locale/setlocale.c (setlocale): Avoid duplicating locale names
1590         if we can reuse old strings.
1592         * inet/rcmd.c: Provide better error message in case of unknown
1593         host.  Remove USE_IN_LIBIO.
1595         * nscd/nscd.init: Updated version, more conforming with current
1596         init file standards.
1598         * nscd/nscd-client.h (_PATH_NSCDPID): Move the file into
1599         /var/run/nscd directory.
1600         (_PATH_NSCDSOCKET): Likewise.
1602         * test-skeleton.c (timeout_handler): Fix error message.
1604         * elf/dl-dst.h (DL_DST_REQUIRED): Avoid the complex operations if
1605         CNT == 0.
1607 2003-12-30  Jakub Jelinek  <jakub@redhat.com>
1609         * posix/regexec.c (get_subexp): Only set bkref_str after the first
1610         loop, use buf + bkref_str_off in the loop instead.
1611         * posix/bug-regex11.c (tests): Add 3 new tests.
1613         * posix/regexec.c (clean_state_log_if_need): Rename to...
1614         (clean_state_log_if_needed): ...this.
1615         (transit_state_mb, get_subexp_sub): Adjust callers.
1617         * sunrpc/pmap_clnt.c (pmap_set): Do CLNT_DESTROY even if CLNT_CALL
1618         failed.  Reported by Steve Grubb.
1620 2003-12-29  Ulrich Drepper  <drepper@redhat.com>
1622         * elf/elf.h: Add a few definitions from Solaris 9.
1624 2003-12-29  Andreas Schwab  <schwab@suse.de>
1626         * stdio-common/Makefile (CFLAGS-errlist.c, CFLAGS-siglist.c): Add
1627         $(fno_unit_at_a_time) to avoid reordering assembler output.
1629 2003-12-29  Jakub Jelinek  <jakub@redhat.com>
1631         * posix/regexec.c (re_copy_regs): Revert comment change.
1632         Avoid memory leak if realloc fails.
1633         (proceed_next_node): Return -2 if re_node_set_insert fails.
1634         Return -2 if push_fail_stack fails.
1635         (push_fail_stack): Change fs->alloc only after successful realloc.
1636         (pop_fail_stack): Formatting.
1637         (set_regs): If proceed_next_node returns -2, free eps_via_nodes and fs.
1638         (check_arrival_add_next_nodes): Merge identical statements
1639         from if branches.
1641         * signal/Makefile (tests): Add tst-raise.
1642         * signal/tst-raise.c: New test.
1644 2003-12-28  Ulrich Drepper  <drepper@redhat.com>
1646         * posix/regcomp.c (mark_opt_subexp_iter): Declare IDX as int.
1648         * posix/regexec.c (re_copy_regs): Fix testing for failed allocation.
1649         (push_fail_stack): Add missing check for failed memory allocation.
1651         * libio/libio.h: Use __builtin_expect in _IO_getc_unlocked,
1652         _IO_peekc_unlocked, _IO_putc_unlocked, _IO_getwc_unlocked, and
1653         _IO_putwc_unlocked.
1655 2003-12-28  Andreas Jaeger  <aj@suse.de>
1657         * sysdeps/ieee754/dbl-64/e_j0.c (__ieee754_y0): Raise only
1658         overflow for 0 as argument. Raise Invalid exception for negative args.
1659         * sysdeps/ieee754/dbl-64/e_jn.c (__ieee754_yn): Likewise.
1660         * sysdeps/ieee754/dbl-64/e_j1.c (__ieee754_y0): Likewise.
1661         * sysdeps/ieee754/ldb-128/e_jnl.c (__ieee754_ynl): Likewise.
1662         * sysdeps/ieee754/ldb-128/e_j0l.c (__ieee754_y0l): Likewise.
1663         * sysdeps/ieee754/ldb-128/e_j1l.c (__ieee754_y1l): Likewise.
1664         * sysdeps/ieee754/ldb-96/e_jnl.c (__ieee754_ynl): Likewise.
1665         * sysdeps/ieee754/ldb-96/e_j0l.c (__ieee754_y0l): Likewise.
1666         * sysdeps/ieee754/ldb-96/e_j1l.c (__ieee754_y1l): Likewise.
1667         * sysdeps/ieee754/flt-32/e_jnf.c (__ieee754_ynf): Likewise.
1668         * sysdeps/ieee754/flt-32/e_j0f.c (__ieee754_y0f): Likewise.
1669         * sysdeps/ieee754/flt-32/e_j1f.c (__ieee754_y1f): Likewise.
1671         * math/libm-test.inc (yn_test): Expect invalid exception for
1672         negative arguments.
1673         (y0_test): Likewise.
1674         (y1_test): Likewise.
1676         * sysdeps/ieee754/dbl-64/e_exp.c (__ieee754_exp): Do not raise
1677         execptions for exp(NaN).
1679 2003-12-23  Paolo Bonzini  <bonzini@gnu.org>
1681         * posix/regex_internal.c (re_dfa_add_node): Initialize opt_subexp.
1682         * posix/regex_internal.h (re_token_type_t): Put OP_DUP_PLUS
1683         among the tokens, rather than among the epsilon-transiting nodes.
1684         (re_token_t): Add the opt_subexp flag.
1685         * posix/regcomp.c (optimize_utf8, calc_first,
1686         calc_next, calc_epsdest): Don't consider OP_DUP_PLUS.
1687         (mark_opt_subexp, mark_opt_subexp_iter): New functions.
1688         (parse_dup_op): Mostly rewritten, lowering OP_DUP_PLUS to
1689         OP_DUP_ASTERISK and marking optional subexpressions
1690         as such using mark_opt_subexp.
1691         * posix/regexec.c (set_regs): Initialize PREV_INDEX_MATCH
1692         and pass it to update_regs.
1693         (update_regs): Use the PREV_INDEX_MATCH parameter, together
1694         with the opt_subexp flag, in order to discard a final empty
1695         match of a repeated subexpression.
1696         * posix/BOOST.tests: Adjust test vectors.
1697         * posix/PCRE.tests: Likewise.
1698         * posix/rxspencer/tests: Likewise.
1700 2000-05-22  Jakub Jelinek  <jakub@redhat.com>
1702         * sysdeps/i386/fpu/bits/mathinline.h (__expm1_code): Avoid using ?:
1703         with omitted middle operand.
1705 2003-12-22  Jakub Jelinek  <jakub@redhat.com>
1707         * posix/regcomp.c: Remove C99-ism.
1708         * posix/tst-rxspencer.c: Likewise.
1709         Based on a patch by Alex Davis <alex14641@yahoo.com>.
1711 2003-12-17  Paolo Bonzini  <bonzini@gnu.org>
1713         * posix/regex_internal.h [!_LIBC] (internal_function): Define.
1714         (re_string_allocate, re_string_construct, re_string_reconstruct,
1715         re_string_realloc_buffers, build_wcs_buffer,
1716         build_wcs_upper_buffer, build_upper_buffer,
1717         re_string_translate_buffer, re_string_destruct,
1718         re_string_elem_size_at, re_string_char_size_at,
1719         re_string_wchar_at, re_string_context_at,
1720         re_node_set_alloc, re_node_set_init_1
1721         re_node_set_init_2, re_node_set_init_copy,
1722         re_node_set_add_intersect, re_node_set_init_union,
1723         re_node_set_merge, re_node_set_insert
1724         re_node_set_compare, re_node_set_contains
1725         re_node_set_remove_at, re_dfa_add_node,
1726         re_acquire_state, re_acquire_state_context,
1727         free_state): Add internal_function to declaration.
1729         * posix/regexec.c (match_ctx_init, match_ctx_clean,
1730         match_ctx_free, match_ctx_free_subtops,
1731         match_ctx_add_entry, search_cur_bkref_entry,
1732         match_ctx_clear_flag, match_ctx_add_subtop,
1733         match_ctx_add_sublast, sift_ctx_init,
1734         re_search_internal, re_search_2_stub, re_search_stub,
1735         re_copy_regs, acquire_init_state_context,
1736         prune_impossible_nodes, check_matching,
1737         check_halt_node_context, check_halt_state_context
1738         update_regs, proceed_next_node, push_fail_stack,
1739         pop_fail_stack, set_regs, free_fail_stack_return,
1740         sift_states_iter_mb, sift_states_backward
1741         update_cur_sifted_state, add_epsilon_src_nodes,
1742         sub_epsilon_src_nodes, check_dst_limits,
1743         check_dst_limits_calc_pos, check_subexp_limits,
1744         sift_states_bkref, clean_state_log_if_need,
1745         merge_state_array, transit_state,
1746         check_subexp_matching_top, transit_state_sb,
1747         transit_state_mb, transit_state_bkref,
1748         get_subexp, get_subexp_sub, find_subexp_node,
1749         check_arrival, check_arrival_add_next_nodes,
1750         find_collation_sequence_value, check_arrival_expand_ecl,
1751         check_arrival_expand_ecl_sub, expand_bkref_cache,
1752         build_trtable, check_node_accept_bytes, extend_buffers,
1753         group_nodes_into_DFAstates, check_node_accept): Likewise.
1755         * posix/regex_internal.c (re_string_construct_common,
1756         re_string_skip_chars, create_newstate_common,
1757         register_state, create_ci_newstate, create_cd_newstate,
1758         calc_state_hash): Likewise.
1759         (re_string_peek_byte_case, re_fetch_byte_case): Change
1760         declaration from ANSI to K&R.
1762 2003-12-16  Paolo Bonzini  <bonzini@gnu.org>
1764         * posix/regexec.c (build_trtable): Don't allocate the trtable
1765         until state->word_trtable is known.  Don't hardcode UINT_BITS
1766         iterations on each bitset item.
1768 2003-12-22  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>
1770         * sysdeps/unix/sysv/linux/ia64/dl-static.c (_dl_static_init):
1771         Initialize REF before passing it to _dl_lookup_symbol.
1773 2003-12-21  Roland McGrath  <roland@frob.com>
1775         * sysdeps/mach/hurd/dl-sysdep.c (_exit): Define with attribute_hidden.
1777 2003-12-21  Jakub Jelinek  <jakub@redhat.com>
1779         * posix/regcomp.c (duplicate_node, duplicate_node_closure): Revert
1780         2003-11-24 changes.
1781         * posix/regexec.c (group_nodes_into_DFAstates): For CHARACTER with
1782         NEXT_{,NOT}WORD_CONSTRAINT check word_char bit.
1783         * posix/bug-regex19.c (tests): Add new tests.
1785         * posix/regexec.c (check_dst_limits_calc_pos): Fix formatting.
1787         * posix/regcomp.c (parse_dup_op): Return NULL if dup_elem is NULL,
1788         after checking syntax.  Optimize.
1789         (calc_first): Fix comment.
1790         * posix/bug-regex13.c (tests): Add new tests.
1792 2003-12-21  Roland McGrath  <roland@redhat.com>
1794         * manual/arith.texi (Parsing of Integers): Typo fix.
1796 2003-12-20  Roland McGrath  <roland@frob.com>
1798         * sysdeps/generic/ifreq.c (__ifreq) [_HAVE_SA_LEN]: Fix typo:
1799         add missing dereference of IFREQS before counting loop.
1801 2003-12-21  Andreas Schwab  <schwab@suse.de>
1803         * sysdeps/m68k/m68020/bits/atomic.h: Avoid matching memory
1804         constraints.
1806 2003-12-20  Ulrich Drepper  <drepper@redhat.com>
1808         * elf/rtld.c (dl_main): Optimize order of subexpressions in if().
1810 2003-12-18  Ulrich Drepper  <drepper@redhat.com>
1812         * stdio-common/printf_fp.c: Add support to use alternative decimal
1813         digits.
1814         * stdio-common/vfprintf.c (vfprintf): Pass use_outdigits flags to
1815         __printf_fp.  Patch by Hamed Malek <hamed@bamdad.org>.
1817 2003-12-18  Carlos O'Donell  <carlos@baldric.uwo.ca>
1819         * sysdeps/unix/sysv/linux/hppa/clone.S (__clone) [PIC]: Save PIC,
1820         reload PIC if we need to call __syscall_error, cleanup asm.
1822 2003-12-17  Carlos O'Donell  <carlos@baldric.uwo.ca>
1824         * sysdeps/hppa/fpu/fclrexcpt.c (feclearexcept): Right shift
1825         FE_ALL_EXCEPT before complimenting.
1826         * sysdeps/hppa/fpu/fegetenv.c (fegetenv): Use asm 'ma,' completer,
1827         and gcc '+r' constraint.
1828         * sysdeps/hppa/fpu/feholdexcpt.c (feholdexcept): Likewise.
1829         * sysdeps/hppa/fpu/fesetenv.c (fesetenv): Likewise.
1830         * sysdeps/hppa/fpu/feupdateenv.c (feupdateenv): Read raised
1831         exception bits, OR with envp, pass to fesetenv.
1832         * sysdeps/hppa/fpu/fraiseexcpt.c (feraiseexcept): Add delayed
1833         exception flushing, FE_UNDERFLOW is DBL_MIN/3.0, FE_INEXACT is
1834         triggered by M_PI/69.69 converted to single precision.
1835         * sysdeps/hppa/fpu/fsetexcptflg.c (fesetexceptflag): Set enable
1836         bits not raised exception bits.
1838         * sysdeps/hppa/Makefile: Add dl-symaddr and dl-fptr to the
1839         correct build strings.
1840         * sysdeps/hppa/dl-fptr.h: New file.
1841         * sysdeps/hppa/dl-fptr.c: Removed.
1842         * sysdeps/hppa/dl-symaddr.c (_dl_symbol_address): Use _dl_make_ftpr,
1843         remove const qualifier for map.
1844         (_dl_function_address): Removed.
1845         * sysdeps/hppa/dl-lookupcfg.h: DL_LOOKUP_ADDRESS must clear
1846         PLABEL32 bits, define DL_AUTO_FUNCTION_ADDRESS and
1847         DL_STATIC_FUNCTION_ADDRESS, DL_DT_INIT_ADDRESS and
1848         DL_DT_FINI_ADDRESS use the previous two macros.
1850 2003-12-17  Jakub Jelinek  <jakub@redhat.com>
1852         * malloc/mtrace.c (tr_old_memalign_hook): New variable.
1853         (tr_memalignhook): New function.
1854         (mtrace): Register tr_memalignhook.
1855         (muntrace): Deregister tr_memalignhook.
1856         * malloc/malloc.c (__posix_memalign): If __memalign_hook != NULL,
1857         call it directly instead of memalign_internal.
1859 2003-12-17  Ulrich Drepper  <drepper@redhat.com>
1861         * misc/mntent_r.c: Change encoding to match recently changed decoder.
1862         Patch by Alexander Achenbach <xela@slit.de>.
1864 2003-12-16  Steven Munroe  <sjmunroe@us.ibm.com>
1866         * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: Correct definition of
1867         vrregset_t.
1869 2003-12-16  Steven Munroe  <sjmunroe@us.ibm.com>
1871         * sysdeps/unix/sysv/linux/powerpc/sys/procfs.h [!__PPC64_ELF_H]: Extend
1872         conditional to include typedef elf_vrreg_t.
1874 2003-12-17  Paolo Bonzini  <bonzini@gnu.org>
1876         * posix/regexec.c (re_search_internal): Limit search to the
1877         beginning of the buffer if the initial states are empty for
1878         contexts that do not include CONTEXT_BEGBUF or, if
1879         !preg->newline_anchor, that do not include any one of
1880         CONTEXT_BEGBUF and CONTEXT_NEWLINE.
1882 2003-12-17  Andreas Jaeger  <aj@suse.de>
1884         * sysdeps/generic/system.c (__libc_system): Fix typo, reported by
1885         Kevin Pedretti <pedretti@ieee.org>.
1887 2003-12-17  Ulrich Drepper  <drepper@redhat.com>
1889         * elf/rtld.c: Don't use strong_alias to define _rtld_local.  This
1890         removes the visibility attributes which might be defined earlier
1891         for some gcc versions.  Instead spell out what strong_alias does
1892         plus the visibility.
1894 2003-12-16  Petter Reinholdtsen  <pere@hungry.com>
1896         * posix/regex_internal.h: Make sure the regex code compile
1897         with non-GCC compilers by hiding attributes.
1899 2003-12-16  Jakub Jelinek  <jakub@redhat.com>
1900             Paolo Bonzini  <bonzini@gnu.org>
1902         * posix/regexec.c (group_nodes_into_DFAstates): Never produce
1903         dests_ch items that are empty.
1905 2003-12-14  Paolo Bonzini  <bonzini@gnu.org>
1907         * posix/regexec.c (check_arrival): Remove duplicate test.
1909 2003-12-15  Ulrich Drepper  <drepper@redhat.com>
1911         * posix/regcomp.c: Make !RE_ENABLE_I18N work again.
1912         * posix/regex_internal.c: Likewise.
1913         * posix/regexec.c: Likewise.
1914         Patch by Paolo Bonzini.
1916 2003-12-14  Paolo Bonzini  <bonzini@gnu.org>
1918         * posix/regex_internal.c (re_acquire_state_context):
1919         Compare the node sets after all the other comparisons.
1921 2003-12-13  Paolo Bonzini  <bonzini@gnu.org>
1923         * posix/regexec.c (find_subexp_node, check_arrival,
1924         check_arrival_add_next_nodes, check_arrival_expand_ecl,
1925         check_arrival_expand_ecl_sub, expand_bkref_cache):
1926         Rename the FL_OPEN parameter to TYPE, which is either
1927         OP_OPEN_SUBEXP or OP_CLOSE_SUBEXP.  Callers adjusted.
1929 2003-12-12  Andreas Jaeger  <aj@suse.de>
1931         * sysdeps/unix/sysv/linux/x86_64/syscall.S: Pass also 6th argument
1932         to syscall.
1934 2003-12-11  Ulrich Drepper  <drepper@redhat.com>
1936         * sysdeps/unix/sysv/linux/kernel-features.h: Remove __ASSUME_VSYSCALL.
1937         There might always be processes which have no vDSO.
1938         * sysdeps/generic/dl-sysdep.c: Remove __ASSUME_VSYSCALL uses.
1939         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
1941 2003-12-11  Carlos O'Donell  <carlos@baldric.uwo.ca>
1943         * sysdeps/generic/dl-fptr.c (COMPARE_AND_SWAP): Pass new and old
1944         in the right order.
1946 2003-12-01  Jes Sorensen  <jes@wildopensource.com>
1948         * rt/tst-clock.c (do_test): Print message when skipping
1949         CLOCK_PROCESS_CPUTIME_ID test.
1951         * sysdeps/unix/sysv/linux/ia64/clock_getcpuclockid.c: New file.
1952         Provide CLOCK_PROCESS_CPUTIME_ID only if /proc/sal/itc_drift is 0.
1954 2003-12-02  David Mosberger  <davidm@hpl.hp.com>
1956         * sysdeps/ia64/elf/initfini.c: Add unwind info.
1958         * sysdeps/ia64/dl-machine.h (elf_machine_matches_host): Mark with
1959         attribute "unused".
1960         (elf_machine_dynamic): Mark with attributes "unused" and "const".
1961         (elf_machine_runtime_setup): Likewise.
1963         * sysdeps/generic/dl-fptr.c (make_fptr_table): Mark with
1964         attribute "always_inline".
1965         * sysdeps/ia64/dl-machine.h (__ia64_init_bootstrap_fdesc_table):
1966         Likewise.
1968         * configure.in: Check whether compiler has libunwind support.
1969         * config.make.in (have-cc-with-libunwind): New variable.
1970         * config.h.in (HAVE_CC_WITH_LIBUNWIND): New macro.
1971         * Makeconfig (gnulib): If have-cc-with-libunwind is "yes", also
1972         mention -lunwind.
1974 2003-11-12  David Mosberger  <davidm@hpl.hp.com>
1976         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Define DO_CALL_VIA_BREAK.
1977         Redefine DO_CALL to use vdso if supported, otherwise DO_CALL_VIA_BREAK.
1978         Likewise for DO_INLINE_SYSCALL.  Make INTERNAL_SYSCALL use
1979         DO_INLINE_SYSCALL.
1981         * sysdeps/unix/sysv/linux/ia64/vfork.S: Use DO_CALL_VIA_BREAK()
1982         instead of DO_CALL().
1984         * sysdeps/unix/sysv/linux/ia64/clone2.S: Use break directly instead
1985         of DO_CALL().
1987         * sysdeps/unix/sysv/linux/ia64/brk.S (__curbrk): Restructure it
1988         to take advantage of DO_CALL() macro.
1989         * sysdeps/unix/sysv/linux/ia64/setcontext.S: Likewise.
1990         * sysdeps/unix/sysv/linux/ia64/getcontext.S: Likewise.
1992         * elf/rtld.c (dl_main): Restrict dl_sysinfo_dso check to first
1993         program header.  On ia64, the check failed previously because
1994         there are two program headers.
1996 2003-12-10  Andreas Jaeger  <aj@suse.de>
1997             Ruediger Oertel  <ro@suse.de>
1999         * sysdeps/alpha/fpu/e_sqrt.c: Mark sqrt_data as used.
2001 2003-12-07  Ulrich Drepper  <drepper@redhat.com>
2003         * sysdeps/i386/fpu/s_nexttowardf.c: Construct overflow value correctly.
2004         * sysdeps/i386/fpu/s_nexttoward.c: Likewise.
2005         * sysdeps/ieee754/ldbl-128/s_nexttoward.c: Likewise.
2006         * sysdeps/ieee754/ldbl-96/s_nexttoward.c: Likewise.
2007         * sysdeps/generic/s_nexttowardf.c: Likewise.
2008         * math/Makefile (tests): Add bug-nexttoward.
2009         * math/bug-nexttoward.c: New file.
2011         * sysdeps/generic/s_nextafter.c: Make sure overflow exception is set.
2012         * sysdeps/ieee754/flt-32/s_nextafterf.c: Likewise.
2013         * math/bug-nextafter.c (main): Add tests for overflow and negative
2014         values.
2016 2003-12-06  Ulrich Drepper  <drepper@redhat.com>
2018         * math/Makefile (tests): Add bug-nextafter.
2019         * math/bug-nextafter.c: New file.
2020         * sysdeps/generic/s_nextafter.c: Construct overflow value correctly.
2021         * sysdeps/ieee754/flt-32/s_nextafterf.c: Likewise.
2022         * math/libm-test.inc (nextafter_test): Add test for overflow after
2023         +/-FLT_MAX etc.
2025 2003-12-04  Steven Munroe  <sjmunroe@us.ibm.com>
2027         * sysdeps/powerpc/fpu/fgetexcptflg.c (__fegetexceptflag): Add masking
2028         of fenv.
2029         * sysdeps/powerpc/nofpu/fgetexcptflg.c (__fegetexceptflag): Likewise.
2031 2003-12-05  Martin Schwidefsky  <schwidefsky@de.ibm.com>
2033         * sysdeps/s390/s390-32/elf/setjmp.S (setjmp, __setjmp): Add END
2034         statements.
2035         * sysdeps/s390/s390-64/elf/setjmp.S (setjmp, __setjmp): Likewise.
2036         * sysdeps/s390/s390-32/sysdep.h (ENTRY): Add cfi_startproc directive.
2037         (END): Add cfi_endproc directive.
2038         * sysdeps/s390/s390-64/sysdep.h (ENTRY, END): Likewise.
2039         * sysdeps/unix/sysv/linux/s390/s390-32/socket.S (__socket): Remove
2040         cfi_startproc and cfi_endproc directive.
2041         * sysdeps/unix/sysv/linux/s390/s390-64/socket.S (__socket): Likewise.
2042         * sysdeps/s390/s390-32/addmul_1.S (__mpn_addmul_1): Add CFI directives.
2043         * sysdeps/s390/s390-32/add_n.S (__mpn_add_n): Likewise.
2044         * sysdeps/s390/s390-64/add_n.S (__mpn_add_n): Likewise.
2045         * sysdeps/s390/s390-32/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
2046         Likewise.
2047         * sysdeps/s390/s390-64/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
2048         Likewise.
2049         * sysdeps/s390/s390-32/mul_1.S (__mpn_mul_1): Likewise.
2050         * sysdeps/s390/s390-32/sub_n.S (__mpn_sub_n): Likewise.
2051         * sysdeps/s390/s390-64/sub_n.S (__mpn_sub_n): Likewise.
2052         * sysdeps/unix/sysv/linux/s390/s390-32/mmap64.S (__mmap64): Likewise.
2053         * sysdeps/unix/sysv/linux/s390/s390-32/mmap.S (__mmap): Likewise.
2054         * sysdeps/unix/sysv/linux/s390/s390-64/mmap.S (__mmap): Likewise.
2055         * sysdeps/unix/sysv/linux/s390/s390-32/syscall.S (syscall): Likewise.
2056         * sysdeps/unix/sysv/linux/s390/s390-64/syscall.S (syscall): Likewise.
2057         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S (__syscall_error):
2058         Likewise.
2059         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S (__syscall_error):
2060         Likewise.
2061         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S (__clone): Add CFI
2062         directives. Move thread_start out of ENTRY/PSEUDO_END block to
2063         make backchain terminate.
2064         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S (__clone): Likewise.
2066         * sysdeps/s390/s390-32/backtrace.c (trace_arg): New structure.
2067         (unwind_backtrace, unwind_getip): New variables.
2068         (init, __backchain_backtrace, backtrace_helper): New functions.
2069         (__backtrace): Use unwind info for backtrace instead of backchain
2070         walking if the unwind functions can be found.
2071         * sysdeps/s390/s390-64/backtrace.c: Likewise.
2073         * sysdeps/unix/sysv/linux/s390/s390-32/posix_fadvise64.c: New file.
2075         * sysdeps/unix/sysv/linux/s390/sys/procfs.h (ELF_NGREG32): New #define.
2076         (elf_greg_t32, elf_gregset_t32, elf_fpregset_t32): New types.
2077         (elf_prstatus32, elf_prpsinfo32): New structures.
2078         (prgregset32_t, prfpregset32_t, prstatus32_t, prpsinfo32_t): New types.
2080         * scripts/data/c++-types-s390-linux-gnu.data: New file.
2081         * scripts/data/c++-types-s390x-linux-gnu.data: New file.
2083 2003-11-30  Petter Reinholdtsen  <pere@hungry.com>
2085         * stdlib/strfmon.c: Correct formatting of international currency
2086         values.  The international currency formatting should prefer the
2087         int_* values if they are set for a locale, and use the domestic
2088         values if the int_* values are unset.
2090 2003-12-03  Jakub Jelinek  <jakub@redhat.com>
2092         * posix/Makefile (distribute): Add BOOST.tests.
2093         (tests): Add tst-boost, depend on tst-boost-mem.
2094         (generated): Add tst-boost-mem and tst-boost.mtrace.
2095         (tst-boost-ARGS, tst-boost-ENV): Set.
2096         ($(objpfx)tst-boost-mem): New.
2097         * posix/tst-boost.c: New test.
2098         * posix/BOOST.tests: New file.
2100         * posix/Makefile (distribute): Add PCRE.tests.
2101         (tests): Add tst-pcre, depend on tst-pcre-mem.
2102         (generated): Add tst-pcre-mem and tst-pcre.mtrace.
2103         (tst-pcre-ARGS, tst-pcre-ENV): Set.
2104         ($(objpfx)tst-pcre-mem): New.
2105         * posix/tst-pcre.c: New test.
2106         * posix/PCRE.tests: New file.
2108 2003-12-02  Jakub Jelinek  <jakub@redhat.com>
2110         * intl/locale.alias: Use nb_NO instead of no_NO for bokm.l.
2112         * sysdeps/powerpc/fpu/libm-test-ulps: Regenerated.
2113         * sysdeps/s390/fpu/libm-test-ulps: Regenerated.
2115 2003-12-03  Ulrich Drepper  <drepper@redhat.com>
2117         * locale/programs/locarchive.c (enlarge_archive): Print size info
2118         only in verbose mode.
2120         * locale/iso-3166.def: Three letter code of Romania changed.
2122 2003-12-02  Roland McGrath  <roland@redhat.com>
2124         * scripts/config.sub: Update from master, timestamp='2003-10-20'.
2125         * scripts/config.guess: Update from master, timestamp='2003-10-20'.
2127 2003-11-30  Andreas Jaeger  <aj@suse.de>
2129         * config.make.in (fno-unit-at-a-time): Define.
2131         * configure.in: Add test for -fno-unit-at-a-time.
2132         Fix text for -fpie.
2134         * csu/Makefile (CFLAGS-initfini.s): Add $(fno_unit_at_a_time).
2135         * locale/Makefile (CFLAGS-loadlocale.c): Likewise.
2137 2003-12-01  Automatic
2139         * version.h (VERSION): Bump to 2.3.3.
2141 2003-11-30  Andreas Jaeger  <aj@suse.de>
2143         * stdio-common/vfprintf.c: Do not inline buffered_vfprintf to
2144         decrease stack usage.
2146 2003-11-30  Andreas Schwab  <schwab@suse.de>
2148         * sysdeps/unix/sysv/linux/m68k/sysdep.h (PSEUDO_ERRVAL)
2149         (PSEUDO_END_ERRVAL, ret_ERRVAL): Define.
2151 2003-11-29  Ulrich Drepper  <drepper@redhat.com>
2153         * misc/mntent_r.c (decode_name): Be compatible with util-linux and
2154         recognize \134 as well.
2156 2003-10-09  H.J. Lu  <hongjiu.lu@intel.com>
2158         * sysdeps/ia64/fpu/fraiseexcpt.c: Don't include <asm/fpu.h>.
2160 2003-10-08  H.J. Lu  <hongjiu.lu@intel.com>
2162         * sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h: Don't include
2163         <asm/fpu.h>.
2164         (struct ia64_fpreg): New definition.
2166         * sysdeps/unix/sysv/linux/ia64/sys/procfs.h: Don't include
2167         <asm/elf.h>.
2168         (ELF_NGREG): New #define.
2169         (ELF_NFPREG): Likewise.
2170         (elf_greg_t): New type.
2171         (elf_gregset_t): Likewise.
2172         (elf_fpreg_t): Likewise.
2173         (elf_fpregset_t): Likewise.
2175 2003-10-08  H.J. Lu  <hongjiu.lu@intel.com>
2177         * sysdeps/unix/sysv/linux/ia64/sys/ptrace.h: Include
2178         <sys/ucontext.h>.
2179         (__ptrace_request): Add PTRACE_GETREGS and PTRACE_SETREGS.
2180         (pt_all_user_regs): New type.
2182 2003-10-10  Simon Josefsson  <jas@extundo.com>
2184         * argp/argp-namefrob.h [!_LIBC]: Include mempcpy.h, strcase.h,
2185         strchrnul.h, strndup.h (from gnulib).
2186         * argp/argp-parse.c: Add alloca.h include snippet verbatim from
2187         Autoconf manual.
2188         * argp/argp-help.c: Replace alloca.h include snipper with verbatim
2189         Autoconf manual version.
2190         * argp/argp.h: Map __restrict to restrict or empty string when
2191         necessary, copied verbatim from posix/regex.h.
2193 2003-10-09  Steven Munroe  <sjmunroe@us.ibm.com>
2195         * Makefile: Allow for c++-types-$(config-machine)-$(config-os).data in
2196         addition to c++-types-$(base-machine)-$(config-os).data.
2197         * scripts/data/c++-types-powerpc-linux-gnu.data: New file.
2198         * scripts/data/c++-types-powerpc64-linux-gnu.data: New file.
2200 2003-11-28  Ulrich Drepper  <drepper@redhat.com>
2202         * misc/mntent_r.c (decode_name): Fix decoding of tab, add decoding
2203         of newline.
2204         * manual/sysinfo.texi (mtab): Adjust description accordingly.
2205         Reported by Andries.Brouwer@cwi.nl.
2207         * sysdeps/x86_64/fpu/libm-test-ulps: Add some more minor changes
2208         to compensate other setup.
2210 2003-11-27  Andreas Jaeger  <aj@suse.de>
2212         * sysdeps/x86_64/fpu/libm-test-ulps: Add ulps for new atan2 test.
2214         * math/libm-test.inc (atan2_test): Add test that run infinitly.
2215         Reported by "Willus" <etc231etc231@willus.com>.
2217 2003-11-27  Michael Matz  <matz@suse.de>
2219         * sysdeps/ieee754/dbl-64/mpsqrt.c (fastiroot): Fix 64-bit problem
2220         with wrong types.
2222 2003-11-28  Jakub Jelinek  <jakub@redhat.com>
2224         * posix/regexec.c (acquire_init_state_context): Make inline.
2225         Add always_inline attribute.
2226         (check_matching): Add BE macro.  Move if (cur_state->has_backref)
2227         into if (dfa->nbackref).
2228         (sift_states_backward): Fix comment.
2229         (transit_state): Add BE macro.  Move if (next_state->has_backref)
2230         into if (dfa->nbackref && next_state).  Don't check for next_state
2231         != NULL twice.
2232         * posix/regcomp.c (peek_token): Use opr.ctx_type instead of opr.idx
2233         for ANCHOR.
2234         (parse_expression): Only call init_word_char if word context will be
2235         needed.
2237         * posix/bug-regex11.c (tests): Add new tests.
2239         * posix/tst-regex.c: Include getopt.h.
2240         (timing): New variable.
2241         (main): Set timing to 1 if --timing argument is present.
2242         Add 2 new tests.
2243         (run_test, run_test_backwards): Handle timing.
2245 2003-11-27  Jakub Jelinek  <jakub@redhat.com>
2247         * posix/regex_internal.h (re_string_t): Remove mbs_case field.
2248         Add offsets, valid_raw_len, raw_len, raw_stop, mbs_allocated and
2249         offsets_needed fields.  Change icase, is_utf8 and map_notascii
2250         type from int bitfield to unsigned char.
2251         (MBS_ALLOCATED, MBS_CASE_ALLOCATED): Remove.
2252         (build_wcs_upper_buffer): Change prototype to return int.
2253         (re_string_peek_byte_case, re_string_fetch_byte_case): Remove
2254         defines, add prototypes.
2255         * posix/regex_internal.c (re_string_allocate): Don't initialize
2256         stop here.  Don't initialize mbs_case.  Set valid_raw_len.
2257         Use mbs_allocated instead of MBS_* macros.
2258         (re_string_construct): Don't initialize stop and valid_len here.
2259         Don't initialize mbs_case.  Use mbs_allocated instead of MBS_*
2260         macros.  Reallocate buffers if build_wcs_upper_buffer converted
2261         too few bytes.  Set valid_len to bufs_len only for single byte
2262         no translation and set in that case valid_raw_len as well.
2263         (re_string_realloc_buffers): Reallocate offsets if not NULL.
2264         Use mbs_allocated instead of MBS_ALLOCATED.  Don't reallocate
2265         mbs_case.
2266         (re_string_construct_common): Initialize raw_len, mbs_allocated,
2267         stop and raw_stop.
2268         (build_wcs_buffer): Apply pstr->trans before mbrtowc instead of
2269         after it.  Set valid_raw_len.  Don't set mbs_case.
2270         (build_wcs_upper_buffer): Return REG_NOERROR or REG_ESPACE.
2271         Only use the fast path if !pstr->offsets_needed.  Apply pstr->trans
2272         before mbrtowc instead of after it.  If upper case character
2273         uses different number of bytes than lower case, goto to the
2274         slow path.  Don't call towupper unnecessarily twice.  Set
2275         valid_raw_len as well.  Handle in the slow path the case if
2276         lower and upper case use different number of characters.
2277         Don't set mbs_case.
2278         (re_string_skip_chars): Use valid_raw_len instead of valid_len.
2279         (build_upper_buffer): Don't set mbs_case.  Add BE macro.  Set
2280         valid_raw_len.
2281         (re_string_translate_buffer): Set mbs instead of mbs_case.  Set
2282         valid_raw_len.
2283         (re_string_reconstruct): Use raw_len/raw_stop to initialize
2284         len/stop.  Clear valid_raw_len and offsets_needed when clearing
2285         valid_len.  Use mbs_allocated instead of MBS_* macros.
2286         Check original offset against valid_raw_len instead of valid_len.
2287         Remove mbs_case handling.  Adjust valid_raw_len together with
2288         valid_len.  If is_utf8 and looking for tip context, apply
2289         pstr->trans first.  If buffers start with partial multi-byte
2290         character, initialize mbs array as well if mbs_allocated.
2291         Check return value of build_wcs_upper_buffer.
2292         (re_string_peek_byte_case): New function.
2293         (re_string_fetch_byte_case): New function.
2294         (re_string_destruct): Use mbs_allocated instead of MBS_ALLOCATED.
2295         Don't free mbs_case.  Free offsets.
2296         * posix/regcomp.c (init_dfa): Only check if charset name is UTF-8
2297         if mb_cur_max == 6.
2298         * posix/regexec.c (re_search_internal): Initialize input.raw_stop
2299         as well.  Use valid_raw_len instead of valid_len when looking
2300         through fastmap.  Adjust registers through input.offsets.
2301         (extend_buffers): Allow build_wcs_upper_buffer to fail.
2302         * posix/bug-regex18.c (tests): Enable #ifdefed out tests.  Add new
2303         tests.
2305 2003-11-26  Jakub Jelinek  <jakub@redhat.com>
2307         * posix/regexec.c (check_subexp_limits): Only check close
2308         subexpression limitation if one is found.  Formatting.
2309         (sift_states_backward, check_arrival, check_arrival_add_next_nodes):
2310         Formatting.
2311         * posix/bug-regex11.c (tests): Enable most #ifdefed out tests.
2312         Add new test.
2314 2003-11-26  Ulrich Drepper  <drepper@redhat.com>
2316         * sysdeps/unix/sysv/linux/kernel-features.h
2317         (__ASSUME_PROT_GROWSUPDOWN): Define for 2.6.1 and up.
2318         * sysdeps/unix/sysv/linux/dl-execstack.c: Omit compatibility code
2319         if __ASSUME_PROT_GROWSUPDOWN is defined.
2321 2003-11-26  Andreas Jaeger  <aj@suse.de>
2323         * sysdeps/unix/sysv/linux/dl-execstack.c
2324         (_dl_make_stack_executable): Set dl_stack_flags always for
2325         success.
2327 2003-06-22  Petter Reinholdtsen  <pere@hungry.com>
2329         * locale/program/ld-monetary.c: Only check the first three
2330         characters in int_curr_symbol against ISO-4217, to make the
2331         separator character used by a locale independent of the content
2332         in iso-4217.def.
2333         * locale/iso-4217.def: Remove the space character from all
2334         currency values to get the new test code in ld-monetary.c working.
2336 2003-11-21  David Mosberger  <davidm@hpl.hp.com>
2338         * elf/soinit.c (_fini): Put _fini() in .init_array section if
2339         HAVE_INITFINI_ARRAY is defined.
2341 2003-11-25  Ulrich Drepper  <drepper@redhat.com>
2343         * sysdeps/i386/fpu/bits/mathinline.h: Introduce __libc_sqrtl symbol.
2344         Define it appropriately after last change.  Use it where __sqrtl
2345         was used.
2347 2003-11-25  H.J. Lu  <hongjiu.lu@intel.com>
2349         * sysdeps/i386/fpu/bits/mathinline.h (sqrt): Don't inline
2350         sqrt for gcc 3.3 and above.
2352 2003-11-25  Ulrich Drepper  <drepper@redhat.com>
2354         * posix/runptests.c (main): Make errors fatal.
2355         * posix/PTESTS: One test in GA135 and GA136 check functionality
2356         which seems not guaranteed.
2358 2003-11-25  Jakub Jelinek  <jakub@redhat.com>
2360         * posix/regexec.c (re_search_internal): If prune_impossible_nodes
2361         returned REG_NOMATCH, set match_last to -1.  Don't initialize
2362         pmatch[0] needlessly.  Fix comment.
2363         (prune_impossible_nodes): Don't segfault on NULL state_log entry.
2364         (set_regs): Fix comment.
2365         * posix/regcomp.c (parse_bracket_exp): Only set has_plural_match
2366         if adding both SIMPLE_BRACKET and COMPLEX_BRACKET.
2367         (build_charclass_op): Set has_plural_match if adding both
2368         SIMPLE_BRACKET and COMPLEX_BRACKET.
2369         * posix/bug-regex11.c (tests): Fix register values for one commented
2370         out test.  Add new tests.
2372         * posix/regex_internal.c (re_string_allocate): Make sure init_len
2373         is at least dfa->mb_cur_max.
2374         (re_string_reconstruct): If is_utf8, don't fall back into
2375         re_string_skip_chars just because idx points into a middle of
2376         valid UTF-8 character.  Instead, set the wcs bytes which correspond
2377         to the partial character bytes to WEOF.
2378         * posix/regexec.c (re_search_internal): Allocate input.bufs_len + 1
2379         instead of dfa->nodes_len + 1 state_log entries initially.
2380         * posix/bug-regex20.c (main): Uncomment backwards case insensitive
2381         tests.
2383 2003-11-24  Jakub Jelinek  <jakub@redhat.com>
2385         * posix/regex_internal.h (re_token_t): Add word_char bit.  Add
2386         comment.
2387         (re_dfa_t): Add sb_char field.
2388         (bitset_mask): New function.
2389         * posix/regcomp.c (free_dfa_content): Free sb_char.
2390         (init_dfa): Don't initialize word_char unnecessarily.
2391         Initialize sb_char.
2392         (duplicate_node): Don't duplicate !word_char CHARACTERs with
2393         NEXT_WORD_CONSTRAINT constraint or word_char CHARACTERs with
2394         NEXT_NOTWORD_CONSTRAINT.  Return -1 in *new_idx instead.
2395         (duplicate_node_closure): Handle clone_dest == -1 from
2396         duplicate_node.
2397         (peek_token): Initialize word_char bit.
2398         (parse_expression, parse_dup_op): Add comments.
2399         (parse_bracket_exp): Don't set bitmask bits for multi-byte char
2400         starting bytes here at the beginning.  Mask off the bits right
2401         before creating SIMPLE_BRACKET.
2402         (build_charclass_op): Likewise.
2403         * posix/regexec.c (group_nodes_into_DFAstates) <case OP_PERIOD>: Only
2404         set accept bits for single-byte characters.
2405         (group_nodes_into_DFAstates): Don't rely on characters 0 .. 127
2406         being single byte encoded and the rest multi-byte.
2407         * posix/bug-regex19.c (tests): Add new tests.
2408         (do_mb_tests): Initialize t to *test.
2409         (main): Fail even on do_mb_tests errors.
2411 2003-11-23  Ulrich Drepper  <drepper@redhat.com>
2413         * posix/regexec.c: Correct several memory allocation problems.
2414         Add more BE.
2415         * posix/regex_internal.c: Likewise.
2416         * posix/regcomp.c: Likewise.
2418         * posix/regexec.c: Add const in a number of places.
2419         * posix/regex_internal.h: Make EPSILON_BIT a macro to help
2420         debugging.  Its value isn't important.
2422 2003-11-22  Ulrich Drepper  <drepper@redhat.com>
2424         * posix/PTESTS: Fix first test of GA143.
2426 2003-11-21  Ulrich Drepper  <drepper@redhat.com>
2428         * posix/regex_internal.c (re_dfa_add_node): Add BE, reallocation
2429         isn't likely.
2431         * locale/programs/charmap.c (charmap_read): If encoding is found
2432         not ASCII compatible, set enc_not_ascii_compatible.
2433         * locale/programs/charmap.h: Declare enc_not_ascii_compatible.
2434         * locale/programs/ld-ctype.c (ctype_startup): If
2435         enc_not_ascii_compatible is set, initialize to_nonascii to 1.
2437 2003-11-22  Jakub Jelinek  <jakub@redhat.com>
2439         * elf/rtld.c (process_envvars): Only honor LD_USE_LOAD_BIAS
2440         if !__libc_enable_secure.
2442         * sysdeps/generic/ldsodefs.h (_dl_use_load_bias): New _rtld_global
2443         field.
2444         * elf/rtld.c (_rtld_global): Initialize _dl_use_load_bias field.
2445         (dl_main): Set GL(dl_use_load_bias) default.
2446         (process_envvars): Set GL(dl_use_load_bias) from LD_USE_LOAD_BIAS.
2447         Add EXTRA_LD_ENVVARS_13.
2448         * elf/dl-support.c (_dl_use_load_bias): New variable.
2449         * elf/dl-load.c (_dl_map_object_from_fd): Mask c->mapstart
2450         with GL(dl_use_load_bias).
2451         * sysdeps/generic/unsecvars.h (UNSECURE_ENVVARS): Add
2452         LD_USE_LOAD_BIAS.
2453         * sysdeps/unix/sysv/linux/dl-librecon.h (EXTRA_LD_ENVVARS): Remove.
2454         (EXTRA_LD_ENVVARS_LINUX): Renamed to...
2455         (EXTRA_LD_ENVVARS_13): ... this.  Remove case at the beginning.
2456         * sysdeps/unix/sysv/linux/i386/dl-librecon.h (EXTRA_LD_ENVVARS):
2457         Don't undefine first.  Remove EXTRA_LD_ENVVARS_LINUX.
2459 2003-11-21  Ulrich Drepper  <drepper@redhat.com>
2461         * posix/regcomp.c (duplicate_node): Remove unnecessary local variable.
2463         * posix/regcomp.c (re_dfa_add_tree_node): Make fourth parameter a
2464         pointer.  Adjust callers.
2466         * posix/regcomp.c (fetch_token): Change interface to match
2467         peek_token.  This avoids some copying and reduces code size.
2469 2003-11-21  Jakub Jelinek  <jakub@redhat.com>
2471         * posix/bug-regex19.c (tests): Add more tests.
2473         * posix/bug-regex11.c: And one more commented out test.
2475         * posix/tst-rxspencer.c (mb_tests): Don't run identical multi-byte
2476         tests multiple times unnecessarily.
2478         * posix/bug-regex19.c (BRE, ERE): Define.
2479         (tests): Add many new tests, remove UTF-8 ones.
2480         (do_one_test, do_mb_tests): New functions.
2481         (main): Rewritten using do_one_test and do_mb_tests.
2483 2003-11-20  Ulrich Drepper  <drepper@redhat.com>
2485         * posix/PTESTS: Fix first test in GA143.
2487 2003-11-20  Jakub Jelinek  <jakub@redhat.com>
2489         * posix/regex_internal.h (re_dfastate_t): Remove trtable_search.
2490         Add word_trtable.
2491         * posix/regex_internal.c (create_newstate_common, free_state):
2492         Don't free trtable_search.
2493         * posix/regexec.c (check_matching): Remove fl_search argument.
2494         (transit_state_sb): Likewise.  #ifdef out as unused.
2495         (build_trtable): Remove fl_search argument.  Set state->word_trtable
2496         and state->trtable.  Build separate word and non-word tables if
2497         multi-byte and they differ for some character.
2498         (transit_state): Remove fl_search argument.  Don't update
2499         state->trtable here.  Handle state->word_trtable.
2500         #ifdef out unused call to transit_state_sb.
2501         (re_search_internal): Update check_matching caller.
2502         (group_nodes_into_DFAstates): Don't clear non-ascii chars in accepts
2503         bitmask for multi-byte locales.
2504         * posix/bug-regex19.c (tests): Enable some commented out tests, add
2505         2 new tests.
2506         * posix/tst-rxspencer.c (mb_tests): Don't test [[=b=]] for now as
2507         multi-byte.  Don't run identical multi-byte tests multiple times
2508         unnecessarily.
2509         (main): Check setlocale return value.
2510         * posix/Makefile (tst-rxspencer-ARGS): Add --utf8 argument.
2511         (tst-rxspencer-ENV): Remove MALLOC_TRACE, add LOCPATH.
2512         ($(objpfx)tst-rxspencer-mem): Run another tst-rxspencer test
2513         here, without --utf8 argument but with MALLOC_TRACE.
2515 2003-11-19  Jakub Jelinek  <jakub@redhat.com>
2517         * posix/regexec.c (extend_buffers): Don't allocate
2518         twice as big state_log as needed.  Don't modify pstr->valid_len
2519         for mb_cur_max == 1 !icase !trans.
2521         * posix/regcomp.c (free_bin_tree): Removed.
2522         (create_tree): Add dfa argument.  Don't call re_malloc for
2523         each tree, instead allocate from str_tree_storage.
2524         (re_dfa_add_tree_node): New function.
2525         (free_dfa_content): Handle freeing if dfa->nodes == NULL
2526         or dfa->state_table == NULL.
2527         (re_compile_internal): Call free_dfa_content if init_dfa
2528         fails.  Call free_workarea_compile, re_string_destruct
2529         and free_dfa_content for most of the other failure paths.
2530         (init_dfa): Initialize str_tree_storage_idx.
2531         Don't clear any fields on allocation failure.
2532         (free_workarea_compile): Free str_tree_storage chunks
2533         instead of free_bin_tree (dfa->str_tree).
2534         (parse): Call re_dfa_add_tree_node instead of re_dfa_add_node
2535         followed by create_tree.  Add dfa argument to remaining
2536         create_tree calls.  Remove new_idx variable.  Remove calls
2537         to free_bin_tree.
2538         (parse_reg_exp, parse_branch, parse_expression, parse_sub_exp,
2539         parse_dup_op, parse_bracket_exp, build_charclass_op): Likewise.
2540         (duplicate_tree): Remove calls to free_bin_tree, add dfa
2541         argument to create_tree.
2542         * posix/regex_internal.h (BIN_TREE_STORAGE_SIZE): Define.
2543         (bin_tree_storage_t): New type.
2544         (re_dfa_t): Add str_tree_storage and str_tree_storage_idx
2545         fields.
2546         * posix/Makefile (tests): Add bug-regex21.
2547         (generated): Add bug-regex21-mem, bug-regex21.mtrace,
2548         tst-rxspencer-mem and tst-rxspencer.mtrace.
2549         (tests): Depend on $(objpfx)bug-regex21-mem
2550         and $(objpfx)tst-rxspencer-mem.
2551         (bug-regex21-ENV, tst-rxspencer-ENV): Set.
2552         ($(objpfx)bug-regex21-mem, $(objpfx)tst-rxspencer-mem): New.
2553         * posix/tst-rxspencer.c (main): Add call to mtrace.
2554         Free line at the end.
2555         * posix/bug-regex21.c: New test.
2557 2003-11-19  Ulrich Drepper  <drepper@redhat.com>
2559         * posix/bug-regex20.c: Correct invalid UTF-8 sequences.
2561         * posix/regex_internal.c (build_wcs_upper_buffer): If mbrtowc
2562         fails, just use the byte, do no fancy conversions.
2564         * posix/regex_internal.h (re_string_first_byte): Use ->valid_len
2565         not ->len.
2566         (re_string_is_single_byte_char): Likewise.
2568 2003-11-18  Ulrich Drepper  <drepper@redhat.com>
2570         * posix/regexec.c (get_subexp): After calling get_subexp_sub
2571         reload buf and bkref_str.  Little optimization by avoiding memcmp.
2573 2003-11-14  David Mosberger   <davidm@hpl.hp.com>
2575         * sysdeps/unix/sysv/linux/ia64/sysdep.h
2576         (GAS_ALIGN_BREAKS_UNWIND_INFO): Define this macro to indicate
2577         that all existing GAS versions have a problem with .align inside
2578         a function.
2579         * sysdeps/ia64/memccpy.S: Work around GAS_ALIGN_BREAKS_UNWIND_INFO bug.
2580         * sysdeps/ia64/memcpy.S: Likewise.
2581         * sysdeps/ia64/memset.S: Likewise.
2582         * sysdeps/ia64/memmove.S: Likewise.  Also move the jump-table to
2583         out of .text into .rodata, where it belongs.
2585         * sysdeps/unix/sysv/linux/ia64/pipe.S: There is no need to
2586         save/restore input-arguments, because they're necessarily
2587         preserved by the kernel to support syscall-restart.
2589 2003-11-18  Jakub Jelinek  <jakub@redhat.com>
2591         * posix/regex_internal.h (re_token_type_t): Remove unused ALT,
2592         END_OF_RE_TOKEN_T and SUBEXP.  Reorder values.  Add OP_UTF8_PERIOD
2593         and EPSILON_BIT.
2594         (IS_EPSILON_NODE): Just test if EPSILON_BIT is set.
2595         (ACCEPT_MB_NODE): Return 1 for OP_UTF8_PERIOD as well.
2596         * posix/regex_internal.c (create_ci_newstate, create_cd_newstate):
2597         Handle OP_UTF8_PERIOD.
2598         (re_string_reconstruct): Set valid_len for single byte char searching
2599         with no translation and case sensitivity.
2600         * posix/regcomp.c (re_compile_fastmap_iter, calc_first): Handle
2601         OP_UTF8_PERIOD.
2602         (re_compile_internal): Don't call optimize_utf8 if preg->translate
2603         != NULL.
2604         (optimize_utf8): Remove BACK_SLASH case.
2605         Transform OP_PERIOD into OP_UTF8_PERIOD if the searching can be
2606         optimized.
2607         (parse_bracket_exp): Don't create SIMPLE_BRACKET if it doesn't have
2608         any bits set and COMPLEX_BRACKET is used.
2609         * posix/regexec.c (transit_state_mb): Fix comment typo.
2610         (group_nodes_into_DFAstates, check_node_accept): Handle
2611         OP_UTF8_PERIOD.
2612         (check_node_accept_bytes): Likewise.  Reorder slightly so that
2613         re_string_char_size_at and re_string_elem_size_at are called
2614         only when needed.
2615         * posix/bug-regex20.c (BRE, ERE): Define.
2616         (tests): Use them to make lines shorter.  Expect . to be
2617         optimized.  Add lots of new tests.
2618         (main): Run (ATM just case sensitive) test with backwards searching
2619         as well.
2621 2003-11-18  Jakub Jelinek  <jakub@redhat.com>
2623         * io/bug-ftw4.c: Include string.h.
2624         * posix/fnmatch.c (mbsinit): Remove define.
2626 2003-11-17  Jakub Jelinek  <jakub@redhat.com>
2628         * posix/regcomp.c (optimize_utf8): Optimize multi-byte chars as
2629         well.
2630         * posix/bug-regex20.c (tests): Add new tests.  Multi-byte char
2631         followed by dup operator is expected to be optimized.
2633         * posix/regexec.c (check_node_accept_bytes): Move nrules and j
2634         variables to the block where they are only used, initialize
2635         nrules only immediately before using it.
2637 2003-11-15  Andreas Jaeger  <aj@suse.de>
2639         * sysdeps/x86_64/fpu/s_scalbnl.S: New file.
2640         * sysdeps/x86_64/fpu/s_truncl.S: New file.
2641         * sysdeps/x86_64/fpu/s_nearbyintl.S: New file.
2642         * sysdeps/x86_64/fpu/s_floorl.S: New file.
2643         * sysdeps/x86_64/fpu/s_ilogbl.S: New file.
2644         * sysdeps/x86_64/fpu/e_remainderl.S: New file.
2646         * math/libm-test.inc (floor_test): Test also Â±0.25.
2647         (ceil_test): Test -0.25.
2649 2003-11-17  Ulrich Drepper  <drepper@redhat.com>
2651         * sysdeps/posix/getaddrinfo.c: Add support for destination address
2652         selection according to RFC 3484.
2654 2003-11-15  Ulrich Drepper  <drepper@redhat.com>
2656         * posix/regex_internal.h: Add forward declaration of re_dfa_t.
2657         Replace last two parameters of re_string_allocate and
2658         re_string_construct with pointer to DFA.
2659         (re_dfa_t): Add map_notascii field.
2660         * posix/regcomp.c (re_compile_internal): Add call of
2661         re_string_construct.
2662         (init_dfa): Initialize map_notascii.
2663         * posix/regex_internal.c: Adjust definitions of re_string_allocate
2664         and re_string_construct.
2665         Pass DFA to re_string_construct.  Adjust definition.  Initialize
2666         map_notascii field.
2667         (build_wcs_upper_buffer): If map_notascii is zero use simplified
2668         method to map ASCII values to upper case.
2669         * posix/regex.c: Include localeinfo.h.
2670         * posix/regexec.c: Adjust call of re_string_allocate.
2672         * locale/langinfo.h: Add _NL_CTYPE_MAP_TO_NONASCII.
2673         * locale/localeinfo.h (LIMAGIC): Change value.
2674         * locale/categories.def. Add entry for _NL_CTYPE_MAP_TO_NONASCII.
2675         * locale/C-ctype.h: Likewise.
2676         * locale/programs/ld-ctype.c: Compute whether any mapping maps from
2677         ASCII to non-ASCII value.  Write out that value.
2679         * wcsmbs/mbsinit.c: Undef mbsinit and __mbsinit.
2680         * include/wchar.h: Provide inline versions of mbsinit and __mbsinit.
2682 2003-11-14  Jakub Jelinek  <jakub@redhat.com>
2684         * posix/tst-rxspencer.c (check_match): @ without any following
2685         characters must match only end of string.
2686         (main): Fix filename in error message.
2688 2003-11-12  David Mosberger  <davidm@hpl.hp.com>
2690         * sysdeps/ia64/dl-machine.h: Force inlining of
2691         elf_machine_runtime_setup().
2693 2003-11-13  Andreas Jaeger  <aj@suse.de>
2695         * math/Makefile (CFLAGS-test-float.c): Add -fno-builtin.
2696         (CFLAGS-test-double.c): Likewise.
2697         (CFLAGS-test-ldouble.c): Likewise.
2698         (CPPFLAGS-test-ifloat.c): Likewise.
2699         (CPPFLAGS-test-idouble.c): Likewise.
2700         (CPPFLAGS-test-ildoubl.c): Likewise.
2702         * math/libm-test.inc (ceil_test): Test ceil (0.25).
2704 2003-11-04  Ulrich Drepper  <drepper@redhat.com>
2706         * sysdeps/unix/sysv/linux/ifaddrs.c: Make sure it's the kernel who
2707         sends the netlink data.
2708         * sysdeps/unix/sysv/linux/check_pf.c: Likewise.
2710 2003-11-13  Jakub Jelinek  <jakub@redhat.com>
2712         * posix/regcomp.c (optimize_utf8): Optimize even if SIMPLE_BRACKET
2713         with no bits set for >= 0x80 chars is seen.
2714         * posix/bug-regex20.c (tests): Add new tests.  Expect [ABC] to be
2715         optimized.
2716         (main): Run all tests with RE_ICASE as well.
2718 2003-11-13  Ulrich Drepper  <drepper@redhat.com>
2720         * posix/Makefile: Add rules to build and run tst-rxspencer.
2721         (distribute): Add rxspencer/tests and rxspencer/COPYRIGHT.
2722         * posix/tst-rxspencer.c: New file.
2723         * posix/rxspencer/tests: New file.
2724         * posix/rxspencer/COPYRIGHT: New file.
2725         Patch mostly by Jakub Jelinek.
2727         * posix/regcomp.c (parse_bracket_exp): Don't check for range if
2728         this is no option given the first token.
2730         * posix/regcomp.c (parse_bracket_exp): Fix test for EOS after
2731         hyphen in range expression.  Return EBRACK in this case.
2733         * posix/regcomp.c (parse_bracket_element): Reject hyphens unless
2734         we expect them or it's the last element in the bracket expression.
2735         Indicated by new parameter.  Adjust all callers.
2737         * posix/runtests.c (run_a_test): If regcomp failed, reset last_pattern.
2738         Prettier error messages.
2740         * posix/regcomp.c (parse_dup_op): Fail with REG_BADBR is first
2741         number in {,} expression is larger.
2743 2003-11-13  Andreas Jaeger  <aj@suse.de>
2745         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_TGKILL):
2746         Define appropriately for x86_64.
2747         (__ASSUME_UTIMES): Likewise.
2748         (__ASSUME_CLONE_THREAD_FLAGS): Likewise.
2750         * sysdeps/x86_64/fpu/s_ceill.S: New file.
2752 2003-11-13  Ulrich Drepper  <drepper@redhat.com>
2754         * posix/regcomp.c (parse_expression): In BRE consecutive
2755         duplications are not allowed.
2757 2003-11-12  Ulrich Drepper  <drepper@redhat.com>
2759         * posix/regcomp.c (parse_bracket_exp): If end of expression is
2760         seen, return EBRACK error, not BADPAT.
2762         * posix/regcomp.c (parse_expression): If token is OP_OPEN_DUP_NUM
2763         and RE_CONTEXT_INVALID_DUP syntax flag is set, fail.
2764         * posix/regex.h (RE_CONTEXT_INVALUD_OPS): New macro.
2765         (RE_SYNTAX_POSIX_BASIC): Use RE_CONTEXT_INVALUD_OPS.
2767         * posix/regcomp.c (parse_sub_exp): In case of not-matching ( )
2768         return REG_EPAREN.
2770         * posix/PTESTS: Cleanup.  Fix typoes.  Correct bugs in 2003.2.
2771         * posix/runptests.c (main): Handle comments.
2772         * posix/PTESTS2C.sed: Handle comments.
2774 2003-11-12  Jakub Jelinek  <jakub@redhat.com>
2776         * posix/regcomp.c (optimize_utf8): New function.
2777         (re_compile_fastmap_iter): Use dfa->mb_cur_max > 1 instead
2778         of !icase.
2779         (re_compile_internal): Call optimize_utf8 if not case insensitive
2780         and in UTF-8 locale.
2781         * posix/regex_internal.h: Ifdef out some prototypes if
2782         RE_NO_INTERNAL_PROTOTYPES is defined to shut up warnings.
2783         * posix/Makefile (tests): Add bug-regex20.
2784         (bug-regex20-ENV): Add LOCPATH.
2785         * posix/bug-regex20.c: New test.
2787 2003-11-12  Jakub Jelinek  <jakub@redhat.com>
2789         * io/ftw.c (NFTW_NEW_NAME, NFTW_OLD_NAME): Add prototypes.
2791 2003-11-12  Jakub Jelinek  <jakub@redhat.com>
2793         * posix/tst-regex.c (umemlen): New variable.
2794         (test_expr): Add expectedicase argument.  Test case insensitive
2795         searches as well as backwards searches (case sensitive and
2796         insensitive) too.
2797         (run_test): Add icase argument.  Use it to compute regcomp flags.
2798         (run_test_backwards): New function.
2799         (main): Cast read to size_t to avoid warning.  Set umemlen.
2800         Add expectedicase arguments to test_expr.
2801         * posix/regex_internal.c (re_string_reconstruct): If is_utf8,
2802         find previous character by walking back instead of converting
2803         all chars from beginning.
2805 2003-11-12  Jakub Jelinek  <jakub@redhat.com>
2807         * posix/regex_internal.h (struct re_string_t): Add is_utf8
2808         and mb_cur_max fields.
2809         (struct re_dfa_t): Likewise.  Reorder fields to make structure
2810         smaller on 64-bit arches.
2811         (re_string_allocate, re_string_construct): Add mb_cur_max and
2812         is_utf8 arguments.
2813         (re_string_char_size_at, re_string_wchar_at): Use pstr->mb_cur_max
2814         instead of MB_CUR_MAX.
2815         * posix/regcomp.c (re_compile_fastmap_iter): Use dfa->mb_cur_max
2816         instead of MB_CUR_MAX.
2817         (re_compile_internal): Pass new arguments to re_string_construct.
2818         (init_dfa): Initialize mb_cur_max and is_utf8 fields.
2819         (peek_token, peek_token_bracket): Use input->mb_cur_max instead
2820         of MB_CUR_MAX.
2821         (parse_expression, parse_bracket_exp, parse_charclass_op): Use
2822         dfa->mb_cur_max instead of MB_CUR_MAX.
2823         * posix/regex_internal.c (re_string_construct_common): Add
2824         mb_cur_max and is_utf8 arguments.  Initialize fields with them.
2825         (re_string_allocate, re_string_construct): Add mb_cur_max and
2826         is_utf8 arguments, pass them to re_string_construct_common.
2827         Use mb_cur_max instead of MB_CUR_MAX.
2828         (re_string_realloc_buffers): Use pstr->mb_cur_max instead of
2829         MB_CUR_MAX.
2830         (re_string_reconstruct): Likewise.
2831         (re_string_context_at): Use input->mb_cur_max instead of
2832         MB_CUR_MAX.
2833         (create_ci_newstate, create_cd_newstate): Use dfa->mb_cur_max
2834         instead of MB_CUR_MAX.
2835         * posix/regexec.c (re_search_internal): Likewise.
2836         Pass new arguments to re_string_allocate.
2837         (check_matching, transit_state_sb): Use dfa->mb_cur_max instead of
2838         MB_CUR_MAX.
2839         (extend_buffers): Use pstr->mb_cur_max instead of MB_CUR_MAX.
2841 2003-11-12  Jakub Jelinek  <jakub@redhat.com>
2843         * posix/Makefile (tests): Add bug-regex19.
2844         (bug-regex19-ENV): Add LOCPATH.
2845         * posix/bug-regex19.c: New test.
2847 2003-11-11  Jakub Jelinek  <jakub@redhat.com>
2849         * posix/regcomp.c (re_compile_fastmap_iter): Handle RE_ICASE
2850         with MB_CUR_MAX > 1 locales in the fastmap.
2852 2003-11-11  Jakub Jelinek  <jakub@redhat.com>
2854         * posix/regex_internal.c (build_wcs_buffer): Fix comment typo.
2855         (build_wcs_upper_buffer): Likewise.  Use towupper for wchar_t instead
2856         of toupper.
2857         * posix/Makefile (tests): Add bug-regex17 and bug-regex18.
2858         (bug-regex17-ENV, bug-regex18-ENV): Add LOCPATH.
2859         * posix/bug-regex17.c: New file
2860         * posix/bug-regex18.c: New file.
2862 2003-10-08  Thorsten Kukuk  <kukuk@suse.de>
2864         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h (pread, pwrite):
2865         Define __NR_pread/__NR_pwrite if not done in kernel headers
2867 2003-11-11  Roland McGrath  <roland@redhat.com>
2869         * manual/xtract-typefun.awk: Swallow [(){}*] from function names.
2871         * manual/Makefile (info): Don't depend on dir-add.info.
2872         (libc.dvi libc.pdf libc.info): Depend on dir-add.texi.
2873         (dir-add.info): Target removed, replaced with ...
2874         (dir-add.texi): New target.
2875         (distribute): Add it.
2876         (install): Remove variant with --section arguments.
2877         Let the @dircategory directives do their work.
2878         (mostlyclean): Don't remove dir-add.info here.
2879         (realclean): Remove dir-add.texi here.
2880         * manual/libc.texinfo: @include dir-add.texi
2881         * configure.in: Remove check for old Debian install-info.
2882         * configure: Regenerated.
2883         * config.make.in (OLD_DEBIAN_INSTALL_INFO): Variable removed.
2885 2003-11-08  Andreas Schwab  <schwab@suse.de>
2887         * scripts/data/c++-types-ia64-linux-gnu.data: New file.
2889 2003-11-10  Carlos O'Donell  <carlos@baldric.uwo.ca>
2891         * io/ftwtest-sh: Fix nested sed commands.
2893 2003-11-10  Jakub Jelinek  <jakub@redhat.com>
2895         * posix/regex_internal.h (re_string_char_size_at): Don't look beyond
2896         valid_len wide chars.
2898 2003-11-09  Roland McGrath  <roland@redhat.com>
2900         * manual/examples/dir2.c (one): Add const to argument type.
2901         Reported by J de Haan <j.de.haan@home.nl>.
2903 2003-11-07  Ulrich Drepper  <drepper@redhat.com>
2905         * po/pl.po: Update from translation team.
2907 2003-11-07  Jakub Jelinek  <jakub@redhat.com>
2909         * io/ftw.c (NFTW_OLD_NAME, NFTW_NEW_NAME): Define.
2910         (ftw_dir, ftw_startup): Add __attribute ((noinline)).
2911         (NFTW_OLD_NAME, NFTW_NEW_NAME): New functions.
2912         (NFTW_NAME): Only define if !_LIBC, add versioned_symbol
2913         and compat_symbol.
2914         * io/ftw64.c (NFTW_OLD_NAME, NFTW_NEW_NAME): Define.
2915         * io/Versions (libc): Export nftw@@GLIBC_2.3.3
2916         and nftw64@@GLIBC_2.3.3.
2918         * io/ftw.h (FTW_ACTIONRETVAL): New flag.
2919         (FTW_CONTINUE, FTW_STOP, FTW_SKIP_SUBTREE, FTW_SKIP_SIBLINGS): New.
2920         * io/ftw.c (ftw_dir): Add old_dir argument.
2921         Clear result if it was FTW_SKIP_SIBLINGS after processing all
2922         dir entries.  Change cwd back if old_dir != NULL.
2923         (process_entry): Adjust caller.  Don't change cwd back here.
2924         Change FTW_SKIP_SUBTREE result to 0.
2925         (ftw_startup): Adjust ftw_dir caller.
2926         Clear result if it was FTW_SKIP_SUBTREE or FTW_SKIP_SIBLINGS.
2927         * io/ftwtest.c (skip_subtree, skip_siblings): New variables.
2928         (options, main): Add --skip-subtree and --skip-siblings options.
2929         (cb): Use return FTW_CONTINUE instead of return 0.
2930         Handle --skip-subtree and --skip-siblings.
2931         * io/ftwtest-sh: Add tests for FTW_ACTIONRETVAL.
2932         * manual/filesys.texi: Document FTW_ACTIONRETVAL.
2934 2003-11-04  Jakub Jelinek  <jakub@redhat.com>
2936         * io/ftw.c (ftw_dir): Close dir if callback with FTW_D type returns
2937         non-zero.
2938         * io/Makefile (tests): Add bug-ftw4.
2939         * io/bug-ftw4.c: New test.
2941 2003-10-27  Daniel Jacobowitz  <drow@mvista.com>
2943         * libio/libioP.h [_IO_USE_OLD_IO_FILE]
2944         (struct _IO_FILE_complete_plus): New type.
2945         * libio/oldiofopen.c (_IO_old_fopen): Use _IO_FILE_complete_plus.
2946         * libio/oldiofdopen.c (_IO_old_fdopen): Likewise.
2947         * libio/oldiopopen.c (struct _IO_proc_file, _IO_old_popen): Likewise.
2948         Call _IO_old_init instead of _IO_init.
2950 2003-11-03  Ulrich Drepper  <drepper@redhat.com>
2952         * intl/locale.alias: nb_NO is now the correct name, not no_NO.
2954         * locale/iso-639.def: Add Blin.
2955         Patch by Daniel Yacob <locales@geez.org>.
2957 2003-10-31  Steven Munroe  <sjmunroe@us.ibm.com>
2959         * sysdeps/powerpc/powerpc32/strncmp.S: New File.
2960         * sysdeps/powerpc/powerpc64/strncmp.S: New File.
2962 2003-11-01  Randolph Chung  <tausq@debian.org>
2964         * sysdeps/unix/sysv/linux/hppa/sysdep.h (LOAD_ARGS_0, LOAD_ARGS_1,
2965         LOAD_ARGS_2, LOAD_ARGS_3, LOAD_ARGS_4, LOAD_ARGS_5, LOAD_ARGS_6):
2966         Add missing parentheses.
2968 2003-11-01  Roland McGrath  <roland@redhat.com>
2970         * libio/bug-ftell.c (do_test): Add a cast.
2972 2003-09-26  Daniel Jacobowitz  <drow@mvista.com>
2974         * Makerules (shlib.lds): Make sure that ld doesn't try to link
2975         anything while generating the linker script.
2977 2003-10-31  Roland McGrath  <roland@redhat.com>
2979         * locale/lc-ctype.c (_nl_postload_ctype): Update _nl_global_locale's
2980         special members.
2982 2003-10-29  Ulrich Drepper  <drepper@redhat.com>
2984         * po/be.po: Update from translation team.
2986 2003-10-27  Ulrich Drepper  <drepper@redhat.com>
2988         * elf/rtld.c (map_doit): Pass __RTLD_OPENEXEC in last parameter to
2989         _dl_map_object.
2991         * elf/sprof.c (load_shobj): Use l_map_start not l_addr to locate
2992         ELF header.
2994         * inet/rcmd.c (__validuser2_sa): Remove unnecessary code to skip
2995         rest of line.  We use getline which means this cannot happen.
2997 2003-10-26  Ulrich Drepper  <drepper@redhat.com>
2999         * sysdeps/unix/sysv/linux/internal_statvfs.c (__internal_statvfs):
3000         Avoid infinite loops in case the mounts file is hosed.
3001         * io/Makefile: Add rules to build and run tst-statvfs.
3002         * io/tst-statvfs.c: New file.
3004         * include/dlfcn.h (__RTLD_OPENEXEC): Define.
3005         * elf/dl-load.c (_dl_map_object_from_fd): Don't allow loading
3006         executables unless __RTLD_OPENEXEC flag is present.
3007         * elf/rtld.c (dl_main): Pass __RTLD_OPENEXEC flag to
3008         _dl_map_object when loading the executable.
3010         * sysdeps/generic/glob.c (glob): Handle GLOB_BRACE and escaping
3011         correctly.
3012         * posix/globtest.sh: Add tests for GLOB_BRACE and escaping.
3014         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Default
3015         reverse lookup format for IPv6 addresses is using bitstring and
3016         .ip6.arpa suffix.
3017         * resolv/ns_name.c: Implement encoding and decoding bitstring in
3018         hex format.
3020 2003-10-23  Jakub Jelinek  <jakub@redhat.com>
3022         * locale/programs/locale.c (show_info): Fix printing word values on
3023         64-bit big-endian architectures.
3025 2003-10-19  Bruno Haible  <bruno@clisp.org>
3027         * intl/hash-string.c (hash_string): Zero-extend each char from the
3028         string; the old code did a sign-extend on some platforms.
3030 2003-10-22  Steven Munroe  <sjmunroe@us.ibm.com>
3032         * sysdeps/powerpc/powerpc32/Makefile (+cflags, asm-CPPFLAGS): Don't
3033         append options to these.
3034         * sysdeps/powerpc/powerpc64/Makefile (+cflags, asm-CPPFLAGS): Likewise.
3036 2003-10-18  Carlos O'Donell  <carlos@baldric.uwo.ca>
3038         * sysdeps/unix/sysv/linux/hppa/sysdep.h: Fix merge error.
3040 2003-10-15  Roland McGrath  <roland@redhat.com>
3042         * elf/dl-iteratephdr.c [! SHARED] (dl_iterate_phdr): New function.
3043         Fake an entry for the main executable and then call __dl_iterate_phdr.
3044         * elf/Makefile (routines): Remove dl-iteratephdr-static.
3045         (elide-routines.os): Likewise.
3046         (CFLAGS-dl-iterate-phdr-static.c): Variable removed.
3047         * sysdeps/generic/dl-iteratephdr-static.c: File removed.
3048         * sysdeps/unix/sysv/linux/ia64/dl-iteratephdr-static.c: File removed.
3050 2003-10-15  Jakub Jelinek  <jakub@redhat.com>
3052         * elf/rtld.c (print_statistics): Print also number of relative
3053         relocations.
3055 2003-10-12  Carlos O'Donell  <carlos@baldric.uwo.ca>
3057         * sysdeps/hppa/sysdep.h: Undef JUMPTARGET before use.
3058         * sysdeps/unix/sysv/linux/hppa/sysdep.h: Define PSEUDO_ERRVAL,
3059         SYSCALL_ERROR_LABEL under all conditions, INTERNAL_SYSCALL_DECL,
3060         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO, INTERNAL_SYSCALL,
3061         and undef JUMPTARGET before use.
3062         [PIC]: Save pic register around syscall.
3063         * sysdeps/unix/sysv/linux/hppa/sysdep.c (syscall):
3064         Cleanup asm statment.
3066 2003-10-13  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
3068         * sysdeps/unix/sysv/linux/sh/sysdep.h (DO_CALL): Add SYSCALL_INST_PAD
3069         after trapa instruction.
3071 2003-10-09  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
3073         * sysdeps/unix/sysv/linux/sh/syscalls.list: Add waitpid.
3075 2003-10-10  Carlos O'Donell  <carlos@baldric.uwo.ca>
3077         * sysdeps/hppa/Makefile (CFLAGS-malloc.c): Variable removed.
3079 2003-10-09  Roland McGrath  <roland@redhat.com>
3081         * elf/rtld.c (dl_main): Don't set l_name for sysinfo DSO, since there
3082         is no file to name.
3084 2003-10-08  Jakub Jelinek  <jakub@redhat.com>
3086         * sysdeps/generic/dl-sysdep.c (_dl_important_hwcaps): Don't generate
3087         two identical copies of strings.
3089 2003-10-06  Ulrich Drepper  <drepper@redhat.com>
3091         * posix/bug-regex11.c: Add some more tests which fail so far.
3092         Disable them.  Patch by Paolo Bonzini <bonzini@gnu.org>.
3094 2003-10-05  Paolo Bonzini  <bonzini@gnu.org>
3096         * posix/bug-regex11.c: Add more backreference-related test cases.
3097         (main): Show the failing regex in the error messages.
3098         * posix/regexec.c (check_dst_limits_calc_pos):
3099         Simplify some nested conditionals.  Replace if's with a switch
3100         statement.
3101         (check_dst_limits_calc_pos <TYPE_BKREF>): Rename parameter NODE to
3102         FROM_NODE, it shadows a local variable; don't recurse if FROM_NODE
3103         does not change in the recursive invocation, fixing an infinite loop
3104         in the ()\1*\1* regex.
3105         (sift_states_backward): Fix function comment.
3106         * posix/regcomp.c (calc_epsdest): Add an assertion.
3108 2003-10-06  Ulrich Drepper  <drepper@redhat.com>
3110         * manual/examples/testopt.c: Fix warnings.  Better error message
3111         for missing -c argument.
3112         Patch mostly by Gitonga Marete <bgmarete@comcast.net>.
3114         * timezone/asia: Update from tzdata2003d.
3115         * timezone/australasia: Likewise.
3116         * timezone/backward: Likewise.
3117         * timezone/europe: Likewise.
3118         * timezone/iso3166.tab: Likewise.
3119         * timezone/northamerica: Likewise.
3120         * timezone/southamerica: Likewise.
3121         * timezone/zone.tab: Likewise.
3123 2003-10-05  Jakub Jelinek  <jakub@redhat.com>
3125         * sysdeps/ia64/backtrace.c: New file.
3126         * sysdeps/x86_64/backtrace.c: New file.
3127         * sysdeps/generic/unwind.h (_Unwind_Trace_Fn): New type.
3128         (_Unwind_Backtrace): New prototype.
3130 2003-10-03  Ulrich Drepper  <drepper@redhat.com>
3132         * sysdeps/i386/elf/bsd-setjmp.S: Use linkonce section for PIC stub.
3133         * sysdeps/i386/elf/setjmp.S: Likewise.
3135 2003-10-02  Roland McGrath  <roland@redhat.com>
3137         * argp/argp-help.c (__argp_short_program_name): Move inside [! _LIBC].
3138         * argp/argp-namefrob.h
3139         [_LIBC || HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME]
3140         (__argp_short_program_name): Don't declare fn, define it as a macro.
3142 2003-08-22  Simon Josefsson  <jas@extundo.com>
3144         * argp/argp-fmtstream.h [!__attribute__]: Define to nothing.
3146         * argp/argp-help.c: Don't include malloc.h, some platforms
3147         complain and it doesn't appear to be used.
3148         [!_LIBC && HAVE_STRERROR_R && !HAVE_DECL_STRERROR_R]: Declare
3149         strerror_r.
3150         [!_LIBC && !HAVE_STRERROR_R && !HAVE_DECL_STRERROR]: Declare
3151         strerror.
3152         (hol_entry_long_iterate): Change __attribute to __attribute__.
3153         (_help, __argp_error, __argp_failure) [!_LIBC && (HAVE_FLOCKFILE
3154         && HAVE_FUNLOCKFILE)]: Protect call to flockfile and funlockfile.
3155         (__argp_basename) [!_LIBC]: New. Taken from LSH, by Niels Möller,
3156         modified after comments from Ulrich Drepper.
3157         (__argp_short_program_name): Ditto.
3158         (__argp_state_help, __argp_error, __argp_failure): Use it.
3159         (__argp_failure): Use strerror when necessary.
3161         * argp/argp-namefrob.h (__flockfile, __funlockfile, __mempcpy)
3162         (__strchrnul, __strerror_r, __strndup) [!_LIBC]: Remove __-prefix.
3163         (clearerr_unlocked, feof_unlocked, ferror_unlocked)
3164         (fflush_unlocked, fgets_unlocked, fputc_unlocked, fputs_unlocked)
3165         (fread_unlocked, fwrite_unlocked, getc_unlocked, getchar_unlocked)
3166         (putc_unlocked, putchar_unlocked) [!_LIBC && !HAVE_DECL_*]: Map to
3167         non-unlocked functions.
3168         [!_LIBC]: Add prototypes for __argp_basename and
3169         __argp_short_program_name.
3171         * argp/argp-parse.c (argp_default_parser): Only use
3172         program_invocation{_short,}_name if declared.
3173         (parser_init): Use __argp_short_program_name.
3175         * argp/argp-xinl.c [_LIBC || HAVE_FEATURES_H]: Add CPP check for
3176         '#include features.h'.
3178         * argp/argp.h [!__attribute__]: Define to nothing.
3180 2003-09-26  Paolo Bonzini  <bonzini@gnu.org>
3182         * posix/regcomp.c (parse_sub_exp): Pass RE_CARET_ANCHORS_HERE
3183         for the first token in a subexpression as well.
3185 2003-10-02  Jakub Jelinek  <jakub@redhat.com>
3187         * posix/regcomp.c (peek_token): Add 2003-09-20 changes for anchor
3188         handling again.
3189         (parse_reg_exp): Likewise.
3190         * posix/regex.h (RE_CARET_ANCHORS_HERE): Define.
3192         * posix/bug-regex11.c (tests): Add new tests.
3193         * posix/bug-regex12.c (tests): Add new test.
3195 2003-10-01  Thorsten Kukuk  <kukuk@suse.de>
3197         * elf/dl-reloc.c (_dl_allocate_static_tls): Move definition of
3198         variables only used if TLS_DTV_AT_TP is defined into the #if branch.
3200 2003-10-02  Jeroen Dekkers  <jeroen@dekkers.cx>
3202         * sysdeps/mach/hurd/malloc-machine.h: Copy the tsd code from
3203         the old thread-m.h header too.
3205 2003-10-02  Ulrich Drepper  <drepper@redhat.com>
3207         * sysdeps/unix/sysv/linux/ia64/bits/sigstack.h (MINSIGSTKSZ): Go
3208         back to 131027 since this is what the kernel enforces.
3210         * inet/getnameinfo.c: Move domain out of nrl_domainname scope and
3211         define it with libc_freeres_ptr.
3213 2003-10-01  Roland McGrath  <roland@redhat.com>
3215         * elf/rtld.c (dl_main): Add cast in last change.
3217 2003-09-10  Chris Demetriou  <cgd@broadcom.com>
3219         * sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h: Remove
3220         "#if 0" surrounding most of contents.
3221         (SYSCALL_ERROR_LABEL): Define.
3222         (__SYSCALL_CLOBBERS): Add $10.
3223         (internal_syscall7): Remove.
3224         * sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h: Likewise.
3226 2003-09-30  Ulrich Drepper  <drepper@redhat.com>
3228         * elf/rtld.c (dl_main): Also set l_map_start.
3230 2003-09-30  Daniel Jacobowitz  <drow@mvista.com>
3232         * elf/rtld.c (dl_main): Set l_libname and l_name for the sysinfo DSO
3233         to work around kernel problem.
3235 2003-09-27  Wolfram Gloger  <wg@malloc.de>
3237         * malloc/malloc.c: Include <malloc-machine.h> earlier instead of
3238         "thread-m.h", so that default parameters can be overridden in a
3239         system-specific malloc-machine.h.  Remove extra ; from extern "C"
3240         closing brace.
3241         * sysdeps/generic/malloc-machine.h: New file.
3242         * sysdeps/mach/hurd/malloc-machine.h: New file.
3243         * malloc/thread-m.h: Removed.
3244         * malloc/Makefile: Remove CFLAGS-malloc.c parameter addition, it
3245         is in sysdeps/generic/malloc-machine.h now.
3247 2003-09-29  Ulrich Drepper  <drepper@redhat.com>
3249         * elf/dl-reloc.c (_dl_allocate_static_tls): Move definition of
3250         variables only used if TLS_TCB_AT_TP is defined into the #if
3251         branch.
3253         * sysdeps/unix/sysv/linux/sys/sysmacros.h: Add __extension__ as
3254         well to cover using long long in C90.
3256 2003-09-28  Alfred M. Szmidt  <ams@kemisten.nu>
3258         * sysdeps/mach/hurd/bits/libc-lock.h (__libc_cleanup_pop):
3259         Redefine and use __libc_cleanup_region_end instead.
3261 2003-09-29  Thorsten Kukuk  <kukuk@suse.de>
3263         * sysdeps/unix/sysv/linux/sys/sysmacros.h: Use __inline and
3264         fix prototypes for picky C++ compilers.
3266 2003-09-27  Ulrich Drepper  <drepper@redhat.com>
3268         * sysdeps/unix/sysv/linux/ustat.c (ustat): Set errno to EINVAL if
3269         the device ID is invalid and return -1.
3270         * sysdeps/unix/sysv/linux/xmknod.c (__xmknod): Likewise.
3272 2003-09-26  Andreas Schwab  <schwab@suse.de>
3274         * sysdeps/unix/sysv/linux/ia64/getcontext.S: Pass fourth argument to
3275         rt_sigprocmask system call.
3277 2003-09-25  Roland McGrath  <roland@redhat.com>
3279         * sysdeps/unix/sysv/linux/dl-execstack.c (_dl_make_stack_executable):
3280         Don't check for zero __libc_stack_end, it should be initialized.
3281         [_STACK_GROWS_DOWN] [PROT_GROWSDOWN]: Try using PROT_GROWSDOWN flag
3282         and fall back if it fails with EINVAL.
3283         [_STACK_GROWS_UP] [PROT_GROWSUP]: Likewise for PROT_GROWSUP.
3285 2003-09-25  Jakub Jelinek  <jakub@redhat.com>
3287         * sysdeps/unix/sysv/linux/x86_64/dl-procinfo.c: Include
3288         sysdeps/i386/dl-procinfo.c instead of
3289         sysdeps/unix/sysv/linux/i386/dl-procinfo.c.
3290         * sysdeps/unix/sysv/linux/i386/dl-procinfo.h: Avoid using
3291         #include_next.
3293 2003-09-25  Ulrich Drepper  <drepper@redhat.com>
3295         * posix/regcomp.c (peek_token): Remove recent changes for anchor
3296         handling again.
3297         (parse_reg_exp): Likewise.
3298         * posix/regex.h: Remove RE_CARET_ANCHORS_HERE.
3300         * csu/Makefile ($(objpfx)version-info.h): Fix sed script to handle
3301         banners.
3303         * nis/nis_table.c (nis_list): Always strdup string used with
3304         ibreq->ibr_name.  Add several NULL pointer checks.
3306         * nis/nss_nisplus/nisplus-alias.c: Add check for NULL return value
3307         of nis_list.
3308         * nis/nss_nisplus/nisplus-ethers.c: Likewise.
3309         * nis/nss_nisplus/nisplus-grp.c: Likewise.
3310         * nis/nss_nisplus/nisplus-hosts.c: Likewise.
3311         * nis/nss_nisplus/nisplus-netgrp.c: Likewise.
3312         * nis/nss_nisplus/nisplus-network.c: Likewise.
3313         * nis/nss_nisplus/nisplus-proto.c: Likewise.
3314         * nis/nss_nisplus/nisplus-publickey.c: Likewise.
3315         * nis/nss_nisplus/nisplus-pwd.c: Likewise.
3316         * nis/nss_nisplus/nisplus-rpc.c: Likewise.
3317         * nis/nss_nisplus/nisplus-service.c: Likewise.
3318         * nis/nss_nisplus/nisplus-spwd.c: Likewise.
3320         * sysdeps/unix/sysv/linux/alpha/bits/mman.h: Define PROT_GROWSDOWN
3321         and PROT_GROWSUP.
3322         * sysdeps/unix/sysv/linux/arm/bits/mman.h: Likewise.
3323         * sysdeps/unix/sysv/linux/cris/bits/mman.h: Likewise.
3324         * sysdeps/unix/sysv/linux/hppa/bits/mman.h: Likewise.
3325         * sysdeps/unix/sysv/linux/i386/bits/mman.h: Likewise.
3326         * sysdeps/unix/sysv/linux/ia64/bits/mman.h: Likewise.
3327         * sysdeps/unix/sysv/linux/m68k/bits/mman.h: Likewise.
3328         * sysdeps/unix/sysv/linux/powerpc/bits/mman.h: Likewise.
3329         * sysdeps/unix/sysv/linux/s390/bits/mman.h: Likewise.
3330         * sysdeps/unix/sysv/linux/sh/bits/mman.h: Likewise.
3331         * sysdeps/unix/sysv/linux/sparc/bits/mman.h: Likewise.
3332         * sysdeps/unix/sysv/linux/x86_64/bits/mman.h: Likewise.
3334 2003-09-25  Jakub Jelinek  <jakub@redhat.com>
3336         * misc/syslog.c: Include locale.h.
3337         (vsyslog): Add date always in C locale %h %e %T format.
3339 2003-09-24  Paul Eggert  <eggert@twinsun.com>
3341         * argp/argp-fmtstream.c (__argp_fmtstream_ensure): Check for
3342         size_t overflow when reallocating storage.
3343         * argp/argp-help.c (make_hol, hol_append): Likewise.
3344         (SIZE_MAX): New macro.
3346 2003-08-07  Alfred M. Szmidt  <ams@kemisten.nu>
3348         * sysdeps/mach/hurd/bits/libc-lock.h
3349         (__libc_cleanup_push, __libc_cleanup_pop): New macros.
3351 2003-08-01  Alfred M. Szmidt  <ams@kemisten.nu>
3353         * sysdeps/i386/dl-procinfo.h: New file, contents taken from ...
3354         * sysdeps/unix/sysv/linux/i386/dl-procinfo.h: ... here.
3355         #include_next dl-procinfo.h to get them.
3356         (_DL_HWCAP_COUNT): Moved to sysdeps/i386/dl-procinfo.h.
3357         (_DL_PLATFORMS_COUNT): Likewise.
3358         (_DL_FIRST_PLATFORM): Likewise.
3359         (_DL_HWCAP_PLATFORM): Likewise.
3360         (HWCAP_I386_FPU, HWCAP_I386_VME, HWCAP_I386_DE, HWCAP_I386_PSE,
3361         HWCAP_I386_TSC, HWCAP_I386_MSR, HWCAP_I386_PAE, HWCAP_I386_MCE,
3362         HWCAP_I386_CX8, HWCAP_I386_APIC, HWCAP_I386_SEP, HWCAP_I386_MTRR,
3363         HWCAP_I386_PGE, HWCAP_I386_MCA, HWCAP_I386_CMOV,
3364         HWCAP_I386_FCMOV, HWCAP_I386_MMX, HWCAP_I386_OSFXSR,
3365         HWCAP_I386_XMM, HWCAP_I386_XMM2, HWCAP_I386_AMD3D,
3366         HWCAP_IMPORTANT): Likewise.
3367         (_DL_PROCINFO_H_): Likewise.
3368         (_dl_hwcap_string, _dl_platform_string, _dl_string_hwcap): Likewise.
3369         (_dl_string_platform): Likewise.
3370         * sysdeps/unix/sysv/linux/i386/dl-procinfo.c: Moved to ...
3371         * sysdeps/i386/dl-procinfo.c: ... here, new file.
3373 2003-09-24  Ulrich Drepper  <drepper@redhat.com>
3375         * sysdeps/unix/sysv/linux/dl-execstack.c
3376         (_dl_make_stack_executable): Remember that we changed the permission.
3378         * sysdeps/ia64/dl-machine.h (RTLD_START): Remove setting of
3379         __libc_stack_end.  Patch by David Mosberger.
3381 2003-09-24  Jakub Jelinek  <jakub@redhat.com>
3383         * elf/Versions (ld): Export __libc_stack_end@GLIBC_2.1 instead of
3384         __libc_stack_end@GLIBC_PRIVATE.
3386         * sysdeps/generic/dl-sysdep.c (DL_STACK_END): Define if not defined.
3387         (_dl_sysdep_start): Set __libc_stack_end here.
3388         * sysdeps/alpha/dl-machine.h (RTLD_START): Remove setting of
3389         __libc_stack_end.
3390         * sysdeps/arm/dl-machine.h (RTLD_START): Likewise.
3391         * sysdeps/cris/dl-machine.h (RTLD_START): Likewise.
3392         * sysdeps/i386/dl-machine.h (RTLD_START): Likewise.
3393         * sysdeps/m68k/dl-machine.h (RTLD_START): Likewise.
3394         * sysdeps/s390/s390-32/dl-machine.h (RTLD_START): Likewise.
3395         * sysdeps/s390/s390-64/dl-machine.h (RTLD_START): Likewise.
3396         * sysdeps/sh/dl-machine.h (RTLD_START): Likewise.
3397         * sysdeps/x86_64/dl-machine.h (RTLD_START): Likewise.
3398         * sysdeps/ia64/dl-machine.h (DL_STACK_END): Define.
3399         * sysdeps/sparc/sparc32/dl-machine.h (DL_STACK_END): Define.
3400         (RTLD_START): Remove setting of __libc_stack_end.
3401         * sysdeps/sparc/sparc64/dl-machine.h (DL_STACK_END): Define.
3402         (RTLD_START): Remove setting of __libc_stack_end.
3404 2003-09-24  Ulrich Drepper  <drepper@redhat.com>
3406         * sysdeps/unix/sysv/linux/sys/sysmacros.h: Add gnu_dev_ prefix to
3407         function definitions.  Adjust macro expansions accordingly.
3408         * sysdeps/unix/sysv/linux/Versions: Add gnu_dev_ prefix to major,
3409         minor, makedev name.
3410         * sysdeps/unix/sysv/linux/makedev.c: Likewise.
3412 2003-09-24  Jakub Jelinek  <jakub@redhat.com>
3414         * sysdeps/unix/sysv/linux/sys/sysmacros.h (major, minor, makedev):
3415         Add __THROW.
3417 2003-09-24  Jakub Jelinek  <jakub@redhat.com>
3419         * nscd/Makefile (others): Add nscd before including ../Rules.
3421 2003-09-24  Ulrich Drepper  <drepper@redhat.com>
3423         * nscd/Makefile: Add rules to build nscd as a PIE.
3424         * configure.in: Check for -fpie and -pie compiler options.
3425         * config.make.in (have-fpie): Define.
3427 2003-09-23  Ulrich Drepper  <drepper@redhat.com>
3429         * sysdeps/unix/sysv/linux/sys/sysmacros.h: Adjust for larger
3430         kernel dev_t size.
3431         * sysdeps/unix/sysv/linux/alpha/sys/sysmacros.h: Removed.
3432         * sysdeps/unix/sysv/linux/sparc/sys/sysmacros.h: Removed.
3433         * sysdeps/unix/sysv/linux/makedev.c: New file.
3434         * sysdeps/unix/sysv/linux/Dist: Add makedev.c.
3435         * sysdeps/unix/sysv/linux/Makefile [subdir=misc]
3436         (sysdep_routines): Add makedev.
3437         * sysdeps/unix/sysv/linux/Versions [libc] (GLIBC_2.3.3): Add
3438         major, minor, makedev.
3439         * sysdeps/unix/sysv/linux/ustat.c (ustat): Adjust for 32-bit
3440         kernel dev_t.
3441         * sysdeps/unix/sysv/linux/alpha/ustat.c: Removed.
3442         * sysdeps/unix/sysv/linux/xmknod.c (__xmknod): Likewise.
3443         * sysdeps/unix/sysv/linux/alpha/xmknod.c: Removed.
3444         Code by Alexander Viro <aviro@redhat.com>.
3446 2003-09-23  Ulrich Drepper  <drepper@redhat.com>
3448         * sysdeps/unix/sysv/linux/powerpc/powerpc32/Versions [libc]
3449         (GLIBC_2.3.3): Add setcontext, getcontext, swapcontext, and
3450         makecontext.
3451         * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: Correct change
3452         for include Altivec support for PPC32.  It was not compatible.
3453         * sysdeps/unix/sysv/linux/powerpc/powerpc32/ucontext_i.h: Adjust
3454         offsets for ucontext_t change.
3455         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Adjust
3456         for ucontext_t change.  Add compatibility code.
3457         * sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S: Likewise.
3458         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Likewise.
3459         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Likewise.
3460         Patch by Paul Mackerras <paulus@samba.org>.
3462 2003-02-25  Randolph Chung  <tausq@debian.org>
3464         * sysdeps/hppa/Makefile: Include compat code in build.
3465         * sysdeps/hppa/libgcc-compat.c: New file.
3466         * sysdeps/hppa/Dist: Add libgcc-compat.c.
3467         * sysdeps/hppa/Versions [GLIBC_2.2]: Add __clz_tab.
3469 2003-09-23  Roland McGrath  <roland@redhat.com>
3471         * elf/rtld.c (dl_main): In rtld_is_main case, reinitialize
3472         GL(dl_stack_flags) according to rtld's own PT_GNU_STACK.
3473         Move GL(dl_make_stack_executable_hook) initialization up.
3474         * elf/tst-execstack-prog.c: New file.
3475         * elf/Makefile (tests-execstack-yes): Add it.
3476         (LDFLAGS-tst-execstack-prog): New variable.
3478 2003-09-23  Jakub Jelinek  <jakub@redhat.com>
3480         * sysdeps/x86_64/dl-machine.h (RTLD_START): Set __libc_stack_end
3481         before calling _dl_start, using %rip relative access.
3482         Use %rip relative access to _dl_skip_args, _rtld_local._dl_loaded
3483         and _dl_fini.
3485 2003-09-23  Roland McGrath  <roland@redhat.com>
3487         * sysdeps/i386/dl-machine.h (RTLD_START): Set __libc_stack_end before
3488         calling _dl_start, using GOTOFF access.
3490         * configure.in (libc_cv_z_execstack): New check.
3491         * configure: Regenerated.
3492         * config.make.in (have-z-execstack): New variable set by it.
3493         * elf/tst-execstack.c: New file.
3494         * elf/tst-execstack-mod.c: New file.
3495         * elf/tst-execstack-needed.c: New file.
3496         * elf/Makefile (tests-execstack-yes, modules-execstack-yes): New
3497         variables.
3498         (tests, modules-names): Conditionally include them.
3499         (distribute): Add tst-execstack-mod.c here.
3500         ($(objpfx)tst-execstack, $(objpfx)tst-execstack.out): New targets.
3501         (LDFLAGS-tst-execstack, LDFLAGS-tst-execstack-mod): New variables.
3502         ($(objpfx)tst-execstack-needed): New target.
3503         (LDFLAGS-tst-execstack-needed): New variable.
3505         * sysdeps/generic/ldsodefs.h (struct rtld_global): Add _dl_stack_flags
3506         and _dl_make_stack_executable_hook.  Declare _dl_make_stack_executable.
3507         * elf/rtld.c (_rtld_global): Add initializer for _dl_stack_flags.
3508         (dl_main): Reset _dl_stack_flags according to PT_GNU_STACK phdr.
3509         Initialize _dl_make_stack_executable_hook.
3510         * elf/dl-support.c: Define those new variables.
3511         (_dl_non_dynamic_init): Scan phdrs for PT_GNU_STACK.
3512         (_dl_phdr): Fix type.
3513         * elf/dl-load.c (_dl_map_object_from_fd): Grok PT_GNU_STACK phdr and
3514         enable execute permission for the stack if necessary.
3515         * sysdeps/generic/dl-execstack.c: New file.
3516         * elf/Makefile (dl-routines): Add it.
3517         * elf/Versions (ld: GLIBC_PRIVATE): Add _dl_make_stack_executable.
3518         * sysdeps/unix/sysv/linux/dl-execstack.c: New file.
3520 2003-09-23  Ulrich Drepper  <drepper@redhat.com>
3522         * sysdeps/posix/sprofil.c (pc_to_index): Remove inline marker.
3524 2003-09-20  Alfred M. Szmidt  <ams@kemisten.nu>
3526         * sysdeps/generic/utmp_file.c (setutent_file, LOCK_FILE,
3527         UNLOCK_FILE, setutent_file): Use fcntl_not_cancel instead of
3528         __fcntl_nocancel.
3530 2003-09-22  Ulrich Drepper  <drepper@redhat.com>
3532         * malloc/malloc.c: Include <stdint.h>.
3534 2003-09-20  Paolo Bonzini  <bonzini@gnu.org>
3536         * posix/regcomp.c (build_word_op): Rename like...
3537         (build_charclass_op): ...this.  Accept two extra parameters,
3538         CLASS_NAME and EXTRA.  Add EXTRA to the result, not only _.
3539         (peek_token): Accept \s and \S as OP_SPACE and OP_NOTSPACE.
3540         (parse_expression): Replace build_word_op with
3541         build_charclass_op, add new arguments, accept OP_SPACE
3542         and OP_NOTSPACE.
3543         * posix/regex_internal.h (re_token_type_t): Add OP_SPACE
3544         and OP_NOTSPACE.
3546         * posix/regcomp.c (peek_token): Don't look back for ( or |
3547         to check whether to treat a caret as special.  It fails
3548         for the (extended) regex \(^.
3549         (parse, parse_reg_exp): Pass RE_CARET_ANCHORS_HERE to fetch_token.
3550         * posix/regex.h: Define RE_CARET_ANCHORS_HERE.
3552         * posix/regexec.c: Check out of bounds value before shifting.
3554         * posix/regex_internal.h: Define __attribute for non-gcc.
3556 2003-09-22  Jakub Jelinek  <jakub@redhat.com>
3558         * include/atomic.h (atomic_compare_and_exchange_val_rel,
3559         atomic_compare_and_exchange_bool_rel): Swap oldval/newval arguments
3560         to avoid confusion.
3562         * sysdeps/unix/opendir.c: Include string.h.
3564 2003-09-22  Ulrich Drepper  <drepper@redhat.com>
3566         * timezone/zdump.c: Update from tzcode2003c.
3567         * timezone/zic.c: Likewise.
3568         * timezone/leapseconds: Update from tzdata2003c.
3570 2003-09-19  Ulrich Drepper  <drepper@redhat.com>
3572         * elf/Makefile ($(objpfx)librtld.os): Create link map also for
3573         final build to ease quality control.
3575         * sysdeps/unix/sysv/linux/getcwd.c (__getcwd): If compiled for
3576         ld.so, don't include NULL buffer pointer handling.
3578 2003-09-19  Jakub Jelinek  <jakub@redhat.com>
3580         * dlfcn/dlopen.c (dlopen): Add static_link_warning.
3582 2003-09-18  Jakub Jelinek  <jakub@redhat.com>
3584         * libio/memstream.c (open_memstream): Use _IO_init instead of
3585         _IO_old_init.
3587 2003-09-17  Ulrich Drepper  <drepper@redhat.com>
3589         * sysdeps/generic/wordexp.c (eval_expr_val): Use strtol since we
3590         have to recognize octal and hexadecimal numbers as well.  Simplify
3591         function, signs are handled in strtol.
3592         * posix/wordexp-test.c: Add tests for octal and hexadecimal
3593         numbers in arithmetic expressions.
3595 2003-09-17  Jakub Jelinek  <jakub@redhat.com>
3597         * elf/Makefile (distribute): Add tst-alignmod.c.
3598         (tests): Add tst-align.
3599         (modules-names): Add tst-alignmod.
3600         (CFLAGS-tst-align.c, CFLAGS-tst-alignmod.c): Add
3601         $(stack-align-test-flags).
3602         ($(objpfx)tst-align): Depend on libdl.
3603         ($(objpfx)tst-align.out): Depend on tst-alignmod.so.
3604         * elf/tst-align.c: New file.
3605         * elf/tst-alignmod.c: New file.
3606         * misc/Makefile (CFLAGS-tst-tsearch.c): Add $(stack-align-test-flags).
3607         * misc/tst-tsearch.c: Include tst-stack-align.h.
3608         (stack_align_check): New array.
3609         (cmp_fn, walk_action): Use TEST_STACK_ALIGN ().
3610         (main): Report error if stack was not enough aligned
3611         in cmp_fn or walk_action.
3612         * stdlib/Makefile (CFLAGS-tst-qsort.c): Add $(stack-align-test-flags).
3613         * stdlib/tst-qsort.c: Include tst-stack-align.h.
3614         (align_check): New var.
3615         (compare): Use TEST_STACK_ALIGN () macro.
3616         (main): Report error if stack was not enough aligned in compare.
3617         * sysdeps/i386/i686/Makefile (stack-align-test-flags): Remove
3618         unneeded -mpreferred-stack-boundary=4.
3619         * sysdeps/x86_64/tst-stack-align.h: New file.
3621         * libio/memstream.c (_IO_wmem_jumps): Remove unused structure.
3622         (_IO_wmem_sync, _IO_wmem_finish): Remove unused functions.
3624 2003-09-17  Philip Blundell  <philb@gnu.org>
3626         * sysdeps/arm/dl-machine.h (CALL_ROUTINE): Deleted.
3627         (BX): Define.
3628         (ELF_MACHINE_RUNTIME_TRAMPOLINE): Optimise a little.
3630         * sysdeps/arm/sysdep.h (DO_RET): New.
3632         * sysdeps/unix/sysv/linux/arm/vfork.S: Add #error if __NR_vfork
3633         required but not defined.  Improve test of error code.
3635 2003-09-17  Jakub Jelinek  <jakub@redhat.com>
3637         * sysdeps/i386/Makefile (stack-align-test-flags): Add
3638         -malign-double -mpreferred-stack-boundary=4.
3640 2003-09-17  Ulrich Drepper  <drepper@redhat.com>
3642         * sysdeps/posix/utimes.c (__utimes): Truncate instead of round.
3643         * sysdeps/unix/sysv/linux/utimes.c (__utimes): Likewise.
3645 2003-09-15  Jakub Jelinek  <jakub@redhat.com>
3647         * sysdeps/i386/Makefile (sysdep-CFLAGS): If not in math or csu
3648         subdir, add -mpreferred-stack-boundary=4, with few exceptions.
3650 2003-09-17  Jakub Jelinek  <jakub@redhat.com>
3652         * Makeconfig (stack-align-test-flags): Set.
3653         * stdlib/Makefile (CFLAGS-tst-bsearch.c): Add
3654         $(stack-align-test-flags).
3655         * stdlib/tst-bsearch.c: Include tst-stack-align.h.
3656         (align_check): New var.
3657         (comp): Use TEST_STACK_ALIGN macro.
3658         (do_test): Fail if align_check != 1.
3659         * sysdeps/generic/tst-stack-align.h: New file.
3660         * sysdeps/i386/i686/Makefile (stack-align-test-flags): Add -msse.
3661         * sysdeps/i386/i686/tst-stack-align.h: New file.
3663 2003-09-17  Ulrich Drepper  <drepper@redhat.com>
3665         * sysdeps/unix/sysv/linux/i386/clone.S: Make sure child gets a
3666         stack which is aligned (mod 16).
3668 2003-09-17  Uwe Reimann  <Uwe_Reimann@gmx.net>
3669             Hans-Peter Nilsson  <hp@axis.com>
3671         * sysdeps/cris/dl-machine.h (elf_machine_type_class): Classify
3672         R_CRIS_GLOB_DAT as ELF_RTYPE_CLASS_PLT.  Clarify comment.
3674 2003-09-17  Jakub Jelinek  <jakub@redhat.com>
3676         * dirent/scandir.c: Include bits/libc-lock.h.
3677         (struct scandir_cancel_struct): New type.
3678         (cancel_handler): New function.
3679         (SCANDIR): Add __libc_cleanup_{push,pop}, save state into
3680         scandir_cancel_struct.
3682 2003-09-16  Ulrich Drepper  <drepper@redhat.com>
3684         * sysdeps/unix/sysv/linux/Dist: Remove internal_statvfs.c.
3685         * sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines):
3686         Add internal_statvfs.
3687         * sysdeps/unix/sysv/linux/fstatvfs.c: Call __internal_statvfs
3688         instead of including "internal_statvfs.c".
3689         * sysdeps/unix/sysv/linux/statvfs.c: Likewise.
3690         * sysdeps/unix/sysv/linux/internal_statvfs.c: Make it a real function.
3691         Add code to avoid the stat calls on all the reported mount points
3692         when we can determine mismatch in advance.
3693         * sysdeps/unix/sysv/linux/linux_fsinfo.h: Add AUTOFS_SUPER_MAGIC and
3694         USBDEVFS_SUPER_MAGIC.
3696 2003-09-16  Jakub Jelinek  <jakub@redhat.com>
3698         * posix/Versions (sched_getaffinity, sched_setaffinity): Change
3699         from GLIBC_2.3.2 to GLIBC_2.3.3 symbol version.
3701 2003-09-16  Bruno Haible  <bruno@clisp.org>
3703         * intl/tst-gettext2.sh: Set GCONV_PATH and LOCPATH only after
3704         invoking msgfmt, not before.
3706 2003-09-15  Jakub Jelinek  <jakub@redhat.com>
3708         * argp/argp.h (argp_parse, __argp_parse): Remove __THROW.
3709         * argp/Makefile (CFLAGS-argp-help.c, CFLAGS-argp-parse.c): Add
3710         $(uses-callbacks).
3711         * dirent/Makefile (CFLAGS-scandir.c, CFLAGS-scandir64.c): Likewise.
3712         * elf/Makefile (CFLAGS-dl-iterate-phdr.c,
3713         CFLAGS-dl-iterate-phdr-static.c): Add $(uses-callbacks).
3714         * elf/dl-iteratephdr.c (cancel_handler): New function.
3715         (__dl_iterate_phdr): Add __libc_cleanup_{push,pop}.
3716         * elf/link.h (dl_iterate_phdr): Remove __THROW.
3717         * io/Makefile (CFLAGS-fts.c): Merge into one assignment.
3718         Add $(uses-callbacks).
3719         (CFLAGS-ftw.c, CFLAGS-ftw64.c): Add $(uses-callbacks).
3720         * misc/Makefile (CFLAGS-tsearch.c, CFLAGS-lsearch.c): Change
3721         $(exceptions) to $(uses-callbacks).
3722         * Makeconfig (uses-callbacks): Set to $(exceptions).
3723         * posix/Makefile (CFLAGS-glob.c, CFLAGS-glob64.c): Add
3724         $(uses-callbacks).
3725         * stdlib/Makefile (CFLAGS-bsearch.c, CFLAGS-msort.c, CFLAGS-qsort.c):
3726         Likewise.
3728 2003-09-15  Andreas Schwab  <schwab@suse.de>
3730         * sysdeps/m68k/setjmp.c: Add hidden_def.
3732 2003-09-14  Ulrich Drepper  <drepper@redhat.com>
3734         * libio/memstream.c (open_memstream): Don't allow wide char operations.
3736         * dirent/dirent.h: Remove __THROW from scandir.
3738 2003-09-14  Philip Blundell  <philb@gnu.org>
3740         * sysdeps/unix/sysv/linux/arm/mmap.S: Use sys_mmap2 if it's known
3741         to be available.
3743         * sysdeps/unix/sysv/linux/arm/mmap64.S: Optimise code a little.
3745         * sysdeps/arm/memset.S: Rewrite.
3747 2003-09-12  Jakub Jelinek  <jakub@redhat.com>
3749         * sysdeps/unix/sysv/linux/s390/bits/typesizes.h: New.
3750         (__SSIZE_T_TYPE): Define to __SWORD_TYPE for gcc 2.95.x and
3751         __SLONGWORD_TYPE otherwise.
3753 2003-09-14  Ulrich Drepper  <drepper@redhat.com>
3755         * io/Makefile (CFLAGS-ftw.c): Add -fexceptions.
3756         (CFLAGS-ftw64.c): Likewise.
3758 2003-09-13  Ulrich Drepper  <drepper@redhat.com>
3760         * nscd/Makefile (CFLAGS-nscd_getpw_r.c): Add -fexceptions.
3761         (CFLAGS-nscd_getgr_r.c): Likewise.
3762         (CFLAGS-nscd_gethst_r.c): Likewise.
3764 2003-09-12  Ulrich Drepper  <drepper@redhat.com>
3766         * sysdeps/unix/sysv/linux/if_index.c: Use only non-cancelable
3767         interfaces.
3769         * grp/Makefile (CFLAGS-getgrgid_r.c, CFLAGS-getgrnam_r.c,
3770         CFLAGS-fgetgrent.c, CFLAGS-fgetgrent_r.c, CFLAGS-putgrent.c,
3771         CFLAGS-initgroups.c, CFLAGS-getgrgid.c): Add -fexceptions.
3772         * inet/Makefile (CFLAGS-either_ntoh.c, CFLAGS-either_hton.c,
3773         CFLAGS-getnetgrent.c, CFLAGS-getnetgrent_r.c): Likewise.
3774         * io/Makefile (CFLAGS-posix_fallocate.c, CFLAGS-posix_fallocate64.c):
3775         Likewise.
3776         * misc/Makefile (CFLAGS-err.c): Likewise.
3777         * posix/Makefile (CFLAGS-getaddrinfo.c, CFLAGS-spawn.c,
3778         CFLAGS-spawnp.c, CFLAGS-spawni.c, CFLAGS-pause.c, CFLAGS-glob.c,
3779         CFLAGS-glob64.c): Likewise.
3780         * pwd/Makefile (CFLAGS-getpw.c): Likewise.
3781         * shadow/Makefile (CFLAGS-fgetspent.c, CFLAGS-fgetspent_r.c,
3782         CFLAGS-putspent.c, CFLAGS-getspnam.c, CFLAGS-getspnam_r.c): Likewise.
3783         * stdio-common/Makefile (CFLAGS-cuserid.c): Likewise.
3784         * sunrpc/Makefile (CFLAGS-openchild.c): Likewise.
3786         * stdlib/Makefile (CFLAGS-mkstemp.c): Remove definition.
3788         * libio/stdio.h: Remove __THROW from cuserid prototype.
3790         * locale/loadarchive.c: Use only non-cancelable interfaces.
3791         * resolv/herror.c (herror): Likewise.
3793         * malloc/hooks.c: Before using IO stream mark stream so it uses
3794         only non-cancelable interfaces.
3795         * malloc/malloc.c: Likewise.
3796         * posix/getopt.c: Likewise.
3799 2003-09-11  Jakub Jelinek  <jakub@redhat.com>
3801         * Makerules (LDFLAGS-c.so): Remove -u __register_frame.
3803 2003-09-12  Ulrich Drepper  <drepper@redhat.com>
3805         * stdio-common/stdio_ext.h: Mark most functions with __THROW.
3807         * misc/err.h: Remove __THROW from all prototypes.
3809         * posix/getopt.h (__THROW): Define if not already defined.  Add
3810         __THROW to the getopt functions.
3812 2003-09-11  Ulrich Drepper  <drepper@redhat.com>
3814         * io/Makefile (CFLAGS-lockf.c): Add -fexceptions.
3815         (CFLAGS-fts.c): Likewise.
3816         * io/fcntl.h: Remove __THROW from lockf prototypes.
3817         * io/fts.h: Remove most __THROW.
3819 2003-09-11  H.J. Lu  <hongjiu.lu@intel.com>
3821         * elf/tls-macros.h (TLS_IE): Add a stop bit for ia64.
3822         (TLS_LD): Likewise.
3823         (TLS_GD): Likewise.
3825 2003-09-11  Jakub Jelinek  <jakub@redhat.com>
3827         * libio/fileops.c (_IO_new_file_overflow): Add INTUSE to
3828         _IO_free_backup_area call.
3830 2003-09-10  Chris Demetriou  <cgd@broadcom.com>
3832         * sysdeps/unix/sysv/linux/mips/pread64.c (__libc_pread64): Fix
3833         syscall invocation.
3834         * sysdeps/unix/sysv/linux/mips/pwrite64.c (__libc_pwrite64): Likewise.
3835         * sysdeps/unix/sysv/linux/mips/pread.c (__libc_pread): Likewise.
3836         Also, only assert off_t size is 4 for N32 and O32, and clean up
3837         white space.
3838         * sysdeps/unix/sysv/linux/mips/pwrite.c (__libc_pwrite): Likewise.
3840 2003-09-10  Roland McGrath  <roland@redhat.com>
3842         * sysdeps/unix/sysv/linux/tcgetattr.c (__tcgetattr):
3843         Don't use c_ispeed under [! _HAVE_STRUCT_TERMIOS_C_ISPEED].
3844         Don't use c_ospeed under [! _HAVE_STRUCT_TERMIOS_C_OSPEED].
3845         * sysdeps/unix/sysv/linux/tcsetattr.c (tcsetattr): Likewise.
3846         Reported by Daniel Jacobowitz  <drow@mvista.com>.
3848 2003-09-10  Jakub Jelinek  <jakub@redhat.com>
3850         * string/Makefile (strop-tests): Add memccpy.
3851         * string/test-memccpy.c: New test.
3853 2003-09-09  Jakub Jelinek  <jakub@redhat.com>
3855         * sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h (SIGCONTEXT): Add
3856         siginfo_t * argument before, change into struct ucontext *.
3857         (SIGCONTEXT_EXTRA_ARGS): Define to _si,.
3858         (GET_PC, GET_FRAME, GET_STACK): Adjust for ctx being a pointer
3859         instead of structure.
3860         * sysdeps/unix/sysv/linux/x86_64/register-dump.h (REGISTER_DUMP):
3861         Likewise.
3863 2003-09-09  Ulrich Drepper  <drepper@redhat.com>
3865         * string/stratcliff.c (main): Check memccpy.
3867 2003-04-11  Jes Sorensen  <jes@wildopensource.com>
3869         * sysdeps/ia64/memccpy.S: When recovering for src_aligned and the
3870         character is found during recovery, use correct register when
3871         determining the position of the found character.
3873 2003-04-01  Jes Sorensen  <jes@wildopensource.com>
3875         * sysdeps/ia64/memccpy.S: Use speculatively loads for readahead to
3876         avoid segfaults when reading from unmapped pages. For aligned
3877         reload and continue, for misaligned, roll back and use byte copy.
3878         Save ar.ec on entry and restore on exit.
3880 2003-09-09  Chris Demetriou  <cgd@broadcom.com>
3882         * sysdeps/unix/mips/sysdep.h (PSEUDO_END): Undef before defining.
3884 2003-09-08  Chris Demetriou  <cgd@broadcom.com>
3886         * sysdeps/mips/mips64/n32/Implies: Move ieee754/ldbl-128 to
3887         the top of the list.
3888         * sysdeps/mips/mips64/n64/Implies: Likewise.
3890 2003-09-08  Roland McGrath  <roland@frob.com>
3892         * sysdeps/unix/sysv/linux/speed.c
3893         (cfsetospeed): Only set c_ospeed under [_HAVE_STRUCT_TERMIOS_C_OSPEED].
3894         (cfsetispeed): Only set c_ispeed under [_HAVE_STRUCT_TERMIOS_C_ISPEED].
3895         * sysdeps/unix/sysv/linux/bits/termios.h
3896         (_HAVE_STRUCT_TERMIOS_C_ISPEED, _HAVE_STRUCT_TERMIOS_C_OSPEED): Define.
3897         * sysdeps/unix/sysv/linux/alpha/bits/termios.h: Likewise.
3898         * sysdeps/unix/sysv/linux/powerpc/bits/termios.h: Likewise.
3900 2003-09-08  Ulrich Drepper  <drepper@redhat.com>
3902         * sysdeps/unix/sysv/linux/x86_64/register-dump.h: Undo last change.
3903         * sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h: Likewise.
3905 2003-09-08  Jakub Jelinek  <jakub@redhat.com>
3907         * sysdeps/generic/bits/types.h (__quad_t): Make long int if 64-bit.
3908         (__u_quad_t): Make unsigned long int if 64-bit.
3909         (__SQUAD_TYPE): Make long int if 64-bit.
3910         (__UQUAD_TYPE): Make unsigned long int if 64-bit.
3911         * sysdeps/unix/sysv/linux/s390/bits/typesizes.h: Remove.
3913 2003-09-08  Ulrich Drepper  <drepper@redhat.com>
3915         * Makefile (tests): Run check-c++-types.sh if possible.
3916         * scripts/check-c++-types.h: New file.
3917         * scripts/data/c++-types-i386-linux-gnu.data: New file.
3919 2003-09-08  Andreas Jaeger  <aj@suse.de>
3921         * sysdeps/unix/sysv/linux/x86_64/register-dump.h (register_dump):
3922         Use struct sigcontext.
3924         * sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h (SIGCONTEXT):
3925         Use struct sigcontext.
3926         (GET_PC): Adopt.
3927         (GET_FRAME): Likewise.
3928         (GET_STACK): Likewise.
3930 2003-09-08  Wolfram Gloger  <wg@malloc.de>
3932         * malloc/malloc.c (sYSMALLOc): Move foreign sbrk accounting into
3933         contiguous case.  Bug report from Prem Gopalan <prem@mazunetworks.com>.
3934         (mALLOPt): Avoid requirement of C99.
3936 2003-09-08  Ulrich Drepper  <drepper@redhat.com>
3938         * libio/bug-ftell.c: Include <sys/types.h>.
3939         (main): Mark cp as const.
3941 2003-09-07  Jakub Jelinek  <jakub@redhat.com>
3943         * sysdeps/unix/sysv/linux/syscalls.list (fcntl): Remove.
3944         * sysdeps/unix/sysv/linux/x86_64/fcntl.c: Remove.
3946 2003-09-05  Roland McGrath  <roland@redhat.com>
3948         * sysdeps/unix/sysv/linux/tcgetattr.c (__tcgetattr): Fill in c_ispeed
3949         and c_ospeed fields.
3950         * sysdeps/unix/sysv/linux/speed.c (cfsetospeed): Set c_ospeed field.
3951         (cfsetispeed): Set c_ispeed field.
3952         * sysdeps/unix/sysv/linux/tcsetattr.c (IBAUD0): Define unconditionally
3953         to match corresponding speed.c code.
3955 2003-09-06  Ulrich Drepper  <drepper@redhat.com>
3957         * libio/wfileops.c (_IO_wfile_underflow): Mark beginning of the
3958         narrow character buffer.
3959         * libio/Makefile: Add rules to build and run bug-ftell.
3960         * libio/bug-ftell.c: New file.
3962         * stdio-common/vfprintf.c: Don't use the first grouping number twice.
3964         * stdio-common/vfscanf.c (vfscanf): Fix recognition of characters
3965         matching the decimal point and possibly leading the thousands
3966         separator.  This caused the recognition of thousands separators to
3967         always fail.
3969 2003-09-05  Ulrich Drepper  <drepper@redhat.com>
3971         * libio/fileops.c (_IO_new_file_overflow): Handle switching to
3972         write mode from read in backup buffer.
3973         * libio/Makefile (tests): Add bug-ungetc2.
3974         * libio/bug-ungetc2.c: New file.
3976 2003-09-05  Roland McGrath  <roland@redhat.com>
3978         * nss/getXXbyYY.c (FUNCTION_NAME): Remove unused variable.
3980 2003-09-04  Roland McGrath  <roland@frob.com>
3982         * sysdeps/mach/hurd/mmap.c (__mmap): If io_map fails with MIG_BAD_ID,
3983         EOPNOTSUPP, or ENOSYS, change it to ENODEV.
3985 2003-09-04  H.J. Lu  <hongjiu.lu@intel.com>
3987         * sysdeps/unix/sysv/linux/ia64/bits/sigstack.h (MINSIGSTKSZ):
3988         Fix a typo.
3990 2003-09-05  Andreas Jaeger  <aj@suse.de>
3992         * sysdeps/i386/bits/string.h (__memrchr): Do addition in assembler
3993         to make it conforming C.
3994         * sysdeps/i386/i486/bits/string.h (__memrchr): Likewise.
3996         * sysdeps/unix/sysv/linux/i386/fcntl.c (__fcntl_nocancel): Change
3997         prototype to use variable argument lists and get the possible one
3998         argument via va_arg.
3999         * sysdeps/unix/sysv/linux/fcntl.c (__fcntl_nocancel): Likewise.
4000         * sysdeps/unix/sysv/linux/x86_64/fcntl.c: New.
4002 2003-09-04  Ulrich Drepper  <drepper@redhat.com>
4004         * posix/unistd.h: Add back __THROW to sysconf, pathconf, fpathconf.
4006         * sysdeps/unix/sysv/linux/pathconf.c (__statfs_filesize_max):
4007         Report correct value for vxfs.
4008         * sysdeps/unix/sysv/linux/linux_fsinfo.h: Define VXFS_SUPER_MAGIC.
4010         * gmon/gmon.c: Use only not-cancelable syscalls to write profiling
4011         data.
4013         * sysdeps/generic/utmp_file.c: Use not-cancelable syscalls all
4014         over the place.  It would be allowed to have these functions as
4015         cancellation points but the cleanup would be ugly and a lot of
4016         work.
4018         * sysdeps/generic/not-cancel.h (fcntl_not_cancel): Define.
4019         * sysdeps/unix/sysv/linux/not-cancel.h (fcntl_not_cancel): Define.
4021         * include/fcntl.h (__fcntl_nocancel): Declare.
4022         * sysdeps/unix/sysv/linux/fcntl.c: New file.
4023         * sysdeps/unix/sysv/linux/i386/fcntl.c (__libc_fcntl): Only enable
4024         cancellation if absolutely needed.
4025         (__fcntl_nocancel): Define.
4027         * posix/unistd.h (gethostid): Remove __THROW.  Clarify comment.
4028         * sysdeps/unix/sysv/linux/Makefile (CFLAGS-gethostid.c): Add
4029         -fexceptions.
4030         * sysdeps/unix/sysv/linux/gethostid.c (gethostid): Use
4031         extend_alloca.
4033         * resolv/res_init.c (__res_nclose): Use close_not_cancel_no_status
4034         instead of __close.
4036         * nss/getXXbyYY.c (FUNCTION_NAME): Add a few casts.  Remove
4037         unnecessary errno handling.
4039         * nss/getXXbyYY_r.c (INTERNAL): Use better variable name.
4040         Initialize it in all cases.  Change it to be a bit more like the
4041         code we had before.
4043 2003-09-04  Jakub Jelinek  <jakub@redhat.com>
4045         * libio/fileops.c (_IO_file_read, _IO_new_file_write): Add
4046         __builtin_expect.
4047         (_IO_file_open): Likewise.  Use close_not_cancel.
4049 2003-09-04  Ulrich Drepper  <drepper@redhat.com>
4051         * libio/libio.h: Define _IO_FLAGS2_NOTCANCEL.
4052         * libio/fileops.c [_LIBC]: Remove close macro.
4053         (_IO_file_open): If _IO_FLAGS2_NOTCANCEL is set, use open_not_cancel.
4054         (_IO_new_file_open): Recognize 'c' flag in mode string.
4055         (_IO_file_read): If _IO_FLAGS2_NOTCANCEL is set use read_not_cancel.
4056         (_IO_new_file_write): If _IO_FLAGS2_NOTCANCEL is set use
4057         write_not_cancel.
4058         * iconv/gconv_conf.c: Use fopen with 'c' mode flag.
4059         * inet/rcmd.c: Likewise.
4060         * inet/ruserpass.c: Likewise.
4061         * intl/localealias.c: Likewise.
4062         * malloc/mtrace.c: Likewise.
4063         * misc/getpass.c: Likewise.
4064         * misc/getttyent.c: Likewise.
4065         * misc/mntent_r.c: Likewise.
4066         * misc/getusershell.c: Likewise.
4067         * nss/nsswitch.c: Likewise.
4068         * resolv/res_hconf.c: Likewise.
4069         * resolv/res_init.c: Likewise.
4070         * sysdeps/unix/sysv/linux/getsysstats.c: Likewise.
4071         * time/getdate.c: Likewise.
4072         * time/tzfile.c: Likewise.
4073         * misc/fstab.h: Undo last change.
4074         * misc/mntent.h: Likewise.
4075         * misc/Makefile: Remove CFLAGS-mntent_r.c, CFLAGS-mntent.c, and
4076         CFLAGS-fstab.c definition.
4078 2003-09-04  Jakub Jelinek  <jakub@redhat.com>
4080         * sysdeps/generic/unwind.h (_Unwind_GetBSP): Add prototype.
4082 2003-09-03  Ulrich Drepper  <drepper@redhat.com>
4084         * nss/getXXbyYY_r.c (INTERNAL): Explicitly set errno and avoid
4085         returning ERANGE if this wasn't intended.
4087 2003-09-03  Jakub Jelinek  <jakub@redhat.com>
4089         * intl/loadmsgcat.c (open, close, read, mmap, munmap): Define as
4090         function-like macros.
4092 2003-09-03  Ulrich Drepper  <drepper@redhat.com>
4094         * grp/Makefile (CFLAGS-getgrent_r.c): Add -fexceptions.
4095         (CFLAGS-getgrent.c): Likewise.
4096         * pwd/Makefile (CFLAGS-getpwent_r.c): Add -fexceptions.
4097         (CFLAGS-getpwent.c): Likewise.
4098         * shadow/Makefile (CFLAGS-getspent_r.c): Add -fexceptions.
4099         (CFLAGS-getspent.c): Likewise.
4101         * inet/Makefile: Add -fexceptions to CFLAGS for the various
4102         getXXent and getXXbyYY functions.
4104         * locale/loadlocale.c: Use not-cancelable variants of open, close,
4105         and read.
4107 2003-09-02  Jakub Jelinek  <jakub@redhat.com>
4109         * sysdeps/unix/sysv/linux/alpha/Makefile (sysdep_routines): Remove
4110         rt_sigsuspend, rt_sigprocmask, rt_sigtimedwait, rt_sigqueueinfo and
4111         rt_sigpending.
4112         * sysdeps/unix/sysv/linux/alpha/sigaction.c (__syscall_rt_sigaction):
4113         New prototype.
4114         * sysdeps/unix/sysv/linux/arm/syscalls.list (__syscall_*): Remove
4115         unused __syscall_ stubs.
4116         * sysdeps/unix/sysv/linux/arm/Makefile (sysdep_routines): Remove
4117         rt_*.
4118         * sysdeps/unix/sysv/linux/cris/Makefile: Removed.
4119         * sysdeps/unix/sysv/linux/mips/mips64/syscalls.list
4120         (__syscall_recvfrom, __syscall_sendto): Remove unused aliases.
4121         * sysdeps/unix/sysv/linux/mips/syscalls.list (__syscall_*): Remove
4122         unused __syscall_ stubs.
4123         * sysdeps/unix/sysv/linux/mips/Makefile (sysdep_routines): Remove rt_*.
4124         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list
4125         (__syscall_*): Remove unused __syscall_ stubs.
4126         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list
4127         (__syscall_*): Likewise.
4128         * sysdeps/unix/sysv/linux/powerpc/Makefile (sysdep_routines): Remove
4129         rt_*.
4130         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (__syscall_*):
4131         Remove unused __syscall_ stubs.
4132         * sysdeps/unix/sysv/linux/sh/Makefile (sysdep_routines): Remove rt_*.
4133         * sysdeps/unix/sysv/linux/rt_sigaction.c: Removed.
4134         * sysdeps/unix/sysv/linux/rt_sigpending.c: Removed.
4135         * sysdeps/unix/sysv/linux/rt_sigprocmask.c: Removed.
4136         * sysdeps/unix/sysv/linux/rt_sigqueueinfo.c: Removed.
4137         * sysdeps/unix/sysv/linux/rt_sigreturn.c: Removed.
4138         * sysdeps/unix/sysv/linux/rt_sigsuspend.c: Removed.
4139         * sysdeps/unix/sysv/linux/rt_sigtimedwait.c: Removed.
4140         * sysdeps/unix/sysv/linux/s_pread64.c: Removed.
4141         * sysdeps/unix/sysv/linux/s_pwrite64.c: Removed.
4142         * sysdeps/unix/sysv/linux/alpha/gethostname.c: Remove unused
4143         __syscall_* prototypes.
4144         * sysdeps/unix/sysv/linux/alpha/ipc_priv.h: Likewise.
4145         * sysdeps/unix/sysv/linux/alpha/msgctl.c: Likewise.
4146         * sysdeps/unix/sysv/linux/alpha/semctl.c: Likewise.
4147         * sysdeps/unix/sysv/linux/alpha/shmctl.c: Likewise.
4148         * sysdeps/unix/sysv/linux/arm/sigaction.c: Likewise.
4149         * sysdeps/unix/sysv/linux/i386/chown.c: Likewise.
4150         * sysdeps/unix/sysv/linux/i386/fchown.c: Likewise.
4151         * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.
4152         * sysdeps/unix/sysv/linux/i386/fxstat.c: Likewise.
4153         * sysdeps/unix/sysv/linux/i386/getegid.c: Likewise.
4154         * sysdeps/unix/sysv/linux/i386/geteuid.c: Likewise.
4155         * sysdeps/unix/sysv/linux/i386/setuid.c: Likewise.
4156         * sysdeps/unix/sysv/linux/i386/getgid.c: Likewise.
4157         * sysdeps/unix/sysv/linux/i386/getgroups.c: Likewise.
4158         * sysdeps/unix/sysv/linux/i386/getmsg.c: Likewise.
4159         * sysdeps/unix/sysv/linux/i386/xstat.c: Likewise.
4160         * sysdeps/unix/sysv/linux/i386/getresgid.c: Likewise.
4161         * sysdeps/unix/sysv/linux/i386/getresuid.c: Likewise.
4162         * sysdeps/unix/sysv/linux/i386/getrlimit.c: Likewise.
4163         * sysdeps/unix/sysv/linux/i386/getuid.c: Likewise.
4164         * sysdeps/unix/sysv/linux/i386/lchown.c: Likewise.
4165         * sysdeps/unix/sysv/linux/i386/lockf64.c: Likewise.
4166         * sysdeps/unix/sysv/linux/i386/lxstat.c: Likewise.
4167         * sysdeps/unix/sysv/linux/i386/putmsg.c: Likewise.
4168         * sysdeps/unix/sysv/linux/i386/setfsgid.c: Likewise.
4169         * sysdeps/unix/sysv/linux/i386/setfsuid.c: Likewise.
4170         * sysdeps/unix/sysv/linux/i386/setgid.c: Likewise.
4171         * sysdeps/unix/sysv/linux/i386/setgroups.c: Likewise.
4172         * sysdeps/unix/sysv/linux/i386/setregid.c: Likewise.
4173         * sysdeps/unix/sysv/linux/i386/setresgid.c: Likewise.
4174         * sysdeps/unix/sysv/linux/i386/setresuid.c: Likewise.
4175         * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise.
4176         * sysdeps/unix/sysv/linux/i386/setrlimit.c: Likewise.
4177         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
4178         * sysdeps/unix/sysv/linux/ia64/fxstat.c: Likewise.
4179         * sysdeps/unix/sysv/linux/ia64/lxstat.c: Likewise.
4180         * sysdeps/unix/sysv/linux/ia64/sigaction.c: Likewise.
4181         * sysdeps/unix/sysv/linux/ia64/sigpending.c: Likewise.
4182         * sysdeps/unix/sysv/linux/ia64/sigprocmask.c: Likewise.
4183         * sysdeps/unix/sysv/linux/ia64/sigsuspend.c: Likewise.
4184         * sysdeps/unix/sysv/linux/ia64/xstat.c: Likewise.
4185         * sysdeps/unix/sysv/linux/m68k/chown.c: Likewise.
4186         * sysdeps/unix/sysv/linux/mips/ftruncate64.c: Likewise.
4187         * sysdeps/unix/sysv/linux/mips/pread.c: Likewise.
4188         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
4189         * sysdeps/unix/sysv/linux/mips/ptrace.c: Likewise.
4190         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
4191         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
4192         * sysdeps/unix/sysv/linux/mips/sigaction.c: Likewise.
4193         * sysdeps/unix/sysv/linux/mips/truncate64.c: Likewise.
4194         * sysdeps/unix/sysv/linux/mips/ustat.c: Likewise.
4195         * sysdeps/unix/sysv/linux/mips/xmknod.c: Likewise.
4196         * sysdeps/unix/sysv/linux/powerpc/chown.c: Likewise.
4197         * sysdeps/unix/sysv/linux/powerpc/ioctl.c: Likewise.
4198         * sysdeps/unix/sysv/linux/s390/s390-32/chown.c: Likewise.
4199         * sysdeps/unix/sysv/linux/s390/s390-32/lchown.c: Likewise.
4200         * sysdeps/unix/sysv/linux/s390/s390-64/xstat.c: Likewise.
4201         * sysdeps/unix/sysv/linux/s390/s390-64/fxstat.c: Likewise.
4202         * sysdeps/unix/sysv/linux/s390/s390-64/lxstat.c: Likewise.
4203         * sysdeps/unix/sysv/linux/s390/s390-64/sigaction.c: Likewise.
4204         * sysdeps/unix/sysv/linux/s390/s390-64/sigpending.c: Likewise.
4205         * sysdeps/unix/sysv/linux/s390/s390-64/sigprocmask.c: Likewise.
4206         * sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c: Likewise.
4207         * sysdeps/unix/sysv/linux/sparc/sparc64/sigpending.c: Likewise.
4208         * sysdeps/unix/sysv/linux/sparc/sparc64/sigprocmask.c: Likewise.
4209         * sysdeps/unix/sysv/linux/x86_64/sigaction.c: Likewise.
4210         * sysdeps/unix/sysv/linux/pwrite.c: Likewise.
4211         * sysdeps/unix/sysv/linux/execve.c: Likewise.
4212         * sysdeps/unix/sysv/linux/aio_sigqueue.c: Likewise.
4213         * sysdeps/unix/sysv/linux/reboot.c: Likewise.
4214         * sysdeps/unix/sysv/linux/_exit.c: Likewise.
4215         * sysdeps/unix/sysv/linux/ftruncate64.c: Likewise.
4216         * sysdeps/unix/sysv/linux/pwrite64.c: Likewise.
4217         * sysdeps/unix/sysv/linux/fxstat64.c: Likewise.
4218         * sysdeps/unix/sysv/linux/gai_sigqueue.c: Likewise.
4219         * sysdeps/unix/sysv/linux/readahead.c: Likewise.
4220         * sysdeps/unix/sysv/linux/getcwd.c: Likewise.
4221         * sysdeps/unix/sysv/linux/sigwait.c: Likewise.
4222         * sysdeps/unix/sysv/linux/getdents.c: Likewise.
4223         * sysdeps/unix/sysv/linux/readv.c: Likewise.
4224         * sysdeps/unix/sysv/linux/getpriority.c: Likewise.
4225         * sysdeps/unix/sysv/linux/sigaction.c: Likewise.
4226         * sysdeps/unix/sysv/linux/ipc_priv.h: Likewise.
4227         * sysdeps/unix/sysv/linux/llseek.c: Likewise.
4228         * sysdeps/unix/sysv/linux/sysctl.c: Likewise.
4229         * sysdeps/unix/sysv/linux/lxstat64.c: Likewise.
4230         * sysdeps/unix/sysv/linux/mmap64.c: Likewise.
4231         * sysdeps/unix/sysv/linux/ustat.c: Likewise.
4232         * sysdeps/unix/sysv/linux/poll.c: Likewise.
4233         * sysdeps/unix/sysv/linux/pread64.c: Likewise.
4234         * sysdeps/unix/sysv/linux/writev.c: Likewise.
4235         * sysdeps/unix/sysv/linux/pread.c: Likewise.
4236         * sysdeps/unix/sysv/linux/ptrace.c: Likewise.
4237         * sysdeps/unix/sysv/linux/sigpending.c: Likewise.
4238         * sysdeps/unix/sysv/linux/sigprocmask.c: Likewise.
4239         * sysdeps/unix/sysv/linux/sigqueue.c: Likewise.
4240         * sysdeps/unix/sysv/linux/sigsuspend.c: Likewise.
4241         * sysdeps/unix/sysv/linux/sigtimedwait.c: Likewise.
4242         * sysdeps/unix/sysv/linux/sigwaitinfo.c: Likewise.
4243         * sysdeps/unix/sysv/linux/truncate64.c: Likewise.
4244         * sysdeps/unix/sysv/linux/xmknod.c: Likewise.
4245         * sysdeps/unix/sysv/linux/xstat64.c: Likewise.
4247 2003-09-02  Jakub Jelinek  <jakub@redhat.com>
4249         * sysdeps/unix/sysv/linux/i386/sysdep.h (PSEUDO): Revert last change.
4250         * sysdeps/unix/sysv/linux/powerpc/syscalls.list: New file.
4251         * sysdeps/unix/sysv/linux/sparc/syscalls.list: New file.
4253 2003-09-02  Ulrich Drepper  <drepper@redhat.com>
4255         * stdio-common/Makefile (CFLAGS-vprintf.c): Add -fexceptions.
4257         * intl/loadmsgcat.c: For _LIBC, call not cancelable versions of
4258         open, close, and read.
4260         * sysdeps/unix/sysv/linux/i386/sysdep.h (PSEUDO): Also define
4261         *_nocancel name.
4263         * sysdeps/unix/sysv/linux/i386/syscalls.list: Add waitpid.
4265         * libio/Makefile (CFLAGS-oldtmpfile.c): Add -fexceptions.
4266         * sysdeps/generic/tmpfile.c (tmpfile): Use __unlink instead of remove.
4267         * libio/oldtmpfile.c (__old_tmpfile): Likewise.
4269         * misc/Makefile (CFLAGS-getusershell.c): Add -fexceptions.
4271         * io/Makefile (CFLAGS-statfs.c): Add -fexceptions.
4272         (CFLAGS-fstatfs.c): Likewise.
4273         (CFLAGS-statvfs.c): Likewise.
4274         (CFLAGS-fstatvfs.c): Likewise.
4276 2003-09-01  Ulrich Drepper  <drepper@redhat.com>
4278         * misc/Makefile (CFLAGS-getsysstats.c): Add -fexceptions.
4279         * posix/unistd.h: Remove __THROW from pathconf, fpathconf,
4280         sysconf.
4281         * posix/Makefile (CFLAGS-sysconf.c): Add -fexceptions.
4282         (CFLAGS-pathconf.c): Likewise.
4283         (CFLAGS-fpathconf.c): Likewise.
4285         * misc/Makefile (CFLAGS-fstab.c): Add -fexceptions.
4286         * misc/fstab.h: Remove all __THROW.
4287         * misc/Makefile (CFLAGS-mntent.c): Add -fexceptions.
4288         (CFLAGS-mntent_r.c): Likewise.
4289         * misc/mntent.h: Remove most __THROW.
4291         * misc/Makefile (CFLAGS-mkstemp.c): Add -fexceptions.
4292         (CFLAGS-mkstemp64.c): Likewise.
4294         * sysdeps/generic/wordexp.c (parse_comm): Disable cancellation
4295         around call to exec_comm.
4296         * posix/wordexp.h: Remove __THROW from wordexp.
4297         * posix/Makefile (CFLAGS-wordexp.c): Add -fexceptions.
4299         * sysdeps/unix/sysv/linux/getloadavg.c (getloadavg): Use
4300         not-cancelable functions.
4302         * libio/Makefile (CFLAGS-oldiofopen.c): Add -fexceptions.
4303         (CFLAGS-iofopen.c): Likewise.
4304         (CFLAGS-iofopen64.c): Likewise.
4306         * stdlib/fmtmsg.c (fmtmsg): Disable cancellation around output
4307         functions.
4308         * stdlib/Makefile (CFLAGS-fmtmsg.c): Add -fexceptions.
4309         * stdlib/fmtmsg.h: Remove __THROW from fmtmsg.
4311         * stdlib/stdlib.h: Remove __THROW from posix_openpt and getpt.
4312         * login/Makefile (CFLAGS-getpt.c): Add -fexceptions.
4314 2003-09-01  Thorsten Kukuk  <kukuk@suse.de>
4316         * nis/nss_compat/compat-spwd.c (getspnam_plususer): Return
4317         NSS_STATUS_SUCCESS if entry was found.
4318         (getspent_next_file): Store user in blacklist after entry
4319         was found, use innetgr.
4321 2003-09-01  Jakub Jelinek  <jakub@redhat.com>
4323         * sysdeps/unix/sysv/linux/powerpc/powerpc32/posix_fadvise.c: New.
4324         * sysdeps/unix/sysv/linux/powerpc/powerpc32/posix_fadvise64.c: New.
4326         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Fix tls offset
4327         computation for TCB_AT_TP.  Support l_firstbyte_offset != 0 for
4328         DTV_AT_TP, optimize.
4330 2003-08-31  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
4332         * sysdeps/unix/sysv/linux/sh/Versions: Add posix_fadvise64 and
4333         posix_fallocate64 at GLIBC_2.3.3.
4334         * sysdeps/unix/sysv/linux/sh/sysdep.h (PSEUDO_ERRVAL): Define.
4335         (PSEUDO_END_ERRVAL, ret_ERRVAL): Likewise.
4337 2003-08-08  H.J. Lu  <hongjiu.lu@intel.com>
4339         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Remove __syscall_
4340         functions.
4342 2003-08-31  Ulrich Drepper  <drepper@redhat.com>
4344         * libio/libioP.h (_IO_acquire_lock_fct): Define as inline function.
4345         Code by Richard Henderson.
4347 2003-08-31  Philip Blundell  <philb@gnu.org>
4349         * sysdeps/unix/sysv/linux/arm/Versions: Add posix_fadvise64 and
4350         posix_fallocate64 at GLIBC_2.3.3.
4352 2003-08-31  Ulrich Drepper  <drepper@redhat.com>
4354         * sysdeps/x86_64/bsd-_setjmp.S: Use HIDDEN_JUMPTARGET.
4355         * include/setjmp.h: Add libc_hidden_proto for __sigsetjmp.
4357 2003-08-30  Jakub Jelinek  <jakub@redhat.com>
4359         * sysdeps/generic/sysdep.h (cfi_window_save, CFI_WINDOW_SAVE): Define.
4360         * sysdeps/unix/sysv/linux/sparc/bits/setjmp.h: Allow file to be
4361         included multiple times.
4362         * sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__clone): Pass
4363         ptid, tls, ctid arguments to the kernel.
4364         * sysdeps/unix/sysv/linux/sparc/sparc32/getpagesize.c (__getpagesize):
4365         Use INTERNAL_SYSCALL instead of __syscall_getpagesize.
4366         * sysdeps/unix/sysv/linux/sparc/sparc32/sigaction.c
4367         (__libc_sigaction): Use INLINE_SYSCALL instead of
4368         __syscall_rt_sigaction.
4369         * sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list
4370         (__syscall_getgroups, __syscall_getpagesize, __syscall__llseek,
4371         __syscall_setfsgid, __syscall_setfsuid, __syscall_setgid,
4372         __syscall_setgroups, __syscall_setregid, __syscall_setreuid,
4373         __syscall_ipc, __syscall_setuid, __syscall_rt_sigaction,
4374         __syscall_rt_sigpending, __syscall_rt_sigprocmask,
4375         __syscall_rt_sigqueueinfo, __syscall_rt_sigsuspend,
4376         __syscall_rt_sigtimedwait): Remove unneeded syscall stubs.
4377         * sysdeps/unix/sysv/linux/sparc/sparc32/Makefile (sysdep_routines):
4378         Remove rt_sigsuspend, rt_sigprocmask, rt_sigtimedwait,
4379         rt_sigqueueinfo, rt_sigaction and rt_sigpending.
4380         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h
4381         (__CLONE_SYSCALL_STRING): Define.
4382         * sysdeps/unix/sysv/linux/sparc/sparc32/socket.S (__socket): Add
4383         CFI directives.
4384         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h
4385         (__CLONE_SYSCALL_STRING): Define.
4386         * sysdeps/unix/sysv/linux/sparc/sysdep.h (INLINE_CLONE_SYSCALL):
4387         Define.
4388         * sysdeps/unix/sysv/linux/sparc/system.c: New file.
4390 2003-08-30  Ulrich Drepper  <drepper@redhat.com>
4392         * sunrpc/rpc/clnt.h: Remove a few __THROW.
4393         * sunrpc/Makefile (CFLAGS-auth_unix.c): Add -fexceptions.
4394         (CFLAGS-key_call.c): Likewise.
4395         (CFLAGS-pmap_rmt.c): Likewise.
4396         (CFLAGS-clnt_perr.c): Likewise.
4397         * sunrpc/rpc/auth.h: Remove serveral __THROW.
4399         * inet/Makefile (CFLAGS-gethstbyad_r.c): Add -fexceptions.
4400         (CFLAGS-gethstbynm_r.c): Likewise.
4401         (CFLAGS-gethstbynm2_r.c): Likewise.
4402         (CFLAGS-rcmd.c): Likewise.
4403         * resolv/Makefile (CFLAGS-res_hconf.c): Add -fexceptions.
4405         * argp/Makefile (CFLAGS-argp-help.c): Add -fexceptions.
4406         (CFLAGS-argp-fmtstream.c): Likewise.
4407         * argp/argp.h: Remove a number of __THROW.
4409         * misc/sys/syslog.h (vsyslog): Remove __THROW.
4411         * misc/Makefile (CFLAGS-getpass.c): Add -fexceptions.
4412         * misc/getpass.c (getpass): Add cleanup handler to ensure the
4413         stream is closed even if the thread is canceled.
4414         (call_fclose): New function.
4415         * posix/unistd.h: Remove __THROW from getpass prototype.
4417         * posix/Makefile (CFLAGS-getopt.c): Add -fexceptions.
4419         * signal/signal.h (psignal): Remove __THROW.
4420         * stdio-common/Makefile (CFLAGS-psignal.c): Add -fexceptions.
4422         * misc/Makefile (CFLAGS-error.c): Define.
4423         * misc/error.c (error): Disable cancellation handling around the
4424         actual output.  The message should in any case be printed.
4425         (error_at_line): Likewise.
4427         * misc/error.h: Protect parameter names with leading __.
4429 2003-08-28  Carlos O'Donell  <carlos@baldric.uwo.ca>
4431         * sysdeps/unix/sysv/linux/hppa/syscalls.list: Add semtimedop.
4433 2003-08-29  Jakub Jelinek  <jakub@redhat.com>
4435         * libio/iofgetpos64.c (_IO_new_fgetpos64): Move lock release to the
4436         end.
4438 2003-08-29  Ulrich Drepper  <drepper@redhat.com>
4440         * libio/stdio.h: Remove a few more __THROW.
4442 2003-08-29  Jakub Jelinek  <jakub@redhat.com>
4444         * libio/Makefile: Compile fputc.c, fputwc.c, freopen64.c, freopen.c,
4445         fseek.c, fseeko64.c, fseeko.c, ftello64.c, ftello.c, fwide.c, getc.c,
4446         getchar.c, getwc.c, getwchar.c, iofclose.c, iofflush.c, iofgetpos64.c,
4447         iofgetpos.c, iofgets.c, iofgetws.c, iofputs.c, iofputws.c, iofread.c,
4448         iofsetpos64.c, iofsetpos.c, ioftell.c, iofwrite.c, iogetdelim.c,
4449         iogetline.c, iogets.c, iogetwline.c, ioputs.c, ioseekoff.c,
4450         ioseekpos.c, iosetbuffer.c, iosetvbuf.c, ioungetc.c, ioungetwc.c,
4451         oldfileops.c, oldiofclose.c, oldiofgetpos64.c, oldiofgetpos.c,
4452         oldiofsetpos64.c, oldiofsetpos.c, peekc.c, putc.c, putchar.c, putwc.c,
4453         putwchar.c and rewind.c with exceptions.
4454         * sysdeps/generic/bits/stdio-lock.h (_IO_acquire_lock,
4455         _IO_release_lock): Define.
4456         * libio/fileops.c (_IO_new_file_underflow): Use it.
4457         * libio/fputc.c (fputc): Likewise.
4458         * libio/fputwc.c (fputwc): Likewise.
4459         * libio/freopen64.c (freopen64):
4460         * libio/freopen.c (freopen): Likewise.
4461         * libio/fseek.c (fseek): Likewise.
4462         * libio/fseeko64.c (fseeko64): Likewise.
4463         * libio/fseeko.c (fseeko): Likewise.
4464         * libio/ftello64.c (ftello64): Likewise.
4465         * libio/ftello.c (ftello): Likewise.
4466         * libio/fwide.c (fwide): Likewise.
4467         * libio/getc.c (_IO_getc): Likewise.
4468         * libio/getchar.c (getchar): Likewise.
4469         * libio/getwc.c (_IO_getwc): Likewise.
4470         * libio/getwchar.c (getwchar): Likewise.
4471         * libio/iofclose.c (_IO_new_fclose):
4472         * libio/iofflush.c (_IO_fflush): Likewise.
4473         * libio/iofgetpos64.c (_IO_new_fgetpos64): Likewise.
4474         * libio/iofgetpos.c (_IO_new_fgetpos): Likewise.
4475         * libio/iofgets.c (_IO_fgets): Likewise.
4476         * libio/iofgetws.c (fgetws): Likewise.
4477         * libio/iofputs.c (_IO_fputs): Likewise.
4478         * libio/iofputws.c (fputws): Likewise.
4479         * libio/iofread.c (_IO_fread): Likewise.
4480         * libio/iofsetpos64.c (_IO_new_fsetpos64): Likewise.
4481         * libio/iofsetpos.c (_IO_new_fsetpos): Likewise.
4482         * libio/ioftell.c (_IO_ftell): Likewise.
4483         * libio/iofwrite.c (_IO_fwrite): Likewise.
4484         * libio/iogetdelim.c (_IO_getdelim): Likewise.
4485         * libio/iogets.c (_IO_gets): Likewise.
4486         * libio/ioputs.c (_IO_puts): Likewise.
4487         * libio/ioseekoff.c (_IO_seekoff): Likewise.
4488         * libio/ioseekpos.c (_IO_seekpos): Likewise.
4489         * libio/iosetbuffer.c (_IO_setbuffer): Likewise.
4490         * libio/iosetvbuf.c (_IO_setvbuf): Likewise.
4491         * libio/ioungetc.c (_IO_ungetc): Likewise.
4492         * libio/ioungetwc.c (ungetwc): Likewise.
4493         * libio/oldiofclose.c (_IO_old_fclose): Likewise.
4494         * libio/oldiofgetpos64.c (_IO_old_fgetpos64): Likewise.
4495         * libio/oldiofgetpos.c (_IO_old_fgetpos): Likewise.
4496         * libio/oldiofsetpos64.c (_IO_old_fsetpos64): Likewise.
4497         * libio/oldiofsetpos.c (_IO_old_fsetpos): Likewise.
4498         * libio/peekc.c (_IO_peekc_locked): Likewise.
4499         * libio/putc.c (_IO_putc): Likewise.
4500         * libio/putchar.c (putchar): Likewise.
4501         * libio/putwc.c (putwc): Likewise.
4502         * libio/putwchar.c (putwchar): Likewise.
4503         * libio/rewind.c (rewind): Likewise.
4504         * libio/wfileops.c (_IO_wfile_underflow): Likewise.
4506 2003-08-29  Ulrich Drepper  <drepper@redhat.com>
4508         * signal/signal.h: sighold, sigrelse, sigignore, sigset were
4509         available in XPG4.2.
4511 2003-08-27  Phil Knirsch  <pknirsch@redhat.com>
4512             Jakub Jelinek  <jakub@redhat.com>
4514         * sunrpc/svc.c (svc_getreqset): Fix fds_bits reading on 64-bit
4515         big endian arches.  Don't read beyond end of fds_bits array.
4517 2003-04-27  Bruno Haible  <bruno@clisp.org>
4519         * manual/message.texi (Advanced gettext functions): Add information
4520         about Korean, Portuguese, Latvian. Gaeilge is also known as Irish.
4521         Add section about Lithuanian, reported by Ricardas Cepas
4522         <rch@richard.eu.org>.
4523         Add information about Croatian.
4524         Ukrainian is like Russian, reported by Andy Rysin <arysin@yahoo.com>.
4525         Remove remark about continuation lines that is not true for PO files.
4526         Fix formula for Slovenian, reported by Roman Maurer
4527         <roman.maurer@amis.net>.
4529 2003-08-27  Ulrich Drepper  <drepper@redhat.com>
4531         * math/math_private.h: Declare __copysignf.
4532         * sysdeps/ieee754/flt-32/s_scalbnf.c: Use __copysignf instead of
4533         copysignf.
4535         * sysdeps/x86_64/fpu/bits/mathinline.h: Define __signbitf,
4536         __signbit, and __signbitl inline functions.
4538         * sysdeps/unix/sysv/linux/x86_64/__start_context.S: Use
4539         HIDDEN_JUMPTARGET instead of JUMPTARGET to call exit().
4541         * sysdeps/x86_64/bsd-_setjmp.S [PIC]: Jump to __GI___sigsetjmp.
4542         * sysdeps/x86_64/setjmp.S: Add libc_hidden_def for __sigsetjmp.
4544 2003-08-27  Jakub Jelinek  <jakub@redhat.com>
4546         * inet/inet_mkadr.c (inet_makeaddr): Optimize.
4548 2003-08-27  Ulrich Drepper  <drepper@redhat.com>
4550         * include/stdio.h: Add declarations for __builtin_fwrite and
4551         __builtin_fwrite_unlocked.
4553 2003-08-27  Jakub Jelinek  <jakub@redhat.com>
4555         * sysdeps/unix/opendir.c (__opendir): Make sure even struct dirent64
4556         fits into allocation.  Add padding on 32-bit arches so that
4557         dirp->data is enough aligned for struct dirent64.
4558         Avoid clearing of the buffer, just clear DIR structure.
4560 2003-08-26  Ulrich Drepper  <drepper@redhat.com>
4562         * nss/nsswitch.c: Add libc_hidden_def for __nss_lookup_function.
4563         * nss/nsswitch.h: Add libc_hidden_proto for __nss_lookup_function.
4565 2003-08-26  Steven Munroe  <sjmunroe@us.ibm.com>
4567         * sysdeps/powerpc/powerpc64/elf/Makefile: New file.
4569 2003-08-26  Jakub Jelinek  <jakub@redhat.com>
4571         * login/programs/utmpdump.c (print_entry): Cast tv_usec to long
4572         to match format string.
4573         * sysdeps/unix/sysv/linux/sparc/sparc32/semctl.c (union semun): Add
4574         __old_buf.
4575         (__new_semctl): Shut up warning.
4576         * sysdeps/unix/sysv/linux/sparc/sparc32/dl-procinfo.h
4577         (_dl_string_hwcap): Add __attribute__ ((always_inline)).
4579 2003-08-26  Jakub Jelinek  <jakub@redhat.com>
4581         * elf/ldconfig.c (search_dir): When checking for GNU-style .so
4582         link file use the real file name, not the resolved name we got by
4583         following the symlinks.
4585 2003-08-25  Ulrich Drepper  <drepper@redhat.com>
4587         * libio/oldfileops.c (_IO_old_file_init): Initialize _mode field
4588         if the object size is large enough.
4590 2003-08-25  Jakub Jelinek  <jakub@redhat.com>
4592         * elf/ldconfig.c (search_dir): Treat symlink as regular file
4593         if it won't point to itself unless it is .so symlink for the linker.
4595 2003-08-25  Ulrich Drepper  <drepper@redhat.com>
4597         * libio/libio.h (_IO_fwide): In the mode==0 optimization, don't
4598         use _mode if _IO_fwide_maybe_incompatible.
4599         * libio/iofwide.c (_IO_fwide): Move the test for mode == 0 after
4600         the compatibility test.
4602 2003-08-25  Jakub Jelinek  <jakub@redhat.com>
4604         * elf/cache.c (save_cache): Don't write beyond end of file_entries
4605         buffer.
4606         Duplicate last old cache entry if the count would be odd.
4608 2003-08-25  Andreas Jaeger  <aj@suse.de>
4610         * sysdeps/unix/sysv/linux/posix_fadvise64.c: Cast arguments of
4611         __LONG_LONG_PAIR to long.
4613 2003-08-25  Philip Blundell  <philb@gnu.org>
4615         * sysdeps/unix/sysv/linux/arm/sysdep.h (PSEUDO_ERRVAL): Define.
4616         (PSEUDO_END_ERRVAL, ret_ERRVAL): Likewise.
4618 2003-08-18  Alfred M. Szmidt  <ams@kemisten.nu>
4620         * sysdeps/generic/bits/libc-lock.h (__libc_cleanup_pop): Redefine
4621         and use __libc_cleanup_region_end instead.
4623 2003-08-25  Ulrich Drepper  <drepper@redhat.com>
4625         * elf/ldconfig.c (search_dir): Revert patch of 2003-7-21.
4627 2003-08-22  Ulrich Drepper  <drepper@redhat.com>
4629         * io/fcntl.h (posix_fallocate): Change type of third parameter to
4630         off_t.
4631         (posix_fallocate64): Change type of third parameter to off64_t.
4632         * sysdeps/generic/posix_fallocate.c: Adjust for type change.
4633         * sysdeps/posix/posix_fallocate.c: Likewise.
4634         * sysdeps/generic/posix_fallocate64.c: Likewise.
4635         * sysdeps/posix/posix_fallocate64.c: Likewise.  Add compatibility
4636         code for 32-bit platforms.
4637         * sysdeps/unix/sysv/linux/i386/Versions: Add new version for
4638         posix_fallocate64.
4639         * sysdeps/unix/sysv/linux/powerpc/powerpc32/Versions: Likewise.
4640         * sysdeps/unix/sysv/linux/s390/s390-32/Versions: Likewise.
4641         * sysdeps/unix/sysv/linux/sparc/sparc32/Versions: Likewise.
4643 2003-08-19  Ulrich Drepper  <drepper@redhat.com>
4645         * string/bits/string2.h (__STRING2_COPY_TYPE): Add attribute to
4646         the type, not to name.
4648         * stdio-common/test-vfprintf.c (main): Don't write temporary file
4649         into source directory.
4651         * malloc/malloc.c (_int_free): Add cheap test for some invalid
4652         block sizes.
4654         * sysdeps/unix/sysv/linux/i386/posix_fadvise64.S: Fix typo in
4655         syscall name.
4657 2003-08-18  Ulrich Drepper  <drepper@redhat.com>
4659         * sysdeps/unix/sysv/linux/shm_open.c (shm_open): Fold EISDIR error
4660         into EINVAL.
4662 2003-08-18  H.J. Lu  <hongjiu.lu@intel.com>
4664         * sysdeps/ia64/dl-machine.h (elf_machine_rela): Use _dl_reloc_bad_type.
4665         (elf_machine_lazy_rel): Likewise.
4667 2003-08-18  Art Haas  <ahaas@airmail.net>
4669         * malloc/malloc.h: Remove unneeded ';' where closing the C++
4670         extern block.
4672 2003-08-18  Ulrich Drepper  <drepper@redhat.com>
4674         * sysdeps/ia64/dl-fptr.h (ELF_MACHINE_LOAD_ADDRESS): Support
4675         loading big binaries where @gprel(sym) cannot be handled in 'add'
4676         but instead has to be used with 'movl'.
4678 2003-08-17  Juergen Kreileder <jk@blackdown.de>
4679             Andreas Jaeger  <aj@suse.de>
4681         * sysdeps/x86_64/bits/byteswap.h: New file.
4683 2003-08-17  Andreas Jaeger  <aj@suse.de>
4685         * sysdeps/unix/sysv/linux/i386/posix_fadvise64.S: Fix typo.
4687 2003-08-16  Jakub Jelinek  <jakub@redhat.com>
4689         * sysdeps/powerpc/powerpc32/sysdep.h (PSEUDO_ERRVAL,
4690         PSEUDO_RET_ERRVAL, ret_ERRVAL, PSEUDO_END_ERRVAL): Define.
4691         * sysdeps/powerpc/powerpc64/sysdep.h (PSEUDO_ERRVAL,
4692         PSEUDO_RET_ERRVAL, ret_ERRVAL, PSEUDO_END_ERRVAL): Define.
4693         * sysdeps/unix/alpha/sysdep.h (PSEUDO_ERRVAL,
4694         ret_ERRVAL, PSEUDO_END_ERRVAL): Define.
4695         * sysdeps/unix/mips/sysdep.h (PSEUDO_ERRVAL,
4696         ret_ERRVAL, PSEUDO_END_ERRVAL): Define.
4697         * sysdeps/unix/sparc/sysdep.h (PSEUDO_ERRVAL,
4698         ret_ERRVAL): Define.
4699         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (PSEUDO_ERRVAL,
4700         PSEUDO_END_ERRVAL, ret_ERRVAL): Define.
4701         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (PSEUDO_ERRVAL,
4702         PSEUDO_END_ERRVAL, ret_ERRVAL): Define.
4703         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h (PSEUDO_ERRVAL):
4704         Define.
4705         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h (PSEUDO_ERRVAL,
4706         PSEUDO_END_ERRVAL, ret_ERRVAL): Define.
4707         * sysdeps/unix/sysdep.h (PSEUDO_END_ERRVAL): Define.
4709         * sysdeps/unix/sysv/linux/syscalls.list (posix_fadvise64,
4710         posix_fadvise64_64): Remove.
4711         * sysdeps/unix/sysv/linux/alpha/syscalls.list (posix_fadvise64): Add
4712         V flag.
4713         * sysdeps/unix/sysv/linux/ia64/syscalls.list (posix_fadvise64):
4714         Likewise.
4715         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list
4716         (posix_fadvise64): Likewise.
4717         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list
4718         (posix_fadvise64): Likewise.
4719         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list
4720         (posix_fadvise64): Likewise.
4721         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (posix_fadvise64):
4722         Likewise.
4723         * sysdeps/unix/sysv/linux/i386/posix_fadvise64_64.S: Moved to...
4724         * sysdeps/unix/sysv/linux/i386/posix_fadvise64.S: ...here.
4725         (__posix_fadvise64_l64): Fix a typo in fadvise64 syscall invocation.
4726         (__posix_fadvise64_l32): New function.
4727         * sysdeps/unix/sysv/linux/i386/Makefile: Revert last change.
4728         * sysdeps/unix/sysv/linux/powerpc/powerpc32/Versions (libc): Export
4729         posix_fadvise64@@GLIBC_2.3.3.
4730         * sysdeps/unix/sysv/linux/s390/s390-32/Versions (libc): Likewise.
4731         * sysdeps/unix/sysv/linux/sparc/sparc32/Versions (libc): Likewise.
4732         * sysdeps/unix/sysv/linux/posix_fadvise.c (posix_fadvise): Return
4733         error value.
4734         * sysdeps/unix/sysv/linux/posix_fadvise64.c: New file.
4736         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h
4737         (SYSCALL_ERROR_HANDLER): Use TLS errno/__libc_errno if USE___THREAD.
4739 2003-08-15  Jakub Jelinek  <jakub@redhat.com>
4741         * sysdeps/sparc/sparc32/dl-machine.h (WEAKADDR): Remove.
4742         (elf_machine_matches_host): Remove weak extern stuff.
4743         Use GL(dl_hwcap) unconditionally and GL(dl_hwcap_mask) if SHARED.
4744         (elf_machine_runtime_setup, sparc_fixup_plt): Remove weak extern
4745         stuff.  Use GL(dl_hwcap) unconditionally.
4747 2003-08-16  Alan Modra  <amodra@bigpond.net.au>
4749         * sysdeps/powerpc/powerpc64/elf/start.S: Add a nop after
4750         __libc_start_main branch.
4752 2003-08-16  Jakub Jelinek <jakub@redhat.com>,
4753             Andreas Jaeger  <aj@suse.de>
4755         * sysdeps/generic/posix_fadvise.c (posix_fadvise): Return ENOSYS
4756         instead of setting errno.
4757         * sysdeps/generic/posix_fadvise64.c (posix_fadvise64): Likewise.
4759 2003-08-16  Andreas Jaeger  <aj@suse.de>
4761         * sysdeps/generic/posix_fadvise.c (posix_fadvise): Adjust prototype.
4762         * sysdeps/generic/posix_fadvise64.c (posix_fadvise64): Likewise.
4764 2003-08-15  Ulrich Drepper  <drepper@redhat.com>
4766         * io/fcntl.h (posix_fadvise64): Change type of third parameter to
4767         off_t.
4768         * sysdeps/unix/sysv/linux/posix_fadvise.c: Adjust definition.
4769         * sysdeps/unix/make-syscalls.sh: Recognize V prefix to the parameter
4770         description indicating the error value is returned, not -1.
4771         * sysdeps/unix/sysv/linux/kernel-features.h: Add definition of
4772         __ASSUME_FADVISE64_64_SYSCALL.
4773         * sysdeps/unix/sysv/linux/syscalls.list: Don't define madvise and
4774         posix_madvise in one file.  Have posix_madvise defined with error
4775         value returned.
4776         Define posix_fadvise64_64 entry.  Add version info to posix_fadvise64
4777         entry.
4778         * sysdeps/unix/sysv/linux/i386/posix_fadvise.S: New file.
4779         * sysdeps/unix/sysv/linux/i386/sysdep.h: Define PSEUDO_ERRVAL,
4780         PSEUDO_END_ERRVAL, and ret_ERRVAL.
4781         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Likewise.
4782         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
4783         * sysdeps/unix/sysv/linux/i386/Versions [GLIBC_2.3.3]: Add
4784         posix_fadvise64.
4786         * posix/Makefile (routines): Add posix_madvise.
4787         * sysdeps/generic/madvise.c: Don't define posix_madvise.
4788         * sysdeps/generic/posix_madvise.c: New file.
4789         * sysdeps/unix/sysv/aix/posix_madvise.c: New file.
4790         * sysdeps/unix/sysv/linux/i386/Makefile [subdir=io] (subdir_routines):
4791         Add posix_fadvise64_64.
4793 2003-08-15  Jakub Jelinek  <jakub@redhat.com>
4795         * assert/assert.h (assert_perror): Use __builtin_expect for gcc >=
4796         3.0, not for !gcc or gcc < 3.0.
4798 2003-08-11  Carlos O'Donell  <carlos@baldric.uwo.ca>
4800         * dlfcn/default.c (main): Cast dlsym loaded value to same type as main.
4801         Address passed to test_in_mod1 and test_in_mod2 without casting.
4802         * dlfcn/defaultmod1.c: Change prototype of test_in_mod1.
4803         (test_in_mod1): Cast dlsym loaded value to same type as mainp.
4804         * dlfcn/defaultmod2.c: Change prototype of test_in_mod2.
4805         (test_in_mod2): Cast dlsym loaded value to same type as mainp.
4807 2003-08-15  Jakub Jelinek  <jakub@redhat.com>
4809         * sysdeps/sparc/sparc32/elf/configure.in (libc_cv_sparc32_tls):
4810         Change quotes before using [].
4812         * sysdeps/unix/sysv/linux/sparc/sys/user.h: New file.
4814         * sysdeps/sparc/sparc32/bits/atomic.h (__sparc32_atomic_lock):
4815         Renamed to...
4816         (__sparc32_atomic_locks): ...this.  Change into 64-byte array.
4817         (__sparc32_atomic_do_lock, __sparc32_atomic_do_unlock): Add addr
4818         argument.  Select one of 64 locks from address bits.
4819         (atomic_compare_and_exchange_val_acq,
4820         atomic_compare_and_exchange_bool_acq): Pass memory address to
4821         __sparc32_atomic_do_{,un}lock.
4823 2003-08-14  Ulrich Drepper  <drepper@redhat.com>
4825         * assert/assert.h (assert): Use !! in front of expression to allow
4826         use of pointers.
4828         * iconvdata/cp932.c: Fixed checking of a few border of code areas.
4829         Changed conversion of JIS X 0201 from using a table to calculating.
4830         * iconvdata/euc-jp-ms.c: Fixed conversion table and rewrote
4831         conversion routine.  Changed CHARSET_NAME definition from EUCJP-MS to
4832         EUC-JP-MS.
4833         * iconvdata/tst-tables.sh: Add CP932 and EUC-JP-MS.
4834         * iconvdata/CP932.irreversible: New file.
4835         * iconvdata/EUC-JP-MS.irreversible: New file.
4836         Patch by MORIYAMA Masayuki <msyk@mtg.biglobe.ne.jp>.
4838 2003-08-13  Ulrich Drepper  <drepper@redhat.com>
4840         * sysdeps/unix/sysv/linux/i386/syscalls.list: Add time syscall.
4842         * elf/Makefile: Use LC_ALL=C in a few cases where we call external
4843         text processing tools.
4845         * sysdeps/pthread/aio_misc.h (struct waitlist): Don't add caller_pid
4846         element unless BROKEN_THREAD_SIGNALS is defined.
4847         (struct requestlist): Likewise.
4848         * sysdeps/pthread/aio_misc.c (__aio_enqueue_request): Don't fill in
4849         caller_pid of new request unless BROKEN_THREAD_SIGNALS is defined.
4850         * sysdeps/pthread/aio_suspend.c (aio_suspend): Likewise.
4851         * sysdeps/pthread/aio_notify.c (__aio_notify_only): Remove caller_pid
4852         parameter unless BROKEN_THREAD_SIGNALS is defined.  Adjust callers.
4853         Pass current PID to __aio_sigqueue.
4854         * sysdeps/pthread/lio_listio.c (lio_listio): Adjust __aio_notify_only
4855         call.  Don't initialize caller_pid field of waitlist element.
4857 2003-08-12  Jakub Jelinek  <jakub@redhat.com>
4859         * libio/libioP.h (_IO_vtable_offset): Define.
4860         * libio/freopen.c (freopen): Use it.
4861         * libio/ioputs.c (_IO_puts): Likewise.
4862         * libio/freopen64.c (freopen64): Likewise.
4863         * libio/genops.c (__underflow, __uflow, _IO_flush_all_lockp):
4864         Likewise.
4865         * libio/iofclose.c (_IO_new_fclose): Likewise.
4866         * libio/iofputs.c (_IO_fputs): Likewise.
4867         * libio/ioftell.c (_IO_ftell): Likewise.
4868         * libio/iofwrite.c (_IO_fwrite): Likewise.
4869         * libio/ioseekoff.c (_IO_seekoff_unlocked): Likewise.
4870         * libio/iosetbuffer.c (_IO_setbuffer): Likewise.
4871         * stdio-common/vfprintf.c (ORIENT, vfprintf): Likewise.
4872         * stdio-common/vfscanf.c (ORIENT): Likewise.
4874 2003-08-11  Ulrich Drepper  <drepper@redhat.com>
4876         * assert/assert.h: Use __builtin_expect in assert and
4877         assert_perror definitions if possible.
4879 2003-08-07  Jakub Jelinek  <jakub@redhat.com>
4881         * sysdeps/generic/ldsodefs.h (_rtld_global): Add
4882         _dl_rtld_lock_recursive and _dl_rtld_unlock_recursive.
4883         * elf/rtld.c (rtld_lock_default_lock_recursive,
4884         rtld_lock_default_unlock_recursive): New functions.
4885         (dl_main): Initialize _dl_rtld_lock_recursive and
4886         _dl_rtld_unlock_recursive.
4888 2003-08-05  Jakub Jelinek  <jakub@redhat.com>
4890         * elf/ldconfig.c (main): Append SLIBDIR and LIBDIR to
4891         config_file directories instead of prepending.
4893 2003-08-02  Ulrich Drepper  <drepper@redhat.com>
4895         * sysdeps/unix/sysv/linux/kernel-features.h: Define
4896         __ASSUME_CLONE_STOPPED.
4898 2003-08-01  Ulrich Drepper  <drepper@redhat.com>
4900         * sysdeps/generic/bits/libc-lock.h
4901         (__libc_cleanup_push,__libc_cleanup_pop): Define even here.
4903 2003-08-01  Roland McGrath  <roland@frob.com>
4905         * sysdeps/mach/hurd/getdents.c: Just use sysdeps/generic/getdents.c.
4907 2003-07-31  Jakub Jelinek  <jakub@redhat.com>
4909         * sysdeps/generic/bits/types.h (__ssize_t): Use __SSIZE_T_TYPE
4910         instead of __SWORD_TYPE.
4911         * sysdeps/generic/bits/typesizes.h (__SSIZE_T_TYPE): Define.
4912         * sysdeps/mach/hurd/bits/typesizes.h (__SSIZE_T_TYPE): Define.
4913         * sysdeps/unix/bsd/bsd4.4/freebsd/bits/typesizes.h (__SSIZE_T_TYPE):
4914         Define.
4915         * sysdeps/unix/sysv/linux/alpha/bits/typesizes.h (__SSIZE_T_TYPE):
4916         Define.
4917         * sysdeps/unix/sysv/linux/sparc/bits/typesizes.h (__SSIZE_T_TYPE):
4918         Define.
4919         * sysdeps/unix/sysv/linux/s390/bits/typesizes.h: New file.
4921         * dlfcn/dlerror.c (once): New.
4922         (dlerror): Call __libc_once.
4923         (_dlerror_run): Remove once.
4925         * sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h (struct sigcontext):
4926         Sync with 2.5.7 and 2.5.73 kernel changes.
4928         * dlfcn/eval.c (funcall): Add noinline attribute to shut up warnings.
4929         * elf/rtld.c (dl_main): Cast ElfW(Addr) arguments with %Zx/%Zd
4930         formats to size_t.
4931         * elf/dl-lookup.c (_dl_debug_bindings): Likewise.
4932         * elf/tst-tls6.c (do_test): Use %zd format for l_tls_modid.
4933         * elf/tst-tls8.c (do_test): Use %zd format for modid1 and modid2.
4934         * gmon/tst-sprofil.c (main): Add parens to shut up warning.
4935         * iconv/tst-iconv3.c (main): Use %td instead of %zd for pointer
4936         difference argument.
4937         * stdio-common/tst-wc-printf.c (main): Cast arguments with %C
4938         format to wint_t.
4939         * stdlib/tst-limits.c (main): For WORD_BIT and LONG_BIT, use
4940         %d format and cast expected value to int.
4941         * sysdeps/generic/libc-start.c (STATIC): Add
4942         __attribute__((always_inline) if LIBC_START_MAIN is already defined.
4943         * sysdeps/powerpc/fpu/w_sqrt.c (a_nan, a_inf): Change from uint32_t
4944         to ieee_float_shape_type.
4945         (__sqrt): Avoid type punning.
4946         * sysdeps/powerpc/fpu/w_sqrtf.c (a_nan, a_inf): Change from uint32_t
4947         to ieee_float_shape_type.
4948         (__sqrtf): Avoid type punning.
4949         * sysdeps/s390/s390-32/dl-machine.h (elf_machine_rela): Don't define
4950         refsym if in dl-conflict.c.
4951         * sysdeps/s390/s390-64/dl-machine.h (elf_machine_rela): Likewise.
4952         * sysdeps/unix/sysv/linux/i386/semctl.c (union semun): Add __old_buf.
4953         (__new_semctl): Shut up warning.
4954         * sysdeps/unix/sysv/linux/semctl.c (union semun): Add __old_buf.
4955         (__new_semctl): Shut up warning.
4956         * sysdeps/unix/sysv/linux/shmctl.c (__new_shmctl): Wrap long lines.
4957         Change old into union of __old_shmid_ds and __old_shminfo structs.
4958         Adjust all users.
4959         * wcsmbs/wcsmbs-tst1.c (main): Cast arguments with %C format to wint_t.
4961         * sysdeps/unix/sysv/linux/utimes.c (__utimes): Fix actime and
4962         modtime computation.
4963         * sysdeps/unix/sysv/linux/futimes.c (__futimes): Likewise.
4964         * sysdeps/posix/utimes.c (__utimes): Likewise.
4966 2003-07-30  Jakub Jelinek  <jakub@redhat.com>
4968         * elf/dl-reloc.c (_dl_allocate_static_tls): Don't return any value,
4969         call dl_signal_error directly.  If already relocated, call
4970         GL(dl_init_static_tls) directly, otherwise queue it for later.
4971         (CHECK_STATIC_TLS): Undo 2003-07-24 change.
4972         * elf/rtld.c (dl_main): Initialize GL(dl_init_static_tls).
4973         * elf/dl-open.c (dl_open_worker): Call GL_dl_init_static_tls
4974         for all static TLS initializations delayed in _dl_allocate_static_tls.
4975         * elf/dl-support.c (_dl_init_static_tls): New variable.
4976         * include/link.h (struct link_map): Add l_need_tls_init.
4977         * sysdeps/generic/ldsodefs.h (_rtld_global): Add _dl_init_static_tls.
4978         (_dl_nothread_init_static_tls): New prototype.
4979         (_dl_allocate_static_tls): Adjust prototype.
4981         * elf/tls-macros.h (VAR_INT_DEF): Add alignment directive.
4983 2003-07-31  Alexandre Oliva  <aoliva@redhat.com>
4985         * elf/dynamic-link.h (elf_machine_rel, elf_machine_rela,
4986         elf_machine_rel_relative, elf_machine_rela_relative): Don't assume
4987         reloc_addr is aligned.
4988         * sysdeps/alpha/dl-machine.h (elf_machine_rela,
4989         elf_machine_rela_relative): Adjust.
4990         * sysdeps/arm/dl-machine.h (elf_machine_rel, elf_machine_rela,
4991         elf_machine_rel_relative, elf_machine_rela_relative): Adjust.
4992         * sysdeps/cris/dl-machine.h (elf_machine_rela,
4993         elf_machine_rela_relative): Adjust.
4994         * sysdeps/hppa/dl-machine.h (elf_machine_rela,
4995         elf_machine_rela_relative): Adjust.
4996         * sysdeps/i386/dl-machine.h (elf_machine_rel, elf_machine_rela,
4997         elf_machine_rel_relative, elf_machine_rela_relative): Adjust.
4998         * sysdeps/ia64/dl-machine.h (elf_machine_rela,
4999         elf_machine_rela_relative): Adjust.
5000         * sysdeps/m68k/dl-machine.h (elf_machine_rela,
5001         elf_machine_rela_relative): Adjust.
5002         * sysdeps/mips/dl-machine.h (elf_machine_rela,
5003         elf_machine_rela_relative): Adjust.
5004         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela,
5005         elf_machine_rela_relative): Adjust.
5006         * sysdeps/powerpc/powerpc64/dl-machine.h
5007         (elf_machine_rela_relative, elf_machine_rela): Adjust.
5008         * sysdeps/s390/s390-32/dl-machine.h (elf_machine_rela,
5009         elf_machine_rela_relative): Adjust.
5010         * sysdeps/s390/s390-64/dl-machine.h (elf_machine_rela,
5011         elf_machine_rela_relative): Adjust.
5012         * sysdeps/sh/dl-machine.h (elf_machine_rela,
5013         elf_machine_rela_relative): Adjust.
5014         * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela,
5015         elf_machine_rela_relative): Adjust.
5016         * sysdeps/sparc/sparc64/dl-machine.h (elf_machine_rela,
5017         elf_machine_rela_relative): Adjust.
5018         * sysdeps/x86_64/dl-machine.h (elf_machine_rela,
5019         elf_machine_rela_relative): Adjust.
5021 2003-07-29  Ulrich Drepper  <drepper@redhat.com>
5023         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Restore
5024         alignment of TCB used before the last change so that it matches
5025         ld's output for IE code.
5027 2003-07-29  Jakub Jelinek  <jakub@redhat.com>
5029         * include/ctype.h (__ctype_b_loc, __ctype_toupper_loc,
5030         __ctype_tolower_loc): Avoid "dereferencing type-punned pointer will
5031         break strict-aliasing rules" warnings.
5033 2003-07-29  Roland McGrath  <roland@redhat.com>
5035         * elf/Makefile: Revert accidental changes in last commit.
5036         * elf/dl-support.c: Likewise.
5038         * rt/tst-timer2.c: New file.
5039         * rt/Makefile (tests): Add it.
5041 2003-07-25  Jakub Jelinek  <jakub@redhat.com>
5043         * elf/dl-support.c (_dl_hwcap): Add nocommon attribute.
5045 2003-07-29  Roland McGrath  <roland@redhat.com>
5047         * elf/Makefile (tests) [$(build-shared) = yes]:
5048         Depend on $(test-modules).
5049         * dlfcn/Makefile: Likewise.
5051 2003-07-28  Roland McGrath  <roland@redhat.com>
5053         * sysdeps/generic/bits/types.h (__STD_TYPE): New macro.
5054         Use that instead of `typedef' when using __*_TYPE macros in rhs.
5056         * elf/tst-tls14.c [USE_TLS && HAVE___THREAD]: Conditionalize on this.
5057         * elf/tst-tlsmod14a.c: Likewise.
5059         * sysdeps/unix/sysv/linux/sys/sysctl.h: Include <linux/compiler.h>
5060         before <linux/sysctl.h>.
5062 2003-07-27  Ulrich Drepper  <drepper@redhat.com>
5064         * sysdeps/unix/sysv/syscalls.list: time syscall never fails.
5065         * sysdeps/unix/sysv/linux/x86_64/time.S: time syscall never fails.
5066         * sysdeps/unix/sysv/i386/time.S: time syscall never fails.
5067         * sysdeps/unix/syscalls.list: umask syscall never fails.
5069 2003-07-27  Andreas Jaeger  <aj@suse.de>
5071         * sysdeps/unix/sysv/linux/init-first.c: Mark init as used.
5073 2003-07-25  Jakub Jelinek  <jakub@redhat.com>
5075         * sysdeps/unix/sysv/linux/a.out.h: Replace with i386 version.
5076         Include bits/a.out.h.
5077         * sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Add
5078         bits/a.out.h.
5079         * sysdeps/unix/sysv/linux/bits/a.out.h: New file.
5080         * sysdeps/unix/sysv/linux/i386/bits/a.out.h: New file.
5081         * sysdeps/unix/sysv/linux/m68k/bits/a.out.h: New file.
5082         * sysdeps/unix/sysv/linux/x86_64/bits/a.out.h: New file.
5083         * sysdeps/unix/sysv/linux/alpha/a.out.h: New file.
5084         * sysdeps/unix/sysv/linux/alpha/bits/a.out.h: New file.
5085         * sysdeps/unix/sysv/linux/sparc/a.out.h: New file.
5086         * sysdeps/unix/sysv/linux/sparc/bits/a.out.h: New file.
5088 2003-07-24  Jakub Jelinek  <jakub@redhat.com>
5090         * sysdeps/pthread/aio_cancel.c (aio_cancel): Return AIO_ALLDONE
5091         if aiocbp != NULL and has already completed.  Return -1/EINVAL if
5092         aiocbp->aio_fildes does not match fildes.
5094 2003-07-24  Ulrich Drepper  <drepper@redhat.com>
5096         * timezone/zic.c (rpytime): Replace cheap overflow check with a
5097         functioning one.
5099         * include/link.h (struct link_map): Add l_tls_firstbyte_offset field.
5100         * sysdeps/generic/dl-tls.c [TLS_TCB_AT_TP] (_dl_determine_tlsoffset):
5101         Fix calculation of offsets to take misalignment of first byte in
5102         file into account.
5103         * elf/dl-load.c (_dl_map_object_from_fd): Initialize
5104         l_tls_firstbyte_offset field.
5105         * elf/rtld.c (_dl_start_final, _dl_start, dl_main): Likewise.
5106         * elf/dl-reloc.c (_dl_allocate_static_tls): Change return type to int.
5107         Take l_tls_firstbyte_offset information into account.
5108         (CHECK_STATIC_TLS): _dl_allocate_static_tls can fail now.
5109         * sysdeps/generic/ldsodefs.h: Adjust _dl_allocate_static_tls prototype.
5110         * elf/Makefile: Add rules to build and run tst-tls14.
5111         * elf/tst-tls14.c: New file.
5112         * elf/tst-tlsmod14a.c: New file.
5113         * elf/tst-tlsmod14b.c: New file.
5115 2003-07-23  Jakub Jelinek  <jakub@redhat.com>
5117         * sysdeps/pthread/lio_listio.c (LIO_OPCODE_BASE): Define.
5118         (lio_listio): Use it.
5119         * sysdeps/pthread/lio_listio64.c: Include lio_listio.c instead of
5120         after few defines to avoid duplication.
5122 2003-07-22  Jakub Jelinek  <jakub@redhat.com>
5124         * include/stdio.h (__libc_fatal): Add libc_hidden_proto.
5125         * include/dlfcn.h (__libc_dlopen_mode, __libc_dlsym, __libc_dlclose):
5126         Likewise.
5127         * elf/dl-libc.c (__libc_dlopen_mode, __libc_dlsym, __libc_dlclose):
5128         Add libc_hidden_def.
5129         * sysdeps/generic/libc_fatal.c (__libc_fatal): Likewise.
5130         * sysdeps/posix/libc_fatal.c (__libc_fatal): Likewise.
5131         * sysdeps/unix/sysv/linux/libc_fatal.c (__libc_fatal): Likewise.
5132         * elf/Versions (libc): Export __libc_dlopen_mode@@GLIBC_PRIVATE,
5133         __libc_dlsym@@GLIBC_PRIVATE and __libc_dlclose@@GLIBC_PRIVATE.
5134         * libio/Versions (libc): Export __libc_fatal@@GLIBC_PRIVATE.
5135         * sysdeps/generic/unwind-dw2.c: Readd #ifs removed during last
5136         change.
5137         * sysdeps/generic/unwind.inc: Removed.
5139         * include/resolv.h (__resp): Declare.  Define to __libc_resp
5140         if in libc.so.
5141         (_res): If USE___THREAD, define to (*__resp).
5142         * resolv/res_libc.c (_res): Normal .bss variable with compat_symbol
5143         even if USE___THREAD.
5144         (__resp): New __thread variable.
5145         (__libc_resp): New alias.
5146         * resolv/Versions (libc): Export _res@GLIBC_2.0 even if
5147         USE_TLS && HAVE___THREAD.  Export __resp@@GLIBC_PRIVATE.
5148         * sysdeps/generic/res-state.c (__res_state): Return __resp
5149         if USE___THREAD.
5151 2003-07-22  H.J. Lu  <hongjiu.lu@intel.com>
5153         * elf/dl-support.c (_dl_hwcap): New variable.
5154         (_dl_aux_init): Initialize GL(dl_hwcap) for static binaries.
5156         * sysdeps/i386/fpu/fclrexcpt.c: Include <unistd.h>, <ldsodefs.h>
5157         and <dl-procinfo.h>.
5158         (__feclearexcept): Clear MXCSR if needed.
5159         * sysdeps/i386/fpu/fsetexcptflg.c: Likewise.
5161         * sysdeps/i386/fpu_control.h (_FPU_GETCW, _FPU_SETCW): Document
5162         that newer hardware needs more than these macros.
5164         * sysdeps/i386/setfpucw.c: New file.
5166 2003-07-22  Jakub Jelinek  <jakub@redhat.com>
5168         * elf/Makefile (CFLAGS-ldconfig.c): Define IS_IN_ldconfig.
5169         * elf/ldconfig.c: Include dl-procinfo.c.
5170         (PROCINFO_CLASS): Define.
5171         * sysdeps/generic/ldsodefs.h (PROCINFO_CLASS): Define.
5172         * sysdeps/unix/sysv/linux/x86_64/dl-procinfo.c: New file.
5173         * sysdeps/unix/sysv/linux/x86_64/dl-procinfo.h: New file.
5174         * sysdeps/unix/sysv/linux/i386/dl-procinfo.c (PROCINFO_CLASS):
5175         Define if not yet defined.  Use it instead of EXTERN.  Undefine
5176         at the end of the file.
5177         * sysdeps/unix/sysv/linux/arm/dl-procinfo.c (PROCINFO_CLASS):
5178         Likewise.
5179         * sysdeps/unix/sysv/linux/sparc/sparc32/dl-procinfo.c
5180         (PROCINFO_CLASS): Likewise.
5181         * sysdeps/unix/sysv/linux/sparc/sparc64/dl-procinfo.c
5182         (PROCINFO_CLASS): Likewise.
5184 2003-07-22  H.J. Lu  <hongjiu.lu@intel.com>
5186         * elf/ldconfig.c (main): Issue a fatal error if relative path
5187         is used to build cache.
5189 2003-07-22  Ulrich Drepper  <drepper@redhat.com>
5191         * elf/readlib.c (process_file): Avoid possible overflow in assignment.
5193 2003-07-21  Art Haas  <ahaas@airmail.net>
5195         * manual/charset.texi (Converting a Character): Fix example code so a
5196         valid pointer is returned.
5198 2003-07-22  Andreas Jaeger  <aj@suse.de>
5200         * elf/readlib.c (process_file): Check that file is a shared
5201         object.
5203         * elf/sofini.c (__FRAME_END__): Use attribute used so that gcc
5204         will not optimize it away.
5205         (__DTOR_END__): Likewise.
5206         (__CTOR_END__): Likewise.
5208         * include/libc-symbols.h (_elf_set_element): Use attribute used so
5209         that gcc will not optimize it away.
5210         (link_warning): Likewise.
5212 2003-07-22  Ulrich Drepper  <drepper@redhat.com>
5214         * wcsmbs/wcpncpy.c (__wcpncpy): Correct destination pointer handling.
5215         * wcsmbs/Makefile (tests): Add tst-wcpncpy.
5216         * wcsmbs/tst-wcpncpy.c: New file.
5218 2003-07-21  Ulrich Drepper  <drepper@redhat.com>
5220         * sysdeps/unix/sysv/linux/bits/sched.h (CLONE_STOPPED): Define.
5222         * sysdeps/i386/fpu/feenablxcpt.c (feenableexcept): Reverse use of
5223         stmxcsr and ldmxcsr.
5225         * Makerules (build-module-helper): Add -z defs unless explicitly said
5226         not to do it.
5227         * dlfcn/Makefile: Define various *-no-z-defs variables for test DSOs
5228         which has undefined symbols.
5229         * elf/Makefile: Likewise.
5231         * sysdeps/i386/fpu/fedisblxcpt.c: Use dl_hwcap, not dl_hwcap_mask.
5232         * sysdeps/i386/fpu/feenablxcpt.c: Likewise.
5233         * sysdeps/i386/fpu/feholdexcpt.c: Likewise.
5234         * sysdeps/i386/fpu/fesetround.c: Likewise.
5235         * sysdeps/i386/fpu/ftestexcept.c: Likewise.
5237 2003-07-21  HJ Lu  <hongjiu.lu@intel.com>
5239         * elf/ldconfig.c (search_dir): Treat symlink as regular file
5240         if it won't point to itself.
5242 2003-07-20  Ulrich Drepper  <drepper@redhat.com>
5244         * sysdeps/ia64/hp-timing.h (REPEAT_READ): Cast to long int not to int.
5246 2003-07-20  Andreas Jaeger  <aj@suse.de>
5248         * iconvdata/cp932.c (BODY): STANDARD_ERR_HANDLER is now called
5249         STANDARD_TO_LOOP_ERR_HANDLER.
5250         * iconvdata/euc-jp-ms.c (BODY): Likewise.
5252 2003-07-19  Ulrich Drepper  <drepper@redhat.com>
5254         * sysdeps/unix/sysv/linux/bits/sched.h (__CPU_ZERO): Fix typo.
5256         * sysdeps/unix/sysv/linux/syscalls.list: Remove affinity syscalls.
5258 2003-07-16  Daniel Jacobowitz  <drow@mvista.com>
5259             Andreas Jaeger  <aj@suse.de>
5261         * sysdeps/unix/sysv/linux/mips/bits/shm.h (SHMLBA): Define to
5262         256K, remove unneeded declaration of __getpagesize.
5264 2003-07-16  Andreas Schwab  <schwab@suse.de>
5266         * sysdeps/unix/sysv/linux/futimes.c: Include <string.h>.
5268 2003-07-15  Ulrich Drepper  <drepper@redhat.com>
5270         * io/test-utime.c (main): Make test yet more robust.
5272 2003-07-14  Ulrich Drepper  <drepper@redhat.com>
5274         More cancellation handling fixups.
5275         * sysdeps/unix/sysv/linux/not-cancel.h: Add waitpid_not_cancel.
5276         * sysdeps/generic/not-cancel.h: Likewise.
5277         * catgets/open_catalog.c: Use not-cancelable syscalls.
5278         * time/Makefile (CFLAGS-getdate.c): Add -fexceptions.
5279         * sysdeps/unix/sysv/linux/llseek.c: Must not be cancelable.
5280         * sysdeps/unix/syscalls.list: Don't mark lseek as cancelable.
5281         * dlfcn/dlfcn.h: Mark dlopen with __THROW again.
5282         * io/fcntl.h: Don't mark posix_fallocate with __THROW.
5283         * libio/fileops.c: Use not-cancelable syscalls for fclose.
5284         * libio/iopopen.c: Use no-cancelable syscalls.
5285         * libio/stdio.h: Mark popen and pclose with __THROW again.
5286         * misc/Makefile (CFLAGS-syslog.c): Add -fexceptions.
5287         * misc/syslog.c: Fix locking and cancellation cleanup handling.
5288         * posix/unistd.h: Mark ttyname and ttyname_r again with __THROW.
5289         * stdio-common/Makefile (CFLAGS-tmpfile.c, CFLAGS-tmpfile64.c,
5290         CFLAGS-tempname.c): Add -fexceptions.
5291         * stdlib/Makefile (CFLAGS-mkstemp.c): Add -fexceptions.
5292         * string/string.h: Mark strerror and strerror_r with _THROW again.
5293         * sysdeps/generic/unwind.inc: New file.  Copied from gcc.
5294         * sysdeps/generic/unwind-dw2.c: Update from gcc version.  Remove
5295         #ifs since we now need all the code compiled.
5296         * sysdeps/posix/spawni.c: Use close_not_cancel instead of close.
5297         * sysdeps/unix/closedir.c: Use not-cancelable syscalls.
5298         * sysdeps/unix/opendir.c: Likewise.
5300         * iconvdata/Makefile (modules): Add CP932 and EUC-JP-MS.
5301         Add rule for EUC-JP-MS dependency.
5302         * iconvdata/cp932.c: New file.
5303         * iconvdata/eucjp-ms.c: New file.
5304         * iconvdata/gconv-modules: Add entries for CP932 and EUC-JP-MS.
5305         Patch by MORIYAMA Masayuki <msyk@mtg.biglobe.ne.jp>.
5307 2003-07-15  Jakub Jelinek  <jakub@redhat.com>
5309         * sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S (__socket): Add
5310         cfi directives.
5312 2003-07-14  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
5314         * sysdeps/unix/sysv/linux/kernel-features.h
5315         (__ASSUME_FIXED_CLONE_SYSCALL): New macro.
5316         * sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S: Use it.
5318         * sysdeps/unix/sysv/linux/utimes.c: Include sysdep.h.
5320 2003-07-14  Ulrich Drepper  <drepper@redhat.com>
5322         * sysdeps/unix/sysv/linux/kernel-features.h: Define
5323         __ASSUME_TGKILL for Alpha appropriately.
5325 2003-07-12  Ulrich Drepper  <drepper@redhat.com>
5327         * sysdeps/unix/sysv/linux/bits/statfs.h (_STATFS_F_FRSIZE): Define.
5328         * sysdeps/unix/sysv/linux/alpha/bits/statfs.h (_STATFS_F_FRSIZE):
5329         Likewise.
5330         * sysdeps/unix/sysv/linux/s390/bits/statfs.h (_STATFS_F_FRSIZE):
5331         Likewise.
5333         * sysdeps/unix/sysv/linux/kernel-features.h: Define
5334         __ASSUME_UTIMES for x86 and kernels > 2.5.75.
5336         * sysdeps/unix/sysv/linux/futimes.c (__futimes): Handle case with
5337         second parameter == NULL.
5338         * sysdeps/unix/sysv/linux/utimes.c: New file.
5340 2003-07-12  Jakub Jelinek  <jakub@redhat.com>
5342         * sysdeps/unix/sysv/linux/futimes.c: Include kernel-features.h.
5343         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_UTIMES): Fix
5344         a typo.
5346 2003-07-12  Ulrich Drepper  <drepper@redhat.com>
5348         * time/sys/time.h: Namespace cleanup.
5349         * sysdeps/unix/sysv/linux/kernel-features.h: Define
5350         __ASSUME_UTIMES for the architectures which always had the syscall.
5351         * sysdeps/unix/sysv/linux/futimes.c: New file.
5353 2003-07-12  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
5355         * sysdeps/unix/sysv/linux/sh/socket.S: Save and restore the PR
5356         register across CENABLE and CDISABLE.
5358 2003-07-11  Jakub Jelinek  <jakub@redhat.com>
5360         * sysdeps/unix/sysv/linux/sigwait.c: Include string.h.
5361         * sysdeps/unix/sysv/linux/sigwaitinfo.c: Likewise.
5362         * sysdeps/unix/sysv/linux/sigtimedwait.c: Likewise.
5363         * sysdeps/unix/sysv/linux/sleep.c (__sleep): Cast value to unsigned
5364         int before assigning to max to avoid warnings.
5366 2003-07-11  Jakub Jelinek  <jakub@redhat.com>
5368         * sysdeps/unix/sysv/linux/powerpc/powerpc32/socket.S (__socket): Add
5369         cfi directives.
5370         * sysdeps/unix/sysv/linux/s390/s390-32/socket.S (__socket): Likewise.
5371         * sysdeps/unix/sysv/linux/s390/s390-64/socket.S (__socket): Likewise.
5373 2003-07-10  Jakub Jelinek  <jakub@redhat.com>
5375         * sysdeps/powerpc/powerpc64/elf/start.S: Set section flags of
5376         .data.rel.ro.local to "aw".
5378 2003-07-10  Ulrich Drepper  <drepper@redhat.com>
5380         * sysdeps/m68k/Makefile: Remove CLFAGS-.oS addition.
5381         * Makeconfig (CFLAGS-.oS): Use PIC-ccflag instead of pic-ccflag.
5382         (PIC-ccflag): Define.
5384 2003-07-04  Jakub Jelinek  <jakub@redhat.com>
5386         * sysdeps/s390/s390-32/elf/start.S: Emit position independent code
5387         if PIC.
5388         * sysdeps/s390/s390-64/elf/start.S: Likewise.
5390 2003-07-07  Jakub Jelinek  <jakub@redhat.com>
5392         * sysdeps/powerpc/powerpc64/elf/start.S: Put L(start_address)
5393         into .data.rel.ro.local section if PIC to avoid DT_TEXTREL.
5395 2003-07-07  Ulrich Drepper  <drepper@redhat.com>
5397         * sysdeps/unix/sysv/linux/kernel-features.h: Version
5398         __ASSUME_CORRECT_SI_PID and __ASSUME_TGKILL if possible.
5400         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Adjust for
5401         compilation with HAVE_AUX_SECURE defined.
5403 2003-07-05  Richard Henderson  <rth@redhat.com>
5405         * sysdeps/alpha/elf/initfini.c: Avoid .ent/.end.
5407 2003-07-03  Ulrich Drepper  <drepper@redhat.com>
5409         * configure.in: Also check for .cfi_rel_offset pseudo-op.
5411 2003-07-03  Jakub Jelinek  <jakub@redhat.com>
5413         * sysdeps/unix/sysv/linux/prof-freq.c (__profile_frequency): Fix a
5414         typo.
5416 2003-07-03  Ulrich Drepper  <drepper@redhat.com>
5418         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_AT_CLKTCK):
5419         Define.
5420         * sysdeps/unix/sysv/linux/prof-freq.h: New file.
5422 2003-07-02  Jakub Jelinek  <jakub@redhat.com>
5424         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Protect new_sysinfo
5425         decl and use with #ifdef NEED_DL_SYSINFO.
5427 2003-07-02  Ulrich Drepper  <drepper@redhat.com>
5429         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Don't set
5430         GL(dl_sysinfo) unles GL(dl_sysinfo_dso) is also set.
5431         * sysdeps/unix/sysv/linux/kernel-features.h: Define
5432         __ASSUME_VSYSCALL only for 2.5.69 and up since this is when the
5433         vsyscall DSO was added.
5435         * posix/bits/posix1_lim.h (_POSIX_NGROUPS_MAX): Define to 8 or 0
5436         depending on selected standard.
5437         (NGROUPS_MAX): Define to 8 if not defined.
5439 2003-07-02  Andreas Jaeger  <aj@suse.de>
5441         * sysdeps/unix/sysv/linux/x86_64/sys/epoll.h: New file.
5443 2003-05-04  H.J. Lu  <hongjiu.lu@intel.com>
5445         * malloc/arena.c (arena_get2): Add atomic_write_barrier.
5446         * malloc/thread-m.h: Include <atomic.h>.
5447         (atomic_full_barrier): Provide default.
5448         (atomic_read_barrier): Likewise.
5449         (atomic_write_barrier): Likewise.
5450         * sysdeps/ia64/bits/atomic.h (atomic_full_barrier): New #define.
5452 2003-06-30  Ulrich Drepper  <drepper@redhat.com>
5454         * sysdeps/generic/sysdep.h: Define cfi_rel_offset and CFI_REL_OFFSET.
5456 2003-06-30  Richard Henderson  <rth@redhat.com>
5458         * sysdeps/alpha/bits/atomic.h (__arch_compare_and_exchange_bool_*_int):
5459         Invert the sense of the return value.
5460         (__arch_exchange_16_int): Fix paste-o.
5461         (__arch_exchange_{32,64}_int): Fix think-o.
5463         * sysdeps/unix/sysv/linux/alpha/clone.S: Load child_tid properly.
5465 2003-06-30  Richard Henderson  <rth@redhat.com>
5467         * include/sys/resource.h (__getrusage): Mark hidden.
5468         * include/sys/time.h (__settimeofday, __setitimer, __utimes): Likewise.
5469         * include/sys/wait.h (__wait4): Likewise.
5471 2003-06-17  Guido Guenther  <agx@sigxcpu.org>
5473         * sysdeps/unix/sysv/linux/mips/xstatconv.c: Handle STAT_IS_KERNEL_STAT
5474         case.
5475         (xstat_conv): Rename to __xstat_conv and remove static inline.
5476         (xstat64_conv): Likewise.
5478 2003-06-29  Ulrich Drepper  <drepper@redhat.com>
5480         * sysdeps/unix/sysv/linux/sleep.c (__sleep): Handle parameter
5481         values which cannot be handled in one nanosleep call.
5483 2003-06-25  Alfred M. Szmidt  <ams@kemisten.nu>
5485         * sysdeps/generic/bits/in.h (IPV6_HOPOPTS, IPV6_DSTOPTS): New macros.
5486         (IPV6_RXHOPOPTS, IPV6_RXDSTOPTS): Use them.
5488         * sysdeps/generic/ifreq.h (__if_nextreq) [_HAVE_SA_LEN]: Typo fix.
5490 2003-06-04  Thorsten Kukuk  <kukuk@suse.de>
5492         * sysdeps/unix/sysv/linux/net/if_arp.h: Sync with kernel header,
5493         fix typo.
5495 2003-06-26  Steven Munroe  <sjmunroe@us.ibm.com>
5497         * sysdeps/unix/sysv/linux/xstatconv.h [!STAT_IS_KERNEL_STAT]:
5498         Conditionalize function definitions that use struct kernel_stat.
5499         * sysdeps/unix/sysv/linux/fxstat.c: Remove __syscall_fstat extern.
5500         * sysdeps/unix/sysv/linux/lxstat.c: Remove __syscall_lstat extern.
5501         * sysdeps/unix/sysv/linux/xstat.c: Remove __syscall_stat extern.
5503 2003-06-28  Ulrich Drepper  <drepper@redhat.com>
5505         * sysdeps/unix/sysv/linux/s390/semtimedop.c (semtimedop): Add real
5506         implementation.
5508 2003-06-07  Thorsten Kukuk  <kukuk@suse.de>
5510         * nis/nss_compat/compat-grp.c: Remove unused nis_first variable.
5511         (getgrent_next_file): Don't store group name to early in blacklist.
5513         * nis/nss_compat/compat-pwd.c (internal_getpwuid_r): Save strlen result
5514         and use memcpy instead of strcpy.
5516 2003-06-28  Ulrich Drepper  <drepper@redhat.com>
5518         * nis/nss_compat/compat-grp.c: Optimize several little things.  Use
5519         stream unlocked.
5520         * nis/nss_compat/compat-initgroups.c: Likewise.
5521         * nis/nss_compat/compat-pwd.c: Likewise.
5522         * nis/nss_compat/compat-spwd.c: Likewise.
5524 2003-06-27  Thorsten Kukuk  <kukuk@suse.de>
5526         * nis/nss_compat/compat-initgroups.c: Don't use our own NIS/NIS+
5527         functions, dlopen corresponding NSS module instead.
5529 2003-06-27  Jeroen Dekkers  <jeroen@dekkers.cx>
5531         * sysdeps/mach/hurd/alpha/init-first.c: Remove call to __libc_init.
5532         * sysdeps/mach/hurd/i386/init-first.c: Likewise.
5533         * sysdeps/mach/hurd/mips/init-first.c: Likewise.
5534         * sysdeps/mach/hurd/powerpc/init-first.c: Likewise.
5536 2003-06-27  Ulrich Drepper  <drepper@redhat.com>
5538         * rt/Makefile (CFLAGS-librt-cancellation.c): Define.
5540 2003-06-26  Roland McGrath  <roland@frob.com>
5542         * sysdeps/mach/configure.in: Barf rather than define NO_CREATION_TIME.
5543         * sysdeps/mach/configure: Regenerated.
5544         * sysdeps/mach/hurd/times.c (times_init): Function removed.
5545         (__times): Assume `creation_time' field is available.
5546         * sysdeps/mach/hurd/Makefile [$(subdir) = csu] (sysdep_routines):
5547         Don't append set-init.
5548         * sysdeps/mach/hurd/set-init.c: File removed.
5550 2003-06-26  Roland McGrath  <roland@redhat.com>
5552         * elf/elf.h (AT_SECURE): New macro.
5553         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Grok it,
5554         set __libc_enable_secure.
5555         (_dl_show_auxv): Add AT_SECURE to name table.
5556         * elf/dl-support.c (_dl_aux_init): Grok AT_SECURE, set
5557         __libc_enable_secure and __libc_enable_secure_decided.
5558         * sysdeps/unix/sysv/linux/ldsodefs.h
5559         [__ASSUME_AT_SECURE] (HAVE_AUX_SECURE): Define it.
5560         * sysdeps/unix/sysv/linux/kernel-features.h
5561         [__LINUX_KERNEL_VERSION >= 132426] (__ASSUME_AT_SECURE): Define it.
5563 2003-06-26  Ulrich Drepper  <drepper@redhat.com>
5565         * io/test-utime.c: If _STATBUF_ST_NSEC is defined, adjust lower
5566         boundary test to take rounding of nanoseconds into account.
5568         * sysdeps/unix/sysv/linux/bits/stat.h: Define _STATBUF_ST_NSEC.
5569         * sysdeps/unix/sysv/linux/ia64/bits/stat.h: Likewise.
5570         * sysdeps/unix/sysv/linux/m68k/bits/stat.h: Likewise.
5571         * sysdeps/unix/sysv/linux/powerpc/bits/stat.h: Likewise.
5572         * sysdeps/unix/sysv/linux/s390/bits/stat.h: Likewise.
5573         * sysdeps/unix/sysv/linux/sparc/bits/stat.h: Likewise.
5574         * sysdeps/unix/sysv/linux/x86_64/bits/stat.h: Likewise.
5576 2003-06-26  Andreas Schwab  <schwab@suse.de>
5578         * sysdeps/m68k/fpu/bits/mathinline.h: Don't inline frexp.
5579         * sysdeps/m68k/fpu/s_frexp.c: Put implementation here.
5580         * sysdeps/m68k/fpu/s_frexpl.c: Fix to handle unnormalized numbers.
5582 2003-06-17  Thorsten Kukuk  <kukuk@suse.de>
5584         * nis/Makefile: Remove NIS/NIS+ files from nss_compat module.
5585         * nis/nss_compat/compat-grp.c: Don't use our own NIS/NIS+ functions,
5586         dlopen corresponding NSS module instead.
5587         * nis/nss_compat/compat-pwd.c: Likewise.
5588         * nis/nss_compat/compat-spwd.c: Likewise.
5589         * nis/nss_compat/compat-initgroups.c: Disabled for now.
5590         * nss/Versions: Export __nss_lookup_function.
5592 2003-06-19  Daniel Jacobowitz  <drow@mvista.com>
5594         * sysdeps/unix/sysv/linux/kernel-features.h: Update kernel features
5595         for the SH architecture.
5597 2003-06-25  Thorsten Kukuk  <kukuk@suse.de>
5599         * csu/Makefile: Use CPPFLAGS to find correct linux/version.h.
5601 2003-06-25  Andreas Jaeger  <aj@suse.de>
5603         * stdlib/tst-strtod.c (main): Declare constant long double as
5604         suggested by Jakub Jelinek and Andreas Schwab.
5606         * posix/tst-nanosleep.c: Include <time.h> for nanosleep
5607         declaration.
5609         * stdio-common/tst-fphex.c: Fix format string.
5611         * posix/transbug.c: Include <string.h> for memset and strlen
5612         declarations.
5614         * stdio-common/tst-sprintf.c: Include <stdlib.h> for free declaration.
5616         * stdlib/tst-strtod.c (main): Pass long double value.
5618         * test-skeleton.c: Include <time.h> for nanosleep declaration.
5620 2003-06-25  Ulrich Drepper  <drepper@redhat.com>
5622         * include/time.h: Don't define CLOCK_IDFIELD_SIZE if _ISOMAC is
5623         defined.
5625 2003-06-11  Jakub Jelinek  <jakub@redhat.com>
5627         * elf/Versions (libc): Add _dl_open_hook@GLIBC_PRIVATE.
5628         * elf/dl-libc.c (struct dl_open_hook): New.
5629         (_dl_open_hook): New variable.
5630         (do_dlsym_private): New function.
5631         (__libc_dlopen_mode) [!SHARED]: Lookup _dl_open_hook@GLIBC_PRIVATE
5632         and initialize it if found.
5633         (__libc_dlopen_mode) [SHARED]: If _dl_open_hook is non-NULL,
5634         call dlopen_mode hook.
5635         (__libc_dlsym) [SHARED]: If _dl_open_hook is non-NULL,
5636         call dlsym hook.
5637         (__libc_dlclose) [SHARED]: If _dl_open_hook is non-NULL,
5638         call dlclose hook.
5640 2003-06-25  Ulrich Drepper  <drepper@redhat.com>
5642         * sysdeps/unix/sysv/linux/cris/sysdep.h (INLINE_SYSCALL): Cast
5643         result to long int so that extensions to long long int work.
5644         Patch by Uwe Reimann <libc-alpha@pulsar.homelinux.net>.
5646 2003-06-19  Jakub Jelinek  <jakub@redhat.com>
5648         * elf/ldconfig.c (main): Use add_system_dir instead of add_dir.
5649         * sysdeps/generic/dl-cache.h (add_system_dir): Define.
5650         * sysdeps/unix/sysv/linux/x86_64/dl-cache.h: Include sparc
5651         dl-cache.h.
5652         * sysdeps/unix/sysv/linux/s390/dl-cache.h: New file.
5653         * sysdeps/unix/sysv/linux/mips/dl-cache.h: New file.
5654         * sysdeps/unix/sysv/linux/powerpc/dl-cache.h: New file.
5655         * sysdeps/unix/sysv/linux/sparc/dl-cache.h: New file.
5657 2003-06-19  Jakub Jelinek  <jakub@redhat.com>
5659         * test-skeleton.c (timeout_handler): If waitpid returned 0,
5660         retry once after a second.  If killed == 0, assume
5661         WTERMSIG (status) == SIGKILL.
5663 2003-06-18  Roland McGrath  <roland@redhat.com>
5665         * sysdeps/generic/dl-sysdep.c (_dl_show_auxv): Catch uninitialized
5666         elements in the table instead of printing an empty name string.
5668 2003-06-05  Roland McGrath  <roland@redhat.com>
5670         * elf/elf.h (PT_GNU_STACK): New macro.
5672 2003-06-24  Ulrich Drepper  <drepper@redhat.com>
5674         * include/time.h: Define CLOCK_IDFIELD_SIZE.
5675         * sysdeps/posix/clock_getres.c: Recognize thread CPU clock IDs.
5676         * sysdeps/unix/clock_gettime.c: Likewise.
5677         * sysdeps/unix/clock_settime.c: Likewise.
5678         * sysdeps/unix/clock_nanosleep.c (CPUCLOCK_P): Adjust for new
5679         clock id for thread CPU clocks.
5681         * sysdeps/unix/sysv/linux/fstatfs64.c (__fstatfs64): Add support
5682         for the fstatfs64 syscall.
5683         * sysdeps/unix/sysv/linux/statfs64.c (__statfs64): Add support for
5684         the statfs64 syscall.
5686         * sysdeps/unix/sysv/linux/kernel-features.h: Define
5687         __ASSUME_STATFS64 appropriately.
5689         * sysdeps/unix/sysv/linux/internal_statvfs.c: Use f_frsize field
5690         from statfs structure if it has been filled in.
5692         * sysdeps/unix/sysv/linux/bits/statfs.h (struct statfs): Add f_frsize
5693         field.
5694         (struct statfs64): Likewise.
5695         * sysdeps/unix/sysv/linux/alpha/bits/statfs.h: Likewise.
5696         * sysdeps/unix/sysv/linux/s390/bits/statfs.h: Likewise.
5698 2003-06-24  Richard Henderson  <rth@redhat.com>
5700         * sysdeps/unix/sysv/linux/alpha/syscalls.list (pread, pwrite): Use
5701         the 64-bit syscall name.
5703         * sysdeps/alpha/setjmp.S (_setjmp, setjmp): Mark .prologue.
5705         * sysdeps/alpha/fpu/bits/mathinline.h: Honor
5706         __LIBC_INTERNAL_MATH_INLINES.  Implement __signbitf, __signbit.
5708         * sysdeps/unix/sysv/linux/alpha/clone.S: Use HIDDEN_JUMPTARGET.
5709         * sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S: Use
5710         libc_hidden_def.
5711         * sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S: Likewise.
5712         * sysdeps/unix/sysv/linux/alpha/setfpucw.c: Use libc_hidden_proto
5713         on them.
5715         * sysdeps/alpha/bits/atomic.h: New file.
5717 2003-06-24  Andreas Schwab  <schwab@suse.de>
5719         * sysdeps/m68k/fpu/libm-test-ulps: Update.
5721 2003-06-24  Andreas Jaeger  <aj@suse.de>
5723         * sysdeps/unix/sysv/linux/x86_64/stat.h (_STAT_VER_LINUX): Avoid
5724         redeclaration with 32-bit code.
5726 2003-05-19  Ed Connell  <ed.connell@sas.com>
5728         * sysdeps/unix/sysv/linux/i386/getcontext.S (getcontext): Retain
5729         floating point mask.
5730         * sysdeps/i386/fpu/fegetenv.c (fegetenv): Likewise.
5732 2003-06-23  Ulrich Drepper  <drepper@redhat.com>
5734         * sysdeps/pthread/aio_misc.h: Mark __aio_requests_mutex,
5735         __aio_enqueue_request, __aio_find_req, __aio_find_req_fd,
5736         __aio_free_request, __aio_notify, and __aio_sigqueue as hidden.
5738         * sysdeps/pthread/aio_suspend.c (aio_suspend): Set errno to the result
5739         of pthread_cond_wait if there was an error.  Use pthread_cleanup_*
5740         instead of __libc_cleanup_region_*.
5742 2003-06-20  Richard Henderson  <rth@redhat.com>
5744         * sysdeps/unix/make-syscalls.sh: Implement ! prefix for strong aliases.
5745         * sysdeps/unix/sysv/linux/alpha/syscalls.list (open, open64): New.
5747 2003-06-20  Richard Henderson  <rth@redhat.com>
5749         * sysdeps/unix/alpha/sysdep.h (INLINE_SYSCALL1): Use __builtin_expect.
5750         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_ST_INO_64_BIT)
5751         Unset for alpha.
5752         (__ASSUME_TIMEVAL64): Set for alpha.
5753         * sysdeps/unix/sysv/linux/alpha/Makefile (sysdep_routines): Remove
5754         adjtimex, osf_sigprocmask, old_adjtimex.
5755         * sysdeps/unix/sysv/linux/alpha/adjtime.c: Use INLINE_SYSCALL,
5756         __ASSUME_TIMEVAL64.  Reorg tv64 functions to avoid uninit variable.
5757         * sysdeps/unix/sysv/linux/alpha/getitimer.S: Use __ASSUME_TIMEVAL64.
5758         * sysdeps/unix/sysv/linux/alpha/getrusage.S: Likewise.
5759         * sysdeps/unix/sysv/linux/alpha/gettimeofday.S: Likewise.
5760         * sysdeps/unix/sysv/linux/alpha/select.S: Likewise.
5761         * sysdeps/unix/sysv/linux/alpha/setitimer.S: Likewise.
5762         * sysdeps/unix/sysv/linux/alpha/settimeofday.S: Likewise.
5763         * sysdeps/unix/sysv/linux/alpha/utimes.S: Likewise.
5764         * sysdeps/unix/sysv/linux/alpha/wait4.S: Likewise.
5765         * sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S: Streamline
5766         PIC code sequence.
5767         * sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S: Likewise.
5768         * sysdeps/unix/sysv/linux/alpha/sigaction.c: New file.
5769         * sysdeps/unix/sysv/linux/alpha/sigprocmask.c: Use INLINE_SYSCALL.
5770         * sysdeps/unix/sysv/linux/alpha/ustat.c: Likewise.
5771         * sysdeps/unix/sysv/linux/alpha/xmknod.c: Likewise.
5772         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Remove osf_sigprocmask,
5773         sys_ustat, sys_mknod, adjtimex, old_adjtimex.
5774         * sysdeps/unix/sysv/linux/alpha/sysdep.h (INLINE_SYSCALL): Don't
5775         defer to __syscall_name; error for rt_sigaction.
5776         * sysdeps/unix/sysv/linux/alpha/xstatconv.c: Include kernel_stat.h.
5778 2003-06-18  Ulrich Drepper  <drepper@redhat.com>
5780         * malloc/malloc.c (public_mALLINFo): Initialize malloc if it
5781         hasn't happened yet.
5783         * sysdeps/unix/sysv/linux/x86_64/register-dump.h (register_dump):
5784         Fix completely broken implementation.  The second parameter is of
5785         type struct ucontext*.
5787         * sysdeps/x86_64/dl-machine.h (elf_machine_runtime_setup): Always
5788         inline.
5790         * sysdeps/i386/i686/dl-hash.h: Don't inline _dl_elf_hash.
5791         * sysdeps/generic/dl-hash.h: Likewise.
5793         * sysdeps/generic/memcmp.c: Remove inline from
5794         memcmp_common_alignment and memcmp_not_common_alignment definition.
5796         * intl/localealias.c (read_alias_file): Determine whether line is
5797         read incompletely early, before we modify the line.
5799 2003-06-17  Jakub Jelinek  <jakub@redhat.com>
5801         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela)
5802         <case R_PPC64_DTPREL64>: Don't segfault on undefined symbols.
5804 2003-06-17  Paul Mackerras  <paulus@samba.org>
5806         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: New file.
5807         * sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S: New file.
5808         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: New file.
5809         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: New file.
5810         * sysdeps/unix/sysv/linux/powerpc/powerpc32/ucontext_i.h: New file.
5811         * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: Adjust.
5813 2003-06-17  Jakub Jelinek  <jakub@redhat.com>
5815         * posix/regcomp.c (build_word_op): Use alnum instead of alpha class.
5817 2003-06-17  Ulrich Drepper  <drepper@redhat.com>
5819         * sysdeps/unix/clock_nanosleep.c (clock_nanosleep): nanosleep
5820         takes care of enabling cancellation.
5822         * sysdeps/pthread/aio_suspend.c (aio_suspend): Make aio_suspend
5823         cancelable.  It's not correct to disable cancellation.  Instead of
5824         a cleanup handler.
5826         * sysdeps/unix/sysv/linux/sigtimedwait.c: If SIGCANCEL is defined
5827         and part of the incoming set, create a temporary set without this
5828         signal.
5829         * sysdeps/unix/sysv/linux/sigwait.c: Likewise.
5830         * sysdeps/unix/sysv/linux/sigwaitinfo.c: Likewise.
5832         * sysdeps/unix/sysv/linux/sleep.c: Use CANCELLATION_P if defined before
5833         returning because seconds==0.  Add __builtin_expect.
5835 2003-06-16  Ulrich Drepper  <drepper@redhat.com>
5837         * sysdeps/unix/sysv/linux/i386/socket.S: Add unwind information.
5839         * sysdeps/unix/sysv/linux/wait.c (__libc_wait): Fix type of result
5840         variable.
5842 2003-06-16  Thorsten Kukuk  <kukuk@suse.de>
5844         * include/libc-symbols.h: Add static_link_warning macro.
5845         * grp/initgroups.c: Print linker warning if this function
5846         is called in a static linked binary.
5847         * nss/getXXbyYY.c: Likewise.
5848         * nss/getXXbyYY_r.c: Likewise.
5849         * nss/getXXent.c: Likewise.
5850         * nss/getXXent_r.c: Likewise.
5851         * sysdeps/posix/getaddrinfo.c: Likewise.
5853 2003-06-16  Bruno Haible  <bruno@clisp.org>
5855         * iconvdata/gconv-modules (ISO-8859-15): Add aliases ISO_8859-15,
5856         LATIN-9.
5857         (ISO-8859-16): Add aliases ISO_8859-16:2001, ISO_8859-16.
5858         (IBM1047): Add alias IBM-1047.
5859         (GBK): Add aliases MS936, WINDOWS-936.
5861 2003-06-16  Jakub Jelinek  <jakub@redhat.com>
5863         * sysdeps/unix/sysv/linux/xstatconv.c (__xstat_conv): Define even if
5864         defined __ASSUME_STAT64_SYSCALL && defined XSTAT_IS_XSTAT64.
5865         (__xstat64_conv): Change xstat_conv to __xstat_conv.
5867 2003-06-16  Ulrich Drepper  <drepper@redhat.com>
5869         * locale/iso-639.def: Update from current official ISO 639.
5871         * math/tgmath.h (__TGMATH_UNARY_IMAG_ONLY): Removed.
5873 2003-06-15  Andreas Jaeger  <aj@suse.de>
5875         * sysdeps/i386/fpu/feenablxcpt.c (feenableexcept): Correct setting
5876         of MXCSR.
5877         * sysdeps/i386/fpu/fedisblxcpt.c (fedisableexcept): Likewise.
5878         * sysdeps/i386/fpu/feholdexcpt.c (feholdexcept): Likewise.
5879         Reported by Arnaud Desitter <arnaud.desitter@geography.oxford.ac.uk>.
5881         * math/tgmath.h (carg): Handle real arguments.
5882         (conj): Likewise.
5883         (cproj): Likewise.
5884         (cimag): Likewise.
5885         (creal): Likewise.
5887         * math/Makefile (CFLAGS-test-tgmath-ret.c): New.
5888         (tests): Add test-tgmath-ret.
5889         * math/test-tgmath-ret.c: New file.
5891         * math/tgmath.h (ilogb): Return always an int.
5893 2003-06-16  Ulrich Drepper  <drepper@redhat.com>
5895         * elf/rtld.c (dl_main): Use l_map_start not l_addr in Phdr
5896         computation so that prelinking works.
5898 2003-06-15  Ulrich Drepper  <drepper@redhat.com>
5900         * elf/dl-iteratephdr.c (__dl_iterate_phdr): Don't skip dynamic
5901         linker's map.
5902         * elf/rtld.c (dl_main): Initialize l_phdr and l_phnum of of the
5903         dynamic linker's map.
5905         Fix cancellation point handling wrt exception based cleanup.
5906         * io/Makefile: Compile fcntl.c, poll.c, and lockf.c with exceptions.
5907         * misc/Makefile: Compile pselect.c, readv.c, writev.c, and usleep.c
5908         with exceptions.
5909         * posix/Makefile: Compile pread.c, pread64.c, pwrite.c, pwrite64.c,
5910         sleep.c, wait.c, waitid.c, and waitpid.c with exceptions.
5911         * rt/Makefile: Compile aio_suspend.c and clock_nanosleep.c with
5912         exceptions.
5913         * signal/Makefile: Compile sigpause.c, sigsuspend.c, sigtimedwait.c,
5914         sigwait.c, and sigwaitinfo.c with exceptions.
5915         * stdlib/Makefile: Compile system.c with exceptions.
5916         * sysvipc/Makefile: Compile msgrcv.c and msgsnd.c with exceptions.
5917         * termios/Makefile: Compile tcdrain.c with exceptions.
5918         * sysdeps/generic/lockf.c: Add comment explaining the cancellation
5919         situation.
5920         * sysdeps/generic/pselect.c: Likewise.
5921         * sysdeps/posix/sigpause.c: Likewise.
5922         * sysdeps/posix/system.c: Likewise.
5923         * sysdeps/posix/waitid.c: Likewise.
5924         * sysdeps/unix/sysv/linux/sleep.c: Likewise.
5925         * sysdeps/unix/sysv/linux/usleep.c: Likewise.
5926         * sysdeps/unix/sysv/linux/i386/sysdep.h: Major rewrite of
5927         INTERNAL_SYSCALL to not use push inside asm statement so that
5928         unwind info is correct around the syscall.
5929         * sysdeps/unix/clock_nanosleep.c: Add cancellation support.
5930         * sysdeps/unix/sysv/linux/clock_nanosleep.c: Likewise.
5932 2003-06-15  Andreas Jaeger  <aj@suse.de>
5934         * sysdeps/x86_64/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
5935         Add CFI directives.
5937 2003-06-15  Guido Guenther  <agx@sigxcpu.org>
5939         * sysdeps/unix/sysv/linux/mips/Makefile: Add missing endif and
5940         create $(objpfx).
5942 2003-06-14  Ulrich Drepper  <drepper@redhat.com>
5944         * sysdeps/unix/sysv/linux/check_pf.c (__check_pf): Use __close,
5945         not close.
5947         * inet/inet6_option.c (inet6_option_alloc): Add libc_hidden_def.
5948         * include/netinet/in.h (inet6_option_alloc): Add libc_hidden_proto
5949         definition.
5951         * inet/netinet/ip6.h (IP6OPT_PAD1, IP6OPT_PADN): Define.
5952         * inet/netinet/in.h: Add prototypes for inet6_option_* functions.
5953         * inet/Makefile (routines): Add inet6_option.
5954         * inet/inet6_option.c: New file.
5955         * inet/Versions [GLIBC_2.3.3] (libc): Add inet6_option_space,
5956         inet6_option_init, inet6_option_append, inet6_option_alloc,
5957         inet6_option_next, and inet6_option_find.
5959 2003-06-13  Ulrich Drepper  <drepper@redhat.com>
5961         * inet/netinet/ip6.h (struct ip6_ext): Define.
5963         * sysdeps/unix/sysv/linux/sys/param.h (howmany): Optimize for gcc.
5965         Fixing gcc 3.3 warnings, part II.
5966         * argp/argp-help.c (hol_entry_long_iterate): Always inline.
5967         * elf/dl-load.c (cache_rpath): Don't inline.
5968         * iconvdata/cns11642l2.h: Always inline all functions.
5969         * iconvdata/iso-ir-165.h: Likewise.
5970         * locale/Makefile (aux): Add coll-lookup.
5971         * locale/coll-lookup.c: New file.
5972         * locale/coll-lookup.h (collidx_table_lookup): Do not define here.
5973         (collseq_table_lookup): Likewise.
5974         * locale/weightwc.h: Adjust collidx_table_lookup calls for name change.
5975         * posix/fnmatch_loop.c: Adjust collseq_table_lookup calls for name
5976         change.
5977         * posix/regcomp.c: Likewise.
5978         * posix/regexec.c: Likewise.
5979         * locale/programs/3level.h (*_get): Always inline.
5980         * locale/programs/locfile.h: Move definition of handle_copy to...
5981         * locale/programs/locfile.c: ...here.
5982         * locale/programs/ld-collate.c (obstack_int32_grow): Always inline.
5983         (obstack_int32_grow_fast): Likewise.
5984         (utf8_encode): Likewise.
5985         (find_element): Avoid aliasing problems.
5986         (insert_value): Likewise.
5987         (collate_read): Likewise.
5988         * nss/getent.c (print_hosts): Don't inline
5989         (print_networks): Likewise.
5990         (print_shadow): Likewise.
5991         (build_doc): Likewise.
5992         * nss/nss_files/files-parse.c [ENTDATA] (parser_stclass): Don't
5993         inline.
5994         * posix/regcomp.c (re_set_fastmap): Always inline.
5995         (seek_collating_symbol_entry): Likewise.
5996         (lookup_collation_sequence_value): Likewise.
5997         (build_range_exp): Likewise.
5998         (build_collating_symbol): Likewise.
5999         * posix/regexec.c (acquire_init_state_context): Don't inline.
6000         (clean_state_log_if_need): Likewise.
6001         * resolv/res_send.c (eConsIovec): Rewrite to not return struct and
6002         adjust all callers.
6003         (evConsTime): Likewise.
6004         (evAddTime): Likewise.
6005         (evSubTime): Likewise.
6006         (evNowTime): Likewise.
6007         (evTimeSpec): Removed.
6008         (__libc_res_nsend): Avoid aliasing problem.
6009         * sysdeps/unix/sysv/linux/ifreq.h: Move old_siocgifconf definition to..
6010         * sysdeps/unix/sysv/linux/ifreq.c: ...here.
6011         * sysdeps/unix/sysv/linux/i386/dl-procinfo.h (_dl_string_hwcap):
6012         Always inline.
6013         (_dl_string_platform): Likewise.
6014         * wctype/wchar-lookup.h (wctype_table_lookup): Always inline.
6015         (wcwidth_table_lookup): Likewise.
6016         (wctrans_table_lookup): Likewise.
6018         * sysdeps/unix/sysv/linux/sys/epoll.h: Include <stdint.h>.
6020 2003-06-12  Ulrich Drepper  <drepper@redhat.com>
6022         * wcsmbs/wchar.h: Define wint_t in std namespace, too [PR libc/5034].
6024 2003-05-29  Jim Meyering  <jim@meyering.net>
6026         * time/strftime.c (my_strftime) [!defined _NL_CURRENT
6027         && HAVE_STRFTIME]: Use underlying_strftime for %r.
6028         Suggested by Daniel Yacob <locales@geez.org>.
6030 2003-06-12  Steven Munroe  <sjmunroe@us.ibm.com>
6032         * sysdeps/powerpc/powerpc64/dl-machine.h (RTLD_START): Replace
6033         @got notation with @toc.
6034         * sysdeps/powerpc/powerpc64/sysdep.h (CALL_MCOUNT): Likewise.
6035         * sysdeps/unix/sysv/linux/powerpc/powerpc64/brk.S (__brk): Likewise.
6037 2003-06-12  Ulrich Drepper  <drepper@redhat.com>
6039         * sysdeps/posix/getaddrinfo.c (gaih_inet): Set no_inet6_date also
6040         if only PF_INET address is needed.
6042         * nss/getXXbyYY_r.c: Make sure we always return a nonzero value in
6043         case of an error.
6045         * scripts/config.guess: Update from upstream version.
6046         * scripts/config.sub: Likewise.
6048 2003-06-12  Jakub Jelinek  <jakub@redhat.com>
6050         * locale/programs/ld-time.c (time_output): Also copy the era format,
6051         not only the name.
6053 2003-06-12  H.J. Lu  <hongjiu.lu@intel.com>
6055         * posix/transbug.c (run_test): Return 1 for failure.
6056         (do_test): Compare only if run_test is successful.
6058 2003-06-12  Simon Josefsson  <jas@extundo.com>
6060         * argp/argp.h [!__THROW]: Define if undefined.
6062 2003-06-12  Ulrich Drepper  <drepper@redhat.com>
6064         * sysdeps/unix/sysv/linux/cris/sysdep.h: Fix handling of syscalls with
6065         more than four parameters.
6066         Patch by Uwe Reimann <libc-alpha@pulsar.homelinux.net>.
6068 2003-06-12  Jakub Jelinek  <jakub@redhat.com>
6070         * sysdeps/unix/sysv/linux/ia64/kernel_stat.h: New file.
6071         * sysdeps/unix/sysv/linux/s390/s390-64/kernel_stat.h: New file.
6072         * sysdeps/unix/sysv/linux/x86_64/kernel_stat.h: New file.
6074         * stdio-common/printf-parsemb.c: Include stdlib.h and sys/param.h.
6076 2003-06-12  Roland McGrath  <roland@redhat.com>
6078         * Makerules ($(objpfx)stubs): Rewrite sed magic.
6080 2003-02-28  Isamu Hasegawa  <isamu@yamato.ibm.com>
6082         * posix/regcomp.c (parse_expression): Deliver translation to
6083         build_word_op, and build_charclass.
6084         (build_charclass): Apply translation for character classes too.
6085         (build_word_op): Deliver translation to build_charclass.
6086         * posix/transbug.c: New file.
6087         * posix/Makefile (tests): Add transbug.
6089 2003-06-04  Paolo Bonzini  <bonzini@gnu.org>
6091         * posix/regexec.c (group_nodes_into_DFAstates): Check for
6092         NEXT_ENDBUF_CONSTRAINT.  Move check for constraints which do a
6093         'continue' before the others.
6095 2003-06-11  Ulrich Drepper  <drepper@redhat.com>
6097         * dirent/scandir.c (SCANDIR): Reset errno after calling selector
6098         function [PR libc/5045].
6100         * sysdeps/i386/bits/byteswap.h (__bswap_32): Use bswap instruction
6101         also for P4.
6103         * time/tzfile.c: Add a couple of __builtin_expect.
6105         Remove warnings gcc 3.3 shows.
6106         * argp/argp-help.c (hol_entry_short_iterate): Don't inline.
6107         * elf/dl-load.c (fillin_rpath): Likewise.
6108         (add_path): Likewise.
6109         * elf/dl-version.c (find_needed): Always inline.
6110         * elf/do-lookup.c (FCT): Don't inline.
6111         * iconv/Makefile: Extend vpath to intl subdir.
6112         (iconvconfig-modules): Add hash-string.
6113         * iconv/gconv_charset.h (strip): Don't inline.
6114         (upstr): Always inline.
6115         Move __gconv_compare_alias prototype to...
6116         * iconv/gconv_int.h: ...here.
6117         * iconv/gconv_db.c: Don't include gconv_charset.h.
6118         * iconv/gconv_conf.c (add_alias): Don't inline.
6119         (insert_module): Likewise.
6120         * iconv/gconv_simple.c (internal_ucs4_loop): Always inline.
6121         (internal_ucs4_loop_unaligned): Likewise.
6122         (internal_ucs4_loop_single): Likewise.
6123         (ucs4_internal_loop): Likewise.
6124         (ucs4_internal_loop_unaligned): Likewise.
6125         (ucs4_internal_loop_single): Likewise.
6126         (internal_ucs4le_loop): Always inline.
6127         (internal_ucs4le_loop_unaligned): Likewise.
6128         (internal_ucs4le_loop_single): Likewise.
6129         (ucs4le_internal_loop): Likewise.
6130         (ucs4le_internal_loop_unaligned): Likewise.
6131         (ucs4le_internal_loop_single): Likewise.
6132         * iconv/loop.c: Always inline the defined functions.
6133         * iconvdata/cns11642.h: Likewise.
6134         * iconvdata/cns11642l1.h: Likewise.
6135         * iconvdata/euc-kr.c: Likewise.
6136         * iconvdata/gb2312.h: Likewise.
6137         * iconvdata/jis0201.h: Likewise.
6138         * iconvdata/jis0208.h: Likewise.
6139         * iconvdata/jis0212.h: Likewise.
6140         * iconvdata/jisx0213.h: Likewise.
6141         * iconvdata/ksc5601.h: Likewise.
6142         * iconvdata/utf-7.c (base64): Don't inline.
6143         * include/libc-symbols.h (symbol_set_first_element): Add cast
6144         (symbol_set_end_p): Likewise.
6145         * include/set-hooks (RUN_HOOK): Likewise.
6146         * inet/Makefile (aux): Add ifreq.
6147         * intl/Makefile (aux): Add some entries from routines.  Add
6148         hash-string.
6149         * intl/hash-string.c: New file.
6150         * intl/hash-string.h: Remove hash_string definition.  Declare
6151         __hash_string.
6152         * iconv/gconv_cache.c (find_module_idx): Adjust hash_string caller.
6153         * iconv/iconvconfig.c (new_name): Likewise.
6154         * intl/dcigettext.c (_nl_find_msg): Likewise.
6155         * intl/loadmsgcat.c (_nl_load_domain): Likewise.
6156         * io/ftw.c (open_dir_stream): Always inline.
6157         (process_entry): Don't inline.
6158         * locale/findlocale.c: Include gconv_int.h.
6159         * locale/setlocale.c (new_composite_name): Don't inline.
6160         * locale/weight.h (findidx): Always inline.
6161         * locale/weightwc.h (findidx): Likewise.
6162         * locale/programs/linereader.c (lr_ignore_rest): Define here.
6163         * locale/programs/linereader.h (lr_ignore_rest): Don't define here,
6164         just declare it.
6165         (lr_getc): Always inline.
6166         (lr_ungetc): Likewise.
6167         * nss/nss_files/files-parse.c (parse_list): Likewise.
6168         * stdio-common/Makefile (aux): Add printf-parsemb and
6169         printf-parsewc.
6170         * stdio-common/_itoa.h (_itoa_word): Always inline.
6171         (_fitoa_word, _fitoa): Don't define here, only declare.
6172         * stdio-common/_itoa.c (_iftoa_word): Add here.
6173         (_fitoa): Likewise.
6174         * stdio-common/_itowa.h (_itowa_word): Always inline.
6175         * stdio-common/printf-parse.h (read_int): Don't inline.
6176         (find_spec): Don't define.
6177         Declare __find_specmb and __find_specwc.
6178         (parse_one_spec): Don't define.
6179         Declare __parse_one_specmb and __parse_one_specwc.
6180         * stdio-common/printf-parsemb.c: New file.
6181         * stdio-common/printf-parsewc.c: New file.
6182         * stdio-common/vfprintf.c: Update calls to find_spec and
6183         parse_one_spec for new names.
6184         * stdio-common/printf-prs.c: Likewise.  Define DONT_NEED_READ_INT.
6185         * stdlib/Makefile (aux): Add grouping and groupingwc.
6186         * stdlib/grouping.c: New file.
6187         * stdlib/groupingwc.c: New file.
6188         * stdlib/grouping.h (correctly_grouped_prefix): Don't define here.
6189         Just prototype.
6190         * stdlib/rpmatch.c (try): Don't inline.
6191         * stdlib/strtod.c (round_and_return): Don't line.
6192         (str_to_mpn): Likewise.
6193         (__mpn_lshift_1): Always inline.  Optimize only for constant count.
6194         Adjust for name change of correctly_grouped_prefix.
6195         * sysdeps/generic/strtol.c: Adjust for name change of
6196         correctly_grouped_prefix.
6197         * string/strxfrm.c (utf8_encode): Don't inline.
6198         * sysdeps/generic/dl-cache.c: Define _dl_cache_libcmp.
6199         * sysdeps/generic/dl-cache.h: Just declare _dl_cache_libcmp.
6200         * sysdeps/generic/ifreq.c: New file.
6201         * sysdeps/unix/sysv/linux/ifreq.c: New file.
6202         * sysdeps/generic/ifreq.h (__ifreq): Only declare here.
6203         * sysdeps/unix/sysv/linux/ifreq.h: Likewise.
6204         * sysdeps/generic/ldsodefs.h (_dl_name_match_p): Always inline.
6205         * sysdeps/generic/unwind-dw2-fde.c (start_fde_sort): Don't inline.
6206         (fde_split): Likewise.
6207         (fde_merge): Likewise.
6208         (end_fde_sort): Likewise.
6209         (init_object): Likewise.
6210         (binary_search_unencoded_fdes): Likewise.
6211         (binary_search_single_encoding_fdes): Likewise.
6212         (binary_search_mixed_encoding_fdes): Likewise.
6213         * sysdeps/generic/wordexp.c (w_addchar): Don't inline.
6214         * sysdeps/i386/dl-machine.c (elf_machine_runtime_setup): Always inline.
6215         * sysdeps/posix/sprofil.c (profil_count): Don't inline.
6216         * sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines):
6217         Add xstatconv.
6218         * sysdeps/unix/sysv/linux/xstatconv.h: New file.
6219         * sysdeps/unix/sysv/linux/xstatconv.c: Don't inline the function.
6220         Export them.  Prepend __ to name.
6221         * sysdeps/unix/sysv/linux/Dist: Add xstatconv.h.
6222         * sysdeps/unix/sysv/linux/fxstat.c: Adjust for name change of
6223         conversion functions.
6224         * sysdeps/unix/sysv/linux/fxstat64.c: Likewise.
6225         * sysdeps/unix/sysv/linux/lxstat.c: Likewise.
6226         * sysdeps/unix/sysv/linux/lxstat64.c: Likewise.
6227         * sysdeps/unix/sysv/linux/xstat.c: Likewise.
6228         * sysdeps/unix/sysv/linux/xstat64.c: Likewise.
6229         * sysdeps/unix/sysv/linux/i386/fxstat.c: Likewise.
6230         * sysdeps/unix/sysv/linux/i386/lxstat.c: Likewise.
6231         * sysdeps/unix/sysv/linux/i386/xstat.c: Likewise.
6232         * sysdeps/unix/sysv/linux/pathconf.c (__statfs_link_max,
6233         __statfs_filesize_max, __statfs_symlinks): Define here.  __ prepended
6234         to name.  Change callers.
6235         * sysdeps/unix/sysv/linux/pathconf.h (__statfs_link_max,
6236         __statfs_filesize_max, __statfs_symlinks): Don't define here, just
6237         declare.
6238         * sysdeps/unix/sysv/linux/fpathconf.c: Change all callers.
6239         * time/tzfile.c (decode): Always inline.
6240         * wcsmbs/wcsnrtombs.c: Change type of inbuf to unsigned char*.
6241         Remove cast in tomb function call.
6242         * wcsmbs/wcsrtombs.c Likewise.
6243         * wcsmbs/wcstob.c: Introduce new temp variable to take pointer in
6244         tomb function call.
6246 2003-06-10  Ulrich Drepper  <drepper@redhat.com>
6248         * po/zh_CN.po: Update from translation team.
6250 2003-06-10  Jakub Jelinek  <jakub@redhat.com>
6252         * sysdeps/unix/sysv/linux/bits/in.h (IPV6_V6ONLY, IPV6_JOIN_ANYCAST,
6253         IPV6_LEAVE_ANYCAST, IPV6_IPSEC_POLICY, IPV6_XFRM_POLICY): Define.
6255 2003-06-10  Ulrich Drepper  <drepper@redhat.com>
6257         * inet/Makefile (aux): Add check_pf.
6258         * include/ifaddrs.h: Add prototype for __check_pf.
6259         * sysdeps/generic/check_pf.c: New file.
6260         * sysdeps/unix/sysv/linux/check_pf.c: New file.
6261         * sysdeps/unix/sysv/linux/ifaddrs.h (__no_netlink_support): Renamed
6262         from no_netlink_support.  Export.
6263         * sysdeps/posix/getaddrinfo.c (getaddrinfo): Don't call getifaddrs,
6264         call __check_pf.
6266         * sysdeps/generic/ifaddrs.h: Add libc_hidden_def.
6268         * sysdeps/posix/getaddrinfo.c (getaddrinfo): Don't leak memory
6269         from getifaddr calls.
6271 2003-06-09  Jakub Jelinek  <jakub@redhat.com>
6273         * sysdeps/unix/sysv/linux/kernel-features.h
6274         (__ASSUME_SETRESGID_SYSCALL): Define.
6275         * sysdeps/unix/sysv/linux/setegid.c: Use __ASSUME_SETRESGID_SYSCALL
6276         instead of __ASSUME_SETRESUID_SYSCALL.
6277         (setegid): Only use setresgid32 inline syscall if __NR_setresgid32 is
6278         defined.
6279         * sysdeps/unix/sysv/linux/seteuid.c (seteuid): Only use setresgid32
6280         inline syscall if __NR_setresuid32 is defined.
6281         * sysdeps/unix/sysv/linux/i386/setegid.c (setegid): Use
6282         __ASSUME_SETRESGID_SYSCALL instead of __ASSUME_SETRESUID_SYSCALL.
6283         * sysdeps/unix/sysv/linux/i386/setregid.c: Backout last changes.
6284         * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise.
6285         * sysdeps/unix/sysv/linux/sparc/sparc32/setegid.c (setegid): Protect
6286         code handling non-existant setresgid32 syscall with
6287         #if __ASSUME_SETRESGID_SYSCALL == 0.
6289 2003-06-09  Andreas Schwab  <schwab@suse.de>
6291         * sunrpc/Makefile (generated): Remove rpc-proto.c, rpc-proto.d.
6292         ($(rpcsvc:%.x=$(objpfx)x%$o)): Don't depend on
6293         $(objpfx)rpc-proto.d.
6294         (rpcsvc-dt-files, rpcsvc-depfiles): Define.  Include
6295         $(rpcsvc-depfiles) instead of $(objpfx)rpc-proto.d.
6296         ($(objpfx)rpc-proto.d, $(objpfx)rpc-proto.c): Remove rules.
6298 2003-06-08  Ulrich Drepper  <drepper@redhat.com>
6300         * sysdeps/unix/sysv/linux/seteuid.c (seteuid): Use setresuid32
6301         syscall directly if possible.  If __ASSUME_SETRESUID_SYSCALL is
6302         defined drop compatibility code.
6303         * sysdeps/unix/sysv/linux/setegid.c (setegid): Use setresgid32
6304         syscall directly if possible.  If __ASSUME_SETRESUID_SYSCALL is
6305         defined drop compatibility code.
6306         * sysdeps/unix/sysv/linux/i386/seteuid.c (seteuid): Use
6307         setresuid32 syscall directly if possible.
6308         * sysdeps/unix/sysv/linux/i386/setegid.c (setegid): Use
6309         setresgid32 syscall directly if possible.
6310         * sysdeps/unix/sysv/linux/i386/setregid.c (__setregid): Make POSIX
6311         compliant.  Don't change sgid.
6312         * sysdeps/unix/sysv/linux/i386/setreuid.c (__setreuid): Make POSIX
6313         compliant.  Don't change suid.
6315         * config.h.in: Add have-forced-unwind.
6316         * configure.in: Add AC_SUBST(libc_cv_forced_unwind).
6318 2003-06-07  Ulrich Drepper  <drepper@redhat.com>
6320         * test-skeleton.c (main): If EXPECTED_STATUS is defined check that
6321         returned status from child matches.
6323         * Makeconfig (gnulib): Add -lgcc_eh once again.
6325 2003-06-06  Ulrich Drepper  <drepper@redhat.com>
6327         * test-skeleton.c (main): Use TEMP_FAILURE_RETRY with waitpid.
6329         * sysdeps/unix/sysv/linux/i386/sysdep.h (ASMFMT_2): Only allow
6330         %edx for first parameter.  This means no pushl and therefore the
6331         unwind info isn't screwed up.
6333 2003-06-04  Richard Henderson  <rth@redhat.com>
6335         * sysdeps/alpha/dl-machine.h (RTLD_START): Fix top-of-stack backtrace.
6336         * sysdeps/unix/sysv/linux/alpha/clone.S: Likewise.
6337         * sysdeps/alpha/elf/start.S: Likewise.  Remove pointless allocation.
6338         * sysdeps/unix/sysv/linux/alpha/rt_sigaction.S: Use standard ldgp
6339         entry sequence and explicit relocs.  Add unwind info for sigreturn
6340         and rt_sigreturn.
6341         * configure.in (libc_cv_asm_cfi_directives): Test .cfi_remember_state.
6343         * sysdeps/unix/sysv/linux/alpha/syscalls.list (semtimedop): New.
6344         Annotate some parameters.
6345         * sysdeps/unix/sysv/linux/alpha/sysdep.h (__NR_semtimedop): New.
6347         * sysdeps/unix/sysv/linux/alpha/gettimeofday.S: Fix typo in conversion.
6349         * include/libc-symbols.h (symbol_set_declare): Use arrays
6350         of unspecified size.
6352 2003-06-04  Jakub Jelinek  <jakub@redhat.com>
6354         * config.make.in (ASFLAGS-config): New.
6355         * Makeconfig (ASFLAGS): Append $(ASFLAGS-config).
6356         * configure.in (libc_cv_as_noexecstack): New check.
6357         (ASFLAGS_config): Substitute.
6359 2003-06-04  Jakub Jelinek  <jakub@redhat.com>
6361         * sysdeps/i386/fpu/bits/mathinline.h (log1p, asinh, acosh, atanh,
6362         hypot, logb): Protect with #ifdef __FAST_MATH__.
6364 2003-06-04  Thorsten Kukuk  <kukuk@suse.de>
6366         * sysdeps/i386/fpu/bits/mathinline.h (ldexpf, ldexpl): Protect with
6367         #ifdef __FAST_MATH__.
6369 2003-06-03  Ulrich Drepper  <drepper@redhat.com>
6371         * sysdeps/generic/glob.c [HAVE_D_TYPE] (glob_in_dir): Also allow
6372         DT_LNK entries if GLOB_ONLYDIR is set [PR libc/5043].
6373         * posix/globtest.sh: Adjust for this change.
6375         * sysdeps/unix/sysv/linux/ifaddrs.c (netlink_open): Call getsockname
6376         to get the actual PID value used in the records passed up.
6377         (getifaddrs): Don't initialize nh.pid here.
6379 2003-06-02  Ulrich Drepper  <drepper@redhat.com>
6381         * sysdeps/unix/sysv/linux/ifaddrs.c (netlink_receive): Minor
6382         optimization.
6384         * po/zh_CN.po: Update from translation team.
6386         * posix/getconf.c (main): Also recognize names without the
6387         _POSIX_ prefix.
6389         * elf/Makefile (CFLAGS-dl-lookup.c): Define.
6391 2003-06-02  Bernd Schmidt  <bernds@redhat.com>
6393         * sysdeps/i386/fpu/bits/mathinline.h (sqrt, __sqrtl, ldexp,
6394         ldexpf, ldexpl): Only define if __FAST_MATH__.
6396 2003-06-02  Richard C. Bilson  <rcbilson@plg.uwaterloo.ca>
6398         Replace hard-coded offsets into struct sigcontext with generated file.
6399         * sysdeps/unix/sysv/linux/ia64/sigcontext-offsets.sym: New file.
6400         * sysdeps/unix/sysv/linux/ia64/Makefile
6401         [$(subdir) = stdlib] (gen-as-const-headers): Add it.
6402         * sysdeps/unix/sysv/linux/ia64/ucontext_i.h: Include it instead of
6403         defining SC_* macros here.
6405 2003-06-02  Jakub Jelinek  <jakub@redhat.com>
6407         * sysdeps/unix/sysv/linux/bits/sched.h (CLONE_PID): Remove.
6409 2003-06-01  Jakub Jelinek  <jakub@redhat.com>
6411         * sysdeps/i386/dl-machine.h: Include <sysdep.h>.
6413 2003-06-01  Ulrich Drepper  <drepper@redhat.com>
6415         * test-skeleton.c (main): Request getopt to not reorder the
6416         command line.
6418         * elf/Makefile (CFLAGS-dl-runtime.c): Define.
6420         * wcsmbs/wcpncpy.c (__wcpncpy): Fix broken implementation to match
6421         stpncpy.
6423 2003-05-31  Ulrich Drepper  <drepper@redhat.com>
6425         * sysdeps/unix/sysv/linux/ia64/bits/sigaction.h (SA_NOCLDWAIT): Define.
6427 2003-05-31  Jakub Jelinek  <jakub@redhat.com>
6429         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_plt_conflict):
6430         New function.
6431         (elf_machine_rela) <case R_PPC64_JMP_SLOT>: Avoid
6432         RESOLVE_CONFLICT_FIND_MAP.  If RESOLVE_CONFLICT_FIND_MAP is defined,
6433         call elf_machine_plt_conflict instead of elf_machine_fixup_plt.
6435 2003-05-31  Ulrich Drepper  <drepper@redhat.com>
6437         * sysdeps/i386/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE): Add
6438         CFI directives.
6440         * csu/Makefile: Fix Makefile warnings regarding Scrt1.o.
6442         * libio/fileops.c (_IO_file_open): Don't mark as inline.
6444         * sysdeps/ia64/elf/initfini.c (gmon_initializer): Mark with
6445         attribute used.
6447 2003-05-30  Ulrich Drepper  <drepper@redhat.com>
6449         * scripts/config.guess: Update from master copy.
6450         * scripts/config.sub: Likewise.
6452 2003-05-30  Guido Guenther  <agx@sigxcpu.org>
6454         * sysdeps/mips/mips64/bsd-_setjmp.S: Include <sys/asm.h> for
6455         SETUP_GP64 and friends.
6456         * sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h: Fix register
6457         names in internal_syscall{6,7}.
6458         * sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h: Likewise.
6459         * sysdeps/unix/sysv/linux/mips/pread.c [_MIPS_SIM == _ABI64]: Fix
6460         number of syscall arguments.
6461         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
6462         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
6463         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
6465 2003-05-30  Andreas Jaeger  <aj@suse.de>
6467         * sysdeps/x86_64/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
6468         Add CFI directives.
6470         * sysdeps/unix/sysv/linux/x86_64/sigaction.c (RESTORE2): Add CFI
6471         directives.
6473         * sysdeps/generic/sysdep.h: Add CFI_* macros for C files.
6475         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
6476         Add CFI directives.
6478 2003-05-30  Jakub Jelinek  <jakub@redhat.com>
6480         * sysdeps/powerpc/powerpc32/elf/start.S: Make code compilable with
6481         SHARED.
6483 2003-05-11  Andreas Schwab  <schwab@suse.de>
6485         * Makerules: Always use -MP together with -MD.
6486         (sed-remove-dotot): Substitute $(..) also at start of line.
6487         ($(stdio_lim:h=st)): Use -MD instead of SUNPRO_DEPENDENCIES.
6488         Generated defines with a single compiler call.
6489         Use $(sed-remove-dotdot).
6490         * mach/Makefile ($(objpfx)mach-syscalls.mk): Use -MD instead
6491         of DEPENDENCIES_OUTPUT, and use $(sed-remove-objpfx).
6492         * sysdeps/unix/sysv/linux/Makefile ($(objpfx)syscall-%.h):
6493         Use -MD instead of SUNPRO_DEPENDENCIES, and use $(sed-remove-objpfx).
6494         * sysdeps/unix/sysv/linux/mips/Makefile
6495         ($(objpfx)syscall-%.h): Likewise.
6497 2003-05-28  Roland McGrath  <roland@redhat.com>
6499         * malloc/malloc.h [! __GNUC__] (__const): Define if undefined.
6501 2003-05-26  Aldy Hernandez  <aldyh@redhat.com>
6503         * soft-fp/soft-fp.h (FP_EX_UNDERFLOW): Define to 0.
6505 2003-05-28  Roland McGrath  <roland@redhat.com>
6507         * sysdeps/unix/sysv/linux/ia64/setcontext.S: Pass fourth argument to
6508         rt_sigprocmask system call.
6509         * sysdeps/unix/sysv/linux/ia64/ucontext_i.h (SC_MASK): Fix value.
6510         From Peter A. Buhr <pabuhr@plg2.math.uwaterloo.ca>.
6512 2003-05-28  Ulrich Drepper  <drepper@redhat.com>
6514         * include/libc-symbols.h: Define hidden attribute for real also if
6515         LIBC_NONSHARED is defined.  Patch by Jakub Jelinek.
6517         * csu/Makefile: Add rules to build Scrt1.o.
6518         * sysdeps/i386/elf/start.S: Make code compilable with SHARED.
6519         * sysdeps/x86_64/elf/start.S: Likewise.
6521 2003-05-27  Jakub Jelinek  <jakub@redhat.com>
6523         * stdio-common/vfprintf.c (process_arg, process_string_arg): Use
6524         pa_int/pa_u_int instead of pa_short_int, pa_u_short_int and pa_char.
6525         * stdio-common/printf-parse.h (union printf_arg): Remove pa_char,
6526         pa_short_int, pa_u_short_int and pa_float.
6528 2003-05-26  Jakub Jelinek  <jakub@redhat.com>
6530         * libio/strops.c (_IO_str_init_static): Change into a wrapper around
6531         _IO_str_init_static_internal.
6532         (_IO_str_init_static_internal): Moved from _IO_str_init_static,
6533         change size argument to _IO_size_t, don't limit sprintf to 64M.
6534         (_IO_str_init_readonly): Call _IO_str_init_static_internal.
6535         * libio/wstrops.c (_IO_wstr_init_static): Change size argument to
6536         _IO_size_t, don't limit swprintf to 256M.
6537         (_IO_wstr_init_readonly): Remove.
6538         * libio/libioP.h (_IO_str_init_static_internal, _IO_wstr_init_static):
6539         Adjust prototypes.
6540         (_IO_wstr_init_readonly): Remove prototype.
6541         * libio/iovsprintf.c (_IO_vsprintf): Use
6542         _IO_str_init_static_internal instead of INTUSE(_IO_str_init_static).
6543         * libio/iovsscanf.c (_IO_vsscanf): Likewise.
6544         * libio/memstream.c (open_memstream): Likewise.
6545         * libio/obprintf.c (_IO_obstack_vfprintf): Likewise.
6546         * libio/vasprintf.c (_IO_vasprintf): Likewise.
6547         * libio/vsnprintf.c (_IO_vsnprintf): Likewise.
6548         * stdio-common/tst-sprintf.c (main): Add new test.
6550 2003-05-26  Ulrich Drepper  <drepper@redhat.com>
6552         * stdio-common/vfprintf.c (vfprintf): Be bug-compatible with some
6553         other implementation in respect of multiple uses of parameter with
6554         different types.
6556 2003-05-25  Ulrich Drepper  <drepper@redhat.com>
6558         * sysdeps/unix/sysv/linux/kernel-features.h: Define
6559         __ASSUME_FUTEX_REQUEUE for >= 2.5.70.
6561 2003-05-22  Andreas Jaeger  <aj@suse.de>
6563         * sysdeps/unix/sysv/linux/x86_64/gettimeofday.S: Add CFI
6564         directives.
6565         * sysdeps/unix/sysv/linux/x86_64/time.S: Likewise.
6566         * sysdeps/x86_64/strtok.S: Likewise.
6568 2003-05-20  Guido Guenther  <agx@sigxcpu.org>
6570         * sysdeps/unix/sysv/linux/mips/bits/siginfo.h: Change SI_ASYNCNL
6571         to -60 and define SI_TKILL.
6573 2003-05-21  H.J. Lu  <hongjiu.lu@intel.com>
6575         * math/test-fenv.c (feexcp_nomask_test): Fix comment.
6576         (feexcp_mask_test): Likewise.
6578 2003-05-21  Ulrich Drepper  <drepper@redhat.com>
6580         * locale/programs/locale.c (main): Fix typo in last patch.
6582         * csu/elf-init.c: Mark __preinit_array_start, __preinit_array_end,
6583         __init_array_start, __init_array_end, __fini_array_start, and
6584         __fini_array_end as hidden.
6586 2003-05-21  Petter Reinholdtsen  <pere@hungry.com>
6588         * locale/programs/locale.c (main): Report an error if setlocale()
6589         fails [PR libc/2254].
6591 2003-05-21  Jakub Jelinek  <jakub@redhat.com>
6593         * sysdeps/unix/sysv/linux/s390/system.c: New file.
6595 2003-05-21  Jakub Jelinek  <jakub@redhat.com>
6597         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (LOADARGS_0,
6598         LOADARGS_1, LOADARGS_2, LOADARGS_3, LOADARGS_4, LOADARGS_5,
6599         LOADARGS_6): Don't error if syscall argument is a string literal.
6600         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h (LOADARGS_0,
6601         LOADARGS_1, LOADARGS_2, LOADARGS_3, LOADARGS_4, LOADARGS_5,
6602         LOADARGS_6): Likewise.
6604 2003-05-21  Andreas Jaeger  <aj@suse.de>
6606         * sysdeps/generic/sysdep.h (cfi_offset, cfi_startproc,
6607         cfi_endproc, cfi_def_cfa, cfi_def_ccfa_register,
6608         cfi_def_cfa_offset, cfi_adjust_cfa_offset, cfi_offset): Define.
6610         * sysdeps/x86_64/sysdep.h (CALL_MCOUNT): Add cfi directives.
6611         (ENTRY): Likewise.
6612         (END): Likewise.
6614         * configure.in: Test for asm cfi directives.
6616         * config.h.in: Add HAVE_ASM_CFI_DIRECTIVES.
6618 2003-05-17  Andreas Jaeger  <aj@suse.de>
6620         * sysdeps/unix/sysv/linux/x86_64/syscall.S: Revert last patch.
6622         * rt/tst-clock_nanosleep.c: Include <time.h> for clock_nanosleep.
6624 2003-05-16  Ulrich Drepper  <drepper@redhat.com>
6626         * rt/Makefile (tests): Add tst-clock_nanosleep.
6627         * rt/tst-clock_nanosleep.c: New file.
6628         * posix/Makefile (tests): Add tst-nanosleep.
6629         * posix/tst-nanosleep.c: New file.
6631         * sysdeps/unix/clock_nanosleep.c (CPUCLOCK_P): Fix definition.
6633         * include/features.h (__USE_XOPEN2K): Define also for
6634         _POSIX_C_SOURCE>=200112L.
6636         * sysdeps/unix/sysv/linux/sigwaitinfo.c (do_sigwaitinfo): Fold
6637         SI_TKILL code into SI_USER.
6638         * sysdeps/unix/sysv/linux/sigtimedwait.c (do_sigtimedwait): Likewise.
6640         * sysdeps/posix/sigpause.c (do_sigpause): Use sigdelset after all.
6642 2003-05-15  Jakub Jelinek  <jakub@redhat.com>
6644         * sysdeps/powerpc/powerpc32/dl-machine.c (_dl_reloc_overflow):
6645         Remove sym argument, always use refsym.
6646         (__process_machine_rela): Adjust callers.
6647         * sysdeps/powerpc/powerpc64/dl-machine.c (_dl_reloc_overflow):
6648         Likewise.
6649         * sysdeps/powerpc/powerpc32/dl-machine.h (_dl_reloc_overflow):
6650         Adjust prototype.
6651         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela): Likewise.
6653 2003-05-15  Ulrich Drepper  <drepper@redhat.com>
6655         * sysdeps/generic/dl-sysdep.c (_dl_show_auxv): Fix typo
6656         (DL_NEED_SYSINFO -> NEED_DL_SYSINFO).  If aux value is not known
6657         print numeric values.
6659 2003-05-12  Thorsten Kukuk  <kukuk@suse.de>
6661         * inet/netinet/igmp.h: Sync with Linux Kernel 2.5.69 and *BSD.
6663 2003-05-14  Andreas Schwab  <schwab@suse.de>
6665         * sysdeps/unix/sysv/linux/ia64/umount.c: New file.
6667 2003-05-14  Jakub Jelinek  <jakub@redhat.com>
6669         * elf/rtld.c (dl_main): For LD_TRACE_PRELINKING print search scope
6670         even if no DT_NEEDED is present.
6672 2003-05-13  David Mosberger  <davidm@hpl.hp.com>
6674         * sysdeps/unix/sysv/linux/ia64/setjmp.S: Fix the fix from
6675         2003-03-27: setjmp is NOT a leaf-routine (due to the call to
6676         __sigjmp_save) so we can't keep the saved unat value in a scratch
6677         register (r16).  Use loc2 instead.
6679 2003-05-13  Ulrich Drepper  <drepper@redhat.com>
6681         * csu/Makefile: Do compile elf-init with PIC flag since in dynamic
6682         binaries it has to be relocatable.
6684         * sysdeps/unix/sysv/linux/waitpid.c: Use waitpid syscall is available.
6686 2003-05-12  Steven Munroe  <sjmunroe@us.ibm.com>
6688         * sysdeps/powerpc/bits/atomic.h
6689         (__arch_compare_and_exchange_bool_8_rel): Define.
6690         (__arch_compare_and_exchange_bool_16_rel): Define.
6691         (__ARCH_REL_INSTR): Define if not already defined.
6692         (__arch_atomic_exchange_and_add_32): Add "memory" to clobber list.
6693         (__arch_atomic_decrement_if_positive_32):
6694         Add "memory" to clobber list.
6695         (__arch_compare_and_exchange_val_32_acq): Remove release sync.
6696         (__arch_compare_and_exchange_val_32_rel): Define.
6697         (__arch_atomic_exchange_32): Remove.
6698         (__arch_atomic_exchange_32_acq): Define.
6699         (__arch_atomic_exchange_32_rel): Define.
6700         (atomic_compare_and_exchange_val_rel): Define.
6701         (atomic_exchange_acq): Use __arch_atomic_exchange_*_acq forms.
6702         (atomic_exchange_rel): Define.
6703         * sysdeps/powerpc/powerpc32/bits/atomic.h
6704         (__arch_compare_and_exchange_bool_32_acq): Remove release sync.
6705         (__arch_compare_and_exchange_bool_32_rel): Define.
6706         (__arch_compare_and_exchange_bool_64_rel): Define.
6707         (__arch_compare_and_exchange_val_64_rel): Define.
6708         (__arch_atomic_exchange_64): Remove.
6709         (__arch_atomic_exchange_64_acq): Define.
6710         (__arch_atomic_exchange_64_rel): Define.
6711         * sysdeps/powerpc/powerpc64/bits/atomic.h
6712         (__arch_compare_and_exchange_bool_32_rel): Define.
6713         (__arch_compare_and_exchange_bool_64_acq): Remove release sync.
6714         (__arch_compare_and_exchange_bool_64_rel): Define.
6715         (__arch_compare_and_exchange_val_64_acq): Remove release sync.
6716         (__arch_compare_and_exchange_val_64_rel): Define.
6717         (__arch_atomic_exchange_64): Remove.
6718         (__arch_atomic_exchange_64_acq): Define.
6719         (__arch_atomic_exchange_64_rel): Define.
6720         (__arch_atomic_exchange_and_add_64): Add "memory" to clobber list.
6721         (__arch_atomic_decrement_if_positive_64):
6722         Add "memory" to clobber list.
6723         [!UP](__ARCH_REL_INSTR): Define as lwsync.
6725 2003-05-11  Andreas Schwab  <schwab@suse.de>
6727         * io/Makefile ($(objpfx)ftwtest.out): Use absolute file names.
6729 2003-05-11  Ulrich Drepper  <drepper@redhat.com>
6731         * time/tst-strftime.c (do_test): Add tests for - flag.
6733 2003-05-11  Jim Meyering  <jim@meyering.net>
6735         * time/strftime.c (my_strftime): Let the `-' (no-pad) flag affect
6736         the space-padded-by-default conversion specifiers, %e, %k, %l.
6738 2003-05-11  Andreas Schwab  <schwab@suse.de>
6740         * sysdeps/generic/sched_setaffinity.c: Fix parameter name.
6742 2003-05-10  Ulrich Drepper  <drepper@redhat.com>
6744         * sysdeps/generic/bits/sched.h: Define cpu_set_t only if not
6745         already defined and when really needed.
6746         * sysdeps/unix/sysv/linux/bits/sched.h: Likewise.
6748 2003-05-09  Thorsten Kukuk  <kukuk@suse.de>
6750         * sysdeps/unix/sysv/linux/netinet/igmp.h: Don't include kernel
6751         headers, add defines from kernel header, move it from here...
6752         * inet/netinet/igmp.h: ... to here.
6753         * inet/Makefile (headers): Add netinet/igmp.h.
6754         * sysdeps/unix/sysv/linux/Makefile: Remove netinet/igmp.h.
6755         * sysdeps/unix/sysv/linux/Dist: Remove netinet/igmp.h.
6757 2003-05-10  Ulrich Drepper  <drepper@redhat.com>
6759         * sysdeps/pthread/lio_listio64.c (lio_listio64): If SIG == NULL,
6760         use dummy sigevent structure with SIGEV_NONE [PR libc/5015].
6762 2003-05-09  Thorsten Kukuk <kukuk@suse.de>
6764         * libio/bits/stdio.h: Sync prototypes with libio/stdio.h
6765         (remove __THROW from possible cancellation points).
6767 2003-05-10  Ulrich Drepper  <drepper@redhat.com>
6769         * posix/sched.h (CPU_SETSIZE): Define.
6771 2003-05-09  Ulrich Drepper  <drepper@redhat.com>
6773         * Makeconfig (gnulib): Remove -lgcc_eh again.
6775         * posix/sched.h: Change prototypes of sched_getaffinity and
6776         sched_setaffinity.  Define CPU_SET, CPU_CLR, CPU_ISSET, and CPU_ZERO.
6777         * sysdeps/generic/sched_getaffinity.c: Adjust definition.
6778         * sysdeps/generic/sched_setaffinity.c: Likewise.
6779         * sysdeps/generic/bits/sched.h: Define __CPU_SETSIZE, __NCPUBITS,
6780         __CPUELT, __CPUMASK, cpu_set_t, __cpu_mask, __CPU_ZERO, __CPU_SET,
6781         __CPU_CLR, and __CPU_ISSET.
6782         * sysdeps/unix/sysv/linux/bits/sched.h: Likewise.
6783         * sysdeps/unix/sysv/linux/sched_getaffinity.c: New file.
6784         * sysdeps/unix/sysv/linux/sched_setaffinity.c: New file.
6786         * include/atomic.h (atomic_exchange_acq): Renamed from atomic_exchange.
6787         (atomic_exchange_rel): New #define.
6788         * sysdeps/ia64/bits/atomic.h: Likewise.
6789         * sysdeps/i386/i486/bits/atomic.h (atomic_exchange_acq): Renamed from
6790         atomic_exchange.
6791         * sysdeps/m68k/m68020/bits/atomic.h: Likewise.
6792         * sysdeps/powerpc/bits/atomic.h: Likewise.
6793         * sysdeps/sparc/sparc32/sparcv9/bits/atomic.h: Likewise.
6794         * sysdeps/sparc/sparc64/bits/atomic.h: Likewise.
6795         * sysdeps/x86_64/bits/atomic.h: Likewise.
6796         * csu/tst-atomic.c: Use atomic_exchange_acq instead of atomic_exchange.
6798         * sysdeps/unix/sysv/linux/x86_64/get_clockfreq.c: New file.
6800 2003-05-08  Ulrich Drepper  <drepper@redhat.com>
6802         * malloc/thread-m.h: Remove special handling of thread_atfork if
6803         HAVE_register_atfork_malloc is defined.
6805 2003-05-07  Andreas Jaeger  <aj@suse.de>
6807         * sysdeps/unix/sysv/linux/x86_64/syscall.S: Add DWARF2 unwind
6808         information.
6810 2003-05-06  Ulrich Drepper  <drepper@redhat.com>
6812         * libio/oldiofdopen.c (_IO_old_fdopen): Use _IO_old_init not _IO_init.
6813         * libio/oldiofopen.c (_IO_old_fopen): Likewise.
6814         * libio/libioP.h: Declare _IO_old_init.
6815         * libio/genops.c (_IO_no_init): Split in two.  New function
6816         _IO_old_init.
6818 2003-05-05  Ulrich Drepper  <drepper@redhat.com>
6820         * sysdeps/generic/enbl-secure.c (__libc_enable_secure_decided): New
6821         variable.
6822         (__libc_init_secure): Don't do anything if __libc_enable_secure_decided
6823         is nonzero.
6824         * include/unistd.h: Declare __libc_enable_secure_decided.
6825         * elf/dl-support.c (_dl_aux_init): Recognize AT_UID, AT_EUID, AT_GID,
6826         and AT_EGID.  If all found, set __libc_enable_secure and
6827         __libc_enable_secure_decided.
6829         * sysdeps/generic/libc-start.c [!SHARED]: Call
6830         __libc_check_standard_fds after __libc_init_first.
6832 2003-05-05  Roland McGrath  <roland@redhat.com>
6834         * Makerules (common-before-compile): New variable.
6835         ($(common-objpfx)%.make): Depend on that instead of $(before-compile).
6836         ($(common-objpfx)%.h $(common-objpfx)%.h.d): Likewise.  Move this rule
6837         to after all setting of before-compile.
6839 2003-05-05  Jakub Jelinek  <jakub@redhat.com>
6841         * sysdeps/ia64/bits/atomic.h (__arch_compare_and_exchange_val_8_acq,
6842         __arch_compare_and_exchange_val_16_acq): Cast 0 to mem's type.
6843         * sysdeps/powerpc/powerpc32/bits/atomic.h
6844         (__arch_compare_and_exchange_val_64_acq): Likewise.
6845         * sysdeps/sparc/sparc32/sparcv9/bits/atomic.h
6846         (__arch_compare_and_exchange_val_8_acq,
6847         __arch_compare_and_exchange_val_16_acq,
6848         __arch_compare_and_exchange_val_64_acq): Likewise.
6849         * sysdeps/sparc/sparc64/bits/atomic.h
6850         (__arch_compare_and_exchange_val_8_acq,
6851         __arch_compare_and_exchange_val_16_acq): Likewise.
6852         * sysdeps/s390/bits/atomic.h (__arch_compare_and_exchange_val_8_acq,
6853         __arch_compare_and_exchange_val_16_acq,
6854         __arch_compare_and_exchange_val_64_acq): Likewise.
6855         * sysdeps/unix/sysv/linux/sh/bits/atomic.h
6856         (__arch_compare_and_exchange_val_64_acq): Likewise.
6857         * sysdeps/s390/s390-64/backtrace.c (__backtrace): Add cast to shut
6858         up warning.
6859         * sysdeps/s390/fpu/fegetenv.c (fegetenv): Likewise.
6861         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h
6862         (INLINE_SYSCALL, INTERNAL_SYSCALL_DIRECT, INTERNAL_SYSCALL_SVC0):
6863         Return long instead of int.
6864         (INTERNAL_SYSCALL_ERROR_P): Cast val to unsigned long, replace
6865         0xfffff001u with -4095UL.
6867 2003-05-05  Andreas Jaeger  <aj@suse.de>
6869         * sysdeps/x86_64/fpu_control.h: New from i386.
6871         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (__NR_semtimedop):
6872         Define if not defined.
6874         * sunrpc/Makefile (generated-dirs): New variable.
6875         * resolv/Makefile (generated): New variable.
6877 2003-05-04  Roland McGrath  <roland@redhat.com>
6879         * csu/Makefile ($(csu-dummies) target rule): Don't use a temp C file.
6880         Depend on $(before-compile).
6882         * csu/Makefile ($(objpfx)crt%.o): Replace implicit rule with a static
6883         pattern rule.  The implicit rule could be ruled out when $(objpfx)
6884         didn't exist at the time of its consideration (ugh!).
6886         * Makerules (+make-deps): Fix target matching.
6887         Use $(sed-remove-dotdot).
6889 2003-05-03  Ulrich Drepper  <drepper@redhat.com>
6891         * nscd/nscd.c (main): Parse config file right after parsing
6892         parameters.  Then, if get_stats is true, call receive_print_stats.
6893         Drop parameter from nscd_init call.
6894         (get_stats): New variable.
6895         (parse_opt): Set get_stats, don't call receive_print_stats here.
6896         * nscd/nscd.h: Declare dbs, stat_user, and stat_uid.  Adjust nscd_init
6897         prototype.
6898         * nscd/connections.c (stat_user, stat_uid): New variables.
6899         (dbs): Make global.
6900         (nscd_init): Don't read configuration file here.  Drop parameter.
6901         (handle_request): Cleanup handling of non-database lookup requests.
6902         * nscd/nscd_conf.c (nscd_parse_file): Recognize stat-user entry.
6903         Get UID of the specified user.  Use xstrdup instead of strdup.
6904         * nscd/nscd_stat.c (receive_print_stats): Check UID.  If not zero,
6905         check stat_user.
6906         * nscd/Makefile (nscd-modules): Add xstrdup.
6907         * nscd/nscd.conf: Document stat-user entry.
6909 2003-05-03  H.J. Lu  <hongjiu.lu@intel.com>
6911         * sysdeps/unix/sysv/linux/ia64/sysdep.h (__NR_semtimedop): Define
6912         if not defined.
6914 2003-04-22  Roland McGrath  <roland@redhat.com>
6916         * elf/elf.h (AT_SYSINFO_EHDR): New macro, replaces AT_SYSINFO_EH_FRAME.
6917         * sysdeps/generic/ldsodefs.h (struct rtld_global): Remove
6918         dl_sysinfo_eh_frame member, add dl_sysinfo_dso member instead.
6919         * elf/dl-support.c: Update defn.
6920         * sysdeps/generic/libc-start.c: Don't call __register_frame_info_bases.
6921         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start) [NEED_DL_SYSINFO]:
6922         Set GL(dl_sysinfo_dso) from AT_SYSINFO_EHDR.
6923         (_dl_show_auxv): Grok AT_SYSINFO_EHDR, not AT_SYSINFO_EH_FRAME.
6924         * elf/rtld.c (dl_main) [NEED_DL_SYSINFO]: If GL(dl_sysinfo_dso) is
6925         set, set up a link_map for the preloaded, prelinked object.
6927 2003-05-03  Roland McGrath  <roland@redhat.com>
6929         * sysdeps/gnu/Makefile (generated): Append errlist-compat.c here, ...
6930         * stdio-common/Makefile: ... not here.
6932         * csu/Makefile ($(objpfx)initfini.s): Depend on $(before-compile).
6933         * sysdeps/gnu/Makefile ($(objpfx)errlist-compat.c): Likewise.
6935 2003-05-02  Ulrich Drepper  <drepper@redhat.com>
6937         * sysdeps/unix/sysv/linux/s390/semtimedop.c: New file.
6939         * sysdeps/unix/sysv/linux/alpha/ipc_priv.h (IPCOP_semtimedop): Define.
6941         * sysdeps/generic/dl-fptr.c (_dl_make_fptr): Use 0 not NULL for
6942         comparing ftab elements.
6943         (_dl_unmap): Fix typo in test.
6944         (_dl_make_fptr): Fix typos introduced in last change.
6946         * sysdeps/generic/dl-fptr.c: Put back one optimization from the
6947         original patch.  Use non-exported symbols.  Mark translatable
6948         strings.  Pretty printing.
6950 2003-05-02  Roland McGrath  <roland@redhat.com>
6952         * Makerules (do-stamp): Do $(make-target-directory).
6954 2003-04-07  H.J. Lu  <hjl@gnu.org>
6956         * sysdeps/generic/dl-fptr.c: Modify to remove the lock.
6958 2003-04-03  H.J. Lu  <hjl@gnu.org>
6960         * sysdeps/ia64/dl-fptr.c: Moved to ...
6961         * sysdeps/generic/dl-fptr.c: Here.
6963         * sysdeps/generic/dl-fptr.h: New.
6964         * sysdeps/ia64/dl-fptr.h: New.
6966         * sysdeps/ia64/dl-symaddr.c: Moved to ...
6967         * sysdeps/generic/dl-symaddr.c: here.
6969         * sysdeps/ia64/dl-machine.h: Include <dl-fptr.h>.
6970         (IA64_BOOT_FPTR_TABLE_LEN): Removed.
6971         (ia64_fdesc): Likewise.
6972         (ia64_fdesc_table): Likewise.
6973         (__ia64_make_fptr): Likewise.
6974         (__ia64_init_bootstrap_fdesc_table): Replace __ia64_boot_fptr_table
6975         with _dl_boot_fptr_table.
6976         (elf_machine_runtime_setup): Replace `struct ia64_fdesc' with
6977         `struct fdesc'.
6978         (elf_machine_rela): Replace __ia64_make_fptr with _dl_make_fptr.
6980 2003-05-01  Roland McGrath  <roland@redhat.com>
6982         * sysdeps/generic/bp-thunks.h: Protect includes with [!__ASSEMBLER__].
6983         * sysdeps/unix/sysv/linux/i386/bp-thunks.h: Likewise.
6985         * sysdeps/unix/sysv/linux/Makefile ($(objpfx)syscall-%.h):
6986         Use $(make-target-directory).
6987         * sysdeps/unix/Makefile ($(objpfx)stub-syscalls.c): Likewise.
6989         * Makerules (compile-mkdep-flags): New variable, pass -MD -MF $@.d.
6990         (compile-command.S): Don't use ifndef.  Append $(compile-mkdep-flags).
6991         (compile-command.s, compile-command.c): Likewise.
6992         ($(objpfx)%.d): All such pattern rules removed.
6993         ($(+sysdir_pfx)sysd-rules): Don't generate them.
6994         ($(common-objpfx)dummy.d): Target removed.
6995         (make-dummy-dep): Variable removed.
6996         (generate-md5): Likewise.
6997         (%.d: %.dt): New pattern rule.
6998         (+depfiles): Use $(wildcard) function to get just existing *.d files
6999         and .d files for existing *.dt files.
7000         (common-clean): Remove all *.d and *.dt files.
7001         (before-compile): Add $(objpfx). when it doesn't exist,
7002         regardless of $(no_deps).
7003         * elf/rtld-Rules ($(objpfx)rtld-%.d): All such pattern rules removed.
7004         (rtld-depfiles): Use .os.d instead of .d names.
7005         Include existing *.d files and .d files for existing *.dt files.
7007         * Makerules ($(common-objpfx)%.make): Protect with [! subdir].
7008         Use -MD, -MT and -MF flags instead of SUNPRO_DEPENDENCIES variable.
7010         * sysdeps/unix/Makefile ($(common-objpfx)s-%.d): Remove compat.h hack.
7011         Do s-*.d includes only if we have some syscall routines in this subdir.
7013         * include/libc-symbols.h (libc_freeres_ptr): Use %nobits instead of
7014         @nobits.  The former is accepted by gas on any ELF platform.
7016 2003-05-01  Ulrich Drepper  <drepper@redhat.com>
7018         * sysdeps/unix/sysv/linux/semtimedop.c: New file.
7020         * malloc/malloc.c (mSTATs): Call ptmalloc_init if necessary.
7022 2003-04-29  Andreas Schwab  <schwab@suse.de>
7024         * string/test-strcat.c (do_one_test): Fix attribute name.
7026 2003-04-30  Alexandre Oliva  <aoliva@redhat.com>
7028         * sysdeps/unix/sysv/linux/mips/sys/ucontext.h (ucontext): Make
7029         uc_flags long for all ABIs.
7031 2003-04-30  Andreas Jaeger  <aj@suse.de>
7033         * sysdeps/unix/sysv/linux/x86_64/sys/debugreg.h
7034         (DR_CONTROL_RESERVED): Use correct value for 64-bit.
7035         Reported by Andrew Derrick Balsa <andrebalsa@mailingaddress.org>.
7036         Add bi-arch support.
7038 2003-04-30  Ulrich Drepper  <drepper@redhat.com>
7040         * malloc/malloc.c (mEMALIGn): Define alias __memalign_internal.
7041         (__posix_memalign): Use __memalign_internal instead of memalign.
7043 2003-04-29  Roland McGrath  <roland@redhat.com>
7045         * configure.in: Search for AUTOCONF unconditionally.
7046         Just don't complain about missing it under --without-cvs.
7048         * include/libc-symbols.h (__symbol_set_attribute): New macro,
7049         give hidden for [SHARED] and weak for [! SHARED].
7050         (symbol_set_declare): Use that.  Never need weak_extern these days.
7051         * Makerules ($(common-objpfx)shlib.lds): Go back to using PROVIDE.
7052         Depend on $(..)Makerules.
7054 2003-04-29  Ulrich Drepper  <drepper@redhat.com>
7056         * sysdeps/unix/sysv/linux/ifaddrs.c (getifaddrs): Use __ protected
7057         variants of socket, bind, recvmsg, and sendto.
7059         * sysdeps/i386/fpu/ftestexcept.c: Also check SSE status word.
7061         * include/signal.h: Use libc_hidden_proto for sigaddset and sigdelset.
7062         * signal/sigaddset.c: Add libc_hidden_def.
7063         * signal/sigdelset.c: Likewise.
7065 2003-04-29  Jakub Jelinek  <jakub@redhat.com>
7067         * sysdeps/i386/i486/string-inlines.c (__memcpy_g, __strchr_g): Move
7068         to the end of the file.
7070         * configure.in: Change __oline__ to $LINENO.
7071         (HAVE_BUILTIN_REDIRECTION): New check.
7072         * config.h.in (HAVE_BUILTIN_REDIRECTION): Add.
7073         * include/libc-symbols.h (libc_hidden_builtin_proto,
7074         libc_hidden_builtin_def, libc_hidden_builtin_weak,
7075         libc_hidden_builtin_ver): Define.
7076         * include/string.h (memchr, memcpy, memmove, memset, strcat, strchr,
7077         strcmp, strcpy, strcspn, strlen, strncmp, strncpy, strpbrk, strrchr,
7078         strspn, strstr): Add libc_hidden_builtin_proto.
7079         * intl/plural.y: Include string.h.
7080         * sysdeps/alpha/alphaev6/memchr.S (memchr): Add
7081         libc_hidden_builtin_def.
7082         * sysdeps/alpha/alphaev6/memcpy.S (memcpy): Likewise.
7083         * sysdeps/alpha/alphaev6/memset.S (memset): Likewise.
7084         * sysdeps/alpha/alphaev67/strcat.S (strcat): Likewise.
7085         * sysdeps/alpha/alphaev67/strchr.S (strchr): Likewise.
7086         * sysdeps/alpha/alphaev67/strlen.S (strlen): Likewise.
7087         * sysdeps/alpha/alphaev67/strrchr.S (strrchr): Likewise.
7088         * sysdeps/alpha/memchr.S (memchr): Likewise.
7089         * sysdeps/alpha/memset.S (memset): Likewise.
7090         * sysdeps/alpha/strcat.S (strcat): Likewise.
7091         * sysdeps/alpha/strchr.S (strchr): Likewise.
7092         * sysdeps/alpha/strcmp.S (strcmp): Likewise.
7093         * sysdeps/alpha/strcpy.S (strcpy): Likewise.
7094         * sysdeps/alpha/strlen.S (strlen): Likewise.
7095         * sysdeps/alpha/strncmp.S (strncmp): Likewise.
7096         * sysdeps/alpha/strncpy.S (strncpy): Likewise.
7097         * sysdeps/alpha/strrchr.S (strrchr): Likewise.
7098         * sysdeps/arm/memset.S (memset): Likewise.
7099         * sysdeps/arm/strlen.S (strlen): Likewise.
7100         * sysdeps/generic/memchr.c (memchr): Likewise.
7101         * sysdeps/generic/memcpy.c (memcpy): Likewise.
7102         * sysdeps/generic/memmove.c (memmove): Likewise.
7103         * sysdeps/generic/memset.c (memset): Likewise.
7104         * sysdeps/generic/strcat.c (strcat): Likewise.
7105         * sysdeps/generic/strchr.c (strchr): Likewise.
7106         * sysdeps/generic/strcmp.c (strcmp): Likewise.
7107         * sysdeps/generic/strcpy.c (strcpy): Likewise.
7108         * sysdeps/generic/strcspn.c (strcspn): Likewise.
7109         * sysdeps/generic/strlen.c (strlen): Likewise.
7110         * sysdeps/generic/strncmp.c (strncmp): Likewise.
7111         * sysdeps/generic/strncpy.c (strncpy): Likewise.
7112         * sysdeps/generic/strpbrk.c (strpbrk): Likewise.
7113         * sysdeps/generic/strrchr.c (strrchr): Likewise.
7114         * sysdeps/generic/strspn.c (strspn): Likewise.
7115         * sysdeps/generic/strstr.c (strstr): Likewise.
7116         * sysdeps/i386/i486/strcat.S (strcat): Likewise.
7117         * sysdeps/i386/i486/strlen.S (strlen): Likewise.
7118         * sysdeps/i386/i586/memcpy.S (memcpy): Likewise.
7119         * sysdeps/i386/i586/memset.S (memset): Likewise.
7120         * sysdeps/i386/i586/strchr.S (strchr): Likewise.
7121         * sysdeps/i386/i586/strcpy.S (strcpy): Likewise.
7122         * sysdeps/i386/i586/strlen.S (strlen): Likewise.
7123         * sysdeps/i386/i686/memcpy.S (memcpy): Likewise.
7124         * sysdeps/i386/i686/memmove.S (memmove): Likewise.
7125         * sysdeps/i386/i686/memset.S (memset): Likewise.
7126         * sysdeps/i386/i686/strcmp.S (strcmp): Likewise.
7127         * sysdeps/i386/memchr.S (memchr): Likewise.
7128         * sysdeps/i386/memset.c (memset): Likewise.
7129         * sysdeps/i386/strchr.S (strchr): Likewise.
7130         * sysdeps/i386/strcspn.S (strcspn): Likewise.
7131         * sysdeps/i386/strlen.c (strlen): Likewise.
7132         * sysdeps/i386/strpbrk.S (strpbrk): Likewise.
7133         * sysdeps/i386/strrchr.S (strrchr): Likewise.
7134         * sysdeps/i386/strspn.S (strspn): Likewise.
7135         * sysdeps/ia64/memchr.S (memchr): Likewise.
7136         * sysdeps/ia64/memcpy.S (memcpy): Likewise.
7137         * sysdeps/ia64/memmove.S (memmove): Likewise.
7138         * sysdeps/ia64/memset.S (memset): Likewise.
7139         * sysdeps/ia64/strcat.S (strcat): Likewise.
7140         * sysdeps/ia64/strchr.S (strchr): Likewise.
7141         * sysdeps/ia64/strcmp.S (strcmp): Likewise.
7142         * sysdeps/ia64/strcpy.S (strcpy): Likewise.
7143         * sysdeps/ia64/strlen.S (strlen): Likewise.
7144         * sysdeps/ia64/strncmp.S (strncmp): Likewise.
7145         * sysdeps/ia64/strncpy.S (strncpy): Likewise.
7146         * sysdeps/m68k/memchr.S (memchr): Likewise.
7147         * sysdeps/m68k/strchr.S (strchr): Likewise.
7148         * sysdeps/mips/mips64/memcpy.S (memcpy): Likewise.
7149         * sysdeps/mips/mips64/memset.S (memset): Likewise.
7150         * sysdeps/mips/memcpy.S (memcpy): Likewise.
7151         * sysdeps/mips/memset.S (memset): Likewise.
7152         * sysdeps/powerpc/powerpc32/memset.S (memset): Likewise.
7153         * sysdeps/powerpc/powerpc32/strchr.S (strchr): Likewise.
7154         * sysdeps/powerpc/powerpc32/strcmp.S (strcmp): Likewise.
7155         * sysdeps/powerpc/powerpc32/strcpy.S (strcpy): Likewise.
7156         * sysdeps/powerpc/powerpc32/strlen.S (strlen): Likewise.
7157         * sysdeps/powerpc/powerpc64/memcpy.S (memcpy): Likewise.
7158         * sysdeps/powerpc/powerpc64/memset.S (memset): Likewise.
7159         * sysdeps/powerpc/powerpc64/strchr.S (strchr): Likewise.
7160         * sysdeps/powerpc/powerpc64/strcmp.S (strcmp): Likewise.
7161         * sysdeps/powerpc/powerpc64/strcpy.S (strcpy): Likewise.
7162         * sysdeps/powerpc/powerpc64/strlen.S (strlen): Likewise.
7163         * sysdeps/powerpc/strcat.c (strcat): Likewise.
7164         * sysdeps/sparc/sparc32/memchr.S (memchr): Likewise.
7165         * sysdeps/sparc/sparc32/memcpy.S (memcpy): Likewise.
7166         * sysdeps/sparc/sparc32/memset.S (memset): Likewise.
7167         * sysdeps/sparc/sparc32/strcat.S (strcat): Likewise.
7168         * sysdeps/sparc/sparc32/strchr.S (strchr, strrchr): Likewise.
7169         * sysdeps/sparc/sparc32/strcmp.S (strcmp): Likewise.
7170         * sysdeps/sparc/sparc32/strcpy.S (strcpy): Likewise.
7171         * sysdeps/sparc/sparc32/strlen.S (strlen): Likewise.
7172         * sysdeps/sparc/sparc64/sparcv9b/memcpy.S (memcpy, memmove): Likewise.
7173         * sysdeps/sparc/sparc64/memchr.S (memchr): Likewise.
7174         * sysdeps/sparc/sparc64/memcpy.S (memcpy, memmove): Likewise.
7175         * sysdeps/sparc/sparc64/memset.S (memset): Likewise.
7176         * sysdeps/sparc/sparc64/strcat.S (strcat): Likewise.
7177         * sysdeps/sparc/sparc64/strchr.S (strchr, strrchr): Likewise.
7178         * sysdeps/sparc/sparc64/strcmp.S (strcmp): Likewise.
7179         * sysdeps/sparc/sparc64/strcpy.S (strcpy): Likewise.
7180         * sysdeps/sparc/sparc64/strcspn.S (strcspn): Likewise.
7181         * sysdeps/sparc/sparc64/strlen.S (strlen): Likewise.
7182         * sysdeps/sparc/sparc64/strncmp.S (strncmp): Likewise.
7183         * sysdeps/sparc/sparc64/strncpy.S (strncpy): Likewise.
7184         * sysdeps/sparc/sparc64/strpbrk.S (strpbrk): Likewise.
7185         * sysdeps/sparc/sparc64/strspn.S (strspn): Likewise.
7186         * sysdeps/sh/memcpy.S (memcpy): Likewise.
7187         * sysdeps/sh/memset.S (memset): Likewise.
7188         * sysdeps/sh/strlen.S (strlen): Likewise.
7189         * sysdeps/s390/s390-32/memchr.S (memchr): Likewise.
7190         * sysdeps/s390/s390-32/memcpy.S (memcpy): Likewise.
7191         * sysdeps/s390/s390-32/memset.S (memset): Likewise.
7192         * sysdeps/s390/s390-32/strcmp.S (strcmp): Likewise.
7193         * sysdeps/s390/s390-32/strcpy.S (strcpy): Likewise.
7194         * sysdeps/s390/s390-32/strncpy.S (strncpy): Likewise.
7195         * sysdeps/s390/s390-64/memchr.S (memchr): Likewise.
7196         * sysdeps/s390/s390-64/memcpy.S (memcpy): Likewise.
7197         * sysdeps/s390/s390-64/memset.S (memset): Likewise.
7198         * sysdeps/s390/s390-64/strcmp.S (strcmp): Likewise.
7199         * sysdeps/s390/s390-64/strcpy.S (strcpy): Likewise.
7200         * sysdeps/s390/s390-64/strncpy.S (strncpy): Likewise.
7201         * sysdeps/x86_64/memcpy.S (memcpy): Likewise.
7202         * sysdeps/x86_64/memset.S (memset): Likewise.
7203         * sysdeps/x86_64/strcat.S (strcat): Likewise.
7204         * sysdeps/x86_64/strchr.S (strchr): Likewise.
7205         * sysdeps/x86_64/strcmp.S (strcmp): Likewise.
7206         * sysdeps/x86_64/strcpy.S (strcpy): Likewise.
7207         * sysdeps/x86_64/strcspn.S (strcspn): Likewise.
7208         * sysdeps/x86_64/strlen.S (strlen): Likewise.
7209         * sysdeps/x86_64/strspn.S (strspn): Likewise.
7210         * string/string-inlines.c: Move...
7211         * sysdeps/generic/string-inlines.c: ...here.
7212         (__memcpy_g, __strchr_g): Remove.
7213         (__NO_INLINE__): Define before including <string.h>,
7214         undefine after.  Include bits/string.h and bits/string2.h.
7215         * sysdeps/i386/i486/string-inlines.c: New file.
7216         * sysdeps/i386/string-inlines.c: New file.
7217         * sysdeps/i386/i486/Versions: Remove.
7218         All GLIBC_2.1.1 symbols moved...
7219         * sysdeps/i386/Versions (libc): ...here.
7221 2003-04-29  Ulrich Drepper  <drepper@redhat.com>
7223         * sysdeps/i386/fpu/Makefile: New file.
7224         * sysdeps/i386/fpu/fedisblxcpt.c: Also set SSE control word.
7225         * sysdeps/i386/fpu/feenablxcpt.c: Likewise.
7226         * sysdeps/i386/fpu/feholdexcpt.c: Likewise.
7227         * sysdeps/i386/fpu/fesetround.c: Also set SSE rounding mode
7228         [PR libc/4987].
7230 2003-04-28  Ulrich Drepper  <drepper@redhat.com>
7232         * nscd/nscd_getgr_r.c: Compact code a bit.  Add some __builtin_expect.
7233         * nscd/nscd_getpw_r.c: Likewise.
7234         * nscd/nscd_gethst_r.c: Likewise.
7236 2003-04-27  Ulrich Drepper  <drepper@redhat.com>
7238         * nscd/pwdcache.c: Initialize .version element in result.
7239         * nscd/grpcache.c: Likewise.
7240         * nscd/pwdcache.c: Likewise.
7242 2003-04-27  Andreas Schwab  <schwab@suse.de>
7244         * Makeconfig ($(common-objpfx)sysd-sorted): Fix for running in
7245         subdirectory.
7247 2003-04-27  Andreas Schwab  <schwab@suse.de>
7249         * sysdeps/unix/sysv/linux/m68k/semtimedop.S: New file.
7251 2003-04-27  Ulrich Drepper  <drepper@redhat.com>
7253         * nscd/connections.c (client_queued): New variable.
7254         (nscd_run): Revamp the loop.  Don't call poll except for cleanup
7255         threads.  Keep track of the number of delays caused because of busy
7256         worker threads.
7257         * nscd/nscd.h: Declare client_queued.
7258         * nscd/nscd_stat.c: Transmit and print client_queued information.
7260         * locale/programs/locale.c (show_info): Use '\177' instead of CHAR_MAX.
7262         * Makerules ($(common-objpfx)shlib.lds): Don't use PROVIDE to
7263         define __start_libc_freeres_ptrs and __stop___libc_freeres_ptrs.
7265 2003-04-26  Ulrich Drepper  <drepper@redhat.com>
7267         * elf/dl-close.c [USE_TLS && TLS_TCB_AT_TP] (_dl_close): Reimplement
7268         tracking of freed memory in static TLS block.
7269         * elf/Makefile: Add rules to build and run tst-tls13.
7270         * elf/tst-tls13.c: New file.
7271         * elf/tst-tlsmod13.c: New file.
7272         * elf/tst-tlsmod13a.c: New file.
7274         * elf/tst-tls8.c: Adjust types of variables to avoid warnings.
7276         * elf/dl-reloc.c: Pretty printing.
7278 2003-04-26  Roland McGrath  <roland@redhat.com>
7280         * Makerules ($(common-objpfx)shlib.lds): New target.
7281         (common-generated): Add it.
7282         (build-shlib, build-module): Use that instead of generating every time.
7283         ($(common-objpfx)libc.so): Depend on it.
7284         (lib%.so rule): Likewise.
7285         (build-module-helper-objlist): Remove %.lds.
7286         (LDSEDCMD-c.so): Variable removed.
7287         * iconvdata/extra-module.mk ($(objpfx)$(mod).so):
7288         Depend on $(common-objpfx)shlib.lds.
7289         * dlfcn/Makefile ($(test-modules)): Likewise.
7291 2003-04-26  Roland McGrath  <roland@frob.com>
7293         * sysdeps/mach/hurd/tmpfile.c: Remove USE_IN_LIBIO conditionals.
7295 2003-04-26  Andreas Schwab  <schwab@suse.de>
7297         * elf/dl-close.c (remove_slotinfo): Fix missing parens.
7299 2003-04-25  Ulrich Drepper  <drepper@redhat.com>
7301         * nscd/cache.c (cache_search): Keep track of how many chain links
7302         we searched and update table statistics.
7303         (cache_add): Keep track of how many values are in the table.
7304         (prune_cache): Likewise.  Keep track of locking success.
7305         Print messages about removed entries in separate pass.
7306         * nscd/connections.c (handle_request): Don't print debug message here.
7307         The caller will do it.  Keep track of locking success.
7308         (nscd_run): Print debug message.  Also print PID of the client process.
7309         * nscd/nscd.c (start_time): New variable.
7310         (main): Remember start time.
7311         * nscd/nscd.h: Declare start_time.
7312         (struct database): Add more members for new statistics.
7313         * nscd/nscd_stat.c: Add support for sending, receiving, and printing
7314         of new statistics.
7316         * sysdeps/posix/getaddrinfo.c: Include <stdbool.h>.
7318 2003-04-22  Jakub Jelinek  <jakub@redhat.com>
7320         * include/link.h (NO_TLS_OFFSET): Define to 0 if not defined.
7321         * elf/dl-close.c (_dl_close): Use NO_TLS_OFFSET.
7322         * elf/dl-object.c (_dl_new_object): Initialize l_tls_offset to
7323         NO_TLS_OFFSET.
7324         * elf/rtld.c (_dl_start_final, _dl_start): Likewise.
7325         * elf/dl-reloc.c (CHECK_STATIC_TLS): Use NO_TLS_OFFSET.
7326         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Likewise.
7327         * sysdeps/powerpc/dl-tls.h (TLS_TPREL_VALUE): Don't subtract
7328         TLS_TCB_SIZE.
7330 2003-04-24  Ulrich Drepper  <drepper@redhat.com>
7332         * nss/getent.c: Implement alternative host database lookup via
7333         getaddrinfo.
7335         * include/ifaddrs.h: New file.
7336         * include/netdb.h: Move definitions of AI_V4MAPPED, AI_ALL, and
7337         AI_ADDRCONFIG...
7338         * resolv/netdb.h: ...here.
7339         * sysdeps/gnu/ifaddrs.c. Use libc_hidden_def where appropriate.
7340         * sysdeps/unix/sysv/linux/ifaddrs.c: Likewise.
7341         * sysdeps/posix/getaddrinfo.c: Implement AI_V4MAPPED, AI_ALL, and
7342         AI_ADDRCONFIG.
7344 2003-04-24  Roland McGrath  <roland@redhat.com>
7346         * elf/dl-reloc.c (_dl_allocate_static_tls): Add internal_function.
7348 2003-04-24  Jakub Jelinek  <jakub@redhat.com>
7350         * elf/dl-reloc.c (allocate_static_tls): Rename to...
7351         (_dl_allocate_static_tls): ... this function.  No longer static.
7352         (CHECK_STATIC_TLS): Adjust.
7353         * sysdeps/generic/ldsodefs.h (_dl_allocate_static_tls): New prototype.
7354         * sysdeps/powerpc/powerpc32/dl-machine.h (__process_machine_rela):
7355         Add SYM_MAP argument.
7356         (elf_machine_rela): Adjust caller.  Declare SYM_MAP unconditionally.
7357         Check if SYM_MAP != NULL for R_PPC_DTPREL32.  Only handle 32-bit
7358         TLS relocs here.  #ifdef out relocs which never appear in
7359         .gnu.conflict section from dl-conflict.c processing.
7360         * sysdeps/powerpc/powerpc32/dl-machine.c (__process_machine_rela):
7361         Add SYM_MAP argument.  Handle 16-bit TLS relocs here.
7363         * sysdeps/s390/s390-32/dl-machine.h (elf_machine_rela): #ifdef
7364         out relocs which never appear in .gnu.conflict section from
7365         dl-conflict.c processing.
7366         * sysdeps/s390/s390-64/dl-machine.h (elf_machine_rela): Likewise.
7367         * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Likewise.
7368         * sysdeps/i386/dl-machine.h (elf_machine_rela): Likewise.
7369         Use r_type in RESOLVE macro.
7371 2003-04-23  Ulrich Drepper  <drepper@redhat.com>
7373         * nis/ypclnt.c (__yp_bind): Expect YPDB parameter to always be !=
7374         NULL.  Remove code made redundant by this assumption.
7375         (__yp_unbind): Add call to free.  Adjust all callers.
7377         * nis/ypclnt.c (yp_all): Free the dom_binding object after
7378         unbinding it.
7380         * grp/initgroups.c (getgrouplist): Don't copy too much into the
7381         user buffer if more groups are found than fit into it.
7383         * nis/nss_nis/nis-initgroups.c (_nss_nis_initgroups_dyn): Use
7384         extend_alloca.
7386 2003-04-23  Jakub Jelinek  <jakub@redhat.com>
7388         * sysdeps/posix/getaddrinfo.c (gaih_inet): Check for rc == ERANGE,
7389         not rc == errno.  Use extend_alloca.
7391         * elf/tst-tls12.c (main): Fix declaration.
7392         * elf/tst-tls10.c (dummy): Make hidden instead of static.
7393         * elf/tst-tlsmod7.c (dummy): Likewise.
7394         * elf/tst-tlsmod8.c (dummy): Likewise.
7395         * elf/tst-tlsmod9.c (dummy): Likewise.
7397 2003-04-22  Roland McGrath  <roland@redhat.com>
7399         * sysdeps/unix/sysv/linux/not-cancel.h: Put parens around macro args.
7400         (open_not_cancel): Make last argument non-optional.
7401         * sysdeps/generic/check_fds.c (check_one_fd): Update caller.
7402         * sysdeps/unix/sysv/linux/gethostid.c (gethostid): Likewise.
7403         * iconv/gconv_cache.c (__gconv_load_cache): Likewise.
7405         * include/tls.h: Protect against multiple inclusion.
7407 2003-04-22  Ulrich Drepper  <drepper@redhat.com>
7409         * nscd/nscd-client.h: Add declaration for __nscd_open_socket.
7410         * nscd/nscd_gethst_r.c (__nscd_open_socket): Renamed from
7411         open_socket.  Not static anymore.
7412         (nscd_gethst_r): Use __nscd_open_socket.
7413         * nscd/nscd_getgr_r.c (open_socket): Removed.
7414         (nscd_getgr_r): Use __nscd_open_socket.
7415         * nscd/nscd_getpw_r.c (open_socket): Removed.
7416         (nscd_getpw_r): Use __nscd_open_socket.
7418         * nscd/nscd.c (main): Change type of fdn to long int and use strtol.
7419         * nscd/connections.c (handle_request): Add cast to avoid warning.
7421 2003-04-21  Ulrich Drepper  <drepper@redhat.com>
7423         * signal/sigfillset.c: Moved to...
7424         * sysdeps/generic/sigfillset.c: ...here.  If SIGCANCEL is defined
7425         do not set the corresponding bit.
7427         * sysdeps/unix/sysv/linux/sigprocmask.c: Prevent changing mask for
7428         SIGCANCEL.
7429         * sysdeps/unix/sysv/linux/alpha/bits/siginfo.h: Define SI_TKILL.
7430         * sysdeps/unix/sysv/linux/bits/siginfo.h: Define SI_TKILL.
7431         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Define SI_TKILL.
7432         * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Define SI_TKILL.
7433         * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Define SI_TKILL.
7435 2003-04-20  Ulrich Drepper  <drepper@redhat.com>
7437         * sysdeps/unix/sysv/linux/not-cancel.h (open_not_cancel): Cast
7438         first syscall parameter to const char*.
7440 2003-04-19  Ulrich Drepper  <drepper@redhat.com>
7442         * intl/Makefile ($(objpfx)msgs.h): Use C locale for sed run.
7444         * configure.in: Add AC_PROG_CXX.
7445         * config.make.in (CXX): Define.
7447         * sysdeps/i386/i686/hp-timing.h (HP_TIMING_PRINT): Change type of
7448         __len to size_t to avoid warnings.
7450 2003-04-18  Jes Sorensen  <jes@wildopensource.com>
7452         * libc/sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Sync with Linux
7453         2.5.67.
7454         * libc/sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Likewise.
7456 2003-04-19  Ulrich Drepper  <drepper@redhat.com>
7458         * stdlib/cxa_finalize.c (__cxa_finalize): Don't call
7459         UNREGISTER_ATFORK if d == NULL.
7461         * catgets/nl_types.h: Remove __THROW marker from cancellation points.
7462         * dirent/dirent.h: Likewise.
7463         * dlfcn/dlfcn.h: Likewise.
7464         * grp/grp.h: Likewise.
7465         * iconv/iconv.h: Likewise.
7466         * io/fcntl.h: Likewise.
7467         * io/ftw.h: Likewise.
7468         * libio/stdio.h: Likewise.
7469         * misc/sys/mman.h: Likewise.
7470         * misc/sys/select.h: Likewise.
7471         * misc/sys/syslog.h: Likewise.
7472         * misc/sys/uio.h: Likewise.
7473         * posix/spawn.h: Likewise.
7474         * posix/unistd.h: Likewise.
7475         * posix/sys/wait.h: Likewise.
7476         * pwd/pwd.h: Likewise.
7477         * resolv/netdb.h: Likewise.
7478         * rt/aio.h: Likewise.
7479         * shadow/shadow.h: Likewise.
7480         * signal/signal.h: Likewise.
7481         * socket/sys/socket.h: Likewise.
7482         * stdlib/stdlib.h: Likewise.
7483         * streams/stropts.h: Likewise.
7484         * string/string.h: Likewise.
7485         * sysdeps/gnu/utmpx.h: Likewise.
7486         * sysvipc/sys/msg.h: Likewise.
7487         * termios/termios.h: Likewise.
7488         * time/time.h: Likewise.
7489         * wcsmbs/wchar.h: Likewise.
7490         * iconv/gconv_cache.c: Include <not-cancel.h> and use non-cancelable
7491         functions.
7492         * misc/daemon.c: Likewise.
7493         * sysdeps/generic/backtracesymsfd.c: Likewise.
7494         * sysdeps/generic/check_fds.c: Likewise.
7495         * sysdeps/unix/sysv/linux/gethostid.c: Likewise.
7496         * sysdeps/unix/sysv/linux/not-cancel.h: New file.
7497         * sysdeps/generic/not-cancel.h: New file.
7498         * csu/Makefile (distribute): Add not-cancel.h.
7499         * sysdeps/unix/sysv/linux/fatal-prepare.h: New file.
7500         * sysdeps/unix/sysv/linux/Makefile: Define FATAL_PREPARE_INCLUDE
7501         for assert.c and assert-perr.c to include <fatal-prepare.h>.
7502         * sysdeps/unix/sysv/linux/Dist: Add fatal-prepare.h.
7504         * sysdeps/posix/remove.c (remove): Rewrite.  No need to restore
7505         errno and unlink first.
7507         * io/ftw.c (ftw_dir): In all places assume fchdir is available.
7509 2003-04-18  Ulrich Drepper  <drepper@redhat.com>
7511         * sysdeps/unix/sysv/linux/libc_fatal.c (__libc_fatal): Use
7512         INTERNAL_SYSCALL instead of INLINE_SYSCALL.
7514 2003-04-17  Ulrich Drepper  <drepper@redhat.com>
7516         * sysdeps/unix/sysv/linux/Makefile: Remove db2 directory handling.
7518         * malloc/Makefile (CFLAGS-malloc.c): Define DEFAULT_TOP_PAD to 128k.
7519         * sysdeps/unix/sysv/linux/Makefile (CFLAGS-malloc.c): Add to, not
7520         replace.
7522         * signal/Makefile (tests): Add tst-sigsimple.
7523         * signal/tst-sigsimple.c: New file.
7525 2003-04-16  Jakub Jelinek  <jakub@redhat.com>
7527         * elf/Makefile (distribute): Add tst-tlsmod{[7-9],1[0-2]}.c and
7528         tst-tls10.h.
7529         (tests): Add tst-tls1[0-2].
7530         (modules-names): Add tst-tlsmod{[7-8],1[0-2]}.
7531         ($(objpfx)tst-tlsmod8.so): Depend on tst-tlsmod7.so.
7532         ($(objpfx)tst-tlsmod10.so): Depend on tst-tlsmod9.so.
7533         ($(objpfx)tst-tlsmod12.so): Depend on tst-tlsmod11.so.
7534         ($(objpfx)tst-tls10): Depend on tst-tlsmod8.so.
7535         ($(objpfx)tst-tls11): Depend on tst-tlsmod10.so.
7536         ($(objpfx)tst-tls12): Depend on tst-tlsmod12.so.
7537         * elf/tst-tls10.c: New test.
7538         * elf/tst-tls11.c: New test.
7539         * elf/tst-tls12.c: New test.
7540         * elf/tst-tls10.h: New file.
7541         * elf/tst-tlsmod7.c: New file.
7542         * elf/tst-tlsmod8.c: New file.
7543         * elf/tst-tlsmod9.c: New file.
7544         * elf/tst-tlsmod10.c: New file.
7545         * elf/tst-tlsmod11.c: New file.
7546         * elf/tst-tlsmod12.c: New file.
7548 2003-04-15  Steven Munroe  <sjmunroe@us.ibm.com>
7550         * sysdeps/powerpc/bits/atomic.h: Moved ppc32/64 specific code to ...
7551         * sysdeps/powerpc/powerpc32/bits/atomic.h: New file.
7552         * sysdeps/powerpc/powerpc64/bits/atomic.h: New file.
7554 2003-04-17  Ulrich Drepper  <drepper@redhat.com>
7556         * posix/regex.h: Include <sys/types.h>.
7558         * signal/sigrelse.c (sigrelse): Use sigdelset and not __sigdelset.
7559         The signal number must be checked.
7560         * signal/sighold.c (sighold): Use sigaddset and not __sigaddset.
7561         The signal number must be checked [PR libc/5004].
7563         * sysdeps/unix/sysv/linux/system.c: If compiled without threads
7564         don't do anything fancy.
7566         * sysdeps/generic/bits/libc-lock.h: Define
7567         __rtld_lock_define_initialized_recursive.
7569         * nss/getXXbyYY_r.c [USE_NSCD] (REENTRANT_NAME): Only retry
7570         contacting nscd if NOT_USENSCD_NAME > 0.
7571         * nss/nsswitch.c (__nss_disable_nscd): New function.
7572         * nss/nsswitch.h: Declare it.
7573         * nss/Versions [GLIBC_PRIVATE]: Export __nss_disable_nscd.
7574         * nscd/nscd.c (main): Call __nss_disable_nscd.
7576 2003-04-16  Ulrich Drepper  <drepper@redhat.com>
7578         * stdio-common/perror.c (perror): We don't need to set the offset
7579         to _IO_pos_bad, this is how streams are initialized.
7581         * locale/programs/ld-time.c (TESTARR_ELEM): Make i unsigned.
7582         (time_output): If necessary, allocate new buffer for .name string if
7583         padding is required.
7585         * sysdeps/unix/sysv/linux/ifaddrs.c (getifaddrs): Check lengths
7586         before copying.  This might leave holes in the list.  Adjust
7587         pointers if necessary.
7588         (netlink_receive): Allocate only one block.
7589         (free_netlink_handle): Adjust appropriately.
7590         (getifaddrs): Lots of cleanups.
7592         * string/test-strncpy.c (do_one_test): Mark start and stop as
7593         possibly unused.
7594         * string/test-memchr.c: Likewise.
7595         * string/test-memcmp.c: Likewise.
7596         * string/test-memcpy.c: Likewise.
7597         * string/test-memmove.c: Likewise.
7598         * string/test-memset.c: Likewise.
7599         * string/test-strcat.c: Likewise.
7600         * string/test-strchr.c: Likewise.
7601         * string/test-strcmp.c: Likewise.
7602         * string/test-strcpy.c: Likewise.
7603         * string/test-strlen.c: Likewise.
7604         * string/test-strncmp.c: Likewise.
7605         * string/test-strpbrk.c: Likewise.
7606         * string/test-strrchr.c: Likewise.
7607         * string/test-strspn.c: Likewise.
7609 2003-04-15  Roland McGrath  <roland@redhat.com>
7611         * libio/fileops.c (_IO_file_close_it): Macro tweak to avoid warning.
7613         * sysdeps/generic/libc-start.c [NEED_DL_SYSINFO]: Add decl for
7614         INTUSE(__register_frame_info_bases).
7616 2003-04-15  Ulrich Drepper  <drepper@redhat.com>
7618         * elf/elf.h: Define AT_SYSINFO_EH_FRAME.
7619         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Handle
7620         AT_SYSINFO_EH_FRAME.  Adjust string width.
7621         (_dl_show_auxv):Display AT_SYSINFO_EH_FRAME value.
7622         * sysdeps/generic/ldsodefs.h [NEED_DL_SYSINFO] (struct rtld_global):
7623         Add _dl_sysinfo_eh_frame field.
7624         * elf/dl-support.c [NEED_DL_SYSINFO]: Define _dl_sysinfo_eh_frame.
7625         * sysdeps/generic/libc-start.c [NEED_DL_SYSINFO] Define eh_obj
7626         variable.
7627         [NEED_DL_SYSINFO] (LIBC_START_MAIN): Call __register_frame_info_bases
7628         if _dl_sysinfo_eh_frame is non-NULL.
7630         * Makeconfig (gnulib): Add -lgcc_eh.
7632         * config.h.in: Define HAVE_FORCED_UNWIND.
7634 2003-04-15  Steven Munroe  <sjmunroe@us.ibm.com>
7636         * sysdeps/powerpc/powerpc64/strcmp.S: Convert to full 64-bit.
7637         * sysdeps/powerpc/powerpc64/strcpy.S: Likewise.
7639 2003-04-15  Jakub Jelinek  <jakub@redhat.com>
7641         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Avoid
7642         checking R_PPC_RELATIVE, R_PPC_NONE and whether relocation is
7643         against local symbol in conflict processing.
7645 2003-04-15  Steven Munroe  <sjmunroe@us.ibm.com>
7647         * sysdeps/powerpc/bits/atomic.h
7648         [__powerpc64] (__arch_compare_and_exchange_val_64_acq): Define.
7649         [! __powerpc64] (__arch_compare_and_exchange_val_64_acq): Defined
7650         as abort stub.
7651         (__arch_compare_and_exchange_val_32_acq): Define.
7652         (atomic_compare_and_exchange_val_acq): Define.
7654 2003-04-15  Ulrich Drepper  <drepper@redhat.com>
7656         * include/atomic.h: Pretty printing.
7658 2003-04-14  Ulrich Drepper  <drepper@redhat.com>
7660         * stdio-common/vfscanf.c: Add casts to avoid warnings.
7662 2003-04-14  Jakub Jelinek  <jakub@redhat.com>
7664         * sysdeps/i386/i486/bits/atomic.h: Rename LOCK to LOCK_PREFIX.
7665         * sysdeps/x86_64/bits/atomic.h: Likewise.
7667 2003-04-14  Ulrich Drepper  <drepper@redhat.com>
7669         * sysdeps/unix/sysv/linux/i386/sysdep.h: Change PUSHARGS_1 and
7670         POPARGS_1 to emit labels for the mov instructions.
7672 2003-04-14  Jakub Jelinek  <jakub@redhat.com>
7674         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h (ret_NOERRNO): Define.
7676 2003-04-14  Roland McGrath  <roland@redhat.com>
7678         * sysdeps/generic/unwind-dw2.c (_Unwind_GetCFA): Add a cast to silence
7679         compiler warning.
7681         * sysdeps/generic/unwind-pe.h: Fix decl hacks broken in merge.
7683 2003-04-14  Ulrich Drepper  <drepper@redhat.com>
7685         * string/strxfrm.c (STRXFRM): Terminate rulearr at correct
7686         position.  Reported by jreiser@BitWagon.com.
7688 2003-04-13  Ulrich Drepper  <drepper@redhat.com>
7690         * sysdeps/generic/unwind-dw2-fde.c: Update from recent gcc version.
7691         * sysdeps/generic/unwind-dw2-fde.h: Likewise.
7692         * sysdeps/generic/unwind-dw2.c: Likewise.
7693         * sysdeps/generic/unwind-pe.h: Likewise.
7695 2003-04-13  Alexandre Oliva  <aoliva@redhat.com>
7697         * sysdeps/unix/sysv/linux/mips/profil-counter: New.
7698         * sysdeps/unix/sysv/linux/mips/sigcontextinfo.h: Port to n32/n64.
7699         * sysdeps/unix/sysv/linux/mips/bits/sigcontext.h: New.
7700         * sysdeps/unix/sysv/linux/mips/sys/ucontext.h: Port to n32/n64.
7701         (mcontext_t): Make it match the 32-bit mips kernel in o32.
7702         * sysdeps/unix/sysv/linux/mips/sys/user.h: Bring in constants from
7703         the mips and mips64 headers.
7704         (struct user): Port to n32/n64.
7706 2003-04-12  Ulrich Drepper  <drepper@redhat.com>
7708         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Add cast to
7709         avoid warning.
7711         * sysdeps/unix/sysv/linux/i386/sigaction.c (__libc_sigaction): If
7712         __ASSUME_VSYSCALL is defined don't add restorer.
7713         * sysdeps/unix/sysv/linux/kernel-features.h: Define
7714         __ASSUME_VSYSCALL for 2.5.53.
7716 2003-04-11  Ulrich Drepper  <drepper@redhat.com>
7718         * sysdeps/generic/libc-start.c: Cleanup MAIN_AUXVEC_ARG handling.
7719         Remove HAVE_CANCELBUF code.  Replace with code using the new
7720         initializers for unwind-based cleanup handling.
7721         * sysdeps/generic/unwind.h: Update from latest gcc version.
7722         * sysdeps/unix/sysv/linux/i386/sysdep.h: Define labels in a few
7723         places to allow unwind data generation.
7724         * sysdeps/i386/bits/setjmp.h: Allow file to be included multiple times.
7725         * sysdeps/x86_64/bits/setjmp.h: Likewise.
7726         * sysdeps/sh/bits/setjmp.h: Likewise.
7727         * sysdeps/powerpc/bits/setjmp.h: Likewise.
7728         * sysdeps/unix/sysv/linux/ia64/bits/setjmp.h: Likewise.
7729         * sysdeps/alpha/bits/setjmp.h: Likewise.
7731 2003-04-11  Roland McGrath  <roland@redhat.com>
7733         * csu/tst-empty.c: New file.
7734         * csu/Makefile (tests, tests-static): Add it.
7736 2003-04-11  Jakub Jelinek  <jakub@redhat.com>
7738         * string/test-strcmp.c (do_random_tests): Test whether return value
7739         has been promoted to wordsize if the ABI requires caller to do so.
7740         * string/test-strncmp.c (do_random_tests): Likewise.
7741         * string/test-memcmp.c (do_random_tests): Likewise.
7743         * sysdeps/powerpc/powerpc64/strcmp.S (strcmp): Sign extend rRTN
7744         before returning.
7746         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c
7747         (__fe_nomask_env): Try prctl even if __ASSUME_NEW_PRCTL_SYSCALL
7748         is not defined, but the prctl constants are.
7750         * string/tester.c (test_strcmp): Fix a typo.
7752 2003-04-09  Ulrich Drepper  <drepper@redhat.com>
7754         * sysdeps/alpha/fpu/bits/mathdef.h: Remove FLT_EVAL_METHOD definition.
7755         * sysdeps/powerpc/fpu/bits/mathdef.h: Likewise.
7757 2003-04-08  Alexandre Oliva  <aoliva@redhat.com>
7759         * sysdeps/mips/sys/regdef.h (t4,t5,t6,t7): Renamed to t0..t3 on
7760         NewABI.
7761         (ta0, ta1, ta2, ta3): Defined to t4..t7 on o32, and a4..a7 on
7762         NewABI.
7763         * sysdeps/mips/mips64/memcpy.S: Adjust register naming
7764         conventions.
7765         * sysdeps/mips/mips64/memset.S: Likewise.
7766         * sysdeps/unix/mips/sysdep.S (__syscall_error) [_LIBC_REENTRANT]:
7767         Use t0 instead of t4 as temporary.
7769 2003-04-07  Ulrich Drepper  <drepper@redhat.com>
7771         * elf/ldconfig.c (parse_conf): Ignore leading whitespace.  Use
7772         feof_unlocked instead of feof.
7773         (add_dir): Ignore trailing whitespace.
7775 2003-04-07  Jakub Jelinek  <jakub@redhat.com>
7777         * posix/bug-regex4.c (main): Cap RANGE and STOP arguments to
7778         sum of SIZE1 and SIZE2 arguments.
7780 2003-04-06  Ulrich Drepper  <drepper@redhat.com>
7782         * iconv/iconv_prog.c (process_block): Don't print message about
7783         invalid input if the -c option is used.
7784         (main): Correctly append IGNORE string for -c option.
7786 2003-04-06  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
7788         * sysdeps/sh/bits/atomic.h: Moved to ...
7789         * sysdeps/unix/sysv/linux/sh/bits/atomic.h: ... here.  Add comments.
7790         (__arch_compare_and_exchange_val_*_acq): Add parens around macro
7791         arguments.
7792         (atomic_bit_set, atomic_bit_test_set): Likewise.
7793         (atomic_exchange_and_add): Likewise.  Don't evaluate VALUE argument
7794         twice.
7795         (atomic_add, atomic_add_negative, atomic_add_zero): Likewise.
7797 2003-04-06  Roland McGrath  <roland@redhat.com>
7799         * sysdeps/unix/sysv/linux/i386/swapcontext.S: Rewrite register
7800         restoration as done for setcontext yesterday.
7802 2003-04-06  Jakub Jelinek  <jakub@redhat.com>
7804         * elf/rtld.c: Revert 2003-03-14 change.
7805         * elf/dl-conflict.c (_dl_resolve_conflicts): Move
7806         #if ! ELF_MACHINE_NO_RELA conditional into the routine.
7808 2003-04-05  Ulrich Drepper  <drepper@redhat.com>
7810         * sunrpc/xdr.c (xdr_string): Catch nodesize == 0 [PR libc/4999].
7812         * sysdeps/ieee754/ldbl-96/e_gammal_r.c (__ieee754_gammal_r):
7813         Always initialize *signgamp before returning an error.
7815 2003-04-05  Roland McGrath  <roland@redhat.com>
7817         * sysdeps/unix/sysv/linux/i386/setcontext.S: Rewrite to avoid writing
7818         below the stack pointer even if switching to the same context we are
7819         running right now.
7821 2003-04-05  Ulrich Drepper  <drepper@redhat.com>
7823         * catgets/gencat.c (read_input_file): Make sure that \n is not
7824         alone on the line before testing for continuation.
7826         * math/test-tgmath.c (compile_test): Initialize c.
7828 2003-04-05  Alexandre Oliva  <aoliva@redhat.com>
7830         * sysdeps/unix/sysv/linux/mips/mips64/n32/ftruncate64.c: New.
7831         * sysdeps/unix/sysv/linux/mips/mips64/n32/truncate64.c: New.
7832         * sysdeps/unix/sysv/linux/kernel-features.h: fcntl64 is available
7833         on mips n32.
7834         * sysdeps/unix/sysv/linux/mips/kernel_stat.h: Explain why
7835         XSTAT_IS_XSTAT64 must not be used for mips n64.  Use 64-bit data
7836         structure on n32 as well.
7837         * sysdeps/unix/sysv/linux/mips/bits/stat.h: Use POSIX-compliant
7838         data types on n32 and n64.
7840 2003-04-05  Ulrich Drepper  <drepper@redhat.com>
7842         * libio/fileops.c (_IO_new_file_fopen): Don't free step data right
7843         after getting them.
7845         * malloc/thread-m.h [PTHREAD_MUTEX_INITIALIZER]: If
7846         HAVE_register_atfork_malloc is defined use __register_atfork_malloc
7847         instead of __register_atfork.
7849 2003-04-05  Jakub Jelinek  <jakub@redhat.com>
7851         * stdio-common/reg-printf.c (__register_printf_function): Calloc
7852         instead of malloc __printf_arginfo_table and __printf_function_table.
7853         Reported by John Reiser <jreiser@BitWagon.com>.
7855 2003-04-04  Steven Munroe  <sjmunroe@us.ibm.com>
7857         * sysdeps/powerpc/powerpc64/strchr.S: 64-bit optimizations.
7858         * sysdeps/powerpc/powerpc64/strlen.S: 64-bit optimizations.
7860         * sysdeps/powerpc/fpu/bits/mathdef.h (FLT_EVAL_METHOD): Undef before
7861         defining.
7863 2003-04-04  Alexandre Oliva  <aoliva@redhat.com>
7865         * sysdeps/unix/sysv/linux/mips/bits/fcntl.h (struct flock): Adjust
7866         for n64 abi.
7868 2003-04-03  Roland McGrath  <roland@redhat.com>
7870         * configure.in: Fix up use of compilation flags to match the build:
7871         For .s files, $ASFLAGS;
7872         For .S files, $CPPFLAGS $ASFLAGS;
7873         For .c files, $CFLAGS $CPPFLAGS;
7874         when linking, add $LDFLAGS.
7875         * configure: Regenerated.
7877 2003-04-03  Jakub Jelinek  <jakub@redhat.com>
7879         * sysdeps/unix/sysv/linux/getsysstats.c (get_proc_path): Reverse test
7880         for atomic_compare_and_exchange_bool_acq failure.
7882 2003-04-03  Ulrich Drepper  <drepper@redhat.com>
7884         * posix/unistd.h: Define _POSIX_VERSION, _POSIX2_VERSION,
7885         _POSIX2_C_BIND, _POSIX2_C_DEV, _POSIX2_SW_DEV, and
7886         _POSXI2_LOCALEDEF to 200112L.  Remove _POSIX2_C_VERSION.
7887         Remove declaration of pthread_atfork.
7889 2003-04-02  Ulrich Drepper  <drepper@redhat.com>
7891         * locale/iso-639.def: Add many more languages from the current ISO 639.
7893         * sysdeps/unix/sysv/linux/ipc_priv.h: Define IPCOP_semtimedop.
7894         * sysdeps/generic/semtimedop.c: New file.
7895         * sysdeps/unix/sysv/linux/i386/semtimedop.S: New file.
7896         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Add semtimedop.
7897         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
7898         * sysvipc/Makefile (routines): Add semtimedop.
7899         * sysvipc/Versions [GLIBC_2.3.3] (glibc): Add semtimedop.
7900         * sysvipc/sys/sem.h: Declare semtimedop.
7902 2003-04-02  Daniel Jacobowitz  <drow@mvista.com>
7904         * configure.in: Check for __register_frame_info in both
7905         -lgcc and -lgcc_eh.
7906         * configure: Regenerated.
7908 2003-04-01  Roland McGrath  <roland@redhat.com>
7910         * scripts/abilist.awk: Allow dots in soname suffix.
7912         * scripts/abilist.awk (emit): Fix bailout condition.
7914 2003-04-01  Jakub Jelinek  <jakub@redhat.com>
7916         * sysdeps/unix/sysv/linux/sparc/sparc64/sigsuspend.c: Use the
7917         IA-64 version.
7919         * elf/tls-macros.h [__ia64__] (TLS_IE, TLS_LD, TLS_GD): Add gp
7920         register as input to asm.
7922 2003-04-01  Jakub Jelinek  <jakub@redhat.com>
7924         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h (sigevent_t): Fix a typo.
7926 2003-04-01  Andreas Jaeger  <aj@suse.de>
7928         * configure.in: Output as/ld as name if version is too old.
7930 2003-03-31  Daniel Jacobowitz  <drow@mvista.com>
7932         * configure.in: Don't require an installed C library in the test
7933         for ".set" assembler support.
7935 2003-03-31  Roland McGrath  <roland@redhat.com>
7937         * signal/tst-sigset.c: New file.
7938         * signal/Makefile (tests): Add it.
7940 2003-03-31  Ulrich Drepper  <drepper@redhat.com>
7942         * sysdeps/unix/sysv/linux/alpha/bits/signum.h (_NSIG): Define to 65.
7943         * sysdeps/unix/sysv/linux/hppa/bits/signum.h (_NSIG): Likewise.
7944         * sysdeps/unix/sysv/linux/sparc/bits/signum.h (_NSIG): Likewise.
7945         * sysdeps/unix/sysv/linux/bits/signum.h (_NSIG): Likewise.
7946         (__SIGRTMAX): Adjust accordingly.
7947         * sysdeps/gnu/siglist.c: If OLD2_SIGLIST_SIZE is defined define
7948         second compatibility symbol set.
7949         * sysdeps/unix/sysv/linux/siglist.h (OLD2_SIGLIST_SIZE): Define.
7951 2003-03-31  Andreas Schwab  <schwab@suse.de>
7953         * sysdeps/m68k/m68020/bits/atomic.h (atomic_increment_and_test):
7954         Define.
7955         (atomic_decrement_and_test): Fix test.
7957 2003-03-31  Jakub Jelinek  <jakub@redhat.com>
7959         * sysdeps/sparc/sparc32/bits/atomic.h: New file.
7960         * sysdeps/sparc/sparc32/sparcv9/bits/atomic.h: New file.
7961         * sysdeps/sparc/sparc64/bits/atomic.h: New file.
7962         * sysdeps/sparc/sparc32/atomicity.h: Removed.
7963         * sysdeps/sparc/sparc32/sparcv9/atomicity.h: Removed.
7964         * sysdeps/sparc/sparc64/atomicity.h: Removed.
7966 2003-03-30  Roland McGrath  <roland@redhat.com>
7968         * scripts/abilist.awk: Grok .opd foo plus .text .foo as "foo F" alone.
7970         * intl/po2test.sed: Anchor substitution regexps to fix last change.
7972 2003-03-29  Paolo Bonzini  <bonzini@gnu.org>
7974         * intl/po2test.sed: Unify the transformations for msgid and msgstr
7975         and remove a useless s/// command.
7977 2003-03-27  David Mosberger  <davidm@hpl.hp.com>
7979         * sysdeps/ia64/dl-machine.h (RTLD_START): Wrap ".save rp, r0"
7980         directive into empty .prologue region to ensure that call-chain
7981         is terminated even for the first instruction.
7983         * sysdeps/ia64/elf/start.S (_start): Use ".save rp, r0" idiom
7984         to terminate call-chain right from the get-go.
7986         * sysdeps/unix/sysv/linux/ia64/fork.S (fork): Remove unnecessary
7987         stop bit between compare & branch.
7989 2003-03-29  Ulrich Drepper  <drepper@redhat.com>
7991         * stdlib/strtod.c (INTERNAL): Recognize first digit after decimal
7992         point correctly [PR libc/4993].
7994         * sysdeps/unix/sysv/linux/ifaddrs.c (getifaddrs): Avoid
7995         netlink_open calls if netlink is known to not be available.
7997 2003-03-29  Alexandre Oliva  <aoliva@redhat.com>
7999         * configure.in: Add mips64* support.
8000         * sysdeps/mips/bits/endian.h: Make it bi-endian.
8001         * sysdeps/mips/mipsel/bits/endian.h: Removed.
8002         * sysdeps/mips/mips64/n32/el/bits/endian.h: Removed.
8003         * sysdeps/mips/mips64/n64/el/bits/endian.h: Removed.
8004         * sysdeps/mips/mips32/Makefile (CC): Add -mabi=32.
8005         * sysdeps/mips/mips64/n32/Makefile (CC): Add -mabi=n32.
8006         * sysdeps/mips/mips64/n64/Makefile (CC): Add -mabi=64.
8007         * sysdeps/mips/Implies: Moved wordsize-32 to...
8008         * sysdeps/mips/mips32/Implies: New file.
8009         * sysdeps/unix/mips/sysdep.h (PSEUDO_NOERRNO, PSEUDO_END_NOERRNO,
8010         ret_NOERRNO): New.
8011         (ret, PSEUDO_END): Moved past END.
8012         (PSEUDO): Moved to...
8013         * sysdeps/unix/mips/mips32/sysdep.h: New file.
8014         * sysdeps/unix/mips/mips64/n32/sysdep.h: Removed #undef PSEUDO.
8015         * sysdeps/unix/mips/mips64/n64/sysdep.h: Likewise.
8016         * sysdeps/unix/sysv/linux/mips/sysdep.h: Move to...
8017         * sysdeps/unix/sysv/linux/mips/mips32/sysdep.h: New file.
8018         * sysdeps/unix/sysv/linux/mips/mips32/kern64/sysdep.h: New file.
8020         * sysdeps/unix/sysv/linux/mips/clone.S (__thread_start):
8021         Re-introduce ENTRY.
8023 2003-03-28  Thorsten Kukuk  <kukuk@suse.de>
8025         * sysdeps/unix/sysv/linux/ifaddrs.c: New file.
8026         * inet/test-ifaddrs.c: Allow AF_PACKET.
8027         * sysdeps/unix/sysv/linux/kernel-features.h: Add
8028         __ASSUME_NETLINK_SUPPORT.
8030 2003-03-28  Ulrich Drepper  <drepper@redhat.com>
8032         * elf/vismain.c (do_test): Comment out tests which fail in the moment.
8034 2003-03-26  H.J. Lu  <hjl@gnu.org>
8036         * elf/vismod.h (getvarlocal1): Return const char **.
8037         (getvarinmod1): Likewise.
8038         (getvaritcpt1): Likewise.
8039         (getvarlocal2): Likewise.
8040         (getvarinmod2): Likewise.
8041         (getvaritcpt2): Likewise.
8042         (getvaritcpt3): Likewise.
8043         * elf/vismain.c (do_test): Adjusted.
8044         * elf/vismod1.c (getvarlocal1): Return address.
8045         (getvarinmod1): Likewise.
8046         (getvaritcpt1): Likewise.
8047         * elf/vismod2.c (getvarlocal2): Likewise.
8048         (getvarinmod2): Likewise.
8049         (getvaritcpt2): Likewise.
8050         * elf/vismod3.c (getvaritcpt3): Likewise.
8052 2003-03-28  Roland McGrath  <roland@redhat.com>
8054         * elf/vismain.c (do_test): Print both addresses when they don't match.
8056         * scripts/abilist.awk: If given -v filename_regexp and/or -v
8057         libname_regexp when parsing names, then produce output only
8058         for those matching the given regexps.  In combine mode, save all
8059         stanzas for a final sorting by stanza header at the end.
8060         Emit a blank line between stanzas.
8062         * scripts/abilist.awk: When given -v combine=1, do parse_names and
8063         emit a single output stream with lib name in stanza header lines.
8065         * scripts/abilist.awk: Emit A for all *ABS* regardless of type.
8067 2003-03-27  Roland McGrath  <roland@redhat.com>
8069         * sysdeps/powerpc/bits/atomic.h [! __powerpc64__]
8070         (__arch_atomic_decrement_if_positive_64): Fix bogus definition.
8072 2003-03-28  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
8074         * sysdeps/sh/bits/atomic.h (__arch_compare_and_exchange_val_8_acq):
8075         Return old value. Make asm output reg constraint earlyclobber.
8076         Renamed from...
8077         (__arch_compare_and_exchange_8_acq): ... this.
8078         (__arch_compare_and_exchange_val_16_acq):
8079         Return old value. Make asm output reg constraint earlyclobber.
8080         Renamed from...
8081         (__arch_compare_and_exchange_16_acq): ... this.
8082         (__arch_compare_and_exchange_val_32_acq):
8083         Return old value. Make asm output reg constraint earlyclobber.
8084         Renamed from...
8085         (__arch_compare_and_exchange_32_acq): ... this.
8086         (__arch_compare_and_exchange_val_64_acq):
8087         Renamed from...
8088         (__arch_compare_and_exchange_64_acq): ... this.
8089         (atomic_exchange_and_add): Use local variables and
8090         __arch_compare_and_exchange_val_64_acq.
8091         (atomic_add): Likewise.
8092         (atomic_add_negative, atomic_add_zero): Use local variables.
8094 2003-03-28  Alexandre Oliva  <aoliva@redhat.com>
8096         * sysdeps/unix/mips/sysdep.S: Include sys/asm.h.
8098 2003-03-27  Ulrich Drepper  <drepper@redhat.com>
8100         * Makefile: Remove libmd5crypt goal.
8102 2003-03-25  Jakub Jelinek  <jakub@redhat.com>
8104         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Restore
8105         special handling of relocations against local symbols.
8107 2003-03-27  Steven Munroe  <sjmunroe@us.ibm.com>
8109         * sysdeps/powerpc/bits/atomic.h
8110         (__arch_compare_and_exchange_bool_32_acq): Move to [!__powerpc64__].
8111         [__powerpc64__] (__arch_compare_and_exchange_bool_32_acq):
8112         Define PPC64 specific version.
8113         [__powerpc64__] (__arch_compare_and_exchange_bool_64_acq):
8114         Change (mem) constraint to "b".
8115         [__powerpc64__] (__arch_atomic_exchange_and add_64):
8116         Replace addi with add. Change (value) contraint to "r".
8117         Change (mem) constraint to "b".
8118         [__powerpc64__] (__arch_atomic_decrement_if_positive_64): New macro.
8119         (__arch_atomic_exchange_32): Change (mem) constraint to "b".
8120         (__arch_atomic_exchange_and_add_32): Change (mem) constraint to "b".
8121         (__arch_atomic_decrement_if_positive_32): New macro.
8122         (atomic_decrement_if_positive): Use __arch* macros.
8124 2003-03-27  Jakub Jelinek  <jakub@redhat.com>
8126         * sysdeps/ia64/fpu/libm-test-ulps: Update.
8128 2003-03-27  Roland McGrath  <roland@redhat.com>
8130         * scripts/rpm2dynsym.sh: New file.
8131         * Makefile (distribute): Add it.
8133 2003-03-27  David Mosberger  <davidm@hpl.hp.com>
8135         * sysdeps/unix/sysv/linux/ia64/getcontext.S: Restore caller's
8136         ar.unat before returning.  Add missing .mem.offset directives
8137         to ensure file gets assembled without warnings.
8138         * sysdeps/unix/sysv/linux/ia64/setjmp.S: Likewise.
8140 2003-03-27  Jakub Jelinek  <jakub@redhat.com>
8142         * sysdeps/unix/sysv/linux/sysconf.c (__sysconf) <_SC_MONOTONIC_CLOCK>:
8143         Return -1 instead of 0 if clock_getres failed.
8145 2003-03-27  Roland McGrath  <roland@redhat.com>
8147         * scripts/abilist.awk: If variable `parse_names' is set, grok the file
8148         header lines and write out foo.symlist files for each foo.so.NN listed.
8150         * libio/libioP.h (_IO_wfile_jumps): Remove attribute_hidden.
8151         This symbol is exported, and we don't want to hide it.
8152         Add libc_hidden_proto instead.
8153         (_IO_file_jumps): Add libc_hidden_proto.
8154         * libio/wfileops.c (_IO_wfile_jumps): Add libc_hidden_data_def.
8155         Remove INTVARDEF.
8156         * libio/fileops.c (_IO_file_jumps): Likewise.
8157         * libio/stdfiles.c: Don't use INTUSE on them.
8158         * libio/iofdopen.c (_IO_new_fdopen): Likewise.
8159         * libio/iofopen.c (__fopen_internal): Likewise.
8160         * libio/freopen.c (freopen): Likewise.
8161         * libio/freopen64.c (freopen64): Likewise.
8162         * libio/iovdprintf.c (_IO_vdprintf): Likewise.
8164         * Makerules (check-abi) [$(enable-check-abi) = warn]:
8165         Ignore exit status from diff.
8166         * configure.in (enable_check_abi): Document possible value "warn".
8167         Change default to no for now.
8168         * configure: Regenerated.
8170         * sysdeps/unix/Makefile ($(objpfx)stub-syscalls.c): Emit stub_warning
8171         macro calls and a #include <stub-tag.h> at the end.
8172         * Makerules ($(objpfx)stubs): Tweak sed commands.
8174         * sysdeps/unix/sysv/linux/syscalls.list: Use - rather than EXTRA in
8175         caller column for *xattr syscalls, since they are in sysdeps/generic.
8177         * sysdeps/unix/sysv/linux/i386/setfsuid.c: setfsgid -> setfsuid
8178         * sysdeps/unix/sysv/linux/i386/setfsgid.c: setfsuid -> setfsgid
8180 2003-03-26  Roland McGrath  <roland@redhat.com>
8182         * Makerules (check-abi-config): Use /thread instead of /tls when
8183         use-thread and not just use-tls is set.
8185         * Makerules (update-abi): Put quotes around $(update-abi-config).
8187         * elf/Makefile (check-abi): Depend on check-abi-ld.
8188         (update-abi): Depend on update-abi-ld.
8190 2003-03-26  GOTO Masanori  <gotom@debian.or.jp>
8192         * sysdeps/unix/sysv/linux/i386/setfsuid.c: Use INTERNAL_SYSCALL and
8193         do not check for errors (unless testing for 32bit variant).
8194         * sysdeps/unix/sysv/linux/i386/setfsgid.c: Likewise.
8196 2003-03-27  Philip Blundell  <philb@gnu.org>
8198         * sysdeps/unix/sysv/linux/arm/sysdep.h (PSEUDO_RET_NOERRNO): Use
8199         unconditional mov.  Remove nop.
8201         * sysdeps/unix/sysv/linux/kernel-features.h
8202         (__ASSUME_VFORK_SYSCALL): Define for kernel 2.4 on arm.
8203         * sysdeps/unix/sysv/linux/arm/vfork.S: Elide compatibility code
8204         when __ASSUME_VFORK_SYSCALL is defined.
8205         * sysdeps/unix/sysv/linux/arm/mmap64.S: Likewise for
8206         __ASSUME_MMAP2_SYSCALL.
8207         * sysdeps/unix/sysv/linux/arm/sigaction.c: Likewise for
8208         __ASSUME_REALTIME_SIGNALS.
8210 2003-03-26  Ulrich Drepper  <drepper@redhat.com>
8212         * sysdeps/generic/ldsodefs.h (ELF_RTYPE_CLASS_COPY): Define to 2
8213         only if DL_NO_COPY_RELOCS is not defined.
8214         * sysdeps/ia64/dl-lookupcfg.h: Define DL_NO_COPY_RELOCS.
8216 2003-03-26  Roland McGrath  <roland@redhat.com>
8218         * sysdeps/unix/make-syscalls.sh: When an undefined syscall has
8219         SOURCE=-, append its symbol names to make variable unix-stub-syscalls.
8220         * sysdeps/unix/Makefile [$(subdir) = misc] [unix-stub-syscalls]
8221         (sysdep_routines): Add stub-syscalls.
8222         ($(objpfx)stub-syscalls.c): New target.
8223         (generated): Add stub-syscalls.c.
8225         * tls.make.c: Also define use-tls according to USE_TLS macro.
8227 2003-03-26  Ulrich Drepper  <drepper@redhat.com>
8229         * sysdeps/unix/sysv/linux/alpha/bits/siginfo.h (struct siginfo): Avoid
8230         no-op padding element.
8231         * sysdeps/unix/sysv/linux/bits/siginfo.h: Likewise.
8232         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Likewise.
8233         * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Likewise.
8234         * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Likewise.
8236 2003-03-26  GOTO Masanori  <gotom@debian.or.jp>
8238         * sysdeps/unix/sysv/linux/i386/getgroups.c: Fix the error
8239         condition check for the return value of getgroups32.
8241 2003-03-26  Jakub Jelinek  <jakub@redhat.com>
8243         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (PSEUDO_NOERRNO):
8244         Fix a typo.
8245         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h (PSEUDO_NOERRNO,
8246         PSEUDO_END_NOERRNO): Define.
8247         * sysdeps/unix/sysdep.h (PSEUDO_END_NOERRNO): Fix a typo.
8248         Define to PSEUDO_END.
8250 2003-03-26  Ulrich Drepper  <drepper@redhat.com>
8252         * abilist/librt.abilist: Add new timer interfaces for 64-bit archs.
8254 2003-03-25  Jiro SEKIBA  <jir@yamato.ibm.com>
8256         * iconvdata/euc-tw.c (from_euc_tw): Fix return value of TO_LOOP.
8257         * iconvdata/bug-iconv4.c: New file.
8258         * iconvdata/Makefile (tests): Add bug-iconv4.
8260 2003-03-25  H.J. Lu  <hjl@gnu.org>
8262         * elf/dl-lookup.c (_dl_lookup_symbol): Avoid looking up protected
8263         symbols twice.
8264         (_dl_lookup_versioned_symbol): Likewise.
8266 2003-03-26  Jakub Jelinek  <jakub@redhat.com>
8268         * csu/tst-atomic.c (do_test): Add some new
8269         atomic_compare_and_exchange_val_acq, atomic_add_zero,
8270         atomic_compare_and_exchange_bool_acq and atomic_add_negative tests.
8271         * include/atomic.h (atomic_add_negative, atomic_add_zero):
8272         Prefix local variable so that it doesn't clash with the one
8273         in atomic_exchange_and_add.
8274         * sysdeps/ia64/bits/atomic.h (atomic_exchange): Fix for long/void *
8275         pointers.
8276         (atomic_exchange_and_add): Implement using __sync_fetch_and_add_?i.
8277         * sysdeps/powerpc/bits/atomic.h (atomic_exchange_and_add): Force
8278         value into register.
8279         * sysdeps/s390/bits/atomic.h (__arch_compare_and_exchange_val_64_acq):
8280         Cast newval to long.
8281         * sysdeps/x86_64/bits/atomic.h
8282         (__arch_compare_and_exchange_val_64_acq): Cast newval and oldval to
8283         long.
8284         (atomic_exchange): Cast newvalue to long if sizeof == 8.
8285         (atomic_exchange_and_add): Cast value to long if sizeof == 8.
8286         (atomic_add, atomic_add_negative, atomic_add_zero): Likewise.
8287         (atomic_bit_set): Shift 1L up in all cases to shut up warnings.
8289 2003-03-21  Martin Schwidefsky  <schwidefskyde.ibm.com>
8291         * sysdeps/s390/s390-32/backtrace.c (__backtrace): Remove high order
8292         bit from backtrace addresses.
8294 2003-03-21  Andreas Schwab  <schwab@suse.de>
8296         * sysdeps/unix/sysv/linux/i386/chown.c: Don't define any versioned
8297         __chown symbols.
8299 2003-03-25  Roland McGrath  <roland@redhat.com>
8301         * config.make.in (enable-check-abi): New variable from configure.
8302         * configure.in (enable_check_abi): New substituted variable,
8303         controlled by --{enable,disable}-check-abi (default yes).
8304         * configure: Regenerated.
8305         * Makerules [$(enable-check-abi) = yes] (tests): Put this condition
8306         on check-abi dependency.
8308 2003-03-26  Andreas Schwab  <schwab@suse.de>
8310         * sysdeps/m68k/m68020/bits/atomic.h: Fix typos.
8311         * include/atomic.h: Likewise.
8313         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Define ret_NOERRNO.
8315 2003-03-25  Roland McGrath  <roland@redhat.com>
8317         * sysdeps/powerpc/bits/atomic.h (__arch_atomic_exchange_32): New macro.
8318         (__arch_atomic_exchange_64): New macro.
8319         (atomic_exchange): Use them.
8320         (__arch_atomic_exchange_and_add_32): New macro.
8321         (__arch_atomic_exchange_and_add_64): New macro.
8322         (atomic_exchange_and_add): Use them.
8323         Original patch from Steven Munroe <sjmunroe@us.ibm.com>.
8325 2003-03-25  Alexandre Oliva  <aoliva@redhat.com>
8327         * sysdeps/mips/sgidefs.h (_MIPS_ISA_MIPS32, _MIPS_ISA_MIPS64):
8328         Define.
8329         * sysdeps/mips/sys/asm.h: Test _MIPS_ISA against them on all
8330         ISA tests.
8331         (ALSZ, ALMASK, SZREG, REG_S, REG_L): Define based on ABI, not ISA.
8332         (PTR_ADD, etc): Test _MIPS_SZPTR instead of _MIPS_SZLONG.
8333         * sysdeps/unix/sysv/linux/mips/bits/sigaction.h: Use _MIPS_SZPTR
8334         to decide whether to add padding.
8335         * sysdeps/unix/sysv/linux/mips/bits/sigaction.h: Use _MIPS_SZPTR
8336         to decide whether to add padding.
8337         * sysdeps/unix/sysv/linux/mips/kernel_sigaction.h (struct
8338         old_kernel_sigaction): Likewise.
8340 2003-03-25  Ulrich Drepper  <drepper@redhat.com>
8342         * csu/tst-atomic.c: Adjust tests to what atomic_add_negative and
8343         atomic_add_zero were supposed to do.
8344         * include/atomic.h: Adjust atomic_add_negative and atomic_add_zero
8345         to x86 behavior.
8347         * sysdeps/generic/bits/typesizes.h (__TIMER_T_TYPE): Define as void*.
8348         This matches the new timer implementation.
8349         * sysdeps/unix/sysv/linux/sparc/bits/typesizes.h (__TIMER_T_TYPE):
8350         Likewise.
8351         * sysdeps/unix/sysv/linux/alpha/bits/typesizes.h (__TIMER_T_TYPE):
8352         Likewise.
8353         * sysdeps/unix/sysv/linux/bits/siginfo.h (struct siginfo): Adjust
8354         timer info for what the kernel provides these days.
8355         (struct sigevent): Add _tid field.
8356         Define SIGEV_THREAD_ID.
8357         Remove struct __pthread_attr_s forward declaration.
8358         * sysdeps/unix/sysv/linux/alpha/bits/siginfo.h: Likewise.
8359         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Likewise.
8360         * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Likewise.
8361         * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Likewise.
8363         * Versions.def (librt): Add GLIBC_2.3.3.
8365         * abilist/libpthread.abilist: Update for nptl.
8367 2003-03-24  Jon Grimm  <jgrimm@us.ibm.com>
8369         * inet/netinet/in.h: Add IPPROTO_SCTP.
8371 2003-03-24  Ulrich Drepper  <drepper@redhat.com>
8373         * sysdeps/unix/sysv/linux/sys/epoll.h (EPOLLET): Define.
8375 2003-03-24  Philip Blundell  <philb@gnu.org>
8377         * sysdeps/unix/sysv/linux/arm/sysdep.h (INTERNAL_SYSCALL):
8378         Remove a1 from clobber list.
8380 2003-03-24  Ulrich Drepper  <drepper@redhat.com>
8382         * timezone/antarctica: Update from tzdata2003a.
8383         * timezone/asia: Likewise.
8384         * timezone/australasia: Likewise.
8385         * timezone/europe: Likewise.
8386         * timezone/iso3166.tab: Likewise.
8387         * timezone/northamerica: Likewise.
8388         * timezone/southamerica: Likewise.
8389         * timezone/zone.tab: Likewise.
8391 2003-03-24  Steven Munroe  <sjmunroe@us.ibm.com>
8393         * sysdeps/powerpc/powerpc64/sysdep.h (PSEUDO_END_NOERRNO): Fix typo.
8395 2003-03-23  Ulrich Drepper  <drepper@redhat.com>
8397         * sysdeps/unix/sysv/linux/ia64/sysdep.h (ret_NOERRNO): Avoid
8398         unwanted expansion by definining to ret.  Patch by Ian Wienand.
8400         * sysdeps/unix/make-syscalls.sh: Recognize 'E' in first position of
8401         the parameter description to denote no error checking.  Generate
8402         appropriate pseudo asm code.
8403         * sysdeps/unix/syscalls.list: Mark getgid, getpid, getuid with 'E'.
8404         * sysdeps/unix/sysv/linux/syscalls.list: Mark getegid, geteuid,
8405         getpgrp, and getppid with 'E'.
8406         * sysdeps/powerpc/powerpc32/sysdep.h: Define PSEUDO_NOERRNO,
8407         PSEUDO_END_NOERRNO, and ret_NOERRNO.
8408         * sysdeps/powerpc/powerpc64/sysdep.h: Likewise.
8409         * sysdeps/unix/sysdep.h: Likewise.
8410         * sysdeps/unix/alpha/sysdep.h: Likewise.
8411         * sysdeps/unix/sparc/sysdep.h: Likewise.
8412         * sysdeps/unix/sysv/linux/arm/sysdep.h: Likewise.
8413         * sysdeps/unix/sysv/linux/cris/sysdep.h: Likewise.
8414         * sysdeps/unix/sysv/linux/hppa/sysdep.h: Likewise.
8415         * sysdeps/unix/sysv/linux/i386/sysdep.h: Likewise.
8416         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Likewise.
8417         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Likewise.
8418         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Likewise.
8419         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise.
8420         * sysdeps/unix/sysv/linux/sh/sysdep.h: Likewise.
8421         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Likewise.
8422         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
8424 2003-03-23  Roland McGrath  <roland@redhat.com>
8426         * Makeconfig (+includes): Don't use $(last-includes).
8428 2003-03-22  Alexandre Oliva  <aoliva@redhat.com>
8430         * sysdeps/unix/sysv/linux/configure.in: Update mips64 patterns.
8431         * sysdeps/unix/sysv/linux/configure: Rebuilt.
8433 2003-03-23  Jakub Jelinek  <jakub@redhat.com>
8435         * sysdeps/alpha/fpu/libm-test-ulps: Update.
8436         * sysdeps/arm/libm-test-ulps: Update.
8437         * sysdeps/hppa/fpu/libm-test-ulps: Update.
8438         * sysdeps/ia64/fpu/libm-test-ulps: Update.
8439         * sysdeps/mips/fpu/libm-test-ulps: Update.
8440         * sysdeps/powerpc/nofpu/libm-test-ulps: Update.
8441         * sysdeps/powerpc/fpu/libm-test-ulps: Update.
8442         * sysdeps/sparc/sparc32/fpu/libm-test-ulps: Update.
8443         * sysdeps/sparc/sparc64/fpu/libm-test-ulps: Update.
8444         * sysdeps/sh/sh4/fpu/libm-test-ulps: Update.
8445         * sysdeps/s390/fpu/libm-test-ulps: Update.
8446         * sysdeps/x86_64/fpu/libm-test-ulps: Update.
8448 2003-03-22  Roland McGrath  <roland@redhat.com>
8450         * include/atomic.h: Put parens around all macro arguments.
8451         (__atomic_val_bysize, __atomic_bool_bysize): New macros.
8452         (atomic_compare_and_exchange_val_acq): Use it.
8453         (atomic_compare_and_exchange_bool_acq): Likewise.
8454         (atomic_increment_and_test): Invert sense of test.
8455         (atomic_decrement_and_test): Likewise.
8456         * csu/tst-atomic.c: Update those tests to match.
8458 2003-03-22  Jakub Jelinek  <jakub@redhat.com>
8460         * include/atomic.h (atomic_compare_and_exchange_val_acq): Add comment.
8461         Don't define if __arch_compare_and_exchange_val_32_acq is not defined.
8462         (atomic_compare_and_exchange_bool_acq): Add comment.  Don't use
8463         __oldval variable in the macro, since it might be macro argument.
8464         (atomic_decrement_if_positive): Initialize __memp, remove setting
8465         of non-existent variable.
8466         (atomic_bit_test_set): Cast 1 to __typeof (*mem) before shifting.
8467         * sysdeps/ia64/bits/atomic.h (atomic_exchange_and_add): Implement
8468         using atomic_compare_and_exchange_val_acq.
8469         (atomic_decrement_if_positive, atomic_bit_test_set): Define.
8470         * sysdeps/s390/bits/atomic.h (__arch_compare_and_exchange_val_8_acq):
8471         Renamed from...
8472         (__arch_compare_and_exchange_bool_8_acq): ... this.
8473         (__arch_compare_and_exchange_val_16_acq): Renamed from...
8474         (__arch_compare_and_exchange_bool_16_acq): ... this.
8475         (__arch_compare_and_exchange_val_32_acq): Return old value.  Renamed
8476         from...
8477         (__arch_compare_and_exchange_bool_32_acq): ... this.
8478         (__arch_compare_and_exchange_val_64_acq): Return old value.  Renamed
8479         from...
8480         (__arch_compare_and_exchange_bool_64_acq): ... this.
8481         (__arch_compare_and_exchange_val_32_acq): Use __typeof for local
8482         variables types instead of assuming int.
8483         Change prefix of local variables to __arch.
8484         * sysdeps/generic/bits/atomic.h (arch_compare_and_exchange_acq):
8485         Remove.
8486         (atomic_compare_and_exchange_val_acq,
8487         atomic_compare_and_exchange_bool_acq): Define.
8489         * csu/tst-atomic.c: New test.
8490         * csu/tst-atomic-long.c: New test.
8491         * csu/Makefile (tests): Add tst-atomic and tst-atomic-long.
8493         * malloc/memusagestat.c (main): Kill warning if uint64_t is ulong.
8495         * sysdeps/s390/Versions: Add trailing newline.
8497         * sysdeps/unix/sysv/linux/sysconf.c (__sysconf): Kill warning
8498         if INTERNAL_SYSCALL_ERROR_P doesn't use its first argument.
8500 2003-03-22  Andreas Schwab  <schwab@suse.de>
8502         * sysdeps/m68k/fpu/libm-test-ulps: Update.
8504         * sysdeps/m68k/m68020/bits/atomic.h: New file.
8505         * sysdeps/m68k/m68020/atomicity.h: Removed.
8507 2003-03-22  Alexandre Oliva  <aoliva@redhat.com>
8509         * sysdeps/mips/elf/ldsodefs.h: Add mips-specific elf64 relocation
8510         data structures and macros.  Protect from multiple inclusion.
8512         * sysdeps/mips/dl-machine.h (ELF_MIPS_GNU_GOT1_MASK): Fix harmless
8513         typo in #if test.
8515 2003-03-21  Andreas Jaeger  <aj@suse.de>
8517         * sysdeps/i386/fpu/libm-test-ulps: Update.
8519         * math/libm-test.inc (tgamma_test): Recompute some constants with
8520         36 digits precision.
8521         (lgamma_test): Likewise.
8522         (ccos_test): Likewise.
8523         (ccosh_test): Likewise.
8524         (clog10_test): Likewise.
8525         (csin_test): Likewise.
8526         (csinh_test): Likewise.
8527         (ctan_test): Likewise.
8528         (ctanh_test): Likewise.
8530 2003-03-19  Jakub Jelinek  <jakub@redhat.com>
8532         * sysdeps/sparc/sparc64/fpu/libm-test-ulps: Regenerated.
8534 2003-03-21  Roland McGrath  <roland@redhat.com>
8536         * sysdeps/i386/i486/bits/atomic.h (atomic_bit_set): Use "ir"
8537         constraint to permit non-constant BIT argument.
8538         (atomic_bit_test_set): Likewise.
8539         * sysdeps/x86_64/bits/atomic.h (atomic_bit_test_set): Likewise.
8540         (atomic_bit_set): Likewise.  Use 1UL in case that BIT might be >= 32.
8541         For quadword case, use "i" constraint if __builtin_constant_p and < 32
8542         or "r" constraint otherwise.
8544         * configure.in: Move AC_PROG_CC and other program-finding before all
8545         the version checks.
8546         * configure: Regenerated.
8548 2003-03-21  Alexandre Oliva  <aoliva@redhat.com>
8550         * sysdeps/mips/mips64/memcpy.S: Fix porting bug that broke
8551         unaligned copying of 8-15 bytes.  From Chris Demetriou
8552         <cgd@broadcom.com>.  Fix label names.
8553         * sysdeps/mips/mips64/memset.S: Fix label names.  Make similar
8554         change as to memcpy.S.
8555         * sysdeps/mips/memcpy.S: Formatting changes.
8556         * sysdeps/mips/memset.S: Likewise.
8558 2003-03-21  Roland McGrath  <roland@redhat.com>
8560         * sysdeps/arm/sysdep.h (CALL_MCOUNT): Add trailing semicolon.
8562 2003-03-21  Alexandre Oliva  <aoliva@redhat.com>
8564         * sysdeps/mips/mips64/memcpy.S, sysdeps/mips/mips64/memset.S: New.
8565         * sysdeps/mips/memcpy.S, sysdeps/mips/memset.S: Update comments.
8567 2003-03-21  Roland McGrath  <roland@redhat.com>
8569         * sysdeps/i386/i486/bits/atomic.h
8570         (__arch_compare_and_exchange_val_64_acq): Rewrite abort-calling
8571         version of the macro to avoid compile-time warnings.
8572         [! __PIC__] (__arch_compare_and_exchange_64_acq): Rename to above.
8573         (atomic_exchange_and_add, atomic_add): Fix name and usage of it.
8574         (atomic_increment, atomic_decrement): Likewise.
8576 2003-03-21  Ulrich Drepper  <drepper@redhat.com>
8578         * sysdeps/x86_64/bits/atomic.h: Don't use matching memory constraints.
8579         * sysdeps/i386/i486/bits/atomic.h: Likewise.
8581 2003-03-21  Roland McGrath  <roland@redhat.com>
8583         * include/atomic.h (atomic_compare_and_exchange_bool_acq): Typo fix.
8585 2003-03-20  Ulrich Drepper  <drepper@redhat.com>
8587         * include/atomic.h: Define atomic_compare_and_exchange_val_acq,
8588         atomic_compare_and_exchange_val_rel,
8589         atomic_compare_and_exchange_bool_acq, and
8590         atomic_compare_and_exchange_bool_rel instead of
8591         atomic_compare_and_exchange_acq and atomic_compare_and_exchange_rel.
8592         * sysdeps/i386/i486/bits/atomic.h: Define
8593         __arch_compare_and_exchange_val_*_acq instead of
8594         __arch_compare_and_exchange_*_acq.
8595         * sysdeps/x86_64/bits/atomic.h: Likewise.
8596         * sysdeps/ia64/bits/atomic.h: Define
8597         __arch_compare_and_exchange_bool_*_acq instead of
8598         __arch_compare_and_exchange_*_acq.
8599         * sysdeps/powerpc/bits/atomic.h: Likewise.
8600         * sysdeps/s390/bits/atomic.h: Likewise.
8601         * gmon/mcount.c: Adjust for new form of compare&exchange macros.
8602         * malloc/set-freeres.c: Likewise.
8603         * nscd/cache.c: Likewise.
8604         * stdlib/cxa_finalize.c: Likewise.
8605         * sysdeps/unix/sysv/linux/getsysstats.c: Likewise.
8607 2003-03-20  Alexandre Oliva  <aoliva@redhat.com>
8609         * sysdeps/mips/bits/setjmp.h: n32 has only 6 call-saved fpregs.
8610         * sysdeps/mips/mips64/setjmp_aux.c (__sigsetjmp_aux): Adjust.
8611         * sysdeps/mips/mips64/__longjmp.c (__longjmp): Likewise.
8613         * sysdeps/unix/sysv/linux/mips/pread.c: Don't break up offset
8614         into high and low halves on n64.
8615         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
8616         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
8617         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
8619 2003-03-20  Ulrich Drepper  <drepper@redhat.com>
8621         * include/atomic.h (atomic_decrement_if_positive): Adjust for the
8622         correct atomic_compare_and_exchange_acq semantics.
8624 2003-03-20  Alexandre Oliva  <aoliva@redhat.com>
8626         * sysdeps/mips/ieee754.h: Remove excess #endif.
8628 2003-03-20  Roland McGrath  <roland@redhat.com>
8630         * sysdeps/powerpc/bits/atomic.h (atomic_exchange): Remove unused
8631         variable.  Remove superfluous memory clobber.
8633         * include/atomic.h: Syntax braino fix.
8635         * posix/tst-nice.c (do_test): Use %m formats instead of printing errno
8636         in decimal.  Don't bail if niced at start.  Just check that nice call
8637         bumps the total at all.
8639 2003-03-20  Alexandre Oliva  <aoliva@redhat.com>
8641         * sysdeps/mips/bits/setjmp.h: Store all N32 and N64 registers,
8642         including pc, gp, sp and fp, as long long.
8643         * sysdeps/mips/mips64/setjmp.S: Pass gp to __sigsetjmp_aux.
8644         * sysdeps/mips/mips64/setjmp_aux.c: Adjust type of arguments.
8645         Add gp argument, and set gp in the jmpbuf to it.
8646         * sysdeps/mips/setjmp_aux.c: Revert to o32-only.
8648 2003-03-20  Ulrich Drepper  <drepper@redhat.com>
8650         * include/atomic.h: Define atomic_exchange and
8651         atomic_decrement_if_positive if not already defined.  Add some
8652         __builtin_expect.
8653         * sysdeps/i386/i486/bits/atomic.h: Define atomic_exchange.
8654         * sysdeps/x86_64/bits/atomic.h: Likewise.
8655         * sysdeps/ia64/bits/atomic.h: Pretty printing.  Define atomic_exchange.
8656         * sysdeps/powerpc/bits/atomic.h: Pretty printing.  Define
8657         atomic_exchange, atomic_exchange_and_add, and
8658         atomic_decrement_if_positive
8660 2003-03-20  Alexandre Oliva  <aoliva@redhat.com>
8662         * sysdeps/unix/sysv/linux/mips/mips64/n64/ioctl.S: Sign-extend
8663         with a single instruction.
8665         * sysdeps/mips/dl-machine.h (ELF_MIPS_GNU_GOT1_MASK): Define
8666         properly for n64.
8667         (elf_machine_runtime_setup): Cast link_map pointer to Elf Addr
8668         type.
8669         (elf_machine_rel, elf_machine_rel_relative): Cast symidx to Elf
8670         Word before comparing with gotsym.  Take reloc_addr argument as
8671         void*.  Remove the code added for the compiler to drop any
8672         alignment assumptions.
8674 2003-03-19  Ulrich Drepper  <drepper@redhat.com>
8676         * Makefile (distribute): Add include/atomic.h and bits/atomic.h.
8677         * include/atomic.h: New file.
8678         * sysdeps/i386/i486/bits/atomic.h: New file.
8679         * sysdeps/x86_64/bits/atomic.h: New file.
8680         * sysdeps/s390/bits/atomic.h: New file.
8681         * sysdeps/sh/bits/atomic.h: New file.
8682         * sysdeps/ia64/bits/atomic.h: New file.
8683         * sysdeps/powerpc/bits/atomic.h: New file.
8684         * sysdeps/generic/bits/atomic.h: New file.
8685         * sysdeps/i386/i486/atomicity.h: Removed.
8686         * sysdeps/x86_64/atomicity.h: Removed.
8687         * sysdeps/s390/s390-32/atomicity.h: Removed.
8688         * sysdeps/s390/s390-64/atomicity.h: Removed.
8689         * sysdeps/ia64/atomicity.h: Removed.
8690         * sysdeps/powerpc/powerpc32/atomicity.h: Removed.
8691         * sysdeps/powerpc/powerpc64/atomicity.h: Removed.
8692         * elf/dl-profile.c: Use atomic.h instead of atomicity.h.  Adjust
8693         use of macros from atomicity.h to new names and semantics.
8694         * gmon_mcount.c: Likewise.
8695         * malloc/set-freeres.c: Likewise.
8696         * nscd/cache.c: Likewise.
8697         * stdlib/cxa_finalize.c: Likewise.
8698         * sysdeps/unix/sysv/linux/getsysstats.c: Likewise.
8700 2003-03-19  Alexandre Oliva  <aoliva@redhat.com>
8702         * sysdeps/mips/ieee754.h: New file, suitable to replace both
8703         ../ieee754/ieee754.h and ../ieee754/ldbl-128/ieee754.h, kept
8704         mips-specific for now.
8706 2003-03-19  Ulrich Drepper  <drepper@redhat.com>
8708         * stdlib/strtod.c (INTERNAL): While eating trailing zeros handle
8709         hexdigits correctly.  Reported by Fred Tydeman <tydeman@tybor.com>.
8710         * stdlib/tst-strtod.c: Add test for the bug.
8712         * posix/tst-nice.c (do_test): Remove invalid of return value.
8713         Don't run test if initial level != 0.
8715 2003-03-19  Amos Waterland  <apw@us.ibm.com>
8717         * posix/tst-nice.c: New file.
8718         * posix/Makefile (tests): Add tst-nice.
8720 2003-03-18  Roland McGrath  <roland@redhat.com>
8722         * abilist: New directory of libfoo.abilist files maintained using
8723         scripts/merge-abilist.awk and "make update-abi" rules.
8724         * Makefile (distribute): Add abilist/*.abilist.
8725         * Makerules [$(build-shared) = yes] [$(subdir)] (tests):
8726         Depend on check-abi.
8728         * configure.in: Move $critic_missing check after all AC_CHECK_PROG_VER.
8729         * configure: Regenerated.
8731         * sysdeps/unix/sysv/linux/syscalls.list (posix_fadvise64): Fix name.
8733 2003-03-18  Ulrich Drepper  <drepper@redhat.com>
8735         * sysdeps/posix/sysconf.c (__sysconf): Handle _SC_MONOTONIC_CLOCK
8736         correctly.
8738 2003-03-18  Steven Munroe  <sjmunroe@us.ibm.com>
8740         * sysdeps/powerpc/powerpc64/memcpy.S: New file.
8742 2003-03-18  Ulrich Drepper  <drepper@redhat.com>
8744         * Versions.def: Add GLIBC_2.3.3 for libpthread.
8746 2003-03-17  Ulrich Drepper  <drepper@redhat.com>
8748         * sysdeps/generic/libc-start.c [!SHARED &&
8749         !LIBC_START_MAIN_AUXVEC_ARG]: Compute beginning of auxvec correctly.
8751 2003-03-17  Roland McGrath  <roland@redhat.com>
8753         * include/ctype.h: Revert last change.
8755 2003-03-17  Ulrich Drepper  <drepper@redhat.com>
8757         * argp/tst-argp1.c: Use test-skeleton.c.
8758         * locale/tst-C-locale.c: Likewise.
8760 2003-03-17  Alexandre Oliva  <aoliva@redhat.com>
8762         * sysdeps/mips/mips64/Implies: Move wordsize-64 to...
8763         * sysdeps/mips/mips64/n64/Implies: New file.
8764         * sysdeps/mips/mips64/n64/Makefile: New file.
8765         * sysdeps/mips/mips64/n64/el/bits/endian.h: New file.
8766         * sysdeps/mips/mips64/n32/Implies: New file.
8767         * sysdeps/mips/mips64/n32/Makefile: New file.
8768         * sysdeps/mips/mips64/n32/el/bits/endian.h: New file.
8769         * sysdeps/unix/mips/mips64/n32/sysdep.h: New file.
8770         * sysdeps/unix/mips/mips64/n64/sysdep.h: New file.
8771         * sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h: New file.
8772         * sysdeps/unix/sysv/linux/mips/mips64/n64/glob64.c: New file.
8773         * sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h: New file.
8774         * sysdeps/unix/sysv/linux/mips/mips64/ldconfig.h: New file.
8775         * sysdeps/unix/sysv/linux/mips/mips64/llseek.c: New file.
8776         * sysdeps/unix/sysv/linux/mips/mips64/recv.c: New file.
8777         * sysdeps/unix/sysv/linux/mips/mips64/send.c: New file.
8778         * sysdeps/unix/sysv/linux/mips/mips64/syscall.S: New file.
8779         * sysdeps/unix/sysv/linux/mips/mips64/syscalls.list: New file.
8780         * sysdeps/unix/sysv/linux/mips/mips64/umount.c: New file.
8781         * sysdeps/unix/sysv/linux/mips/mips64/n64/ioctl.S: New file.
8783         * sysdeps/unix/sysv/linux/configure.in (libc_cv_slibdir): Use
8784         lib64 for mips64/n64 and lib32 for mips64/n32.
8785         (ldd_rewrite_script): Needed for all mips64 configurations.
8786         * sysdeps/unix/sysv/linux/configure: Rebuilt.
8787         * sysdeps/unix/sysv/linux/mips/mips64/ldd-rewrite.sed: New file.
8788         * sysdeps/unix/sysv/linux/mips/mips64/Dist: New file.
8790         * sysdeps/mips/machine-gmon.h (MCOUNT): Define for N32 and N64 as
8791         well.
8793         * sysdeps/unix/sysv/linux/mips/configure.in: New.  Pre-process
8794         asm/unistd.h into asm-unistd.h.
8795         * sysdeps/unix/sysv/linux/mips/configure: Generated.
8796         * sysdeps/unix/sysv/linux/mips/Makefile: Do custom processing
8797         of syscall list.
8798         * sysdeps/unix/sysv/linux/mips/sys/syscall.h: New file.
8799         * sysdeps/unix/sysv/linux/mips/clone.S: Don't include
8800         asm/unistd.h.
8802         * sysdeps/unix/sysv/linux/mips/sys/ptrace.h: New file.
8803         * sysdeps/unix/sysv/linux/mips/ptrace.c: New file.  Use long
8804         long type for registers on n32.
8806         * sysdeps/mips/bits/wordsize.h: New file, appropriate for all
8807         3 ABIs.
8808         * sysdeps/mips/mips64/gmp-mparam.h: New file.  Define
8809         BITS_PER_LONGINT to __WORDSIZE, to match all 3 ABIs.
8810         * sysdeps/mips/setjmp_aux.c (STRINGXP, REGS, PTRS): New macros.
8811         (__sigsetjmp_aux): Use them.  Adjust for all 3 ABIs.
8812         * sysdeps/mips/elf/start.S: Adjust for all 3 ABIs.
8813         * sysdeps/unix/mips/brk.S: Likewise.
8814         * sysdeps/unix/mips/sysdep.S: Likewise.
8815         * sysdeps/unix/sysv/linux/mips/clone.S: Likewise.
8816         * sysdeps/mips/bits/setjmp.h (__jmp_buf): Likewise.
8817         * sysdeps/mips/sys/ucontext.h: Likewise.
8818         * sysdeps/unix/sysv/linux/mips/sys/profcs.h: Likewise.
8819         * sysdeps/unix/sysv/linux/mips/sys/ucontext.h: Likewise.
8820         * sysdeps/unix/sysv/linux/mips/kernel_stat.h: Likewise.
8821         * sysdeps/mips/mips64/bsd-_setjmp.S: Likewise.
8822         * sysdeps/mips/mips64/bsd-setjmp.S: Likewise.
8823         * sysdeps/mips/mips64/setjmp.S: Likewise.
8824         * sysdeps/mips/mips64/bits/setjmp.h: Deleted, obsolete.
8825         * sysdeps/mips/mips64/soft-fp/sfp-machine.h: Use long long for
8826         64-bit types.
8828 2003-03-16  Ulrich Drepper  <drepper@redhat.com>
8830         * sysdeps/unix/clock_settime.c (HANDLE_REALTIME): Define tv here,
8831         not at function level.
8832         * sysdeps/unix/clock_gettime.c (HANDLE_REALTIME): Likewise.
8834 2003-03-15  Roland McGrath  <roland@redhat.com>
8836         * nis/nss_nis/nis-hosts.c (internal_gethostbyname2_r): int -> size_t
8837         * nis/nss_nis/nis-network.c (_nss_nis_getnetbyname_r): Likewise.
8838         * nis/nss_nis/nis-alias.c (_nss_nis_getaliasbyname_r): Likewise.
8839         * nis/nis_table.c (__create_ib_request): Likewise.
8841         * posix/fnmatch_loop.c: Add casts for signedness.
8842         * nss/nss_files/files-hosts.c: Likewise.
8843         * nscd/nscd_getpw_r.c (nscd_getpw_r): Likewise.
8844         * gmon/gmon.c (write_call_graph): Use u_long for FROM_LEN.
8845         * nscd/nscd_getgr_r.c (nscd_getgr_r): Use nscd_ssize_t for CNT.
8847         * configure.in (libc_cv_visibility_attribute): Use AC_TRY_COMMAND,
8848         get errors into the log file.
8849         (libc_cv_broken_visibility_attribute): Likewise.
8850         (libc_cv_broken_alias_attribute): Likewise.
8851         (libc_cv_asm_weak_directive): Likewise.
8852         (libc_cv_need_minus_P): Likewise.
8853         (libc_cv_dot_text): Likewise.
8854         (libc_cv_asm_global_directive): Likewise.
8855         (libc_cv_asm_type_prefix): Likewise.
8856         * configure: Regenerated.
8858         * nscd/cache.c (cache_search): Give first arg type `request_type'.
8859         * nscd/nscd.h: Update decl.
8861         * nscd/nscd_getpw_r.c (nscd_getpw_r): Add casts for signedness.
8862         * nscd/nscd_getgr_r.c (nscd_getgr_r): Likewise.
8863         * elf/dl-close.c (_dl_close): Likewise.
8864         * sysdeps/unix/sysv/linux/powerpc/chown.c (__chown): int -> size_t
8865         * io/fts.c (fts_build): Likewise.
8866         * elf/cache.c (add_to_cache): Likewise.
8867         * locale/programs/locarchive.c (show_archive_content): Likewise.
8869         * posix/fnmatch.c (fnmatch): Tweak __builtin_expect use.
8871         * include/ctype.h (__ctype_b_loc): Tweak type punning to make gcc 3.3
8872         happy.
8873         (__ctype_toupper_loc, __ctype_tolower_loc): Likewise.
8875 2003-03-15  Ulrich Drepper  <drepper@redhat.com>
8877         * sysdeps/unix/sysv/linux/ia64/system.c: Use the generic Linux
8878         code for most parts.
8880 2003-03-15  Roland McGrath  <roland@redhat.com>
8882         * sysdeps/unix/sysv/linux/i386/system.c: Moved to ...
8883         * sysdeps/unix/sysv/linux/system.c: ... here.
8884         (FORK): Don't #define if already #define'd.
8885         * sysdeps/unix/sysv/linux/s390/system.c: File removed.
8886         * sysdeps/unix/sysv/linux/kernel-features.h [__powerpc__]:
8887         (__ASSUME_CLONE_THREAD_FLAGS): Define for kernel >= 2.5.64.
8889         * dlfcn/tst-dlinfo.c: New file.
8890         * dlfcn/Makefile (tests): Add tst-dlinfo.
8891         ($(objpfx)tst-dlinfo): New target.
8893         * dlfcn/dlinfo.c: New file.
8894         * dlfcn/Makefile (libdl-routines): Add it.
8895         * dlfcn/Versions (libdl: GLIBC_2.3.3): Add dlinfo.
8896         * dlfcn/dlfcn.h [__USE_GNU]: Declare dlinfo.
8897         [__USE_GNU] (RTLD_DI_*): New enum constants.
8898         [__USE_GNU] (Dl_serpath, Dl_serinfo): New types.
8899         * elf/dl-load.c (cache_rpath): New inline function.
8900         (_dl_map_object): Use it.
8901         (_dl_rtld_di_serinfo): New function.
8902         * sysdeps/generic/ldsodefs.h: Declare it.
8903         * elf/Versions (ld: GLIBC_PRIVATE): Add it.
8905         * sysdeps/powerpc/elf/libc-start.c (AUX_VECTOR_INIT): Define it.
8906         (LIBC_START_MAIN, LIBC_START_MAIN_AUXVEC_ARG, MAIN_AUXVEC_ARG)
8907         (INIT_MAIN_ARGS): Define, and #include <sysdeps/generic/libc-start.c>.
8908         (__libc_start_main): Just call the generic one for most of the work.
8910         * sysdeps/generic/libc-start.c [LIBC_START_MAIN]: If defined, define a
8911         static function by that name instead of BP_SYM (__libc_start_main).
8912         [LIBC_START_MAIN_AUXVEC_ARG]: Take AUXVEC as argument.
8913         [MAIN_AUXVEC_ARG]: Pass 4th argument to MAIN.
8914         [INIT_MAIN_ARGS]: Give INIT the same args as MAIN.
8916         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start) [DL_PLATFORM_AUXV]:
8917         Use this macro for extra AT_* cases.
8918         * sysdeps/unix/sysv/linux/powerpc/dl-sysdep.c (DL_PLATFORM_AUXV):
8919         New macro, guts from ...
8920         (__aux_init_cache): ... here, function removed.
8921         (DL_PLATFORM_INIT): Don't define this.
8923         * sysdeps/powerpc/powerpc32/memset.S: Put __cache_line_size in bss.
8924         * sysdeps/powerpc/powerpc64/memset.S: Likewise.
8926         * Versions.def (libthread_db): Add GLIBC_2.3.3 set.
8928 2003-03-14  Roland McGrath  <roland@redhat.com>
8930         * dlfcn/dlerror.c (dlerror): If objname is "", don't put ": " after it.
8932 2003-03-14  Jakub Jelinek  <jakub@redhat.com>
8934         * sysdeps/unix/sysv/linux/Makefile (syscall-%.h): Fix a typo.
8936         * sysdeps/unix/sysv/linux/sparc/sparc64/pause.c: Include
8937         sysdeps/posix/pause.c instead of sysdeps/unix/common/pause.c.
8939 2003-03-14  Alexandre Oliva  <aoliva@redhat.com>
8941         * sysdeps/mips/fpu/bits/mathdef.h: New.
8942         (__NO_LONG_DOUBLE_MATH): Define for o32.
8944         * sysdeps/mips/sys/asm.h: Formatting changes.
8945         (PTR, PTRSIZE, PTRLOG): Adjust for all 3 ABIs.
8946         (CPADD): Define for all of them.
8947         (SETUP_GP, SETUP_GPX, SETUP_GPX_L, SAVE_GP, SETUP_GP64,
8948         SETUP_GPX64, SETUP_GPX64_L, RESTORE_GP64, USE_ALT_CP,
8949         NARGSAVE): Define per ABI spec.
8950         (END): Don't redefine.
8951         (LONG_SLL, LONG_SLLV, LONG_SRL, LONG_SRLV, LONG_SRA,
8952         LONG_SRAV): Remove duplicate definitions.
8953         (PTR_ADD, PTR_ADDI, PTR_ADDU, PTR_ADDIU, PTR_SUB, PTR_SUBI,
8954         PTR_SUBU, PTR_SUBIU, PTR_L, PTR_S, PTR_SLL, PTR_SLLV, PTR_SRL,
8955         PTR_SRLV, PTR_SRA, PTR_SRAV, PTR_SCALESHIFT): Define for n32.
8956         (PTR_LA): Define for all 3 ABIs.
8958         * sysdeps/mips/dl-machine.h: Include sys/asm.h.
8959         (elf_machine_matches_host): Prevent linking of o32 and n32
8960         together.
8961         (elf_machine_dynamic): Document assumption on $gp.
8962         (STRINGXP, STRINGXV, STRINGV_): New macros.
8963         (elf_machine_load_address): Use them to stringize PTR_LA and
8964         PTR_SUBU.
8965         (ELF_DL_FRAME_SIZE, ELF_DL_SAVE_ARG_REGS,
8966         ELF_DL_RESTORE_ARG_REGS, IFABIO32): New macros used in...
8967         (_dl_runtime_resolve): Adjust it for all 3 ABIs.
8968         (__dl_runtime_resolve): Cast the symtab initializer to the
8969         right type.
8970         (RTLD_START): Use it.  Adjust it for all 3 ABIs.
8971         (elf_machine_rel): Mark as always_inline in RTLD_BOOTSTRAP.
8972         Handle 64-bit R_MIPS_REL composite relocation and accept
8973         R_MIPS_64 relocations to shift addend size to 64 bits.
8974         Document assumption regarding local GOT entries.  Document
8975         backward-compatibility departing from the ABI behavior in
8976         applying relocations that reference section symbols, no longer
8977         used.  Support relocations to mis-aligned offsets.
8978         * sysdeps/mips/mips64/dl-machine.h: Deleted, obsolete.
8980         * sysdeps/unix/sysv/linux/mips/readelflib.c: New file.
8982         * sysdeps/unix/sysv/linux/mips/kernel_sigaction.h
8983         (_KERNEL_NSIG_BPW): Define in terms of _MIPS_SZLONG.
8984         * sysdeps/unix/sysv/linux/mips/sigaction.c: Define restore and
8985         restore_rt functions.  Use them.
8987         * sysdeps/unix/sysv/linux/mips/sys/tas.h (_test_and_set): Don't
8988         .set mips2 on new abis.
8990 2003-03-13  Ulrich Drepper  <drepper@redhat.com>
8992         * posix/getconf.c: Recognize POSIX2_SYMLINKS.
8993         * sysdeps/generic/bits/confname.h: Define _PC_2_SYMLINKS.
8994         * sysdeps/posix/fpathconf.c: Handle _PC_2_SYMLINKS.
8995         * sysdeps/posix/pathconf.c: Likewise.
8996         * sysdeps/unix/sysv/linux/fpathconf.c: Likewise.
8997         * sysdeps/unix/sysv/linux/pathconf.c: Likewise.
8998         * sysdeps/unix/sysv/linux/pathconf.h: Define statfs_symlinks.
9000         * sysdeps/unix/sysv/linux/linux_fsinfo.h: Define some more magic
9001         words.
9003 2003-03-14  Alexandre Oliva  <aoliva@redhat.com>
9005         * include/gmp.h: Include/gmp-mparam.h.
9006         * stdlib/strtod.c: Include gmp-mparam.h before gmp.h and
9007         gmp-impl.h.
9009         * elf/dl-conflict.c: Don't compile _dl_resolve_conflicts if
9010         ELF_MACHINE_NO_RELA is set.
9011         * elf/rtld.c (dl_main): No prelink support for REL-only.
9013         * sysdeps/generic/ldconfig.h (FLAG_MIPS64_LIBN32,
9014         FLAG_MIPS64_LIBN64): Define.
9015         * elf/cache.c (print_entry): Handle mips64 n32 and n64.
9017         * sysdeps/mips/memcpy.S: Map t0-3 to a4-7 on new abis.
9018         * sysdeps/mips/memset.S: Likewise.
9019         * sysdeps/mips/sys/regdef.h: Alias a4-7 or t0-3 to $8-11
9020         depending on the ABI.
9022         * sysdeps/mips/atomicity.h (exchange_and_add, atomic_add):
9023         Don't .set mips2 on new abi.
9024         (compare_and_swap): Likewise.  Support 64-bit longs on n64.
9026         * stdlib/fpioconst.h: Include gmp.h with angle brackets.
9028 2003-03-13  Roland McGrath  <roland@redhat.com>
9030         * elf/dl-load.c (_dl_map_object_from_fd): Bail if no PT_LOAD phdrs
9031         found.  Reported by Alexandre Oliva <aoliva@redhat.com>.
9033 2003-03-13  Alexandre Oliva  <aoliva@redhat.com>
9035         * stdio-common/_itoa.c (_itoa_base_table): Make 64-bit
9036         literals long long.
9037         * stdlib/fpioconst.c: Likewise.
9038         * stdlib/strtod.c: Likewise.
9040         * sysdeps/mips/add_n.S: Use L macro for local labels.
9041         * sysdeps/mips/addmul_1.S: Likewise.
9042         * sysdeps/mips/lshift.S: Likewise.
9043         * sysdeps/mips/memcpy.S: Likewise.
9044         * sysdeps/mips/memset.S: Likewise.
9045         * sysdeps/mips/mul_1.S: Likewise.
9046         * sysdeps/mips/rshift.S: Likewise.
9047         * sysdeps/mips/sub_n.S: Likewise.
9048         * sysdeps/mips/submul_1.S: Likewise.
9049         * sysdeps/mips/mips64/add_n.S: Likewise.
9050         * sysdeps/mips/mips64/addmul_1.S: Likewise.
9051         * sysdeps/mips/mips64/lshift.S: Likewise.
9052         * sysdeps/mips/mips64/mul_1.S: Likewise.
9053         * sysdeps/mips/mips64/rshift.S: Likewise.
9054         * sysdeps/mips/mips64/sub_n.S: Likewise.
9055         * sysdeps/mips/mips64/submul_1.S: Likewise.
9056         * sysdeps/unix/mips/sysdep.h: Define L() according to ABI
9057         conventions.  Define END as in sys/asm.h.
9058         * sysdeps/unix/mips/sysdep.S: Likewise.
9059         * sysdeps/unix/mips/wait.S: Likewise.
9060         * sysdeps/unix/sysv/linux/mips/clone.S: Likewise.
9062         * sysdeps/ieee754/dbl-64/dbl2mpn.c (__mpn_extract_double):
9063         Cast shifted values that may be too narrow to mp_limb_t.
9064         * sysdeps/ieee754/dbl-64/mpn2dbl.c (__mpn_construct_double):
9065         Likewise.
9066         * sysdeps/ieee754/flt-32/mpn2flt.c (__mpn_construct_float):
9067         Likewise.
9068         * sysdeps/ieee754/ldbl-128/ldbl2mpn.c
9069         (__mpn_extract_long_double): Likewise.
9070         * sysdeps/ieee754/ldbl-128/mpn2ldbl.c
9071         (__mpn_construct_long_double): Likewise.
9072         * sysdeps/ieee754/ldbl-96/ldbl2mpn.c
9073         (__mpn_extract_long_double): Likewise.
9074         * sysdeps/ieee754/ldbl-96/mpn2ldbl.c
9075         (__mpn_construct_long_double): Likewise.
9077 2003-03-13  Roland McGrath  <roland@redhat.com>
9079         * elf/Makefile ($(objpfx)librtld.mk): Tweak regexp so that one-line
9080         entries in the map file match too.
9082 2003-03-13  Guido Guenther  <agx@sigxcpu.org>
9084         * sysdeps/unix/sysv/linux/mips/clone.S: introduce and use local
9085         label .Lthread_start since current binutils don't allow branches
9086         to globally visible symbols.
9088 2003-03-13  Jakub Jelinek  <jakub@redhat.com>
9090         * sysdeps/unix/sysv/linux/ia64/sysdep.h (BREAK_INSN_1, BREAK_INSN,
9091         ASM_OUTARGS_0, ASM_OUTARGS_1, ASM_OUTARGS_2, ASM_OUTARGS_3,
9092         ASM_OUTARGS_4, ASM_OUTARGS_5, ASM_OUTARGS_6): Define.
9093         (INTERNAL_SYSCALL, INLINE_SYSCALL): Use it.  Make syscall arguments
9094         clobbered by the syscall.
9095         (ASM_ARGS_1, ASM_ARGS_2, ASM_ARGS_3, ASM_ARGS_4, ASM_ARGS_5,
9096         ASM_ARGS_6): Change constraints from r to index of corresponding
9097         output register.
9098         * sysdeps/unix/sysv/linux/ia64/clone2.S (__clone2): Swap
9099         ptid and ctid to match kernel.
9100         * sysdeps/unix/sysv/linux/ia64/system.c (FORK): Likewise.
9102 2003-03-12  Steven Munroe  <sjmunroe@us.ibm.com>
9104         * sysdeps/powerpc/powerpc64/elf/configure.in: Remove
9105         AC_DEFINE(PI_STATIC_AND_HIDDEN).  Not supported for PowerPC64.
9106         * sysdeps/powerpc/powerpc64/elf/configure: Regenerated.
9108 2003-03-11  Roland McGrath  <roland@redhat.com>
9110         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela):
9111         Check SYM_MAP rather than SYM as definedness check.
9112         Handle R_PPC64_ADDR32, R_PPC64_ADDR30, and R_PPC64_REL64 relocs.
9113         Don't handle R_PPC64_REL24 reloc.
9114         Mostly from Steven Munroe <sjmunroe@us.ibm.com>.
9116         * sysdeps/powerpc/powerpc64/dl-machine.h
9117         [USE_TLS] (elf_machine_type_class): Match all the TLS relocs in a
9118         block, so we cover all the TPREL16* flavors without 6 ||s.
9119         [USE_TLS] (elf_machine_tprel): New function.
9120         (elf_machine_rela) [USE_TLS]: Use elf_machine_tprel for TPREL64 reloc,
9121         and handle TPREL16 relocs too.  Return rather than break for DTPREL64.
9122         Mostly from Steven Munroe <sjmunroe@us.ibm.com>.
9124 2003-03-11  Ralf Baechle  <ralf@linux-mips.org>
9126         * sysdeps/unix/sysv/linux/mips/clone.S (__thread_start): Use jal
9127         instead of jalr to invoke subroutine so restoring the $gp register
9128         will work properly.
9130 2003-03-11  Martin Schwidefsky  <schwidefsky@de.ibm.com>
9132         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (__NR_pread64): Define
9133         to __NR_pread if not defined.
9134         (__NR_pwrite64): Define to __NR_pwrite if not defined.
9136 2003-03-11  Jakub Jelinek  <jakub@redhat.com>
9138         * sysdeps/unix/sysv/linux/ia64/system.c: New file.
9139         * sysdeps/unix/sysv/linux/kernel-features.h
9140         (__ASSUME_CLONE_THREAD_FLAGS): Define for IA-64 and s390* with
9141         kernel >= 2.5.64.
9143 2003-03-11  Jakub Jelinek  <jakub@redhat.com>
9145         * sysdeps/generic/dl-sysdep.c (_dl_important_hwcaps): If CNT == 1,
9146         allocate space even for the trailing '/'.
9147         Reported by John Reiser <jreiser@BitWagon.com>.
9149         * sysdeps/unix/sysv/linux/ia64/sysdep.h (LOAD_ARGS_6, ASM_ARGS_6,
9150         ASM_CLOBBERS_6): Define.
9151         (ASM_CLOBBERS_5): Use ASM_CLOBBERS_6.
9152         * sysdeps/unix/sysv/linux/ia64/clone2.S (__clone2): Reorder arguments
9153         to match IA-32 order.
9154         * sysdeps/unix/sysv/linux/i386/clone.S: Fix comment.
9156 2003-03-10  Steven Munroe  <sjmunroe@us.ibm.com>
9158         * sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S: Don't clobber R7.
9159         Copy extra params for NPTL to registers used in clone syscall.
9161 2003-03-10  Martin Schwidefsky  <schwidefsky@de.ibm.com>
9163         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Correct system
9164         call names for pread and pwrite.
9166 2003-03-10  Roland McGrath  <roland@redhat.com>
9168         * dlfcn/Makefile (libdl-routines): Add dladdr1.
9169         * dlfcn/dladdr1.c: New file.
9170         * dlfcn/dlfcn.h [__USE_GNU]: Declare dladdr1.
9171         [__USE_GNU] (RTLD_DL_SYMENT, RTLD_DL_LINKMAP): New enum constants.
9172         * elf/dl-addr.c (_dl_addr): Take new args, a struct link_map ** and
9173         a const ElfNN_Sym ** to fill in.
9174         * include/dlfcn.h: Update decl.  Include <link.h>.
9175         * dlfcn/dladdr.c (dladdr): Update caller.
9176         * malloc/mtrace.c (tr_where): Likewise.
9177         * sysdeps/generic/elf/backtracesyms.c: Likewise.
9178         * sysdeps/generic/elf/backtracesymsfd.c: Likewise.
9179         * dlfcn/Versions (libdl: GLIBC_2.3.3): New set, add dladdr1.
9180         * Versions.def (libdl): Define GLIBC_2.3.3 set.
9182         * sysdeps/unix/make-syscalls.sh: Generate $(compile-syscall) for
9183         assembler command.
9184         * sysdeps/unix/Makefile (compile-syscall): New variable.
9185         Pass -g0 to compiler for assembling syscall stubs from stdin.
9187         * sysdeps/i386/sysdep.h [HAVE_CPP_ASM_DEBUGINFO]
9188         (STABS_CURRENT_FILE, STABS_CURRENT_FILE1, STABS_FUN, STABS_FUN_END):
9189         Define these to do nothing.
9191         * configure.in: New check for -g on .S files.
9192         * configure: Regenerated.
9193         * config.make.in (have-cpp-asm-debuginfo): New variable.
9194         * config.h.in (HAVE_CPP_ASM_DEBUGINFO): New #undef.
9195         * Makeconfig (ASFLAGS): New variable, if undefined and
9196         $(have-cpp-asm-debuginfo), take options matching -g% from $(CFLAGS).
9197         * Makerules (compile.S, COMPILE.S): Use $(ASFLAGS).
9199 2003-03-09  Roland McGrath  <roland@redhat.com>
9201         * sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S: Take 3 new args
9202         used by NPTL on new kernels.  From Paul Mackerras <paulus@samba.org>.
9204 2003-03-09  Ulrich Drepper  <drepper@redhat.com>
9206         * po/fi.po: Update from translation team.
9207         * po/ca.po: Likewise.
9208         * po/da.po: Likewise.
9210 2003-03-08  Ulrich Drepper  <drepper@redhat.com>
9212         * rt/tst-aio7.c (do_test): Change BYTES into a #define.
9214 2003-03-07  Ulrich Drepper  <drepper@redhat.com>
9216         * rt/tst-aio7.c (do_test): Give BUFF permanent extent, too.
9218         * sysdeps/powerpc/fpu/w_sqrt.c: Fix comment.
9220 2003-03-07  Roland McGrath  <roland@redhat.com>
9222         * sysdeps/s390/s390-32/sysdep.h (L): Use .Lfoo instead of foo.
9223         * sysdeps/s390/s390-64/sysdep.h (L): Likewise.
9225 2003-03-04  Guido Guenther  <agx@sigxcpu.org>
9227         * sysdeps/unix/sysv/linux/mips/syscalls.list: Remove unneeded
9228         stubs, we have INLINE_SYSCALL.
9229         * sysdeps/unix/sysv/linux/mips/bits/mman.h: Define MAP_POPULATE,
9230         MAP_NONBLOCK.
9232 2003-03-06  Roland McGrath  <roland@redhat.com>
9234         * rt/tst-aio7.c (do_test): Revert last change.  Instead, give CB1
9235         permanent extent and add a comment about testing its implicit teardown.
9237 2003-03-06  Martin Schwidefsky  <schwidefsky@de.ibm.com>
9239         * rt/tst-aio7.c (do_test): Cancel i/o on CB1 before it's out of scope.
9241 2003-03-05  Ulrich Drepper  <drepper@redhat.com>
9243         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage): Fix
9244         reversed __builtin_expect expectation.
9246 2003-03-05  Roland McGrath  <roland@redhat.com>
9248         * stdio-common/sscanf.c: Use prototype defn with ... syntax.
9249         * libio/swscanf.c: Likewise.
9250         * libio/swprintf.c: Likewise.
9252 2003-03-04  Roland McGrath  <roland@redhat.com>
9254         * sysdeps/powerpc/powerpc64/dl-machine.h: Include <dl-tls.h>.
9255         (elf_machine_rela): Always use RESOLVE_MAP, needed for
9256         R_PPC64_JMP_SLOT as well as TLS cases.
9257         (BIT_INSERT): Move parenthesis where it ought to have been.
9258         Reported by Steven Munroe <sjmunroe@us.ibm.com>.
9260         * posix/confstr.c (confstr): Correct STRING_LEN values for
9261         _CS_GNU_LIBC_VERSION and _CS_GNU_LIBPTHREAD_VERSION, add missing
9262         break.  Reported by Alexandre Julliard <julliard@winehq.com>.
9264 2003-03-04  Jakub Jelinek  <jakub@redhat.com>
9266         * sysdeps/ia64/fpu/libm-test-ulps: Regenerated.
9268 2003-03-04  Ulrich Drepper  <drepper@redhat.com>
9270         * sysdeps/unix/sysv/linux/x86_64/clone.S: Add support for the new
9271         clone parameters.
9273         * po/sv.po: Update from translation team.
9275 2003-03-04  Andreas Jaeger  <aj@suse.de>
9276             Ulrich Drepper  <drepper@redhat.com>
9278         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Fix comments.
9280 2003-03-03  Ulrich Drepper  <drepper@redhat.com>
9282         * sysdeps/generic/dl-sysdep.h: Add double include protection.
9284         * po/tr.po: Update from translation team.
9286         * elf/dl-load.c (_dl_map_object_from_fd): Determine whether there
9287         are holes between the segments.  Only call mprotect to set
9288         proection to PROT_NONE if there are some.
9290         * elf/dl-load.c (struct filebuf): Actually use FILEBUF_SIZE.
9291         Update comment.
9293         * include/sched.h (__clone2): Use ... instead of adding all the
9294         new parameters.
9296 2003-03-03  Roland McGrath  <roland@redhat.com>
9298         * elf/dl-load.c (struct filebuf): Fix typo in last change.
9300         * sysdeps/powerpc/powerpc32/elf/configure.in: Don't define
9301         PI_STATIC_AND_HIDDEN.
9303 2003-03-03  Ian Wienand  <ianw@gelato.unsw.edu.au>
9305         * sysdeps/unix/sysv/linux/ia64/clone2.S: Update to take extra clone
9306         flags.
9307         * include/sched.h: Update clone2 prototype.
9309 2003-03-03  Andreas Jaeger  <aj@suse.de>
9311         * math/tgmath.h (__TGMATH_UNARY_REAL_RET_ONLY): New definition.
9312         (llrint): Use it to correct return type.
9313         (lrint): Likewise.
9314         (lround): Likewise.
9315         (llround): Likewise.
9317 2003-03-03  Ulrich Drepper  <drepper@redhat.com>
9319         * elf/dl-load.c (struct filebuf): For 64-bit platforms use 640
9320         byte filebuf size.
9322         * libio/fileops.c (_IO_new_file_fopen): Close stillborn descriptor
9323         if ccs parameter isn't valid.  Reported by Andreas Schwab.
9325 2003-03-03  Martin Schwidefsky  <schwidefsky@de.ibm.com>
9327         * sysdeps/unix/sysv/linux/s390/s390-32/syscall.S (syscall): Add support
9328         for system call numbers > 255.
9329         * sysdeps/unix/sysv/linux/s390/s390-32/syscall.h (DO_CALL,
9330         INLINE_SYSCALL, INTERNAL_SYSCALL_DIRECT, INTERNAL_SYSCALL_SVC0,
9331         INTERNAL_SYSCALL): Likewise.
9332         * sysdeps/unix/sysv/linux/s390/s390-64/syscall.S (syscall): Likewise.
9333         * sysdeps/unix/sysv/linux/s390/s390-64/syscall.h (DO_CALL,
9334         INLINE_SYSCALL, INTERNAL_SYSCALL_DIRECT, INTERNAL_SYSCALL_SVC0,
9335         INTERNAL_SYSCALL): Likewise.
9337 2003-03-03  Martin Schwidefsky  <schwidefsky@de.ibm.com>
9339         * sysdeps/generic/dl-tls.c (_dl_deallocate_tls): Don't free the dtv
9340         array if it is the initial dtv.
9342 2003-03-03  Ulrich Drepper  <drepper@redhat.com>
9344         * po/es.po: Update from translation team.
9345         * po/fr.po: Likewise.
9346         * po/gl.po: Likewise.
9347         * po/sk.po: Likewise.
9348         * po/sv.po: Likewise.
9350         * sysdeps/unix/sysv/linux/syscalls.list: Add remap_file_pages entry.
9351         * misc/sys/mman.h: Add prototype for remap_file_pages.
9352         * sysdeps/generic/remap_file_pages.c: New file.
9353         * misc/Makefile (routines): Add remap_file_pages.
9354         * misc/Versions [libc:GLIBC_2.3.3]: Add remap_file_pages.
9356         * sysdeps/unix/sysv/linux/x86_64/bits/mman.h: Define MAP_POPULATE
9357         and MAP_NONBLOCK.
9358         * sysdeps/unix/sysv/linux/s390/bits/mman.h: Likewise.
9359         * sysdeps/unix/sysv/linux/powerpc/bits/mman.h: Likewise
9360         * sysdeps/unix/sysv/linux/m68k/bits/mman.h: Likewise.
9361         * sysdeps/unix/sysv/linux/arm/bits/mman.h: Likewise.
9362         * sysdeps/unix/sysv/linux/ia64/bits/mman.h: Likewise.
9363         * sysdeps/unix/sysv/linux/hppa/bits/mman.h: Likewise.
9364         * sysdeps/unix/sysv/linux/alpha/bits/mman.h: Likewise.
9365         * sysdeps/unix/sysv/linux/i386/bits/mman.h: Likewise.
9367 2003-03-03  Roland McGrath  <roland@redhat.com>
9369         * sysdeps/ia64/dl-fptr.c (__ia64_make_fptr): Revert last change.
9370         * sysdeps/ia64/dl-machine.h: Likewise.
9371         * sysdeps/ia64/dl-symaddr.c (_dl_symbol_address): Remove const from
9372         argument type.
9373         * sysdeps/ia64/dl-lookupcfg.h: Update decl.
9375         * sysdeps/wordsize-64/strtol_l.c (strtoll_l): Define as weak alias.
9376         * sysdeps/wordsize-64/strtoul_l.c (strtoull_l): Define as weak alias.
9377         * locale/Versions (libc: GLIBC_2.3): Move those to ...
9378         * sysdeps/wordsize-32/Versions (libc: GLIBC_2.3): ... here, new file.
9379         * sysdeps/wordsize-64/Versions (libc: GLIBC_2.3.3) Likewise.
9380         * Versions.def (libc): Add GLIBC_2.3.3 set.
9382         * sysdeps/ia64/dl-fptr.c (__ia64_make_fptr): Add const to MAP arg.
9383         * sysdeps/ia64/dl-machine.h: Update decl.
9385 2003-03-03  Andreas Jaeger  <aj@suse.de>
9387         * sysdeps/unix/clock_settime.c (HANDLE_REALTIME): Add missing brace.
9389 2003-03-02  Roland McGrath  <roland@redhat.com>
9391         * scripts/abilist.awk: Reject data items with apparent 0 size.
9393         * scripts/merge-abilist.awk: Restore hack to elide pattern foo.*/bar
9394         after foo.* as if it were a duplicate.
9396         * sysdeps/unix/sysv/linux/ia64/brk.S: Add .type and .size for __curbrk.
9398 2003-03-02  Ulrich Drepper  <drepper@redhat.com>
9400         * elf/dl-load.c (struct filebuf): Reduce buf array to 512 bytes.
9402         * sysdeps/generic/bits/time.h: Define CLOCK_MONOTONIC.
9403         * sysdeps/posix/clock_getres.c: Define code for CLOCK_REALTIME only
9404         if not already defined.  Use SYSDEP_GETRES to allow other files to
9405         provide alternative implementations.
9406         * sysdeps/unix/sysv/linux/clock_getres.c: New file
9407         * sysdeps/unix/clock_gettime.c: Define code for CLOCK_REALTIME only
9408         if not already defined.  Use SYSDEP_GETTIME to allow other files to
9409         provide alternative implementations.
9410         * sysdeps/unix/sysv/linux/clock_gettime.c: New file.
9411         * sysdeps/unix/clock_settime.c: Define code for CLOCK_REALTIME only
9412         if not already defined.  Use SYSDEP_GETTIME to allow other files to
9413         provide alternative implementations.
9414         * sysdeps/unix/sysv/linux/clock_settime.c: New file.
9415         * sysdeps/unix/clock_nanosleep.c: Use SYSDEP_NANOSLEEP to allow
9416         other files to provide alternative implementations.  Rearrange
9417         tests for invalid parameters.
9418         * sysdeps/unix/sysv/linux/clock_nanosleep.c: New file.
9419         * sysdeps/unix/sysv/linux/sysconf.c: New file.
9420         * sysdeps/unix/sysv/linux/kernel-features.h: Define
9421         __ASSUME_POSIX_TIMERS for Linux 2.5.63 and up.
9422         * sysdeps/unix/sysv/linux/bits/posix_opt.h: Define
9423         _POSIX_MONOTONIC_CLOCK.
9425 2003-03-02  Roland McGrath  <roland@redhat.com>
9427         * scripts/merge-abilist.awk: More checks for bogus input.
9428         Uniquify duplicate config names.
9430         * scripts/abilist.awk: Don't distinguish weak symbols in normal output.
9432         * sysdeps/powerpc/powerpc32/dl-machine.c (_dl_reloc_overflow): Renamed
9433         from dl_reloc_overflow, make global.
9434         (__process_machine_rela): Update callers.
9435         * sysdeps/powerpc/powerpc32/dl-machine.h: Declare _dl_reloc_overflow.
9436         Add attribute_hidden to __process_machine_rela decl.
9437         (elf_machine_type_class, elf_machine_rela): Handle 16-bit TLS relocs.
9439         * sysdeps/generic/libc-start.c (__libc_start_main): Don't assign const
9440         variable.
9442         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_fixup_plt):
9443         Don't use weak_extern for dl_rtld_map.  Instead check only if [SHARED].
9444         (elf_machine_rela): Clean up.
9446         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Clean up.
9448         PowerPC TLS support contributed by Paul Mackerras <paulus@samba.org>.
9449         * sysdeps/powerpc/powerpc32/elf/configure.in: New file.
9450         * sysdeps/powerpc/powerpc32/elf/configure: New generated file.
9451         * elf/tls-macros.h [__powerpc__ && !__powerpc64__]
9452         (TLS_LE, TLS_IE, TLS_LD, TLS_GD): Define them.
9453         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Support
9454         new relocs for TLS.
9456         * sysdeps/powerpc/dl-tls.h (TLS_TP_OFFSET, TLS_DTV_OFFSET): Move these
9457         macros out of [SHARED].
9458         (TLS_TPREL_VALUE, TLS_DTPREL_VALUE): New macros.
9460         * elf/elf.h: Define R_PPC_* relocs for TLS support.
9461         Clean up R_PPC64_* macro definition comments.
9463         * configure.in: In "running configure fragment for" message,
9464         omit $srcdir from the name if we prepended it.
9465         * configure: Regenerated.
9467         * elf/dl-reloc.c (allocate_static_tls): Fix calculations.
9468         From Jakub Jelinek <jakub@redhat.com>.
9470         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Revert last change,
9471         which duplicated the O_DIRECT defn.
9473 2003-03-01  GOTO Masanori  <gotom@debian.or.jp>
9475         * stdlib/stdlib.h: Add missing __USE_BSD enclosure for BSD derived
9476         random functions.
9478 2003-03-01  Andreas Schwab  <schwab@suse.de>
9480         * resolv/Makefile (tests): Don't depend on
9481         $(objpfx)mtrace-tst-leaks when cross compiling.
9483         * sysdeps/m68k/dl-machine.h (_dl_start_user): Access
9484         __libc_stack_end through GOT since it is a global symbol.
9486 2003-03-01  GOTO Masanori  <gotom@debian.or.jp>
9488         * argp/argp.h: Fix a typo.
9489         Reported by H.S.Teoh <hsteoh@quickfur.ath.cx>.
9491         * manual/terminal.texi: Fix cfmakeraw() definition from int to void.
9493 2003-02-27  Pat Rankin  <rankin@pactechdata.com>
9495         * posix/regexec.c (proceed_next_node): Cast re_string_get_buffer to
9496         char *.
9497         (get_subexp): Likewise.
9499 2003-03-01  GOTO Masanori  <gotom@debian.or.jp>
9501         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (O_DIRECT): Define.
9503 2003-02-26  Steven Munroe  <sjmunroe@us.ibm.com>
9505         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h (O_DIRECT): Define.
9507 2003-02-27  Roland McGrath  <roland@redhat.com>
9509         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela): Remove
9510         special case for dl_rtld_map in R_PPC64_RELATIVE; it's harmless to
9511         repeat it and avoids the test for the common case.
9512         Clean up and fix calculations for TLS relocs.
9514         * sysdeps/powerpc/powerpc64/dl-tls.h: Moved to ...
9515         * sysdeps/powerpc/dl-tls.h: ... here.
9516         (TLS_TP_OFFSET): New macro.
9518         * sunrpc/svc_udp.c (svcudp_recv): Add a cast to last change.
9520 2003-02-27  Ulrich Drepper  <drepper@redhat.com>
9522         * sysdeps/i386/fpu/libm-test-ulps: Increase ULPs for yn due to
9523         code generation changes in recent gcc.
9525 2003-02-26  Steven Munroe  <sjmunroe@us.ibm.com>
9527         * sysdeps/powerpc/fpu/fpu_control.h (_FPU_GETCW, _FPU_SETCW):
9528         Rename argument to avoid symbol conflict.
9530         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h
9531         [__USE_GNU] (O_DIRECT): New macro.
9533 2003-02-24  David Mosberger  <davidm@hpl.hp.com>
9535         * sysdeps/unix/sysv/linux/ia64/sysdep.S (__syscall_error): Fix
9536         unwind info.
9538 2003-02-27  Ulrich Drepper  <drepper@redhat.com>
9540         * resolv/res_libc.c [USE___THREAD] (_res): Don't need the
9541         initializer anymore now that res_thread_freeres is more careful.
9543         * sunrpc/svc_udp.c (svcudp_recv): Remove all control messages
9544         except the PKTINFO.  Reset interface in PKTINFO.
9545         Patch by Neil Brown <neilb@cse.unsw.edu.au> [PR libc/4973].
9547 2003-02-25  Steven Munroe  <sjmunroe@us.ibm.com>
9549         * elf/elf.h: Add new R_PPC64_* relocs for TLS.
9550         * elf/tls-macros.h [__powerpc64__] (TLS_LE, TLS_IE, TLS_LD, TLS_GD):
9551         Define.
9552         * sysdeps/powerpc/powerpc64/elf/configure.in: New file.
9553         * sysdeps/powerpc/powerpc64/elf/configure: New file (generated).
9554         * sysdeps/powerpc/powerpc64/dl-machine.h: Support new TLS relocs.
9555         * sysdeps/powerpc/powerpc64/dl-tls.h: New file.
9557         * sysdeps/powerpc/elf/libc-start.c (__libc_start_main):
9558         Do DL_SYSDEP_OSCHECK here, matching 2002-12-01 change to generic file.
9560 2003-02-25  Andreas Jaeger  <aj@suse.de>
9562         * manual/memory.texi (Malloc Tunable Parameters): Clarify
9563         behaviour of M_MMAP_THRESHOLD.
9565 2003-02-25  Roland McGrath  <roland@redhat.com>
9567         * resolv/res_init.c (res_thread_freeres): Bail out if _res.nscount is
9568         zero, inidicating _res was not initialized yet.
9570 2003-02-24  Ulrich Drepper  <drepper@redhat.com>
9572         * sysdeps/unix/sysv/linux/ttyname_r.c (__ttyname_r): Remove EACCES
9573         test.
9575 2003-02-24  Roland McGrath  <roland@redhat.com>
9577         * sysdeps/posix/pause.c: Add LIBC_CANCEL_HANDLED.
9579 2003-02-23  Roland McGrath  <roland@redhat.com>
9581         * sysdeps/posix/pause.c: New file.
9582         * sysdeps/unix/common/pause.c: File removed.
9584 2003-02-23  Ulrich Drepper  <drepper@redhat.com>
9586         * sysdeps/generic/bits/confname.h: Remove #ifs.
9588         * posix/Makefile (CFLAGS-regex.c): Remove RE_ENABLE_I18N definition.
9589         * posix/regex_internal.h (RE_ENABLE_I18N): Pretty printing.
9591         * resolv/res_libc.c [USE___THREAD] (_res): Initialize _vcsock
9592         element to -1.
9594 2003-02-22  Ulrich Drepper  <drepper@redhat.com>
9596         * sysdeps/generic/dl-sysdep.c: Avoid warning.
9598 2003-02-22  Roland McGrath  <roland@redhat.com>
9600         * resolv/tst-leaks.c: New file by Daniel Jacobowitz <drow@mvista.com>.
9601         * resolv/Makefile (tests): Add tst-leaks.
9602         ($(objpfx)tst-leaks): Depend on $(objpfx)libresolv.so.
9603         (tst-leaks-ENV): New variable.
9604         ($(objpfx)mtrace-tst-leaks): New target.
9605         (tests): Depend on it.
9607         * include/libc-internal.h: Declare __libc_thread_freeres.
9609         * Makerules: Fix last change to use $($(subdir)-version) when set.
9611         * Makerules (install-lib-nosubdir): Depend on installed
9612         libfoo-X.Y.Z.so and libfoo.so.NN files so they are installed
9613         regardless of the libfoo.so target's dependencies.
9615         * MakeTAGS (sub-make-vars): New variable, includes generating=t.
9616         Use that in $(MAKE) calls.
9618 2003-02-22  Ulrich Drepper  <drepper@redhat.com>
9620         * catgets/gencat.c (read_input_file): Collision between
9621         auto-assigned numbers and user-defined nubmers is not fatal.
9622         Handle it.
9623         Patch by Michael M. Lampkin <michael.lampkin@ieee.org>.
9624         * catgets/Makefile: Add rules to run test2.msg test.
9625         * catgets/test2.msg: New file.
9627         * catgets/gencat.c (main): Return 1 if messages have been printed.
9629         * iconv/iconv_prog.c (main): Unify messages.
9631         * stdlib/strtod.c (INTERNAL): Remove bogus clearing of second word
9632         when shifting retval.
9633         * stdlib/tst-strtod.c (main): Add strtold test case.
9634         Reported by Fred J. Tydeman <tydeman@tybor.com>.
9636 2003-02-21  Roland McGrath  <roland@redhat.com>
9638         * malloc/thread-freeres.c: Conditionalize on _LIBC_REENTRANT.
9639         * sunrpc/rpc_thread.c: Likewise for text_set_element use.
9640         (__rpc_thread_destroy): Add it to __libc_subfreeres too.
9642         * include/resolv.h: Add libc_hidden_proto for __res_nclose.
9643         * resolv/res_init.c (__res_nclose): Add libc_hidden_def.
9644         (res_thread_freeres): New function, on __libc_thread_subfreeres and
9645         __libc_subfreeres.
9647         * malloc/Versions (libc: GLIBC_PRIVATE): Add __libc_thread_freeres.
9648         * malloc/thread-freeres.c: New file.
9649         * malloc/Makefile (aux): Add it.
9650         * sunrpc/Versions (libc: GLIBC_PRIVATE): Removed.
9651         * sunrpc/rpc_thread.c (__rpc_thread_destroy): Put in special section
9652         "__libc_thread_freeres_fn" and add to __libc_thread_subfreeres set.
9654         * sysdeps/unix/sysv/linux/i386/geteuid.c (__geteuid): Typo fix.
9655         * sysdeps/unix/sysv/linux/i386/getgid.c (__getgid): Typo fix.
9657 2003-02-21  Roland McGrath  <roland@frob.com>
9659         * sysdeps/mach/hurd/opendir.c (__opendir): Use O_NONBLOCK in open.
9661         * iconvdata/Makefile (tests): Add bug-iconv3 only if
9662         [$(have-thread-library) = yes].
9664 2003-02-21  Ulrich Drepper  <drepper@redhat.com>
9666         * sysdeps/unix/sysv/linux/bits/signum.h (__SIGRTMAX): Define as _NSIG.
9668         * sysdeps/unix/sysv/linux/i386/getuid.c: Use INTERNAL_SYSCALL and do
9669         not chechk for errors (unless testing for 32bit variant).
9670         * sysdeps/unix/sysv/linux/i386/getgid.c: Likewise.
9671         * sysdeps/unix/sysv/linux/i386/geteuid.c: Likewise.
9672         * sysdeps/unix/sysv/linux/i386/getegid.c: Likewise.
9674 2003-02-21  Jakub Jelinek  <jakub@redhat.com>
9676         * sysdeps/x86_64/dl-machine.h (elf_machine_rela) <R_X86_64_PC32>:
9677         Check for signed overflow, not unsigned.
9679         * sysdeps/sparc/sparc64/elf/configure.in: New file.
9680         * sysdeps/unix/sysv/linux/sparc/sparc64/Makefile (sysdep-CFLAGS):
9681         Use -fcall-used-g6, not -fcall-used-g7.
9683 2003-02-21  Andreas Jaeger  <aj@suse.de>
9685         * sysdeps/x86_64/fpu/fesetenv.c (fesetenv): Fix setting of default
9686         mode.
9688         * sysdeps/x86_64/fpu/fsetexcptflg.c (fesetexceptflag): Do not
9689         clear whole mxcsr but only exceptions.
9691 2003-02-21  Roland McGrath  <roland@redhat.com>
9693         * Makerules: Filter $(install-lib-ldscripts) out of list of targets
9694         for libfoo.so that need $(make-link) rules.
9696 2003-02-21  Roland McGrath  <roland@frob.com>
9698         * sysdeps/mach/hurd/bits/typesizes.h (__DEV_T_TYPE): Use __U32_TYPE
9699         to match existing struct stat layout in mig protocols.
9701 2003-02-20  Ulrich Drepper  <drepper@redhat.com>
9703         * version.h (VERSION): Bump to 2.3.2.
9705         * elf/Makefile (distribute): Add reldep9.c, tst-array1.exp,
9706         tst-array2.exp, tst-array4.exp, tst-array2dep.c, check-textrel.c,
9707         and dl-sysdep.h.
9708         * sysdeps/generic/Dist: Add sysdep-cancel.h.
9709         * sysdeps/powerpc/nofpu/Dist: Add soft-supp.h.
9710         * sysdeps/unix/Dist: Add s-proto-bp.S and s-proto-cancel.S.
9711         * sysdeps/unix/sysv/linux/Dist: Add pathconf.h.
9712         * sysdeps/unix/sysv/linux/i386/Dist: Add bp-thunk.h.
9713         * sysdeps/unix/sysv/linux/powerpc/powerpc64/Dist: Add fe_nomask.c and
9714         ucontext_i.h.
9715         * Makefile (distribute): Add include/stubs-prologue.h,
9716         include/gnu/stubs.h, scripts/merge-abilist.awk, and
9717         scripts/extract-abilist.awk.
9719 2003-02-20  Roland McGrath  <roland@redhat.com>
9721         * math/Makefile (distribute): Don't add generated files.
9723 2003-02-20  Ulrich Drepper  <drepper@redhat.com>
9725         * math/Makefile: Rearrange variable definitions slightly to get
9726         definition in the right order.
9728 2003-02-20  Roland McGrath  <roland@redhat.com>
9730         * Makerules: Clean up conditional around include of tls.make.
9731         * Make-dist: Export generating=t to prevent using that.
9732         (+distinfo): Likewise for $(shell $(MAKE) ...) runs.
9734 2003-02-20  Ulrich Drepper  <drepper@redhat.com>
9736         * inet/rcmd.c (rresvport_af): Avoid using invliad values.  Wrap
9737         around in search if port IPPORT_RESERVED/2 has been test.
9739 2003-02-20  Paolo Bonzini  <bonzini@gnu.org>
9741         * posix/regcomp.c: Remove inclusions.
9742         * posix/regexec.c: Likewise.
9743         * posix/regex_internal.c: Likewise.
9744         * posix/regex_internal.h: Add inclusions here.
9745         * posix/regex.c: Only include sys/types.h before regex.h.  Include
9746         regex_internal.h here.  Include regex_internal.c before regcomp.c
9747         and regexec.c (might expose more opportunities to the C compiler).
9749         * posix/regcomp.c (parse_expression): Fix construct rejected by SGI CC.
9751         * posix/regex_internal.h [!_LIBC] (__mempcpy): Fix typo.
9752         [!_LIBC] (__wcrtomb): New definition.
9753         [!_LIBC]: Conditionalize enabling of I18N on HAVE_WCSCOLL and
9754         HAVE_LOCALE_H as well.
9756 2003-02-20  Ulrich Drepper  <drepper@redhat.com>
9758         * sysdeps/unix/sysv/linux/tcsetattr.c (tcsetattr): Remove obsolete
9759         patch to check for system call errors.
9761 2002-07-24  Philip Blundell  <philb@gnu.org>
9763         * sysdeps/unix/sysv/linux/arm/ioperm.c (init_iosys): Yield ENODEV
9764         on unknown systems.
9766 2003-02-20  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
9768         * sysdeps/powerpc/powerpc32/atomicity.h: Remove compiler workaround.
9769         * sysdeps/unix/sysv/linux/kernel-features.h
9770         (__ASSUME_NEW_PRCTL_SYSCALL): Defined for ppc32 too.
9771         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fe_nomask.c: Use prctl
9772         if possible.
9773         * sysdeps/unix/sysv/linux/powerpc/powerpc32/vfork.S: Avoid short
9774         interprocedure branches.
9775         * sysdeps/powerpc/soft-fp/Dist (sim-full.c, fenv_const.c): Move to...
9776         * sysdeps/powerpc/nofpu/Dist: ...here.
9777         * sysdeps/unix/sysv/linux/powerpc/Dist (fe_nomask.c): Move to...
9778         * sysdeps/unix/sysv/linux/powerpc/powerpc32/Dist: ...here.
9779         * sysdeps/unix/sysv/linux/s390/s390-64/Dist (kernel_stat.h): Delete.
9780         * sysdeps/unix/sysv/linux/sparc/Dist (bits/utmpx.h): Delete.
9781         * sysdeps/unix/sysv/linux/x86_64/Dist (bits/utmpx.h): Delete.
9783 2003-02-18  Alan Modra  <amodra@bigpond.net.au>
9785         * sysdeps/powerpc/powerpc32/sysdep.h (HIDDEN_JUMPTARGET): Redefine.
9787 2003-02-20  Philip Blundell  <philb@gnu.org>
9789         * sysdeps/unix/sysv/linux/arm/sysdep.h (INLINE_SYSCALL): Add
9790         missing arguments to INTERNAL_SYSCALL_ERROR_P and
9791         INTERNAL_SYSCALL_ERRNO.
9793 2003-02-20  Martin Schwidefsky  <schwidefsky@de.ibm.com>
9795         * sysdeps/unix/sysv/linux/s390/s390-32/chown.c (__real_chown): Test
9796         for __ASSUME_32BITUIDS.
9798 2003-02-20  Andreas Schwab  <schwab@suse.de>
9800         * sysdeps/unix/sysv/linux/m68k/bits/mman.h: Add MADV_* and
9801         POSIX_MADV_* constants.
9803 2003-02-20  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
9805         * sysdeps/unix/sysv/linux/sh/pread.c: New file.
9806         * sysdeps/unix/sysv/linux/sh/pread64.c: New file.
9807         * sysdeps/unix/sysv/linux/sh/pwrite.c: New file.
9808         * sysdeps/unix/sysv/linux/sh/pwrite64.c: New file.
9810 2003-02-19  Jiro Sekiba  <jir@yamato.ibm.com>
9812         * iconvdata/utf-16.c (gconv_end): Fix range of low surrogate.
9814 2003-02-16  Roland McGrath  <roland@redhat.com>
9816         * signal/signal.h: Include <sys/ucontext.h>, not <ucontext.h>.
9818 2003-02-19  Ulrich Drepper  <drepper@redhat.com>
9820         * stdlib/strtod.c (INTERNAL): Up the safety margin for cutting off
9821         decimal input digits.
9822         * stdlib/tst-strtod.c (main): Add test for strtof bug.
9824 2003-02-18  Ulrich Drepper  <drepper@redhat.com>
9826         * sysdeps/unix/sysv/linux/ttyname_r.c (__ttyname_r): Recognize
9827         invalid file descriptors and missing access permissions.
9829 2003-02-17  Ulrich Drepper  <drepper@redhat.com>
9831         * nss/getXXbyYY_r.c (REENTRANT_NAME): Return 0 if no entry has
9832         been found.
9834         * sysdeps/posix/sysconf.c (__sysconf): Test for LOGIN_NAME_MAX and
9835         TTY_NAME_MAX and not the _POSIX_* minimal value macros.
9836         * sysdeps/unix/sysv/linux/bits/local_lim.h: Define TTY_NAME_MAX
9837         and LOGIN_NAME_MAX.
9839 2003-02-17  Kevin B. Hendricks  <kevin.hendricks@sympatico.ca>
9840             Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
9842         * sysdeps/powerpc/elf/libc-start.c: Handle NONTLS_INIT_TP.
9843         * sysdeps/powerpc/powerpc32/__longjmp.S: Remove R2 handling.
9844         * sysdeps/powerpc/powerpc32/setjmp.S: Likewise.
9845         * sysdeps/powerpc/powerpc32/fpu/__longjmp.S: Likewise.
9846         * sysdeps/powerpc/powerpc32/fpu/setjmp.S: Likewise.
9848 2003-02-17  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
9850         * sysdeps/unix/sysv/linux/powerpc/ftruncate64.c: Delete.
9851         * sysdeps/unix/sysv/linux/powerpc/truncate64.c: Delete.
9852         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Delete.
9853         * sysdeps/unix/sysv/linux/powerpc/pread.c: Delete.
9854         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Delete.
9855         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Delete.
9857         * sysdeps/unix/sysv/linux/powerpc/fe_nomask.c: Move file...
9858         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fe_nomask.c: ...here.
9859         * sysdeps/unix/sysv/linux/powerpc/glob64.c: Move file...
9860         * sysdeps/unix/sysv/linux/powerpc/powerpc32/glob64.c: ...here.
9862         * sysdeps/unix/sysv/linux/tcgetattr.c: Use INLINE_SYSCALL.
9863         * sysdeps/unix/sysv/linux/tcsetattr.c: Likewise.
9864         * sysdeps/unix/sysv/linux/powerpc/tcgetattr.c: Delete.
9865         * sysdeps/unix/sysv/linux/powerpc/tcsetattr.c: Delete.
9867 2003-02-14  Thorsten Kukuk  <kukuk@suse.de>
9869         * nss/getent.c (print_hosts): Print all IP addresses of one host.
9871 2003-02-15  Roland McGrath  <roland@frob.com>
9873         * sysdeps/mach/hurd/tls.h: New file.
9874         * sysdeps/mach/hurd/i386/tls.h: New file.
9876         * mach/errsystems.awk: Include <errno.h> in generated output.
9878         * sysdeps/mach/Makefile (mach-before-compile rule): Pass generating=t,
9879         use target mach-before-compile instead of generated.
9880         (mach-before-compile): New target.
9881         * Makerules: Disable use of tls.make if $(generating) is set.
9882         * mach/Makefile: Include mach-syscalls.mk even if no_deps=t.
9883         * sysdeps/mach/hurd/Makefile: Make generated hurd headers depend on
9884         mach-shortcuts.h so mach/ generation happens before hurd/.
9886 2003-02-14  Ulrich Drepper  <drepper@redhat.com>
9888         * sysdeps/i386/fpu/s_nextafterl.c: Decrement high word of mantissa
9889         of demorm correctly if low word is zero.
9890         Reported by Fred J. Tydeman <tydeman@tybor.com>.
9891         * math/libm-test.inc (nextafter_test): New test, but disabled due
9892         to gcc bug.
9894         * sysdeps/generic/libc-start.c [HAVE_PTR_NTHREADS]: Decrement thread
9895         counter and only call __exit_thread if this is not the last thread.
9897 2003-02-13  Jakub Jelinek  <jakub@redhat.com>
9899         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Add instead of
9900         subtracting map->l_tls_offset.
9902 2003-02-12  Ulrich Drepper  <drepper@redhat.com>
9904         * sysdeps/generic/bits/confname.h: Define _CS_GNU_LIBC_VERSION and
9905         _CS_GNU_LIBPTHREAD_VERSION.
9906         * posix/conststr.c: Handle these new values.
9907         * posix/getconf.c: Likewise.
9909         * sysdeps/mips/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE): Fix
9910         masking of version index.
9911         Patch by Lance Larsh <Lance.Larsh@oracle.com>.
9913 2003-02-11  Ulrich Drepper  <drepper@redhat.com>
9915         * nss/nss_files/files-hosts.c (HOST_DB_LOOKUP): Compute alignment
9916         correctly.  Reported by Thorsten Kukuk.
9918 2003-02-10  Ulrich Drepper  <drepper@redhat.com>
9920         * elf/Makefile (check-textrel-CFLAGS): Pass _XOPEN_SOURCE and
9921         _BSD_SOURCE to compiler.
9922         * elf/check-textrel.c (SWAP): Add parenthesis to avoid warnings.
9923         Patches by Alan Modra.
9925 2003-02-08  Ulrich Drepper  <drepper@redhat.com>
9927         * io/ftwtest.c: Get current working directory before and after the
9928         nftw call and make sure they match.
9930 2003-02-08  Jim Meyering  <jim@meyering.net>
9932         * io/ftw.c (ftw_startup): When using FTW_CHDIR, always remember
9933         the current directory, not just when DIR contains a slash.
9934         Reported by Manoj Srivastava.
9936 2003-02-07  Jim Meyering  <jim@meyering.net>
9938         * io/ftw.c: Add autoconf-recommended block of alloca-related code.
9939         Include autoconf-recommended block of dirent/NAMELEN-related
9940         definitions and includes.  Use NAMELEN throughout, rather than
9941         _D_EXACT_NAMLEN.
9942         [_LIBC]: Define NAMELEN to _D_EXACT_NAMLEN.
9943         [!_LIBC] (__getcwd): Define to xgetcwd and declare xgetcwd.
9944         (stpcpy): Declare, if necessary.
9945         (mempcpy): Define, if necessary.
9946         [!_LIBC] (__stpcpy, __mempcpy): Define.
9947         [!_LIBC] (LXSTAT, XSTAT): Define.
9948         (lstat) [!LIBC && !LSTAT_FOLLOWS_SLASHED_SYMLINK]: Define to rpl_lstat.
9949         (find_object): Don't use c99-style struct initializer.
9950         Tweak wording in a couple comments.
9952 2003-02-07  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
9954         * elf/tls-macros.h: Add non-PIC TLS macros and fix clobber list
9955         for SH.
9956         * sysdeps/unix/sysv/linux/sh/brk.c: Add SYSCALL_INST_PAD
9957         after the trapa instruction.
9958         * sysdeps/unix/sysv/linux/sh/clone.S (__clone): Add additional
9959         parameters.
9960         * sysdeps/unix/sysv/linux/sh/sh4/sysdep.h: New file.
9961         (NEED_SYSCALL_INST_PAD): Define.
9962         * sysdeps/unix/sysv/linux/sh/sys/user.h (start_thread): Undef to
9963         avoid to use definition for the kernel.
9964         * sysdeps/unix/sysv/linux/sh/sysdep.h (SYSCALL_ERROR_HANDLER):
9965         Save and restore the frame pointer.
9966         (SYSCALL_INST_PAD): Define.
9967         (INLINE_SYSCALL): Make use of INTERNAL_SYSCALL.
9968         (INTERNAL_SYSCALL): Make use of ERR parameter. Add SYSCALL_INST_PAD
9969         after trapa instruction.
9970         (INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
9971         INTERNAL_SYSCALL_ERROR_P): Adjust accordingly.
9973 2003-02-07  Jakub Jelinek  <jakub@redhat.com>
9975         * resolv/res_libc.c (_res): Ensure _res is not common symbol,
9976         so that it can have aliases.
9977         * inet/herrno.c (h_errno): Put it into .bss not .data section.
9979 2003-02-07  Ulrich Drepper  <drepper@redhat.com>
9981         * elf/dl-runtime.c (fixup): Correct typo in version index computation.
9982         (profile_fixup): Likewise.
9983         Patch by Lance Larsh <Lance.Larsh@oracle.com>.
9985 2002-11-24  Robert Love  <rml@tech9.net>
9987         * posix/sched.h: Second parameter of sched_setaffinity and
9988         sched_getaffinity is `unsigned int', not `unsigned long'.
9989         * sysdeps/generic/sched_setaffinity.c: Likewise.
9990         * sysdeps/generic/sched_getaffinity.c: Likewise.
9992 2003-02-05  Ulrich Drepper  <drepper@redhat.com>
9994         * debug/catchsegv.sh: Fix typo in error messsage.
9995         Reported by John Levon <levon@movementarian.org>.
9997         * sysdeps/unix/sysv/linux/posix_fadvise.c: New file.
9998         * sysdeps/unix/sysv/linux/syscalls.list: Add posix_fadvise64 syscall.
9999         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Likewise.
10000         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
10001         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Likewise.
10002         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
10003         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
10005         * libio/putwc_u.c: Use _IO_putwc_unlocked, not _IO_putc_unlocked.
10006         Patch by Moritz Schulte <moritz@duesseldorf.ccc.de>.
10008 2003-02-05  Jim Meyering  <jim@meyering.net>
10010         Fix a heap-corrupting bug.
10011         * io/ftw.c: Include <limits.h>.
10012         (PATH_MAX) [!defined PATH_MAX]: Define to 1024.
10013         (process_entry): Allocate enough space to hold the resulting
10014         file name.  Don't presume that 2*dirbufsize is enough.
10015         (ftw_startup): Always use PATH_MAX to compute buffer size, now that
10016         it is guaranteed to be defined.
10018 2003-02-04  Ulrich Drepper  <drepper@redhat.com>
10020         * iconvdata/Makefile: Add rules to build and run bug-iconv3.
10021         * iconvdata/bug-iconv3.c: New file.
10023 2003-02-04  Martin Schwidefsky  <schwidefsky@de.ibm.com>
10025         * sysdeps/unix/sysv/linux/s390/system.c: New file.
10027 2003-02-03  Jakub Jelinek  <jakub@redhat.com>
10029         * sysdeps/sparc/sparc32/elf/configure.in (BROKEN_SPARC_WDISP22): New
10030         check.
10031         * config.h.in (BROKEN_SPARC_WDISP22): Add.
10033 2003-02-03  Ulrich Drepper  <drepper@redhat.com>
10035         * sysdeps/i386/i686/memmove.S: New file.
10037 2003-01-31  Steven Munroe  <sjmunroe@us.ibm.com>
10039         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c:
10040         Include kernel-features.h
10041         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: Likewise.
10042         * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S: Likewise.
10043         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: Likewise.
10044         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Likewise.
10046 2003-02-02  Jakub Jelinek  <jakub@redhat.com>
10048         * elf/tls-macros.h [sparc] (TLS_LD, TLS_GD): Add "cc" clobbers.
10050 2003-01-25  Jim Meyering  <jim@meyering.net>
10052         * io/ftw.c (object_compare): Compare inode numbers before device
10053         numbers, since the former are much more likely to differ.
10055 2003-02-01  Ulrich Drepper  <drepper@redhat.com>
10057         * time/tzfile.c (__tzfile_compute): Change return value type to
10058         void.  Adjust return statements.
10059         * include/time.h (__tzfile_compute): Adjust prototype.
10061 2003-02-01  Jim Meyering  <jim@meyering.net>
10063         * time/tzset.c (__tz_convert): Remove dead code; __tzfile_compute
10064         always returns 1.
10066 2003-01-31  Steven Munroe  <sjmunroe@us.ibm.com>
10068         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c
10069         [!__ASSUME_NEW_PRCTL_SYSCALL]: Noop prctl syscall and set ENOSYS.
10071 2003-01-31  Steven Munroe  <sjmunroe@us.ibm.com>
10073         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S
10074         [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Generate ENOSYS stub.
10075         * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S
10076         [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Likewise.
10077         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S
10078         [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Likewise.
10079         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S
10080         [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Likewise.
10082 2003-01-31  Steven Munroe  <sjmunroe@us.ibm.com>
10084         * sysdeps/unix/sysv/linux/configure.in: Change arch_minimum_kernel
10085         back to 2.4.19 for powerpc64.
10086         * sysdeps/unix/sysv/linux/kernel-features.h
10087         (__ASSUME_NEW_PRCTL_SYSCALL): Define for powerpc64.
10088         (__ASSUME_NEW_RT_SIGRETURN_SYSCALL): Define for powerpc64.
10090 2003-02-01  Ulrich Drepper  <drepper@redhat.com>
10092         * wcsmbs/wcscpy.c (wcscpy): Add alternative implementation for
10093         platforms with strange alignment requirements on wchar_t.
10095 2003-01-31  Andreas Schwab  <schwab@suse.de>
10097         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Remove __GI_*
10098         aliases, already added by make-syscalls.sh.
10099         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
10100         * sysdeps/unix/sysv/linux/hppa/syscalls.list: Likewise.
10101         * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise.
10102         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
10103         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
10104         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
10105         * sysdeps/unix/sysv/linux/syscalls.list: Likewise.
10106         * sysdeps/unix/inet/syscalls.list: Likewise.
10107         * sysdeps/unix/syscalls.list: Likewise.
10109 2003-01-31  Andreas Schwab  <schwab@suse.de>
10111         * sysdeps/m68k/Makefile (sysdep-CFLAGS): Don't define, not needed
10112         any more.
10114 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
10116         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S (__clone): Use lg,
10117         not l to load tls from stack.
10119 2003-01-30  Roland McGrath  <roland@redhat.com>
10121         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Move check for
10122         null argument before all else.
10123         Reported by Martin Schwidefsky <schwidefsky@de.ibm.com>.
10125 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
10127         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_lazy_rel):
10128         Move to RESOLVE protected part of the header.
10129         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_lazy_rel):
10130         Likewise.
10132 2003-01-30  Ulrich Drepper  <drepper@redhat.com>
10134         * stdio-common/Makefile (tests): Add bug15.
10135         (bug15-ENV): Define.
10136         * stdio-common/bug15.c: New file.
10138 2002-10-07  Wolfram Gloger  <wg@malloc.de>
10140         * malloc/malloc.c (sYSMALLOc): Only check for breakage due
10141         to foreign sbrk()'s if arena is contiguous.  Bug report from
10142         Bruno Haible <bruno@clisp.org>.
10144 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
10146         * sysdeps/s390/libc-tls.c: Include stdlib.h.
10148 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
10150         * stdio-common/vfprintf.c (vfprintf): Only subtract lowest 3 bits of
10151         ps.__count.
10153 2003-01-30  Ulrich Drepper  <drepper@redhat.com>
10155         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S: Fix storing and
10156         restoring of %r6.
10157         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S: Likewise.  Use
10158         64-bit load.
10159         Patch by Martin Schwidefsky  <schwidefsky@de.ibm.com>.
10161 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
10163         * elf/dl-reloc.c (CHECK_STATIC_TLS): Move _dl_signal_error...
10164         (allocate_static_tls): ...here.  Add __attribute_noinline__.
10165         Don't return on failure.
10166         (_dl_reloc_bad_type): Add __attribute_noinline__.
10167         * elf/do-rel.h (elf_dynamic_do_rel): Add
10168         __attribute__((always_inline)).
10169         * elf/dynamic-link.h (elf_machine_rel, elf_machine_rela,
10170         elf_machine_rel_relative, elf_machine_rela_relative,
10171         elf_machine_lazy_rel): Add prototypes with
10172         __attribute__((always_inline)).
10174 2003-01-29  David Mosberger  <davidm@hpl.hp.com>
10176         * elf/dl-support.c (_dl_aux_init): Handle AT_SYSINFO.
10178 2003-01-29  Roland McGrath  <roland@redhat.com>
10180         * configure.in: Barf if configured in $srcdir.
10182 2003-01-28  Steven Munroe  <sjmunroe@us.ibm.com>
10184         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c
10185         (__fe_nomask_env): Change __prctl call to INTERNAL_SYSCALL.
10187 2003-01-28  Martin Schwidefsky  <schwidefsky@de.ibm.com>
10189         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S: Reorder additional
10190         clone parameters to match the order used on ia32.
10191         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S: Likewise.
10193 2003-01-27  Martin Schwidefsky  <schwidefsky@de.ibm.com>
10195         * elf/elf.h: Add new s390 relocs.
10196         * elf/tls-macros.h: Add s390 versions.
10197         * sysdeps/s390/Versions [GLIBC_2.3] (ld): Export __tls_get_offset.
10198         * sysdeps/s390/dl-tls.h: New file.
10199         * sysdeps/s390/libc-tls.c: New file.
10200         * sysdeps/s390/s390-32/dl-machine.h (elf_machine_type_class): Add TLS
10201         relocs for class PLT.
10202         (elf_machine_rela): Handle TLS relocs.
10203         * sysdeps/s390/s390-64/dl-machine.h: Likewise.
10204         * sysdeps/s390/s390-32/elf/configure.in: Add TLS check.
10205         * sysdeps/s390/s390-64/elf/configure.in: Likewise.
10206         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S: Add support for
10207         CLONE_CHILD_*TID flags.
10208         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S: Likewise.
10209         * sysdeps/unix/sysv/linux/s390/s390-64/mmap.S: Use branch with 32
10210         bit offset.
10211         * sysdeps/unix/sysv/linux/s390/s390-64/socket.S: Likewise.
10212         * sysdeps/unix/sysv/linux/s390/s390-64/syscall.S: Likewise.
10213         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S (__syscall_error):
10214         Support USE___THREAD. Define RTLD_PRIVATE_ERRNO variant.
10215         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S (__syscall_error):
10216         Likewise.
10217         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h:
10218         (SYSCALL_ERROR_LABEL): Move define next to SYSCALL_ERROR_HANDLER.
10219         (SYSCALL_ERROR_HANDLER): Add USE___THREAD and RTLD_PRIVATE_ERRNO
10220         variants.
10221         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h:
10222         (SYSCALL_ERROR_LABEL): Move define next to SYSCALL_ERROR_HANDLER. Use
10223         direct branch to syscall_error for !PIC and PIC && !_LIBC_REENTRANT.
10224         (SYSCALL_ERROR_HANDLER): Add USE___THREAD and RTLD_PRIVATE_ERRNO
10225         variants.
10227 2003-01-28  Ulrich Drepper  <drepper@redhat.com>
10229         * sysdeps/unix/common/pause.c (do_pause): New function.  Split
10230         from __libc_pause.  Implement using sigsuspend.
10231         (__libc_pause): Call do_pause to do the real work.
10233         * sysdeps/posix/sigpause.c (do_sigpause): Check range of
10234         sig_or_mask parameter is is_sig != 0.
10236 2003-01-21  Philip Blundell  <philb@gnu.org>
10238         * sysdeps/unix/sysv/linux/bits/ioctls.h (SIOCSIFNAME): Define.
10240 2003-01-27  Steven Munroe  <sjmunroe@us.ibm.com>
10242         * stdio-common/Makefile: Add bug14-ENV to set LOCPATH for make check.
10244 2003-01-27  Ulrich Drepper  <drepper@redhat.com>
10246         * stdio-common/bug14.c: Use official name for the locale.
10248         * stdio-common/vfprintf.c [USE_IN_LIBIO]: Use _IO_cleanup_region_start
10249         instead of __libc_cleanup_region_start and _IO_cleanup_region_end
10250         instead of __libc_cleanup_region_end.
10252         * sysdeps/unix/sysv/linux/i386/system.c (CLEANUP_HANDLER): Pass 1
10253         as first parameter to __libc_cleanup_region_start.
10255         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c
10256         (__fe_nomask_env): Use __prctl not prctl.
10257         * sysdeps/unix/sysv/linux/syscalls.list: Add __prctl alias for
10258         prctl syscall.
10260         * elf/dl-reloc.c (CHECK_STATIC_TLS): Improve error message.
10262         * elf/dl-open.c (_dl_tls_static_size): Bump to 2048.
10264         * elf/dl-reloc.c (allocate_static_tls): Avoid arithmetic
10265         wrap-around in test.
10267 2003-01-26  Andreas Schwab  <schwab@suse.de>
10269         * sysdeps/wordsize-32/divdi3.c: Export the functions only as
10270         compatibility symbols.  Remove INTDEF for __divdi3.
10271         * sysdeps/wordsize-32/lldiv.c: Don't use __divdi3_internal.
10272         * sysdeps/powerpc/powerpc32/divdi3.c: Remove.
10273         * sysdeps/powerpc/powerpc32/Makefile (CPPFLAGS-divdi3.c): Don't
10274         define.
10275         * sysdeps/powerpc/powerpc32/Dist: Remove divdi3.c.
10277 2003-01-24  Jakub Jelinek  <jakub@redhat.com>
10279         * elf/tls-macros.h: Add SPARC 32-bit definitions.
10280         * sysdeps/sparc/sparc32/elf/configure.in: Add TLS check.
10281         * sysdeps/sparc/sparc32/dl-machine.h: Add dl_machine_h guards
10282         for the first half of the header.  Include tls.h.
10283         (elf_machine_type_class): Return ELF_RTYPE_CLASS_PLT for TLS
10284         relocs too.
10285         (elf_machine_rela): Handle TLS relocs.
10286         * sysdeps/sparc/dl-tls.h: New file.
10288         * sysdeps/unix/sysv/linux/sparc/sparc32/socket.S: Add cancellation
10289         support.
10291         * sysdeps/sparc/sparc32/sparcv9/hp-timing.h: Use %g6 instead of %g7.
10292         * sysdeps/sparc/sparc32/memchr.S: Likewise.
10293         * sysdeps/sparc/sparc32/memcpy.S: Likewise.
10294         * sysdeps/sparc/sparc32/strcat.S: Likewise.
10295         * sysdeps/sparc/sparc32/strchr.S: Likewise.
10296         * sysdeps/sparc/sparc32/strcmp.S: Likewise.
10297         * sysdeps/sparc/sparc32/strcpy.S: Likewise.
10298         * sysdeps/sparc/sparc64/sparcv9b/memcpy.S: Likewise.
10299         * sysdeps/sparc/sparc64/hp-timing.h: Likewise.
10300         * sysdeps/sparc/sparc64/memcpy.S: Likewise.
10301         * sysdeps/sparc/sparc64/stpcpy.S: Likewise.
10302         * sysdeps/sparc/sparc64/stpncpy.S: Likewise.
10303         * sysdeps/sparc/sparc64/strcat.S: Likewise.
10304         * sysdeps/sparc/sparc64/strchr.S: Likewise.
10305         * sysdeps/sparc/sparc64/strcmp.S: Likewise.
10306         * sysdeps/sparc/sparc64/strcpy.S: Likewise.
10307         * sysdeps/sparc/sparc64/strncmp.S: Likewise.
10308         * sysdeps/sparc/sparc64/strncpy.S: Likewise.
10309         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Likewise.
10310         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h: Likewise.
10312 2003-01-24  Andreas Schwab  <schwab@suse.de>
10314         * elf/dl-close.c (_dl_close): Don't relocate DT_FINI_ARRAY
10315         elements, and process them backwards.
10316         * elf/Makefile ($(objpfx)tst-array4): New target.
10317         ($(objpfx)tst-array4.out): Likewise.
10318         (tests) [$(have-initfini-array) = yes]: Add tst-array4.
10319         * elf/tst-array4.c: New file.
10320         * elf/tst-array4.exp: Likewise.
10322 2003-01-24  Steven Munroe  <sjmunroe@us.ibm.com>
10324         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c: New file.
10326 2003-01-27  Guido Guenther  <agx@sigxcpu.org>
10328         * sysdeps/unix/sysv/linux/mips/sysdep.h (SYSCALL_ERROR_LABEL): Define.
10329         * sysdeps/unix/sysv/linux/mips/pread.c: Add support for
10330         cancellation handling and handle both __NR_pread64 and __NR_pread.
10331         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
10332         * sysdeps/unix/sysv/linux/mips/pwrite.c: Add support for
10333         cancellation handling and handle both __NR_pwrite64 and __NR_pwrite.
10334         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
10335         * sysdeps/unix/mips/sysdep.S: Don't set errno in the _LIBC_REENTRANT
10336         case, use register names consistently.
10338 2003-01-27  Wolfram Gloger  <wg@malloc.de>
10340         * malloc/hooks.c (mem2chunk_check): Check alignment of mem
10341         pointer, not of the computed chunk.  Bug report from Carlos
10342         O'Donell <carlos@baldric.uwo.ca>.
10344 2003-01-25  Andreas Schwab  <schwab@suse.de>
10346         * sysdeps/m68k/dl-machine.h (_dl_start_user): Use pc-relative
10347         addressing to save GOT entries.
10349 2003-01-21  Jakub Jelinek  <jakub@redhat.com>
10351         * sysdeps/unix/alpha/sysdep.h (inline_syscall0,
10352         inline_syscall1, inline_syscall2, inline_syscall3,
10353         inline_syscall4, inline_syscall5, inline_syscall6): Add __volatile__.
10354         * sysdeps/unix/sysv/linux/alpha/sysdep.h (INTERNAL_SYSCALL): Add
10355         __attribute__((unused)) to ChEcK.
10357 2003-01-20  Martin Schwidefsky  <schwidefsky@de.ibm.com>
10359         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (INTERNAL_SYSCALL):
10360         Fix inline assembler constraints.
10361         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (INTERNAL_SYSCALL):
10362         Likewise.
10364         * sysdeps/s390/s390-64/Makefile (pic-ccflag): Use -fpic instead of
10365         -fPIC.
10367 2003-01-20  Segher Boessenkool  <segher@koffie.nl>
10369         * sysdeps/ieee754/dbl-64/sincos32.c (__mpcos): Really
10370         compute the cosine, not the sine, even if x > 0.8.
10372 2003-01-19  Ulrich Drepper  <drepper@redhat.com>
10374         * nis/nss_nis/nis-spwd.c: Make _nss_nis_endspent an alias of
10375         _nss_nis_setspent.  Work around the different prototypes.
10376         * nis/nss_nis/nis-rpc.c (internal_nis_setrpcent): Use
10377         internal_nis_endrpcent.
10378         (internal_nis_endrpcent): Change return type to void.  Change callers.
10379         * nis/nss_nis/nis-pwd.c: Make _nss_nis_endpwent an alias of
10380         _nss_nis_setpwent.  Work around the different prototypes.
10381         * nis/nss_nis/nis-proto.c (_nss_nis_endprotoent): Split out body
10382         of the function to...
10383         (internal_nis_endprotoent): ... here.  New function.
10384         (internal_nis_setprotoent): Use internal_nis_endprotoent.
10385         * nis/nss_nis/nis-network.c: Make _nss_nis_endnetent an alias of
10386         _nss_nis_setnetent.  Work around the different prototypes.
10387         * nis/nss_nis/nis-netgrp.c (_nss_nis_endnetgrent): Split out body
10388         of the function to...
10389         (internal_nis_endnetgrent): ... here.  New function.
10390         (_nss_nis_setnetgrent): Use internal_nis_endnetgrent.
10392 2003-01-19  Jim Meyering  <jim@meyering.net>
10394         * time/strftime.c: (widen): Merge nearly-identical definitions.
10395         (nl_get_alt_digit) [! defined my_strftime]: Define.
10396         (my_strftime) [_NL_CURRENT]: Merge nearly-identical uses of
10397         _nl_get_alt_digit and _nl_get_walt_digit.
10399 2003-01-19  Ulrich Drepper  <drepper@redhat.com>
10401         * time/strftime.c (my_strftime): Handle very large width
10402         specifications for numeric values correctly.  Improve checks for
10403         overflow.
10404         * time/Makefile (tests): Add tst-strftime.
10405         * time/tst-strftime.c: New file.
10407 2003-01-18  Ulrich Drepper  <drepper@redhat.com>
10409         * nis/nss_nis/nis-hosts.c: Make _nss_nis_endhostent an alias of
10410         _nss_nis_sethostent.  Work around the different prototypes.
10411         * nis/nss_nis/nis-grp.c: Make _nss_nis_endgrent an alias of
10412         _nss_nis_setgrent.  Work around the different prototypes.
10413         * nis/nss_nis/nis-ethers.c (internal_nis_endetherent): New
10414         function.  Split out from _nss_nis_endetherent.
10415         (internal_nis_setetherent): Use internal_nis_endetherent instead of
10416         duplicating the code.
10417         * nis/nss_nis/nis-alias.c: Make _nss_nss_nis_endaliasent an alias
10418         of _nss_nis_setaliasent.
10419         * nis/nss_nis/nis-service.c (internal_nis_setservent): Reuse
10420         internal_nis_endservent code, don't duplicate it.
10422         * inet/rexec.c (rexec_af): Protect socket operations with
10423         TEMP_FAILURE_RETRY.  Use writev instead of multiple write.
10424         * inet/rcmd.c (rcmd_af): Likewise.
10426 2003-01-17  Roland McGrath  <roland@redhat.com>
10428         * math/libm-test.inc (sin_test, cos_test, sincos_test) [TEST_DOUBLE]:
10429         Add test of value 0.80190127184058835.
10431         * elf/dl-open.c: Fix typo ifdef -> ifndef on _dl_tls_static_size defn.
10433 2003-01-17  Richard Henderson  <rth@redhat.com>
10435         * sysdeps/alpha/dl-machine.h (elf_machine_type_class): Add TLS
10436         relocs for class PLT.
10437         * sysdeps/alpha/libc-tls.c: New file.
10438         * sysdeps/unix/alpha/sysdep.S (EPILOGUE, GPSAVEREG): New.
10439         (LOADGP) [!PIC]: Rewrite to preserve caller's gp.
10441 2003-01-17  Jakub Jelinek  <jakub@redhat.com>
10443         * sysdeps/unix/sysv/linux/ia64/dl-static.c (_dl_static_init): Use
10444         __libc_lock_{,un}lock_recursive instead of __libc_lock_{,un}lock
10445         on _dl_static_lock.
10447 2003-01-17  Andreas Jaeger  <aj@suse.de>
10449         * stdio-common/bug14.c: Include stdlib.h for exit prototype.
10451 2003-01-16  Steven Munroe  <sjmunroe@us.ibm.com>
10453         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: New file.
10454         * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S: New file.
10455         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: New file.
10456         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: New file.
10457         * sysdeps/unix/sysv/linux/powerpc/powerpc64/ucontext_i.h: New file.
10458         * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: New file.
10459         * sysdeps/unix/sysv/linux/configure.in: Minimum kernel for PPC64
10460         is 2.4.21.
10462 2003-01-16  Ulrich Drepper  <drepper@redhat.com>
10464         * sysdeps/generic/glob.c (glob): Assume sysconf() always returns
10465         values != -1 for _LIBC.  Use extend_alloca to reallocate alloca'ed
10466         buffers.
10468         * sysdeps/generic/sysconf.c: Unconditionally implement
10469         _SC_GETPW_R_SIZE_MAX and _SC_GETGR_R_SIZE_MAX.
10470         * sysdeps/posix/sysconf.c: Likewise.
10472 2003-01-16  Jakub Jelinek  <jakub@redhat.com>
10474         * posix/regcomp.c (parse_bracket_exp): If build_charclass fails,
10475         set *err to the returned error, not to REG_ESPACE unconditionally.
10476         (build_word_op): Likewise.
10477         * posix/Makefile (tests): Add bug-regex16.
10478         * posix/bug-regex16.c: New test.
10480 2003-01-16  Jakub Jelinek  <jakub@redhat.com>
10482         * elf/dl-load.c (_dl_map_object_from_fd): Use
10483         GL(dl_tls_dtv_slotinfo_list) != NULL to check whether TLS has
10484         been already initialized.
10486 2003-01-15  Dmitry V. Levin  <ldv@altlinux.org>
10488         * sysdeps/unix/sysv/linux/ptsname.c: Fix typo in comment.
10490 2003-01-16  Jakub Jelinek  <jakub@redhat.com>
10492         * posix/regcomp.c (re_compile_internal): If clearing buffer, clear
10493         allocated too.  Reported by Al Viro <aviro@redhat.com>.
10495 2003-01-16  Roland McGrath  <roland@redhat.com>
10497         Tweak merged .abilist file format to merge duplicate symbols in
10498         different sets into multi-version stanzas with new "| SET regexp..."
10499         header continuation lines.
10500         * scripts/merge-abilist.awk: Rewritten for new format.
10501         * scripts/extract-abilist.awk: Likewise.
10503 2003-01-15  Ulrich Drepper  <drepper@redhat.com>
10505         * nscd/connections.c (nscd_run): Remove bogus return which isn't
10506         necessary with gcc 3.2+.
10507         (nscd_init): Don't use error() to print message, use dbg_log.
10509         * iconv/gconv_simple.c (STORE_REST): Explicitly store the total
10510         expected size into state.
10511         (UNPACK_BYTES): Do the reverse.
10512         * iconv/loop.c: Use CLEAR_STATE if defined to clear __state element.
10513         * wcsmbs/tst-mbrtowc.c (utf8_test_1): Add test for the bug.
10514         Reported by Al Viro <aviro@redhat.com>.
10516         * stdio-common/Makefile (tests): Add bug14.
10517         * stdio-common/bug14.c: New file.
10519         * stdio-common/vfscanf.c: When recognizing multibyte characters in
10520         string reset the byte counter after mbrtowc reported it is not a
10521         partial character.  Reported by Al Viro <aviro@redhat.com>.
10523 2003-01-15  Steven Munroe  <sjmunroe@us.ibm.com>
10525         * sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S: Include
10526         sysdep-cancel.h, not sysdep.h.
10528 2003-01-15  Ulrich Drepper  <drepper@redhat.com>
10530         * nscd/connections.c (nscd_run): Protect accept call with
10531         TEMP_FAILURE_RETRY.
10533 2003-01-15  Andreas Schwab  <schwab@suse.de>
10535         * sysdeps/unix/Makefile: Include $(common-objpfx)s-proto-bp.d.
10536         (common-generated): Add s-proto-bp.d.
10537         * sysdeps/unix/make-syscalls.sh: Use s-proto-bp.d for dependencies
10538         of bp thunks.
10539         * sysdeps/unix/s-proto-bp.S: New file.
10540         * sysdeps/generic/bp-thunks.h: Don't include <sys/vm86.h> here.
10541         Use <io/sys/sendfile.h> instead of <sys/sendfile.h>.
10542         * sysdeps/unix/sysv/linux/i386/bp-thunks.h: New file.
10544 2003-01-15  Roland McGrath  <roland@redhat.com>
10546         * Makerules: Use -include for tls.make, suppresses warning.
10547         Move gen-as-const-headers rules up so before-compile is set in time.
10548         (sed-remove-dotdot): Fix to work right for subdirs or top dir.
10550 2003-01-15  Ulrich Drepper  <drepper@redhat.com>
10552         * nscd/nscd.c (main): Make code to close all file descriptors
10553         faster and more robust.
10555         * nscd/nscd_getpw_r.c (nscd_getpw_r): Consolidate writing of the
10556         request with one writev call.  Protect all read calls with
10557         TEMP_FAILURE_RETRY.
10558         * nscd/nscd_getgr_r.c (nscd_getgr_r): Likewise.
10559         * nscd/nscd_gethst_r.c (nscd_gethst_r): Likewise.
10561         * nscd/hstcache.c: Use extend_alloca to reallocate alloca'd buffer.
10562         Protect writev calls with TEMP_FAILURE_RETRY.
10563         * nscd/grpcache.c: Likewise.
10564         * nscd/pwdcache.c: Likewise.
10566         * nscd/hstcache.c (addhstbynamev6): Don't interpret hostname as
10567         IPv6 address in debug output.
10569 2003-01-14  Roland McGrath  <roland@redhat.com>
10571         * Makerules (check-abi-%): Use two rules for $(common-objpfx) and
10572         $(objpfx) directories, and get rid of vpath directives.  The previous
10573         arrangement resulted in files being written to the source directories
10574         when run in a clean build.  Find all .abilist files in $(..)abilist/.
10575         (update-abi-%): Likewise.
10576         (generated): Don't add .symlist files, they'll be intermediates.
10578         * sysdeps/generic/init-first.c: Add a comment.
10580         * elf/Makefile ($(objpfx)ld.so): Pass -z defs in link.
10582         * scripts/gen-as-const.awk: Grok lone "--" as a separator between
10583         #includes and expressions.
10585         * scripts/merge-abilist.awk: Omit cpu-.*-os.*/modifier from merged
10586         config list when it already contains cpu-.*-os.* without / part.
10588         * Makerules (sed-remove-dotdot): New variable.
10589         ($(common-objpfx)%.make): Use it.  Depend on $(before-compile).
10590         ($(common-objpfx)%.h $(common-objpfx)%.h.d): Likewise.
10591         (check-abi-config): New variable, append /tls or /notls to the tuple.
10592         (check-abi-%): Use that for -v config value.
10593         Find .abilist files in abilist/libfoo.abilist, not in subdir.
10594         * Rules: Move bits/stdio_lim.h generation rules to Makerules.
10596 2003-01-14  Ulrich Drepper  <drepper@redhat.com>
10598         * manual/install.texi: Correct description of header preparation for
10599         Linux build.  Patch by mhwood@Ameritech.Net [PR libc/4941].
10601 2003-01-14  Guido Guenther  <agx@sigxcpu.org>
10603         * sysdeps/unix/sysv/linux/mips/sysdep.h (INTERNAL_SYSCALL,
10604         INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
10605         INTERNAL_SYSCALL_ERROR_P, INLINE_SYSCALL): Define.
10607 2003-01-14  Steven Munroe  <sjmunroe@us.ibm.com>
10609         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h
10610         (INTERNAL_SYSCALL): Make use of ERR parameter.
10611         (INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
10612         INTERNAL_SYSCALL_ERROR_P): Adjust accordingly.
10613         (INLINE_SYSCALL): Make use of INTERNAL_SYSCALL.
10614         * sysdeps/unix/sysv/linux/powerpc/powerpc64/vfork.S: New file.
10616 2003-01-14  Ulrich Drepper  <drepper@redhat.com>
10618         * sunrpc/pm_getport.c (pmap_getport): Open TCP socket if protocol
10619         == IPPROTO_TCP.
10620         Patch by James Strandboge <jamie@tpptraining.com> [PR libc/4943].
10622         * sysdeps/unix/sysv/linux/i386/dl-procinfo.c (_dl_x86_cap_flags):
10623         Fix entry for bit 31.
10625         * iconvdata/Makefile: Add rules to build IBM866NAV.
10626         * iconvdata/ibm866nav.c: New file.
10627         * iconvdata/tst-tables.sh: Add IBM866NAV.
10628         * iconvdata/gconv-modules: Add entries for IBM866NAV.
10630 2003-01-13  Ulrich Drepper  <drepper@redhat.com>
10632         * string/tester.c (test_strcpy): Use the previously #if 0'ed code
10633         to test void* parameters.
10635         * sysdeps/i386/i486/bits/string.h (__STRING_SMALLL_GET16): Cast
10636         source pointer before dereferencing.
10637         (__STRING_SMALLL_GET32): Likewise.
10638         (__memset_gc): Add missing parenthesis around macro arguments.
10639         Patch by Denis Zaitsev <zzz@cd-club.ru>.
10641         * sysdeps/i386/i486/bits/string.h (__strspn_cg): Tell the compiler
10642         that %eax is modified.  Reported by Denis Zaitsev <zzz@cd-club.ru>.
10644 2003-01-14  Jakub Jelinek  <jakub@redhat.com>
10646         * sysdeps/unix/alpha/sysdep.h (INLINE_SYSCALL): Undefined before
10647         defining.
10649 2003-01-13  Martin Schwidefsky  <schwidefsky@de.ibm.com>
10651         * sysdeps/s390/s390-64/initfini.c: Avoid unterminated string literals.
10652         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (L): Don't define it
10653         here.
10654         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (L): Likewise.
10656 2003-01-13  Martin Schwidefsky  <schwidefsky@de.ibm.com>
10658         * sysdeps/s390/s390-32/sysdep.h (JUMPTARGET): Move branch instructions
10659         from here...
10660         (PSEUDO): ... to here.
10661         * sysdeps/s390/s390-64/sysdep.h (JUMPTARGET): Move branch instruction
10662         from here...
10663         (PSEUDO): ... to here.
10665 2003-01-13  Ulrich Drepper  <drepper@redhat.com>
10667         * locale/programs/charmap-dir.c (charmap_readdir): Use struct
10668         dirent64 instead of struct dirent for dirent.  Call readdir64
10669         instead of readdir.
10671         * locale/programs/locfile.c (siblings_uncached): Use struct
10672         dirent64 instead of struct dirent for other_dentry.  Call
10673         readdir64 instead of readdir.
10675         * elf/ldconfig.c (direntry): Change type to struct dirent64.
10676         (search_dir): Use readdir64 instead of readdir.
10677         Patch by Zhangfan Xing <xing@pacific.jpl.nasa.gov>.
10679 2003-01-12  Roland McGrath  <roland@redhat.com>
10681         * hurd/lookup-retry.c (__hurd_file_name_lookup_retry): Use strtoul,
10682         not strtol.  The former is usable in ld.so, the latter not.
10684         * include/fcntl.h: Declare __libc_creat.
10686         * sysdeps/mach/hurd/Makefile (libmachuser-link.so-no-z-defs,
10687         libhurduser-link.so-no-z-defs): New variables.
10689         * malloc/malloc.c: Revert last change.
10690         * malloc/malloc.h (_int_*): Move these decls to ...
10691         * include/malloc.h: ... here.  Add attribute_hidden.
10692         (_int_valloc): Declare it too.
10694 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
10696         * elf/dl-close.c (_dl_close): Fix typo, must be == not = in
10697         search for removed searchlist.  Reported by Roland McGrath.
10699         * io/ftwtest-sh: Add test for case of symlink to nonexisting file
10700         given as start file.
10702         * io/ftw.c (ftw_startup): Use correct name in check for symlink
10703         without existing target.  Patch by Jim Meyering.
10705         * Makerules (build-shlib-helper): Don't use -z defs linker option
10706         if no-z-defs is defined either.
10708 2003-01-10  Martin Schwidefsky  <schwidefsky@de.ibm.com>
10710         * sysdeps/unix/sysv/linux/s390/s390-64/kernel_stat.h: Remove unused
10711         file.
10713 2003-01-10  Martin Schwidefsky  <schwidefsky@de.ibm.com>
10715         * sysdeps/unix/sysv/linux/s390/s390-32/syscalls.list: Add vfork.
10716         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
10718 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
10720         * io/ftwtest-sh: Add test case for relative path with /. at the end.
10722 2003-01-12  Jim Meyering  <jim@meyering.net>
10724         * io/ftw.c (ftw_startup): When trying to stat the starting directory,
10725         use the basename if we've already chdir'd into its parent directory.
10727 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
10729         * io/ftw.c (process_entry): Use relative path when using chdir()
10730         to change directory after call to ftw_dir.
10731         * io/ftwtest-sh: Add test for relative path argument to nftw()
10732         with FTW_CHDIR option.
10734 2003-01-12  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
10736         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_VFORK_SYSCALL):
10737         Define for powerpc.
10738         * sysdeps/unix/sysv/linux/powerpc/syscall.S: Take register alignment
10739         into account.
10740         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h
10741         (INTERNAL_SYSCALL): Make use of ERR parameter.
10742         (INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
10743         INTERNAL_SYSCALL_ERROR_P): Adjust accordingly.
10744         (INLINE_SYSCALL): Make use of INTERNAL_SYSCALL.
10745         * sysdeps/unix/sysv/linux/powerpc/powerpc32/vfork.S: New file.
10747 2003-01-09  Richard Henderson  <rth@redhat.com>
10749         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Compute
10750         DTPREL64 and TPREL64 without loadbase applied.
10752 2003-01-09  Richard Henderson  <rth@redhat.com>
10754         * sysdeps/unix/alpha/sysdep.S: Use correct definition of errno
10755         for NOT_IN_libc.
10757         * sysdeps/unix/sysv/linux/alpha/sysdep.h: Move inline syscall bits...
10758         * sysdeps/unix/alpha/sysdep.h: ... here.
10759         (PSEUDO_LOADGP): Remove.
10760         (PSEUDO_PROLOGUE): Load GP in non-pic case.
10761         (SYSCALL_ERROR_LABEL): New.
10762         (PSEUDO): Use it in error branch.
10763         (PSEUDO_END): Add $syscall_error label.
10765 2003-01-12  Andreas Jaeger  <aj@suse.de>
10767         * math/bits/mathcalls.h: Round is a const function.
10769 2003-01-11  Jim Meyering  <jim@meyering.net>
10771         * io/ftw.c [HAVE_CONFIG_H]: Include <config.h>.
10772         [HAVE_SYS_PARAM_H || _LIBC]: Guard inclusion of <sys/param.h>.
10773         Include <sys/stat.h>, not <include/sys/stat.h>, if !_LIBC.
10774         [!_LIBC] (__chdir, __closedir, __fchdir, __getcwd, __opendir): Define.
10775         [!_LIBC] (__readdir64, __tdestroy, __tfind, __tsearch): Define.
10776         [!_LIBC] (internal_function, dirent64, MAX): Define.
10777         (__set_errno): Define if not already defined.
10778         (open_dir_stream): When FTW_CHDIR is enabled, invoke opendir on
10779         the basename, not the entire file name.
10780         (process_entry): When FTW_CHDIR is enabled, invoke XSTAT or LXSTAT on
10781         the basename, not the entire file name.
10783 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
10785         * string/tester.c (test_strcpy): Disable last added strcpy until
10786         it is fixed.
10788 2003-01-11  Philip Blundell  <philb@gnu.org>
10790         * sysdeps/unix/sysv/linux/arm/socket.S: Add cancellation support.
10792 2003-01-11  Andreas Schwab  <schwab@suse.de>
10794         * Makerules: Add vpath for %.dynsym and %.so so that the
10795         implicit rule chaining for check-abi works.
10797 2003-01-11  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
10799         * sysdeps/unix/sysv/linux/sh/sysdep.h (SYSCALL_ERROR_HANDLER):
10800         Add non-PIC case.
10802 2003-01-11  Jakub Jelinek  <jakub@redhat.com>
10804         * elf/tls-macros.h [__ia64__] (__TLS_CALL_CLOBBERS): Define.
10805         [__ia64__] (TLS_LE, TLS_IE): Fix typos.  Add ;; at start of asm if
10806         gp is used early.
10807         [__ia64__] (TLS_LD, TLS_GD): Likewise.  Use __TLS_CALL_CLOBBERS.
10808         * elf/Makefile ($(objpfx)tst-tlsmod5.so, $(objpfx)tst-tlsmod6.so):
10809         Ensure libc.so in DT_NEEDED.
10810         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Move
10811         CHECK_STATIC_TLS before l_tls_offset use.
10812         * sysdeps/i386/dl-machine.h (elf_machine_rel, elf_machine_rela):
10813         Likewise.
10814         * sysdeps/sh/dl-machine.h (elf_machine_rela): Likewise.
10815         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage) [TLS_DTV_AT_TP]:
10816         Allocate TLS_PRE_TCB_SIZE bytes below result.
10817         (_dl_deallocate_tls) [TLS_DTV_AT_TP]: Adjust before freeing.
10818         * sysdeps/generic/libc-tls.c (__libc_setup_tls): If
10819         TLS_INIT_TP_EXPENSIVE is not defined, allocate even if no PT_TLS
10820         segment has been found.  If TLS_DTV_AT_TP, allocate TLS_PRE_TCB_SIZE
10821         bytes below result and add tcb_offset to memsz.
10822         * sysdeps/ia64/dl-tls.h (__tls_get_addr): New prototype.
10823         * sysdeps/ia64/dl-machine.h: Include tls.h.
10824         (elf_machine_type_class): Return ELF_RTYPE_CLASS_PLT for TLS relocs
10825         too.
10826         (elf_machine_rela): Assume if sym_map != NULL sym is non-NULL too.
10827         Handle R_IA64_DTPMOD*, R_IA64_DTPREL* and R_IA64_TPREL* relocations.
10828         * sysdeps/ia64/libc-tls.c: New file.
10830 2003-01-10  Steven Munroe  <sjmunroe@us.ibm.com>
10832         * sysdeps/powerpc/powerpc64/sysdep.h (PSEUDO_RET): Add branch hit.
10833         * sysdeps/unix/sysv/linux/powerpc/bits/stat.h (STAT_VER_LINUX):
10834         Fix type.  Move definition out of #if.
10835         * sysdeps/unix/sysv/linux/powerpc/powerpc64/ftruncate64.c: New file.
10836         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pread.c: New file.
10837         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pread64.c: New file.
10838         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pwrite.c: New file.
10839         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pwrite64.c: New file.
10840         * sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S: Add cancellation
10841         support.
10842         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Remove
10843         ftruncate64, pread64, pwrite64, truncate64 entries.
10844         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h
10845         (INLINE_SYSCALL): New version that supports function call like
10846         syscalls.  Add __builtin_expect.
10847         (LOADARGS_n): Add argument size safety checks.
10848         (INTERNAL_SYSCALL): New Macro.
10849         * sysdeps/unix/sysv/linux/powerpc/powerpc64/truncate64.c: New file.
10850         * sysdeps/unix/sysv/linux/powerpc/sys/procfs.h [__PPC_ELF_H]: Avoid
10851         redefinition of elf_fpreg_t and elf_fpregset_t.
10853 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
10855         * elf/dl-close.c (_dl_close): Add several asserts.  Correct and
10856         simplify test for unloading.  If loader of a DSO is unloaded do not
10857         use its scope anymore.  Fall back to own scope and adjust opencounts.
10858         Fix several comments.
10859         * elf/dl-deps.c (_dl_map_object_deps): Always allocate memory for
10860         the l_searchlist, not only for l_initfini.
10862         * elf/dl-lookup.c (add_dependencies): Avoid creating relocation
10863         dependencies if objects cannot be removed.  Remove object with the
10864         definition as not unloadable if necessary.
10866         * elf/reldep6.c: Create relocation dependency before closing the first
10867         module.
10869 2003-01-10  Guido Günther  <agx@sigxcpu.org>
10871         * sysdeps/unix/mips/fork.S: Add PSEUDO_END.
10872         * sysdeps/unix/mips/brk.S: Likewise.
10873         * sysdeps/unix/mips/pipe.S: Likewise.
10875 2003-01-10  Andreas Schwab  <schwab@suse.de>
10877         * sysdeps/unix/sysv/linux/m68k/getsysstats.c: New file.
10879         * sysdeps/unix/sysv/linux/m68k/vfork.S: Optimize for kernels which
10880         are known to have the vfork syscall.
10882         * sysdeps/m68k/sysdep.h (JUMPTARGET): Undefine before defining it.
10884         * sysdeps/unix/sysv/linux/kernel-features.h
10885         (__ASSUME_MMAP2_SYSCALL, __ASSUME_TRUNCATE64_SYSCALL)
10886         (__ASSUME_STAT64_SYSCALL, __ASSUME_FCNTL64)
10887         (__ASSUME_VFORK_SYSCALL): Define for m68k kernels >= 2.4.12.
10889 2003-01-09  Jakub Jelinek  <jakub@redhat.com>
10891         * elf/Makefile: Add rules to build and run reldep9 test.
10892         * elf/reldep9.c: New file.
10893         * elf/reldep9mod1.c: New file.
10894         * elf/reldep9mod2.c: New file.
10895         * elf/reldep9mod3.c: New file.
10897 2003-01-09  Jakub Jelinek  <jakub@redhat.com>
10899         * elf/Makefile: Add rules to build and run nodelete2 test.
10900         * elf/nodelete2.c: New file.
10901         * elf/nodel2mod1.c: New file.
10902         * elf/nodel2mod2.c: New file.
10903         * elf/nodel2mod3.c: New file.
10905 2003-01-09  Jakub Jelinek  <jakub@redhat.com>
10907         * posix/test-vfork.c (noop): Add __attribute_noinline__.
10908         * sysdeps/generic/sysdep.h (JUMPTARGET): Define if not defined.
10909         * sysdeps/i386/sysdep.h (JUMPTARGET): Undefine JUMPTARGET before
10910         defining it.
10911         * sysdeps/powerpc/powerpc32/sysdep.h (JUMPTARGET): Likewise.
10912         * sysdeps/powerpc/powerpc64/sysdep.h (JUMPTARGET): Likewise.
10913         * sysdeps/s390/s390-32/sysdep.h (JUMPTARGET): Likewise.
10914         * sysdeps/s390/s390-64/sysdep.h (JUMPTARGET): Likewise.
10915         * sysdeps/x86_64/sysdep.h (JUMPTARGET): Likewise.
10917 2003-01-09  Andreas Schwab  <schwab@suse.de>
10919         * sysdeps/m68k/fpu/libm-test-ulps: Regenerated.
10921 2003-01-08  Ulrich Drepper  <drepper@redhat.com>
10923         * sysdeps/unix/sysv/linux/arm/sysdep.h (INTERNAL_SYSCALL,
10924         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Add err
10925         argument.
10926         (INTERNAL_SYSCALL_DECL): Define.
10928 2003-01-06  Jakub Jelinek  <jakub@redhat.com>
10930         * sysdeps/unix/sysv/linux/ia64/sysdep.h (INTERNAL_SYSCALL,
10931         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Add err
10932         argument.
10933         (INTERNAL_SYSCALL_DECL): Define.
10934         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h: Likewise.
10935         * sysdeps/unix/sysv/linux/sparc/sysdep.h: Likewise.
10936         * sysdeps/unix/sysv/linux/i386/sysdep.h: Likewise.
10937         (INLINE_SYSCALL): Adjust.
10938         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Likewise.
10939         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise.
10940         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Likewise.
10941         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
10942         * elf/dl-misc.c (_dl_debug_vdprintf): Add INTERNAL_SYSCALL_DECL,
10943         add err argument to INTERNAL_SYSCALL* macros.
10944         * sysdeps/unix/sysv/linux/i386/brk.c (__brk): Likewise.
10945         * sysdeps/unix/sysv/linux/i386/system.c (cancel_handler): Likewise.
10946         * sysdeps/unix/sysv/linux/m68k/brk.c (__brk): Likewise.
10947         * sysdeps/unix/sysv/linux/m68k/getpagesize.c  (__getpagesize):
10948         Likewise.
10949         * sysdeps/unix/sysv/linux/sigwait.c (do_sigwait): Likewise.
10950         * sysdeps/unix/sysv/linux/i386/sigaction.c (__libc_sigaction): Use
10951         INLINE_SYSCALL instead of INTERNAL_SYSCALL and setting errno.
10953 2003-01-07  Ulrich Drepper  <drepper@redhat.com>
10955         Unify symbols in user namespace exported by libc.so and libc.a.
10956         * argp/argp-fmtstream.c: Don't define argp_make_fmtstream,
10957         argp_fmtstream_free, and argp_fmtstream_printf.
10958         * argp/argp-fs-xinl.c: Don't define argp_fmtstream_putc,
10959         argp_fmtstream_puts, argp_fmtstream_write, argp_fmtstream_set_lmargin,
10960         argp_fmtstream_set_rmargin, argp_fmtstream_set_wmargin, and
10961         argp_fmtstream_point.
10962         * gmon/gmon.c: Don't define write_profiling.
10963         * libio/genops.c: Don't define _cleanup.
10965         * intl/explodename.c (_nl_find_language.c): Mark as static.
10966         * intl/loadinfo.h: Remove _nl_find_language prototype.
10968         * libio/fileops.c (_IO_file_seekoff_maybe_mmap): Mark as static.
10969         * libio/libioP.h: Remove declaration.
10971         * libio/iopopen.c (_IO_proc_jumps): Mark as static.
10972         * libio/libioP.h: Remove declaration.
10974         * sysdeps/generic/unwind-dw2.c: Mark __frame_state_for with STATIC.
10975         * sysdeps/generic/framestate.c: Define STATIC before including
10976         unwind-dw2.c.
10978         * time/Versions [GLIBC_2.3.2] (libc): Export strptime_l.
10980 2003-01-06  Philip Blundell  <philb@gnu.org>
10982         * sysdeps/unix/arm/sysdep.S (syscall_error): Optimise a little.
10983         [__LIBC_REENTRANT]: Unify PIC and non-PIC cases.
10985         * sysdeps/unix/sysv/linux/arm/sysdep.h (PSEUDO): Remove .type
10986         directive.
10987         (PSEUDO_RET): Use SYSCALL_ERROR in place of __syscall_error.
10988         (SYSCALL_ERROR): New.
10989         (SYSCALL_ERROR_HANDLER) [NOT_IN_libc]: Provide local copy of error
10990         handling code.
10991         (INTERNAL_SYSCALL): Define.
10992         (INLINE_SYSCALL): Use it.
10993         (INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Define.
10994         * sysdeps/unix/sysv/linux/arm/socket.S (__socket): Use
10995         SYSCALL_ERROR in place of __syscall_error.
10997 2003-01-07  Jakub Jelinek  <jakub@redhat.com>
10999         * sysdeps/ia64/bits/byteswap.h [__GNUC__ >= 2] (__bswap_16,
11000         __bswap_32, __bswap_64): Put x into temporary variable
11001         to avoid warnings.
11002         [!__GNUC__] (__bswap_16, __bswap_32, __bswap_64): Change into static
11003         (inline) functions.
11004         * sysdeps/s390/bits/byteswap.h [__GNUC__ >= 2] (__bswap_16,
11005         __bswap_32, __bswap_64): Put x into temporary variable
11006         to avoid warnings.
11007         [!__GNUC__] (__bswap_16, __bswap_32, __bswap_64): Change into static
11008         (inline) functions.
11009         * sysdeps/i386/bits/byteswap.h [!__GNUC__] (__bswap_16, __bswap_32):
11010         Likewise.
11012 2003-01-07  Jakub Jelinek  <jakub@redhat.com>
11014         * sysdeps/unix/sysv/linux/alpha/adjtime.c (ntp_adjtime): New weak
11015         alias.
11017 2003-01-07  Jakub Jelinek  <jakub@redhat.com>
11019         * elf/rtld.c (_rtld_global): Remove _dl_dynamic_weak initializer.
11020         * elf/dl-support.c (_dl_dynamic_weak): Initialize to 0.
11022 2003-01-07  Ulrich Drepper  <drepper@redhat.com>
11024         * math/libm-test.inc (significand_test): New function.
11025         (main): Call it.
11027 2003-01-06  Roland McGrath  <roland@redhat.com>
11029         * sysdeps/i386/i486/bits/string.h (memset): Add parens around macro
11030         arguments.
11031         (memcpy, memrchr, strcpy, __stpcpy, strncpy, strcat): Likewise.
11032         (strcmp, strncat, strncmp, strchr, __strchrnul, strchrnul): Likewise.
11033         (index, strrchr, rindex, strcspn, strspn, strpbrk, strstr): Likewise.
11035         * string/tester.c (test_strcpy): Add test with `void *' arguments.
11037 2003-01-06  Ulrich Drepper  <drepper@redhat.com>
11039         * sysdeps/i386/fpu/s_significandl.c (__significandl): Really
11040         return significand and not the exponent.
11041         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
11043         * elf/dl-misc.c (_dl_debug_vdprintf): Help PPC port by explicitly
11044         taking address of iov in INTERNAL_SYSCALL call.  Patch by Franz Sirl.
11046         * malloc/malloc.c: Mark all _int_* functions as static.
11048 2003-01-06  Jakub Jelinek  <jakub@redhat.com>
11050         * sysdeps/unix/alpha/sysdep.h (PSEUDO): Use PSEUDO_PREPARE_ARGS.
11051         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S: Add cancellation
11052         handling.
11053         * sysdeps/unix/sysv/linux/alpha/select.S: Likewise.
11055 2003-01-06  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
11057         * sysdeps/powerpc/powerpc32/sysdep.h (PSEUDO_RET): Add branch hint.
11058         * sysdeps/unix/sysv/linux/powerpc/powerpc32/socket.S: Add cancellation
11059         support.
11060         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Remove
11061         ftruncate64, truncate64, pread64 and pwrite64 entries.
11062         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h
11063         (INLINE_SYSCALL): Add __builtin_expect.
11064         (LOADARGS_n): Add argument size safety checks.
11065         * sysdeps/unix/sysv/linux/powerpc/powerpc32/ftruncate64.c: New file.
11066         * sysdeps/unix/sysv/linux/powerpc/powerpc32/truncate64.c: New file.
11067         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pread.c: New file.
11068         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pread64.c: New file.
11069         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pwrite.c: New file.
11070         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pwrite64.c: New file.
11072 2003-01-06  Jakub Jelinek  <jakub@redhat.com>
11074         * sysdeps/generic/sysdep-cancel.h (LIBC_CANCEL_HANDLED): Define.
11075         * sysdeps/generic/creat.c: Include sysdep-cancel.h.
11076         (LIBC_CANCEL_HANDLED): Add.
11078         * sysdeps/unix/sysv/linux/alpha/sysdep.h
11079         (inline_syscall_r0_constraint): Rename to...
11080         (inline_syscall_r0_out_constraint): ... this.  Add =.
11081         (inline_syscall[0-6]): Use inline_syscall_r0_out_constraint.
11083 2003-01-06  Andreas Schwab  <schwab@suse.de>
11085         * sysdeps/m68k/dl-machine.h (elf_machine_runtime_setup): Make
11086         sure this is always inlined.
11087         (elf_machine_rela): Likewise.
11089         * sysdeps/m68k/Makefile (sysdep-CFLAGS): Increase inline limit.
11091 2003-01-04  Roland McGrath  <roland@redhat.com>
11093         * Makeconfig (+mkdep): Add -MP flag.
11094         Suggested by Art Haas <ahaas@airmail.net>.
11096 2003-01-05  Andreas Schwab  <schwab@suse.de>
11098         * sysdeps/m68k/Makefile (CFLAGS-.oS): Append -fPIC.
11100 2003-01-05  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
11102         * sysdeps/unix/sysv/linux/sh/clone.S (__clone): Use
11103         SYSCALL_ERROR_HANDLER.
11104         * sysdeps/unix/sysv/linux/sh/pipe.S (__libc_pipe): Likewise.
11105         * sysdeps/unix/sysv/linux/sh/socket.S (__socket): Likewise.
11106         Add support for cancellation handling.
11107         * sysdeps/unix/sysv/linux/sh/syscall.S (__syscall): Use
11108         SYSCALL_ERROR_HANDLER.
11109         * sysdeps/unix/sysv/linux/sh/vfork.S (__vfork): Likewise.
11110         * sysdeps/unix/sysv/linux/sh/sysdep.h (PSEUDO): Likewise.
11111         Add support for cancellation handling.
11112         (SYSCALL_ERROR_HANDLER): Define PIC variants.
11114 2003-01-04  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
11116         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Mark
11117         __syscall_pread64 and __syscall_pwrite64 cancelable.
11118         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h
11119         (INTERNAL_SYSCALL): New macro.
11120         (LOADARGS_0, LOADARGS_1): Fix.
11122 2003-01-05  Ulrich Drepper  <drepper@redhat.com>
11124         * Makerules (build-shlip-helper): Unless told otherwise, add
11125         -Wl,-z,defs to linker command line.
11126         * rt/Makefile (librt.so): Link with ld.so.
11127         * dlfcn/Makefile (libdl.so): Likewise.
11129 2003-01-05  Jakub Jelinek  <jakub@redhat.com>
11131         * sysdeps/unix/sysv/linux/s390/s390-32/socket.S: Add support for
11132         cancellation handling.
11133         * sysdeps/unix/sysv/linux/s390/s390-64/socket.S: Likewise.
11134         * sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c: Likewise.
11136 2003-01-04  Ulrich Drepper  <drepper@redhat.com>
11138         * sysdeps/unix/sysv/linux/i386/system.c (cancel_handler): Correct
11139         order of parameters passed to kill.
11141 2003-01-04  Andreas Schwab  <schwab@suse.de>
11143         * sysdeps/unix/sysv/linux/m68k/bits/stat.h: Add nanosecond fields.
11145 2003-01-03  Paul Eggert  <eggert@twinsun.com>
11147         * malloc/obstack.h (__INT_TO_PTR) [__STDC__]: Cast result to
11148         (void *) to avoid diagnostic with native c89 on SGI IRIX 6.5
11149         when compiling Bison 1.875's `bitset bset = obstack_alloc
11150         (bobstack, bytes);'.  Problem reported by Nelson H. F. Beebe.
11152 2003-01-04  Ulrich Drepper  <drepper@redhat.com>
11154         * sysdeps/posix/system.c (do_system): Minor optimizations.  Remove
11155         unnecessary code.
11156         Correct reference counter in case SIGQUIT handler installation failed.
11158 2003-01-03  Ulrich Drepper  <drepper@redhat.com>
11160         * include/libc-symbols.h [HAVE_WEAK_SYMBOLS] (_weak_extern):
11161         Define using _Pragma(weak ...).
11163 2003-01-03  Andreas Jaeger  <aj@suse.de>, Jakub Jelinek <jakub@redhat.com>
11165         * resolv/res_libc.c: Provide declaration for __res_init_weak and
11166         reorder declarations.
11168 2003-01-03  Art Haas  <ahaas@airmail.net>
11170         * localedata/tests-mbwc/dat_iswalnum.c: Convert GCC extension
11171         initializer syntax to C99.
11172         * localedata/tests-mbwc/dat_iswalpha.c: Likewise.
11173         * localedata/tests-mbwc/dat_iswcntrl.c: Likewise.
11174         * localedata/tests-mbwc/dat_iswctype.c: Likewise.
11175         * localedata/tests-mbwc/dat_iswdigit.c: Likewise.
11176         * localedata/tests-mbwc/dat_iswgraph.c: Likewise.
11177         * localedata/tests-mbwc/dat_iswlower.c: Likewise.
11178         * localedata/tests-mbwc/dat_iswprint.c: Likewise.
11179         * localedata/tests-mbwc/dat_iswpunct.c: Likewise.
11180         * localedata/tests-mbwc/dat_iswspace.c: Likewise.
11181         * localedata/tests-mbwc/dat_iswupper.c: Likewise.
11182         * localedata/tests-mbwc/dat_iswxdigit.c: Likewise.
11183         * localedata/tests-mbwc/dat_mblen.c: Likewise.
11184         * localedata/tests-mbwc/dat_mbrlen.c: Likewise.
11185         * localedata/tests-mbwc/dat_mbrtowc.c: Likewise.
11186         * localedata/tests-mbwc/dat_mbsrtowcs.c: Likewise.
11187         * localedata/tests-mbwc/dat_mbstowcs.c: Likewise.
11188         * localedata/tests-mbwc/dat_mbtowc.c: Likewise.
11189         * localedata/tests-mbwc/dat_strcoll.c: Likewise.
11190         * localedata/tests-mbwc/dat_strfmon.c: Likewise.
11191         * localedata/tests-mbwc/dat_strxfrm.c: Likewise.
11192         * localedata/tests-mbwc/dat_swscanf.c: Likewise.
11193         * localedata/tests-mbwc/dat_towctrans.c: Likewise.
11194         * localedata/tests-mbwc/dat_towlower.c: Likewise.
11195         * localedata/tests-mbwc/dat_towupper.c: Likewise.
11196         * localedata/tests-mbwc/dat_wcrtomb.c: Likewise.
11197         * localedata/tests-mbwc/dat_wcscat.c: Likewise.
11198         * localedata/tests-mbwc/dat_wcschr.c: Likewise.
11199         * localedata/tests-mbwc/dat_wcscmp.c: Likewise.
11200         * localedata/tests-mbwc/dat_wcscoll.c: Likewise.
11201         * localedata/tests-mbwc/dat_wcscpy.c: Likewise.
11202         * localedata/tests-mbwc/dat_wcscspn.c: Likewise.
11203         * localedata/tests-mbwc/dat_wcslen.c: Likewise.
11204         * localedata/tests-mbwc/dat_wcsncat.c: Likewise.
11205         * localedata/tests-mbwc/dat_wcsncmp.c: Likewise.
11206         * localedata/tests-mbwc/dat_wcsncpy.c: Likewise.
11207         * localedata/tests-mbwc/dat_wcspbrk.c: Likewise.
11208         * localedata/tests-mbwc/dat_wcsrtombs.c: Likewise.
11209         * localedata/tests-mbwc/dat_wcsspn.c: Likewise.
11210         * localedata/tests-mbwc/dat_wcsstr.c: Likewise.
11211         * localedata/tests-mbwc/dat_wcstod.c: Likewise.
11212         * localedata/tests-mbwc/dat_wcstok.c: Likewise.
11213         * localedata/tests-mbwc/dat_wcstombs.c: Likewise.
11214         * localedata/tests-mbwc/dat_wcswidth.c: Likewise.
11215         * localedata/tests-mbwc/dat_wcsxfrm.c: Likewise.
11216         * localedata/tests-mbwc/dat_wctob.c: Likewise.
11217         * localedata/tests-mbwc/dat_wctomb.c: Likewise.
11218         * localedata/tests-mbwc/dat_wctrans.c: Likewise.
11219         * localedata/tests-mbwc/dat_wctype.c: Likewise.
11220         * localedata/tests-mbwc/dat_wcwidth.c: Likewise.
11222 2003-01-03  Richard Henderson  <rth@redhat.com>
11224         * sysdeps/unix/sysv/linux/alpha/sysdep.h (inline_syscall_r0_asm): New.
11225         (inline_syscall_r0_constraint): New.
11226         (inline_syscall[0-6]): Use them.
11228 2003-01-03  Jakub Jelinek  <jakub@redhat.com>
11230         * sysdeps/generic/ldsodefs.h (_dl_allocate_tls, _dl_deallocate_tls):
11231         Add rtld_hidden_proto.
11232         * sysdeps/generic/dl-tls.c (_dl_deallocate_tls): Add rtld_hidden_def.
11233         (_dl_allocate_tls): Likewise.  Remove INTDEF.
11235 2002-07-05  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
11237         * sysdeps/sh/memcpy.S: Optimize.  Based on a patch by Toshiyasu
11238         Morita <toshiyasu.morita@hsa.hitachi.com>.
11239         * sysdeps/sh/memcpy.S: Likewise.
11241 2003-01-02  Ulrich Drepper  <drepper@redhat.com>
11243         * sysdeps/pthread/aio_suspend.c (aio_suspend): Don't quite remove
11244         any, but unify the test.
11246 2003-01-02  Jakub Jelinek  <jakub@redhat.com>
11248         * sysdeps/unix/sysv/linux/arm/sigaction.c (__sigaction,
11249         sigaction): Protect weak_alias and libc_hidden_weak with
11250         #ifndef LIBC_SIGACTION.
11251         * sysdeps/unix/sysv/linux/ia64/sigaction.c (__sigaction,
11252         sigaction): Likewise.
11253         * sysdeps/unix/sysv/linux/mips/sigaction.c (__sigaction,
11254         sigaction): Likewise.
11255         * sysdeps/unix/sysv/linux/s390/s390-64/sigaction.c (__sigaction,
11256         sigaction): Likewise.
11257         * sysdeps/unix/sysv/linux/sparc/sparc32/sigaction.c (__sigaction,
11258         sigaction): Likewise.
11259         * sysdeps/unix/sysv/linux/sparc/sparc64/sigaction.c (__sigaction,
11260         sigaction): Likewise.
11261         * sysdeps/unix/sysv/linux/x86_64/sigaction.c (__sigaction,
11262         sigaction): Likewise.
11263         * sysdeps/unix/sysv/linux/i386/sigaction.c (__sigaction,
11264         sigaction): Likewise.  Remove SIGCANCEL handling here.
11265         * sysdeps/unix/sysv/linux/sigaction.c (__sigaction, sigaction):
11266         Likewise.
11268 2003-01-02  Art Haas  <ahaas@airmail.net>
11270         * login/tst-utmp.c: Convert GCC extension initializer syntax to C99.
11272 2003-01-02  Ulrich Drepper  <drepper@redhat.com>
11274         * posix/getconf.c: Update copyright year.
11275         * nss/getent.c: Likewise.
11276         * nscd/nscd_nischeck.c: Likewise.
11277         * iconv/iconvconfig.c: Likewise.
11278         * iconv/iconv_prog.c: Likewise.
11279         * elf/ldconfig.c: Likewise.
11280         * catgets/gencat.c: Likewise.
11281         * csu/version.c: Likewise.
11282         * elf/ldd.bash.in: Likewise.
11283         * elf/sprof.c (print_version): Likewise.
11284         * locale/programs/locale.c: Likewise.
11285         * locale/programs/localedef.c: Likewise.
11286         * nscd/nscd.c (print_version): Likewise.
11287         * debug/xtrace.sh: Likewise.
11288         * malloc/memusage.sh: Likewise.
11289         * malloc/mtrace.pl: Likewise.
11291 2003-01-01  Jakub Jelinek  <jakub@redhat.com>
11293         * io/sys/stat.h: Include time.h with __need_timespec even if
11294         __USE_MISC is defined but __USE_XOPEN is not.
11296 2003-01-01  Andreas Jaeger  <aj@suse.de>
11298         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Use union
11299         type to avoid strict aliasing problem.
11300         (_nss_dns_gethostbyname2_r): Likewise.
11301         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyaddr_r): Likewise.
11302         (_nss_dns_getnetbyname_r): Likewise.
11303         * resolv/gethnamaddr.c (_gethtent): Likewise.
11304         (gethostbyname2): Likewise.
11306 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
11308         * string/string-inlines.c: Define __memcpy_g and __strchr_g macros
11309         to avoid using the exported symbols.  Define aliases with the
11310         original names separately.
11312         * include/time.h: Add libc_hidden_proto for __strftime_l.
11313         * include/wchar.h: Add libc_hidden_proto for __wcsftime_l.
11314         * time/strftime.c: Always use libc_hidden_def if _LIBC.
11316         * libio/libioP.h: Add libc_hidden_proto for _IO_file_open.
11317         * libio/fileops.c: Add libc_hidden_def for _IO_file_open.
11319         * malloc/mtrace.c: Add libc_hidden_proto and libc_hidden_def for
11320         tr_break.
11322         * csu/Makefile (routines): Add dso_handle.
11323         * csu/dso_handle.c: New file.
11325 2002-12-31  Roland McGrath  <roland@redhat.com>
11327         * Makerules (compile.S, COMPILE.S): Remove -DASSEMBLER here.
11328         Use $(S-CPPFLAGS) in place of $(asm-CPPFLAGS).
11329         (S-CPPFLAGS): Add -DASSEMBLER here instead.
11330         (generate-md5, +make-deps): Fix magic to get $(S-CPPFLAGS).
11332 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
11334         * malloc/thread-m.h [SHARED] (thread_atfork): Assume __dso_handle
11335         is available.
11337 2002-12-31  Andreas Jaeger  <aj@suse.de>
11339         * sysdeps/unix/sysv/linux/powerpc/powerpc32/kernel_stat.h: Sync
11340         with Linux kernel.
11341         * sysdeps/unix/sysv/linux/sparc/sparc32/kernel_stat.h: Likewise.
11342         * sysdeps/unix/sysv/linux/s390/s390-64/kernel_stat.h: Likewise.
11343         * sysdeps/unix/sysv/linux/hppa/kernel_stat.h: Likewise.
11345         * sysdeps/unix/sysv/linux/kernel_stat.h
11346         (_HAVE_STAT_NSEC,_HAVE_STAT_NSEC64): New.
11348         * sysdeps/unix/sysv/linux/xstatconv.c (xstat_conv): Re-add
11349         __unused[1-3] since they're needed by some platforms.  Handle
11350         _HAVE_STAT_NSEC and _HAVE_STAT_NSEC64.
11352         * sysdeps/unix/sysv/linux/x86_64/bits/stat.h: Add nsec resolution
11353         for structs stat and stat64.
11354         * sysdeps/unix/sysv/linux/ia64/bits/stat.h: Likewise.
11355         * sysdeps/unix/sysv/linux/powerpc/bits/stat.h: Likewise.
11356         * sysdeps/unix/sysv/linux/sparc/bits/stat.h: Likewise.
11357         * sysdeps/unix/sysv/linux/s390/bits/stat.h: Likewise.
11359         * io/sys/stat.h [__USE_MISC]: Define __need_timespec for struct stat.
11361         * sysdeps/unix/sysv/linux/xstatconv.c (xstat_conv): Adjust for
11362         nsec resolution changes.
11363         (xstat64_conv): Likewise.
11364         (xstat32_conv): Likewise.
11366         * sysdeps/unix/sysv/linux/kernel_stat.h: Add nsec resolution for
11367         struct kernel_stat.
11369         * sysdeps/unix/sysv/linux/bits/stat.h: Add nsec resolution for
11370         structs stat and stat64.
11372         * time/time.h (__timespec_defined): Define for __USE_MISC.
11374 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
11376         * include/signal.h: Add libc_hidden_proto for __libc_current_sigrtmin
11377         and __libc_current_sigrtmax.
11379 2002-12-31  Jakub Jelinek  <jakub@redhat.com>
11381         * include/errno.h (__errno_location): Add prototype.
11382         Use libc_hidden_proto unconditionally.
11383         * include/netdb.h (__h_errno_location): Use libc_hidden_proto
11384         unconditionally.
11385         * include/resolv.h (__res_state): Likewise.
11387         * hurd/errno-loc.c (__errno_location): Add libc_hidden_def.
11388         * include/sys/socket.h (accept): Add libc_hidden_proto.
11389         * include/errno.h (__errno_location): Likewise.
11390         * include/netdb.h (__h_errno_location): Likewise.
11391         * include/resolv.h (__res_state): Likewise.
11392         * include/unistd.h (__lseek): Likewise.
11393         * sysdeps/generic/errno-loc.c (__errno_location): Add libc_hidden_def.
11394         * sysdeps/generic/herrno-loc.c (__h_errno_location): Likewise.
11395         * sysdeps/generic/res-state.c (__res_state): Likewise.
11396         * sysdeps/generic/accept.c (accept): Likewise.
11397         * sysdeps/generic/lseek.c (__lseek): Likewise.
11398         * sysdeps/generic/allocrtsig.c (__libc_current_sigrtmin,
11399         __libc_current_sigrtmax): Likewise.
11400         * sysdeps/mach/hurd/accept.c (accept): Likewise.
11401         * sysdeps/mach/hurd/lseek.c (__lseek): Likewise.
11402         * sysdeps/unix/sysv/aix/accept.c (accept): Likewise.
11403         * sysdeps/unix/sysv/aix/lseek.c (__lseek): Likewise.
11404         * sysdeps/unix/sysv/linux/accept.S (accept): Likewise.
11405         * sysdeps/unix/inet/syscalls.list (__GI_accept): New alias to accept.
11406         * sysdeps/unix/sysv/linux/alpha/syscalls.list (__GI_accept): Likewise.
11407         * sysdeps/unix/sysv/linux/hppa/syscalls.list (__GI_accept): Likewise.
11408         * sysdeps/unix/sysv/linux/ia64/syscalls.list (__GI___lseek): New
11409         alias to llseek.
11410         (__GI_accept): New alias to accept.
11411         * sysdeps/unix/sysv/linux/mips/syscalls.list (__GI_accept): Likewise.
11412         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (__GI___lseek):
11413         New alias to llseek.
11414         (__GI_accept): New alias to accept.
11415         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list (__GI_accept):
11416         Likewise.
11417         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (__GI_accept):
11418         Likewise.
11419         * sysdeps/unix/syscalls.list (__GI___lseek): New alias to lseek.
11421         * sysdeps/alpha/setjmp.S : Use libc_hidden_def(name) instead of
11422         strong_alias (name, __GI_name).
11423         * sysdeps/arm/bsd-_setjmp.S : Likewise.
11424         * sysdeps/hppa/bsd-_setjmp.S : Likewise.
11425         * sysdeps/i386/bsd-_setjmp.S : Likewise.
11426         * sysdeps/mips/mips64/bsd-_setjmp.S : Likewise.
11427         * sysdeps/mips/bsd-_setjmp.S : Likewise.
11428         * sysdeps/powerpc/powerpc32/bsd-_setjmp.S : Likewise.
11429         * sysdeps/powerpc/powerpc64/setjmp.S : Likewise.
11430         * sysdeps/s390/s390-32/elf/setjmp.S : Likewise.
11431         * sysdeps/s390/s390-32/bsd-_setjmp.S : Likewise.
11432         * sysdeps/s390/s390-64/elf/setjmp.S : Likewise.
11433         * sysdeps/s390/s390-64/bsd-_setjmp.S : Likewise.
11434         * sysdeps/sh/bsd-_setjmp.S : Likewise.
11435         * sysdeps/sparc/sparc32/setjmp.S : Likewise.
11436         * sysdeps/unix/arm/fork.S : Likewise.
11437         * sysdeps/unix/bsd/hp/m68k/vfork.S : Likewise.
11438         * sysdeps/unix/bsd/i386/vfork.S : Likewise.
11439         * sysdeps/unix/bsd/osf/alpha/fork.S : Likewise.
11440         * sysdeps/unix/bsd/sun/m68k/vfork.S : Likewise.
11441         * sysdeps/unix/bsd/ultrix4/mips/vfork.S : Likewise.
11442         * sysdeps/unix/bsd/vax/vfork.S : Likewise.
11443         * sysdeps/unix/i386/fork.S : Likewise.
11444         * sysdeps/unix/mips/fork.S : Likewise.
11445         * sysdeps/unix/sparc/fork.S : Likewise.
11446         * sysdeps/unix/sparc/vfork.S : Likewise.
11447         * sysdeps/unix/sysv/linux/arm/vfork.S : Likewise.
11448         * sysdeps/unix/sysv/linux/cris/vfork.S : Likewise.
11449         * sysdeps/unix/sysv/linux/i386/vfork.S : Likewise.
11450         * sysdeps/unix/sysv/linux/ia64/fork.S : Likewise.
11451         * sysdeps/unix/sysv/linux/ia64/setjmp.S : Likewise.
11452         * sysdeps/unix/sysv/linux/ia64/vfork.S : Likewise.
11453         * sysdeps/unix/sysv/linux/m68k/vfork.S : Likewise.
11454         * sysdeps/unix/sysv/linux/sh/vfork.S : Likewise.
11455         * sysdeps/unix/sysv/linux/sparc/sparc64/longjmp.S : Likewise.
11456         * sysdeps/unix/sysv/linux/sparc/sparc64/setjmp.S : Likewise.
11457         * sysdeps/unix/sysv/linux/sparc/fork.S : Likewise.
11458         * sysdeps/unix/sysv/linux/sparc/vfork.S : Likewise.
11459         * sysdeps/unix/sysv/linux/x86_64/vfork.S : Likewise.
11460         * sysdeps/unix/fork.S : Likewise.
11461         * sysdeps/vax/bsd-_setjmp.S : Likewise.
11462         * sysdeps/x86_64/bsd-_setjmp.S : Likewise.
11464         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Guard against multiple
11465         inclusion.
11467 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
11469         * include/unistd.h: Add libc_hidden_proto for __fork and __vfork.
11470         * sysdeps/generic/fork.c: Add libc_hidden_def for __fork.
11471         * sysdeps/mach/hurd/fork.c: Likewise.
11472         * sysdeps/unix/sysv/aix/fork.c: Likewise.
11473         * sysdeps/unix/fork.S: Add __GI___fork alias.
11474         * sysdeps/unix/arm/fork.S: Likewise.
11475         * sysdeps/unix/bsd/osf/alpha/fork.S: Likewise.
11476         * sysdeps/unix/i386/fork.S: Likewise.
11477         * sysdeps/unix/mips/fork.S: Likewise.
11478         * sysdeps/unix/sparc/fork.S: Likewise.
11479         * sysdeps/unix/sysv/linux/ia64/fork.S: Likewise.
11480         * sysdeps/unix/sysv/linux/sparc/fork.S: Likewise.
11481         * sysdeps/unix/sysv/linux/syscalls.list: Likewise.
11482         * sysdeps/generic/vfork.c: Add libc_hidden_def for __vfork.
11483         * sysdeps/unix/bsd/hp/m68k/vfork.S: Add __GI___vfork alias.
11484         * sysdeps/unix/bsd/i386/vfork.S: Likewise.
11485         * sysdeps/unix/bsd/sun/m68k/vfork.S: Likewise.
11486         * sysdeps/unix/bsd/ultrix4/mips/vfork.S: Likewise.
11487         * sysdeps/unix/bsd/vax/vfork.S: Likewise.
11488         * sysdeps/unix/sparc/vfork.S: Likewise.
11489         * sysdeps/unix/sysv/linux/arm/vfork.S: Likewise.
11490         * sysdeps/unix/sysv/linux/cris/vfork.S: Likewise.
11491         * sysdeps/unix/sysv/linux/i386/vfork.S: Likewise.
11492         * sysdeps/unix/sysv/linux/ia64/vfork.S: Likewise.
11493         * sysdeps/unix/sysv/linux/m68k/vfork.S: Likewise.
11494         * sysdeps/unix/sysv/linux/sh/vfork.S: Likewise.
11495         * sysdeps/unix/sysv/linux/sparc/vfork.S: Likewise.
11496         * sysdeps/unix/sysv/linux/x86_64/vfork.S: Likewise.
11498         * include/time.h: Add libc_hidden_proto for __nanosleep.
11499         * sysdeps/generic/nanosleep.c: Add libc_hidden_def for __nanosleep.
11500         * sysdeps/mach/nanosleep.c: Likewise.
11501         * sysdeps/unix/sysv/aix/nanosleep.c: Likewise.
11502         * sysdeps/unix/sysv/linux/syscalls.list: Add __GI___nanosleep alias.
11504         * libio/libioP.h: Add libc_hidden_proto for _IO_list_lock,
11505         _IO_list_unlock, and _IO_list_resetlock.
11506         * libio/genops.c: Add libc_hidden_def for _IO_list_lock,
11507         _IO_list_unlock, and _IO_list_resetlock.
11509         * libio/libioP.h: Add libc_hidden_proto for _IO_iter_begin,
11510         _IO_iter_end, _IO_iter_next, and _IO_iter_file.
11511         * libio/genops.c: Add libc_hidden_def for _IO_iter_begin,
11512         _IO_iter_end, _IO_iter_next, and _IO_iter_file.
11514         * include/setjmp.h: Add libc_hidden_proto for __libc_longjmp.
11515         * sysdeps/generic/longjmp.c: Add libc_hidden_def for __longjmp.
11516         * sysdeps/unix/sysv/linux/sparc/sparc64/longjmp.S: Add
11517         __GI___longjmp alias.
11519         * include/setjmp.h: Add libc_hidden_proto for _setjmp.
11520         * sysdeps/alpha/setjmp.S: Add __GI__setjmp alias.
11521         * sysdeps/arm/bsd-_setjmp.S: Likewise.
11522         * sysdeps/generic/bsd-_setjmp.c: Likewise.
11523         * sysdeps/hppa/bsd-_setjmp.S: Likewise.
11524         * sysdeps/i386/bsd-_setjmp.S: Likewise.
11525         * sysdeps/m68k/bsd-_setjmp.c: Likewise.
11526         * sysdeps/mips/bsd-_setjmp.S: Likewise.
11527         * sysdeps/mips/mips64/bsd-_setjmp.S: Likewise.
11528         * sysdeps/powerpc/powerpc32/bsd-_setjmp.S: Likewise.
11529         * sysdeps/powerpc/powerpc64/setjmp.S: Likewise.
11530         * sysdeps/s390/s390-32/bsd-_setjmp.S: Likewise.
11531         * sysdeps/s390/s390-32/elf/setjmp.S: Likewise.
11532         * sysdeps/s390/s390-64/bsd-_setjmp.S: Likewise.
11533         * sysdeps/s390/s390-64/elf/setjmp.S: Likewise.
11534         * sysdeps/sh/bsd-_setjmp.S: Likewise.
11535         * sysdeps/sparc/sparc32/setjmp.S: Likewise.
11536         * sysdeps/unix/sysv/linux/ia64/setjmp.S: Likewise.
11537         * sysdeps/unix/sysv/linux/sparc/sparc64/setjmp.S: Likewise.
11538         * sysdeps/vax/bsd-_setjmp.S: Likewise.
11539         * sysdeps/x86_64/bsd-_setjmp.S: Likewise.
11541 2002-12-30  Ulrich Drepper  <drepper@redhat.com>
11543         * malloc/thread-m.h (thread_atfork): Define using __register_atfork.
11545 2002-12-30  Roland McGrath  <roland@redhat.com>
11547         * Rules (generated): Target removed.
11548         * mach/Makefile (generated): Define it here instead.
11550         * math/Makefile (generated): Add m_*l and m_*f variants too.
11552 2002-12-30  Ulrich Drepper  <drepper@redhat.com>
11554         * elf/dl-close.c (_dl_close): Handle relocation dependencies among
11555         the to-be-deleted objects right away instead of later separately.
11556         The latter fails because the scope data structures of the DSO
11557         might already be gone.
11559         * elf/Makefile: Add rules to build and run reldep8 test.
11560         * elf/reldep8.c: New file.
11561         * elf/reldep8mod1.c: New file.
11562         * elf/reldep8mod2.c: New file.
11563         * elf/reldep8mod3.c: New file.
11564         Contributed by Jakub Jelinek.
11566 2002-12-24  GOTO Masanori  <gotom@debian.or.jp>
11568         * sysdeps/unix/sysv/linux/getdents.c (__GETDENTS): Fix condition
11569         checking of return value ENOSYS from getdents64.
11571 2002-12-28  Andreas Schwab  <schwab@suse.de>
11573         * sysdeps/unix/Makefile: Include $(common-objpfx)s-proto-cancel.d.
11574         ($(common-objpfx)s-%.d): Generalized from
11575         $(common-objpfx)s-proto.d rule.
11576         (common-generated): Add s-proto-cancel.d.
11577         * sysdeps/unix/make-syscalls.sh: Use s-proto-cancel.d for
11578         cancellable syscalls.
11579         * sysdeps/unix/s-proto-cancel.S: New file.
11581 2002-12-29  Roland McGrath  <roland@redhat.com>
11583         * resolv/res_libc.c: Move _res defn magic after res_init defn
11584         so _res macro is in effect for that code.
11586         * Makerules ($(common-objpfx)%.h $(common-objpfx)%.h.d): Fix sed
11587         pattern for prepending $(..) so it doesn't affect $(foo).
11589         * math/Makefile (generated): Add $(addsuffix .c .S,$(calls:s_%=m_%)).
11591 2002-12-29  Jakub Jelinek  <jakub@redhat.com>
11593         * elf/cache.c (add_to_cache): Don't loop forever with 1ULL << 63 set
11594         in hwcap.
11596 2002-12-28  Ulrich Drepper  <drepper@redhat.com>
11598         * misc/sys/cdefs.h (__attribute_deprecated__): New #define.
11600 2002-12-28  Andreas Jaeger  <aj@suse.de>
11602         * sysdeps/generic/readelflib.c (process_elf_file): Cast value to
11603         avoid warning.
11604         * sysdeps/generic/dl-cache.c (_dl_load_cache_lookup): Likewise.
11606 2002-12-27  Jakub Jelinek  <jakub@redhat.com>
11608         * inet/herrno.c (__h_errno_location): Remove.
11609         * inet/Makefile (routines): Add herrno-loc.
11610         * resolv/res_libc.c (__res_state): Remove.
11611         * resolv/Makefile (routines): Add res-state.
11612         * sysdeps/generic/herrno-loc.c: New file.
11613         * sysdeps/generic/res-state.c: New file.
11615 2002-12-27  Jakub Jelinek  <jakub@redhat.com>
11617         * sysdeps/unix/sysv/linux/i386/sysdep.h (I386_USE_SYSENTER):
11618         Only define if USE_DL_SYSINFO is defined.
11620 2002-12-22  Jakub Jelinek  <jakub@redhat.com>
11622         * sysdeps/unix/sysv/linux/ia64/sysdep.h (INLINE_SYSCALL,
11623         INTERNAL_SYSCALL, INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERROR):
11624         Define. Patch by Richard Henderson and Jes Sorensen.
11625         (PSEUDO): Remove unnecessary ;;.
11626         * elf/rtld.c (dl_main): Initialize TLS even if no PT_TLS segments
11627         are found unless TLS_INIT_TP_EXPENSIVE.  Use NONTLS_INIT_TP.
11628         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Use NONTLS_INIT_TP
11629         if not initializing thread pointer.
11630         [!USE_TLS && NONTLS_INIT_TP] (__pthread_initialize_minimal): New.
11631         * sysdeps/generic/libc-start.c (__pthread_initialize_minimal): Don't
11632         make it weak also if NONTLS_INIT_TP.
11633         * sysdeps/unix/common/pause.c: Handle cancellation.
11634         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h [DONT_LOAD_G1]
11635         (LOADSYSCALL): Remove.
11636         (SYSCALL_ERROR_HANDLER_ENTRY): Define.
11637         (SYSCALL_ERROR_HANDLER): Use it.
11638         (PSEUDO): Don't jump around error handler.
11639         * sysdeps/unix/sysv/linux/sparc/sparc32/pipe.S (__libc_pipe): Don't
11640         jump around error handler.
11641         * sysdeps/unix/sysv/linux/sparc/sparc32/syscall.S (syscall): Likewise.
11642         * sysdeps/unix/sysv/linux/sparc/sparc32/socket.S (__socket): Branch
11643         to __syscall_error_handler on failure.
11644         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h [DONT_LOAD_G1]
11645         (LOADSYSCALL): Remove.
11646         (SYSCALL_ERROR_HANDLER_ENTRY): Define.
11647         (SYSCALL_ERROR_HANDLER): Use it.
11648         (PSEUDO): Don't jump around error handler.
11649         * sysdeps/unix/sysv/linux/sparc/sparc64/pipe.S (__libc_pipe): Don't
11650         jump around error handler.
11651         * sysdeps/unix/sysv/linux/sparc/sparc64/syscall.S (syscall): Likewise.
11652         * sysdeps/unix/sysv/linux/sparc/sparc64/socket.S (__socket): Branch
11653         to __syscall_error_handler on failure.
11655 2002-12-27  Roland McGrath  <roland@redhat.com>
11657         * scripts/gen-as-const.awk: New file.
11658         * Makefile (distribute): Add it.
11659         * Makerules ($(common-objpfx)%.h %.h.d: %.sym): New pattern rule.
11660         (before-compile): Add $(gen-as-const-headers:%.sym=$(common-objpfx)%.h)
11661         to the list.
11662         (+depfiles): Add $(addprefix $(common-objpfx),$(gen-as-const-headers)).
11664 2002-12-27  Andreas Schwab  <schwab@suse.de>
11666         * sysdeps/unix/sysv/linux/m68k/socket.S: Add cancellation support.
11668 2002-12-27  Jakub Jelinek  <jakub@redhat.com>
11670         * malloc/arena.c (ptmalloc_init): Don't call next_env_entry if
11671         _environ is NULL.
11673 2002-12-27  Andreas Schwab  <schwab@suse.de>
11675         * Makerules ($(common-objpfx)%.make): Filter through
11676         $(sed-remove-objpfx).
11678 2002-12-23  Roland McGrath  <roland@redhat.com>
11680         * scripts/abilist.awk: Produce a more compact format, divided into
11681         stanzas for each version set, the set name listed only once.
11682         * scripts/extract-abilist.awk: New file.
11683         * scripts/merge-abilist.awk: New file.
11684         * Makerules (check-abi-%, update-abi-%): New pattern rules.
11685         (update-abi, check-abi): New targets.
11686         * Makefile (+subdir_targets): Add subdir_{check,update}-abi.
11688 2002-12-19  Roland McGrath  <roland@redhat.com>
11690         * Makerules (%.symlist): Use LC_ALL=C when running awk script.
11692         * sysdeps/unix/sysv/linux/i386/brk.c (__brk): Cast result of
11693         INTERNAL_SYSCALL.
11695 2002-12-21  Andreas Schwab  <schwab@suse.de>
11697         * elf/check-textrel.c (handle_file): Swap p_type.
11699 2002-12-21  Andreas Schwab  <schwab@suse.de>
11701         * sysdeps/unix/sysv/linux/m68k/sysdep.h (INTERNAL_SYSCALL): Define.
11702         (INLINE_SYSCALL): Use it.
11703         (INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Define.
11704         (SYSCALL_ERROR_HANDLER): Define RTLD_PRIVATE_ERRNO variant.
11706         * sysdeps/unix/sysv/linux/m68k/getpagesize.c: Use INTERNAL_SYSCALL.
11707         * sysdeps/unix/sysv/linux/m68k/brk.c: Likewise.
11709 2002-12-20  Art Haas  <ahaas@airmail.net>
11711         * sysdeps/gnu/siglist.c: Convert GCC extension initializer
11712         syntax to C99.
11714 2002-12-21  Philip Blundell  <philb@gnu.org>
11716         * sysdeps/arm/elf/start.S (_start): Optimise a little.  Push stack
11717         top as seventh arg to __libc_start_main.
11718         Reported by paulnash@wildseed.com.
11720         * sysdeps/unix/sysv/linux/arm/clone.S: Small optimisation.
11722         * sysdeps/unix/sysv/linux/arm/sigcontextinfo.h: Elide
11723         compatibility cruft when new enough kernel is assumed.
11725 2002-12-20  Jakub Jelinek  <jakub@redhat.com>
11727         * sysdeps/unix/sysv/linux/i386/brk.c (__brk): Use INTERNAL_SYSCALL
11728         instead of INLINE_SYSCALL.
11730 2002-12-20  Ulrich Drepper  <drepper@redhat.com>
11732         * sysdeps/unix/sysv/linux/i386/sigaction.c (__libc_sigaction): Fix
11733         typo.
11735         * sysdeps/unix/sysv/linux/alpha/bits/shm.h: Define SHM_HUGETLB.
11736         * sysdeps/unix/sysv/linux/bits/shm.h: Likewise.
11737         * sysdeps/unix/sysv/linux/hppa/bits/shm.h: Likewise.
11738         * sysdeps/unix/sysv/linux/ia64/bits/shm.h: Likewise.
11739         * sysdeps/unix/sysv/linux/mips/bits/shm.h: Likewise.
11740         * sysdeps/unix/sysv/linux/powerpc/bits/shm.h: Likewise.
11741         * sysdeps/unix/sysv/linux/s390/bits/shm.h: Likewise.
11742         * sysdeps/unix/sysv/linux/sparc/bits/shm.h: Likewise.
11743         * sysdeps/unix/sysv/linux/x86_64/bits/shm.h: Likewise.
11744         Patch by William Lee Irwin <wli@holomorphy.com>.
11746 2002-12-20  Andreas Schwab  <schwab@suse.de>
11748         * locale/programs/ld-measurement.c (measurement_output): Fix
11749         index calculation.
11751 2002-12-20  Ulrich Drepper  <drepper@redhat.com>
11753         * include/libio.h [_IO_MTSAFE_IO && _IO_lock_inexpensive]:
11754         Redefine _IO_flockifle and _IO_funlockfile as inlines.
11756         * sysdeps/generic/dl-sysdep.c (_dl_important_hwcaps): For TLS
11757         builds add "tls" in the search path.
11758         * elf/ldconfig.c (is_hwcap_platform): Also recognize "tls".
11759         (path_hwcap): Recognize "tls".
11761 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
11763         * sysdeps/unix/sysv/linux/i386/system.c (cancel_handler): Use
11764         __waitpid instead of waitpid.
11766         * sysdeps/unix/sysv/linux/i386/_exit.S: Use ENTER_KERNEL instead of
11767         int $0x80.
11768         * sysdeps/unix/sysv/linux/i386/getcontext.S: Likewise.
11769         * sysdeps/unix/sysv/linux/i386/setcontext.S: Likewise.
11770         * sysdeps/unix/sysv/linux/i386/swapcontext.S: Likewise.
11772         * sysdeps/unix/sysv/linux/i386/sysdep.h: Add support to use AT_SYSINFO
11773         information for system calls.
11775         * sysdeps/generic/dl-sysdep.h: Define RTLD_PRIVATE_ERRNO to 1 only
11776         for ld.so.
11778         * elf/rtld.c (_dl_start) [USE___THREAD]: Define initdtv.
11780 2002-12-19  Roland McGrath  <roland@redhat.com>
11782         * iconvdata/ibm856.h: Convert GCC extension initializer syntax to C99.
11783         * iconvdata/ibm922.h: Likewise.
11784         * iconvdata/ibm930.h: Likewise.
11785         * iconvdata/ibm932.h: Likewise.
11786         * iconvdata/ibm933.h: Likewise.
11787         * iconvdata/ibm935.h: Likewise.
11788         * iconvdata/ibm937.h: Likewise.
11789         * iconvdata/ibm939.h: Likewise.
11790         * iconvdata/ibm943.h: Likewise.
11791         * iconvdata/isiri-3342.h: Likewise.
11793 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
11795         * test-skeleton.c (main): Make sure correct value is seen as
11796         argv[0] after adjustment of argv, and argc.
11798         * elf/rtld.c: Don't initialize _dl_dynamic_weak to 1 if
11799         RTLD_CORRECT_DYNAMIC_WEAK is defined.
11801 2002-12-19  Jakub Jelinek  <jakub@redhat.com>
11803         * nscd/connections.c (nscd_run): Shut up warning.
11804         * tst-ungetc.c (assert): Undefined before redefining.
11806 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
11808         * posix/regex.c: Use __builtin_expect even outside glibc if gcc 3
11809         is used.
11811 2002-12-17  Art Haas  <ahaas@airmail.net>
11813         * iconvdata/cp737.h: Convert GCC extension initializer syntax to C99.
11814         * iconvdata/cp775.h: Likewise.
11815         * iconvdata/ibm1046.h: Likewise.
11816         * iconvdata/ibm1124.h: Likewise.
11817         * iconvdata/ibm1129.h: Likewise.
11818         * iconvdata/ibm1132.h: Likewise.
11819         * iconvdata/ibm1133.h: Likewise.
11820         * iconvdata/ibm1160.h: Likewise.
11821         * iconvdata/ibm1161.h: Likewise.
11822         * iconvdata/ibm1162.h: Likewise.
11823         * iconvdata/ibm1163.h: Likewise.
11824         * iconvdata/ibm1164.h: Likewise.
11826 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
11828         * sysdeps/unix/sysv/linux/i386/system.c: Define FORK only if
11829         __ASSUME_CLONE_THREAD_FLAGS is defined.
11830         * sysdeps/unix/sysv/linux/kernel-features.h
11831         (__ASSUME_CLONE_THREAD_FLAGS): Define for x86 and kernel >= 2.5.50.
11833 2002-12-18  Ulrich Drepper  <drepper@redhat.com>
11835         * sysdeps/unix/sysv/linux/i386/brk.c: Use INTERNAL_SYSCALL instead
11836         of asm.
11837         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
11839         * elf/dl-support.c [NEED_DL_SYSINFO]: Define and initialize
11840         _dl_sysinfo.
11841         [DL_SYSINFO_IMPLEMENTATION]: If defined use it to generate the needed
11842         code.
11843         * elf/rtld.c [DL_NEED_SYSINFO]: Initialize _dl_sysinfo element of
11844         _rtld_global.
11845         [DL_SYSINFO_IMPLEMENTATION]: If defined use it to generate the needed
11846         code.
11847         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start) [NEED_DL_SYSINFO]:
11848         Check for AT_SYSINFO and set _dl_sysinfo appropriately.
11849         * sysdeps/generic/ldsodefs.h (struct rtld_global) [NEED_DL_SYSINFO]:
11850         Add _dl_sysinfo.
11852 2002-12-18  Jakub Jelinek  <jakub@redhat.com>
11854         * misc/Versions [libc: GLIBC_2.3.1]: Move __libc_readv and
11855         __libc_writev to...
11856         [libc: GLIBC_PRIVATE]: ...here.
11857         * sysvipc/Versions [libc: GLIBC_2.3.1]: Move __libc_msgrcv and
11858         __libc_msgsnd to...
11859         [libc: GLIBC_PRIVATE]: ...here.
11861 2002-12-18  Ulrich Drepper  <drepper@redhat.com>
11863         * sysdeps/unix/sysv/linux/i386/sysdep.h: Define ENTER_KERNEL macro.
11864         Use it instead of directly int $0x80.
11865         * sysdeps/unix/sysv/linux/i386/brk.c: Use ENTER_KERNEL.
11866         * sysdeps/unix/sysv/linux/i386/mmap64.S: Likewise.
11867         * sysdeps/unix/sysv/linux/i386/mmap.S: Likewise.
11868         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
11869         * sysdeps/unix/sysv/linux/i386/socket.S: Likewise.
11870         * sysdeps/unix/sysv/linux/i386/syscall.S: Likewise.
11872 2002-12-17  Ulrich Drepper  <drepper@redhat.com>
11874         * malloc/malloc.c (mALLOPt): Make sure malloc is initialized.
11876         * elf/elf.h (AT_SYSINFO): New define.
11877         * sysdeps/generic/dl-sysdep.c (_dl_show_auxv): Add support for
11878         AT_SYSINFO.
11880 2002-12-17  Jakub Jelinek  <jakub@redhat.com>
11882         * sysdeps/unix/sysv/linux/alpha/syscalls.list (msgrcv, msgsnd):
11883         Make cancelable.
11884         * sysdeps/unix/sysv/linux/hppa/syscalls.list (msgrcv, msgsnd):
11885         Likewise.
11886         * sysdeps/unix/sysv/linux/ia64/syscalls.list (msgrcv, msgsnd):
11887         Likewise.
11888         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (msgrcv, msgsnd):
11889         Likewise.
11890         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (msgrcv, msgsnd):
11891         Likewise.
11892         * sysdeps/unix/sysv/linux/ia64/sigsuspend.c (__sigsuspend): Likewise.
11894         * malloc/thread-m.h (mutex_init, mutex_lock, mutex_trylock,
11895         mutex_unlock): If not building NPTL, use __libc_maybe_call2 if
11896         available, otherwise __libc_maybe_call.
11897         * sysdeps/unix/sysv/linux/x86_64/recv.c: Add support for
11898         cancellation handling.
11899         * sysdeps/unix/sysv/linux/x86_64/send.c: Likewise.
11901 2002-12-17  Isamu Hasegawa  <isamu@yamato.ibm.com>
11903         * posix/regcomp.c (free_workarea_compile): Free the new member
11904         ORG_INDICES.
11905         (analyze): Initialize ORG_INDICES.
11906         (duplicate_node_closure): Search for a existing node, which is
11907         duplicated from the node ORG_DEST and satisfies the constraint
11908         CONSTRAINT.  And use it to avoid inifimite loop.
11909         (search_duplicated_node): New function.
11910         (duplicate_node): Store the index of the original node.
11911         * posix/regex_internal.c (re_dfa_add_node): Realloc ORG_INDICES
11912         if needed.
11913         * posix/regex_internal.h (re_dfa_t): Add new members.
11915 2002-12-17  Ulrich Drepper  <drepper@redhat.com>
11917         * stdio-common/tst-fdopen.c: Undefine assert before redefining it.
11919 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
11921         * sysdeps/posix/system.c (do_system): Add support for installation
11922         of cancellation handlers.
11923         * sysdeps/unix/sysv/linux/i386/system.c: New file.
11925         * stdlib/Makefile (tests): Add tst-system.
11926         * stdlib/tst-system.c: New file.
11928         * sysdeps/unix/sysv/linux/i386/socket.S [NEED_CANCELLATION &&
11929         CENABLE]: Don't lose content of %ebx.
11931 2002-12-17  Jakub Jelinek  <jakub@redhat.com>
11933         * sysdeps/unix/sysv/linux/i386/socket.S: Use SINGLE_THREAD_P
11934         macro instead of comparing %gs:MULTIPLE_THREADS_OFFSET directly.
11936 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
11938         * sysdeps/posix/getaddrinfo.c (gaih_inet): If __nss_lookup_function
11939         fails to return a function pointer don't use it.
11941 2002-12-16  Art Haas  <ahaas@airmail.net>
11943         * io/ftw.c: Convert GCC extension initializer syntax to C99.
11944         * iconvdata/iso-ir-165.c: Likewise.
11945         * iconvdata/jis0208.c: Likewise.
11946         * iconvdata/jis0212.c: Likewise.
11948 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
11950         * sysdeps/unix/sysv/linux/syscalls.list: Add epoll_create,
11951         epoll_ctl, and epoll_wait.
11952         * sysdeps/unix/sysv/linux/Versions [libc: GLIBC_2.3.2]: Add
11953         epoll_create, epoll_ctl, and epoll_wait.
11954         * sysdeps/unix/sysv/linux/sys/epoll.h: New file.  Written by
11955         Davide Libenzi <davidel@xmailserver.org>.
11956         * sysdeps/unix/sysv/linux/Dist: Add sys/epoll.h.
11957         * sysdeps/unix/sysv/linux/Makefile [subdir=misc] (sysdep_headers):
11958         Add sys/epoll.h.
11960 2002-12-16  Art Haas  <ahaas@airmail.net>
11962         * sysdeps/generic/bp-semctl.h: Convert GCC extension initializer
11963         syntax to C99
11964         * sysdeps/unix/sysv/aix/settimer.c: Likewise.
11965         * sysdeps/unix/sysv/aix/sleep.c: Likewise.
11966         * sysdeps/unix/sysv/aix/usleep.c: Likewise.
11968 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
11970         * stdio-common/Makefile (routines): Remove lockfile.  Add
11971         flockfile, ftrylockfile, and funlockfile.
11972         * sysdeps/generic/lockfile.c: Removed.  Each function has its own file.
11973         * sysdeps/generic/flockfile.c: New file.
11974         * sysdeps/generic/ftrylockfile.c: New file.
11975         * sysdeps/generic/funlockfile.c: New file.
11977 2002-12-16  Jakub Jelinek  <jakub@redhat.com>
11979         * sysdeps/unix/sysv/linux/i386/socket.S: Use CENABLE and CDISABLE
11980         macros instead of doing the calls directly.
11981         * sysdeps/unix/make-syscalls.sh: Add ptw-*.$o target name to rules.
11982         * Makerules ($(+sysdir_pfx)sysd-rules): Emit rules for ptw-%
11983         targets.
11985 2002-12-16  Jakub Jelinek  <jakub@redhat.com>
11987         * sysdeps/i386/fpu/bits/mathinline.h: Backout last change.
11988         * sysdeps/ieee754/bits/nan.h: Likewise.
11990         * sysdeps/unix/sysv/linux/ia64/syscalls.list (__syscall_open,
11991         __syscall_wait4, __syscall_ioctl, __syscall_write): Add.
11993 2002-12-16  Roland McGrath  <roland@redhat.com>
11995         * sunrpc/xdr_mem.c (xdrmem_inline): Fix argument type.
11996         * sunrpc/xdr_rec.c (xdrrec_inline): Likewise.
11997         * sunrpc/xdr_stdio.c (xdrstdio_inline): Likewise.
11999         * sysdeps/unix/sysv/linux/syscalls.list: Add getpmsg, putpmsg.
12000         * sysdeps/unix/sysv/linux/mips/syscalls.list: Remove s_getpmsg,
12001         s_putpmsg.
12002         * sysdeps/unix/sysv/linux/i386/getpmsg.c: File removed.
12003         * sysdeps/unix/sysv/linux/i386/putpmsg.c: File removed.
12004         * sysdeps/unix/sysv/linux/m68k/getpmsg.c: File removed.
12005         * sysdeps/unix/sysv/linux/m68k/putpmsg.c: File removed.
12006         * sysdeps/unix/sysv/linux/mips/getpmsg.c: File removed.
12007         * sysdeps/unix/sysv/linux/mips/putpmsg.c: File removed.
12008         * sysdeps/unix/sysv/linux/powerpc/getpmsg.c: File removed.
12009         * sysdeps/unix/sysv/linux/powerpc/putpmsg.c: File removed.
12011 2002-12-13  Paul Eggert  <eggert@twinsun.com>
12013         * sunrpc/rpc/xdr.h (struct XDR.xdr_ops.x_inline): 2nd arg
12014         is now u_int, not int.
12015         (struct XDR.x_handy): Now u_int, not int.
12016         * sunrpc/xdr_mem.c: Include <limits.h>.
12017         (xdrmem_getlong, xdrmem_putlong, xdrmem_getbytes, xdrmem_putbytes,
12018         xdrmem_inline, xdrmem_getint32, xdrmem_putint32):
12019         x_handy is now unsigned, not signed.
12020         Do not decrement x_handy if no change is made.
12021         (xdrmem_setpos): Check for int overflow.
12022         * sunrpc/xdr_sizeof.c (x_inline): 2nd arg is now unsigned.
12023         (xdr_sizeof): Remove cast that is now unnecessary, now that
12024         x_handy is unsigned.
12026 2002-12-15  Art Haas  <ahaas@airmail.net>
12028         * iconv/gconv_conf.c: Convert GCC extension initializer syntax to C99.
12029         * iconvdata/gap.awk: Likewise.
12030         * iconvdata/gen-8bit-gap-1.sh: Likewise.
12031         * iconvdata/gen-8bit-gap.sh: Likewise.
12032         * locale/C-address.c: Likewise.
12033         * locale/C-collate.c: Likewise.
12034         * locale/C-ctype.c: Likewise.
12035         * locale/C-identification.c: Likewise.
12036         * locale/C-measurement.c: Likewise.
12037         * locale/C-messages.c: Likewise.
12038         * locale/C-monetary.c: Likewise.
12039         * locale/C-name.c: Likewise.
12040         * locale/C-numeric.c: Likewise.
12041         * locale/C-paper.c: Likewise.
12042         * locale/C-telephone.c: Likewise.
12043         * locale/C-time.c: Likewise.
12044         * nscd/connections.c: Likewise.
12045         * nscd/grpcache.c: Likewise.
12046         * nscd/hstcache.c: Likewise.
12047         * nscd/pwdcache.c: Likewise.
12048         * stdio-common/vfprintf.c: Likewise.
12049         * stdlib/random.c: Likewise.
12050         * sysdeps/generic/siglist.c: Likewise.
12051         * sysdeps/i386/fpu/bits/mathinline.h: Likewise.
12052         * sysdeps/ieee754/bits/nan.h: Likewise.
12053         * sysdeps/posix/sprofil.c: Likewise.
12054         * sysdeps/unix/sysv/linux/sleep.c: Likewise.
12055         * sysdeps/unix/sysv/linux/sysctl.c: Likewise.
12056         * sysdeps/unix/sysv/linux/usleep.c: Likewise.
12058 2002-12-15  Roland McGrath  <roland@redhat.com>
12060         * sysdeps/unix/sysv/linux/readv.c (do_readv): Use prototype defn.
12062         * sysdeps/unix/sysv/linux/wait.c: Don't include <nptl/pthreadP.h> or
12063         <tls.h> here, no need for it.
12064         * sysdeps/unix/sysv/linux/waitpid.c: Likewise.
12066         * sysdeps/unix/sysv/linux/i386/fcntl.c (do_fcntl): Take ARG as void *
12067         parameter, not varargs parameter.
12069         * sysdeps/generic/sysdep-cancel.h (LIBC_CANCEL_RESET): Evaluate the
12070         argument so it's not an unused variable.
12072         * resolv/resolv.h (__p_key_syms, __p_cert_syms, __p_class_syms,
12073         __p_type_syms, __p_rcode_syms): Remove decls, never really intended
12074         for users.
12076         * resolv/Versions (libresolv: GLIBC_2.3.2): New set, add __p_rcode.
12078 2002-12-15  Ulrich Drepper  <drepper@redhat.com>
12080         * sysdeps/unix/sysv/linux/i386/fcntl.c (do_fcntl): This is the
12081         original __libc_fcntl code.  Just renamed.
12083 2002-12-15  Andreas Schwab  <schwab@suse.de>
12085         * sysdeps/unix/sysv/linux/m68k/clone.S: Make inline syscall to _exit.
12087 2002-12-14  Olaf Hering  <olh@suse.de>
12089         * sysdeps/powerpc/bits/setjmp.h: Include <bits/wordsize.h>.
12090         * sysdeps/powerpc/powerpc64/setjmp.S: Fix typo in r18 load.
12092 2002-12-15  Ulrich Drepper  <drepper@redhat.com>
12094         * sysdeps/unix/sysv/linux/libc_fatal.c: New file.
12096         * sysdeps/generic/sysdep-cancel.h: Add dummy definitions for
12097         SINGLE_THREAD_P, LIBC_CANCEL_ASYNC, and LIBC_CANCEL_RESET.
12099         * sysdeps/unix/sysv/linux/open64.c: New file.
12101         * sysdeps/generic/pselect.c: Add support for cancellation handling.
12102         * sysdeps/posix/open64.c: Likewise.
12103         * sysdeps/posix/sigpause.c: Likewise.
12104         * sysdeps/posix/sigwait.c: Likewise.
12105         * sysdeps/posix/system.c: Likewise.
12106         * sysdeps/posix/waitid.c: Likewise.
12107         * sysdeps/unix/sysv/linux/accept.S: Likewise.
12108         * sysdeps/unix/sysv/linux/connect.S: Likewise.
12109         * sysdeps/unix/sysv/linux/llseek.c: Likewise.
12110         * sysdeps/unix/sysv/linux/msgrcv.c: Likewise.
12111         * sysdeps/unix/sysv/linux/msgsnd.c: Likewise.
12112         * sysdeps/unix/sysv/linux/poll.c: Likewise.
12113         * sysdeps/unix/sysv/linux/pread.c: Likewise.
12114         * sysdeps/unix/sysv/linux/pread64.c: Likewise.
12115         * sysdeps/unix/sysv/linux/pwrite.c: Likewise.
12116         * sysdeps/unix/sysv/linux/pwrite64.c: Likewise.
12117         * sysdeps/unix/sysv/linux/readv.c: Likewise.
12118         * sysdeps/unix/sysv/linux/recv.S: Likewise.
12119         * sysdeps/unix/sysv/linux/recvfrom.S: Likewise.
12120         * sysdeps/unix/sysv/linux/recvmsg.S: Likewise.
12121         * sysdeps/unix/sysv/linux/send.S: Likewise.
12122         * sysdeps/unix/sysv/linux/sendmsg.S: Likewise.
12123         * sysdeps/unix/sysv/linux/sendto.S: Likewise.
12124         * sysdeps/unix/sysv/linux/sigsuspend.c: Likewise.
12125         * sysdeps/unix/sysv/linux/sigtimedwait.c: Likewise.
12126         * sysdeps/unix/sysv/linux/sigwait.c: Likewise.
12127         * sysdeps/unix/sysv/linux/sigwaitinfo.c: Likewise.
12128         * sysdeps/unix/sysv/linux/tcdrain.c: Likewise.
12129         * sysdeps/unix/sysv/linux/wait.c: Likewise.
12130         * sysdeps/unix/sysv/linux/waitpid.c: Likewise.
12131         * sysdeps/unix/sysv/linux/writev.c: Likewise.
12132         * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.
12133         * sysdeps/unix/sysv/linux/i386/socket.S: Likewise.
12135 2002-12-14  Jakub Jelinek  <jakub@redhat.com>
12137         * sysdeps/generic/sysdep-cancel.h: New file.
12138         * sysdeps/unix/make-syscalls.sh: Handle C at start of args as
12139         cancelable syscall.
12140         * sysdeps/unix/inet/syscalls.list (accept, connect, recv, recvfrom,
12141         recvmsg, send, sendmsg, sendto): Make cancelable.
12142         * sysdeps/unix/mman/syscalls.list (msync): Likewise.
12143         * sysdeps/unix/sysv/linux/alpha/syscalls.list (llseek, pread,
12144         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
12145         sendto, osf_select): Likewise.
12146         * sysdeps/unix/sysv/linux/hppa/syscalls.list (accept, connect, recv,
12147         recvfrom, recvmsg, send, sendmsg, sendto): Likewise.
12148         * sysdeps/unix/sysv/linux/ia64/syscalls.list (llseek, pread,
12149         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
12150         sendto): Likewise.
12151         * sysdeps/unix/sysv/linux/mips/syscalls.list (accept, connect, recv,
12152         recvfrom, recvmsg, send, sendmsg, sendto): Likewise.
12153         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (llseek, pread,
12154         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
12155         sendto): Likewise.
12156         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list (llseek, pread,
12157         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
12158         sendto, select): Likewise.
12159         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (llseek, pread,
12160         pwrite, accept, connect, recvfrom, recvmsg, sendmsg, sendto):
12161         Likewise.
12162         * sysdeps/unix/sysv/linux/syscalls.list (creat, nanosleep, pause,
12163         select, fcntl): Likewise.
12164         * sysdeps/unix/sysv/syscalls.list (pause, poll): Likewise.
12165         * sysdeps/unix/syscalls.list (close, fcntl, fsync, lseek, open,
12166         read, readv, select, sigsuspend, write, writev): Likewise.
12168 2002-12-14  Jakub Jelinek  <jakub@redhat.com>
12170         * dirent/bug-readdir1.c: Include unistd.h.
12172 2002-12-13  Jakub Jelinek  <jakub@redhat.com>
12174         * locale/programs/locale.c: Include locarchive.h.
12175         (ARCHIVE_NAME): Define.
12176         (write_archive_locales): New function.
12177         (write_locales): Use it.  Ensure the same locale is not printed
12178         multiple times in verbose mode.
12179         Mode LC_IDENTIFICATION and LC_CTYPE printing into...
12180         (print_LC_IDENTIFICATION, print_LC_CTYPE): ... these helper
12181         functions.
12182         (struct nameent): New type.
12183         (nameentcmp): New function.
12185 2002-12-14  Jakub Jelinek  <jakub@redhat.com>
12187         * posix/regex_internal.c (re_string_context_at): Guard wide char
12188         code with #ifdef RE_ENABLE_I18N.
12190 2002-11-22  Paolo Bonzini  <bonzini@gnu.org>
12192         * posix/regcomp.c (regcomp): __re_compile_fastmap -> re_compile_fastmap
12194 2002-12-13  Roland McGrath  <roland@redhat.com>
12196         * posix/bug-regex15.c: New file.
12197         * posix/Makefile (tests): Add it.
12199         * test-skeleton.c (TEST_DATA_LIMIT): New macro, default to 64MB.
12200         (main): Set RLIMIT_DATA limit to TEST_DATA_LIMIT (or lower if need be).
12202 2002-12-13  Ulrich Drepper  <drepper@redhat.com>
12204         * elf/dl-misc.c (_dl_debug_vdprintf): Don't depend on 5-digit PIDs.
12206         * misc/syslog.c (log_cleanup): Don't use parameter in
12207         __libc_lock_unlock call, use syslog_lock directly.  Adjust callers to
12208         pass NULL instead of a pointer to syslog_lock.
12210 2002-12-12  Ulrich Drepper  <drepper@redhat.com>
12212         * iconvdata/Makefile: iconv-rules: Add definition to use gconv.map
12213         linker map for all iconv modules.
12214         (distribute): Add gconv.map.
12215         * iconvdata/gconv.map: New file.
12217         * elf/Makefile: Also check all iconv modules for text relocations.
12219         * stdlib/Makefile: Remove code to automatically import GMP.
12221         * elf/Makefile (tests): Add rules to build and run check-textrel.
12222         * elf/check-textrel.c: New file.
12224         * sysdeps/unix/sysv/linux/i386/sysdep.h (SETUP_PIC_REG): Add .size
12225         directive.
12227 2002-12-11  Jakub Jelinek  <jakub@redhat.com>
12229         * io/test-utime (main): If stnow.st[am]time is wrong, print it and
12230         not st.st[am]time.
12232 2002-04-30  Bruno Haible  <bruno@clisp.org>
12234         * intl/loadmsgcat.c (_nl_init_domain_conv): Don't append //TRANSLIT to
12235         the encoding if it already has slashes.
12236         Reported by Perry Rapp <prapp@erols.com>.
12238 2002-12-11  Roland McGrath  <roland@redhat.com>
12240         * csu/Makefile ($(objpfx)elf-init.oS): Remove target, braino.
12241         (CPPFLAGS-elf-init.oS, CFLAGS-elf-init.oS): New variables.
12242         Turn off PIC for compiling this file.
12244 2002-12-11  Ulrich Drepper  <drepper@redhat.com>
12246         * malloc/thread-m.h: Remove thread_id type and MUTEX_INITIALIZER
12247         definitions.  Not needed.
12248         [_LIBC]: Use definitions from libc-lock.h instead of referencing
12249         pthread routines directly.
12250         * malloc/arena.c (ptmalloc_unlock_all2): Don't add (void) to
12251         mutex_init calls.
12252         (arena_get2): Don't look at return value of mutex_lock.
12254 2002-12-11  Roland McGrath  <roland@redhat.com>
12256         * csu/Makefile ($(objpfx)elf-init.oS): New target, just clone
12257         elf-init.o instead of compiling a PIC version.
12259 2002-12-11  Bruno Haible  <bruno@clisp.org>
12261         * intl/gettext.h: Renamed to ...
12262         * intl/gmo.h: ... here.
12263         * intl/Makefile (distribute): Add gmo.h, remove gettext.h.
12264         * intl/gettextP.h: Update.
12265         * intl/loadmsgcat.c: Update.
12267         * intl/gettextP.h (PARAMS): Make more portable.
12268         (attribute_hidden): Define as empty macro if not already defined.
12269         * intl/hash-string.h (PARAMS): Make more portable.
12270         * intl/loadinfo.h (PARAMS): Likewise.
12271         * intl/plural-exp.h (PARAMS): Likewise.
12272         (attribute_hidden): Move definition near the definition of
12273         internal_function.
12275         * intl/gettextP.h (_nl_locale_name) [!_LIBC]: New declaration.
12276         * intl/plural-exp.h (plural_eval) [!_LIBC]: New declaration.
12278 2002-07-13  Bruno Haible  <bruno@clisp.org>
12280         * intl/dcigettext.c (freea): New macro.
12281         (FREE_BLOCKS): Free also the registered blocks.
12282         (DCIGETTEXT): Free the 'search' variable.
12283         Reported by Andreas Fischer <a.fischer@asentics.de>.
12285 2002-04-27  Bruno Haible  <bruno@clisp.org>
12287         * intl/gettextP.h [! _LIBC]: Use prefix libintl_ instead of suffix __.
12288         * intl/dcigettext.c: Likewise.
12289         * intl/dcgettext.c: Likewise.
12290         * intl/dgettext.c: Likewise.
12291         * intl/gettext.c: Likewise.
12292         * intl/dcngettext.c: Likewise.
12293         * intl/dngettext.c: Likewise.
12294         * intl/ngettext.c: Likewise.
12295         * intl/textdomain.c: Likewise.
12296         * intl/bindtextdom.c: Likewise.
12297         * intl/plural-exp.h: Likewise.
12299 2002-01-02  Bruno Haible  <bruno@clisp.org>
12301         * intl/loadmsgcat.c (_nl_init_domain_conv): Use PARAMS in extern decl.
12303 2001-04-30  Bruno Haible  <bruno@clisp.org>
12305         * intl/dcigettext.c (getuid, getgid, geteuid, getegid): Provide
12306         default macro definitions.  Needed for mingw32.
12308 2002-12-10  Ulrich Drepper  <drepper@redhat.com>
12310         * sysdeps/i386/bits/byteswap.h (__bswap_64): Apply
12311         __builtin_constant_p to macro parameter.
12313         * sysdeps/generic/sigpause.c: Define all functions as weak.
12314         * sysdeps/posix/sigpause.c: Likewise.
12316         * elf/tst-tls7.c (do_test): Adjustments for l_tls_modid being of
12317         type size_t.
12319 2002-12-10  Jakub Jelinek  <jakub@redhat.com>
12321         * elf/tst-array1.c (preinit_array, init_array, fini_array):
12322         Explicitly align the array to sizeof (void *).
12323         * elf/tst-array2dep.c (init_array, fini_array): Likewise.
12325         * include/libc-symbols.h: Fix a comment typo.
12327         * sysdeps/unix/sysv/linux/alpha/select.S (__libc_select): New alias.
12328         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S (__libc_sigsuspend):
12329         Likewise.
12330         * sysdeps/unix/sysv/linux/ia64/sigsuspend.c (__libc_sigsuspend):
12331         Likewise.
12332         * sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c
12333         (__libc_sigsuspend): Likewise.
12334         * sysdeps/unix/sysv/linux/sparc/sparc64/sigsuspend.c
12335         (__libc_sigsuspend): Likewise.
12336         * sysdeps/generic/creat.c (__libc_creat): Renamed from creat.
12337         (creat): New weak alias.
12339 2002-12-10  Roland McGrath  <roland@redhat.com>
12341         * manual/libc-texinfo.sh: Emit @set ADD-ON for each ADD-ON that
12342         contributes a manual chapter.
12343         * manual/signal.texi (Process Signal Mask): Use @ifset linuxthreads
12344         around xref to it.
12346         * sysdeps/unix/sysv/linux/dl-librecon.h (EXTRA_LD_ENVVARS): Refer to
12347         and move contents to ...
12348         (EXTRA_LD_ENVVARS_LINUX): ... this new macro.  Add break for nonmatch.
12349         * sysdeps/unix/sysv/linux/i386/dl-librecon.h (EXTRA_LD_ENVVARS): Use
12350         it instead of duplicating its contents.
12351         (EXTRA_LD_ENVVARS): Likewise.  Add break for nonmatch.
12353 2002-12-09  Jakub Jelinek  <jakub@redhat.com>
12355         * elf/dl-support.c (_dl_non_dynamic_init): Add DL_OSVERSION_INIT if
12356         defined.
12357         * sysdeps/unix/sysv/linux/dl-librecon.h (_dl_osversion_init): New
12358         function.
12359         (EXTRA_LD_ENVVARS): Use it.
12360         (DL_OSVERSION_INIT): Define.
12361         * sysdeps/unix/sysv/linux/i386/dl-librecon.h: Include linux
12362         dl-librecon.h.
12363         (EXTRA_LD_ENVVARS): Undef before defining.  Use _dl_osversion_init.
12365 2002-12-10  Ulrich Drepper  <drepper@redhat.com>
12367         * Versions.def: No new symbols in 2.3.1, but some new ones in 2.3.2.
12369         * sysdeps/unix/closedir.c (__closedir): Remove __libc_lock_lock
12370         call.  It is not allowed to destroy pthread mutexes which are
12371         still in use even though it is safe for our implementations.  If
12372         somebody still uses the descriptor it is a bug.
12374 2002-12-09  Richard Henderson  <rth@redhat.com>
12376         * csu/abi-note.S: Use .p2align, not .align.
12378 2002-12-09  Ulrich Drepper  <drepper@redhat.com>
12380         * sysdeps/unix/sysv/linux/syscalls.list: Add __libc_creat and
12381         __libc_select aliases.
12383         * sysdeps/unix/sysv/linux/sigwaitinfo.c: Define __libc_sigwaitinfo
12384         alias.
12386         * sysdeps/unix/sysv/linux/sigwait.c: Define __libc_sigwait alias.
12388         * sysdeps/unix/sysv/linux/sigsuspend.c: Define __libc_sigsuspend alias.
12390         * sysdeps/unix/sysv/linux/poll.c: Define __libc_poll alias.
12392         * sysdeps/unix/syscalls.list: Define __libc_select alias.
12394         * sysdeps/posix/waitid.c: Define __libc_waitid alias.
12396         * sysdeps/posix/sigpause.c: Define __libc_sigpause and
12397         __libc___xpg_sigpause aliases.
12399         * sysdeps/generic/pselect.c: Define __libc_pselect alias.
12401         * misc/error.c: Remove use of USE_IN_LIBIO.
12403 2002-12-08  Roland McGrath  <roland@redhat.com>
12405         * elf/Makefile (tests): Uncomment tst-array[123].
12406         * Makeconfig (CPPFLAGS-.oS): Add -DLIBC_NONSHARED=1.
12407         * csu/elf-init.c: New file.
12408         * csu/Makefile (routines, static-only-routines): Add elf-init.
12409         * sysdeps/alpha/elf/start.S: Use __libc_csu_init in place of _init
12410         and __libc_csu_fini in place of _fini.
12411         * sysdeps/arm/elf/start.S: Likewise.
12412         * sysdeps/cris/elf/start.S: Likewise.
12413         * sysdeps/hppa/elf/start.S: Likewise.
12414         * sysdeps/i386/elf/start.S: Likewise.
12415         * sysdeps/ia64/elf/start.S: Likewise.
12416         * sysdeps/m68k/elf/start.S: Likewise.
12417         * sysdeps/mach/hurd/powerpc/static-start.S: Likewise.
12418         * sysdeps/mips/elf/start.S: Likewise.
12419         * sysdeps/powerpc/powerpc32/elf/start.S: Likewise.
12420         * sysdeps/powerpc/powerpc64/elf/start.S: Likewise.
12421         * sysdeps/s390/s390-32/elf/start.S: Likewise.
12422         * sysdeps/s390/s390-64/elf/start.S: Likewise.
12423         * sysdeps/sh/elf/start.S: Likewise.
12424         * sysdeps/sparc/sparc32/elf/start.S: Likewise.
12425         * sysdeps/sparc/sparc64/elf/start.S: Likewise.
12426         * sysdeps/x86_64/elf/start.S: Likewise.
12428         * sysdeps/pthread/aio_notify.c (notify_func_wrapper): Take a malloc'd
12429         struct containing function ptr and value, free it.
12430         (__aio_notify_only): Allocate that and copy values from SIGEV into it.
12431         It's not safe to let the new thread use the SIGEV pointer.
12433 2001-10-20  Paul Eggert  <eggert@twinsun.com>
12435         * misc/error.c (strerror_r): Do not declare unless [!_LIBC].
12436         Do not check for HAVE_DECL_STRERROR_R missing unless STRERROR_R_CHAR_P.
12437         Use strerror_r that is only a macro, even if it is not a function.
12438         (strerror): Check for HAVE_DECL_STRERROR before declaring.
12439         (private_strerror): Use prototypes, not old-style function definition.
12440         (print_errno_message): New function.
12441         Support the POSIX 'int'-flavored strerror_r, as well as the traditional
12442         char*-flavored one.
12443         (error_tail, error, error_at_line): Use it.
12445 2002-12-07  Carlos O'Donell  <carlos@baldric.uwo.ca>
12447         * sysdeps/unix/sysv/linux/hppa/bits/shm.h: Added SHMLBA #define.
12449 2002-12-08  Ulrich Drepper  <drepper@redhat.com>
12451         * scripts/output-format.sed: Fix bug in one of the s expressions
12452         which used / for one too many things.
12454         * include/unistd.h: Declare __libc_close.
12456 2002-12-07  Ulrich Drepper  <drepper@redhat.com>
12458         * sysdeps/generic/bits/stdio-lock.h (_IO_lock_trylock): New define.
12460 2002-12-07  Roland McGrath  <roland@redhat.com>
12462         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Reintroduce changes
12463         from 2002-12-06, but remove unnecessary memset call without removing
12464         necessary copy of initialization image.
12466         * Makerules ($(common-objpfx)format.lds): New target.
12467         (common-generated): Add it.
12468         ($(inst_libdir)/libc.so): Depend on that, and cat it into the result.
12469         * scripts/output-format.sed: New file.
12470         * Makefile (distribute): Add it.
12472 2002-12-07  Ulrich Drepper  <drepper@redhat.com>
12474         * sysdeps/generic/libc-tls.c: Include <sys/param.h>.
12475         Reported by Art Haas <ahaas@airmail.net>.
12477 2002-12-07  Kenneth W. Chen  <kenneth.w.chen@intel.com>
12479         * sysdeps/ia64/strncpy.S (strncpy): Clear ar.ec.  Fix .recovery4.
12481 2002-12-07  Jakub Jelinek  <jakub@redhat.com>
12483         * string/test-strncpy.c (do_random_tests): Improve test coverage.
12485 2002-12-06  Ulrich Drepper  <drepper@redhat.com>
12487         * test-skeleton.c (timeout_handler): Allow expected signal to be
12488         SIGALRM.
12490         * wctype/wcfuncs.c: Add libc_hidden_def for iswalnum.
12492         * sysdeps/posix/raise.c: Add libc_hidden_def for raise.
12494 2002-12-07  Jakub Jelinek  <jakub@redhat.com>
12496         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h [RTLD_PRIVATE_ERRNO]
12497         (SYSCALL_ERROR_HANDLER): Fix a pasto.
12498         Reported by Jeff Bailey <jbailey@nisa.net>.
12500 2002-12-06  Ulrich Drepper  <drepper@redhat.com>
12502         * sysdeps/generic/libc-tls.c: Undo last patch.
12504         * include/wctype.h: Define iswalnum with libc_hidden_proto.
12506         * include/signal.h: Define raise with libc_hidden_proto.
12508         * sysdeps/unix/sysv/linux/fexecve.c (fexecve): Use __snprintf and
12509         __execve instead of snprintf and execve.
12511         * sysdeps/x86_64/fpu/libm-test-ulps: Relax errors for float and double
12512         again a bit.
12514 2002-12-06  Jakub Jelinek  <jakub@redhat.com>
12516         * posix/Makefile (annexc.out): Add -I../dir for all sorted-dirs.
12517         * posix/annexc.c (fmt, testfmt): Remove -D_LIBC.
12519 2002-12-06  Ulrich Drepper  <drepper@redhat.com>
12521         * misc/syslog.c (log_cleanup): New function.
12522         (openlog): Use log_cleanup instead of __libc_mutex_unlock.
12523         (closelog): Likewise.
12525         * elf/dl-close.c: Use __rtld_lock_* macros instead of __libc_lock_*.
12526         * elf/dl-iteratephdr.c: Likewise.
12527         * elf/dl-lookup.c: Likewise.
12528         * elf/dl-misc.c: Likewise.
12529         * elf/dl-open.c: Likewise.
12530         * elf/dl-support.c: Likewise.
12531         * elf/rtld.c: Likewise.
12532         * sysdeps/generic/ldsodefs.h: Likewise.
12533         * sysdeps/generic/bits/libc-lock.h: Define __rtld_lock_* macros.
12534         * sysdeps/mach/bits/libc-lock.h: Likewise.
12535         * sysdeps/mach/hurd/bits/libc-lock.h: Likewise.
12537 2002-12-06  Roland McGrath  <roland@redhat.com>
12539         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Cope with zero ALIGN.
12541         * malloc/hooks.c [_LIBC && (USE___THREAD || (USE_TLS && !SHARED))]
12542         (malloc_starter, memalign_starter, free_starter): Don't define these.
12543         * malloc/malloc.c [_LIBC && (USE___THREAD || (USE_TLS && !SHARED))]:
12544         Don't declare them either.
12545         * malloc/arena.c (ptmalloc_init) [_LIBC && USE_TLS]: Don't call
12546         __pthread_initialize, so no need to set hooks to *_starter.
12547         (ptmalloc_init_minimal): New function, broken out of ptmalloc_init.
12548         [_LIBC && SHARED && USE_TLS && !USE___THREAD]
12549         (__libc_malloc_pthread_startup): New function.
12550         * malloc/Versions (libc: GLIBC_PRIVATE): New set, add that function.
12552         * malloc/hooks.c (memalign_starter): New function.
12553         * malloc/malloc.c: Declare it.
12554         * malloc/arena.c (save_memalign_hook): New variable.
12555         (ptmalloc_init): Set __memalign_hook to memalign_starter.
12557         * elf/dl-minimal.c (free): Clear the memory.
12558         (calloc): Just call malloc, knowing all memory it returns is cleared.
12560         * sysdeps/generic/dl-tls.c (allocate_dtv): Use calloc instead of
12561         malloc and memset; calloc can avoid the zeroing when redundant.
12562         (_dl_tls_setup): Likewise.
12563         * elf/dl-load.c (decompose_rpath): Likewise.
12564         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Comment out memset
12565         call, since memory from sbrk at startup is already zero.
12567         * elf/rtld.c (_dl_start, dl_main): TLS_INIT_TP macro now returns an
12568         error string for failure, null for success.  Update callers.
12569         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Likewise.
12570         * elf/dl-load.c (_dl_map_object_from_fd): Likewise.
12572 2002-12-05  Jakub Jelinek  <jakub@redhat.com>
12574         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (sendfile): Change
12575         args to i:iipi.
12576         (readahead): Change args to i:iii.
12577         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list (readahead):
12578         Change args to i:iii.
12579         * sysdeps/unix/sysv/linux/mips/syscalls.list (readahead): Change
12580         args to i:iiii.
12582 2002-12-05  Roland McGrath  <roland@redhat.com>
12584         * stdlib/cxa_finalize.c (__cxa_finalize): When given a null argument,
12585         call all functions rather than none.
12586         Reported by Mark P. Mitchell <mark@codesourcery.com>.
12588 2002-12-04  Roland McGrath  <roland@redhat.com>
12590         * locale/localeinfo.h [NL_CURRENT_INDIRECT]: Use attribute_tls_model_ie
12591         on _nl_current_LC_* variables.
12593 2002-12-05  Ulrich Drepper  <drepper@redhat.com>
12595         * dirent/bug-readdir1.c (main): Don't call closedir, just close
12596         the file descriptor.  This is testing what the bug report was about.
12598 2002-12-04  Ulrich Drepper  <drepper@redhat.com>
12600         * po/be.po: New file.
12602         * argp/Makefile (tests): Add tst-argp1.
12604         * sysdeps/unix/sysv/linux/alpha/bits/siginfo.h: (struct sigevent):
12605         Change type of _attribute to void*.
12606         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Likewise.
12607         * sysdeps/unix/sysv/linux/bits/siginfo.h: Likewise.
12608         * sysdeps/unix/sysv/linux/mips/bits/siginfo.h: Likewise.
12609         * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Likewise.
12610         * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Likewise.
12612 2002-12-04  Roland McGrath  <roland@redhat.com>
12614         * sysdeps/generic/ldsodefs.h (struct rtld_global): Move all [USE_TLS]
12615         members to the end, so a libpthread compiled with !USE_TLS will still
12616         find other members properly.
12618         * sysdeps/i386/i486/bits/string.h (__strcpy_g): Add dummy output
12619         operand for DEST memory.  Fix dummy input operand to use SRC.
12620         Reported by Davin McCall <davmac@ozonline.com.au>.
12622         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Account for TCB
12623         alignment when initializing the DTV entry.
12625         * elf/dl-load.c (_dl_map_object_from_fd): If we hit a TLS segment
12626         when TLS has not been set up, try to set it up if we can.
12627         * elf/tst-tls4.c: Revert last change.
12628         * elf/tst-tls5.c: Likewise.
12629         * elf/tst-tls6.c: Likewise.
12630         * elf/tst-tls7.c: Likewise.
12631         * elf/tst-tls8.c: Likewise.
12632         * elf/tst-tls9.c: Likewise.
12634         * sysdeps/generic/dl-tls.c [SHARED] (_dl_tls_setup): New function.
12635         * sysdeps/generic/ldsodefs.h: Declare it.
12636         * elf/Versions (ld: GLIBC_PRIVATE): Add it.
12637         * sysdeps/generic/libc-tls.c (init_slotinfo): New static inline
12638         function, broken out of __libc_setup_tls.
12639         (init_static_tls): Likewise.
12640         (__libc_setup_tls): Call them.
12641         (_dl_tls_setup): New function, uses new subroutines.
12643         * elf/dl-close.c (free_slotinfo): Make argument pointer to pointer.
12644         Clear the pointer when returning true.
12645         (libc_freeres_fn) [SHARED]: If GL(dl_initial_dtv) is null, free the
12646         first element of the slotinfo list too.
12648         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Define only if
12649         [SHARED].
12651         * sysdeps/generic/ldsodefs.h (_dl_next_tls_modid): Declare as hidden.
12652         (_dl_determine_tlsoffset): Likewise.
12654         * elf/rtld.c (_dl_initial_error_catch_tsd): Renamed from
12655         startup_error_tsd, made global.
12656         (dl_main): Update initialization.
12657         * elf/dl-tsd.c: Likewise.
12658         * sysdeps/generic/ldsodefs.h: Declare it.
12660 2002-12-03  Ulrich Drepper  <drepper@redhat.com>
12662         * manual/texinfo.tex: Update from latest upstream version.
12664 2002-12-03  Roland McGrath  <roland@redhat.com>
12666         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Include static TLS
12667         area surplus in calculation for sbrk call.
12669         * iconvdata/cp1125.c: New file.
12670         * iconvdata/Makefile (distribute): Add it.
12671         (modules): Add CP1125.
12672         (gen-8bit-gap-modules): Add cp1125.
12673         * iconvdata/gconv-modules: Add CP1125, alias RUSCII.
12674         * iconvdata/tst-tables.sh: Add CP1125 to the list to test.
12676 2002-12-03  Andreas Jaeger  <aj@suse.de>
12678         * sysdeps/x86_64/fpu/libm-test-ulps: Regenerated.
12680 2002-12-03  Ulrich Drepper  <drepper@redhat.com>
12682         * sysdeps/posix/system.c (do_system): Make signal handler
12683         installation thread safe.
12685 2002-12-02  Roland McGrath  <roland@redhat.com>
12687         * sysdeps/unix/sysv/linux/alpha/syscalls.list (readahead): Change
12688         caller from EXTRA to -.
12689         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
12690         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
12691         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
12693 2002-12-02  Carlos O'Donell  <carlos@baldric.uwo.ca>
12695         * sysdeps/hppa/fpu/fesetround.c (fesetround): Use ~FE_DOWNWARD so both
12696         bits of RM are cleared.
12698 2002-12-02  Roland McGrath  <roland@redhat.com>
12700         * elf/tst-tls4.c: Define an unused TLS variable here, so that no lazy
12701         TLS setup is required.
12702         * elf/tst-tls5.c: Likewise.
12703         * elf/tst-tls6.c: Likewise.
12704         * elf/tst-tls7.c: Likewise.
12705         * elf/tst-tls8.c: Likewise.
12706         * elf/tst-tls9.c: Likewise.
12708         * elf/rtld.c (dl_main): Remove [! SHARED] conditional from
12709         `if (GL(dl_tls_max_dtv_idx) > 0)' tests for doing TLS setup.
12710         * elf/dl-close.c (libc_freeres_fn): Check GL(dl_tls_dtv_slotinfo_list)
12711         for being null before calling free_slotinfo.
12712         * elf/dl-load.c (_dl_map_object_from_fd) [SHARED]: For PT_TLS in
12713         dynamic loading, bail with error if GL(dl_tls_max_dtv_idx) is zero.
12715 2002-11-30  Bruno Haible  <bruno@clisp.org>
12717         * iconv/gconv.h (__gconv_btowc_fct): New typedef.
12718         (struct __gconv_step): New field __btowc_fct.
12719         * wcsmbs/btowc.c (__btowc): Use the __btowc_fct shortcut if possible.
12720         * iconv/gconv_int.h (__BUILTIN_TRANSFORM): Renamed from
12721         __BUILTIN_TRANS.
12722         (__gconv_btwoc_ascii): New declaration.
12723         * iconv/gconv_simple.c (BUILTIN_TRANSFORMATION): Add BtowcFct argument.
12724         (__gconv_btwoc_ascii): New function.
12725         * iconv/gconv_builtin.h: Add BtowcFct argument to all
12726         BUILTIN_TRANSFORMATION invocations.
12727         * iconv/gconv_conf.c (BUILTIN_TRANSFORMATION): Add BtowcFct argument.
12728         * iconv/iconvconfig.c (BUILTIN_TRANSFORMATION): Likewise.
12729         * iconv/gconv_builtin.c (map): New field btowc_fct.
12730         (BUILTIN_TRANSFORMATION): Add BtowcFct argument. Use it to initialize
12731         btowc_fct field.
12732         (__gconv_get_builtin_trans): Initialize __btowc_fct field.
12733         * iconv/gconv_cache.c (find_module): Initialize __btowc_fct field.
12734         * iconv/gconv_db.c (gen_steps, increment_counter): Likewise.
12735         * wcsmbs/wcsmbsload.c (to_wc, to_mb): Likewise.
12736         * iconv/skeleton.c: Document STORE_REST and FROM_ONEBYTE.
12737         (gconv_init): Initialize __btowc_fct field.
12738         Undefine EXTRA_LOOP_ARGS and FROM_ONEBYTE at the end.
12739         * iconv/loop.c: Document ONEBYTE_BODY.
12740         (gconv_btowc, FROM_ONEBYTE): Define if ONEBYTE_BODY is defined.
12741         Undefine ONEBYTE_BODY at the end.
12742         * iconvdata/8bit-generic.c (ONEBYTE_BODY): New macro.
12743         * iconvdata/8bit-gap.c (NONNUL): New macro.
12744         (BODY for FROM_LOOP): Use it.
12745         (ONEBYTE_BODY): New macro.
12746         * iconvdata/isiri-3342.c (HAS_HOLES): Set to 1.
12747         (NONNUL): New macro.
12748         * iconvdata/ansi_x3.110.c (ONEBYTE_BODY): New macro.
12749         * iconvdata/armscii-8.c (ONEBYTE_BODY): New macro.
12750         * iconvdata/cp1255.c (ONEBYTE_BODY): New macro.
12751         * iconvdata/cp1258.c (ONEBYTE_BODY): New macro.
12752         * iconvdata/tcvn5712-1.c (ONEBYTE_BODY): New macro.
12753         * iconvdata/big5.c (ONEBYTE_BODY): New macro.
12754         * iconvdata/big5hkscs.c (ONEBYTE_BODY): New macro.
12755         * iconvdata/euc-cn.c (ONEBYTE_BODY): New macro.
12756         * iconvdata/euc-jp.c (ONEBYTE_BODY): New macro.
12757         * iconvdata/euc-jisx0213.c (ONEBYTE_BODY): New macro.
12758         * iconvdata/euc-kr.c (ONEBYTE_BODY): New macro.
12759         * iconvdata/euc-tw.c (ONEBYTE_BODY): New macro.
12760         * iconvdata/gbk.c (ONEBYTE_BODY): New macro.
12761         * iconvdata/gb18030.c (ONEBYTE_BODY): New macro.
12762         * iconvdata/ibm932.c: Include <stdbool.h>.
12763         (TRUE, FALSE): Remove macros.
12764         (BODY for FROM_LOOP): Remove unused variable rp1.
12765         (ONEBYTE_BODY): New macro.
12766         (BODY for TO_LOOP): Use bool.
12767         * iconvdata/ibm932.h (__ibm932sb_to_ucs4_idx): Remove array.
12768         * iconvdata/ibm943.c: Include <stdbool.h>.
12769         (TRUE, FALSE): Remove macros.
12770         (BODY for FROM_LOOP): Remove unused variable rp1.
12771         (ONEBYTE_BODY): New macro.
12772         (BODY for TO_LOOP): Use bool.
12773         * iconvdata/ibm943.h (__ibm943sb_to_ucs4_idx): Remove array.
12774         * iconvdata/iso8859-1.c (ONEBYTE_BODY): New macro.
12775         * iconvdata/iso_6937-2.c (ONEBYTE_BODY): New macro.
12776         * iconvdata/iso_6937.c (ONEBYTE_BODY): New macro.
12777         * iconvdata/johab.c (ONEBYTE_BODY): New macro.
12778         * iconvdata/sjis.c (ONEBYTE_BODY): New macro.
12779         * iconvdata/shift_jisx0213.c (ONEBYTE_BODY): New macro.
12780         * iconvdata/t.61.c (ONEBYTE_BODY): New macro.
12781         * iconvdata/uhc.c (ONEBYTE_BODY): New macro.
12782         * iconvdata/gbbig5.c: Tweak comment.
12784 2002-12-02  Ulrich Drepper  <drepper@redhat.com>
12786         * po/fi.po: Update from translation team.
12788 2002-12-01  Roland McGrath  <roland@redhat.com>
12790         * sysdeps/unix/sysv/linux/getdents.c (__GETDENTS): Fix condition
12791         testing getdents64 return value.
12793         * scripts/versions.awk: Don't pass -n flag to sort command.
12795         * posix/bug-regex13.c: Include <string.h>.
12797         * sysdeps/generic/libc-start.c (__libc_start_main): Do
12798         DL_SYSDEP_OSCHECK here.
12799         * sysdeps/unix/sysv/linux/init-first.c (init): Not here.
12800         * sysdeps/unix/sysv/linux/dl-osinfo.h: Include <fcntl.h>.
12802         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Bail if
12803         argument TCBSIZE <= TLS_INIT_TCB_SIZE, not just if it's zero.
12805         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Check l_tls_offset
12806         instead of l_type to decide whether to use TLS_DTV_UNALLOCATED.
12808         * include/link.h: Comment typo fix.
12810 2002-12-01  Roland McGrath  <roland@frob.com>
12812         * sysdeps/mach/hurd/bits/posix_opt.h (_POSIX_FSYNC): Set to 200112L.
12813         (_POSIX_SPAWN, _POSIX_MAPPED_FILES, _POSIX_MEMLOCK_RANGE,
12814         _POSIX_MEMORY_PROTECTION): Likewise.
12815         (_POSIX_POLL, _POSIX_SELECT): Removed.
12817 2002-11-28  Ulrich Drepper  <drepper@redhat.com>
12819         * sysdeps/unix/sysv/linux/bits/posix_opt.h: Define macros which
12820         require it to 200112L.  Remove _POSIX_POLL and _POSIX_SELECT.
12822 2002-11-28  Jakub Jelinek  <jakub@redhat.com>
12824         * sysdeps/unix/alpha/sysdep.S: Change defined(USE___THREAD) to
12825         USE___THREAD.
12826         * sysdeps/unix/sysv/linux/alpha/sysdep.h (inline_syscall*): Avoid
12827         "=v" constraints.
12829 2002-11-28  Ulrich Drepper  <drepper@redhat.com>
12831         * sysdeps/unix/sysv/linux/x86_64/vfork.S: Don't trash the CPU's
12832         branch prediction buffers by using unpaired call/ret.
12834 2002-11-27  Ulrich Drepper  <drepper@redhat.com>
12836         * sysdeps/unix/sysv/linux/i386/sysdep.h (ASMFMT_2): Fix typo in
12837         first parameters constraint string.
12838         (ASMFMT_3): Likewise.  Patch by stefan.lauterbach@mincom.de.
12840 2002-11-27  Isamu Hasegawa  <isamu@yamato.ibm.com>
12842         * posix/regcomp.c (parse_expression): Set the bit since the back
12843         reference is used in the regular expression.
12844         * posix/regex_internal.c (re_node_set_init_1): Make it clean in case
12845         of malloc failure.
12846         (re_node_set_init_copy): Likewise.
12847         * posix/regex_internal.h (state_array_t): New structure.
12848         (re_sub_match_last_t): Likewise.
12849         (re_sub_match_top_t): Likewise.
12850         (re_match_context_t): Add new members.
12851         (re_dfa_t): Likewise.
12852         * posix/regexec.c (re_search_internal): Invoke prune_impossible_nodes
12853         to check the matching is really correct, and retry if failed.
12854         Move the routin pruning the impossible nodes from here, ...
12855         (prune_impossible_nodes): To this function.
12856         (check_matching): Invoke check_subexp_matching_top, and replace
12857         redundant checking with transit_state_bkref invocation.
12858         (proceed_next_node): Replace strncmp with memcmp.  Reported by
12859         Paolo Bonzini  <bonzini@gnu.org>.
12860         (update_cur_sifted_state): Remove search_subexp invocation.
12861         (search_subexp): Remove this function.
12862         (check_dst_limits_calc_pos): Use search_cur_bkref_entry for
12863         optimization.
12864         (sift_states_bkref): Use search_cur_bkref_entry for optimization.
12865         Remove unused invocation of match_ctx_add_entry.
12866         (transit_state): Invoke check_subexp_matching_top.
12867         (check_subexp_matching_top): New function.
12868         (transit_state_bkref): Remove unused array.
12869         Merge transit_state_bkref_loop.
12870         (transit_state_bkref_loop): Use get_subexp instead of
12871         sift_states_backward.  Use search_cur_bkref_entry for optimization.
12872         Merge this function to transit_state_bkref.
12873         (get_subexp): New function.
12874         (get_subexp_sub): Likewise.
12875         (find_subexp_node): Likewise.
12876         (check_arrival): Likewise.
12877         (check_arrival_expand_ecl): Likewise.
12878         (check_arrival_expand_ecl_sub): Likewise.
12879         (expand_bkref_cache): Likewise.
12880         (match_ctx_init): Initialize new members.
12881         (match_ctx_clean): New function.
12882         (match_ctx_free): Release new members.
12883         (match_ctx_free_subtops): New function.
12884         (match_ctx_add_entry): Fix indent.
12885         (search_cur_bkref_entry): New function.
12886         (match_ctx_add_subtop): Likewise.
12887         (match_ctx_add_sublast): Likewise.
12889 2002-11-25  Ulrich Drepper  <drepper@redhat.com>
12891         * iconv/Makefile (tests): Remove tst-iconv4.c
12892         * iconv/tst-iconv4.c: Moved to...
12893         * iconvdata/tst-iconv4.c: ...here.  New file.
12894         * iconvdata/Makefile (tests): Add tst-iconv4.  Add dependencies.
12896 2002-11-25  Roland McGrath  <roland@redhat.com>
12898         * inet/test-ifaddrs.c (main: addr_string): Handle null SA.
12899         Grok AF_LINK if defined.
12900         From Momchil Velikov <velco@fadata.bg>.
12902         * sysdeps/gnu/ifaddrs.c (getifaddrs): If ioctl fails for netmask,
12903         brdaddr, or dstaddr, just set those pointers to null and don't fail.
12904         Reported by Momchil Velikov <velco@fadata.bg>.
12906         * sysdeps/generic/ifreq.h (__if_nextreq) [_HAVE_SA_LEN]: If sa_len
12907         is > sizeof IFR->ifa_addr, advance past the whole longer length.
12908         (__ifreq): Count up NIFS that way too.
12909         Reported by Momchil Velikov <velco@fadata.bg>.
12911         * sysdeps/mach/hurd/lchmod.c: Include <fcntl.h>.
12913         * sysdeps/mach/hurd/i386/init-first.c: Include <ldsodefs.h>
12914         and <fpu_control.h>.
12916 2002-11-24  Ulrich Drepper  <drepper@redhat.com>
12918         * elf/elf.h (EM_ST19): Fix typo.
12920 2002-11-25  Jakub Jelinek  <jakub@redhat.com>
12922         * include/errno.h (__set_errno): Define as errno = val
12923         unconditionally.
12925 2002-11-24  Roland McGrath  <roland@redhat.com>
12927         * sysdeps/posix/readv.c: Include <errno.h>, use __set_errno macro.
12928         * sysdeps/posix/writev.c: Likewise.
12929         From Momchil Velikov <velco@fadata.bg>.
12931         * elf/dl-error.c [! _LIBC_REENTRANT]: Use a static variable instead of
12932         calling *GL(dl_error_catch_tsd) for a thread-local location.
12933         * elf/rtld.c (startup_error_tsd): Conditionalize on [_LIBC_REENTRANT].
12934         (dl_main): Same for GL(dl_error_catch_tsd) initialization.
12935         * elf/dl-tsd.c: Conditionalize contents on [_LIBC_REENTRANT].
12937         * libio/iofflush.c: Add libc_hidden_def.
12938         * libio/iofwrite.c: Likewise.
12939         * sysdeps/generic/sigtimedwait.c: Likewise.
12940         * sysdeps/generic/sigwaitinfo.c: Likewise.
12941         * sysdeps/posix/sigwait.c: Likewise.
12942         Reported by Momchil Velikov <velco@fadata.bg>.
12944         * inet/inet_lnaof.c (inet_lnaof): Change return type to in_addr_t
12945         to match <arpa/inet.h> declaration.
12946         * inet/inet_netof.c (inet_netof): Likewise.
12947         * inet/inet_mkadr.c (inet_makeaddr): Likewise for argument types.
12948         Reported by Momchil Velikov <velco@fadata.bg>.
12950         * configure.in: Skip AUTOCONF check under --without-cvs.
12951         * configure: Regenerated.
12953         * posix/Makefile (headers): Add bits/pthreadtypes.h.
12954         * sysdeps/unix/sysv/linux/Makefile (sysdep_heaers): Don't add it here.
12955         * sysdeps/unix/sysv/linux/Dist: Remove it from the list.
12957 2002-11-24  Andreas Schwab  <schwab@suse.de>
12959         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Support inline syscall
12960         with six arguments.
12962 2002-11-19  Jim Meyering  <jim@meyering.net>
12964         * time/mktime.c (__mon_yday, __mktime_internal) [!_LIBC]: Declare
12965         as `static'.
12966         * time/strptime.c (__mon_yday) [!_LIBC]: Declare as `static'.
12968 2002-11-23  Roland McGrath  <roland@redhat.com>
12970         * scripts/abilist.awk: Avoid strtonum function, not there in mawk.
12971         Just produce hex output for datum sizes.
12973         * elf/Makefile ($(objpfx)librtld.mk): Tighten up regexp.
12974         Reported by Luca Barbieri <ldb@ldb.ods.org>.
12976 2002-11-20  Steven Munroe  <sjmunroe@us.ibm.com>
12978         * sysdeps/unix/sysv/linux/powerpc/bits/msq.h (msqid_ds)
12979         [__WORDSIZE == 32]: Only PPC32 requires __unused1, __unused2,
12980         and __unused3 fields.
12981         * sysdeps/unix/sysv/linux/powerpc/bits/sem.h (semid_ds)
12982         [__WORDSIZE == 32]: Only PPC32 requires __unused1
12983         and __unused2 fields.
12984         * sysdeps/unix/sysv/linux/powerpc/bits/shm.h (shmid_ds)
12985         [__WORDSIZE == 32]: Only PPC32 requires __unused1, __unused2,
12986         __unused3, and __unused4 fields.
12988         * csu/gmon-start.c (__gmon_start__): Always use TEXT_START macro to
12989         obtain lowest address for profiling in __monstartup call.
12991 2002-11-21  Roland McGrath  <roland@redhat.com>
12993         * sysdeps/ia64/fpu/Makefile (libm-sysdep_routines): Remove redunant
12994         $(calls) $(calls:=f) $(long-c-$(long-double-fcts)).
12996         * locale/localeinfo.h (struct locale_data): Revert last change.
12998         * sysdeps/unix/sysv/linux/ia64/syscalls.list (s_exit_group): Add it.
12999         From Ian Wienand <ianw@gelato.unsw.edu.au>.
13001         * sysdeps/unix/sysv/linux/ia64/sysdep.h (__NR_pread): Define to
13002         __NR_pread64 if not defined.
13003         (__NR_pwrite): Define to __NR_pwrite64 if not defined.
13004         From Ian Wienand <ianw@gelato.unsw.edu.au>.
13006 2002-11-21  Roland McGrath  <roland@frob.com>
13008         * sysdeps/mach/hurd/i386/init-first.c (posixland_init): Set
13009         __libc_multiple_libcs here.  Call __setfpucw.
13011 2002-11-21  Ulrich Drepper  <drepper@redhat.com>
13013         * elf/Makefile (tests): Don't run test-arrayX tests for now.
13015         * sysdeps/unix/sysv/linux/bits/sched.h: Add new CLONE_* flags.
13016         * sysdeps/unix/sysv/linux/i386/clone.S: Add support for
13017         CLONE_CHILD_*TID flags.
13019 2002-11-20  Andreas Jaeger  <aj@suse.de>
13021         * sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h (SIGCONTEXT):
13022         We pass struct ucontext on x86-64.
13023         (GET_PC): Adjust.
13024         (GET_FRAME): Adjust.
13025         (GET_STACK): Adjust.
13027 2002-11-20  Roland McGrath  <roland@redhat.com>
13029         * sysdeps/powerpc/powerpc32/dl-machine.c [! SHARED]: Further
13030         conditionalize [! DO_VERSIONING] #error.
13032         * scripts/abilist.awk: Grok function descriptor symbols.
13034         * intl/tst-gettext.c (main): Check return values from setlocale.
13035         Add necessary unsetenv's to make LANG=existing-locale check work.
13037         * intl/tst-gettext.sh: Use mkdir -p.  Copy test files unconditionally,
13038         so aborted prior runs don't confuse things.
13040         * locale/localeinfo.h (struct locale_data: union locale_data_value):
13041         Use uintptr_t instead of unsigned int for `word' member.
13042         (_NL_CURRENT_WORD): Cast to uint32_t.
13044         * posix/bug-regex5.c (main): Use union to extract _NL_COLLATE_NRULES
13045         value.
13047 2002-11-20  Ulrich Drepper  <drepper@redhat.com>
13049         * elf/tls-macros.h: Add IA-64 definitions.
13050         Patch by Ian Wienand <ianw@gelato.unsw.edu.au>.
13052         * iconv/Makefile (tests): Add tst-iconv4.
13053         * iconv/tst-iconv4.c: New file.
13055         * iconv/gconv_simple.c (internal_ucs4le_loop_unaligned): Return
13056         __GCONV_EMPTY_INPUT only if input is really empty.  Otherwise
13057         __GCONV_INCOMPLETE_INPUT.
13058         (ucs4le_internal_loop): Likewise.
13059         (ucs4le_internal_loop_unaligned): Likewise.
13060         * iconvdata/unicode.c (PREPARE_LOOP): Likewise.
13061         * iconvdata/utf-16.c (PREPARE_LOOP): Likewise.
13062         * iconvdata/utf-32.c (PREPARE_LOOP): Likewise.
13064         * iconv/loop.c (LOOPFCT): First test for empty input then for full
13065         output buffer.
13067         * inet/getnameinfo.c: Use extend_alloca where appropriate.
13068         * sysdeps/posix/getaddrinfo.c: Likewise.
13070         * include/alloca.h (extend_alloca): New define.  Based on stack
13071         direction it'll try to append to the previouls allocated buffer.
13073 2002-11-07  Thorsten Kukuk  <kukuk@suse.de>
13075         * sysdeps/posix/getaddrinfo.c (gaih_inet): If AF_UNSPEC is set,
13076         use the same service for AF_INET and AF_INET6.
13078 2002-11-19  Ulrich Drepper  <drepper@redhat.com>
13080         * intl/localealias.c (read_alias_file): Use only about 400 bytes
13081         of stack space instead of 16k.
13083 2002-11-18  Wolfram Gloger  <wg@malloc.de>
13085         * malloc/arena.c
13086         (ptmalloc_lock_all, ptmalloc_unlock_all, ptmalloc_unlock_all2): Do
13087         nothing if not initialized.  Bug report from Marcus Brinkmann
13088         <Marcus.Brinkmann@ruhr-uni-bochum.de>.
13090 2002-11-19  Roland McGrath  <roland@redhat.com>
13092         * posix/Versions (libc: GLIBC_2.3.2): Add sched_getaffinity and
13093         sched_setaffinity.
13095         * configure.in (libc_cv_gcc_dwarf2_unwind_info check): Use libraries
13096         `-lgcc -lgcc_eh -lgcc', not just `-lgcc -lgcc_eh' in link commands for
13097         test leading to libc_cv_gcc_dwarf2_unwind_info=no_registry_needed.
13098         * configure: Regenerated.
13100 2002-11-19  Ulrich Drepper  <drepper@redhat.com>
13102         * include/dlfcn.h: __libc_dlopen is now a macro calling
13103         __libc_dlopen_mode with the extra parameter RTLD_LAZY.
13104         (__libc_dlopen_mode): New prototype.
13105         * elf/dl-libc.c (__libc_dlopen_mode): Renamed from __libc_dlopen.  Add
13106         new parameter.  Store new parameter in mode field of structure passed
13107         to do_dlopen.
13108         (struct do_dlopen_args): Add new field mode.
13109         (do_dlopen): Pass mode from parameter structure to _dl_open.
13111 2002-11-11  Randolf Chung  <tausq@debian.org>
13113         * sysdeps/unix/sysv/linux/hppa/bits/fcntl.h [__USE_FILE_OFFSET64]
13114         (F_GETLK, F_SETLK, F_SETLKW): Define to F_*64 versions.
13115         * sysdeps/unix/sysv/linux/hppa/fcntl.c: New file.
13117         * sysdeps/hppa/fpu/libm-test-ulps: New file (generated).
13119         * sysdeps/hppa/Makefile (CFLAGS-rtld.c): New variable.
13120         Set -mdisable-fpregs for this file.
13122 2002-11-11  Carlos O'Donell  <carlos@baldric.uwo.ca>
13124         * sysdeps/unix/sysv/linux/configure.in:
13125         Make 2.4.19 minimum linux kernel for hppa, and add unwind symbols
13126         from gcc-3.0 era for backwards compatibility.
13127         * sysdeps/unix/sysv/linux/configure: Regenerate.
13129         * sysdeps/unix/sysv/linux/hppa/sys/ucontext.h:
13130         Define mcontext_t as a sigcontext.
13132 2002-11-18  Roland McGrath  <roland@redhat.com>
13134         * dlfcn/dlerror.c (fini): New function, __attribute__ ((destructor)).
13135         Free memory in `last_result' if it was used.
13137         * resolv/nss_dns/dns-network.c (getanswer_r): In BYNAME case, search
13138         all aliases for one that matches the "<dotted-quad>.IN-ADDR.ARPA" form.
13139         Do the parsing inline instead of copying strings and calling
13140         inet_network, and properly skip all alias names not matching the form.
13142         * manual/pattern.texi (Variable Substitution): Fix # and ## examples.
13144 2002-11-17  Ulrich Drepper  <drepper@redhat.com>
13146         * manual/pattern.texi (Wordexp Example): Fix sample code.
13148         * sysdeps/unix/sysv/linux/i386/clone.S: Initialize word in the
13149         childs stack which will be loaded into the %esi register.
13151 2002-11-14  Paul Eggert  <eggert@twinsun.com>
13153         * resolv/nss_dns/dns-network.c (getanswer_r): Check for buffer
13154         overflow when skipping the question part and when unpacking aliases.
13156 2002-11-15  Roland McGrath  <roland@redhat.com>
13158         * math/Makefile (libm-calls): Remove s_copysign, s_isinf, s_isnan,
13159         s_finite, s_modf, s_scalbn, s_frexp, m_ldexp, s_signbit.
13160         Instead add $(calls:s_%=m_%) to get m_* versions of them all.
13162 2002-11-15  Jakub Jelinek  <jakub@redhat.com>
13164         * sysdeps/i386/dl-machine.h (elf_machine_rela): Handle R_386_COPY.
13165         * sysdeps/arm/dl-machine.h (elf_machine_rela): Handle R_ARM_COPY.
13167 2002-11-15  Roland McGrath  <roland@redhat.com>
13169         * math/Makefile (libm-calls): Change s_ldexp to m_ldexp.
13170         * Makerules ($(+sysdir_pfx)sysd-rules): Emit pattern rules for m_%.[Sc]
13171         from sysdeps/.../s_%.[Sc] with commands $(+make-include-of-dep).
13172         (+make-include-of-dep): New canned sequence.
13174         * stdlib/canonicalize.c (__realpath): Check for malloc failure.
13175         From Dmitry V. Levin <ldv@altlinux.org>.
13177 2002-11-14  Roland McGrath  <roland@redhat.com>
13179         * sysdeps/generic/errno.c (__libc_errno): Remove alias.
13180         * inet/herrno.c (__libc_h_errno): Likewise.
13181         * resolv/res_libc.c (__libc_res): Likewise.
13182         [USE___THREAD]: Use this in place of [USE_TLS && HAVE___THREAD].
13183         (__res_state) [! USE___THREAD]: Don't define as weak.
13184         * csu/Versions: Revert last change.
13185         * resolv/Versions: Revert last change.
13187         * Makerules ($(common-objpfx)%.make): New pattern rule.
13188         * tls.make.c: New file.
13189         * Makefile (distribute): Add it.
13191         * sysdeps/generic/errno.c [! USE___THREAD]
13192         [HAVE_ELF && SHARED && DO_VERSIONING] (errno, _errno): Declare these
13193         with compat_symbol so they are not link-time visible.
13194         [! USE___THREAD] (__libc_errno): New alias for errno.
13195         * csu/Versions [!(USE_TLS && HAVE___THREAD)] (libc: GLIBC_PRIVATE):
13196         Add __libc_errno here.
13197         * inet/herrno.c [USE___THREAD]: Use this conditional
13198         in place of [USE_TLS && HAVE___THREAD].
13199         [! USE___THREAD] [HAVE_ELF && SHARED && DO_VERSIONING]
13200         (h_errno, _h_errno): Declare these with compat_symbol so they are not
13201         link-time visible.
13202         [! USE___THREAD] (__libc_h_errno): New alias for h_errno.
13203         * resolv/res_libc.c [! USE___THREAD]
13204         [HAVE_ELF && SHARED && DO_VERSIONING] (_res): Likewise.
13205         (_res): Use __attribute__ ((section (".bss"))) so we can have an alias.
13206         (__libc_res): Define as alias for _res.
13207         * resolv/Versions [!(USE_TLS && HAVE___THREAD)] (libc: GLIBC_PRIVATE):
13208         Add __libc_h_errno and __libc_res here.
13210 2002-11-14  Jakub Jelinek  <jakub@redhat.com>
13212         * csu/Versions (errno): Move STT_TLS symbol to GLIBC_PRIVATE for now.
13213         * resolv/Versions (h_errno, _res): Likewise.
13215 2002-11-14  Roland McGrath  <roland@redhat.com>
13217         * Makerules (%.dynsym): Remove $(objpfx) from target and dep.
13218         (%.symlist): Likewise.
13220 2002-11-13  Roland McGrath  <roland@redhat.com>
13222         * scripts/abilist.awk: New file.
13223         * Makefile (distribute): Add it.
13224         * Makerules ($(objpfx)%.dynsym, $(objpfx)%.symlist): New rules.
13225         (tests): Depend on .symlist file for each $(install-lib.so-versioned).
13226         [$(subdir) = elf] (tests): Depend on libc.symlist.
13227         (generated, common-generated): Add those files.
13229         * aclocal.m4 (LIBC_PROG_BINUTILS): Check for objdump, set OBJDUMP.
13230         * configure: Regenerated.
13231         * config.make.in (OBJDUMP): New variable, substituted by configure.
13233         * malloc/mcheck.c (struct hdr): New members `block' and `magic2'.
13234         (mallochook, reallochook): Set them up.
13235         (checkhdr): Check HDR->magic2 value.
13236         (freehook): Reset HDR->magic2.
13237         (memalignhook): New static function.
13238         (old_memalign_hook): New static variable.
13239         (mcheck, reallochook): Set __memalign_hook to memalignhook.
13241         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage): Zero the space
13242         for the new TCB.
13244 2002-11-13  Andreas Jaeger  <aj@suse.de>
13246         * sysdeps/unix/sysv/linux/x86_64/sigaction.c: Check for visibility
13247         attribute.
13248         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
13250 2002-11-11  Paul Eggert  <eggert@twinsun.com>
13252         * manual/crypt.texi (Cryptographic Functions): Mention that
13253         the MD5 one-way algorithm is compatible with BSD's.
13255 2002-11-11  Isamu Hasegawa  <isamu@yamato.ibm.com>
13257         * posix/regex_internal.c (re_string_skip_chars): Also return the last
13258         wide character.
13259         (re_string_reconstruct): Calculate the context by itself when the
13260         offset points out of the valid range.
13261         (re_string_context_at): Use wide character when MB_CUR_MAX > 1.
13262         * posix/regex_internal.h (WIDE_NEWLINE_CHAR): New macro.
13263         (IS_WIDE_WORD_CHAR): New macro.
13264         (IS_WIDE_NEWLINE): New macro.
13266 2002-11-12  Andreas Jaeger  <aj@suse.de>
13268         * sysdeps/x86_64/strchr.S: Don't use one register for two
13269         purposes, this fixes a bug noticed by test-strchr.c.
13271         * sysdeps/x86_64/strcat.S: Fix algorithm to align source pointer
13272         correctly.
13274 2002-11-12  Roland McGrath  <roland@redhat.com>
13276         * libio/libioP.h [_LIBC && !SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_1)]
13277         (_G_IO_NO_BACKWARD_COMPAT): Define it.
13279         * sysdeps/ia64/dl-fptr.c [_LIBC_REENTRANT]: Include <ia64intrin.h>
13280         instead of <pt-machine.h>.
13281         [_LIBC_REENTRANT] (lock, unlock): Use __sync_lock_* macros instead of
13282         testandset.
13283         From Ian Wienand <ianw@gelato.unsw.edu.au>.
13285 2002-11-10  Roland McGrath  <roland@redhat.com>
13287         * libio/bug-wfflush.c (do_test): Call rewind instead of fsetpos.
13288         Call fputs instead of fwprintf (simpler to follow in debugger).
13290         * crypt/md5-crypt.c: Doc fix.
13292         * sysdeps/unix/make-syscalls.sh: Insert $(make-target-directory) at
13293         the beginning of generated target commands.
13295         * csu/Makefile ($(objpfx)crti.o, $(objpfx)crtn.o): Add explicit
13296         dependencies for these in case implicit rule search skipped the
13297         nonexistent source directory.
13298         * sysdeps/gnu/Makefile ($(objpfx)errlist.d): Give this rule all the
13299         files with $(object-suffixes) as targets too.
13300         * Makerules [no_deps && objpfx] (before-compile): Add $(objpfx).
13301         and a target for it using $(make-target-directory).
13303         * Rules (before-compile): Add $(common-objpfx)bits/stdio-lim.h.
13305 2002-11-10  Roland McGrath  <roland@frob.com>
13307         * sysdeps/unix/sysv/linux/bits/pthreadtypes.h: Moved to ...
13308         * sysdeps/generic/bits/pthreadtypes.h: ... here.
13310         * sysdeps/mach/hurd/fcntl.c (__libc_fcntl): Treat a struct flock with
13311         l_start == 0 and l_len == 1 as we do l_len == 0.
13313 2002-11-10  Ulrich Drepper  <drepper@redhat.com>
13315         * po/da.po: Update from translation team.
13317 2002-11-10  Roland McGrath  <roland@redhat.com>
13319         * config.make.in (includedir): New variable, substituted by configure.
13320         Reported missing by Jocelyn Fournier <joc@presence-pc.com>.
13321         * Makeconfig (includedir): Use $(prefix), not $(exec_prefix).
13323 2002-11-10  Andreas Jaeger  <aj@suse.de>
13325         * sysdeps/unix/sysv/linux/x86_64/sys/ucontext.h (enum): Add
13326         REG_OLDMASK and REG_CR2 to synch with kernel header.
13327         (NGREG): Increase.
13329         * nss/getXXent.c (GETFUNC_NAME): Use union type to avoid strict
13330         aliasing problem.
13331         * nss/getXXbyYY_r.c (INTERNAL): Likewise.
13332         * nss/getnssent_r.c (__nss_getent_r): Likewise.
13333         (__nss_setent): Likewise.
13334         (__nss_getent_r): Likewise.
13335         * inet/getnetgrent_r.c (innetgr): Likewise.
13336         (__internal_setnetgrent_reuse): Likewise.
13337         (internal_getnetgrent_r): Likewise.
13338         * inet/ether_hton.c (ether_hostton): Likewise.
13339         * inet/ether_ntoh.c (ether_ntohost): Likewise.
13340         * sunrpc/netname.c (netname2user): Likewise.
13341         * sunrpc/publickey.c (getpublickey): Likewise.
13342         (getsecretkey): Likewise.
13344 2002-11-09  Marcus Brinkmann  <marcus@gnu.org>
13346         * sysdeps/mach/hurd/i386/ioperm.c (ioperm): Correct off by one
13347         error in range calculation.
13349 2002-10-09  Jakub Jelinek  <jakub@redhat.com>
13351         * string/test-strspn.c (do_test): Ensure zero termination.
13352         * string/test-strpbrk.c (do_test): Likewise.
13353         * string/test-strncmp.c (stupid_strncmp): Use strnlen, not strlen.
13354         * string/test-strncpy.c (stupid_strncpy): Likewise.
13355         * string/test-stpncpy.c (stupid_stpncpy): Likewise.
13357 2002-10-08  Roland McGrath  <roland@redhat.com>
13359         * string/test-string.h (test_init): Fill BUF1 and BUF2 with
13360         nonzero characters.
13362 2002-09-22  H.J. Lu  <hjl@gnu.org>
13364         * sysdeps/unix/sysv/linux/mmap64.c (MMAP2_PAGE_SHIFT): Renamed
13365         from PAGE_SHIFT.  Define if not defined.  Check MMAP2_PAGE_SHIFT
13366         only if __NR_mmap2 is defined.
13368         * sysdeps/unix/sysv/linux/powerpc/mmap64.c: Moved to ...
13369         * sysdeps/unix/sysv/linux/mmap64.c: ... here.
13370         * sysdeps/unix/sysv/linux/hppa/mmap64.c: File removed.
13371         * sysdeps/unix/sysv/linux/sparc/sparc32/mmap64.c: FIle removed,
13373 2002-11-08  Jakub Jelinek  <jakub@redhat.com>
13375         * posix/bug-regex13.c (tests): Add new test.
13377         * string/test-strchr.c (stupid_strchr): New function.
13378         (do_random_tests): Make sure the string is zero terminated.
13379         * string/test-strpbrk.c (stupid_strpbrk): New function.
13380         (do_random_tests): Make sure the string is zero terminated.
13381         * string/test-strcmp.c (stupid_strcmp): New function.
13382         (do_random_tests): Make sure the strings are zero terminated.
13383         * string/test-strspn.c (stupid_strspn): New function.
13384         (simple_strspn): Rename rej argument to acc.
13385         (do_random_tests): Make sure the string is zero terminated.
13386         * string/test-strcspn.c (stupid_strcspn): New function.
13387         * string/test-strncpy.c (stupid_strncpy): New function.
13388         * string/test-stpncpy.c (stupid_stpncpy): New function.
13389         * string/test-strncmp.c (stupid_strncmp): New function.
13390         (do_random_tests): Make sure the strings are zero terminated.
13391         * string/test-string.h (impl_t): Change test into long.
13392         (IMPL): Add __attribute__((aligned (sizeof (void *)))).
13394 2002-11-08  Roland McGrath  <roland@redhat.com>
13396         * sysdeps/ia64/elf/configure.in: Add TLS check.
13397         From Ian Wienand <ianw@cse.unsw.edu.au>.
13398         * sysdeps/ia64/elf/configure: Regenerated.
13400 2002-11-07  Roland McGrath  <roland@redhat.com>
13402         * libio/fileops.c (_IO_new_file_overflow): Use INTUSE(_IO_do_write) in
13403         place of _IO_new_do_write.
13404         [_LIBC] (_IO_do_write): Define as macro for _IO_new_do_write and
13405         #undef before versioned_symbol use.
13407 2002-11-07  Richard Henderson  <rth@redhat.com>
13409         * configure.in (ASM_ALPHA_NG_SYMBOL_PREFIX): Remove test.
13410         * configure: Regenerated.
13411         * config.h.in (ASM_ALPHA_NG_SYMBOL_PREFIX): Remove #undef.
13412         * sysdeps/alpha/dl-machine.h (TRAMPOLINE_TEMPLATE): Use !samegp.
13413         (RTLD_START): Likewise.  Access _dl_skip_args, _rtld_local, and
13414         _dl_fini via gp-relative relocations.
13415         * sysdeps/alpha/fpu/e_sqrt.c: Use !samegp.
13417         * elf/tls-macros.h: Add alpha versions.
13418         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Handle TLS relocs.
13419         * sysdeps/unix/alpha/sysdep.S: Support USE___THREAD.
13420         * sysdeps/unix/alpha/sysdep.h: Likewise.  Add SYSCALL_ERROR_HANDLER.
13421         * sysdeps/unix/sysv/linux/alpha/brk.S: Use it.
13422         * sysdeps/unix/sysv/linux/alpha/clone.S: Likewise.
13423         * sysdeps/unix/sysv/linux/alpha/getitimer.S: Likewise.
13424         * sysdeps/unix/sysv/linux/alpha/getrusage.S: Likewise.
13425         * sysdeps/unix/sysv/linux/alpha/gettimeofday.S: Likewise.
13426         * sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S: Likewise.
13427         * sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S: Likewise.
13428         * sysdeps/unix/sysv/linux/alpha/rt_sigaction.S: Likewise.
13429         * sysdeps/unix/sysv/linux/alpha/select.S: Likewise.
13430         * sysdeps/unix/sysv/linux/alpha/setitimer.S: Likewise.
13431         * sysdeps/unix/sysv/linux/alpha/settimeofday.S: Likewise.
13432         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S: Likewise.
13433         * sysdeps/unix/sysv/linux/alpha/syscall.S: Likewise.
13434         * sysdeps/unix/sysv/linux/alpha/utimes.S: Likewise.
13435         * sysdeps/unix/sysv/linux/alpha/wait4.S: Likewise.
13437         * sysdeps/unix/sysv/linux/alpha/sysdep.h: Re-include protect.
13438         Kill argument registers across the inline syscall.
13440         * sysdeps/unix/sysv/linux/alpha/clone.S: Add user_tid and tls args.
13442         * linuxthreads/sysdeps/alpha/tls.h: New file.
13443         * sysdeps/alpha/dl-tls.h: New file.
13445 2002-10-29  David Mosberger  <davidm@hpl.hp.com>
13447         * sysdeps/ia64/elf/initfini.c [HAVE_INITFINI_ARRAY]
13448         (gmon_initializer): New function.
13449         (.init prologue): If HAVE_INITFINI_ARRAY is true, don't call
13450         __gmon_start__ here.  Call it from gmon_initializer() instead.
13452 2002-03-12  H.J. Lu  <hjl@gnu.org>
13454         * elf/Makefile [$(have-initfini-array) = yes] (tests): Add tst-array1,
13455         tst-array2, and tst-array3.
13456         [$(have-initfini-array) = yes] (tests-static): Add tst-array3.
13457         [$(have-initfini-array) = yes] (modules-names): Add tst-array2dep.
13458         ($(objpfx)tst-array1.out): New target.
13459         ($(objpfx)tst-array2): Likewise.
13460         ($(objpfx)tst-array2.out): Likewise.
13461         ($(objpfx)tst-array3.out): Likewise.
13462         * elf/tst-array1.c: New file.
13463         * elf/tst-array1.exp: Likewise.
13464         * elf/tst-array2.c: Likewise.
13465         * elf/tst-array2dep.c: Likewise.
13466         * elf/tst-array2.exp: Likewise.
13467         * elf/tst-array3.c: Likewise.
13469 2002-10-28  David Mosberger  <davidm@hpl.hp.com>
13471         * elf/dl-fini.c (_dl_fini): Invoke fini_array in _reverse_ order.
13472         Don't add L->l_addr to array entry values.
13474 2002-11-07  Jakub Jelinek  <jakub@redhat.com>
13476         * string/test-string.h: New file.
13477         * string/test-strlen.c: New file.
13478         * string/test-string.h: New file.
13479         * string/test-strcmp.c: New file.
13480         * string/test-strchr.c: New file.
13481         * string/test-strrchr.c: New file.
13482         * string/test-strcpy.c: New file.
13483         * string/test-stpcpy.c: New file.
13484         * string/test-strncpy.c: New file.
13485         * string/test-stpncpy.c: New file.
13486         * string/test-strpbrk.c: New file.
13487         * string/test-strcspn.c: New file.
13488         * string/test-strspn.c: New file.
13489         * string/test-strcat.c: New file.
13490         * string/test-strncmp.c: New file.
13491         * string/test-memchr.c: New file.
13492         * string/test-memcmp.c: New file.
13493         * string/test-memset.c: New file.
13494         * string/test-memcpy.c: New file.
13495         * string/test-mempcpy.c: New file.
13496         * string/test-memmove.c: New file.
13497         * string/Makefile (strop-tests): New variable.
13498         (tests): Add strop-tests.
13499         (distribute): Add test-string.h.
13501 2002-11-06  Ulrich Drepper  <drepper@redhat.com>
13503         * posix/regcomp.c: Use tabs instead of spaces.
13504         * posix/regexec.c: Likewise.
13505         * posix/regex_internal.h: Likewise.
13507         * posix/regcomp.c (re_compile_fastmap_iter): Use __wcrtomb not wctomb.
13509 2002-11-06  Jakub Jelinek  <jakub@redhat.com>
13511         * posix/regcomp.c (re_compile_pattern): Don't set regs_allocated
13512         here.
13513         (regcomp): Don't set can_be_null here.
13514         (re_comp): Clear whole re_comp_buf with the exception of fastmap.
13515         (re_compile_internal): Clear can_be_null, set regs_allocated.
13517         * posix/regcomp.c (re_set_fastmap): New function.
13518         (re_compile_fastmap_iter): Use it.  Remove redundant type ==
13519         COMPLEX_BRACKET check.
13520         * posix/regexec.c (re_search_internal): Optimize searching with
13521         fastmap.  Call re_string_reconstruct even if match_first is
13522         smaller than raw_mbs_idx.
13524 2002-11-06  Isamu Hasegawa  <isamu@yamato.ibm.com>
13526         * posix/regcomp (free_dfa_content): Use free_state.
13527         * posix/regex_internal.c (re_string_realloc_buffers): Don't edit
13528         pointers in case that realloc failed.
13529         (re_node_set_merge): Likewise.
13530         (register_state): Likewise.
13531         (create_newstate_common): Invoke memory release functions in case of
13532         error conditions.
13533         (create_ci_newstate): Likewise.
13534         (create_cd_newstate): Likewise.
13535         (free_state): New function.
13536         * posix/regexec.c (re_search_internal): Invoke memory release
13537         functions in case of error conditions.
13538         (sift_states_backward): Likewise.
13539         (merge_state_array): Likewise.
13540         (add_epsilon_src_nodes): Likewise.
13541         (sub_epsilon_src_nodes): Likewise.
13542         (search_subexp): Likewise.
13543         (sift_states_bkref): Likewise.
13544         (transit_state_sb): Likewise.
13545         (transit_state_mb): Likewise.
13546         (transit_state_bkref_loop): Likewise.
13547         (group_nodes_into_DFAstates): Likewise.
13548         (push_fail_stack): Don't edit pointers in case that realloc failed.
13549         (extend_buffers): Likewise.
13550         (match_ctx_add_entry): Likewise.
13552 2002-11-06  Roland McGrath  <roland@redhat.com>
13554         * sysdeps/unix/sysv/linux/mips/configure.in: File removed.
13555         * sysdeps/unix/sysv/linux/mips/configure: Likewise.
13557         * configure.in: Add checks on as and ld for binutils 2.13 or later.
13558         * configure: Regenerated.
13560 2002-11-06  Ulrich Drepper  <drepper@redhat.com>
13562         * posix/regcomp.c (regcomp): __re_compile_fastmap can never fail.
13563         If re_compile_internal failed free fastmap buffer.
13564         (free_dfa_content): Broken out of regfree function.  Frees all dfa
13565         related data.
13566         (regfree): Add free_dfa_content.
13567         (re_compile_internal): If any of the called functions fails free
13568         all dfa related memory.
13570 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
13572         * sysdeps/unix/sysv/linux/sys/sysctl.h: Add ugly hacks to prevent
13573         warnings from the kernel headers.
13575 2002-11-05  Roland McGrath  <roland@redhat.com>
13577         * sysdeps/unix/mips/sysdep.h [! __PIC__] (PSEUDO): Add nop after jump.
13578         From Johannes Stezenbach <js@convergence.de>.
13580         * sysdeps/unix/sysv/linux/mips/Versions (libc: GLIBC_2.0): Change
13581         #errlist-compat magic comment to give 123 as size.
13582         (libc: GLIBC_2.1): Remove this set, moving #errlist-compat magic to ...
13583         (libc: GLIBC_2.2): ... here.
13584         (libc: GLIBC_2.3): Likewise.
13586 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
13588         * elf/dl-fini.c (_dl_fini): Correct the increment of l_opencount
13589         which happens at the beginning so that we can unload modules in
13590         __libc_freeres.
13592 2002-11-06  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
13594         * sysdeps/sh/bits/setjmp.h (JB_SIZE): Define only
13595         under [__USE_MISC || _ASM].
13597         * elf/elf.h: Remove the obsolete SH TLS relocations.
13599 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
13601         * posix/regcomp.c (regcomp): Initialize preg->can_be_null to zero.
13603 2002-11-05  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
13605         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h: Handle
13606         __NR_pread64 and __NR_pwrite64.
13607         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h: Likewise.
13608         * sysdeps/unix/sysv/linux/powerpc/pread.c: Remove __NR_pread64
13609         and __NR_pwrite64.
13610         Revert change to use INLINE_SYSCALL.
13611         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Likewise.
13612         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Likewise.
13613         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Likewise.
13614         * sysdeps/unix/sysv/linux/powerpc/ftruncate64.c: Revert change to use
13615         INLINE_SYSCALL.
13616         * sysdeps/unix/sysv/linux/powerpc/truncate64.c: Likewise.
13618         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (INLINE_SYSCALL):
13619         Update clobber list and add a comment about the syscall ABI.
13621         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list (s_pread64,
13622         s_pwrite64, s_ftruncate, s_truncate): Re-add.
13624 2002-11-05  Jakub Jelinek  <jakub@redhat.com>
13626         * iconv/gconv_dl.c (free_mem): Clear loaded.
13627         * locale/loadarchive.c (_nl_archive_subfreeres): Call locale_data's
13628         cleanup if any.
13630 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
13632         * sysdeps/unix/sysv/linux/fexecve.c: Include <stdio.h>.
13634         * libio/ioseekoff.c: Remove INTDEF.  Define _IO_seekoff_unlocked.  Same
13635         as old code without locking.  _IO_seekoff calls this function after
13636         locking the stream.
13637         * libio/ioseekpos.c: Likewise for _IO_seekpos.
13638         * libio/libioP.h: Replace _IO_seekoff_internal and _IO_seekpos_internal
13639         prototypes with _IO_seekoff_unlocked and _IO_seekpos_unlocked
13640         prototypes.
13641         * libio/iolibio.h (_IO_fseek): Call _IO_seekoff_unlocked instead
13642         of _IO_seekoff_internal.
13643         (_IO_rewind): Likewise.
13644         * libio/ioftell.c: Likewise.
13645         * libio/ftello.c: Likewise.
13646         * libio/ftello64.c: Likewise.
13647         * libio/iofgetpos.c: Likewise.
13648         * libio/iofgetpos64.c: Likewise.
13649         * libio/oldiofgetpos.c: Likewise.
13650         * libio/oldiofgetpos64.c: Likewise.
13651         * libio/iofsetpos.c: Call _IO_seekpos_unlocked instead of
13652         _IO_seekpos_internal.
13653         * libio/iofsetpos64.c: Likewise.
13654         * libio/oldiofsetpos.c: Likewise.
13655         * libio/oldiofsetpos64.c: Likewise.
13657 2002-11-04  Roland McGrath  <roland@redhat.com>
13659         * sysdeps/unix/sysv/linux/powerpc/chown.c: Use INLINE_SYSCALL macro.
13660         * sysdeps/unix/sysv/linux/powerpc/ftruncate64.c: Likewise.
13661         * sysdeps/unix/sysv/linux/powerpc/ioctl.c: Likewise.
13662         * sysdeps/unix/sysv/linux/powerpc/pread.c: Likewise.
13663         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Likewise.
13664         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Likewise.
13665         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Likewise.
13666         * sysdeps/unix/sysv/linux/powerpc/tcgetattr.c: Likewise.
13667         * sysdeps/unix/sysv/linux/powerpc/tcsetattr.c: Likewise.
13668         * sysdeps/unix/sysv/linux/powerpc/truncate64.c: Likewise.
13669         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list (s_ioctl,
13670         s_chown, s_ftruncate64, s_mmap2, s_pread64, s_pwrite64, s_truncate64,
13671         sys_fstat, sys_lstat, sys_mknod, sys_readv, sys_stat, sys_writev):
13672         Remove these, no longer used.
13674 2002-11-04  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
13676         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list (s_ipc,
13677         s_llseek, s_readahead, s_execve, s_fcntl, s_fcntl64, s_fstat64,
13678         s_getcwd, s_getdents, s_getdents64, s_getpmsg, s_getpriority,
13679         s_getrlimit, s_lstat64, s_poll, s_ptrace, s_putpmsg, s_reboot,
13680         s_setrlimit, s_sigaction, s_sigpending, s_sigprocmask, s_sigsuspend,
13681         s_stat64, s_sysctl, s_ugetrlimit, s_ustat, s_vfork): Remove now unused
13682         syscall stubs.
13684         * sysdeps/unix/sysv/linux/pwrite.c: Fix typo.
13685         * sysdeps/unix/sysv/linux/pwrite64.c: Likewise.
13686         * sysdeps/unix/sysv/linux/powerpc/pread.c: Handle both __NR_pread64
13687         and __NR_pread.
13688         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Likewise.
13689         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Handle both __NR_pwrite64
13690         and __NR_pwrite.
13691         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Likewise.
13693 2002-11-03  Roland McGrath  <roland@redhat.com>
13695         * sysdeps/generic/ldsodefs.h (struct rtld_global): New member
13696         `_dl_tls_static_used'.
13697         * sysdeps/generic/libc-tls.c (_dl_tls_static_used): New variable.
13698         (__libc_setup_tls): Initialize it.  Let the initial value of
13699         _dl_tls_static_size indicate some surplus space in the computed value.
13700         * elf/dl-open.c (_dl_tls_static_size): New variable.
13701         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Initialize
13702         _dl_tls_static_used.  Add some surplus space into _dl_tls_static_size.
13703         * elf/dl-reloc.c [USE_TLS] (allocate_static_tls): New function.
13704         (CHECK_STATIC_TLS): Use it.
13705         * elf/dl-close.c (_dl_close): Adjust _dl_tls_static_used when the
13706         closed objects occupied a trailing contiguous chunk of static TLS area.
13708 2002-10-18  Bruno Haible  <bruno@clisp.org>
13710         * charmaps/ISO_5428: Use Greek characters introduced in Unicode 3.0.
13712 2002-11-04  Ulrich Drepper  <drepper@redhat.com>
13714         * libio/wfileops.c (_IO_wfile_seekoff): Don't modify _offset and
13715         _wide_data->_IO_read_end if adjustment can be made in the current
13716         buffer.
13718         * sysdeps/unix/sysv/linux/fexecve.c: New file.
13720         * libio/bug-wfflush.c (do_test): Using fseek is not allowed when
13721         wide oriented streams are used.
13723         * nss/getXXent_r.c (ENDFUNC_NAME): Don't do anything if the
13724         service hasn't been used [PR libc/4744].
13726         * include/features.h: Use __STDC_VERSION__ not __STDC_VERSION.
13727         Reported by Miloslav Trmac <mitr@volny.cz> [PR libc/4766].
13729         * manual/examples/dir.c: Don't include <stddef.h>.
13730         * manual/examples/select.c: Include <errno.h> for TEMP_FAILURE_RETRY.
13731         Reported by Frédéric Delanoy <delanoy_f@yahoo.com>.
13733 2002-11-02  H.J. Lu  <hjl@gnu.org>
13735         * stdio-common/reg-printf.c: Include <stddef.h>.
13737 2002-11-03  Ulrich Drepper  <drepper@redhat.com>
13739         * sysdeps/generic/libc-tls.c: Define _dl_tls_static_used.
13741         * po/ca.po: Update from translation team.
13742         * po/es.po: Likewise.
13744         * sysdeps/generic/segfault.c (catch_segfault): If HAVE_PROC_SELF
13745         is defined write out memory map.
13746         * sysdeps/unix/sysv/linux/segfault.c: New file.
13748 2002-11-02  Roland McGrath  <roland@redhat.com>
13750         * sysdeps/unix/sysv/linux/getdents.c (__GETDENTS): Use union type for
13751         pointers that can alias.
13752         Reported by Daniel Jacobowitz <drow@mvista.com>.
13754         * sysdeps/unix/bsd/bsd4.4/freebsd/bits/typesizes.h: New file.
13756 2002-11-02  Roland McGrath  <roland@redhat.com>
13758         * manual/filesys.texi (Reading/Closing Directory): Rewrite readdir_r
13759         description to be clearer and to say that *RESULT is set to ENTRY.
13761 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
13763         * posix/regexec.c (build_trtable): Alloca or malloc dests_node and
13764         dests_ch arrays together.  Alloca or malloc dest_states,
13765         dest_states_word and dest_states_nl arrays together.  Free memory on
13766         error exit.
13768 2002-10-29  Daniel Jacobowitz  <drow@mvista.com>
13770         * crypt/crypt_util.c (__init_des_r): Initialize current_salt
13771         and current_saltbits.
13773 2002-11-02  Roland McGrath  <roland@redhat.com>
13775         * stdio-common/reg-printf.c: Include <stdlib.h>.
13777 2002-11-02  H.J. Lu  <hjl@gnu.org>
13779         * sysdeps/unix/sysv/linux/mips/syscalls.list (s_execve): Set
13780         caller to EXTRA instead of execve.
13782 2002-11-01  Roland McGrath  <roland@redhat.com>
13784         * sysdeps/generic/errno-loc.c [! USE___THREAD]: Use this conditional
13785         in place of [!(USE_TLS && HAVE___THREAD)].
13786         (__errno_location) [! USE___THREAD]: Define as strong, not weak.
13788 2002-10-31  Roger Sayle  <roger@eyesopen.com>
13790         * sysdeps/i386/soft-fp/sfp-machine.h (_FP_NANFRAC_Q, _FP_NANSIGN_Q):
13791         New macros.
13792         * sysdeps/x86_64/soft-fp/sfp-machine.h: Likewise.
13794         * soft-fp/soft-fp.h: Allow sfp-machine.h to define FP_RND_NEAREST
13795         without defining FP_ROUNDMODE.
13797 2002-10-29  Jakub Jelinek  <jakub@redhat.com>
13799         * sysdeps/gnu/siglist.c (PTR_SIZE_STR): Remove.
13800         (__old_sys_siglist, __old_sys_sigabbrev): Use strong_alias and
13801         declare_symbol.
13802         * sysdeps/mach/hurd/siglist.h (OLD_SIGLIST_SIZE_STR): Remove.
13803         (OLD_SIGLIST_SIZE): Define.
13804         * sysdeps/unix/sysv/linux/siglist.h (OLD_SIGLIST_SIZE_STR): Remove.
13805         (OLD_SIGLIST_SIZE): Define.
13806         * sysdeps/unix/sysv/linux/arm/siglist.c: Remove.
13808 2002-11-01  Jakub Jelinek  <jakub@redhat.com>
13810         * sysdeps/ia64/strncpy.S: Fix recovery code.
13812 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
13814         * include/libc-symbols.h (__libc_freeres_fn_section, libc_freeres_fn):
13815         New macros.
13816         * elf/dl-close.c (free_mem): Use libc_freeres_fn macro, remove
13817         text_set_element.
13818         * elf/dl-libc.c (free_mem): Likewise.
13819         * iconv/gconv_conf.c (free_mem): Likewise.
13820         * iconv/gconv_db.c (free_mem): Likewise.
13821         * iconv/gconv_dl.c (free_mem): Likewise.
13822         * iconv/gconv_cache.c (free_mem): Likewise.
13823         * intl/finddomain.c (free_mem): Likewise.
13824         * intl/dcigettext.c (free_mem): Likewise.
13825         * locale/setlocale.c (free_mem): Likewise.
13826         * misc/fstab.c (fstab_free): Likewise.
13827         * nss/nsswitch.c (free_mem): Likewise.
13828         * posix/regcomp.c (free_mem): Likewise.
13829         * resolv/gai_misc.c (free_res): Likewise.
13830         * stdlib/fmtmsg.c (free_mem): Likewise.
13831         * sunrpc/clnt_perr.c (free_mem): Likewise.
13832         * sysdeps/generic/setenv.c (free_mem): Likewise.
13833         * sysdeps/unix/sysv/linux/shm_open.c (freeit): Likewise.
13834         * sysdeps/pthread/aio_misc.c (free_res): Likewise.
13835         * time/tzset.c (free_mem): Likewise.
13836         * malloc/mtrace.c (release_libc_mem): Add __libc_freeres_fn_section.
13837         * locale/loadarchive.c (_nl_archive_subfreeres): Likewise.
13838         * malloc/set-freeres.c (__libc_freeres): Likewise.
13840         * login/getutent.c: Include stdlib.h instead of stddef.h.
13841         (buffer): Change into pointer to utmp, add libc_freeres_ptr.
13842         (__getutent): Allocate buffer the first time it is run.
13843         * login/getutid.c: Include stdlib.h instead of stddef.h.
13844         (buffer): Change into pointer to utmp, add libc_freeres_ptr.
13845         (__getutid): Allocate buffer the first time it is run.
13846         * login/getutline.c: Include stdlib.h instead of stddef.h.
13847         (buffer): Change into pointer to utmp, add libc_freeres_ptr.
13848         (__getutline): Allocate buffer the first time it is run.
13849         * malloc/mtrace.c (malloc_trace_buffer): Change into char *.
13850         (mtrace): Allocate malloc_trace_buffer.
13851         * resolv/nsap_addr.c (inet_nsap_ntoa): Decrease size of tmpbuf.
13852         * resolv/ns_print.c (ns_sprintrrf): Decrease size of t.
13853         * string/strerror.c: Include libintl.h and errno.h.
13854         (buf): New variable.
13855         (strerror): Only allocate buffer if actually needed (unknown error).
13856         * time/tzfile.c (transitions): Add libc_freeres_ptr.
13857         (freeres): Remove.
13859 2002-10-25  Jakub Jelinek  <jakub@redhat.com>
13861         * include/libc-symbols.h (libc_freeres_ptr): New macro.
13862         * malloc/set-freeres.c (__libc_freeres_ptrs): Define using
13863         symbol_set_define.
13864         (__libc_freeres): Free all pointers in that section.
13865         * Makerules (build-shlib): Add $(LDSEDCMD-$(@F:lib%.so=%).so) to sed
13866         commands when creating .lds script.
13867         (LDSEDCMD-c.so): New variable.
13868         * inet/rcmd.c (ahostbuf): Change into char *.  Add libc_freeres_ptr.
13869         (rcmd_af): Use strdup to allocate ahostbuf.
13870         * inet/rexec.c (ahostbuf): Change into char *.  Add libc_freeres_ptr.
13871         (rexec_af): Use strdup to allocate ahostbuf.
13872         * stdio-common/reg-printf.c (printf_funcs): Remove.
13873         (__printf_arginfo_table): Change into printf_arginfo_function **.
13874         Add libc_freeres_ptr.
13875         (__register_printf_function): Allocate __printf_arginfo_table
13876         and __printf_function_table the first time it is called.
13877         * stdio-common/printf-parse.h (__printf_arginfo_table): Change into
13878         printf_arginfo_function **.
13879         (parse_one_spec): Add __builtin_expect.
13880         * grp/fgetgrent.c (buffer): Add libc_freeres_ptr.
13881         (free_mem): Remove.
13882         * inet/getnetgrent.c (buffer): Add libc_freeres_ptr.
13883         (free_mem): Remove.
13884         * intl/localealias.c (libc_freeres_ptr): Define if !_LIBC.
13885         (string_space, map): Add libc_freeres_ptr.
13886         (free_mem): Remove.
13887         * misc/efgcvt.c (FCVT_BUFPTR): Add libc_freeres_ptr.
13888         (free_mem): Remove.
13889         * misc/mntent.c (getmntent_buffer): Add libc_freeres_ptr.
13890         (free_mem): Remove.
13891         * crypt/md5-crypt.c (libc_freeres_ptr): Define if !_LIBC.
13892         (buffer): Add libc_freeres_ptr.
13893         (free_mem): Remove for _LIBC.
13894         * nss/getXXbyYY.c (buffer): Add libc_freeres_ptr.
13895         (free_mem): Remove.
13896         * nss/getXXent.c (buffer): Add libc_freeres_ptr.
13897         (free_mem): Remove.
13898         * pwd/fgetpwent.c (buffer): Add libc_freeres_ptr.
13899         (free_mem): Remove.
13900         * resolv/res_hconf.c (ifaddrs): Add libc_freeres_ptr.
13901         (free_mem): Remove.
13902         * shadow/fgetspent.c (buffer): Add libc_freeres_ptr.
13903         (free_mem): Remove.
13904         * sysdeps/posix/ttyname.c (getttyname_name): Add libc_freeres_ptr.
13905         (free_mem): Remove.
13906         * sysdeps/unix/sysv/linux/getsysstats.c (mount_proc): Add
13907         libc_freeres_ptr.
13908         (free_mem): Remove.
13909         * sysdeps/unix/sysv/linux/ttyname.c (getttyname_name, ttyname_buf): Add
13910         libc_freeres_ptr.
13911         (free_mem): Remove.
13913 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
13915         * malloc/obstack.c [_LIBC] (obstack_free): Change into strong_alias
13916         instead of duplicating the whole function in libc.
13918 2002-10-31  Roland McGrath  <roland@redhat.com>
13920         * sysdeps/i386/bits/byteswap.h [__GNUC__ < 2] (__bswap_32):
13921         Renamed from __bswap_16 (typo fix).  Reported by <dens@stl.sarov.ru>.
13923 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
13925         * sysdeps/unix/sysv/linux/Makefile (syscall-%.h): Add -D for each
13926         32bit-predefine when creating .new32 list and -U for each
13927         32bit-predefine when creating .new64 list.
13928         * sysdeps/unix/sysv/linux/x86_64/Makefile (32bit-predefine): New.
13930 2002-10-29  Andreas Schwab  <schwab@suse.de>
13932         * sysdeps/generic/allocrtsig.c: Include <testrtsig.h>, not
13933         "testrtsig.h".  Reported by Daniel Jacobowitz <dan@debian.org>.
13935 2002-10-25  Roland McGrath  <roland@redhat.com>
13937         * sysdeps/unix/sysv/linux/configure.in: Fix typo in last change.
13938         * sysdeps/unix/sysv/linux/configure: Regenerated.
13940         * sysdeps/generic/ldsodefs.h: Remove [! SHARED] conditional from
13941         _dl_starting_up decl.
13943 2002-10-20  H.J. Lu  <hjl@gnu.org>
13945         * sysdeps/unix/sysv/linux/configure.in: Don't check
13946         /lib/modules/`uname -r`/build/include for kernel headers if
13947         cross compiling.
13948         * sysdeps/unix/sysv/linux/configure: Regenerated.
13950 2002-10-25  Roland McGrath  <roland@redhat.com>
13952         * math/math.h (M_LOG2El): Correct the value.
13953         From Stephen L Moshier <steve@moshier.net>.
13955         * sysdeps/unix/sysv/linux/init-first.c (init): Remove [! SHARED]
13956         conditional from __libc_multiple_libcs access.  Remove kludge for weak
13957         symbol access with old compilers we no longer support.
13958         * sysdeps/unix/sysv/aix/init-first.c (init): Likewise.
13959         * sysdeps/generic/libc-start.c (__libc_start_main): Likewise.
13961 2002-10-25  Roland McGrath  <roland@redhat.com>
13963         * sysdeps/posix/sigvec.c [SA_RESETHAND]: Disable wrapper hacks and
13964         implement SV_RESETHAND by translating it to SA_RESETHAND.
13966 2002-10-23  Alexandre Oliva  <aoliva@redhat.com>
13968         * elf/dl-reloc.c (_dl_reloc_bad_use): Print the full 32-bit relocation
13969         type on ELF64 platforms.
13971 2002-10-24  Ulrich Drepper  <drepper@redhat.com>
13973         * elf/elf.h (R_X86_64_GOTTPOFF): Renamed from r_x86_64_GOTTPOFF.
13975         * elf/elf.h: Define ELF_NOTE_OS_FREEBSD and NT_TASKSTRUCT.
13977 2002-10-24  Jakub Jelinek  <jakub@redhat.com>
13979         * elf/dl-misc.c: Include <sysdep.h>.
13980         (_dl_debug_vdprintf): Only take dl_load_lock if not _dl_starting_up.
13982         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (INTERNAL_SYSCALL,
13983         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
13984         (INLINE_SYSCALL): Use that.
13985         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (INTERNAL_SYSCALL,
13986         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
13987         (INLINE_SYSCALL): Use that.
13988         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (INTERNAL_SYSCALL,
13989         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
13990         (INLINE_SYSCALL): Use that.
13991         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Include
13992         dl-sysdep.h.
13993         (SYSCALL_ERROR_HANDLER): Define RTLD_PRIVATE_ERRNO variant.
13994         (__INTERNAL_SYSCALL_STRING): Define.
13995         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h: Include
13996         dl-sysdep.h.
13997         (SYSCALL_ERROR_HANDLER): Define RTLD_PRIVATE_ERRNO variant.
13998         (__INTERNAL_SYSCALL_STRING): Define.
13999         * sysdeps/unix/sysv/linux/sparc/sysdep.h (INLINE_SYSCALL): Pass
14000         __SYSCALL_STRING to inline_syscall*.
14001         (INTERNAL_SYSCALL, INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO):
14002         New macros.
14003         (inline_syscall0, inline_syscall1, inline_syscall2, inline_syscall3,
14004         inline_syscall4, inline_syscall5, inline_syscall6): Add string
14005         argument.
14007 2002-10-24  Roland McGrath  <roland@redhat.com>
14009         * sysdeps/generic/ldsodefs.h (_dl_starting_up): Declare it here.
14010         * sysdeps/unix/sysv/linux/init-first.c: Not here.
14011         * sysdeps/powerpc/elf/libc-start.c: Or here.
14012         * sysdeps/unix/sysv/aix/libc-start.c: Or here.
14013         * sysdeps/unix/sysv/aix/start-libc.c: Or here.
14014         * sysdeps/unix/sysv/aix/init-first.c: Or here.
14015         * sysdeps/generic/libc-start.c: Or here.
14016         * sysdeps/unix/sysv/linux/init-first.c (init): Protect _dl_starting_up
14017         access with [! SHARED].
14018         * sysdeps/unix/sysv/aix/init-first.c (init): Likewise.
14020         * libio/bug-wfflush.c: New file.
14021         * libio/Makefile (tests): Add bug-wfflush.
14023 2002-10-23  Roland McGrath  <roland@redhat.com>
14025         * stdio-common/tst-fphex.c: New file.
14026         * stdio-common/Makefile (tests): Add tst-fphex.
14027         * sysdeps/generic/printf_fphex.c (__printf_fphex): Fix initialization
14028         of WNUMEND.  Fix counting of decimal point in WIDTH.  Print '0' pad
14029         chars always before the value digits.
14030         Reported by James Antill <james.antill@redhat.com>.
14032 2002-10-24  Jakub Jelinek  <jakub@redhat.com>
14034         * posix/regcomp.c (re_comp): Call __regfree on re_comp_buf.
14035         (free_mem): New function.
14036         * posix/Makefile (tests): Add bug-regex14.  Add bug-regex14-mem
14037         if not cross compiling.
14038         (generated): Add bug-regex14-mem and bug-regex14.mtrace.
14039         (bug-regex14-ENV): Set.
14040         (bug-regex14-mem): New target.
14041         * posix/bug-regex14.c: New file.
14043 2002-10-23  Roland McGrath  <roland@redhat.com>
14045         * elf/Makefile ($(objpfx)librtld.map): Use temporary file for output
14046         target, so we don't touch it when the link fails.
14048         * libio/ftello.c (ftello): Use _IO_off64_t for type of POS.
14049         Check for the result overflowing off_t and fail with EOVERFLOW.
14050         * libio/ioftell.c (_IO_ftell): Likewise.
14051         * libio/iofgetpos.c (_IO_new_fgetpos): Likewise.
14053         * login/logwtmp.c (logwtmp): If sizeof ut_tv != sizeof struct timeval,
14054         use a temporary timeval on the stack for gettimeofday and copy it.
14055         * login/logout.c (logout): Likewise.
14056         Reported by Steven Munroe <sjmunroe@us.ibm.com>.
14058         * sysdeps/unix/sysv/linux/bits/statfs.h (struct statfs):
14059         Use __SWORD_TYPE instead of int for member types.
14060         (struct statfs64): Likewise.
14061         * sysdeps/unix/sysv/linux/alpha/bits/statfs.h: New file.
14062         * sysdeps/unix/sysv/linux/s390/bits/statfs.h: New file.
14063         * sysdeps/unix/sysv/linux/ia64/bits/statfs.h: File removed.
14064         * sysdeps/unix/sysv/linux/sparc/bits/statfs.h: File removed.
14065         * sysdeps/unix/sysv/linux/x86_64/bits/statfs.h: File removed.
14067         * sysdeps/unix/sysv/linux/sparc/bits/statvfs.h: Moved to ...
14068         * sysdeps/unix/sysv/linux/bits/statvfs.h: ... here.
14069         (ST_NODIRATIME): Restore fixed value of 2048.
14070         * sysdeps/unix/sysv/linux/alpha/bits/statvfs.h: File removed.
14071         * sysdeps/unix/sysv/linux/ia64/bits/statvfs.h: File removed.
14073         Rearranged <bits/types.h> definitions to reduce duplication.
14074         * sysdeps/generic/bits/types.h: Rewritten, using macros from
14075         <bits/wordsize.h> and new header <bits/typesizes.h>.
14076         * posix/Makefile (headers): Add bits/typesizes.h here.
14077         * sysdeps/generic/bits/typesizes.h: New file.
14078         * sysdeps/unix/sysv/linux/alpha/bits/typesizes.h: New file.
14079         * sysdeps/unix/sysv/linux/sparc/bits/typesizes.h: New file.
14080         * sysdeps/mach/hurd/bits/typesizes.h: New file.
14081         * sysdeps/unix/sysv/linux/alpha/bits/types.h: File removed.
14082         * sysdeps/unix/sysv/linux/bits/types.h: File removed.
14083         * sysdeps/unix/sysv/linux/ia64/bits/types.h: File removed.
14084         * sysdeps/unix/sysv/linux/mips/bits/types.h: File removed.
14085         * sysdeps/unix/sysv/linux/s390/bits/types.h: File removed.
14086         * sysdeps/unix/sysv/linux/sparc/bits/types.h: File removed.
14087         * sysdeps/unix/sysv/linux/x86_64/bits/types.h: File removed.
14088         * posix/sys/types.h [__USE_POSIX199506 || __USE_UNIX98]: Include
14089         <bits/pthreadtypes.h> here, not in <bits/types.h>.
14090         * signal/signal.h: Likewise.
14092         * streams/stropts.h: Include <bits/xtitypes.h>.
14093         * streams/Makefile (headers): Add bits/xtitypes.h here.
14094         * sysdeps/generic/bits/xtitypes.h: New file.
14095         * sysdeps/s390/bits/xtitypes.h: New file.
14096         * sysdeps/ia64/bits/xtitypes.h: New file.
14097         * sysdeps/x86_64/bits/xtitypes.h: New file.
14099         * sysvipc/Makefile (headers): Add bits/ipctypes.h here.
14100         * sysdeps/generic/bits/ipctypes.h: New file.
14101         * sysdeps/mips/bits/ipctypes.h: New file.
14102         * sysdeps/gnu/bits/shm.h: Include <bits/ipctypes.h>.
14103         * sysdeps/gnu/bits/msq.h: Likewise.
14104         * sysvipc/sys/ipc.h: Likewise.
14106 2002-10-22  Ulrich Drepper  <drepper@redhat.com>
14108         * elf/dl-load.c (struct filebuf): For buf element to have the
14109         alignment of ElfXX_Ehdr since this is what will be stored in it.
14111 2002-10-22  Jakub Jelinek  <jakub@redhat.com>
14113         * locale/programs/locarchive.c (add_alias): Change locrec_offset arg
14114         into pointer to locrec_offset.
14115         (add_locale_to_archive): Adjust callers.  Free normalized_name right
14116         before returning, not immediately after add_locale, pass it to
14117         add_alias if not NULL instead of name.  Rename second normalized_name
14118         occurence to nnormalized_codeset_name.
14120         * locale/programs/locarchive.c (enlarge_archive): Make sure
14121         string_size is always a multiple of 4.
14122         Reported by Andreas Schwab <schwab@suse.de>.
14124 2002-10-21  Andreas Schwab  <schwab@suse.de>
14126         * sysdeps/unix/sysv/linux/ia64/syscalls.list (s_execve): Set
14127         caller to EXTRA instead of execve, since the latter has a
14128         higher-priority implementation in linuxthreads.
14130 2002-10-21  Roland McGrath  <roland@redhat.com>
14132         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Initialize the static
14133         slotinfo list's len member to the proper size, not just 1.
14134         Initialize static_map.l_tls_initimage.
14136         * elf/dl-open.c (dl_open_worker): Fix loop searching for
14137         dtv_slotinfo_list element containing new modules' l_tls_modid.
14139         * elf/tst-tls9.c, elf/tst-tls9-static.c: New files.
14140         * elf/tst-tlsmod5.c, elf/tst-tlsmod6.c: New files.
14141         * elf/Makefile (tests): Add tst-tls9.
14142         (tests-static): Add tst-tls9-static.
14143         (tst-tls9-static-ENV): New variable.
14144         ($(objpfx)tst-tls9-static, $(objpfx)tst-tls9-static.out): New targets.
14146         * elf/dl-close.c (remove_slotinfo): Remove an assert; the number of
14147         modids used by partially loaded modules being closed can't be known.
14149 2002-10-21  Isamu Hasegawa  <isamu@yamato.ibm.com>
14151         * posix/Makefile: Add a test case for the bug reported by Aharon
14152         Robbins <arnold@skeeve.com>.
14153         * posix/bug-regex13.c: New file.
14154         * posix/regcomp.c (peek_token_bracket): Skip the byte already read.
14156 2002-10-21  Ulrich Drepper  <drepper@redhat.com>
14158         * csu/gmon-start.c: Pretty printing.
14160 2002-10-19  Art Haas  <ahaas@neosoft.com>
14162         * configure.in: Replace AC_CONFIG_HEADER with AC_CONFIG_HEADERS,
14163         add AC_HELP_STRING to all AC_ARG_WITH and AC_ARG_ENABLE macros,
14164         add autoconf quotes to the AC_CONFIG_AUX_DIR macro.
14165         * configure: Regenerated.
14167 2002-10-19  Roland McGrath  <roland@redhat.com>
14169         * configure.in: Call AC_CONFIG_SUBDIRS with empty argument
14170         and then set $subdirs directly, because the new Autoconf breaks
14171         compatibility in every way imaginable and insists on whining
14172         about usage that worked since the dawn of time.
14173         * configure: Regenerated.
14175         * configure: Regenerated (using Autoconf 2.54).
14176         * sysdeps/alpha/elf/configure: Likewise.
14177         * sysdeps/generic/configure: Likewise.
14178         * sysdeps/i386/elf/configure: Likewise.
14179         * sysdeps/ia64/elf/configure: Likewise.
14180         * sysdeps/mach/hurd/configure: Likewise.
14181         * sysdeps/mach/configure: Likewise.
14182         * sysdeps/unix/configure: Likewise.
14183         * sysdeps/unix/common/configure: Likewise.
14184         * sysdeps/unix/sysv/aix/configure: Likewise.
14185         * sysdeps/unix/sysv/linux/configure: Likewise.
14186         * sysdeps/unix/sysv/linux/mips/configure: Likewise.
14187         * sysdeps/x86_64/elf/configure: Likewise.
14189         * config.make.in: Nix completely-soft nonsense.
14190         * configure.in: Likewise.  Under --without-fp, use nofpu subdirectory
14191         of machine directories instead of fpu subdirectory.
14192         * sysdeps/powerpc/soft-fp/Makefile: Remove cruft added in last change.
14193         * sysdeps/powerpc/nofpu/Makefile: Put it in this new file instead.
14194         * sysdeps/powerpc/soft-fp/sim-full.c: Moved to ...
14195         * sysdeps/powerpc/nofpu/sim-full.c: ... here.
14196         * sysdeps/powerpc/soft-fp/fraiseexcpt.c: Moved to ...
14197         * sysdeps/powerpc/nofpu/fraiseexcpt.c: ... here.
14198         * sysdeps/powerpc/soft-fp/fegetexcept.c: Moved to ...
14199         * sysdeps/powerpc/nofpu/fegetexcept.c: ... here.
14200         * sysdeps/powerpc/soft-fp/fclrexcpt.c: Moved to ...
14201         * sysdeps/powerpc/nofpu/fclrexcpt.c: ... here.
14202         * sysdeps/powerpc/soft-fp/ftestexcept.c: Moved to ...
14203         * sysdeps/powerpc/nofpu/ftestexcept.c: ... here.
14204         * sysdeps/powerpc/soft-fp/fgetexcptflg.c: Moved to ...
14205         * sysdeps/powerpc/nofpu/fgetexcptflg.c: ... here.
14206         * sysdeps/powerpc/soft-fp/fsetexcptflg.c: Moved to ...
14207         * sysdeps/powerpc/nofpu/fsetexcptflg.c: ... here.
14208         * sysdeps/powerpc/soft-fp/fedisblxcpt.c: Moved to ...
14209         * sysdeps/powerpc/nofpu/fedisblxcpt.c: ... here.
14210         * sysdeps/powerpc/soft-fp/feenablxcpt.c: Moved to ...
14211         * sysdeps/powerpc/nofpu/feenablxcpt.c: ... here.
14212         * sysdeps/powerpc/soft-fp/fegetenv.c: Moved to ...
14213         * sysdeps/powerpc/nofpu/fegetenv.c: ... here.
14214         * sysdeps/powerpc/soft-fp/fesetenv.c: Moved to ...
14215         * sysdeps/powerpc/nofpu/fesetenv.c: ... here.
14216         * sysdeps/powerpc/soft-fp/fegetround.c: Moved to ...
14217         * sysdeps/powerpc/nofpu/fegetround.c: ... here.
14218         * sysdeps/powerpc/soft-fp/fesetround.c: Moved to ...
14219         * sysdeps/powerpc/nofpu/fesetround.c: ... here.
14220         * sysdeps/powerpc/soft-fp/feupdateenv.c: Moved to ...
14221         * sysdeps/powerpc/nofpu/feupdateenv.c: ... here.
14222         * sysdeps/powerpc/soft-fp/feholdexcpt.c: Moved to ...
14223         * sysdeps/powerpc/nofpu/feholdexcpt.c: ... here.
14224         * sysdeps/powerpc/soft-fp/fenv_const.c: Moved to ...
14225         * sysdeps/powerpc/nofpu/fenv_const.c: ... here.
14226         * sysdeps/powerpc/soft-fp/libm-test-ulps: Moved to ...
14227         * sysdeps/powerpc/nofpu/libm-test-ulps: ... here.
14228         * sysdeps/powerpc/soft-fp/soft-supp.h: Moved to ...
14229         * sysdeps/powerpc/nofpu/soft-supp.h: ... here.
14230         * sysdeps/powerpc/soft-fp/Versions (libc: GLIBC_2.3.2): Moved to ...
14231         * sysdeps/powerpc/nofpu/Versions: ... here, new file.
14233 2002-10-19  Bruno Haible  <bruno@clisp.org>
14235         * sysdeps/unix/bsd/bsd4.4/freebsd/sys/sysmacros.h: New file.
14237 2002-10-18  Roland McGrath  <roland@redhat.com>
14239         * io/Makefile (routines): Add lchmod.
14240         * io/sys/stat.h [__USE_BSD] (lchmod): Declare it.
14241         * sysdeps/generic/lchmod.c: New file.
14242         * sysdeps/mach/hurd/lchmod.c: New file.
14243         * io/Versions (libc: GLIBC_2.3.2): New set, add lchmod.
14245 2002-10-18  Art Haas  <ahaas@neosoft.com>
14247         * configure.in: Remove remaining AC_FD_CC macros, and replace
14248         AC_FD_MSG with AS_MESSAGE_FD.
14250 2002-10-18  Roland McGrath  <roland@redhat.com>
14252         * sysdeps/powerpc/powerpc32/dl-machine.c (__process_machine_rela): Fix
14253         typos: VALUE -> FINALADDR.
14255         * sysdeps/unix/alpha/sysdep.h (INLINE_SYSCALL, INLINE_SYSCALL1)
14256         (inline_syscall_clobbers, inline_syscall0, inline_syscall1)
14257         (inline_syscall2, inline_syscall3, inline_syscall4, inline_syscall5)
14258         (inline_syscall6): Move these macros ...
14259         * sysdeps/unix/sysv/linux/alpha/sysdep.h: ... to here.
14261         * configure.in (libc_link_dests, libc_link_sources): Remove these
14262         variables and the AC_LINK_FILES call.
14264         * sysdeps/powerpc/soft-fp/Versions (libc: GLIBC_2.3.2): Fix last
14265         change to put new symbols here instead of in GLIBC_2.2.
14266         * sysdeps/powerpc/Subdirs: Move this file ...
14267         * sysdeps/powerpc/soft-fp/Subdirs: ... here.
14269 2002-10-07  Roland McGrath  <roland@redhat.com>
14271         * sysdeps/generic/bits/time.h: Replaced with contents of the
14272         sysdeps/unix/sysv/linux/i386/bits/time.h file.  All the following
14273         files were identical except for the absence of CLOCK_THREAD_CPUTIME_ID
14274         and CLOCK_PROCESS_CPUTIME_ID in .../linux/bits/time.h; adding these
14275         macros is ok even for architectures that don't now implement them.
14276         * sysdeps/mach/hurd/bits/time.h: File removed.
14277         * sysdeps/unix/sysv/linux/bits/time.h: File removed.
14278         * sysdeps/unix/sysv/linux/i386/bits/time.h: File removed.
14279         * sysdeps/unix/sysv/linux/ia64/bits/time.h: File removed.
14280         * sysdeps/unix/sysv/linux/sparc/bits/time.h: File removed.
14281         * sysdeps/unix/sysv/linux/x86_64/bits/time.h: File removed.
14283 2002-10-18  Jeff Bailey  <jbailey@gnu.org>
14285         * configure.in: Replace obsolete AC_OUTPUT syntax with
14286         AC_CONFIG_FILES, AC_CONFIG_COMMANDS, and new-type AC_OUTPUT trio.
14288         * aclocal.m4 (GLIBC_PROVIDES): Add AC_PROVIDEs for
14289         _AS_PATH_SEPARATOR_PREPARE and _AS_TEST_PREPARE.
14291         * configure.in: Replace AC_FD_CC with AS_MESSAGE_LOG_FD.
14292         * sysdeps/alpha/elf/configure.in: Likewise.
14293         * sysdeps/i386/elf/configure.in: Likewise.
14294         * sysdeps/mach/hurd/configure.in: Likewise.
14295         * sysdeps/x86_64/elf/configure.in: Likewise.
14297         * configure.in: Use AC_CONFIG_SRCDIR and new AC_INIT syntax.
14299         * sysdeps/alpha/elf/configure.in: Remove unneeded sinclude statement.
14300         * sysdeps/generic/configure.in: Likewise.
14301         * sysdeps/i386/elf/configure.in: Likewise.
14302         * sysdeps/ia64/elf/configure.in: Likewise.
14303         * sysdeps/mach/configure.in: Likewise.
14304         * sysdeps/mach/hurd/configure.in: Likewise.
14305         * sysdeps/unix/configure.in: Likewise.
14306         * sysdeps/unix/common/configure.in: Likewise.
14307         * sysdeps/unix/sysv/aix/configure.in: Likewise.
14308         * sysdeps/unix/sysv/linux/configure.in: Likewise.
14309         * sysdeps/unix/sysv/linux/mips/configure.in: Likewise.
14310         * sysdeps/x86_64/elf/configure.in: Likewise.
14312         * aclocal.m4: Use just the bits from AS_INIT that are needed for the
14313         GLIBC_PROVIDES.  Use plain comment instead of HEADER-COMMENT so
14314         that it's obvious when extra autoconf machinery is being dragged in.
14316 2002-10-18  Roland McGrath  <roland@redhat.com>
14318         * configure.in: Remove bogus echo included in
14319         2002-10-08  Aldy Hernandez  <aldyh@redhat.com> change.
14320         * configure: Regenerated.
14322 2002-10-18  Jakub Jelinek  <jakub@redhat.com>
14324         * sysdeps/unix/sysv/linux/pathconf.h (statfs_link_max): Add inline.
14325         (statfs_filesize_max): New function.
14326         * sysdeps/unix/sysv/linux/linux_fsinfo.h (JFFS_SUPER_MAGIC,
14327         JFFS2_SUPER_MAGIC, JFS_SUPER_MAGIC, NTFS_SUPER_MAGIC,
14328         ROMFS_SUPER_MAGIC, UDF_SUPER_MAGIC): Define.
14329         * sysdeps/unix/sysv/linux/fpathconf.c (__fpathconf): Use
14330         statfs_filesize_max.
14331         * sysdeps/unix/sysv/linux/pathconf.c (__pathconf): Likewise.
14332         * sysdeps/unix/sysv/linux/alpha/fpathconf.c: Removed.
14333         * sysdeps/unix/sysv/linux/alpha/pathconf.c: Removed.
14335 2002-10-17  Roland McGrath  <roland@redhat.com>
14337         * configure.in (MIG): Just AC_SUBST it here.
14338         * configure: Regenerated.
14339         * sysdeps/mach/configure.in (MIG): Do the AC_CHECK_TOOL here.
14340         Adding final - argument to all AC_CHECK_HEADER uses for .defs files.
14341         * sysdeps/mach/configure: Regenerated.
14343         * aclocal.m4 (GLIBC_PROVIDES): Add AC_PROVIDE([_AS_TR_SH_PREPARE])
14344         and AC_PROVIDE([_AS_CR_PREPARE]).
14346         * aclocal.m4 (GLIBC_PROVIDES): Add AC_PROVIDE([_AS_ECHO_N_PREPARE]).
14347         Remove AC_LANG(C) call, instead just define([_AC_LANG], [C]).
14349         * elf/dl-support.c: Move _dl_tls_* variables to ...
14350         * sysdeps/generic/libc-tls.c: ... here.
14352         * elf/dl-close.c (remove_slotinfo): Take new argument.  If false,
14353         allow IDX to be one past the current last slotinfo entry.
14354         (_dl_close): Pass IMAP->l_init_called for that parameter.
14356 2002-10-07  Andreas Schwab  <schwab@suse.de>
14358         * aclocal.m4: Fix for autoconf 2.53.
14359         * configure.in: Likewise.  Require autoconf 2.53.
14361 2002-10-08  Richard Henderson  <rth@redhat.com>
14363         * soft-fp/op-4.h: Handle carry correctly in
14364         __FP_FRAC_ADD_3, __FP_FRAC_ADD_4, __FP_FRAC_SUB_3,
14365         __FP_FRAC_SUB_4, __FP_FRAC_DEC_3, __FP_FRAC_DEC_4.
14366         * soft-fp/op-common.h: New macros _FP_DIV_MEAT_N_loop.
14368 2002-10-08  Aldy Hernandez  <aldyh@redhat.com>
14370         * configure.in: Compute completely-soft.
14371         * config.make.in: Make completely-soft available to sub-makes.
14372         * sysdeps/powerpc/soft-fp/Makefile: Add gcc-single-routines and
14373         gcc-double-routines.  Add sim-full.c.  Add fenv_const and
14374         fe_nomask to libm-support.
14375         * sysdeps/powerpc/soft-fp/sim-full.c: New file.
14376         * sysdeps/powerpc/soft-fp/fraiseexcpt.c: New file.
14377         * sysdeps/powerpc/soft-fp/fegetexcept.c: New file.
14378         * sysdeps/powerpc/soft-fp/fclrexcpt.c: New file.
14379         * sysdeps/powerpc/soft-fp/ftestexcept.c: New file.
14380         * sysdeps/powerpc/soft-fp/fgetexcptflg.c: New file.
14381         * sysdeps/powerpc/soft-fp/fsetexcptflg.c: New file.
14382         * sysdeps/powerpc/soft-fp/fedisblxcpt.c: New file.
14383         * sysdeps/powerpc/soft-fp/feenablxcpt.c: New file.
14384         * sysdeps/powerpc/soft-fp/fegetenv.c: New file.
14385         * sysdeps/powerpc/soft-fp/fesetenv.c: New file.
14386         * sysdeps/powerpc/soft-fp/fegetround.c: New file.
14387         * sysdeps/powerpc/soft-fp/fesetround.c: New file.
14388         * sysdeps/powerpc/soft-fp/feupdateenv.c: New file.
14389         * sysdeps/powerpc/soft-fp/feholdexcpt.c: New file.
14390         * sysdeps/powerpc/soft-fp/fenv_const.c: New file.
14391         * sysdeps/powerpc/soft-fp/libm-test-ulps: New file.
14392         * sysdeps/powerpc/soft-fp/soft-supp.h: New file.
14393         * sysdeps/powerpc/soft-fp/Versions: Add libgcc soft-float
14394         symbols.  Add __sim_disabled_exceptions, __sim_exceptions,
14395         __sim_round_mode.
14396         * sysdeps/powerpc/soft-float/Dist: Add sim-full.c, fenv_const.c.
14397         * sysdeps/powerpc/soft-float/sfp-machine.h: Define
14398         FP_HANDLE_EXCEPTIONS.
14399         Define FP_ROUNDMODE.
14400         Redefine FP_* macros to correspond to the FE_* bit positions.
14401         Define FP_DIV_MEAT_S to _FP_DIV_MEAT_1_loop.
14402         Define externs for __sim_exceptions, __sim_disabled_exceptions,
14403         __sim_round_mode, __simulate_exceptions.
14404         * sysdeps/powerpc/fpu/bits/fenv.h: Move file from here...
14405         * sysdeps/powerpc/bits/fenv.h: ...to here.
14407 2002-10-06  Jakub Jelinek  <jakub@redhat.com>
14409         * sysdeps/powerpc/powerpc32/dl-machine.c (__process_machine_rela):
14410         Store R_PPC_UADDR32 and R_PPC_UADDR16 one byte at a time.
14411         Use __builtin_expect for R_PPC_ADDR24 overflow check.  Fix
14412         R_PPC_ADDR16, R_PPC_UADDR16 and R_PPC_ADDR14* overflow check, use
14413         __builtin_expect.
14415 2002-10-15  Jakub Jelinek  <jakub@redhat.com>
14417         * include/resolv.h (__libc_res_nquery, __libc_res_nsearch,
14418         __libc_res_nsend): New prototypes.
14419         * resolv/res_query.c (QUERYSIZE): Define.
14420         (__libc_res_nquery): Renamed from res_nquery.  Added answerp
14421         argument.  Allocate only QUERYSIZE bytes first, if res_nmkquery
14422         fails use MAXPACKET buffer.  Call __libc_res_nsend instead of
14423         res_nsend, pass answerp.
14424         (res_nquery): Changed into wrapper around __libc_res_nquery.
14425         (__libc_res_nsearch): Renamed from res_nsearch.  Added answerp
14426         argument.  Call __libc_res_nquerydomain and __libc_res_nquery
14427         instead of the non-__libc_ variants, pass them answerp.
14428         (res_nsearch): Changed into wrapper around __libc_res_nsearch.
14429         (__libc_res_nquerydomain): Renamed from res_nquerydomain.
14430         Added answerp argument.  Call __libc_res_nquery instead of
14431         res_nquery, pass answerp.
14432         (res_nquerydomain): Changed into wrapper around
14433         __libc_res_nquerydomain.
14434         * resolv/res_send.c: Include sys/ioctl.h.
14435         (MAXPACKET): Define.
14436         (send_vc): Change arguments.  Reallocate answer buffer if it is
14437         too small.
14438         (send_dg): Likewise.
14439         (__libc_res_nsend): Renamed from res_nsend.  Added ansp argument.
14440         Reallocate answer buffer if it is too small and hooks are in use.
14441         Adjust calls to send_vc and send_dg.
14442         (res_nsend): Changed into wrapper around __libc_res_nsend.
14443         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyname2_r): Allocate
14444         just 1K answer buffer on the stack, use __libc_res_nsearch instead
14445         of res_nsearch.
14446         (_nss_dns_gethostbyaddr_r): Similarly with __libc_res_nquery.
14447         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyaddr_r): Likewise.
14448         (_nss_dns_getnetbyname_r): Similarly with __libc_res_nsearch.
14449         * resolv/gethnamaddr.c (gethostbyname2): Likewise.
14450         (gethostbyaddr): Similarly with __libc_res_nquery.
14451         * resolv/Versions (libresolv): Export __libc_res_nquery and
14452         __libc_res_nsearch at GLIBC_PRIVATE.
14454 2002-10-17  Roland McGrath  <roland@redhat.com>
14456         * configure.in: Grok --without-__thread and disable HAVE___THREAD.
14457         * configure: Regenerated.
14459         * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Do CHECK_STATIC_TLS
14460         before performing the reloc, not after.
14461         * sysdeps/i386/dl-machine.h (elf_machine_rel): Likewise.
14463 2002-10-17  Ulrich Drepper  <drepper@redhat.com>
14465         * locale/programs/locale.c (write_locales): Use 'm' flag in fopen call.
14466         * locale/programs/linereader.c (lr_open): Likewise.
14467         * locale/programs/charmap-dir.c (charmap_open): Likewise.
14468         * locale/programs/locarchive.c (add_locale_to_archive): Likewise.
14470 2002-10-17  Isamu Hasegawa  <isamu@yamato.ibm.com>
14472         * posix/bug-regex11.c: Add a test case for the bug reported by
14473         Paolo Bonzini <bonzini@gnu.org>.
14474         * posix/regexec.c (sift_states_bkref): Use correct destination of
14475         the back reference.
14477 2002-10-17  Roland McGrath  <roland@redhat.com>
14479         * elf/dl-load.c (_dl_map_object_from_fd): Don't check DF_STATIC_TLS.
14480         * elf/dl-reloc.c (_dl_relocate_object: CHECK_STATIC_TLS): New macro
14481         to signal error if an IE-model TLS reloc resolved to a dlopen'd module.
14482         * sysdeps/i386/dl-machine.h (elf_machine_rel, elf_machine_rela):
14483         Call it after performing TPOFF relocs.
14484         * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Likewise.
14485         * sysdeps/sh/dl-machine.h (elf_machine_rela): Likewise.
14486         * elf/dl-conflict.c (CHECK_STATIC_TLS): New macro (no-op).
14488         * elf/dl-close.c (remove_slotinfo): Change asserts so as not to crash
14489         when closing a partially-initialized object.
14491         * elf/dl-load.c (_dl_map_object_from_fd) [! USE_TLS]: Call lose
14492         instead of _dl_fatal_printf when we see PT_TLS.
14494         * Makeconfig (CPPFLAGS): Fix last change to use $(libof-$(<F))
14495         instead of $(libof-$<).
14497 2002-10-16  Roland McGrath  <roland@redhat.com>
14499         * cppflags-iterator.mk (CPPFLAGS-$(cpp-src)): Variable removed.
14500         instead of += to append, to be sure $(lib) gets expanded at defn time.
14501         (libof-$(cpp-src)): New variable, define this instead.
14502         * extra-lib.mk (cpp-srcs-left): Reduce duplication in include setup.
14503         (lib): Don't use override.
14504         (CPPFLAGS-$(lib)): New variable, put -D's here.
14505         * Makeconfig (CPPFLAGS): Use basename fn for CPPFLAGS-basename.
14506         Also add $(CPPFLAGS-LIB) before the file-specific flags, for each
14507         LIB found by $(libof-*) for basename, target, or source.
14508         * Makerules (CPPFLAGS-nonlib): New variable.
14509         * nscd/Makefile (lib): Set to nonlib when using cppflags-iterator.mk.
14510         * locale/Makefile (lib): Likewise.
14511         * sunrpc/Makefile (lib): Likewise.
14513         * sysdeps/unix/sysv/linux/fpathconf.c (LINUX_LINK_MAX): Move macro ...
14514         * sysdeps/unix/sysv/linux/linux_fsinfo.h (LINUX_LINK_MAX): ... here.
14515         * sysdeps/unix/sysv/linux/pathconf.h: New file.
14516         (statfs_link_max): New function, guts from fpathconf.c.
14517         * sysdeps/unix/sysv/linux/fpathconf.c: Rewritten using that.
14518         * sysdeps/unix/sysv/linux/pathconf.c (__pathconf): Likewise.
14519         * sysdeps/unix/sysv/linux/alpha/pathconf.c (__pathconf): Rewritten
14520         to use the linux/pathconf.c code by #include rather than duplication.
14521         * sysdeps/unix/sysv/linux/alpha/fpathconf.c (__pathconf): Likewise.
14523 2002-10-16  Jakub Jelinek  <jakub@redhat.com>
14525         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
14526         Use __libc_errno only for libc itself.
14528 2002-10-16  Andreas Jaeger  <aj@suse.de>
14530         * sysdeps/x86_64/_mcount.S: Fix off-by-1 error in argument access.
14532 2002-10-16  Ulrich Drepper  <drepper@redhat.com>
14534         * sysdeps/unix/sysv/linux/i386/sysdep.h (SYSCALL_ERROR_HANDLER):
14535         Use __libc_errno only for libc itself.
14537 2002-10-15  Roland McGrath  <roland@redhat.com>
14538             Jakub Jelinek  <jakub@redhat.com>
14540         * sysdeps/unix/sysv/linux/Makefile
14541         ($(objpfx)syscall-%.h $(objpfx)syscall-%.d): Take code from
14542         sparc/Makefile to produce a bi-arch file as needed.
14543         That's now parameterized by the variable $(64bit-predefine).
14544         Use LC_ALL=C for `comm' commands in that rule.
14545         No longer conditional on [$(no_syscall_list_h)].
14546         * sysdeps/unix/sysv/linux/sparc/Makefile: Remove replacement rules.
14547         (64bit-predefine): New variable.
14548         * sysdeps/unix/sysv/linux/x86_64/Makefile: Likewise.
14549         * sysdeps/unix/sysv/linux/s390/Makefile: New file.
14550         * sysdeps/unix/sysv/linux/powerpc/Makefile
14551         (64bit-predefine): New variable.
14553 2002-10-15  Roland McGrath  <roland@redhat.com>
14555         * sysdeps/unix/sysv/linux/Makefile
14556         ($(objpfx)syscall-%.h $(objpfx)syscall-%.d)
14558         * login/utmp-private.h: Declare __libc_utmp_lock.
14559         * sysdeps/unix/getlogin_r.c (getlogin_r): Take __libc_utmp_lock once
14560         and call __libc_utmp_jump_table functions directly, instead of using
14561         __setutent et al.
14563         * sysdeps/unix/sysv/linux/configure.in: Use case instead of if.
14564         * sysdeps/unix/sysv/linux/configure: Regenerated.
14566         * sysdeps/gnu/bits/utmp.h: Include <bits/wordsize.h>.
14567         (struct lastlog) [__WORDSIZE == 64 && __WORDSIZE_COMPAT32]:
14568         Use int32_t for ll_time.
14569         (struct utmp) [__WORDSIZE == 64 && __WORDSIZE_COMPAT32]:
14570         Use int32_t instead of long int for ut_session.
14571         Use an anonymous struct with 32-bit fields for ut_tv.
14572         * sysdeps/gnu/bits/utmpx.h: Include <bits/wordsize.h>.
14573         (struct utmpx) [__WORDSIZE == 64 && __WORDSIZE_COMPAT32]: Do the same
14574         here as in utmp.h for `struct utmp'.
14575         * sysdeps/unix/sysv/linux/powerpc/bits/utmp.h: File removed.
14576         * sysdeps/unix/sysv/linux/powerpc/bits/utmpx.h: File removed.
14577         * sysdeps/unix/sysv/linux/sparc/bits/utmp.h: File removed.
14578         * sysdeps/unix/sysv/linux/sparc/bits/utmpx.h: File removed.
14579         * sysdeps/unix/sysv/linux/x86_64/bits/utmp.h: File removed.
14580         * sysdeps/unix/sysv/linux/x86_64/bits/utmpx.h: File removed.
14582         * sysdeps/unix/sysv/linux/bits/resource.h: Replaced with the contents
14583         of the sysdeps/unix/sysv/linux/i386/bits/resource.h file.
14584         All the following files were identical or equivalent to it.
14585         * sysdeps/unix/sysv/linux/i386/bits/resource.h: File removed.
14586         * sysdeps/unix/sysv/linux/arm/bits/resource.h: File removed.
14587         * sysdeps/unix/sysv/linux/cris/bits/resource.h: File removed.
14588         * sysdeps/unix/sysv/linux/hppa/bits/resource.h: File removed.
14589         * sysdeps/unix/sysv/linux/ia64/bits/resource.h: File removed.
14590         * sysdeps/unix/sysv/linux/m68k/bits/resource.h: File removed.
14591         * sysdeps/unix/sysv/linux/powerpc/bits/resource.h: File removed.
14592         * sysdeps/unix/sysv/linux/s390/bits/resource.h: File removed.
14593         * sysdeps/unix/sysv/linux/sh/bits/resource.h: File removed.
14594         * sysdeps/unix/sysv/linux/x86_64/bits/resource.h: File removed.
14596         * sysdeps/unix/sysv/linux/bits/socket.h (struct msghdr): Use size_t
14597         instead of int for msg_iovlen, instead of socklen_t for msg_controllen.
14598         Other than the previously incorrect sign of msg_iovlen, this is a
14599         no-op on 32-bit platforms.  On 64-bit platforms it makes this header
14600         match their layouts as well, so the following are now identical to it.
14601         * sysdeps/unix/sysv/linux/s390/bits/socket.h: File removed.
14602         * sysdeps/unix/sysv/linux/sparc/bits/socket.h: File removed.
14603         * sysdeps/unix/sysv/linux/x86_64/bits/socket.h: File removed.
14604         * sysdeps/unix/sysv/linux/ia64/bits/socket.h: File removed.
14605         * sysdeps/unix/sysv/linux/alpha/bits/socket.h: File removed.
14607 2002-10-15  Ulrich Drepper  <drepper@redhat.com>
14609         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_VFORK_SYSCALL):
14610         Define for 2.4+ kernels.
14612         * sysdeps/unix/sysv/linux/i386/vfork.S: Optimize for kernels which
14613         are known to have the vfork syscall.  Don't confuse the CPUs
14614         branch prediction unit by jumping to the return address.
14616         * sysdeps/unix/sysv/linux/alpha/fpathconf.c (__fpathconf): Add
14617         support for reiserfs and xfs.
14619         * sysdeps/unix/sysv/linux/fpathconf.c (__fpathconf): Add case for
14620         XFS link count.
14621         * sysdeps/unix/sysv/linux/linux_fsinfo.h: Define XFS_SUPER_MAGIC
14622         and XFS_LINK_MAX.
14623         Patch by Eric Sandeen <sandeen@sgi.com> [PR libc/4706].
14625 2002-10-16  Jakub Jelinek  <jakub@redhat.com>
14627         * include/libc-symbols.h (attribute_tls_model_ie): Define.
14628         * include/errno.h (errno): Define to __libc_errno in libc.so.
14629         Add attribute_tls_model_ie.
14630         * include/netdb.h (h_errno): Define to __libc_h_errno in libc.so.
14631         Add attribute_tls_model_ie.
14632         * include/resolv.h (_res): Define to __libc_res in libc.so.  Add
14633         attribute_tls_model_ie.
14634         * inet/herrno.c (__libc_h_errno): Add hidden alias to h_errno.
14635         (h_errno): Define.
14636         * resolv/res_libc.c (__libc_res): Add hidden alias to _res.
14637         (_res): Define.
14638         * sysdeps/generic/bits/libc-tsd.h (__libc_tsd_define): Add
14639         attribute_tls_model_ie.
14640         * sysdeps/generic/errno-loc.c (errno): Only undefine if not using
14641         __thread.
14642         * sysdeps/generic/errno.c (__libc_errno): Add hidden alias to errno.
14643         * sysdeps/unix/sysv/linux/i386/sysdep.h (SYSCALL_ERROR_HANDLER): Use
14644         __libc_errno in USE___THREAD case.
14645         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
14646         Likewise.
14647         * configure.in (HAVE_TLS_MODEL_ATTRIBUTE): Check for
14648         __attribute__((tls_model (""))).
14649         * configure: Rebuilt.
14650         * config.h.in (HAVE_TLS_MODEL_ATTRIBUTE): Add.
14652 2002-10-15  Ulrich Drepper  <drepper@redhat.com>
14654         * timezone/asia: Update from tzdata2002d.
14655         * timezone/australasia: Likewise.
14656         * timezone/iso3166.tab: Likewise.
14657         * timezone/southamerica: Likewise.
14658         * timezone/zone-tab: Likewise.
14660 2002-10-15  Roland McGrath  <roland@redhat.com>
14662         * sysdeps/generic/dl-tls.c (_dl_deallocate_tls) [TLS_TCB_AT_TP]:
14663         Adjust TCB pointer before calling free, so we get the whole block.
14665 2002-10-14  Roland McGrath  <roland@redhat.com>
14667         * sysdeps/unix/sysv/linux/x86_64/sigaction.c
14668         [HAVE_HIDDEN && !HAVE_BROKEN_VISIBILITY_ATTRIBUTE]: Declare restore_rt
14669         extern using attribute_hidden instead of static, avoids warning.
14671 2002-10-09  Jakub Jelinek  <jakub@redhat.com>
14673         * sysdeps/unix/sysv/linux/configure.in: Use */lib64 for s390x too.
14674         * sysdeps/unix/sysv/linux/configure: Rebuilt.
14676 2002-10-14  Ulrich Drepper  <drepper@redhat.com>
14678         * po/sv.po: Update from translation team.
14680 2002-10-12  H.J. Lu  <hjl@gnu.org>
14682         * sunrpc/thrsvc.c (PROCQUIT): New.
14683         (struct rpc_arg): New.
14684         (dispatch): Call exit (0) if request->rq_proc == PROCQUIT.
14685         (test_one_call): Take struct rpc_arg * instead of CLIENT *c.
14686         (thread_wrapper): Modified for struct rpc_arg * and call PROCQUIT.
14687         (main): Modified for struct rpc_arg *.
14689 2002-10-14  Ulrich Drepper  <drepper@redhat.com>
14691         * dirent/scandir.c: Rearrange code a bit to reduce binary size.
14693 2002-10-14  Jakub Jelinek  <jakub@redhat.com>
14695         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Include tls.h.
14696         (SYSCALL_ERROR_HANDLER): Use RTLD_PRIVATE_ERRNO sequence
14697         in ld.so even if __thread is supported.
14699 2002-10-13  Jakub Jelinek  <jakub@redhat.com>
14701         * sysdeps/unix/sysv/linux/arm/profil-counter.h (profil_counter):
14702         Add hack to prevent the compiler from clobbering the signal context.
14703         * sysdeps/unix/sysv/linux/sh/profil-counter.h (profil_counter):
14704         Likewise.
14705         * sysdeps/unix/sysv/linux/x86_64/profil-counter.h (profil_counter):
14706         Likewise.
14708 2002-10-14  Andreas Jaeger  <aj@suse.de>
14710         * sysdeps/mips/fpu/libm-test-ulps: Regenerated by
14711         Guido Guenther <agx@sigxcpu.org>.
14713 2002-10-14  Ulrich Drepper  <drepper@redhat.com>
14715         * po/sk.po: Update from translation team.
14717 2002-09-26  Roland McGrath  <roland@redhat.com>
14719         * elf/dl-load.c (_dl_dst_count, _dl_dst_substitute): Handle $LIB
14720         dynamic string tag.
14721         * elf/Makefile ($(objpfx)trusted-dirs.st): Make the output define
14722         DL_DST_LIB based on $(slibdir).
14724 2002-10-13  Roland McGrath  <roland@frob.com>
14726         * elf/rtld-Rules ($(objpfx)rtld-libc.a): Use $(verbose) in ar command.
14728         * sysdeps/mach/hurd/getresuid.c: New file.
14729         * sysdeps/mach/hurd/getresgid.c: New file.
14730         * sysdeps/mach/hurd/setresuid.c: New file.
14731         * sysdeps/mach/hurd/setresgid.c: New file.
14733         * posix/unistd.h [__USE_GNU] (getresuid, getresgid, setresuid,
14734         setresgid): Declare them.
14735         * NEWS: Mention it.
14736         * include/unistd.h
14737         (__getresuid, __getresgid, __setresuid, __setresgid): Declare them,
14738         add libc_hidden_proto.
14739         * posix/Versions (libc: GLIBC_2.3.2): New set.  Add
14740         getresuid, getresgid, setresuid, setresgid here.
14741         * Versions.def (libc): Define GLIBC_2.3.2 set.
14742         * sysdeps/generic/getresuid.c (__getresuid): Fix argument types.
14743         Add libc_hidden_def.
14744         * sysdeps/generic/getresgid.c (__getresgid): Likewise.
14745         * sysdeps/generic/setresgid.c: New file.
14746         * sysdeps/generic/setresuid.c: New file.
14747         * sysdeps/unix/sysv/linux/Makefile [$(subdir) = misc]
14748         (sysdep_routines): Don't add getresuid and getresgid here.
14749         * sysdeps/unix/sysv/linux/arm/Makefile [$(subdir) = misc]
14750         (sysdep_routines): Don't add setresuid and setresgid here.
14751         * sysdeps/unix/sysv/linux/cris/Makefile: Likewise.
14752         * sysdeps/unix/sysv/linux/sh/Makefile: Likewise.
14753         * sysdeps/unix/sysv/linux/s390/s390-32/Makefile: Likewise.
14754         * sysdeps/unix/sysv/linux/s390/s390-64/Makefile: Likewise.
14755         * sysdeps/unix/sysv/linux/i386/Makefile: Likewise.
14756         * sysdeps/unix/sysv/linux/m68k/Makefile: Likewise.
14757         * posix/Makefile (routines): Add them all here instead.
14758         * sysdeps/unix/sysv/linux/i386/getresuid.c (getresuid): Renamed to
14759         __getresuid.  Add libc_hidden_def for that, and weak alias to old name.
14760         * sysdeps/unix/sysv/linux/i386/getresgid.c (getresgid): Renamed to
14761         __getresgid.  Add libc_hidden_def for that, and weak alias to old name.
14762         * sysdeps/unix/sysv/linux/i386/setresuid.c: Add libc_hidden_def.
14763         [! __NR_setresuid]: Include generic file.
14764         * sysdeps/unix/sysv/linux/i386/setresgid.c (setresgid): Renamed to
14765         __setresgid.  Add libc_hidden_def for that, and weak alias to old name.
14766         [! __NR_setresuid]: Include generic file.
14767         * sysdeps/unix/sysv/linux/syscalls.list (setresuid, setresgid):
14768         Caller is - now, not EXTRA.
14769         * sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list
14770         (setresuid, setresgid, getresuid, getresgid): Likewise.
14771         * sysdeps/unix/sysv/linux/syscalls.list (getresuid, getresgid):
14772         Add these calls here.
14773         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Remove them here.
14774         * sysdeps/unix/sysv/linux/hppa/syscalls.list: Likewise.
14775         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
14776         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
14777         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
14778         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Likewise.
14779         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Likewise.
14780         * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise.
14781         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
14783         * sysdeps/unix/sysv/linux/Makefile [$(subdir) = misc]
14784         (sysdep_routines): Add setfsuid and setfsgid here.
14785         * sysdeps/unix/sysv/linux/arm/Makefile: Not here.
14786         * sysdeps/unix/sysv/linux/sparc/sparc32/Makefile: Likewise.
14787         * sysdeps/unix/sysv/linux/cris/Makefile: Likewise.
14788         * sysdeps/unix/sysv/linux/sh/Makefile: Likewise.
14789         * sysdeps/unix/sysv/linux/s390/s390-32/Makefile: Likewise.
14790         * sysdeps/unix/sysv/linux/s390/s390-64/Makefile: Likewise.
14791         * sysdeps/unix/sysv/linux/i386/Makefile: Likewise.
14792         * sysdeps/unix/sysv/linux/m68k/Makefile: Likewise.
14794         * hurd/errno.c: Renamed to ...
14795         * hurd/errno-loc.c: ... this.
14796         * hurd/Makefile (routines): errno -> errno-loc
14798 2002-10-13  Ulrich Drepper  <drepper@redhat.com>
14800         * po/de.po: Update from translation team.
14802         * MakeTAGS: Add -E flag to xgettext runs.
14804 2002-10-12  Ulrich Drepper  <drepper@redhat.com>
14806         * po/fr.po: Update from translation team.
14808         * sysdeps/posix/system.c: Remove support for old and buggy SCO systems.
14809         Optimize a bit for use in glibc.
14811 2002-10-12  Roland McGrath  <roland@redhat.com>
14813         * stdio-common/tst-rndseek.c (TIMEOUT): Increase to 10 seconds.
14814         Some machines are slow.  Guido Guenther <agx@sigxcpu.org> has one.
14816 2002-10-12  Ulrich Drepper  <drepper@redhat.com>
14818         * po/sv.po: Update from translation team.
14820 2002-10-11  Isamu Hasegawa  <isamu@yamato.ibm.com>
14822         * posix/regcomp.c (re_compile_fastmap_iter): Remove the handling
14823         OP_CONTEXT_NODE.
14824         (regfree): Likewise.
14825         (create_initial_state): Likewise.
14826         (analyze): Remove the substitutions which became useless.
14827         (calc_first): Likewise.
14828         (calc_epsdest): Use edests of OP_BACK_REF in case that it has
14829         epsilon destination.
14830         (duplicate_node_closure): New function.
14831         (duplicate_node): Remove the handling OP_CONTEXT_NODE.
14832         (calc_inveclosure): Likewise.
14833         (calc_eclosure): Likewise.
14834         (calc_eclosure_iter): Invoke duplicate_node_closure instead of
14835         direct invocation of duplicate_node.
14836         (parse): Don't use comma operator in the return to avoid compiler
14837         warning.
14838         (parse_reg_exp): Likewise.
14839         (parse_branch): Likewise.
14840         (parse_expression): Likewise.
14841         (parse_sub_exp): Likewise.
14842         (parse_dup_op): Likewise.
14843         * posix/regex_internal.c (re_dfa_add_node): Remove the substitutions
14844         which became useless.
14845         (create_ci_newstate): Remove the handling OP_CONTEXT_NODE.
14846         (create_cd_newstate): Likewise.
14847         * posix/regex_internal.h (re_token_type_t): Remove the obsolete type.
14848         (re_token_t): Likewise.
14849         (re_dfa_t): Likewise.
14850         (re_node_set_remove): New macro.
14851         * posix/regexec.c (check_matching): Remove the handling
14852         OP_CONTEXT_NODE.
14853         (check_halt_node_context): Likewise.
14854         (proceed_next_node): Likewise.
14855         (pop_fail_stack): Fix the memory leak.
14856         (set_regs): Likewise.
14857         (free_fail_stack_return): New function.
14858         (sift_states_backward): Fix the memory leak.  Remove the handling
14859         OP_CONTEXT_NODE.
14860         (update_cur_sifted_state): Append some if clause to avoid redundant
14861         call.
14862         (sub_epsilon_src_nodes): Use IS_EPSILON_NODE since it might be a
14863         back reference.
14864         (check_dst_limits): Remove the handling OP_CONTEXT_NODE.
14865         (check_subexp_limits): Likewise.
14866         (search_subexp): Likewise.
14867         (sift_states_bkref): Likewise.
14868         (transit_state_mb): Likewise.
14869         (transit_state_bkref_loop): Likewise.
14870         (transit_state_bkref_loop): Likewise.
14871         (group_nodes_into_DFAstates): Likewise.
14872         (check_node_accept): Likewise.
14873         (sift_ctx_init): Add initializing.
14875 2002-10-12  Ulrich Drepper  <drepper@redhat.com>
14877         * sysdeps/unix/sysv/linux/i386/sysdep.h (INLINE_SYSCALL): Use
14878         __builtin_expect.
14880 2002-10-11  Ulrich Drepper  <drepper@redhat.com>
14882         * elf/dl-load.c (_dl_map_object_from_fd): Remove unnecessarily
14883         duplicated variable c.
14885         * sysdeps/unix/sysv/linux/sigwait.c (__sigwait): Use INTERNAL_SYSCALL
14886         if possible.
14888         * sysdeps/unix/sysv/linux/i386/sysdep.h
14889         (INTERNAL_SYSCALL_ERROR_P): New define.
14890         (INTERNAL_SYSCALL_ERRNO): Likewise.
14892         * sysdeps/unix/sysv/linux/i386/profil-counter.h (profil_counter):
14893         Add hack to prevent the compiler from clobbering the signal context.
14895 2002-10-11  Roland McGrath  <roland@redhat.com>
14897         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
14898         Fix typos.
14900         * sysdeps/generic/dl-lookupcfg.h: Include <tls.h>.
14901         * sysdeps/sh/dl-lookupcfg.h: File removed.
14902         * sysdeps/i386/dl-lookupcfg.h: File removed.
14904         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER): Add
14905         missing labels and ; from last change.
14907         * stdio-common/tst-sscanf.c (val_double): Append .0 to large whole
14908         number literals, so they are doubles instead of ints.
14910 2002-10-09  Roland McGrath  <roland@redhat.com>
14912         * sysdeps/generic/bits/libc-tsd.h [USE___THREAD]: Conditional
14913         changed from [USE_TLS && HAVE___THREAD].
14915         * sysdeps/i386/dl-machine.h (elf_machine_type_class, elf_machine_rel):
14916         Disable TLS relocs if [RTLD_BOOTSTRAP && !USE___THREAD].
14917         * sysdeps/x86_64/dl-machine.h
14918         (elf_machine_type_class, elf_machine_rela): Likewise.
14919         * sysdeps/sh/dl-machine.h (elf_machine_type_class, elf_machine_rela):
14920         Likewise.
14922         * include/link.h (struct link_map): Remove member l_tls_tp_initialized.
14923         * elf/rtld.c (_dl_start_final, dl_main): Don't use it.
14924         (_dl_start): Conditionalize PT_TLS check on [USE___THREAD].
14926         * sysdeps/i386/dl-tls.h (__TLS_GET_ADDR): Use ___tls_get_addr_internal
14927         instead of ___tls_get_addr.
14928         (___tls_get_addr_internal): Add attribute_hidden to decl.
14930         * sysdeps/generic/ldsodefs.h (struct rtld_global): New variable
14931         _dl_error_catch_tsd.
14932         * elf/rtld.c (startup_error_tsd): New function.
14933         (dl_main): Point _dl_error_catch_tsd at that.
14934         * elf/dl-error.c: Don't use libc-tsd.h for DL_ERROR,
14935         use new function pointer instead.
14936         * elf/dl-tsd.c: New file.
14937         * elf/Makefile (routines): Add it.
14939 2002-10-07  Roland McGrath  <roland@redhat.com>
14941         * elf/dl-misc.c (_dl_debug_vdprintf): Use INTERNAL_SYSCALL macro for
14942         writev if it's available.  Otherwise if [RTLD_PRIVATE_ERRNO] then
14943         take _dl_load_lock around calling __writev.
14945         * sysdeps/unix/sysv/linux/i386/sysdep.h (INTERNAL_SYSCALL): New macro.
14946         (INLINE_SYSCALL): Use that.
14948         * sysdeps/generic/dl-sysdep.h: New file.
14949         * sysdeps/mach/hurd/dl-sysdep.h: New file.
14950         * sysdeps/generic/ldsodefs.h: Include <dl-sysdep.h>.
14951         * include/errno.h [IS_IN_rtld]: Include <dl-sysdep.h> to define ...
14952         [RTLD_PRIVATE_ERRNO]: Use a hidden global variable for errno and
14953         access it directly.
14954         * elf/dl-minimal.c (__errno_location): Removed.
14955         * sysdeps/unix/i386/sysdep.S (__syscall_errno) [RTLD_PRIVATE_ERRNO]:
14956         Use GOTOFF access for errno.
14957         * sysdeps/unix/sysv/linux/i386/sysdep.h
14958         [RTLD_PRIVATE_ERRNO] (SYSCALL_ERROR_HANDLER): Likewise.
14960         * sysdeps/unix/x86_64/sysdep.S (__syscall_errno) [RTLD_PRIVATE_ERRNO]:
14961         Use PC-relative access for errno.
14962         * sysdeps/unix/sysv/linux/x86_64/sysdep.h
14963         [RTLD_PRIVATE_ERRNO] (SYSCALL_ERROR_HANDLER): Likewise.
14965         * include/tls.h: New file.
14966         (USE___THREAD): New macro.
14967         Define to 1 under [USE_TLS && HAVE___THREAD] and only when compiling
14968         libc or libpthread.
14969         * sysdeps/unix/sysv/linux/i386/sysdep.h [USE___THREAD]: Conditional
14970         changed from [USE_TLS && HAVE___THREAD].
14971         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
14972         * sysdeps/unix/i386/sysdep.S: Likewise.
14973         * sysdeps/unix/x86_64/sysdep.S: Likewise.
14974         * include/errno.h: Likewise.
14975         * include/netdb.h: Likewise.
14976         * include/resolv.h: Likewise.
14978         * sysdeps/generic/errno.c: New file.
14979         * csu/Makefile (aux): New variable, list errno.
14980         * sysdeps/unix/sysv/linux/i386/sysdep.S (errno, _errno): Remove defns.
14981         * sysdeps/unix/sysv/linux/m68k/sysdep.S: Likewise.
14982         * sysdeps/unix/sysv/linux/x86_64/sysdep.S: Likewise.
14983         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S: Likewise.
14984         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S: Likewise.
14985         * sysdeps/unix/sysv/linux/arm/sysdep.S: Likewise.
14986         * sysdeps/unix/sysv/linux/cris/sysdep.S: Likewise.
14987         * sysdeps/unix/sysv/linux/hppa/sysdep.c: Likewise.
14988         * sysdeps/unix/sysv/linux/ia64/sysdep.S: Likewise.
14989         * sysdeps/unix/sysv/linux/powerpc/sysdep.c: Likewise.
14990         * sysdeps/unix/sysv/linux/sparc/sysdep.S: Likewise.
14991         * sysdeps/unix/sysv/linux/sh/sysdep.S: Likewise.
14992         * sysdeps/unix/alpha/sysdep.S: Likewise.
14993         * sysdeps/generic/start.c: Likewise.
14994         * sysdeps/unix/start.c: Likewise.
14995         * sysdeps/unix/arm/start.c: Likewise.
14996         * sysdeps/unix/bsd/ultrix4/mips/start.S: Likewise.
14997         * sysdeps/unix/sparc/start.c: Likewise.
14998         * sysdeps/unix/sysv/irix4/start.c: Likewise.
14999         * sysdeps/unix/sysv/linux/mips/sysdep.S: File removed.
15001         * manual/search.texi (Tree Search Function, Hash Search Function):
15002         Mention search.h clearly.
15004 2002-10-05  Roland McGrath  <roland@redhat.com>
15006         * elf/dl-fxstat64.c: File removed.
15007         * elf/dl-xstat64.c: File removed.
15008         * elf/Makefile (rtld-routines): Remove them.
15009         * sysdeps/unix/sysv/linux/xstat64.c: Remove RTLD_STAT64 conditionals.
15010         Instead, use strong_alias instead of versioned_symbol in the
15011         !SHLIB_COMPAT case.
15012         * sysdeps/unix/sysv/linux/fxstat64.c: Likewise.
15013         * sysdeps/unix/sysv/linux/lxstat64.c: Likewise.
15015         * include/shlib-compat.h
15016         (SHLIB_COMPAT): Require that IS_IN_##lib be defined nonzero.
15017         [! NOT_IN_libc] (IS_IN_libc): Define it.
15018         * cppflags-iterator.mk (CPPFLAGS-$(cpp-src)): Use -Dx=1 not just -Dx.
15019         * elf/Makefile (CPPFLAGS-.os): Likewise.
15021         * sunrpc/rpc_main.c (main): Don't declare with noreturn attribute.
15022         Return the status instead of calling exit.
15024         * Makeconfig (CFLAGS): Prepend -std=gnu99.
15025         * Makerules (+make-deps): Use $(CFLAGS) only for .c sources.
15026         Remove superfluous rm command, whose @ plus make bugs hid
15027         all these commands from the make output.
15029         * include/stubs-prologue.h: New file.  Give #error under #ifdef _LIBC.
15030         * Makefile ($(inst_includedir)/gnu/stubs.h): Depend on it.
15031         Use that file's contents instead of literal echo's for the prologue.
15032         * include/features.h: Include <gnu/stubs.h> unconditionally.
15033         * include/gnu/stubs.h: New file.
15035 2002-09-30  Roland McGrath  <roland@redhat.com>
15037         * elf/rtld-Rules: New file.
15038         * elf/Makefile ($(objpfx)librtld.map, $(objpfx)librtld.mk,
15039         $(objpfx)rtld-libc.a): New targets.
15040         (generated): Add them.
15041         (reloc-link): Remove -o $@ from the variable.
15042         ($(objpfx)dl-allobjs.os): Add -o $@ after $(reloc-link).
15043         (distribute): Add rtld-Rules.
15044         (CPPFLAGS-.os): Define this instead of CFLAGS-.os.
15045         * Makerules ($(+sysdir_pfx)sysd-rules): Emit rules for rtld-% targets.
15046         (common-mostlyclean, common-clean): Clean up rtld-* files.
15047         * sysdeps/unix/make-syscalls.sh: Add rtld-*.os target name to rules.
15049 2003-05-20  Jakub Jelinek  <jakub@redhat.com>
15051         * elf/dynamic-link.h (elf_get_dynamic_info): Add temp argument.
15052         If temp != NULL, copy dynamic entries which need relocation to temp
15053         array before relocating.
15054         (DL_RO_DYN_TEMP_CNT): Define.
15055         * elf/dl-load.c (_dl_map_object_from_fd): Adjust caller.
15056         * elf/rtld.c (_dl_start): Likewise.
15057         (dl_main): Likewise.  Add dyn_temp static variable.
15059 2002-10-11  Roland McGrath  <roland@redhat.com>
15061         * sysdeps/generic/dl-tls.c (__tls_get_addr): After freeing block in
15062         now-unused dtv slot, reset the slot to TLS_DTV_UNALLOCATED.
15064         * elf/tls-macros.h [__x86_64__] (TLS_GD): Fix the sequence with the
15065         proper set of no-op insn prefixes.
15067         * elf/tst-tls8.c (do_test): Use %zd format for l_tls_modid members.
15069 2002-10-11  Ulrich Drepper  <drepper@redhat.com>
15071         * sysdeps/unix/sysv/linux/execve.c: Don't try calling
15072         __pthread_kill_other_threads_np.
15074         * sysdeps/generic/pselect.c: Avoid unnecessary sigprocmask calls.
15076 2002-10-08  Roland McGrath  <roland@redhat.com>
15078         * locale/newlocale.c (__newlocale): If setting all categories to "C",
15079         just return &_nl_C_locobj instead of copying it.
15080         * locale/freelocale.c (__freelocale): Check for &_nl_C_locobj.
15081         * locale/duplocale.c (__duplocale): Likewise.
15083 2002-10-07  Roland McGrath  <roland@frob.com>
15085         * config.h.in (HAVE_I386_SET_GDT): New #undef.
15086         * sysdeps/mach/configure.in: Define it with new check for i386_set_gdt.
15087         * sysdeps/mach/configure: Regenerated.
15089 2002-10-06  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
15091         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (INLINE_SYSCALL):
15092         Add all necessary register outputs for syscall-clobbered registers.
15094 2002-10-02  David Mosberger  <davidm@hpl.hp.com>
15096         * sysdeps/ia64/bzero.S: Rewritten by Sverre Jarp to tune for
15097         Itanium 2 (and Itanium).
15098         Fix unwind directives and make it fit in 80 columns.
15099         * sysdeps/ia64/memset.S: Likewise.
15100         * sysdeps/ia64/memcpy.S: Likewise.
15101         Move jump table to .rodata section.
15103 2002-10-03  Roland McGrath  <roland@frob.com>
15105         * sysdeps/mach/hurd/i386/init-first.c (_hurd_stack_setup): Add
15106         clobbers to asm.
15108 2002-10-10  Andreas Jaeger  <aj@suse.de>
15110         * sysdeps/x86_64/_mcount.S: Restore correct registers.
15112 2002-10-10  Ulrich Drepper  <drepper@redhat.com>
15114         * posix/Versions (libc) [GLIBC_PRIVATE]: Add __pselect.
15116 2002-10-09  Ulrich Drepper  <drepper@redhat.com>
15118         * sysdeps/generic/ldsodefs.h: Remove attribute_hidden from
15119         _dl_allocate_tls_init.  Add rtld_hidden_proto.
15120         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Add
15121         rtld_hidden_def.
15122         * elf/Versions (ld) [GLIBC_PRIVATE]: Add _dl_allocate_tls_init.
15124         * version.h (VERSION): Bump to 2.3.1.
15126         * Make-dist: Add back one of the tar invocations removed before.
15128         * stdlib/Makefile (distribute): Add allocalim.h.
15130         * sysdeps/generic/bits/libc-tsd.h [!(USE_TLS && HAVE___THREAD)]
15131         (__libc_tsd_address): Use correct variable name.
15132         Patch by Stefan Jones <stefan.jones@multigig.com>.
15134         * sysdeps/unix/sysv/linux/ia64/getcontext.S: Add missing ;;.
15135         Reported by edwardsg@sgi.com [PR libc/4678].
15137         * Versions.def (libc): Add GLIBC_2.3.1.
15138         (libpthread): Add GLIBC_2.3.1.
15140         * include/signal.h: Add libc_hidden_proto for __sigwait, __sigwaitinfo,
15141         and __sigtimedwait.
15142         * signal/Versions: Add __sigtimedwait, __sigwait, and __sigwaitinfo.
15143         * sysdeps/unix/sysv/linux/sigtimedwait.c (__sigtimedwait): Add
15144         libc_hidden_def.
15145         * sysdeps/unix/sysv/linux/sigwait.c (__sigwait): Likewise.
15146         * sysdeps/unix/sysv/linux/sigwaitinfo.c (__sigwaitinfo): Likewise.
15148         * include/sys/msg.h: Declare __libc_msgrcv and __libc_msgsnd.
15149         * sysdeps/unix/sysv/linux/msgrcv.c (__msgrcv): Rename to __libc_msgrcv
15150         and make old name an alias.
15151         * sysdeps/unix/sysv/linux/msgsnd.c (__msgsnd): Rename to __libc_msgsnd
15152         and make old name an alias.
15153         * sysvipc/Versions (libc) [GLIBC_PRIVATE]: Add __libc_msgrcv and
15154         __libc_msgsnd.
15156         * include/sys/uio.h: Declare __libc_readv and __libc_writev.
15157         * misc/Versions (libc) [GLIBC_PRIVATE]: Add __libc_readv and
15158         __libc_writev.
15159         * sysdeps/generic/readv.c (__readv): Rename to __libc_readv and make
15160         old name an alias.
15161         * sysdeps/posix/readv.c: Likewise
15162         * sysdeps/unix/sysv/aix/readv.c: Likewise.
15163         * sysdeps/unix/sysv/linux/readv.c: Likewise.
15164         * sysdeps/generic/writev.c (__writev): Rename to __libc_writev and make
15165         old name an alias.
15166         * sysdeps/posix/writev.c: Likewise
15167         * sysdeps/unix/sysv/aix/writev.c: Likewise.
15168         * sysdeps/unix/sysv/linux/writev.c: Likewise.
15170         * include/sys/wait.h: Declare __waitid.
15171         * posix/Versions (libc) [GLIBC_PRIVATE]: Add __waitid.
15172         * sysdeps/generic/waitid.c (waitid): Rename to __waitid and make old
15173         name an alias.
15174         * sysdeps/posix/waitid.c: Likewise.
15175         * sysdeps/unix/sysv/aix/waitid.c: Likewise.
15177         * sysdeps/unix/sysv/linux/syscalls.list: Add creat syscall.
15179 2002-10-07  Jakub Jelinek  <jakub@redhat.com>
15181         * include/alloca.h (__libc_use_alloca, __libc_alloca_cutoff): New
15182         prototypes.
15183         (__MAX_ALLOCA_CUTOFF): Define.
15184         Include allocalim.h.
15185         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyname2_r,
15186         _nss_dns_gethostbyaddr_r): Use alloca or malloc to allocate
15187         host_buffer depending on __libc_use_alloca.
15188         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyname_r,
15189         _nss_dns_getnetbyaddr_r): Use alloca or malloc to allocate
15190         net_buffer depending on __libc_use_alloca.
15191         * resolv/res_query.c (res_nquery): Use alloca or malloc to allocate
15192         buf depending on __libc_use_alloca.
15193         * resolv/gethnamaddr.c (gethostbyname2, gethostbyaddr): Likewise.
15194         * stdio-common/vfprintf.c (vfprintf): Use __libc_use_alloca
15195         instead of hardcoded constants.
15196         Pass proper size argument to alloca and compute end for wide char
15197         version.
15198         * stdio-common/printf_fp.c (__printf_fp): Use __libc_use_alloca
15199         instead of hardcoded constants.
15200         * string/strcoll.c (strcoll): Likewise.
15201         * string/strxfrm.c (strxfrm): Likewise.
15202         * sysdeps/posix/readv.c (__readv): Likewise.
15203         * sysdeps/posix/writev.c (__writev): Likewise.
15204         * sysdeps/generic/allocalim.h: New file.
15206 2002-10-08  Roland McGrath  <roland@redhat.com>
15208         * configure.in (aux_missing warning): Change "too old" to
15209         "incompatible versions", since for autoconf it's "too new" right now.
15210         * configure: Regenerated.
15212         * configure.in (AUTOCONF): New check to set it.  Set to "no" if the
15213         one found doesn't work on our configure.in.
15214         * configure: Regenerated.
15215         * config.make.in (AUTOCONF): New substituted variable.
15216         * Makefile (autoconf-it-cvs): New canned sequence, broken out of ...
15217         (autoconf-it): ... here, use that instead of defining conditionally.
15218         Use $(AUTOCONF) instead of literal autoconf.
15219         [$(AUTOCONF) != no] (configure, %/configure): Protect these rules
15220         with this condition.
15221         * Make-dist (autoconf-it, configure, %/configure): Copy those changes.
15223 2002-10-08  Ulrich Drepper  <drepper@redhat.com>
15225         * Make-dist (dist): Cleanup a bit.  We are not interested in the
15226         14 char filename limit anymore.  Remove intermediate files and
15227         symlinks.
15229 2002-10-05  Ulrich Drepper  <drepper@redhat.com>
15231         * po/sk.po: Update from translation team.
15232         * po/tr.po: Likewise.
15233         * po/gl.po: Likewise.
15235 2002-10-05  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
15237         * elf/tls-macros.h: Fix SH version of macros so as to match ABI syntax.
15239 2002-10-03  Ulrich Drepper  <drepper@redhat.com>
15241         * version.h (RELEASE): Change to stable.
15243 2002-10-03  Jakub Jelinek  <jakub@redhat.com>
15245         * sysdeps/unix/sysv/linux/_exit.c (__syscall_exit,
15246         __syscall_exit_group): New prototypes.
15248 2002-10-03  Ulrich Drepper  <drepper@redhat.com>
15250         * glibc 2.3 released.
15253 See ChangeLog.13 for earlier changes.