* sysdeps/unix/alpha/sysdep.h [PIC] (SYSCALL_ERROR_HANDLER): Use ...
[glibc.git] / ChangeLog
blobff2b6ac924e01ae5866e0e8edc369f6f78241669
1 2004-01-15  Richard Henderson  <rth@redhat.com>
3         * sysdeps/alpha/dl-machine.h (RTLD_START): Use _dl_argv_internal.
5         * sysdeps/unix/alpha/sysdep.h [PIC] (SYSCALL_ERROR_HANDLER): Use
6         !samegp relocation.
8 2004-01-15  Richard Henderson  <rth@redhat.com>
10         * sysdeps/unix/sysv/linux/alpha/Makefile [stdlib]: Process
11         ucontext-offsets.sym.
12         * sysdeps/unix/sysv/linux/alpha/getcontext.S: New file.
13         * sysdeps/unix/sysv/linux/alpha/makecontext.S: New file.
14         * sysdeps/unix/sysv/linux/alpha/setcontext.S: New file.
15         * sysdeps/unix/sysv/linux/alpha/swapcontext.S: New file.
16         * sysdeps/unix/sysv/linux/alpha/ucontext-offsets.sym: New file.
18 2004-01-15  Richard Henderson  <rth@redhat.com>
20         * sysdeps/unix/sysv/linux/alpha/rt_sigaction.S: Prefix stubs with
21         __syscall_, move nop inside, adjust users by +4.
23 2004-01-14  Steven Munroe  <sjmunroe@us.ibm.com>
25         * include/libc-symbols.h [HAVE_ASM_GLOBAL_DOT_NAME]
26         (_symbol_version): Use C_SYMBOL_DOT_NAME to create '.'ed symbols.
27         (_default_symbol_version): Use C_SYMBOL_DOT_NAME to create '.'ed
28         symbols.
29         * sysdeps/powerpc/Makefile: Add rtld-global-offsets.sym to
30         gen-as-const-headers.
31         * sysdeps/powerpc/elf/rtld-global-offsets.sym: New file.
32         * sysdeps/powerpc/sysdep.h: Define v# symbols for vector registers.
33         Define PPC_FEATURE_* masks for Aux Vector AT_HWCAP.
34         * sysdeps/unix/sysv/linux/kernel-features.h
35         (__ASSUME_SWAPCONTEXT_SYSCALL): Define for PPC and 2.6.0 kernels.
36         * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h [!__WORDSIZE == 32]:
37         Declare mcontext_t inline and include altivec state for 64-bit.
38         * sysdeps/unix/sysv/linux/powerpc/powerpc64/Versions: Add GLIBC_2.3.4
39         versions for setcontext, getcontext, and swapcontext.
41         * sysdeps/unix/sysv/linux/powerpc/powerpc64/Versions: Add GLIBC_2.3.4
42         versions for setcontext, getcontext, swapcontext, and makecontext.
43         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S
44         (__getcontext):  Upgrade to save Altivec regs and version GLIBC_2_3_4.
45         [SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)](__novec_getcontext):
46         Compatible with GLIBC_2.3.3 release.
47         * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S
48         (__makecontext): Use parm save area instead of compiler_dw to hold
49         context pointer.
50         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S
51         (__setcontext):  Upgrade to restore Altivec regs and version
52         GLIBC_2_3_4.
53         [SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)](__novec_setcontext):
54         Compatible with GLIBC_2.3.3 release.
55         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S
56         (__swapcontext): Upgrade to swap Altivec regs and version GLIBC_2_3_4.
57         [SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)](__novec_swapcontext):
58         Compatible with GLIBC_2.3.3 release.
59         * sysdeps/unix/sysv/linux/powerpc/powerpc64/ucontext_i.h
60         (SIGCONTEXT_V_REGS_PTR, SIGCONTEXT_V_RESERVE): Defined.
63 2004-01-12  Steven Munroe  <sjmunroe@us.ibm.com>
65         * sysdeps/unix/sysv/linux/powerpc/powerpc32/Versions: Add GLIBC_2.3.4
66         versions for setcontext, getcontext, swapcontext, and makecontext.
67         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S
68         (__getcontext):  Upgrade to save Altivec regs and version GLIBC_2_3_4.
69         [SHLIB_COMPAT (libc, GLIBC_2_3_3, GLIBC_2_3_4)](__novec_getcontext):
70         Compatible with GLIBC_2.3.3 release.
71         * sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S
72         (__makecontext): Upgrade to align for Altivec regs and version
73         GLIBC_2_3_4.
74         [SHLIB_COMPAT (libc, GLIBC_2_3_3, GLIBC_2_3_4)](__novec_makecontext):
75         Compatible with GLIBC_2.3.3 release.
76         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S
77         (__setcontext):  Upgrade to restore Altivec regs and version
78         GLIBC_2_3_4.
79         [SHLIB_COMPAT (libc, GLIBC_2_3_3, GLIBC_2_3_4)](__novec_setcontext):
80         Compatible with GLIBC_2.3.3 release.
81         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S
82         (__swapcontext): Upgrade to swap Altivec regs and version GLIBC_2_3_4.
83         [SHLIB_COMPAT (libc, GLIBC_2_3_3, GLIBC_2_3_4)]
84         (__novec_swapcontext): Compatible with GLIBC_2.3.3 release.
85         * sysdeps/unix/sysv/linux/powerpc/powerpc32/ucontext_i.h:
86         (_UC_VSCR, _UC_VRSAVE): Define.
87         (_FRAME_BACKCHAIN, _FRAME_LR_SAVE,_FRAME_PARM_SAVE1,_FRAME_PARM_SAVE2,
88         _FRAME_PARM_SAVE3, _FRAME_PARM_SAVE4): Defined.
90 2004-01-15  Ulrich Drepper  <drepper@redhat.com>
92         * elf/rtld.c: Handle platforms with HP_TIMING_NONAVAIL defined.
94 2004-01-16  Alfred M. Szmidt  <ams@kemisten.nu>
96         * sysdeps/generic/dl-execstack.c (_dl_make_stack_executable): Adjust
97         parameter type.
99 2004-01-15  Ulrich Drepper  <drepper@redhat.com>
101         * elf/elf.h: Fix typo in comment.
103         * sysdeps/generic/dl-sysdep.c: Initialize __libc_stack_end.
104         * elf/rtld.c: Initialize _dl_argv to allow aliasing.
106         * resolv/resolv.h: Add RES_USEBSTRING.
107         * resolv/res_debug.c (p_option): Add handling for RES_USE_INET6,
108         RES_ROTATE, RES_NOCHECKNAME, and RES_USEBSTRING.
109         * resolv/res_init.c (res_setioptions): Recognize ip6-bytestring.
110         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Only perform
111         bytestring IPv6 lookup with RES_USEBSTRING option is selected.
112         Otherwise use the two nibble formats.
114 2004-01-14  Ulrich Drepper  <drepper@redhat.com>
116         * configure.in: Define HAVE_Z_RELRO if the linker supports -z relro.
117         * config.h.in: Add entry for HAVE_Z_RELRO.
118         * include/libc-symbols.h: Define attribute_relro.
119         * elf/dl-load.c: Add attribute_relro to env_path_list, capstr, ncapstr,
120         max_capstrlen, and max_dirnamelen definitions.
121         * elf/rtld.c: Add attribute_relro to _dl_argc, _dl_argv, _dl_skip_args,
122         load_time, start_time, library_path, preloadlist, version_info,
123         any_debug.
124         Remove rtld_total_time.  Make it a local variable.  Pass pointer to
125         it to print_statistics.  Change print_statistics accordingly.
126         * sysdeps/generic/dl-sysdep.c: Add attribute_relro to _dl_auxv.  Use
127         attribute_relro instead of explicitly assigning variable to the
128         .data.rel.ro section for __libc_enable_secure and __libc_stack_end.
129         * sysdeps/generic/ldsodefs.h: Declare __libc_stack_end, _dl_argc,
130         _dl_argv, _dl_argv_internal with attribute_relro.
132 2004-01-13  Segher Boessenkool  <boessen@de.ibm.com>
134         * Makerules (gen-as-const): Don't silently continue on failure.
136 2004-01-14  Steven Munroe  <sjmunroe@us.ibm.com>
138         * sysdeps/generic/dl-sysdep.c: Define __libc_stack_end with
139         rtld_hidden_data_def.
141 2004-01-14  Ulrich Drepper  <drepper@redhat.com>
143         * libio/libio.h: Add const to function tables types.
144         * libio/libioP.h: Likewise.
145         * login/utmp-private.h: Likewise.
146         * libio/fileops.c: Add const to jump table variable definition.
147         * libio/genops.c: Likewise.
148         * libio/iofopncook.c: Likewise.
149         * libio/iopopen.c: Likewise.
150         * libio/memstream.c: Likewise.
151         * libio/obprintf.c: Likewise.
152         * libio/oldfileops.c: Likewise.
153         * libio/oldiopopen.c: Likewise.
154         * libio/strops.c: Likewise.
155         * libio/vsnprintf.c: Likewise.
156         * libio/vswprintf.c: Likewise.
157         * libio/wfileops.c: Likewise.
158         * libio/wstrops.c: Likewise.
159         * login/getutent_r.c: Likewise.
160         * login/getutid_r.c Likewise.
161         * login/getutline_r.c: Likewise.
162         * sysdeps/generic/utmp_file.c: Likewise.
164 2004-01-09  Bruno Haible  <bruno@clisp.org>
166         * intl/gmo.h (MO_REVISION_NUMBER_WITH_SYSDEP_I): New definition.
167         * intl/loadmsgcat.c (get_sysdep_segment_value): Handle "I".
168         (_nl_load_domain): Treat major revision 1 like major revision 0.
170 2004-01-11  Bruno Haible  <bruno@clisp.org>
172         * stdio-common/vfprintf.c (vfprintf): Disallow the 'I' flag after
173         width or precision has been seen.
175 2004-01-08  Bruno Haible  <bruno@clisp.org>
177         * intl/loadmsgcat.c (_nl_load_domain): When a string pair uses a system
178         dependent segment not known to this version of the library, ignore
179         the string pair instead of crashing.
181 2004-01-13  Ulrich Drepper  <drepper@redhat.com>
183         * configure.in: Rewrite test to give gcc to clean up after itself.
184         Patch by Greg Schafer.
186         * posix/regex.c: Support crappy compilers and platforms which have
187         problems with alloca.
188         * posix/regex_internal.h: Likewise.
189         Patch by Paolo Bonzini.
191 2004-01-12  Paolo Bonzini  <bonzini@gnu.org>
193         * posix/regcomp.c [_LIBC && !RE_ENABLE_I18N]:
194         Drop code to support this, it is never true.
195         (build_range_exp) [!_LIBC]: Do not create a range
196         in MBCSET for a single-byte character set.
197         (build_range_exp) [_LIBC]: Do not create a range
198         in MBCSET for a single-byte character set without
199         collation elements.
200         (init_dfa): Do not conditionalize on _LIBC, it
201         just makes the code less clear.
202         (parse_bracket_exp): Use NON_MATCH variable in
203         addition to "mbcset->non_match", not as an
204         alternative.
205         (build_charclass_op): rename NOT parameter to
206         NON_MATCH, use it instead of declaring a variable.
207         (parse_bracket_exp) [!_LIBC]: Pass NULL for MBCSET
208         if the character set is single-byte.
210 2004-01-14  Jakub Jelinek  <jakub@redhat.com>
212         * posix/regcomp.c (peek_token_bracket): Check remaining
213         string length before re_string_peek_byte (x, 1).
214         (parse_bracket_symbol): Likewise.
215         * posix/regex_internal.h (re_string_is_single_byte_char): Return
216         true at last byte in the string.
217         * posix/bug-regex22.c (main): Add new test.
219 2004-01-13  Ulrich Drepper  <drepper@redhat.com>
221         * sysdeps/generic/dl-sysdep.c: Move __libc_enable_secure into
222         .data.rel.ro.
224         * sysdeps/x86_64/dl-machine.h: Include <tls.h>.
226         * elf/rtld.c (_dl_start_final): Initialze __libc_stack_end here.
227         * sysdeps/generic/dl-sysdep.c: Define __libc_stack_end with
228         rtld_hidden_def and move into .data.rel.ro section.
229         * sysdeps/generic/ldsodefs.h: Declare __libc_stack_end with
230         rtld_hidden_proto.
231         * sysdeps/generic/libc-start.c: Only initialize __libc_stack_end here
232         if !SHARED.
234 2004-01-13  Richard Henderson  <rth@redhat.com>
236         * sysdeps/unix/sysv/linux/alpha/rt_sigaction.S: Fix typo.
238 2004-01-13  Ulrich Drepper  <drepper@redhat.com>
240         * sysdeps/unix/sysv/linux/dl-execstack.c
241         (_dl_make_stack_executable): Move common code in front.  Use
242         __builtin_expect.
244         * sysdeps/unix/sysv/linux/dl-execstack.c: Change interface.  Add
245         challenge for caller.
246         * sysdeps/generic/ldsodefs.h: Change declaration and type of hook
247         member in rtld_global appropriately.
248         * elf/dl-support.c: Likewise.
249         * elf/dl-load.c (_dl_map_object_from_fd): Take additional paramter.
250         Pass it on to the changed function.
251         (_dl_map_object): Pass new parameter to _dl_map_object_from_fd.
253 2004-01-13  Richard Henderson  <rth@redhat.com>
255         * sysdeps/alpha/bits/atomic.h (__arch_compare_and_exchange_xxx_8_int):
256         Cast old up to uint64_t before back down to inner width.
257         (__arch_compare_and_exchange_xxx_16_int): Likewise.
258         (__arch_compare_and_exchange_xxx_32_int): Likewise.
259         (__arch_compare_and_exchange_xxx_64_int): Likewise.
260         (__arch_compare_and_exchange_val_8_int): Cast result to
261         the type of the memory.
262         (__arch_compare_and_exchange_val_16_int): Likewise.
263         (__arch_compare_and_exchange_val_32_int): Likewise.
264         (__arch_compare_and_exchange_val_64_int): Likewise.
265         (atomic_compare_and_exchange_bool_acq): Use __atomic_bool_bysize.
266         (atomic_compare_and_exchange_bool_rel): Likewise.
268         * sysdeps/unix/alpha/sysdep.h: Select inline_syscall_r0_asm
269         based on HAVE___THREAD instead of USE_TLS.
271         * sysdeps/unix/sysv/linux/alpha/adjtime.c (ADJTIMEX32): New.
272         (__adjtimex_tv64): Use it.
274         * sysdeps/unix/sysv/linux/alpha/semctl.c (__new_semctl): Cast
275         to void* rather than directly to the compatibility structure type.
276         * sysdeps/unix/sysv/linux/alpha/shmctl.c (__new_shmctl): Likewise.
278         * sysdeps/unix/sysv/linux/alpha/sigaction.c (struct kernel_sigaction):
279         Forward declare.
281 2004-01-13  Richard Henderson  <rth@redhat.com>
283         * Versions.def (libm): Add GLIBC_2.3.3.
284         * sysdeps/alpha/fpu/Versions: Add __c1_c*f and c*f to GLIBC_2.3.3.
285         * sysdeps/alpha/fpu/cabsf.c, sysdeps/alpha/fpu/cargf.c,
286         sysdeps/alpha/fpu/cfloat-compat.h, sysdeps/alpha/fpu/cimagf.c,
287         sysdeps/alpha/fpu/conjf.c, sysdeps/alpha/fpu/crealf.c,
288         sysdeps/alpha/fpu/s_cacosf.c, sysdeps/alpha/fpu/s_cacoshf.c,
289         sysdeps/alpha/fpu/s_casinf.c, sysdeps/alpha/fpu/s_casinhf.c,
290         sysdeps/alpha/fpu/s_catanf.c, sysdeps/alpha/fpu/s_catanhf.c,
291         sysdeps/alpha/fpu/s_ccosf.c, sysdeps/alpha/fpu/s_ccoshf.c,
292         sysdeps/alpha/fpu/s_cexpf.c, sysdeps/alpha/fpu/s_clog10f.c,
293         sysdeps/alpha/fpu/s_clogf.c, sysdeps/alpha/fpu/s_cpowf.c,
294         sysdeps/alpha/fpu/s_cprojf.c, sysdeps/alpha/fpu/s_csinf.c,
295         sysdeps/alpha/fpu/s_csinhf.c, sysdeps/alpha/fpu/s_csqrtf.c,
296         sysdeps/alpha/fpu/s_ctanf.c, sysdeps/alpha/fpu/s_ctanhf.c: New files.
297         * sysdeps/alpha/fpu/bits/mathdef.h: Rename complex float
298         functions for gcc 3.3.
300         * sysdeps/generic/s_cacosf.c, sysdeps/generic/s_cacoshf.c,
301         sysdeps/generic/s_casinf.c, sysdeps/generic/s_casinhf.c,
302         sysdeps/generic/s_catanf.c, sysdeps/generic/s_catanhf.c,
303         sysdeps/generic/s_ccosf.c, sysdeps/generic/s_ccoshf.c,
304         sysdeps/generic/s_cexpf.c, sysdeps/generic/s_clog10f.c,
305         sysdeps/generic/s_clogf.c, sysdeps/generic/s_cpowf.c,
306         sysdeps/generic/s_cprojf.c, sysdeps/generic/s_csinf.c,
307         sysdeps/generic/s_csinhf.c, sysdeps/generic/s_csqrtf.c,
308         sysdeps/generic/s_ctanf.c, sysdeps/generic/s_ctanhf.c: Don't
309         weak_alias if the function name has been #defined.
311         * math/cabsf.c: Move ...
312         * sysdeps/generic/cabsf.c: ... here.
313         * math/cargf.c: Move ...
314         * sysdeps/generic/cargf.c: ... here.
315         * math/cimagf.c: Move ...
316         * sysdeps/generic/cimagf.c: ... here.
317         * math/conjf.c: Move ...
318         * sysdeps/generic/conjf.c: ... here.
319         * math/crealf.c: Move ...
320         * sysdeps/generic/crealf.c: ... here.
322 2004-01-13  Ulrich Drepper  <drepper@redhat.com>
324         * Makeconfig: Define relro-LDFLAGS if have-z-relro==yes.  Add it to
325         LDFLAGS.so and LDFLAGS-rtld.
326         (+link): Add relro-LDFLAGS.
327         * Makeconfig (shlib.lds): Place __libc_subfreeres, __libc_atexit, and
328         __libc_thread_subfreeres sections after .jcr section.
329         * config.make.in: Add have-z-relro.
330         * configure.in: Add check for -z relro option.
331         * include/link.h (struct link_map): Add relro_addr and relro_size
332         members.
333         * elf/dl-load.c (_dl_map_object_from_fd): Recognize PT_GNU_RELRO.
334         * elf/dl-reloc.c (_dl_relocate_object): At the end, make relro
335         part of loaded segments read-only.
336         * elf/elf.h: Define PT_GNU_RELRO.
337         * elf/rtld.c (_dl_start): Recognize PT_GNU_RELRO of ld.so.
338         (dl_main): Recognize PT_GNU_RELRO of the application.  Call
339         _dl_debug_initialize and initialize l_info[DT_DEBUG] before
340         relocations.
342 2004-01-12  Jakub Jelinek  <jakub@redhat.com>
344         * sysdeps/x86_64/strcspn.S: Fix typo in last patch.
346 2004-01-11  Andreas Jaeger  <aj@suse.de>
348         * sysdeps/x86_64/__longjmp.S: Add cfi directives.
350 2004-01-10  Andreas Jaeger  <aj@suse.de>
352         * sysdeps/unix/sysv/linux/x86_64/__start_context.S: Add cfi directives.
353         * sysdeps/unix/x86_64/sysdep.S (__syscall_error): Likewise.
354         * sysdeps/unix/sysv/linux/x86_64/vfork.S: Likewise.
355         * sysdeps/x86_64/strcspn.S: Likewise.
356         * sysdeps/x86_64/strspn.S: Likewise.
358 2004-01-08  Jakub Jelinek  <jakub@redhat.com>
360         * sysdeps/unix/sysv/linux/x86_64/clone.S (__clone): Add cfi_endproc
361         right before syscall and cfi_startproc before PSEUDO_END.
362         Clear %rbp in thread_start.
364 2004-01-05  Jakub Jelinek  <jakub@redhat.com>
366         * posix/regcomp.c (regcomp): Fix comment typo.
367         (regfree): Free preg->translate, clear buffer, allocated, fastmap
368         and translate fields.
370         * posix/regcomp.c (build_charclass, buld_charclass_op): Change first
371         argument to unsigned RE_TRANSLATE_TYPE.
372         * posix/regex_internal.h (re_string_t): Change trans type to
373         unsigned RE_TRANSLATE_TYPE.
374         * posix/regex_internal.c (re_string_construct_common): Cast
375         trans to unsigned RE_TRANSLATE_TYPE.
376         (re_string_peek_byte_case, re_string_fetch_byte_case): Avoid fast
377         path if pstr->trans.  Never translate the character through
378         pstr->trans.
379         * posix/Makefile (tests): Add bug-regex22.
380         (bug-regex22-ENV): Set.
381         * posix/bug-regex22.c: New test.
383 2004-01-02  Paolo Bonzini  <bonzini@gnu.org>
385         * posix/regex_internal.c (re_node_set_add_intersect,
386         re_node_set_merge): Rewritten.
387         (re_node_set_insert, re_node_set_remove_at):
388         Avoid memmove, we know what direction we should copy and that we
389         are copying 32-bit words.
390         (re_node_set_compare): Iterate backwards.
392 2003-12-30  Paul Eggert  <eggert@twinsun.com>
394         * time/mktime.c (verify): New macro.
395         (time_t_is_integer, twos_complement_arithmetic,
396         right_shift_propagates_sign, base_year_is_a_multiple_of_100,
397         C99_integer_division): Document these longstanding assumptions in the
398         code, and verify them at compile-time.
400 2004-01-02  Jakub Jelinek  <jakub@redhat.com>
402         * posix/regex_internal.h (re_match_context_t): Add dfa member.
403         * posix/regexec.c (match_ctx_free_subtops, search_cur_bkref_entry,
404         match_ctx_add_sublast, sift_ctx_init, acquire_init_state_context,
405         prune_impossible_nodes, check_halt_state_context, proceed_next_node,
406         sift_states_backward, update_cur_sifted_state, check_dst_limits,
407         check_dst_limits_calc_pos, sift_states_bkref, transit_state,
408         check_subexp_matching_top, transit_state_sb, transit_state_mb,
409         transit_state_bkref, get_subexp, get_subexp_sub, check_arrival,
410         check_arrival_add_next_nodes, expand_bkref_cache, check_node_accept):
411         Remove dfa parameter.  Get dfa from mctx.  Adjust callers.
412         (re_search_internal): Initialize mctx.dfa.
414         * posix/regex_internal.c (re_node_set_insert): Remove unused variables.
416         * posix/regex_internal.h (re_dfa_t): Add syntax field.
417         * posix/regcomp.c (parse): Initialize dfa->syntax.
418         * posix/regexec.c (acquire_init_state_context,
419         prune_impossible_nodes, check_matching, check_halt_state_context,
420         proceed_next_node, sift_states_iter_mb, sift_states_backward,
421         update_cur_sifted_state, sift_states_bkref, transit_state,
422         transit_state_sb, transit_state_mb, transit_state_bkref,
423         get_subexp, get_subexp_sub, check_arrival, expand_bkref_cache,
424         build_trtable): Remove preg argument, add dfa argument instead
425         and remove dfa = preg->buffer initialization in the body.
426         Adjust all callers.
427         (check_node_accept_bytes, group_nodes_into_DFAstates,
428         check_node_accept): Likewise.  Use dfa->syntax instead of
429         preg->syntax.
430         (check_arrival_add_next_nodes): Remove preg argument.
432         * posix/regex_internal.h (re_match_context_t): Make input
433         re_string_t instead of a pointer to it.
434         * posix/regex_internal.c (re_string_construct_common): Don't clear
435         pstr here...
436         (re_string_construct): ... but only here.
437         * posix/regexec.c (match_ctx_init): Remove input argument.  Don't
438         initialize fields to zero.
439         (re_search_internal): Move input into mctx.input.
440         (acquire_init_state_context, check_matching,
441         check_halt_state_context, proceed_next_node,
442         clean_state_log_if_needed, sift_states_bkref, sift_states_iter_mb,
443         transit_state, transit_state_sb, transit_state_mb,
444         transit_state_bkref, get_subexp, check_arrival,
445         check_arrival_add_next_nodes, check_node_accept, extend_buffers):
446         Change mctx->input into &mctx->input and mctx->input->field into
447         mctx->input.field.
449 2004-01-02  Jakub Jelinek  <jakub@redhat.com>
450             Paolo Bonzini  <bonzini@gnu.org>
452         * posix/regex_internal.h (re_const_bitset_ptr_t): New type.
453         (re_string_t): Add newline_anchor, word_char and word_ops_used fields.
454         (re_dfa_t): Change word_char type to bitset.  Add word_ops_used field.
455         (re_string_context_at, re_string_reconstruct): Remove last argument.
456         * posix/regex_internal.c (re_string_allocate): Initialize
457         pstr->word_char and pstr->word_ops_used.
458         (re_string_context_at): Remove newline_anchor argument.
459         Use input->newline_anchor instead, swap && conditions.
460         Only use IS_WIDE_WORD_CHAR if input->word_ops_used != 0.
461         Use input->word_char bitmap instead of IS_WORD_CHAR.
462         (re_string_reconstruct): Likewise.
463         Adjust re_string_context_at caller.
464         * posix/regexec.c (acquire_init_state_context,
465         check_halt_state_context, transit_state, transit_state_sb,
466         transit_state_mb, transit_state_bkref, check_arrival,
467         check_node_accept): Adjust re_string_context_at and
468         re_string_reconstruct callers.
469         (re_search_internal): Likewise.  Set input.newline_anchor.
470         (build_trtable): Use dfa->word_char bitmap instead of IS_WORD_CHAR.
471         * posix/regcomp.c (init_word_char): Change return type to void.
472         Set dfa->word_ops_used.
473         (free_dfa_content): Don't free dfa->word_char.
474         (parse_expression): Remove error handling for init_word_char.
476 2004-01-01  Paolo Bonzini  <bonzini@gnu.org>
478         * posix/regex_internal.h (re_dfastate_t): Fix size of the CONTEXT
479         bitfield.
481         * posix/regex_internal.c (re_node_set_insert):  Rewrite.
483 2004-01-01  Ulrich Drepper  <drepper@redhat.com>
485         * posix/getconf.c: Update copyright year.
486         * nss/getent.c: Likewise.
487         * nscd/nscd_nischeck.c: Likewise.
488         * iconv/iconvconfig.c: Likewise.
489         * iconv/iconv_prog.c: Likewise.
490         * elf/ldconfig.c: Likewise.
491         * catgets/gencat.c: Likewise.
492         * csu/version.c: Likewise.
493         * elf/ldd.bash.in: Likewise.
494         * elf/sprof.c (print_version): Likewise.
495         * locale/programs/locale.c: Likewise.
496         * locale/programs/localedef.c: Likewise.
497         * nscd/nscd.c (print_version): Likewise.
498         * debug/xtrace.sh: Likewise.
499         * malloc/memusage.sh: Likewise.
500         * malloc/mtrace.pl: Likewise.
502 2004-01-01  Petter Reinholdtsen  <pere@hungry.com>
504         * stdlib/strfmon.c: Make formatting of left-justified currency
505         values match the the POSIX standard.  When using format string
506         "[%-14#5.4n]" to print -123.45, the result should be
507         "[-$   123.4500 ]", not "[-$123.4500    ]".
509 2004-01-01  Andreas Jaeger  <aj@suse.de>
511         * resolv/Makefile (generated): New.
513 2003-12-31  Joseph S. Myers  <jsm@polyomino.org.uk>
515         * CONFORMANCE: Update.
517 2003-12-30  Paul Eggert  <eggert@twinsun.com>
519         * time/mktime.c: (my_mktime_localtime_r):
520         Remove.  All uses changed to __localtime_r.
521         (__localtime_r) [!defined _LIBC]: New macro.  Include "time_r.h" to
522         get its implementation.
523         Fix compile-command to allow for TIME_R_POSIX.
525         * time/strftime.c (my_strftime_gmtime_r, my_strftime_localtime_r):
526         Remove.  All uses changed to __localtime_r and __gmtime_r.
527         (__gmtime_r, __localtime_r) [!HAVE_TM_GMTOFF]: New macros.
528         Include "time_r.h" to get their implementations.
530         * time/timegm.c: Allow use in GNU applications outside glibc.
531         [defined HAVE_CONFIG_H]: Include <config.h>.
532         [!defined _LIBC]: Include "timegm.h", <time_r.h>.
533         Define __gmtime_r, and declare __mktime_internal.
534         (timegm): Define via a prototype, since we can safely assume C89 now.
536         * time/mktime.c (check_result): Use less-confusing report format.
537         "long" -> "long int", as per usual GNU style.
538         (main): Likewise.
539         Don't loop if the iteration overflows time_t.
540         Allow a negative step in the iteration.
542         * time/mktime.c: Assume freestanding C89 or better.
543         (HAVE_LIMITS_H, STDC_HEADERS) [defined _LIBC]: Remove;
544         assume they're 1.
545         (__P): Remove; not used.
546         (CHAR_BIT, INT_MIN, INT_MAX): Remove; <limits.h> defines them.
547         (mktime, not_equal_tm, print_tm, check_result, main): Use prototypes.
548         Prototypes use const * where appropriate.
549         (main) [DEBUG]: Fix typo in testing code uncovered by above changes,
550         which caused the testing code to dump core on some hosts.
552 2003-12-31  Ulrich Drepper  <drepper@redhat.com>
554         * locale/setlocale.c (setlocale): Avoid duplicating locale names
555         if we can reuse old strings.
557         * inet/rcmd.c: Provide better error message in case of unknown
558         host.  Remove USE_IN_LIBIO.
560         * nscd/nscd.init: Updated version, more conforming with current
561         init file standards.
563         * nscd/nscd-client.h (_PATH_NSCDPID): Move the file into
564         /var/run/nscd directory.
565         (_PATH_NSCDSOCKET): Likewise.
567         * test-skeleton.c (timeout_handler): Fix error message.
569         * elf/dl-dst.h (DL_DST_REQUIRED): Avoid the complex operations if
570         CNT == 0.
572 2003-12-30  Jakub Jelinek  <jakub@redhat.com>
574         * posix/regexec.c (get_subexp): Only set bkref_str after the first
575         loop, use buf + bkref_str_off in the loop instead.
576         * posix/bug-regex11.c (tests): Add 3 new tests.
578         * posix/regexec.c (clean_state_log_if_need): Rename to...
579         (clean_state_log_if_needed): ...this.
580         (transit_state_mb, get_subexp_sub): Adjust callers.
582         * sunrpc/pmap_clnt.c (pmap_set): Do CLNT_DESTROY even if CLNT_CALL
583         failed.  Reported by Steve Grubb.
585 2003-12-29  Ulrich Drepper  <drepper@redhat.com>
587         * elf/elf.h: Add a few definitions from Solaris 9.
589 2003-12-29  Andreas Schwab  <schwab@suse.de>
591         * stdio-common/Makefile (CFLAGS-errlist.c, CFLAGS-siglist.c): Add
592         $(fno_unit_at_a_time) to avoid reordering assembler output.
594 2003-12-29  Jakub Jelinek  <jakub@redhat.com>
596         * posix/regexec.c (re_copy_regs): Revert comment change.
597         Avoid memory leak if realloc fails.
598         (proceed_next_node): Return -2 if re_node_set_insert fails.
599         Return -2 if push_fail_stack fails.
600         (push_fail_stack): Change fs->alloc only after successful realloc.
601         (pop_fail_stack): Formatting.
602         (set_regs): If proceed_next_node returns -2, free eps_via_nodes and fs.
603         (check_arrival_add_next_nodes): Merge identical statements
604         from if branches.
606         * signal/Makefile (tests): Add tst-raise.
607         * signal/tst-raise.c: New test.
609 2003-12-28  Ulrich Drepper  <drepper@redhat.com>
611         * posix/regcomp.c (mark_opt_subexp_iter): Declare IDX as int.
613         * posix/regexec.c (re_copy_regs): Fix testing for failed allocation.
614         (push_fail_stack): Add missing check for failed memory allocation.
616         * libio/libio.h: Use __builtin_expect in _IO_getc_unlocked,
617         _IO_peekc_unlocked, _IO_putc_unlocked, _IO_getwc_unlocked, and
618         _IO_putwc_unlocked.
620 2003-12-28  Andreas Jaeger  <aj@suse.de>
622         * sysdeps/ieee754/dbl-64/e_j0.c (__ieee754_y0): Raise only
623         overflow for 0 as argument. Raise Invalid exception for negative args.
624         * sysdeps/ieee754/dbl-64/e_jn.c (__ieee754_yn): Likewise.
625         * sysdeps/ieee754/dbl-64/e_j1.c (__ieee754_y0): Likewise.
626         * sysdeps/ieee754/ldb-128/e_jnl.c (__ieee754_ynl): Likewise.
627         * sysdeps/ieee754/ldb-128/e_j0l.c (__ieee754_y0l): Likewise.
628         * sysdeps/ieee754/ldb-128/e_j1l.c (__ieee754_y1l): Likewise.
629         * sysdeps/ieee754/ldb-96/e_jnl.c (__ieee754_ynl): Likewise.
630         * sysdeps/ieee754/ldb-96/e_j0l.c (__ieee754_y0l): Likewise.
631         * sysdeps/ieee754/ldb-96/e_j1l.c (__ieee754_y1l): Likewise.
632         * sysdeps/ieee754/flt-32/e_jnf.c (__ieee754_ynf): Likewise.
633         * sysdeps/ieee754/flt-32/e_j0f.c (__ieee754_y0f): Likewise.
634         * sysdeps/ieee754/flt-32/e_j1f.c (__ieee754_y1f): Likewise.
636         * math/libm-test.inc (yn_test): Expect invalid exception for
637         negative arguments.
638         (y0_test): Likewise.
639         (y1_test): Likewise.
641         * sysdeps/ieee754/dbl-64/e_exp.c (__ieee754_exp): Do not raise
642         execptions for exp(NaN).
644 2003-12-23  Paolo Bonzini  <bonzini@gnu.org>
646         * posix/regex_internal.c (re_dfa_add_node): Initialize opt_subexp.
647         * posix/regex_internal.h (re_token_type_t): Put OP_DUP_PLUS
648         among the tokens, rather than among the epsilon-transiting nodes.
649         (re_token_t): Add the opt_subexp flag.
650         * posix/regcomp.c (optimize_utf8, calc_first,
651         calc_next, calc_epsdest): Don't consider OP_DUP_PLUS.
652         (mark_opt_subexp, mark_opt_subexp_iter): New functions.
653         (parse_dup_op): Mostly rewritten, lowering OP_DUP_PLUS to
654         OP_DUP_ASTERISK and marking optional subexpressions
655         as such using mark_opt_subexp.
656         * posix/regexec.c (set_regs): Initialize PREV_INDEX_MATCH
657         and pass it to update_regs.
658         (update_regs): Use the PREV_INDEX_MATCH parameter, together
659         with the opt_subexp flag, in order to discard a final empty
660         match of a repeated subexpression.
661         * posix/BOOST.tests: Adjust test vectors.
662         * posix/PCRE.tests: Likewise.
663         * posix/rxspencer/tests: Likewise.
665 2000-05-22  Jakub Jelinek  <jakub@redhat.com>
667         * sysdeps/i386/fpu/bits/mathinline.h (__expm1_code): Avoid using ?:
668         with omitted middle operand.
670 2003-12-22  Jakub Jelinek  <jakub@redhat.com>
672         * posix/regcomp.c: Remove C99-ism.
673         * posix/tst-rxspencer.c: Likewise.
674         Based on a patch by Alex Davis <alex14641@yahoo.com>.
676 2003-12-17  Paolo Bonzini  <bonzini@gnu.org>
678         * posix/regex_internal.h [!_LIBC] (internal_function): Define.
679         (re_string_allocate, re_string_construct, re_string_reconstruct,
680         re_string_realloc_buffers, build_wcs_buffer,
681         build_wcs_upper_buffer, build_upper_buffer,
682         re_string_translate_buffer, re_string_destruct,
683         re_string_elem_size_at, re_string_char_size_at,
684         re_string_wchar_at, re_string_context_at,
685         re_node_set_alloc, re_node_set_init_1
686         re_node_set_init_2, re_node_set_init_copy,
687         re_node_set_add_intersect, re_node_set_init_union,
688         re_node_set_merge, re_node_set_insert
689         re_node_set_compare, re_node_set_contains
690         re_node_set_remove_at, re_dfa_add_node,
691         re_acquire_state, re_acquire_state_context,
692         free_state): Add internal_function to declaration.
694         * posix/regexec.c (match_ctx_init, match_ctx_clean,
695         match_ctx_free, match_ctx_free_subtops,
696         match_ctx_add_entry, search_cur_bkref_entry,
697         match_ctx_clear_flag, match_ctx_add_subtop,
698         match_ctx_add_sublast, sift_ctx_init,
699         re_search_internal, re_search_2_stub, re_search_stub,
700         re_copy_regs, acquire_init_state_context,
701         prune_impossible_nodes, check_matching,
702         check_halt_node_context, check_halt_state_context
703         update_regs, proceed_next_node, push_fail_stack,
704         pop_fail_stack, set_regs, free_fail_stack_return,
705         sift_states_iter_mb, sift_states_backward
706         update_cur_sifted_state, add_epsilon_src_nodes,
707         sub_epsilon_src_nodes, check_dst_limits,
708         check_dst_limits_calc_pos, check_subexp_limits,
709         sift_states_bkref, clean_state_log_if_need,
710         merge_state_array, transit_state,
711         check_subexp_matching_top, transit_state_sb,
712         transit_state_mb, transit_state_bkref,
713         get_subexp, get_subexp_sub, find_subexp_node,
714         check_arrival, check_arrival_add_next_nodes,
715         find_collation_sequence_value, check_arrival_expand_ecl,
716         check_arrival_expand_ecl_sub, expand_bkref_cache,
717         build_trtable, check_node_accept_bytes, extend_buffers,
718         group_nodes_into_DFAstates, check_node_accept): Likewise.
720         * posix/regex_internal.c (re_string_construct_common,
721         re_string_skip_chars, create_newstate_common,
722         register_state, create_ci_newstate, create_cd_newstate,
723         calc_state_hash): Likewise.
724         (re_string_peek_byte_case, re_fetch_byte_case): Change
725         declaration from ANSI to K&R.
727 2003-12-16  Paolo Bonzini  <bonzini@gnu.org>
729         * posix/regexec.c (build_trtable): Don't allocate the trtable
730         until state->word_trtable is known.  Don't hardcode UINT_BITS
731         iterations on each bitset item.
733 2003-12-22  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>
735         * sysdeps/unix/sysv/linux/ia64/dl-static.c (_dl_static_init):
736         Initialize REF before passing it to _dl_lookup_symbol.
738 2003-12-21  Roland McGrath  <roland@frob.com>
740         * sysdeps/mach/hurd/dl-sysdep.c (_exit): Define with attribute_hidden.
742 2003-12-21  Jakub Jelinek  <jakub@redhat.com>
744         * posix/regcomp.c (duplicate_node, duplicate_node_closure): Revert
745         2003-11-24 changes.
746         * posix/regexec.c (group_nodes_into_DFAstates): For CHARACTER with
747         NEXT_{,NOT}WORD_CONSTRAINT check word_char bit.
748         * posix/bug-regex19.c (tests): Add new tests.
750         * posix/regexec.c (check_dst_limits_calc_pos): Fix formatting.
752         * posix/regcomp.c (parse_dup_op): Return NULL if dup_elem is NULL,
753         after checking syntax.  Optimize.
754         (calc_first): Fix comment.
755         * posix/bug-regex13.c (tests): Add new tests.
757 2003-12-21  Roland McGrath  <roland@redhat.com>
759         * manual/arith.texi (Parsing of Integers): Typo fix.
761 2003-12-20  Roland McGrath  <roland@frob.com>
763         * sysdeps/generic/ifreq.c (__ifreq) [_HAVE_SA_LEN]: Fix typo:
764         add missing dereference of IFREQS before counting loop.
766 2003-12-21  Andreas Schwab  <schwab@suse.de>
768         * sysdeps/m68k/m68020/bits/atomic.h: Avoid matching memory
769         constraints.
771 2003-12-20  Ulrich Drepper  <drepper@redhat.com>
773         * elf/rtld.c (dl_main): Optimize order of subexpressions in if().
775 2003-12-18  Ulrich Drepper  <drepper@redhat.com>
777         * stdio-common/printf_fp.c: Add support to use alternative decimal
778         digits.
779         * stdio-common/vfprintf.c (vfprintf): Pass use_outdigits flags to
780         __printf_fp.  Patch by Hamed Malek <hamed@bamdad.org>.
782 2003-12-18  Carlos O'Donell  <carlos@baldric.uwo.ca>
784         * sysdeps/unix/sysv/linux/hppa/clone.S (__clone) [PIC]: Save PIC,
785         reload PIC if we need to call __syscall_error, cleanup asm.
787 2003-12-17  Carlos O'Donell  <carlos@baldric.uwo.ca>
789         * sysdeps/hppa/fpu/fclrexcpt.c (feclearexcept): Right shift
790         FE_ALL_EXCEPT before complimenting.
791         * sysdeps/hppa/fpu/fegetenv.c (fegetenv): Use asm 'ma,' completer,
792         and gcc '+r' constraint.
793         * sysdeps/hppa/fpu/feholdexcpt.c (feholdexcept): Likewise.
794         * sysdeps/hppa/fpu/fesetenv.c (fesetenv): Likewise.
795         * sysdeps/hppa/fpu/feupdateenv.c (feupdateenv): Read raised
796         exception bits, OR with envp, pass to fesetenv.
797         * sysdeps/hppa/fpu/fraiseexcpt.c (feraiseexcept): Add delayed
798         exception flushing, FE_UNDERFLOW is DBL_MIN/3.0, FE_INEXACT is
799         triggered by M_PI/69.69 converted to single precision.
800         * sysdeps/hppa/fpu/fsetexcptflg.c (fesetexceptflag): Set enable
801         bits not raised exception bits.
803         * sysdeps/hppa/Makefile: Add dl-symaddr and dl-fptr to the
804         correct build strings.
805         * sysdeps/hppa/dl-fptr.h: New file.
806         * sysdeps/hppa/dl-fptr.c: Removed.
807         * sysdeps/hppa/dl-symaddr.c (_dl_symbol_address): Use _dl_make_ftpr,
808         remove const qualifier for map.
809         (_dl_function_address): Removed.
810         * sysdeps/hppa/dl-lookupcfg.h: DL_LOOKUP_ADDRESS must clear
811         PLABEL32 bits, define DL_AUTO_FUNCTION_ADDRESS and
812         DL_STATIC_FUNCTION_ADDRESS, DL_DT_INIT_ADDRESS and
813         DL_DT_FINI_ADDRESS use the previous two macros.
815 2003-12-17  Jakub Jelinek  <jakub@redhat.com>
817         * malloc/mtrace.c (tr_old_memalign_hook): New variable.
818         (tr_memalignhook): New function.
819         (mtrace): Register tr_memalignhook.
820         (muntrace): Deregister tr_memalignhook.
821         * malloc/malloc.c (__posix_memalign): If __memalign_hook != NULL,
822         call it directly instead of memalign_internal.
824 2003-12-17  Ulrich Drepper  <drepper@redhat.com>
826         * misc/mntent_r.c: Change encoding to match recently changed decoder.
827         Patch by Alexander Achenbach <xela@slit.de>.
829 2003-12-16  Steven Munroe  <sjmunroe@us.ibm.com>
831         * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: Correct definition of
832         vrregset_t.
834 2003-12-16  Steven Munroe  <sjmunroe@us.ibm.com>
836         * sysdeps/unix/sysv/linux/powerpc/sys/procfs.h [!__PPC64_ELF_H]: Extend
837         conditional to include typedef elf_vrreg_t.
839 2003-12-17  Paolo Bonzini  <bonzini@gnu.org>
841         * posix/regexec.c (re_search_internal): Limit search to the
842         beginning of the buffer if the initial states are empty for
843         contexts that do not include CONTEXT_BEGBUF or, if
844         !preg->newline_anchor, that do not include any one of
845         CONTEXT_BEGBUF and CONTEXT_NEWLINE.
847 2003-12-17  Andreas Jaeger  <aj@suse.de>
849         * sysdeps/generic/system.c (__libc_system): Fix typo, reported by
850         Kevin Pedretti <pedretti@ieee.org>.
852 2003-12-17  Ulrich Drepper  <drepper@redhat.com>
854         * elf/rtld.c: Don't use strong_alias to define _rtld_local.  This
855         removes the visibility attributes which might be defined earlier
856         for some gcc versions.  Instead spell out what strong_alias does
857         plus the visibility.
859 2003-12-16  Petter Reinholdtsen  <pere@hungry.com>
861         * posix/regex_internal.h: Make sure the regex code compile
862         with non-GCC compilers by hiding attributes.
864 2003-12-16  Jakub Jelinek  <jakub@redhat.com>
865             Paolo Bonzini  <bonzini@gnu.org>
867         * posix/regexec.c (group_nodes_into_DFAstates): Never produce
868         dests_ch items that are empty.
870 2003-12-14  Paolo Bonzini  <bonzini@gnu.org>
872         * posix/regexec.c (check_arrival): Remove duplicate test.
874 2003-12-15  Ulrich Drepper  <drepper@redhat.com>
876         * posix/regcomp.c: Make !RE_ENABLE_I18N work again.
877         * posix/regex_internal.c: Likewise.
878         * posix/regexec.c: Likewise.
879         Patch by Paolo Bonzini.
881 2003-12-14  Paolo Bonzini  <bonzini@gnu.org>
883         * posix/regex_internal.c (re_acquire_state_context):
884         Compare the node sets after all the other comparisons.
886 2003-12-13  Paolo Bonzini  <bonzini@gnu.org>
888         * posix/regexec.c (find_subexp_node, check_arrival,
889         check_arrival_add_next_nodes, check_arrival_expand_ecl,
890         check_arrival_expand_ecl_sub, expand_bkref_cache):
891         Rename the FL_OPEN parameter to TYPE, which is either
892         OP_OPEN_SUBEXP or OP_CLOSE_SUBEXP.  Callers adjusted.
894 2003-12-12  Andreas Jaeger  <aj@suse.de>
896         * sysdeps/unix/sysv/linux/x86_64/syscall.S: Pass also 6th argument
897         to syscall.
899 2003-12-11  Ulrich Drepper  <drepper@redhat.com>
901         * sysdeps/unix/sysv/linux/kernel-features.h: Remove __ASSUME_VSYSCALL.
902         There might always be processes which have no vDSO.
903         * sysdeps/generic/dl-sysdep.c: Remove __ASSUME_VSYSCALL uses.
904         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
906 2003-12-11  Carlos O'Donell  <carlos@baldric.uwo.ca>
908         * sysdeps/generic/dl-fptr.c (COMPARE_AND_SWAP): Pass new and old
909         in the right order.
911 2003-12-01  Jes Sorensen  <jes@wildopensource.com>
913         * rt/tst-clock.c (do_test): Print message when skipping
914         CLOCK_PROCESS_CPUTIME_ID test.
916         * sysdeps/unix/sysv/linux/ia64/clock_getcpuclockid.c: New file.
917         Provide CLOCK_PROCESS_CPUTIME_ID only if /proc/sal/itc_drift is 0.
919 2003-12-02  David Mosberger  <davidm@hpl.hp.com>
921         * sysdeps/ia64/elf/initfini.c: Add unwind info.
923         * sysdeps/ia64/dl-machine.h (elf_machine_matches_host): Mark with
924         attribute "unused".
925         (elf_machine_dynamic): Mark with attributes "unused" and "const".
926         (elf_machine_runtime_setup): Likewise.
928         * sysdeps/generic/dl-fptr.c (make_fptr_table): Mark with
929         attribute "always_inline".
930         * sysdeps/ia64/dl-machine.h (__ia64_init_bootstrap_fdesc_table):
931         Likewise.
933         * configure.in: Check whether compiler has libunwind support.
934         * config.make.in (have-cc-with-libunwind): New variable.
935         * config.h.in (HAVE_CC_WITH_LIBUNWIND): New macro.
936         * Makeconfig (gnulib): If have-cc-with-libunwind is "yes", also
937         mention -lunwind.
939 2003-11-12  David Mosberger  <davidm@hpl.hp.com>
941         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Define DO_CALL_VIA_BREAK.
942         Redefine DO_CALL to use vdso if supported, otherwise DO_CALL_VIA_BREAK.
943         Likewise for DO_INLINE_SYSCALL.  Make INTERNAL_SYSCALL use
944         DO_INLINE_SYSCALL.
946         * sysdeps/unix/sysv/linux/ia64/vfork.S: Use DO_CALL_VIA_BREAK()
947         instead of DO_CALL().
949         * sysdeps/unix/sysv/linux/ia64/clone2.S: Use break directly instead
950         of DO_CALL().
952         * sysdeps/unix/sysv/linux/ia64/brk.S (__curbrk): Restructure it
953         to take advantage of DO_CALL() macro.
954         * sysdeps/unix/sysv/linux/ia64/setcontext.S: Likewise.
955         * sysdeps/unix/sysv/linux/ia64/getcontext.S: Likewise.
957         * elf/rtld.c (dl_main): Restrict dl_sysinfo_dso check to first
958         program header.  On ia64, the check failed previously because
959         there are two program headers.
961 2003-12-10  Andreas Jaeger  <aj@suse.de>
962             Ruediger Oertel  <ro@suse.de>
964         * sysdeps/alpha/fpu/e_sqrt.c: Mark sqrt_data as used.
966 2003-12-07  Ulrich Drepper  <drepper@redhat.com>
968         * sysdeps/i386/fpu/s_nexttowardf.c: Construct overflow value correctly.
969         * sysdeps/i386/fpu/s_nexttoward.c: Likewise.
970         * sysdeps/ieee754/ldbl-128/s_nexttoward.c: Likewise.
971         * sysdeps/ieee754/ldbl-96/s_nexttoward.c: Likewise.
972         * sysdeps/generic/s_nexttowardf.c: Likewise.
973         * math/Makefile (tests): Add bug-nexttoward.
974         * math/bug-nexttoward.c: New file.
976         * sysdeps/generic/s_nextafter.c: Make sure overflow exception is set.
977         * sysdeps/ieee754/flt-32/s_nextafterf.c: Likewise.
978         * math/bug-nextafter.c (main): Add tests for overflow and negative
979         values.
981 2003-12-06  Ulrich Drepper  <drepper@redhat.com>
983         * math/Makefile (tests): Add bug-nextafter.
984         * math/bug-nextafter.c: New file.
985         * sysdeps/generic/s_nextafter.c: Construct overflow value correctly.
986         * sysdeps/ieee754/flt-32/s_nextafterf.c: Likewise.
987         * math/libm-test.inc (nextafter_test): Add test for overflow after
988         +/-FLT_MAX etc.
990 2003-12-04  Steven Munroe  <sjmunroe@us.ibm.com>
992         * sysdeps/powerpc/fpu/fgetexcptflg.c (__fegetexceptflag): Add masking
993         of fenv.
994         * sysdeps/powerpc/nofpu/fgetexcptflg.c (__fegetexceptflag): Likewise.
996 2003-12-05  Martin Schwidefsky  <schwidefsky@de.ibm.com>
998         * sysdeps/s390/s390-32/elf/setjmp.S (setjmp, __setjmp): Add END
999         statements.
1000         * sysdeps/s390/s390-64/elf/setjmp.S (setjmp, __setjmp): Likewise.
1001         * sysdeps/s390/s390-32/sysdep.h (ENTRY): Add cfi_startproc directive.
1002         (END): Add cfi_endproc directive.
1003         * sysdeps/s390/s390-64/sysdep.h (ENTRY, END): Likewise.
1004         * sysdeps/unix/sysv/linux/s390/s390-32/socket.S (__socket): Remove
1005         cfi_startproc and cfi_endproc directive.
1006         * sysdeps/unix/sysv/linux/s390/s390-64/socket.S (__socket): Likewise.
1007         * sysdeps/s390/s390-32/addmul_1.S (__mpn_addmul_1): Add CFI directives.
1008         * sysdeps/s390/s390-32/add_n.S (__mpn_add_n): Likewise.
1009         * sysdeps/s390/s390-64/add_n.S (__mpn_add_n): Likewise.
1010         * sysdeps/s390/s390-32/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
1011         Likewise.
1012         * sysdeps/s390/s390-64/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
1013         Likewise.
1014         * sysdeps/s390/s390-32/mul_1.S (__mpn_mul_1): Likewise.
1015         * sysdeps/s390/s390-32/sub_n.S (__mpn_sub_n): Likewise.
1016         * sysdeps/s390/s390-64/sub_n.S (__mpn_sub_n): Likewise.
1017         * sysdeps/unix/sysv/linux/s390/s390-32/mmap64.S (__mmap64): Likewise.
1018         * sysdeps/unix/sysv/linux/s390/s390-32/mmap.S (__mmap): Likewise.
1019         * sysdeps/unix/sysv/linux/s390/s390-64/mmap.S (__mmap): Likewise.
1020         * sysdeps/unix/sysv/linux/s390/s390-32/syscall.S (syscall): Likewise.
1021         * sysdeps/unix/sysv/linux/s390/s390-64/syscall.S (syscall): Likewise.
1022         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S (__syscall_error):
1023         Likewise.
1024         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S (__syscall_error):
1025         Likewise.
1026         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S (__clone): Add CFI
1027         directives. Move thread_start out of ENTRY/PSEUDO_END block to
1028         make backchain terminate.
1029         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S (__clone): Likewise.
1031         * sysdeps/s390/s390-32/backtrace.c (trace_arg): New structure.
1032         (unwind_backtrace, unwind_getip): New variables.
1033         (init, __backchain_backtrace, backtrace_helper): New functions.
1034         (__backtrace): Use unwind info for backtrace instead of backchain
1035         walking if the unwind functions can be found.
1036         * sysdeps/s390/s390-64/backtrace.c: Likewise.
1038         * sysdeps/unix/sysv/linux/s390/s390-32/posix_fadvise64.c: New file.
1040         * sysdeps/unix/sysv/linux/s390/sys/procfs.h (ELF_NGREG32): New #define.
1041         (elf_greg_t32, elf_gregset_t32, elf_fpregset_t32): New types.
1042         (elf_prstatus32, elf_prpsinfo32): New structures.
1043         (prgregset32_t, prfpregset32_t, prstatus32_t, prpsinfo32_t): New types.
1045         * scripts/data/c++-types-s390-linux-gnu.data: New file.
1046         * scripts/data/c++-types-s390x-linux-gnu.data: New file.
1048 2003-11-30  Petter Reinholdtsen  <pere@hungry.com>
1050         * stdlib/strfmon.c: Correct formatting of international currency
1051         values.  The international currency formatting should prefer the
1052         int_* values if they are set for a locale, and use the domestic
1053         values if the int_* values are unset.
1055 2003-12-03  Jakub Jelinek  <jakub@redhat.com>
1057         * posix/Makefile (distribute): Add BOOST.tests.
1058         (tests): Add tst-boost, depend on tst-boost-mem.
1059         (generated): Add tst-boost-mem and tst-boost.mtrace.
1060         (tst-boost-ARGS, tst-boost-ENV): Set.
1061         ($(objpfx)tst-boost-mem): New.
1062         * posix/tst-boost.c: New test.
1063         * posix/BOOST.tests: New file.
1065         * posix/Makefile (distribute): Add PCRE.tests.
1066         (tests): Add tst-pcre, depend on tst-pcre-mem.
1067         (generated): Add tst-pcre-mem and tst-pcre.mtrace.
1068         (tst-pcre-ARGS, tst-pcre-ENV): Set.
1069         ($(objpfx)tst-pcre-mem): New.
1070         * posix/tst-pcre.c: New test.
1071         * posix/PCRE.tests: New file.
1073 2003-12-02  Jakub Jelinek  <jakub@redhat.com>
1075         * intl/locale.alias: Use nb_NO instead of no_NO for bokm.l.
1077         * sysdeps/powerpc/fpu/libm-test-ulps: Regenerated.
1078         * sysdeps/s390/fpu/libm-test-ulps: Regenerated.
1080 2003-12-03  Ulrich Drepper  <drepper@redhat.com>
1082         * locale/programs/locarchive.c (enlarge_archive): Print size info
1083         only in verbose mode.
1085         * locale/iso-3166.def: Three letter code of Romania changed.
1087 2003-12-02  Roland McGrath  <roland@redhat.com>
1089         * scripts/config.sub: Update from master, timestamp='2003-10-20'.
1090         * scripts/config.guess: Update from master, timestamp='2003-10-20'.
1092 2003-11-30  Andreas Jaeger  <aj@suse.de>
1094         * config.make.in (fno-unit-at-a-time): Define.
1096         * configure.in: Add test for -fno-unit-at-a-time.
1097         Fix text for -fpie.
1099         * csu/Makefile (CFLAGS-initfini.s): Add $(fno_unit_at_a_time).
1100         * locale/Makefile (CFLAGS-loadlocale.c): Likewise.
1102 2003-12-01  Automatic
1104         * version.h (VERSION): Bump to 2.3.3.
1106 2003-11-30  Andreas Jaeger  <aj@suse.de>
1108         * stdio-common/vfprintf.c: Do not inline buffered_vfprintf to
1109         decrease stack usage.
1111 2003-11-30  Andreas Schwab  <schwab@suse.de>
1113         * sysdeps/unix/sysv/linux/m68k/sysdep.h (PSEUDO_ERRVAL)
1114         (PSEUDO_END_ERRVAL, ret_ERRVAL): Define.
1116 2003-11-29  Ulrich Drepper  <drepper@redhat.com>
1118         * misc/mntent_r.c (decode_name): Be compatible with util-linux and
1119         recognize \134 as well.
1121 2003-10-09  H.J. Lu  <hongjiu.lu@intel.com>
1123         * sysdeps/ia64/fpu/fraiseexcpt.c: Don't include <asm/fpu.h>.
1125 2003-10-08  H.J. Lu  <hongjiu.lu@intel.com>
1127         * sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h: Don't include
1128         <asm/fpu.h>.
1129         (struct ia64_fpreg): New definition.
1131         * sysdeps/unix/sysv/linux/ia64/sys/procfs.h: Don't include
1132         <asm/elf.h>.
1133         (ELF_NGREG): New #define.
1134         (ELF_NFPREG): Likewise.
1135         (elf_greg_t): New type.
1136         (elf_gregset_t): Likewise.
1137         (elf_fpreg_t): Likewise.
1138         (elf_fpregset_t): Likewise.
1140 2003-10-08  H.J. Lu  <hongjiu.lu@intel.com>
1142         * sysdeps/unix/sysv/linux/ia64/sys/ptrace.h: Include
1143         <sys/ucontext.h>.
1144         (__ptrace_request): Add PTRACE_GETREGS and PTRACE_SETREGS.
1145         (pt_all_user_regs): New type.
1147 2003-10-10  Simon Josefsson  <jas@extundo.com>
1149         * argp/argp-namefrob.h [!_LIBC]: Include mempcpy.h, strcase.h,
1150         strchrnul.h, strndup.h (from gnulib).
1151         * argp/argp-parse.c: Add alloca.h include snippet verbatim from
1152         Autoconf manual.
1153         * argp/argp-help.c: Replace alloca.h include snipper with verbatim
1154         Autoconf manual version.
1155         * argp/argp.h: Map __restrict to restrict or empty string when
1156         necessary, copied verbatim from posix/regex.h.
1158 2003-10-09  Steven Munroe  <sjmunroe@us.ibm.com>
1160         * Makefile: Allow for c++-types-$(config-machine)-$(config-os).data in
1161         addition to c++-types-$(base-machine)-$(config-os).data.
1162         * scripts/data/c++-types-powerpc-linux-gnu.data: New file.
1163         * scripts/data/c++-types-powerpc64-linux-gnu.data: New file.
1165 2003-11-28  Ulrich Drepper  <drepper@redhat.com>
1167         * misc/mntent_r.c (decode_name): Fix decoding of tab, add decoding
1168         of newline.
1169         * manual/sysinfo.texi (mtab): Adjust description accordingly.
1170         Reported by Andries.Brouwer@cwi.nl.
1172         * sysdeps/x86_64/fpu/libm-test-ulps: Add some more minor changes
1173         to compensate other setup.
1175 2003-11-27  Andreas Jaeger  <aj@suse.de>
1177         * sysdeps/x86_64/fpu/libm-test-ulps: Add ulps for new atan2 test.
1179         * math/libm-test.inc (atan2_test): Add test that run infinitly.
1180         Reported by "Willus" <etc231etc231@willus.com>.
1182 2003-11-27  Michael Matz  <matz@suse.de>
1184         * sysdeps/ieee754/dbl-64/mpsqrt.c (fastiroot): Fix 64-bit problem
1185         with wrong types.
1187 2003-11-28  Jakub Jelinek  <jakub@redhat.com>
1189         * posix/regexec.c (acquire_init_state_context): Make inline.
1190         Add always_inline attribute.
1191         (check_matching): Add BE macro.  Move if (cur_state->has_backref)
1192         into if (dfa->nbackref).
1193         (sift_states_backward): Fix comment.
1194         (transit_state): Add BE macro.  Move if (next_state->has_backref)
1195         into if (dfa->nbackref && next_state).  Don't check for next_state
1196         != NULL twice.
1197         * posix/regcomp.c (peek_token): Use opr.ctx_type instead of opr.idx
1198         for ANCHOR.
1199         (parse_expression): Only call init_word_char if word context will be
1200         needed.
1202         * posix/bug-regex11.c (tests): Add new tests.
1204         * posix/tst-regex.c: Include getopt.h.
1205         (timing): New variable.
1206         (main): Set timing to 1 if --timing argument is present.
1207         Add 2 new tests.
1208         (run_test, run_test_backwards): Handle timing.
1210 2003-11-27  Jakub Jelinek  <jakub@redhat.com>
1212         * posix/regex_internal.h (re_string_t): Remove mbs_case field.
1213         Add offsets, valid_raw_len, raw_len, raw_stop, mbs_allocated and
1214         offsets_needed fields.  Change icase, is_utf8 and map_notascii
1215         type from int bitfield to unsigned char.
1216         (MBS_ALLOCATED, MBS_CASE_ALLOCATED): Remove.
1217         (build_wcs_upper_buffer): Change prototype to return int.
1218         (re_string_peek_byte_case, re_string_fetch_byte_case): Remove
1219         defines, add prototypes.
1220         * posix/regex_internal.c (re_string_allocate): Don't initialize
1221         stop here.  Don't initialize mbs_case.  Set valid_raw_len.
1222         Use mbs_allocated instead of MBS_* macros.
1223         (re_string_construct): Don't initialize stop and valid_len here.
1224         Don't initialize mbs_case.  Use mbs_allocated instead of MBS_*
1225         macros.  Reallocate buffers if build_wcs_upper_buffer converted
1226         too few bytes.  Set valid_len to bufs_len only for single byte
1227         no translation and set in that case valid_raw_len as well.
1228         (re_string_realloc_buffers): Reallocate offsets if not NULL.
1229         Use mbs_allocated instead of MBS_ALLOCATED.  Don't reallocate
1230         mbs_case.
1231         (re_string_construct_common): Initialize raw_len, mbs_allocated,
1232         stop and raw_stop.
1233         (build_wcs_buffer): Apply pstr->trans before mbrtowc instead of
1234         after it.  Set valid_raw_len.  Don't set mbs_case.
1235         (build_wcs_upper_buffer): Return REG_NOERROR or REG_ESPACE.
1236         Only use the fast path if !pstr->offsets_needed.  Apply pstr->trans
1237         before mbrtowc instead of after it.  If upper case character
1238         uses different number of bytes than lower case, goto to the
1239         slow path.  Don't call towupper unnecessarily twice.  Set
1240         valid_raw_len as well.  Handle in the slow path the case if
1241         lower and upper case use different number of characters.
1242         Don't set mbs_case.
1243         (re_string_skip_chars): Use valid_raw_len instead of valid_len.
1244         (build_upper_buffer): Don't set mbs_case.  Add BE macro.  Set
1245         valid_raw_len.
1246         (re_string_translate_buffer): Set mbs instead of mbs_case.  Set
1247         valid_raw_len.
1248         (re_string_reconstruct): Use raw_len/raw_stop to initialize
1249         len/stop.  Clear valid_raw_len and offsets_needed when clearing
1250         valid_len.  Use mbs_allocated instead of MBS_* macros.
1251         Check original offset against valid_raw_len instead of valid_len.
1252         Remove mbs_case handling.  Adjust valid_raw_len together with
1253         valid_len.  If is_utf8 and looking for tip context, apply
1254         pstr->trans first.  If buffers start with partial multi-byte
1255         character, initialize mbs array as well if mbs_allocated.
1256         Check return value of build_wcs_upper_buffer.
1257         (re_string_peek_byte_case): New function.
1258         (re_string_fetch_byte_case): New function.
1259         (re_string_destruct): Use mbs_allocated instead of MBS_ALLOCATED.
1260         Don't free mbs_case.  Free offsets.
1261         * posix/regcomp.c (init_dfa): Only check if charset name is UTF-8
1262         if mb_cur_max == 6.
1263         * posix/regexec.c (re_search_internal): Initialize input.raw_stop
1264         as well.  Use valid_raw_len instead of valid_len when looking
1265         through fastmap.  Adjust registers through input.offsets.
1266         (extend_buffers): Allow build_wcs_upper_buffer to fail.
1267         * posix/bug-regex18.c (tests): Enable #ifdefed out tests.  Add new
1268         tests.
1270 2003-11-26  Jakub Jelinek  <jakub@redhat.com>
1272         * posix/regexec.c (check_subexp_limits): Only check close
1273         subexpression limitation if one is found.  Formatting.
1274         (sift_states_backward, check_arrival, check_arrival_add_next_nodes):
1275         Formatting.
1276         * posix/bug-regex11.c (tests): Enable most #ifdefed out tests.
1277         Add new test.
1279 2003-11-26  Ulrich Drepper  <drepper@redhat.com>
1281         * sysdeps/unix/sysv/linux/kernel-features.h
1282         (__ASSUME_PROT_GROWSUPDOWN): Define for 2.6.1 and up.
1283         * sysdeps/unix/sysv/linux/dl-execstack.c: Omit compatibility code
1284         if __ASSUME_PROT_GROWSUPDOWN is defined.
1286 2003-11-26  Andreas Jaeger  <aj@suse.de>
1288         * sysdeps/unix/sysv/linux/dl-execstack.c
1289         (_dl_make_stack_executable): Set dl_stack_flags always for
1290         success.
1292 2003-06-22  Petter Reinholdtsen  <pere@hungry.com>
1294         * locale/program/ld-monetary.c: Only check the first three
1295         characters in int_curr_symbol against ISO-4217, to make the
1296         separator character used by a locale independent of the content
1297         in iso-4217.def.
1298         * locale/iso-4217.def: Remove the space character from all
1299         currency values to get the new test code in ld-monetary.c working.
1301 2003-11-21  David Mosberger  <davidm@hpl.hp.com>
1303         * elf/soinit.c (_fini): Put _fini() in .init_array section if
1304         HAVE_INITFINI_ARRAY is defined.
1306 2003-11-25  Ulrich Drepper  <drepper@redhat.com>
1308         * sysdeps/i386/fpu/bits/mathinline.h: Introduce __libc_sqrtl symbol.
1309         Define it appropriately after last change.  Use it where __sqrtl
1310         was used.
1312 2003-11-25  H.J. Lu  <hongjiu.lu@intel.com>
1314         * sysdeps/i386/fpu/bits/mathinline.h (sqrt): Don't inline
1315         sqrt for gcc 3.3 and above.
1317 2003-11-25  Ulrich Drepper  <drepper@redhat.com>
1319         * posix/runptests.c (main): Make errors fatal.
1320         * posix/PTESTS: One test in GA135 and GA136 check functionality
1321         which seems not guaranteed.
1323 2003-11-25  Jakub Jelinek  <jakub@redhat.com>
1325         * posix/regexec.c (re_search_internal): If prune_impossible_nodes
1326         returned REG_NOMATCH, set match_last to -1.  Don't initialize
1327         pmatch[0] needlessly.  Fix comment.
1328         (prune_impossible_nodes): Don't segfault on NULL state_log entry.
1329         (set_regs): Fix comment.
1330         * posix/regcomp.c (parse_bracket_exp): Only set has_plural_match
1331         if adding both SIMPLE_BRACKET and COMPLEX_BRACKET.
1332         (build_charclass_op): Set has_plural_match if adding both
1333         SIMPLE_BRACKET and COMPLEX_BRACKET.
1334         * posix/bug-regex11.c (tests): Fix register values for one commented
1335         out test.  Add new tests.
1337         * posix/regex_internal.c (re_string_allocate): Make sure init_len
1338         is at least dfa->mb_cur_max.
1339         (re_string_reconstruct): If is_utf8, don't fall back into
1340         re_string_skip_chars just because idx points into a middle of
1341         valid UTF-8 character.  Instead, set the wcs bytes which correspond
1342         to the partial character bytes to WEOF.
1343         * posix/regexec.c (re_search_internal): Allocate input.bufs_len + 1
1344         instead of dfa->nodes_len + 1 state_log entries initially.
1345         * posix/bug-regex20.c (main): Uncomment backwards case insensitive
1346         tests.
1348 2003-11-24  Jakub Jelinek  <jakub@redhat.com>
1350         * posix/regex_internal.h (re_token_t): Add word_char bit.  Add
1351         comment.
1352         (re_dfa_t): Add sb_char field.
1353         (bitset_mask): New function.
1354         * posix/regcomp.c (free_dfa_content): Free sb_char.
1355         (init_dfa): Don't initialize word_char unnecessarily.
1356         Initialize sb_char.
1357         (duplicate_node): Don't duplicate !word_char CHARACTERs with
1358         NEXT_WORD_CONSTRAINT constraint or word_char CHARACTERs with
1359         NEXT_NOTWORD_CONSTRAINT.  Return -1 in *new_idx instead.
1360         (duplicate_node_closure): Handle clone_dest == -1 from
1361         duplicate_node.
1362         (peek_token): Initialize word_char bit.
1363         (parse_expression, parse_dup_op): Add comments.
1364         (parse_bracket_exp): Don't set bitmask bits for multi-byte char
1365         starting bytes here at the beginning.  Mask off the bits right
1366         before creating SIMPLE_BRACKET.
1367         (build_charclass_op): Likewise.
1368         * posix/regexec.c (group_nodes_into_DFAstates) <case OP_PERIOD>: Only
1369         set accept bits for single-byte characters.
1370         (group_nodes_into_DFAstates): Don't rely on characters 0 .. 127
1371         being single byte encoded and the rest multi-byte.
1372         * posix/bug-regex19.c (tests): Add new tests.
1373         (do_mb_tests): Initialize t to *test.
1374         (main): Fail even on do_mb_tests errors.
1376 2003-11-23  Ulrich Drepper  <drepper@redhat.com>
1378         * posix/regexec.c: Correct several memory allocation problems.
1379         Add more BE.
1380         * posix/regex_internal.c: Likewise.
1381         * posix/regcomp.c: Likewise.
1383         * posix/regexec.c: Add const in a number of places.
1384         * posix/regex_internal.h: Make EPSILON_BIT a macro to help
1385         debugging.  Its value isn't important.
1387 2003-11-22  Ulrich Drepper  <drepper@redhat.com>
1389         * posix/PTESTS: Fix first test of GA143.
1391 2003-11-21  Ulrich Drepper  <drepper@redhat.com>
1393         * posix/regex_internal.c (re_dfa_add_node): Add BE, reallocation
1394         isn't likely.
1396         * locale/programs/charmap.c (charmap_read): If encoding is found
1397         not ASCII compatible, set enc_not_ascii_compatible.
1398         * locale/programs/charmap.h: Declare enc_not_ascii_compatible.
1399         * locale/programs/ld-ctype.c (ctype_startup): If
1400         enc_not_ascii_compatible is set, initialize to_nonascii to 1.
1402 2003-11-22  Jakub Jelinek  <jakub@redhat.com>
1404         * elf/rtld.c (process_envvars): Only honor LD_USE_LOAD_BIAS
1405         if !__libc_enable_secure.
1407         * sysdeps/generic/ldsodefs.h (_dl_use_load_bias): New _rtld_global
1408         field.
1409         * elf/rtld.c (_rtld_global): Initialize _dl_use_load_bias field.
1410         (dl_main): Set GL(dl_use_load_bias) default.
1411         (process_envvars): Set GL(dl_use_load_bias) from LD_USE_LOAD_BIAS.
1412         Add EXTRA_LD_ENVVARS_13.
1413         * elf/dl-support.c (_dl_use_load_bias): New variable.
1414         * elf/dl-load.c (_dl_map_object_from_fd): Mask c->mapstart
1415         with GL(dl_use_load_bias).
1416         * sysdeps/generic/unsecvars.h (UNSECURE_ENVVARS): Add
1417         LD_USE_LOAD_BIAS.
1418         * sysdeps/unix/sysv/linux/dl-librecon.h (EXTRA_LD_ENVVARS): Remove.
1419         (EXTRA_LD_ENVVARS_LINUX): Renamed to...
1420         (EXTRA_LD_ENVVARS_13): ... this.  Remove case at the beginning.
1421         * sysdeps/unix/sysv/linux/i386/dl-librecon.h (EXTRA_LD_ENVVARS):
1422         Don't undefine first.  Remove EXTRA_LD_ENVVARS_LINUX.
1424 2003-11-21  Ulrich Drepper  <drepper@redhat.com>
1426         * posix/regcomp.c (duplicate_node): Remove unnecessary local variable.
1428         * posix/regcomp.c (re_dfa_add_tree_node): Make fourth parameter a
1429         pointer.  Adjust callers.
1431         * posix/regcomp.c (fetch_token): Change interface to match
1432         peek_token.  This avoids some copying and reduces code size.
1434 2003-11-21  Jakub Jelinek  <jakub@redhat.com>
1436         * posix/bug-regex19.c (tests): Add more tests.
1438         * posix/bug-regex11.c: And one more commented out test.
1440         * posix/tst-rxspencer.c (mb_tests): Don't run identical multi-byte
1441         tests multiple times unnecessarily.
1443         * posix/bug-regex19.c (BRE, ERE): Define.
1444         (tests): Add many new tests, remove UTF-8 ones.
1445         (do_one_test, do_mb_tests): New functions.
1446         (main): Rewritten using do_one_test and do_mb_tests.
1448 2003-11-20  Ulrich Drepper  <drepper@redhat.com>
1450         * posix/PTESTS: Fix first test in GA143.
1452 2003-11-20  Jakub Jelinek  <jakub@redhat.com>
1454         * posix/regex_internal.h (re_dfastate_t): Remove trtable_search.
1455         Add word_trtable.
1456         * posix/regex_internal.c (create_newstate_common, free_state):
1457         Don't free trtable_search.
1458         * posix/regexec.c (check_matching): Remove fl_search argument.
1459         (transit_state_sb): Likewise.  #ifdef out as unused.
1460         (build_trtable): Remove fl_search argument.  Set state->word_trtable
1461         and state->trtable.  Build separate word and non-word tables if
1462         multi-byte and they differ for some character.
1463         (transit_state): Remove fl_search argument.  Don't update
1464         state->trtable here.  Handle state->word_trtable.
1465         #ifdef out unused call to transit_state_sb.
1466         (re_search_internal): Update check_matching caller.
1467         (group_nodes_into_DFAstates): Don't clear non-ascii chars in accepts
1468         bitmask for multi-byte locales.
1469         * posix/bug-regex19.c (tests): Enable some commented out tests, add
1470         2 new tests.
1471         * posix/tst-rxspencer.c (mb_tests): Don't test [[=b=]] for now as
1472         multi-byte.  Don't run identical multi-byte tests multiple times
1473         unnecessarily.
1474         (main): Check setlocale return value.
1475         * posix/Makefile (tst-rxspencer-ARGS): Add --utf8 argument.
1476         (tst-rxspencer-ENV): Remove MALLOC_TRACE, add LOCPATH.
1477         ($(objpfx)tst-rxspencer-mem): Run another tst-rxspencer test
1478         here, without --utf8 argument but with MALLOC_TRACE.
1480 2003-11-19  Jakub Jelinek  <jakub@redhat.com>
1482         * posix/regexec.c (extend_buffers): Don't allocate
1483         twice as big state_log as needed.  Don't modify pstr->valid_len
1484         for mb_cur_max == 1 !icase !trans.
1486         * posix/regcomp.c (free_bin_tree): Removed.
1487         (create_tree): Add dfa argument.  Don't call re_malloc for
1488         each tree, instead allocate from str_tree_storage.
1489         (re_dfa_add_tree_node): New function.
1490         (free_dfa_content): Handle freeing if dfa->nodes == NULL
1491         or dfa->state_table == NULL.
1492         (re_compile_internal): Call free_dfa_content if init_dfa
1493         fails.  Call free_workarea_compile, re_string_destruct
1494         and free_dfa_content for most of the other failure paths.
1495         (init_dfa): Initialize str_tree_storage_idx.
1496         Don't clear any fields on allocation failure.
1497         (free_workarea_compile): Free str_tree_storage chunks
1498         instead of free_bin_tree (dfa->str_tree).
1499         (parse): Call re_dfa_add_tree_node instead of re_dfa_add_node
1500         followed by create_tree.  Add dfa argument to remaining
1501         create_tree calls.  Remove new_idx variable.  Remove calls
1502         to free_bin_tree.
1503         (parse_reg_exp, parse_branch, parse_expression, parse_sub_exp,
1504         parse_dup_op, parse_bracket_exp, build_charclass_op): Likewise.
1505         (duplicate_tree): Remove calls to free_bin_tree, add dfa
1506         argument to create_tree.
1507         * posix/regex_internal.h (BIN_TREE_STORAGE_SIZE): Define.
1508         (bin_tree_storage_t): New type.
1509         (re_dfa_t): Add str_tree_storage and str_tree_storage_idx
1510         fields.
1511         * posix/Makefile (tests): Add bug-regex21.
1512         (generated): Add bug-regex21-mem, bug-regex21.mtrace,
1513         tst-rxspencer-mem and tst-rxspencer.mtrace.
1514         (tests): Depend on $(objpfx)bug-regex21-mem
1515         and $(objpfx)tst-rxspencer-mem.
1516         (bug-regex21-ENV, tst-rxspencer-ENV): Set.
1517         ($(objpfx)bug-regex21-mem, $(objpfx)tst-rxspencer-mem): New.
1518         * posix/tst-rxspencer.c (main): Add call to mtrace.
1519         Free line at the end.
1520         * posix/bug-regex21.c: New test.
1522 2003-11-19  Ulrich Drepper  <drepper@redhat.com>
1524         * posix/bug-regex20.c: Correct invalid UTF-8 sequences.
1526         * posix/regex_internal.c (build_wcs_upper_buffer): If mbrtowc
1527         fails, just use the byte, do no fancy conversions.
1529         * posix/regex_internal.h (re_string_first_byte): Use ->valid_len
1530         not ->len.
1531         (re_string_is_single_byte_char): Likewise.
1533 2003-11-18  Ulrich Drepper  <drepper@redhat.com>
1535         * posix/regexec.c (get_subexp): After calling get_subexp_sub
1536         reload buf and bkref_str.  Little optimization by avoiding memcmp.
1538 2003-11-14  David Mosberger   <davidm@hpl.hp.com>
1540         * sysdeps/unix/sysv/linux/ia64/sysdep.h
1541         (GAS_ALIGN_BREAKS_UNWIND_INFO): Define this macro to indicate
1542         that all existing GAS versions have a problem with .align inside
1543         a function.
1544         * sysdeps/ia64/memccpy.S: Work around GAS_ALIGN_BREAKS_UNWIND_INFO bug.
1545         * sysdeps/ia64/memcpy.S: Likewise.
1546         * sysdeps/ia64/memset.S: Likewise.
1547         * sysdeps/ia64/memmove.S: Likewise.  Also move the jump-table to
1548         out of .text into .rodata, where it belongs.
1550         * sysdeps/unix/sysv/linux/ia64/pipe.S: There is no need to
1551         save/restore input-arguments, because they're necessarily
1552         preserved by the kernel to support syscall-restart.
1554 2003-11-18  Jakub Jelinek  <jakub@redhat.com>
1556         * posix/regex_internal.h (re_token_type_t): Remove unused ALT,
1557         END_OF_RE_TOKEN_T and SUBEXP.  Reorder values.  Add OP_UTF8_PERIOD
1558         and EPSILON_BIT.
1559         (IS_EPSILON_NODE): Just test if EPSILON_BIT is set.
1560         (ACCEPT_MB_NODE): Return 1 for OP_UTF8_PERIOD as well.
1561         * posix/regex_internal.c (create_ci_newstate, create_cd_newstate):
1562         Handle OP_UTF8_PERIOD.
1563         (re_string_reconstruct): Set valid_len for single byte char searching
1564         with no translation and case sensitivity.
1565         * posix/regcomp.c (re_compile_fastmap_iter, calc_first): Handle
1566         OP_UTF8_PERIOD.
1567         (re_compile_internal): Don't call optimize_utf8 if preg->translate
1568         != NULL.
1569         (optimize_utf8): Remove BACK_SLASH case.
1570         Transform OP_PERIOD into OP_UTF8_PERIOD if the searching can be
1571         optimized.
1572         (parse_bracket_exp): Don't create SIMPLE_BRACKET if it doesn't have
1573         any bits set and COMPLEX_BRACKET is used.
1574         * posix/regexec.c (transit_state_mb): Fix comment typo.
1575         (group_nodes_into_DFAstates, check_node_accept): Handle
1576         OP_UTF8_PERIOD.
1577         (check_node_accept_bytes): Likewise.  Reorder slightly so that
1578         re_string_char_size_at and re_string_elem_size_at are called
1579         only when needed.
1580         * posix/bug-regex20.c (BRE, ERE): Define.
1581         (tests): Use them to make lines shorter.  Expect . to be
1582         optimized.  Add lots of new tests.
1583         (main): Run (ATM just case sensitive) test with backwards searching
1584         as well.
1586 2003-11-18  Jakub Jelinek  <jakub@redhat.com>
1588         * io/bug-ftw4.c: Include string.h.
1589         * posix/fnmatch.c (mbsinit): Remove define.
1591 2003-11-17  Jakub Jelinek  <jakub@redhat.com>
1593         * posix/regcomp.c (optimize_utf8): Optimize multi-byte chars as
1594         well.
1595         * posix/bug-regex20.c (tests): Add new tests.  Multi-byte char
1596         followed by dup operator is expected to be optimized.
1598         * posix/regexec.c (check_node_accept_bytes): Move nrules and j
1599         variables to the block where they are only used, initialize
1600         nrules only immediately before using it.
1602 2003-11-15  Andreas Jaeger  <aj@suse.de>
1604         * sysdeps/x86_64/fpu/s_scalbnl.S: New file.
1605         * sysdeps/x86_64/fpu/s_truncl.S: New file.
1606         * sysdeps/x86_64/fpu/s_nearbyintl.S: New file.
1607         * sysdeps/x86_64/fpu/s_floorl.S: New file.
1608         * sysdeps/x86_64/fpu/s_ilogbl.S: New file.
1609         * sysdeps/x86_64/fpu/e_remainderl.S: New file.
1611         * math/libm-test.inc (floor_test): Test also Â±0.25.
1612         (ceil_test): Test -0.25.
1614 2003-11-17  Ulrich Drepper  <drepper@redhat.com>
1616         * sysdeps/posix/getaddrinfo.c: Add support for destination address
1617         selection according to RFC 3484.
1619 2003-11-15  Ulrich Drepper  <drepper@redhat.com>
1621         * posix/regex_internal.h: Add forward declaration of re_dfa_t.
1622         Replace last two parameters of re_string_allocate and
1623         re_string_construct with pointer to DFA.
1624         (re_dfa_t): Add map_notascii field.
1625         * posix/regcomp.c (re_compile_internal): Add call of
1626         re_string_construct.
1627         (init_dfa): Initialize map_notascii.
1628         * posix/regex_internal.c: Adjust definitions of re_string_allocate
1629         and re_string_construct.
1630         Pass DFA to re_string_construct.  Adjust definition.  Initialize
1631         map_notascii field.
1632         (build_wcs_upper_buffer): If map_notascii is zero use simplified
1633         method to map ASCII values to upper case.
1634         * posix/regex.c: Include localeinfo.h.
1635         * posix/regexec.c: Adjust call of re_string_allocate.
1637         * locale/langinfo.h: Add _NL_CTYPE_MAP_TO_NONASCII.
1638         * locale/localeinfo.h (LIMAGIC): Change value.
1639         * locale/categories.def. Add entry for _NL_CTYPE_MAP_TO_NONASCII.
1640         * locale/C-ctype.h: Likewise.
1641         * locale/programs/ld-ctype.c: Compute whether any mapping maps from
1642         ASCII to non-ASCII value.  Write out that value.
1644         * wcsmbs/mbsinit.c: Undef mbsinit and __mbsinit.
1645         * include/wchar.h: Provide inline versions of mbsinit and __mbsinit.
1647 2003-11-14  Jakub Jelinek  <jakub@redhat.com>
1649         * posix/tst-rxspencer.c (check_match): @ without any following
1650         characters must match only end of string.
1651         (main): Fix filename in error message.
1653 2003-11-12  David Mosberger  <davidm@hpl.hp.com>
1655         * sysdeps/ia64/dl-machine.h: Force inlining of
1656         elf_machine_runtime_setup().
1658 2003-11-13  Andreas Jaeger  <aj@suse.de>
1660         * math/Makefile (CFLAGS-test-float.c): Add -fno-builtin.
1661         (CFLAGS-test-double.c): Likewise.
1662         (CFLAGS-test-ldouble.c): Likewise.
1663         (CPPFLAGS-test-ifloat.c): Likewise.
1664         (CPPFLAGS-test-idouble.c): Likewise.
1665         (CPPFLAGS-test-ildoubl.c): Likewise.
1667         * math/libm-test.inc (ceil_test): Test ceil (0.25).
1669 2003-11-04  Ulrich Drepper  <drepper@redhat.com>
1671         * sysdeps/unix/sysv/linux/ifaddrs.c: Make sure it's the kernel who
1672         sends the netlink data.
1673         * sysdeps/unix/sysv/linux/check_pf.c: Likewise.
1675 2003-11-13  Jakub Jelinek  <jakub@redhat.com>
1677         * posix/regcomp.c (optimize_utf8): Optimize even if SIMPLE_BRACKET
1678         with no bits set for >= 0x80 chars is seen.
1679         * posix/bug-regex20.c (tests): Add new tests.  Expect [ABC] to be
1680         optimized.
1681         (main): Run all tests with RE_ICASE as well.
1683 2003-11-13  Ulrich Drepper  <drepper@redhat.com>
1685         * posix/Makefile: Add rules to build and run tst-rxspencer.
1686         (distribute): Add rxspencer/tests and rxspencer/COPYRIGHT.
1687         * posix/tst-rxspencer.c: New file.
1688         * posix/rxspencer/tests: New file.
1689         * posix/rxspencer/COPYRIGHT: New file.
1690         Patch mostly by Jakub Jelinek.
1692         * posix/regcomp.c (parse_bracket_exp): Don't check for range if
1693         this is no option given the first token.
1695         * posix/regcomp.c (parse_bracket_exp): Fix test for EOS after
1696         hyphen in range expression.  Return EBRACK in this case.
1698         * posix/regcomp.c (parse_bracket_element): Reject hyphens unless
1699         we expect them or it's the last element in the bracket expression.
1700         Indicated by new parameter.  Adjust all callers.
1702         * posix/runtests.c (run_a_test): If regcomp failed, reset last_pattern.
1703         Prettier error messages.
1705         * posix/regcomp.c (parse_dup_op): Fail with REG_BADBR is first
1706         number in {,} expression is larger.
1708 2003-11-13  Andreas Jaeger  <aj@suse.de>
1710         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_TGKILL):
1711         Define appropriately for x86_64.
1712         (__ASSUME_UTIMES): Likewise.
1713         (__ASSUME_CLONE_THREAD_FLAGS): Likewise.
1715         * sysdeps/x86_64/fpu/s_ceill.S: New file.
1717 2003-11-13  Ulrich Drepper  <drepper@redhat.com>
1719         * posix/regcomp.c (parse_expression): In BRE consecutive
1720         duplications are not allowed.
1722 2003-11-12  Ulrich Drepper  <drepper@redhat.com>
1724         * posix/regcomp.c (parse_bracket_exp): If end of expression is
1725         seen, return EBRACK error, not BADPAT.
1727         * posix/regcomp.c (parse_expression): If token is OP_OPEN_DUP_NUM
1728         and RE_CONTEXT_INVALID_DUP syntax flag is set, fail.
1729         * posix/regex.h (RE_CONTEXT_INVALUD_OPS): New macro.
1730         (RE_SYNTAX_POSIX_BASIC): Use RE_CONTEXT_INVALUD_OPS.
1732         * posix/regcomp.c (parse_sub_exp): In case of not-matching ( )
1733         return REG_EPAREN.
1735         * posix/PTESTS: Cleanup.  Fix typoes.  Correct bugs in 2003.2.
1736         * posix/runptests.c (main): Handle comments.
1737         * posix/PTESTS2C.sed: Handle comments.
1739 2003-11-12  Jakub Jelinek  <jakub@redhat.com>
1741         * posix/regcomp.c (optimize_utf8): New function.
1742         (re_compile_fastmap_iter): Use dfa->mb_cur_max > 1 instead
1743         of !icase.
1744         (re_compile_internal): Call optimize_utf8 if not case insensitive
1745         and in UTF-8 locale.
1746         * posix/regex_internal.h: Ifdef out some prototypes if
1747         RE_NO_INTERNAL_PROTOTYPES is defined to shut up warnings.
1748         * posix/Makefile (tests): Add bug-regex20.
1749         (bug-regex20-ENV): Add LOCPATH.
1750         * posix/bug-regex20.c: New test.
1752 2003-11-12  Jakub Jelinek  <jakub@redhat.com>
1754         * io/ftw.c (NFTW_NEW_NAME, NFTW_OLD_NAME): Add prototypes.
1756 2003-11-12  Jakub Jelinek  <jakub@redhat.com>
1758         * posix/tst-regex.c (umemlen): New variable.
1759         (test_expr): Add expectedicase argument.  Test case insensitive
1760         searches as well as backwards searches (case sensitive and
1761         insensitive) too.
1762         (run_test): Add icase argument.  Use it to compute regcomp flags.
1763         (run_test_backwards): New function.
1764         (main): Cast read to size_t to avoid warning.  Set umemlen.
1765         Add expectedicase arguments to test_expr.
1766         * posix/regex_internal.c (re_string_reconstruct): If is_utf8,
1767         find previous character by walking back instead of converting
1768         all chars from beginning.
1770 2003-11-12  Jakub Jelinek  <jakub@redhat.com>
1772         * posix/regex_internal.h (struct re_string_t): Add is_utf8
1773         and mb_cur_max fields.
1774         (struct re_dfa_t): Likewise.  Reorder fields to make structure
1775         smaller on 64-bit arches.
1776         (re_string_allocate, re_string_construct): Add mb_cur_max and
1777         is_utf8 arguments.
1778         (re_string_char_size_at, re_string_wchar_at): Use pstr->mb_cur_max
1779         instead of MB_CUR_MAX.
1780         * posix/regcomp.c (re_compile_fastmap_iter): Use dfa->mb_cur_max
1781         instead of MB_CUR_MAX.
1782         (re_compile_internal): Pass new arguments to re_string_construct.
1783         (init_dfa): Initialize mb_cur_max and is_utf8 fields.
1784         (peek_token, peek_token_bracket): Use input->mb_cur_max instead
1785         of MB_CUR_MAX.
1786         (parse_expression, parse_bracket_exp, parse_charclass_op): Use
1787         dfa->mb_cur_max instead of MB_CUR_MAX.
1788         * posix/regex_internal.c (re_string_construct_common): Add
1789         mb_cur_max and is_utf8 arguments.  Initialize fields with them.
1790         (re_string_allocate, re_string_construct): Add mb_cur_max and
1791         is_utf8 arguments, pass them to re_string_construct_common.
1792         Use mb_cur_max instead of MB_CUR_MAX.
1793         (re_string_realloc_buffers): Use pstr->mb_cur_max instead of
1794         MB_CUR_MAX.
1795         (re_string_reconstruct): Likewise.
1796         (re_string_context_at): Use input->mb_cur_max instead of
1797         MB_CUR_MAX.
1798         (create_ci_newstate, create_cd_newstate): Use dfa->mb_cur_max
1799         instead of MB_CUR_MAX.
1800         * posix/regexec.c (re_search_internal): Likewise.
1801         Pass new arguments to re_string_allocate.
1802         (check_matching, transit_state_sb): Use dfa->mb_cur_max instead of
1803         MB_CUR_MAX.
1804         (extend_buffers): Use pstr->mb_cur_max instead of MB_CUR_MAX.
1806 2003-11-12  Jakub Jelinek  <jakub@redhat.com>
1808         * posix/Makefile (tests): Add bug-regex19.
1809         (bug-regex19-ENV): Add LOCPATH.
1810         * posix/bug-regex19.c: New test.
1812 2003-11-11  Jakub Jelinek  <jakub@redhat.com>
1814         * posix/regcomp.c (re_compile_fastmap_iter): Handle RE_ICASE
1815         with MB_CUR_MAX > 1 locales in the fastmap.
1817 2003-11-11  Jakub Jelinek  <jakub@redhat.com>
1819         * posix/regex_internal.c (build_wcs_buffer): Fix comment typo.
1820         (build_wcs_upper_buffer): Likewise.  Use towupper for wchar_t instead
1821         of toupper.
1822         * posix/Makefile (tests): Add bug-regex17 and bug-regex18.
1823         (bug-regex17-ENV, bug-regex18-ENV): Add LOCPATH.
1824         * posix/bug-regex17.c: New file
1825         * posix/bug-regex18.c: New file.
1827 2003-10-08  Thorsten Kukuk  <kukuk@suse.de>
1829         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h (pread, pwrite):
1830         Define __NR_pread/__NR_pwrite if not done in kernel headers
1832 2003-11-11  Roland McGrath  <roland@redhat.com>
1834         * manual/xtract-typefun.awk: Swallow [(){}*] from function names.
1836         * manual/Makefile (info): Don't depend on dir-add.info.
1837         (libc.dvi libc.pdf libc.info): Depend on dir-add.texi.
1838         (dir-add.info): Target removed, replaced with ...
1839         (dir-add.texi): New target.
1840         (distribute): Add it.
1841         (install): Remove variant with --section arguments.
1842         Let the @dircategory directives do their work.
1843         (mostlyclean): Don't remove dir-add.info here.
1844         (realclean): Remove dir-add.texi here.
1845         * manual/libc.texinfo: @include dir-add.texi
1846         * configure.in: Remove check for old Debian install-info.
1847         * configure: Regenerated.
1848         * config.make.in (OLD_DEBIAN_INSTALL_INFO): Variable removed.
1850 2003-11-08  Andreas Schwab  <schwab@suse.de>
1852         * scripts/data/c++-types-ia64-linux-gnu.data: New file.
1854 2003-11-10  Carlos O'Donell  <carlos@baldric.uwo.ca>
1856         * io/ftwtest-sh: Fix nested sed commands.
1858 2003-11-10  Jakub Jelinek  <jakub@redhat.com>
1860         * posix/regex_internal.h (re_string_char_size_at): Don't look beyond
1861         valid_len wide chars.
1863 2003-11-09  Roland McGrath  <roland@redhat.com>
1865         * manual/examples/dir2.c (one): Add const to argument type.
1866         Reported by J de Haan <j.de.haan@home.nl>.
1868 2003-11-07  Ulrich Drepper  <drepper@redhat.com>
1870         * po/pl.po: Update from translation team.
1872 2003-11-07  Jakub Jelinek  <jakub@redhat.com>
1874         * io/ftw.c (NFTW_OLD_NAME, NFTW_NEW_NAME): Define.
1875         (ftw_dir, ftw_startup): Add __attribute ((noinline)).
1876         (NFTW_OLD_NAME, NFTW_NEW_NAME): New functions.
1877         (NFTW_NAME): Only define if !_LIBC, add versioned_symbol
1878         and compat_symbol.
1879         * io/ftw64.c (NFTW_OLD_NAME, NFTW_NEW_NAME): Define.
1880         * io/Versions (libc): Export nftw@@GLIBC_2.3.3
1881         and nftw64@@GLIBC_2.3.3.
1883         * io/ftw.h (FTW_ACTIONRETVAL): New flag.
1884         (FTW_CONTINUE, FTW_STOP, FTW_SKIP_SUBTREE, FTW_SKIP_SIBLINGS): New.
1885         * io/ftw.c (ftw_dir): Add old_dir argument.
1886         Clear result if it was FTW_SKIP_SIBLINGS after processing all
1887         dir entries.  Change cwd back if old_dir != NULL.
1888         (process_entry): Adjust caller.  Don't change cwd back here.
1889         Change FTW_SKIP_SUBTREE result to 0.
1890         (ftw_startup): Adjust ftw_dir caller.
1891         Clear result if it was FTW_SKIP_SUBTREE or FTW_SKIP_SIBLINGS.
1892         * io/ftwtest.c (skip_subtree, skip_siblings): New variables.
1893         (options, main): Add --skip-subtree and --skip-siblings options.
1894         (cb): Use return FTW_CONTINUE instead of return 0.
1895         Handle --skip-subtree and --skip-siblings.
1896         * io/ftwtest-sh: Add tests for FTW_ACTIONRETVAL.
1897         * manual/filesys.texi: Document FTW_ACTIONRETVAL.
1899 2003-11-04  Jakub Jelinek  <jakub@redhat.com>
1901         * io/ftw.c (ftw_dir): Close dir if callback with FTW_D type returns
1902         non-zero.
1903         * io/Makefile (tests): Add bug-ftw4.
1904         * io/bug-ftw4.c: New test.
1906 2003-10-27  Daniel Jacobowitz  <drow@mvista.com>
1908         * libio/libioP.h [_IO_USE_OLD_IO_FILE]
1909         (struct _IO_FILE_complete_plus): New type.
1910         * libio/oldiofopen.c (_IO_old_fopen): Use _IO_FILE_complete_plus.
1911         * libio/oldiofdopen.c (_IO_old_fdopen): Likewise.
1912         * libio/oldiopopen.c (struct _IO_proc_file, _IO_old_popen): Likewise.
1913         Call _IO_old_init instead of _IO_init.
1915 2003-11-03  Ulrich Drepper  <drepper@redhat.com>
1917         * intl/locale.alias: nb_NO is now the correct name, not no_NO.
1919         * locale/iso-639.def: Add Blin.
1920         Patch by Daniel Yacob <locales@geez.org>.
1922 2003-10-31  Steven Munroe  <sjmunroe@us.ibm.com>
1924         * sysdeps/powerpc/powerpc32/strncmp.S: New File.
1925         * sysdeps/powerpc/powerpc64/strncmp.S: New File.
1927 2003-11-01  Randolph Chung  <tausq@debian.org>
1929         * sysdeps/unix/sysv/linux/hppa/sysdep.h (LOAD_ARGS_0, LOAD_ARGS_1,
1930         LOAD_ARGS_2, LOAD_ARGS_3, LOAD_ARGS_4, LOAD_ARGS_5, LOAD_ARGS_6):
1931         Add missing parentheses.
1933 2003-11-01  Roland McGrath  <roland@redhat.com>
1935         * libio/bug-ftell.c (do_test): Add a cast.
1937 2003-09-26  Daniel Jacobowitz  <drow@mvista.com>
1939         * Makerules (shlib.lds): Make sure that ld doesn't try to link
1940         anything while generating the linker script.
1942 2003-10-31  Roland McGrath  <roland@redhat.com>
1944         * locale/lc-ctype.c (_nl_postload_ctype): Update _nl_global_locale's
1945         special members.
1947 2003-10-29  Ulrich Drepper  <drepper@redhat.com>
1949         * po/be.po: Update from translation team.
1951 2003-10-27  Ulrich Drepper  <drepper@redhat.com>
1953         * elf/rtld.c (map_doit): Pass __RTLD_OPENEXEC in last parameter to
1954         _dl_map_object.
1956         * elf/sprof.c (load_shobj): Use l_map_start not l_addr to locate
1957         ELF header.
1959         * inet/rcmd.c (__validuser2_sa): Remove unnecessary code to skip
1960         rest of line.  We use getline which means this cannot happen.
1962 2003-10-26  Ulrich Drepper  <drepper@redhat.com>
1964         * sysdeps/unix/sysv/linux/internal_statvfs.c (__internal_statvfs):
1965         Avoid infinite loops in case the mounts file is hosed.
1966         * io/Makefile: Add rules to build and run tst-statvfs.
1967         * io/tst-statvfs.c: New file.
1969         * include/dlfcn.h (__RTLD_OPENEXEC): Define.
1970         * elf/dl-load.c (_dl_map_object_from_fd): Don't allow loading
1971         executables unless __RTLD_OPENEXEC flag is present.
1972         * elf/rtld.c (dl_main): Pass __RTLD_OPENEXEC flag to
1973         _dl_map_object when loading the executable.
1975         * sysdeps/generic/glob.c (glob): Handle GLOB_BRACE and escaping
1976         correctly.
1977         * posix/globtest.sh: Add tests for GLOB_BRACE and escaping.
1979         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Default
1980         reverse lookup format for IPv6 addresses is using bitstring and
1981         .ip6.arpa suffix.
1982         * resolv/ns_name.c: Implement encoding and decoding bitstring in
1983         hex format.
1985 2003-10-23  Jakub Jelinek  <jakub@redhat.com>
1987         * locale/programs/locale.c (show_info): Fix printing word values on
1988         64-bit big-endian architectures.
1990 2003-10-19  Bruno Haible  <bruno@clisp.org>
1992         * intl/hash-string.c (hash_string): Zero-extend each char from the
1993         string; the old code did a sign-extend on some platforms.
1995 2003-10-22  Steven Munroe  <sjmunroe@us.ibm.com>
1997         * sysdeps/powerpc/powerpc32/Makefile (+cflags, asm-CPPFLAGS): Don't
1998         append options to these.
1999         * sysdeps/powerpc/powerpc64/Makefile (+cflags, asm-CPPFLAGS): Likewise.
2001 2003-10-18  Carlos O'Donell  <carlos@baldric.uwo.ca>
2003         * sysdeps/unix/sysv/linux/hppa/sysdep.h: Fix merge error.
2005 2003-10-15  Roland McGrath  <roland@redhat.com>
2007         * elf/dl-iteratephdr.c [! SHARED] (dl_iterate_phdr): New function.
2008         Fake an entry for the main executable and then call __dl_iterate_phdr.
2009         * elf/Makefile (routines): Remove dl-iteratephdr-static.
2010         (elide-routines.os): Likewise.
2011         (CFLAGS-dl-iterate-phdr-static.c): Variable removed.
2012         * sysdeps/generic/dl-iteratephdr-static.c: File removed.
2013         * sysdeps/unix/sysv/linux/ia64/dl-iteratephdr-static.c: File removed.
2015 2003-10-15  Jakub Jelinek  <jakub@redhat.com>
2017         * elf/rtld.c (print_statistics): Print also number of relative
2018         relocations.
2020 2003-10-12  Carlos O'Donell  <carlos@baldric.uwo.ca>
2022         * sysdeps/hppa/sysdep.h: Undef JUMPTARGET before use.
2023         * sysdeps/unix/sysv/linux/hppa/sysdep.h: Define PSEUDO_ERRVAL,
2024         SYSCALL_ERROR_LABEL under all conditions, INTERNAL_SYSCALL_DECL,
2025         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO, INTERNAL_SYSCALL,
2026         and undef JUMPTARGET before use.
2027         [PIC]: Save pic register around syscall.
2028         * sysdeps/unix/sysv/linux/hppa/sysdep.c (syscall):
2029         Cleanup asm statment.
2031 2003-10-13  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
2033         * sysdeps/unix/sysv/linux/sh/sysdep.h (DO_CALL): Add SYSCALL_INST_PAD
2034         after trapa instruction.
2036 2003-10-09  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
2038         * sysdeps/unix/sysv/linux/sh/syscalls.list: Add waitpid.
2040 2003-10-10  Carlos O'Donell  <carlos@baldric.uwo.ca>
2042         * sysdeps/hppa/Makefile (CFLAGS-malloc.c): Variable removed.
2044 2003-10-09  Roland McGrath  <roland@redhat.com>
2046         * elf/rtld.c (dl_main): Don't set l_name for sysinfo DSO, since there
2047         is no file to name.
2049 2003-10-08  Jakub Jelinek  <jakub@redhat.com>
2051         * sysdeps/generic/dl-sysdep.c (_dl_important_hwcaps): Don't generate
2052         two identical copies of strings.
2054 2003-10-06  Ulrich Drepper  <drepper@redhat.com>
2056         * posix/bug-regex11.c: Add some more tests which fail so far.
2057         Disable them.  Patch by Paolo Bonzini <bonzini@gnu.org>.
2059 2003-10-05  Paolo Bonzini  <bonzini@gnu.org>
2061         * posix/bug-regex11.c: Add more backreference-related test cases.
2062         (main): Show the failing regex in the error messages.
2063         * posix/regexec.c (check_dst_limits_calc_pos):
2064         Simplify some nested conditionals.  Replace if's with a switch
2065         statement.
2066         (check_dst_limits_calc_pos <TYPE_BKREF>): Rename parameter NODE to
2067         FROM_NODE, it shadows a local variable; don't recurse if FROM_NODE
2068         does not change in the recursive invocation, fixing an infinite loop
2069         in the ()\1*\1* regex.
2070         (sift_states_backward): Fix function comment.
2071         * posix/regcomp.c (calc_epsdest): Add an assertion.
2073 2003-10-06  Ulrich Drepper  <drepper@redhat.com>
2075         * manual/examples/testopt.c: Fix warnings.  Better error message
2076         for missing -c argument.
2077         Patch mostly by Gitonga Marete <bgmarete@comcast.net>.
2079         * timezone/asia: Update from tzdata2003d.
2080         * timezone/australasia: Likewise.
2081         * timezone/backward: Likewise.
2082         * timezone/europe: Likewise.
2083         * timezone/iso3166.tab: Likewise.
2084         * timezone/northamerica: Likewise.
2085         * timezone/southamerica: Likewise.
2086         * timezone/zone.tab: Likewise.
2088 2003-10-05  Jakub Jelinek  <jakub@redhat.com>
2090         * sysdeps/ia64/backtrace.c: New file.
2091         * sysdeps/x86_64/backtrace.c: New file.
2092         * sysdeps/generic/unwind.h (_Unwind_Trace_Fn): New type.
2093         (_Unwind_Backtrace): New prototype.
2095 2003-10-03  Ulrich Drepper  <drepper@redhat.com>
2097         * sysdeps/i386/elf/bsd-setjmp.S: Use linkonce section for PIC stub.
2098         * sysdeps/i386/elf/setjmp.S: Likewise.
2100 2003-10-02  Roland McGrath  <roland@redhat.com>
2102         * argp/argp-help.c (__argp_short_program_name): Move inside [! _LIBC].
2103         * argp/argp-namefrob.h
2104         [_LIBC || HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME]
2105         (__argp_short_program_name): Don't declare fn, define it as a macro.
2107 2003-08-22  Simon Josefsson  <jas@extundo.com>
2109         * argp/argp-fmtstream.h [!__attribute__]: Define to nothing.
2111         * argp/argp-help.c: Don't include malloc.h, some platforms
2112         complain and it doesn't appear to be used.
2113         [!_LIBC && HAVE_STRERROR_R && !HAVE_DECL_STRERROR_R]: Declare
2114         strerror_r.
2115         [!_LIBC && !HAVE_STRERROR_R && !HAVE_DECL_STRERROR]: Declare
2116         strerror.
2117         (hol_entry_long_iterate): Change __attribute to __attribute__.
2118         (_help, __argp_error, __argp_failure) [!_LIBC && (HAVE_FLOCKFILE
2119         && HAVE_FUNLOCKFILE)]: Protect call to flockfile and funlockfile.
2120         (__argp_basename) [!_LIBC]: New. Taken from LSH, by Niels Möller,
2121         modified after comments from Ulrich Drepper.
2122         (__argp_short_program_name): Ditto.
2123         (__argp_state_help, __argp_error, __argp_failure): Use it.
2124         (__argp_failure): Use strerror when necessary.
2126         * argp/argp-namefrob.h (__flockfile, __funlockfile, __mempcpy)
2127         (__strchrnul, __strerror_r, __strndup) [!_LIBC]: Remove __-prefix.
2128         (clearerr_unlocked, feof_unlocked, ferror_unlocked)
2129         (fflush_unlocked, fgets_unlocked, fputc_unlocked, fputs_unlocked)
2130         (fread_unlocked, fwrite_unlocked, getc_unlocked, getchar_unlocked)
2131         (putc_unlocked, putchar_unlocked) [!_LIBC && !HAVE_DECL_*]: Map to
2132         non-unlocked functions.
2133         [!_LIBC]: Add prototypes for __argp_basename and
2134         __argp_short_program_name.
2136         * argp/argp-parse.c (argp_default_parser): Only use
2137         program_invocation{_short,}_name if declared.
2138         (parser_init): Use __argp_short_program_name.
2140         * argp/argp-xinl.c [_LIBC || HAVE_FEATURES_H]: Add CPP check for
2141         '#include features.h'.
2143         * argp/argp.h [!__attribute__]: Define to nothing.
2145 2003-09-26  Paolo Bonzini  <bonzini@gnu.org>
2147         * posix/regcomp.c (parse_sub_exp): Pass RE_CARET_ANCHORS_HERE
2148         for the first token in a subexpression as well.
2150 2003-10-02  Jakub Jelinek  <jakub@redhat.com>
2152         * posix/regcomp.c (peek_token): Add 2003-09-20 changes for anchor
2153         handling again.
2154         (parse_reg_exp): Likewise.
2155         * posix/regex.h (RE_CARET_ANCHORS_HERE): Define.
2157         * posix/bug-regex11.c (tests): Add new tests.
2158         * posix/bug-regex12.c (tests): Add new test.
2160 2003-10-01  Thorsten Kukuk  <kukuk@suse.de>
2162         * elf/dl-reloc.c (_dl_allocate_static_tls): Move definition of
2163         variables only used if TLS_DTV_AT_TP is defined into the #if branch.
2165 2003-10-02  Jeroen Dekkers  <jeroen@dekkers.cx>
2167         * sysdeps/mach/hurd/malloc-machine.h: Copy the tsd code from
2168         the old thread-m.h header too.
2170 2003-10-02  Ulrich Drepper  <drepper@redhat.com>
2172         * sysdeps/unix/sysv/linux/ia64/bits/sigstack.h (MINSIGSTKSZ): Go
2173         back to 131027 since this is what the kernel enforces.
2175         * inet/getnameinfo.c: Move domain out of nrl_domainname scope and
2176         define it with libc_freeres_ptr.
2178 2003-10-01  Roland McGrath  <roland@redhat.com>
2180         * elf/rtld.c (dl_main): Add cast in last change.
2182 2003-09-10  Chris Demetriou  <cgd@broadcom.com>
2184         * sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h: Remove
2185         "#if 0" surrounding most of contents.
2186         (SYSCALL_ERROR_LABEL): Define.
2187         (__SYSCALL_CLOBBERS): Add $10.
2188         (internal_syscall7): Remove.
2189         * sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h: Likewise.
2191 2003-09-30  Ulrich Drepper  <drepper@redhat.com>
2193         * elf/rtld.c (dl_main): Also set l_map_start.
2195 2003-09-30  Daniel Jacobowitz  <drow@mvista.com>
2197         * elf/rtld.c (dl_main): Set l_libname and l_name for the sysinfo DSO
2198         to work around kernel problem.
2200 2003-09-27  Wolfram Gloger  <wg@malloc.de>
2202         * malloc/malloc.c: Include <malloc-machine.h> earlier instead of
2203         "thread-m.h", so that default parameters can be overridden in a
2204         system-specific malloc-machine.h.  Remove extra ; from extern "C"
2205         closing brace.
2206         * sysdeps/generic/malloc-machine.h: New file.
2207         * sysdeps/mach/hurd/malloc-machine.h: New file.
2208         * malloc/thread-m.h: Removed.
2209         * malloc/Makefile: Remove CFLAGS-malloc.c parameter addition, it
2210         is in sysdeps/generic/malloc-machine.h now.
2212 2003-09-29  Ulrich Drepper  <drepper@redhat.com>
2214         * elf/dl-reloc.c (_dl_allocate_static_tls): Move definition of
2215         variables only used if TLS_TCB_AT_TP is defined into the #if
2216         branch.
2218         * sysdeps/unix/sysv/linux/sys/sysmacros.h: Add __extension__ as
2219         well to cover using long long in C90.
2221 2003-09-28  Alfred M. Szmidt  <ams@kemisten.nu>
2223         * sysdeps/mach/hurd/bits/libc-lock.h (__libc_cleanup_pop):
2224         Redefine and use __libc_cleanup_region_end instead.
2226 2003-09-29  Thorsten Kukuk  <kukuk@suse.de>
2228         * sysdeps/unix/sysv/linux/sys/sysmacros.h: Use __inline and
2229         fix prototypes for picky C++ compilers.
2231 2003-09-27  Ulrich Drepper  <drepper@redhat.com>
2233         * sysdeps/unix/sysv/linux/ustat.c (ustat): Set errno to EINVAL if
2234         the device ID is invalid and return -1.
2235         * sysdeps/unix/sysv/linux/xmknod.c (__xmknod): Likewise.
2237 2003-09-26  Andreas Schwab  <schwab@suse.de>
2239         * sysdeps/unix/sysv/linux/ia64/getcontext.S: Pass fourth argument to
2240         rt_sigprocmask system call.
2242 2003-09-25  Roland McGrath  <roland@redhat.com>
2244         * sysdeps/unix/sysv/linux/dl-execstack.c (_dl_make_stack_executable):
2245         Don't check for zero __libc_stack_end, it should be initialized.
2246         [_STACK_GROWS_DOWN] [PROT_GROWSDOWN]: Try using PROT_GROWSDOWN flag
2247         and fall back if it fails with EINVAL.
2248         [_STACK_GROWS_UP] [PROT_GROWSUP]: Likewise for PROT_GROWSUP.
2250 2003-09-25  Jakub Jelinek  <jakub@redhat.com>
2252         * sysdeps/unix/sysv/linux/x86_64/dl-procinfo.c: Include
2253         sysdeps/i386/dl-procinfo.c instead of
2254         sysdeps/unix/sysv/linux/i386/dl-procinfo.c.
2255         * sysdeps/unix/sysv/linux/i386/dl-procinfo.h: Avoid using
2256         #include_next.
2258 2003-09-25  Ulrich Drepper  <drepper@redhat.com>
2260         * posix/regcomp.c (peek_token): Remove recent changes for anchor
2261         handling again.
2262         (parse_reg_exp): Likewise.
2263         * posix/regex.h: Remove RE_CARET_ANCHORS_HERE.
2265         * csu/Makefile ($(objpfx)version-info.h): Fix sed script to handle
2266         banners.
2268         * nis/nis_table.c (nis_list): Always strdup string used with
2269         ibreq->ibr_name.  Add several NULL pointer checks.
2271         * nis/nss_nisplus/nisplus-alias.c: Add check for NULL return value
2272         of nis_list.
2273         * nis/nss_nisplus/nisplus-ethers.c: Likewise.
2274         * nis/nss_nisplus/nisplus-grp.c: Likewise.
2275         * nis/nss_nisplus/nisplus-hosts.c: Likewise.
2276         * nis/nss_nisplus/nisplus-netgrp.c: Likewise.
2277         * nis/nss_nisplus/nisplus-network.c: Likewise.
2278         * nis/nss_nisplus/nisplus-proto.c: Likewise.
2279         * nis/nss_nisplus/nisplus-publickey.c: Likewise.
2280         * nis/nss_nisplus/nisplus-pwd.c: Likewise.
2281         * nis/nss_nisplus/nisplus-rpc.c: Likewise.
2282         * nis/nss_nisplus/nisplus-service.c: Likewise.
2283         * nis/nss_nisplus/nisplus-spwd.c: Likewise.
2285         * sysdeps/unix/sysv/linux/alpha/bits/mman.h: Define PROT_GROWSDOWN
2286         and PROT_GROWSUP.
2287         * sysdeps/unix/sysv/linux/arm/bits/mman.h: Likewise.
2288         * sysdeps/unix/sysv/linux/cris/bits/mman.h: Likewise.
2289         * sysdeps/unix/sysv/linux/hppa/bits/mman.h: Likewise.
2290         * sysdeps/unix/sysv/linux/i386/bits/mman.h: Likewise.
2291         * sysdeps/unix/sysv/linux/ia64/bits/mman.h: Likewise.
2292         * sysdeps/unix/sysv/linux/m68k/bits/mman.h: Likewise.
2293         * sysdeps/unix/sysv/linux/powerpc/bits/mman.h: Likewise.
2294         * sysdeps/unix/sysv/linux/s390/bits/mman.h: Likewise.
2295         * sysdeps/unix/sysv/linux/sh/bits/mman.h: Likewise.
2296         * sysdeps/unix/sysv/linux/sparc/bits/mman.h: Likewise.
2297         * sysdeps/unix/sysv/linux/x86_64/bits/mman.h: Likewise.
2299 2003-09-25  Jakub Jelinek  <jakub@redhat.com>
2301         * misc/syslog.c: Include locale.h.
2302         (vsyslog): Add date always in C locale %h %e %T format.
2304 2003-09-24  Paul Eggert  <eggert@twinsun.com>
2306         * argp/argp-fmtstream.c (__argp_fmtstream_ensure): Check for
2307         size_t overflow when reallocating storage.
2308         * argp/argp-help.c (make_hol, hol_append): Likewise.
2309         (SIZE_MAX): New macro.
2311 2003-08-07  Alfred M. Szmidt  <ams@kemisten.nu>
2313         * sysdeps/mach/hurd/bits/libc-lock.h
2314         (__libc_cleanup_push, __libc_cleanup_pop): New macros.
2316 2003-08-01  Alfred M. Szmidt  <ams@kemisten.nu>
2318         * sysdeps/i386/dl-procinfo.h: New file, contents taken from ...
2319         * sysdeps/unix/sysv/linux/i386/dl-procinfo.h: ... here.
2320         #include_next dl-procinfo.h to get them.
2321         (_DL_HWCAP_COUNT): Moved to sysdeps/i386/dl-procinfo.h.
2322         (_DL_PLATFORMS_COUNT): Likewise.
2323         (_DL_FIRST_PLATFORM): Likewise.
2324         (_DL_HWCAP_PLATFORM): Likewise.
2325         (HWCAP_I386_FPU, HWCAP_I386_VME, HWCAP_I386_DE, HWCAP_I386_PSE,
2326         HWCAP_I386_TSC, HWCAP_I386_MSR, HWCAP_I386_PAE, HWCAP_I386_MCE,
2327         HWCAP_I386_CX8, HWCAP_I386_APIC, HWCAP_I386_SEP, HWCAP_I386_MTRR,
2328         HWCAP_I386_PGE, HWCAP_I386_MCA, HWCAP_I386_CMOV,
2329         HWCAP_I386_FCMOV, HWCAP_I386_MMX, HWCAP_I386_OSFXSR,
2330         HWCAP_I386_XMM, HWCAP_I386_XMM2, HWCAP_I386_AMD3D,
2331         HWCAP_IMPORTANT): Likewise.
2332         (_DL_PROCINFO_H_): Likewise.
2333         (_dl_hwcap_string, _dl_platform_string, _dl_string_hwcap): Likewise.
2334         (_dl_string_platform): Likewise.
2335         * sysdeps/unix/sysv/linux/i386/dl-procinfo.c: Moved to ...
2336         * sysdeps/i386/dl-procinfo.c: ... here, new file.
2338 2003-09-24  Ulrich Drepper  <drepper@redhat.com>
2340         * sysdeps/unix/sysv/linux/dl-execstack.c
2341         (_dl_make_stack_executable): Remember that we changed the permission.
2343         * sysdeps/ia64/dl-machine.h (RTLD_START): Remove setting of
2344         __libc_stack_end.  Patch by David Mosberger.
2346 2003-09-24  Jakub Jelinek  <jakub@redhat.com>
2348         * elf/Versions (ld): Export __libc_stack_end@GLIBC_2.1 instead of
2349         __libc_stack_end@GLIBC_PRIVATE.
2351         * sysdeps/generic/dl-sysdep.c (DL_STACK_END): Define if not defined.
2352         (_dl_sysdep_start): Set __libc_stack_end here.
2353         * sysdeps/alpha/dl-machine.h (RTLD_START): Remove setting of
2354         __libc_stack_end.
2355         * sysdeps/arm/dl-machine.h (RTLD_START): Likewise.
2356         * sysdeps/cris/dl-machine.h (RTLD_START): Likewise.
2357         * sysdeps/i386/dl-machine.h (RTLD_START): Likewise.
2358         * sysdeps/m68k/dl-machine.h (RTLD_START): Likewise.
2359         * sysdeps/s390/s390-32/dl-machine.h (RTLD_START): Likewise.
2360         * sysdeps/s390/s390-64/dl-machine.h (RTLD_START): Likewise.
2361         * sysdeps/sh/dl-machine.h (RTLD_START): Likewise.
2362         * sysdeps/x86_64/dl-machine.h (RTLD_START): Likewise.
2363         * sysdeps/ia64/dl-machine.h (DL_STACK_END): Define.
2364         * sysdeps/sparc/sparc32/dl-machine.h (DL_STACK_END): Define.
2365         (RTLD_START): Remove setting of __libc_stack_end.
2366         * sysdeps/sparc/sparc64/dl-machine.h (DL_STACK_END): Define.
2367         (RTLD_START): Remove setting of __libc_stack_end.
2369 2003-09-24  Ulrich Drepper  <drepper@redhat.com>
2371         * sysdeps/unix/sysv/linux/sys/sysmacros.h: Add gnu_dev_ prefix to
2372         function definitions.  Adjust macro expansions accordingly.
2373         * sysdeps/unix/sysv/linux/Versions: Add gnu_dev_ prefix to major,
2374         minor, makedev name.
2375         * sysdeps/unix/sysv/linux/makedev.c: Likewise.
2377 2003-09-24  Jakub Jelinek  <jakub@redhat.com>
2379         * sysdeps/unix/sysv/linux/sys/sysmacros.h (major, minor, makedev):
2380         Add __THROW.
2382 2003-09-24  Jakub Jelinek  <jakub@redhat.com>
2384         * nscd/Makefile (others): Add nscd before including ../Rules.
2386 2003-09-24  Ulrich Drepper  <drepper@redhat.com>
2388         * nscd/Makefile: Add rules to build nscd as a PIE.
2389         * configure.in: Check for -fpie and -pie compiler options.
2390         * config.make.in (have-fpie): Define.
2392 2003-09-23  Ulrich Drepper  <drepper@redhat.com>
2394         * sysdeps/unix/sysv/linux/sys/sysmacros.h: Adjust for larger
2395         kernel dev_t size.
2396         * sysdeps/unix/sysv/linux/alpha/sys/sysmacros.h: Removed.
2397         * sysdeps/unix/sysv/linux/sparc/sys/sysmacros.h: Removed.
2398         * sysdeps/unix/sysv/linux/makedev.c: New file.
2399         * sysdeps/unix/sysv/linux/Dist: Add makedev.c.
2400         * sysdeps/unix/sysv/linux/Makefile [subdir=misc]
2401         (sysdep_routines): Add makedev.
2402         * sysdeps/unix/sysv/linux/Versions [libc] (GLIBC_2.3.3): Add
2403         major, minor, makedev.
2404         * sysdeps/unix/sysv/linux/ustat.c (ustat): Adjust for 32-bit
2405         kernel dev_t.
2406         * sysdeps/unix/sysv/linux/alpha/ustat.c: Removed.
2407         * sysdeps/unix/sysv/linux/xmknod.c (__xmknod): Likewise.
2408         * sysdeps/unix/sysv/linux/alpha/xmknod.c: Removed.
2409         Code by Alexander Viro <aviro@redhat.com>.
2411 2003-09-23  Ulrich Drepper  <drepper@redhat.com>
2413         * sysdeps/unix/sysv/linux/powerpc/powerpc32/Versions [libc]
2414         (GLIBC_2.3.3): Add setcontext, getcontext, swapcontext, and
2415         makecontext.
2416         * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: Correct change
2417         for include Altivec support for PPC32.  It was not compatible.
2418         * sysdeps/unix/sysv/linux/powerpc/powerpc32/ucontext_i.h: Adjust
2419         offsets for ucontext_t change.
2420         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Adjust
2421         for ucontext_t change.  Add compatibility code.
2422         * sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S: Likewise.
2423         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Likewise.
2424         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Likewise.
2425         Patch by Paul Mackerras <paulus@samba.org>.
2427 2003-02-25  Randolph Chung  <tausq@debian.org>
2429         * sysdeps/hppa/Makefile: Include compat code in build.
2430         * sysdeps/hppa/libgcc-compat.c: New file.
2431         * sysdeps/hppa/Dist: Add libgcc-compat.c.
2432         * sysdeps/hppa/Versions [GLIBC_2.2]: Add __clz_tab.
2434 2003-09-23  Roland McGrath  <roland@redhat.com>
2436         * elf/rtld.c (dl_main): In rtld_is_main case, reinitialize
2437         GL(dl_stack_flags) according to rtld's own PT_GNU_STACK.
2438         Move GL(dl_make_stack_executable_hook) initialization up.
2439         * elf/tst-execstack-prog.c: New file.
2440         * elf/Makefile (tests-execstack-yes): Add it.
2441         (LDFLAGS-tst-execstack-prog): New variable.
2443 2003-09-23  Jakub Jelinek  <jakub@redhat.com>
2445         * sysdeps/x86_64/dl-machine.h (RTLD_START): Set __libc_stack_end
2446         before calling _dl_start, using %rip relative access.
2447         Use %rip relative access to _dl_skip_args, _rtld_local._dl_loaded
2448         and _dl_fini.
2450 2003-09-23  Roland McGrath  <roland@redhat.com>
2452         * sysdeps/i386/dl-machine.h (RTLD_START): Set __libc_stack_end before
2453         calling _dl_start, using GOTOFF access.
2455         * configure.in (libc_cv_z_execstack): New check.
2456         * configure: Regenerated.
2457         * config.make.in (have-z-execstack): New variable set by it.
2458         * elf/tst-execstack.c: New file.
2459         * elf/tst-execstack-mod.c: New file.
2460         * elf/tst-execstack-needed.c: New file.
2461         * elf/Makefile (tests-execstack-yes, modules-execstack-yes): New
2462         variables.
2463         (tests, modules-names): Conditionally include them.
2464         (distribute): Add tst-execstack-mod.c here.
2465         ($(objpfx)tst-execstack, $(objpfx)tst-execstack.out): New targets.
2466         (LDFLAGS-tst-execstack, LDFLAGS-tst-execstack-mod): New variables.
2467         ($(objpfx)tst-execstack-needed): New target.
2468         (LDFLAGS-tst-execstack-needed): New variable.
2470         * sysdeps/generic/ldsodefs.h (struct rtld_global): Add _dl_stack_flags
2471         and _dl_make_stack_executable_hook.  Declare _dl_make_stack_executable.
2472         * elf/rtld.c (_rtld_global): Add initializer for _dl_stack_flags.
2473         (dl_main): Reset _dl_stack_flags according to PT_GNU_STACK phdr.
2474         Initialize _dl_make_stack_executable_hook.
2475         * elf/dl-support.c: Define those new variables.
2476         (_dl_non_dynamic_init): Scan phdrs for PT_GNU_STACK.
2477         (_dl_phdr): Fix type.
2478         * elf/dl-load.c (_dl_map_object_from_fd): Grok PT_GNU_STACK phdr and
2479         enable execute permission for the stack if necessary.
2480         * sysdeps/generic/dl-execstack.c: New file.
2481         * elf/Makefile (dl-routines): Add it.
2482         * elf/Versions (ld: GLIBC_PRIVATE): Add _dl_make_stack_executable.
2483         * sysdeps/unix/sysv/linux/dl-execstack.c: New file.
2485 2003-09-23  Ulrich Drepper  <drepper@redhat.com>
2487         * sysdeps/posix/sprofil.c (pc_to_index): Remove inline marker.
2489 2003-09-20  Alfred M. Szmidt  <ams@kemisten.nu>
2491         * sysdeps/generic/utmp_file.c (setutent_file, LOCK_FILE,
2492         UNLOCK_FILE, setutent_file): Use fcntl_not_cancel instead of
2493         __fcntl_nocancel.
2495 2003-09-22  Ulrich Drepper  <drepper@redhat.com>
2497         * malloc/malloc.c: Include <stdint.h>.
2499 2003-09-20  Paolo Bonzini  <bonzini@gnu.org>
2501         * posix/regcomp.c (build_word_op): Rename like...
2502         (build_charclass_op): ...this.  Accept two extra parameters,
2503         CLASS_NAME and EXTRA.  Add EXTRA to the result, not only _.
2504         (peek_token): Accept \s and \S as OP_SPACE and OP_NOTSPACE.
2505         (parse_expression): Replace build_word_op with
2506         build_charclass_op, add new arguments, accept OP_SPACE
2507         and OP_NOTSPACE.
2508         * posix/regex_internal.h (re_token_type_t): Add OP_SPACE
2509         and OP_NOTSPACE.
2511         * posix/regcomp.c (peek_token): Don't look back for ( or |
2512         to check whether to treat a caret as special.  It fails
2513         for the (extended) regex \(^.
2514         (parse, parse_reg_exp): Pass RE_CARET_ANCHORS_HERE to fetch_token.
2515         * posix/regex.h: Define RE_CARET_ANCHORS_HERE.
2517         * posix/regexec.c: Check out of bounds value before shifting.
2519         * posix/regex_internal.h: Define __attribute for non-gcc.
2521 2003-09-22  Jakub Jelinek  <jakub@redhat.com>
2523         * include/atomic.h (atomic_compare_and_exchange_val_rel,
2524         atomic_compare_and_exchange_bool_rel): Swap oldval/newval arguments
2525         to avoid confusion.
2527         * sysdeps/unix/opendir.c: Include string.h.
2529 2003-09-22  Ulrich Drepper  <drepper@redhat.com>
2531         * timezone/zdump.c: Update from tzcode2003c.
2532         * timezone/zic.c: Likewise.
2533         * timezone/leapseconds: Update from tzdata2003c.
2535 2003-09-19  Ulrich Drepper  <drepper@redhat.com>
2537         * elf/Makefile ($(objpfx)librtld.os): Create link map also for
2538         final build to ease quality control.
2540         * sysdeps/unix/sysv/linux/getcwd.c (__getcwd): If compiled for
2541         ld.so, don't include NULL buffer pointer handling.
2543 2003-09-19  Jakub Jelinek  <jakub@redhat.com>
2545         * dlfcn/dlopen.c (dlopen): Add static_link_warning.
2547 2003-09-18  Jakub Jelinek  <jakub@redhat.com>
2549         * libio/memstream.c (open_memstream): Use _IO_init instead of
2550         _IO_old_init.
2552 2003-09-17  Ulrich Drepper  <drepper@redhat.com>
2554         * sysdeps/generic/wordexp.c (eval_expr_val): Use strtol since we
2555         have to recognize octal and hexadecimal numbers as well.  Simplify
2556         function, signs are handled in strtol.
2557         * posix/wordexp-test.c: Add tests for octal and hexadecimal
2558         numbers in arithmetic expressions.
2560 2003-09-17  Jakub Jelinek  <jakub@redhat.com>
2562         * elf/Makefile (distribute): Add tst-alignmod.c.
2563         (tests): Add tst-align.
2564         (modules-names): Add tst-alignmod.
2565         (CFLAGS-tst-align.c, CFLAGS-tst-alignmod.c): Add
2566         $(stack-align-test-flags).
2567         ($(objpfx)tst-align): Depend on libdl.
2568         ($(objpfx)tst-align.out): Depend on tst-alignmod.so.
2569         * elf/tst-align.c: New file.
2570         * elf/tst-alignmod.c: New file.
2571         * misc/Makefile (CFLAGS-tst-tsearch.c): Add $(stack-align-test-flags).
2572         * misc/tst-tsearch.c: Include tst-stack-align.h.
2573         (stack_align_check): New array.
2574         (cmp_fn, walk_action): Use TEST_STACK_ALIGN ().
2575         (main): Report error if stack was not enough aligned
2576         in cmp_fn or walk_action.
2577         * stdlib/Makefile (CFLAGS-tst-qsort.c): Add $(stack-align-test-flags).
2578         * stdlib/tst-qsort.c: Include tst-stack-align.h.
2579         (align_check): New var.
2580         (compare): Use TEST_STACK_ALIGN () macro.
2581         (main): Report error if stack was not enough aligned in compare.
2582         * sysdeps/i386/i686/Makefile (stack-align-test-flags): Remove
2583         unneeded -mpreferred-stack-boundary=4.
2584         * sysdeps/x86_64/tst-stack-align.h: New file.
2586         * libio/memstream.c (_IO_wmem_jumps): Remove unused structure.
2587         (_IO_wmem_sync, _IO_wmem_finish): Remove unused functions.
2589 2003-09-17  Philip Blundell  <philb@gnu.org>
2591         * sysdeps/arm/dl-machine.h (CALL_ROUTINE): Deleted.
2592         (BX): Define.
2593         (ELF_MACHINE_RUNTIME_TRAMPOLINE): Optimise a little.
2595         * sysdeps/arm/sysdep.h (DO_RET): New.
2597         * sysdeps/unix/sysv/linux/arm/vfork.S: Add #error if __NR_vfork
2598         required but not defined.  Improve test of error code.
2600 2003-09-17  Jakub Jelinek  <jakub@redhat.com>
2602         * sysdeps/i386/Makefile (stack-align-test-flags): Add
2603         -malign-double -mpreferred-stack-boundary=4.
2605 2003-09-17  Ulrich Drepper  <drepper@redhat.com>
2607         * sysdeps/posix/utimes.c (__utimes): Truncate instead of round.
2608         * sysdeps/unix/sysv/linux/utimes.c (__utimes): Likewise.
2610 2003-09-15  Jakub Jelinek  <jakub@redhat.com>
2612         * sysdeps/i386/Makefile (sysdep-CFLAGS): If not in math or csu
2613         subdir, add -mpreferred-stack-boundary=4, with few exceptions.
2615 2003-09-17  Jakub Jelinek  <jakub@redhat.com>
2617         * Makeconfig (stack-align-test-flags): Set.
2618         * stdlib/Makefile (CFLAGS-tst-bsearch.c): Add
2619         $(stack-align-test-flags).
2620         * stdlib/tst-bsearch.c: Include tst-stack-align.h.
2621         (align_check): New var.
2622         (comp): Use TEST_STACK_ALIGN macro.
2623         (do_test): Fail if align_check != 1.
2624         * sysdeps/generic/tst-stack-align.h: New file.
2625         * sysdeps/i386/i686/Makefile (stack-align-test-flags): Add -msse.
2626         * sysdeps/i386/i686/tst-stack-align.h: New file.
2628 2003-09-17  Ulrich Drepper  <drepper@redhat.com>
2630         * sysdeps/unix/sysv/linux/i386/clone.S: Make sure child gets a
2631         stack which is aligned (mod 16).
2633 2003-09-17  Uwe Reimann  <Uwe_Reimann@gmx.net>
2634             Hans-Peter Nilsson  <hp@axis.com>
2636         * sysdeps/cris/dl-machine.h (elf_machine_type_class): Classify
2637         R_CRIS_GLOB_DAT as ELF_RTYPE_CLASS_PLT.  Clarify comment.
2639 2003-09-17  Jakub Jelinek  <jakub@redhat.com>
2641         * dirent/scandir.c: Include bits/libc-lock.h.
2642         (struct scandir_cancel_struct): New type.
2643         (cancel_handler): New function.
2644         (SCANDIR): Add __libc_cleanup_{push,pop}, save state into
2645         scandir_cancel_struct.
2647 2003-09-16  Ulrich Drepper  <drepper@redhat.com>
2649         * sysdeps/unix/sysv/linux/Dist: Remove internal_statvfs.c.
2650         * sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines):
2651         Add internal_statvfs.
2652         * sysdeps/unix/sysv/linux/fstatvfs.c: Call __internal_statvfs
2653         instead of including "internal_statvfs.c".
2654         * sysdeps/unix/sysv/linux/statvfs.c: Likewise.
2655         * sysdeps/unix/sysv/linux/internal_statvfs.c: Make it a real function.
2656         Add code to avoid the stat calls on all the reported mount points
2657         when we can determine mismatch in advance.
2658         * sysdeps/unix/sysv/linux/linux_fsinfo.h: Add AUTOFS_SUPER_MAGIC and
2659         USBDEVFS_SUPER_MAGIC.
2661 2003-09-16  Jakub Jelinek  <jakub@redhat.com>
2663         * posix/Versions (sched_getaffinity, sched_setaffinity): Change
2664         from GLIBC_2.3.2 to GLIBC_2.3.3 symbol version.
2666 2003-09-16  Bruno Haible  <bruno@clisp.org>
2668         * intl/tst-gettext2.sh: Set GCONV_PATH and LOCPATH only after
2669         invoking msgfmt, not before.
2671 2003-09-15  Jakub Jelinek  <jakub@redhat.com>
2673         * argp/argp.h (argp_parse, __argp_parse): Remove __THROW.
2674         * argp/Makefile (CFLAGS-argp-help.c, CFLAGS-argp-parse.c): Add
2675         $(uses-callbacks).
2676         * dirent/Makefile (CFLAGS-scandir.c, CFLAGS-scandir64.c): Likewise.
2677         * elf/Makefile (CFLAGS-dl-iterate-phdr.c,
2678         CFLAGS-dl-iterate-phdr-static.c): Add $(uses-callbacks).
2679         * elf/dl-iteratephdr.c (cancel_handler): New function.
2680         (__dl_iterate_phdr): Add __libc_cleanup_{push,pop}.
2681         * elf/link.h (dl_iterate_phdr): Remove __THROW.
2682         * io/Makefile (CFLAGS-fts.c): Merge into one assignment.
2683         Add $(uses-callbacks).
2684         (CFLAGS-ftw.c, CFLAGS-ftw64.c): Add $(uses-callbacks).
2685         * misc/Makefile (CFLAGS-tsearch.c, CFLAGS-lsearch.c): Change
2686         $(exceptions) to $(uses-callbacks).
2687         * Makeconfig (uses-callbacks): Set to $(exceptions).
2688         * posix/Makefile (CFLAGS-glob.c, CFLAGS-glob64.c): Add
2689         $(uses-callbacks).
2690         * stdlib/Makefile (CFLAGS-bsearch.c, CFLAGS-msort.c, CFLAGS-qsort.c):
2691         Likewise.
2693 2003-09-15  Andreas Schwab  <schwab@suse.de>
2695         * sysdeps/m68k/setjmp.c: Add hidden_def.
2697 2003-09-14  Ulrich Drepper  <drepper@redhat.com>
2699         * libio/memstream.c (open_memstream): Don't allow wide char operations.
2701         * dirent/dirent.h: Remove __THROW from scandir.
2703 2003-09-14  Philip Blundell  <philb@gnu.org>
2705         * sysdeps/unix/sysv/linux/arm/mmap.S: Use sys_mmap2 if it's known
2706         to be available.
2708         * sysdeps/unix/sysv/linux/arm/mmap64.S: Optimise code a little.
2710         * sysdeps/arm/memset.S: Rewrite.
2712 2003-09-12  Jakub Jelinek  <jakub@redhat.com>
2714         * sysdeps/unix/sysv/linux/s390/bits/typesizes.h: New.
2715         (__SSIZE_T_TYPE): Define to __SWORD_TYPE for gcc 2.95.x and
2716         __SLONGWORD_TYPE otherwise.
2718 2003-09-14  Ulrich Drepper  <drepper@redhat.com>
2720         * io/Makefile (CFLAGS-ftw.c): Add -fexceptions.
2721         (CFLAGS-ftw64.c): Likewise.
2723 2003-09-13  Ulrich Drepper  <drepper@redhat.com>
2725         * nscd/Makefile (CFLAGS-nscd_getpw_r.c): Add -fexceptions.
2726         (CFLAGS-nscd_getgr_r.c): Likewise.
2727         (CFLAGS-nscd_gethst_r.c): Likewise.
2729 2003-09-12  Ulrich Drepper  <drepper@redhat.com>
2731         * sysdeps/unix/sysv/linux/if_index.c: Use only non-cancelable
2732         interfaces.
2734         * grp/Makefile (CFLAGS-getgrgid_r.c, CFLAGS-getgrnam_r.c,
2735         CFLAGS-fgetgrent.c, CFLAGS-fgetgrent_r.c, CFLAGS-putgrent.c,
2736         CFLAGS-initgroups.c, CFLAGS-getgrgid.c): Add -fexceptions.
2737         * inet/Makefile (CFLAGS-either_ntoh.c, CFLAGS-either_hton.c,
2738         CFLAGS-getnetgrent.c, CFLAGS-getnetgrent_r.c): Likewise.
2739         * io/Makefile (CFLAGS-posix_fallocate.c, CFLAGS-posix_fallocate64.c):
2740         Likewise.
2741         * misc/Makefile (CFLAGS-err.c): Likewise.
2742         * posix/Makefile (CFLAGS-getaddrinfo.c, CFLAGS-spawn.c,
2743         CFLAGS-spawnp.c, CFLAGS-spawni.c, CFLAGS-pause.c, CFLAGS-glob.c,
2744         CFLAGS-glob64.c): Likewise.
2745         * pwd/Makefile (CFLAGS-getpw.c): Likewise.
2746         * shadow/Makefile (CFLAGS-fgetspent.c, CFLAGS-fgetspent_r.c,
2747         CFLAGS-putspent.c, CFLAGS-getspnam.c, CFLAGS-getspnam_r.c): Likewise.
2748         * stdio-common/Makefile (CFLAGS-cuserid.c): Likewise.
2749         * sunrpc/Makefile (CFLAGS-openchild.c): Likewise.
2751         * stdlib/Makefile (CFLAGS-mkstemp.c): Remove definition.
2753         * libio/stdio.h: Remove __THROW from cuserid prototype.
2755         * locale/loadarchive.c: Use only non-cancelable interfaces.
2756         * resolv/herror.c (herror): Likewise.
2758         * malloc/hooks.c: Before using IO stream mark stream so it uses
2759         only non-cancelable interfaces.
2760         * malloc/malloc.c: Likewise.
2761         * posix/getopt.c: Likewise.
2764 2003-09-11  Jakub Jelinek  <jakub@redhat.com>
2766         * Makerules (LDFLAGS-c.so): Remove -u __register_frame.
2768 2003-09-12  Ulrich Drepper  <drepper@redhat.com>
2770         * stdio-common/stdio_ext.h: Mark most functions with __THROW.
2772         * misc/err.h: Remove __THROW from all prototypes.
2774         * posix/getopt.h (__THROW): Define if not already defined.  Add
2775         __THROW to the getopt functions.
2777 2003-09-11  Ulrich Drepper  <drepper@redhat.com>
2779         * io/Makefile (CFLAGS-lockf.c): Add -fexceptions.
2780         (CFLAGS-fts.c): Likewise.
2781         * io/fcntl.h: Remove __THROW from lockf prototypes.
2782         * io/fts.h: Remove most __THROW.
2784 2003-09-11  H.J. Lu  <hongjiu.lu@intel.com>
2786         * elf/tls-macros.h (TLS_IE): Add a stop bit for ia64.
2787         (TLS_LD): Likewise.
2788         (TLS_GD): Likewise.
2790 2003-09-11  Jakub Jelinek  <jakub@redhat.com>
2792         * libio/fileops.c (_IO_new_file_overflow): Add INTUSE to
2793         _IO_free_backup_area call.
2795 2003-09-10  Chris Demetriou  <cgd@broadcom.com>
2797         * sysdeps/unix/sysv/linux/mips/pread64.c (__libc_pread64): Fix
2798         syscall invocation.
2799         * sysdeps/unix/sysv/linux/mips/pwrite64.c (__libc_pwrite64): Likewise.
2800         * sysdeps/unix/sysv/linux/mips/pread.c (__libc_pread): Likewise.
2801         Also, only assert off_t size is 4 for N32 and O32, and clean up
2802         white space.
2803         * sysdeps/unix/sysv/linux/mips/pwrite.c (__libc_pwrite): Likewise.
2805 2003-09-10  Roland McGrath  <roland@redhat.com>
2807         * sysdeps/unix/sysv/linux/tcgetattr.c (__tcgetattr):
2808         Don't use c_ispeed under [! _HAVE_STRUCT_TERMIOS_C_ISPEED].
2809         Don't use c_ospeed under [! _HAVE_STRUCT_TERMIOS_C_OSPEED].
2810         * sysdeps/unix/sysv/linux/tcsetattr.c (tcsetattr): Likewise.
2811         Reported by Daniel Jacobowitz  <drow@mvista.com>.
2813 2003-09-10  Jakub Jelinek  <jakub@redhat.com>
2815         * string/Makefile (strop-tests): Add memccpy.
2816         * string/test-memccpy.c: New test.
2818 2003-09-09  Jakub Jelinek  <jakub@redhat.com>
2820         * sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h (SIGCONTEXT): Add
2821         siginfo_t * argument before, change into struct ucontext *.
2822         (SIGCONTEXT_EXTRA_ARGS): Define to _si,.
2823         (GET_PC, GET_FRAME, GET_STACK): Adjust for ctx being a pointer
2824         instead of structure.
2825         * sysdeps/unix/sysv/linux/x86_64/register-dump.h (REGISTER_DUMP):
2826         Likewise.
2828 2003-09-09  Ulrich Drepper  <drepper@redhat.com>
2830         * string/stratcliff.c (main): Check memccpy.
2832 2003-04-11  Jes Sorensen  <jes@wildopensource.com>
2834         * sysdeps/ia64/memccpy.S: When recovering for src_aligned and the
2835         character is found during recovery, use correct register when
2836         determining the position of the found character.
2838 2003-04-01  Jes Sorensen  <jes@wildopensource.com>
2840         * sysdeps/ia64/memccpy.S: Use speculatively loads for readahead to
2841         avoid segfaults when reading from unmapped pages. For aligned
2842         reload and continue, for misaligned, roll back and use byte copy.
2843         Save ar.ec on entry and restore on exit.
2845 2003-09-09  Chris Demetriou  <cgd@broadcom.com>
2847         * sysdeps/unix/mips/sysdep.h (PSEUDO_END): Undef before defining.
2849 2003-09-08  Chris Demetriou  <cgd@broadcom.com>
2851         * sysdeps/mips/mips64/n32/Implies: Move ieee754/ldbl-128 to
2852         the top of the list.
2853         * sysdeps/mips/mips64/n64/Implies: Likewise.
2855 2003-09-08  Roland McGrath  <roland@frob.com>
2857         * sysdeps/unix/sysv/linux/speed.c
2858         (cfsetospeed): Only set c_ospeed under [_HAVE_STRUCT_TERMIOS_C_OSPEED].
2859         (cfsetispeed): Only set c_ispeed under [_HAVE_STRUCT_TERMIOS_C_ISPEED].
2860         * sysdeps/unix/sysv/linux/bits/termios.h
2861         (_HAVE_STRUCT_TERMIOS_C_ISPEED, _HAVE_STRUCT_TERMIOS_C_OSPEED): Define.
2862         * sysdeps/unix/sysv/linux/alpha/bits/termios.h: Likewise.
2863         * sysdeps/unix/sysv/linux/powerpc/bits/termios.h: Likewise.
2865 2003-09-08  Ulrich Drepper  <drepper@redhat.com>
2867         * sysdeps/unix/sysv/linux/x86_64/register-dump.h: Undo last change.
2868         * sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h: Likewise.
2870 2003-09-08  Jakub Jelinek  <jakub@redhat.com>
2872         * sysdeps/generic/bits/types.h (__quad_t): Make long int if 64-bit.
2873         (__u_quad_t): Make unsigned long int if 64-bit.
2874         (__SQUAD_TYPE): Make long int if 64-bit.
2875         (__UQUAD_TYPE): Make unsigned long int if 64-bit.
2876         * sysdeps/unix/sysv/linux/s390/bits/typesizes.h: Remove.
2878 2003-09-08  Ulrich Drepper  <drepper@redhat.com>
2880         * Makefile (tests): Run check-c++-types.sh if possible.
2881         * scripts/check-c++-types.h: New file.
2882         * scripts/data/c++-types-i386-linux-gnu.data: New file.
2884 2003-09-08  Andreas Jaeger  <aj@suse.de>
2886         * sysdeps/unix/sysv/linux/x86_64/register-dump.h (register_dump):
2887         Use struct sigcontext.
2889         * sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h (SIGCONTEXT):
2890         Use struct sigcontext.
2891         (GET_PC): Adopt.
2892         (GET_FRAME): Likewise.
2893         (GET_STACK): Likewise.
2895 2003-09-08  Wolfram Gloger  <wg@malloc.de>
2897         * malloc/malloc.c (sYSMALLOc): Move foreign sbrk accounting into
2898         contiguous case.  Bug report from Prem Gopalan <prem@mazunetworks.com>.
2899         (mALLOPt): Avoid requirement of C99.
2901 2003-09-08  Ulrich Drepper  <drepper@redhat.com>
2903         * libio/bug-ftell.c: Include <sys/types.h>.
2904         (main): Mark cp as const.
2906 2003-09-07  Jakub Jelinek  <jakub@redhat.com>
2908         * sysdeps/unix/sysv/linux/syscalls.list (fcntl): Remove.
2909         * sysdeps/unix/sysv/linux/x86_64/fcntl.c: Remove.
2911 2003-09-05  Roland McGrath  <roland@redhat.com>
2913         * sysdeps/unix/sysv/linux/tcgetattr.c (__tcgetattr): Fill in c_ispeed
2914         and c_ospeed fields.
2915         * sysdeps/unix/sysv/linux/speed.c (cfsetospeed): Set c_ospeed field.
2916         (cfsetispeed): Set c_ispeed field.
2917         * sysdeps/unix/sysv/linux/tcsetattr.c (IBAUD0): Define unconditionally
2918         to match corresponding speed.c code.
2920 2003-09-06  Ulrich Drepper  <drepper@redhat.com>
2922         * libio/wfileops.c (_IO_wfile_underflow): Mark beginning of the
2923         narrow character buffer.
2924         * libio/Makefile: Add rules to build and run bug-ftell.
2925         * libio/bug-ftell.c: New file.
2927         * stdio-common/vfprintf.c: Don't use the first grouping number twice.
2929         * stdio-common/vfscanf.c (vfscanf): Fix recognition of characters
2930         matching the decimal point and possibly leading the thousands
2931         separator.  This caused the recognition of thousands separators to
2932         always fail.
2934 2003-09-05  Ulrich Drepper  <drepper@redhat.com>
2936         * libio/fileops.c (_IO_new_file_overflow): Handle switching to
2937         write mode from read in backup buffer.
2938         * libio/Makefile (tests): Add bug-ungetc2.
2939         * libio/bug-ungetc2.c: New file.
2941 2003-09-05  Roland McGrath  <roland@redhat.com>
2943         * nss/getXXbyYY.c (FUNCTION_NAME): Remove unused variable.
2945 2003-09-04  Roland McGrath  <roland@frob.com>
2947         * sysdeps/mach/hurd/mmap.c (__mmap): If io_map fails with MIG_BAD_ID,
2948         EOPNOTSUPP, or ENOSYS, change it to ENODEV.
2950 2003-09-04  H.J. Lu  <hongjiu.lu@intel.com>
2952         * sysdeps/unix/sysv/linux/ia64/bits/sigstack.h (MINSIGSTKSZ):
2953         Fix a typo.
2955 2003-09-05  Andreas Jaeger  <aj@suse.de>
2957         * sysdeps/i386/bits/string.h (__memrchr): Do addition in assembler
2958         to make it conforming C.
2959         * sysdeps/i386/i486/bits/string.h (__memrchr): Likewise.
2961         * sysdeps/unix/sysv/linux/i386/fcntl.c (__fcntl_nocancel): Change
2962         prototype to use variable argument lists and get the possible one
2963         argument via va_arg.
2964         * sysdeps/unix/sysv/linux/fcntl.c (__fcntl_nocancel): Likewise.
2965         * sysdeps/unix/sysv/linux/x86_64/fcntl.c: New.
2967 2003-09-04  Ulrich Drepper  <drepper@redhat.com>
2969         * posix/unistd.h: Add back __THROW to sysconf, pathconf, fpathconf.
2971         * sysdeps/unix/sysv/linux/pathconf.c (__statfs_filesize_max):
2972         Report correct value for vxfs.
2973         * sysdeps/unix/sysv/linux/linux_fsinfo.h: Define VXFS_SUPER_MAGIC.
2975         * gmon/gmon.c: Use only not-cancelable syscalls to write profiling
2976         data.
2978         * sysdeps/generic/utmp_file.c: Use not-cancelable syscalls all
2979         over the place.  It would be allowed to have these functions as
2980         cancellation points but the cleanup would be ugly and a lot of
2981         work.
2983         * sysdeps/generic/not-cancel.h (fcntl_not_cancel): Define.
2984         * sysdeps/unix/sysv/linux/not-cancel.h (fcntl_not_cancel): Define.
2986         * include/fcntl.h (__fcntl_nocancel): Declare.
2987         * sysdeps/unix/sysv/linux/fcntl.c: New file.
2988         * sysdeps/unix/sysv/linux/i386/fcntl.c (__libc_fcntl): Only enable
2989         cancellation if absolutely needed.
2990         (__fcntl_nocancel): Define.
2992         * posix/unistd.h (gethostid): Remove __THROW.  Clarify comment.
2993         * sysdeps/unix/sysv/linux/Makefile (CFLAGS-gethostid.c): Add
2994         -fexceptions.
2995         * sysdeps/unix/sysv/linux/gethostid.c (gethostid): Use
2996         extend_alloca.
2998         * resolv/res_init.c (__res_nclose): Use close_not_cancel_no_status
2999         instead of __close.
3001         * nss/getXXbyYY.c (FUNCTION_NAME): Add a few casts.  Remove
3002         unnecessary errno handling.
3004         * nss/getXXbyYY_r.c (INTERNAL): Use better variable name.
3005         Initialize it in all cases.  Change it to be a bit more like the
3006         code we had before.
3008 2003-09-04  Jakub Jelinek  <jakub@redhat.com>
3010         * libio/fileops.c (_IO_file_read, _IO_new_file_write): Add
3011         __builtin_expect.
3012         (_IO_file_open): Likewise.  Use close_not_cancel.
3014 2003-09-04  Ulrich Drepper  <drepper@redhat.com>
3016         * libio/libio.h: Define _IO_FLAGS2_NOTCANCEL.
3017         * libio/fileops.c [_LIBC]: Remove close macro.
3018         (_IO_file_open): If _IO_FLAGS2_NOTCANCEL is set, use open_not_cancel.
3019         (_IO_new_file_open): Recognize 'c' flag in mode string.
3020         (_IO_file_read): If _IO_FLAGS2_NOTCANCEL is set use read_not_cancel.
3021         (_IO_new_file_write): If _IO_FLAGS2_NOTCANCEL is set use
3022         write_not_cancel.
3023         * iconv/gconv_conf.c: Use fopen with 'c' mode flag.
3024         * inet/rcmd.c: Likewise.
3025         * inet/ruserpass.c: Likewise.
3026         * intl/localealias.c: Likewise.
3027         * malloc/mtrace.c: Likewise.
3028         * misc/getpass.c: Likewise.
3029         * misc/getttyent.c: Likewise.
3030         * misc/mntent_r.c: Likewise.
3031         * misc/getusershell.c: Likewise.
3032         * nss/nsswitch.c: Likewise.
3033         * resolv/res_hconf.c: Likewise.
3034         * resolv/res_init.c: Likewise.
3035         * sysdeps/unix/sysv/linux/getsysstats.c: Likewise.
3036         * time/getdate.c: Likewise.
3037         * time/tzfile.c: Likewise.
3038         * misc/fstab.h: Undo last change.
3039         * misc/mntent.h: Likewise.
3040         * misc/Makefile: Remove CFLAGS-mntent_r.c, CFLAGS-mntent.c, and
3041         CFLAGS-fstab.c definition.
3043 2003-09-04  Jakub Jelinek  <jakub@redhat.com>
3045         * sysdeps/generic/unwind.h (_Unwind_GetBSP): Add prototype.
3047 2003-09-03  Ulrich Drepper  <drepper@redhat.com>
3049         * nss/getXXbyYY_r.c (INTERNAL): Explicitly set errno and avoid
3050         returning ERANGE if this wasn't intended.
3052 2003-09-03  Jakub Jelinek  <jakub@redhat.com>
3054         * intl/loadmsgcat.c (open, close, read, mmap, munmap): Define as
3055         function-like macros.
3057 2003-09-03  Ulrich Drepper  <drepper@redhat.com>
3059         * grp/Makefile (CFLAGS-getgrent_r.c): Add -fexceptions.
3060         (CFLAGS-getgrent.c): Likewise.
3061         * pwd/Makefile (CFLAGS-getpwent_r.c): Add -fexceptions.
3062         (CFLAGS-getpwent.c): Likewise.
3063         * shadow/Makefile (CFLAGS-getspent_r.c): Add -fexceptions.
3064         (CFLAGS-getspent.c): Likewise.
3066         * inet/Makefile: Add -fexceptions to CFLAGS for the various
3067         getXXent and getXXbyYY functions.
3069         * locale/loadlocale.c: Use not-cancelable variants of open, close,
3070         and read.
3072 2003-09-02  Jakub Jelinek  <jakub@redhat.com>
3074         * sysdeps/unix/sysv/linux/alpha/Makefile (sysdep_routines): Remove
3075         rt_sigsuspend, rt_sigprocmask, rt_sigtimedwait, rt_sigqueueinfo and
3076         rt_sigpending.
3077         * sysdeps/unix/sysv/linux/alpha/sigaction.c (__syscall_rt_sigaction):
3078         New prototype.
3079         * sysdeps/unix/sysv/linux/arm/syscalls.list (__syscall_*): Remove
3080         unused __syscall_ stubs.
3081         * sysdeps/unix/sysv/linux/arm/Makefile (sysdep_routines): Remove
3082         rt_*.
3083         * sysdeps/unix/sysv/linux/cris/Makefile: Removed.
3084         * sysdeps/unix/sysv/linux/mips/mips64/syscalls.list
3085         (__syscall_recvfrom, __syscall_sendto): Remove unused aliases.
3086         * sysdeps/unix/sysv/linux/mips/syscalls.list (__syscall_*): Remove
3087         unused __syscall_ stubs.
3088         * sysdeps/unix/sysv/linux/mips/Makefile (sysdep_routines): Remove rt_*.
3089         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list
3090         (__syscall_*): Remove unused __syscall_ stubs.
3091         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list
3092         (__syscall_*): Likewise.
3093         * sysdeps/unix/sysv/linux/powerpc/Makefile (sysdep_routines): Remove
3094         rt_*.
3095         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (__syscall_*):
3096         Remove unused __syscall_ stubs.
3097         * sysdeps/unix/sysv/linux/sh/Makefile (sysdep_routines): Remove rt_*.
3098         * sysdeps/unix/sysv/linux/rt_sigaction.c: Removed.
3099         * sysdeps/unix/sysv/linux/rt_sigpending.c: Removed.
3100         * sysdeps/unix/sysv/linux/rt_sigprocmask.c: Removed.
3101         * sysdeps/unix/sysv/linux/rt_sigqueueinfo.c: Removed.
3102         * sysdeps/unix/sysv/linux/rt_sigreturn.c: Removed.
3103         * sysdeps/unix/sysv/linux/rt_sigsuspend.c: Removed.
3104         * sysdeps/unix/sysv/linux/rt_sigtimedwait.c: Removed.
3105         * sysdeps/unix/sysv/linux/s_pread64.c: Removed.
3106         * sysdeps/unix/sysv/linux/s_pwrite64.c: Removed.
3107         * sysdeps/unix/sysv/linux/alpha/gethostname.c: Remove unused
3108         __syscall_* prototypes.
3109         * sysdeps/unix/sysv/linux/alpha/ipc_priv.h: Likewise.
3110         * sysdeps/unix/sysv/linux/alpha/msgctl.c: Likewise.
3111         * sysdeps/unix/sysv/linux/alpha/semctl.c: Likewise.
3112         * sysdeps/unix/sysv/linux/alpha/shmctl.c: Likewise.
3113         * sysdeps/unix/sysv/linux/arm/sigaction.c: Likewise.
3114         * sysdeps/unix/sysv/linux/i386/chown.c: Likewise.
3115         * sysdeps/unix/sysv/linux/i386/fchown.c: Likewise.
3116         * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.
3117         * sysdeps/unix/sysv/linux/i386/fxstat.c: Likewise.
3118         * sysdeps/unix/sysv/linux/i386/getegid.c: Likewise.
3119         * sysdeps/unix/sysv/linux/i386/geteuid.c: Likewise.
3120         * sysdeps/unix/sysv/linux/i386/setuid.c: Likewise.
3121         * sysdeps/unix/sysv/linux/i386/getgid.c: Likewise.
3122         * sysdeps/unix/sysv/linux/i386/getgroups.c: Likewise.
3123         * sysdeps/unix/sysv/linux/i386/getmsg.c: Likewise.
3124         * sysdeps/unix/sysv/linux/i386/xstat.c: Likewise.
3125         * sysdeps/unix/sysv/linux/i386/getresgid.c: Likewise.
3126         * sysdeps/unix/sysv/linux/i386/getresuid.c: Likewise.
3127         * sysdeps/unix/sysv/linux/i386/getrlimit.c: Likewise.
3128         * sysdeps/unix/sysv/linux/i386/getuid.c: Likewise.
3129         * sysdeps/unix/sysv/linux/i386/lchown.c: Likewise.
3130         * sysdeps/unix/sysv/linux/i386/lockf64.c: Likewise.
3131         * sysdeps/unix/sysv/linux/i386/lxstat.c: Likewise.
3132         * sysdeps/unix/sysv/linux/i386/putmsg.c: Likewise.
3133         * sysdeps/unix/sysv/linux/i386/setfsgid.c: Likewise.
3134         * sysdeps/unix/sysv/linux/i386/setfsuid.c: Likewise.
3135         * sysdeps/unix/sysv/linux/i386/setgid.c: Likewise.
3136         * sysdeps/unix/sysv/linux/i386/setgroups.c: Likewise.
3137         * sysdeps/unix/sysv/linux/i386/setregid.c: Likewise.
3138         * sysdeps/unix/sysv/linux/i386/setresgid.c: Likewise.
3139         * sysdeps/unix/sysv/linux/i386/setresuid.c: Likewise.
3140         * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise.
3141         * sysdeps/unix/sysv/linux/i386/setrlimit.c: Likewise.
3142         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
3143         * sysdeps/unix/sysv/linux/ia64/fxstat.c: Likewise.
3144         * sysdeps/unix/sysv/linux/ia64/lxstat.c: Likewise.
3145         * sysdeps/unix/sysv/linux/ia64/sigaction.c: Likewise.
3146         * sysdeps/unix/sysv/linux/ia64/sigpending.c: Likewise.
3147         * sysdeps/unix/sysv/linux/ia64/sigprocmask.c: Likewise.
3148         * sysdeps/unix/sysv/linux/ia64/sigsuspend.c: Likewise.
3149         * sysdeps/unix/sysv/linux/ia64/xstat.c: Likewise.
3150         * sysdeps/unix/sysv/linux/m68k/chown.c: Likewise.
3151         * sysdeps/unix/sysv/linux/mips/ftruncate64.c: Likewise.
3152         * sysdeps/unix/sysv/linux/mips/pread.c: Likewise.
3153         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
3154         * sysdeps/unix/sysv/linux/mips/ptrace.c: Likewise.
3155         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
3156         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
3157         * sysdeps/unix/sysv/linux/mips/sigaction.c: Likewise.
3158         * sysdeps/unix/sysv/linux/mips/truncate64.c: Likewise.
3159         * sysdeps/unix/sysv/linux/mips/ustat.c: Likewise.
3160         * sysdeps/unix/sysv/linux/mips/xmknod.c: Likewise.
3161         * sysdeps/unix/sysv/linux/powerpc/chown.c: Likewise.
3162         * sysdeps/unix/sysv/linux/powerpc/ioctl.c: Likewise.
3163         * sysdeps/unix/sysv/linux/s390/s390-32/chown.c: Likewise.
3164         * sysdeps/unix/sysv/linux/s390/s390-32/lchown.c: Likewise.
3165         * sysdeps/unix/sysv/linux/s390/s390-64/xstat.c: Likewise.
3166         * sysdeps/unix/sysv/linux/s390/s390-64/fxstat.c: Likewise.
3167         * sysdeps/unix/sysv/linux/s390/s390-64/lxstat.c: Likewise.
3168         * sysdeps/unix/sysv/linux/s390/s390-64/sigaction.c: Likewise.
3169         * sysdeps/unix/sysv/linux/s390/s390-64/sigpending.c: Likewise.
3170         * sysdeps/unix/sysv/linux/s390/s390-64/sigprocmask.c: Likewise.
3171         * sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c: Likewise.
3172         * sysdeps/unix/sysv/linux/sparc/sparc64/sigpending.c: Likewise.
3173         * sysdeps/unix/sysv/linux/sparc/sparc64/sigprocmask.c: Likewise.
3174         * sysdeps/unix/sysv/linux/x86_64/sigaction.c: Likewise.
3175         * sysdeps/unix/sysv/linux/pwrite.c: Likewise.
3176         * sysdeps/unix/sysv/linux/execve.c: Likewise.
3177         * sysdeps/unix/sysv/linux/aio_sigqueue.c: Likewise.
3178         * sysdeps/unix/sysv/linux/reboot.c: Likewise.
3179         * sysdeps/unix/sysv/linux/_exit.c: Likewise.
3180         * sysdeps/unix/sysv/linux/ftruncate64.c: Likewise.
3181         * sysdeps/unix/sysv/linux/pwrite64.c: Likewise.
3182         * sysdeps/unix/sysv/linux/fxstat64.c: Likewise.
3183         * sysdeps/unix/sysv/linux/gai_sigqueue.c: Likewise.
3184         * sysdeps/unix/sysv/linux/readahead.c: Likewise.
3185         * sysdeps/unix/sysv/linux/getcwd.c: Likewise.
3186         * sysdeps/unix/sysv/linux/sigwait.c: Likewise.
3187         * sysdeps/unix/sysv/linux/getdents.c: Likewise.
3188         * sysdeps/unix/sysv/linux/readv.c: Likewise.
3189         * sysdeps/unix/sysv/linux/getpriority.c: Likewise.
3190         * sysdeps/unix/sysv/linux/sigaction.c: Likewise.
3191         * sysdeps/unix/sysv/linux/ipc_priv.h: Likewise.
3192         * sysdeps/unix/sysv/linux/llseek.c: Likewise.
3193         * sysdeps/unix/sysv/linux/sysctl.c: Likewise.
3194         * sysdeps/unix/sysv/linux/lxstat64.c: Likewise.
3195         * sysdeps/unix/sysv/linux/mmap64.c: Likewise.
3196         * sysdeps/unix/sysv/linux/ustat.c: Likewise.
3197         * sysdeps/unix/sysv/linux/poll.c: Likewise.
3198         * sysdeps/unix/sysv/linux/pread64.c: Likewise.
3199         * sysdeps/unix/sysv/linux/writev.c: Likewise.
3200         * sysdeps/unix/sysv/linux/pread.c: Likewise.
3201         * sysdeps/unix/sysv/linux/ptrace.c: Likewise.
3202         * sysdeps/unix/sysv/linux/sigpending.c: Likewise.
3203         * sysdeps/unix/sysv/linux/sigprocmask.c: Likewise.
3204         * sysdeps/unix/sysv/linux/sigqueue.c: Likewise.
3205         * sysdeps/unix/sysv/linux/sigsuspend.c: Likewise.
3206         * sysdeps/unix/sysv/linux/sigtimedwait.c: Likewise.
3207         * sysdeps/unix/sysv/linux/sigwaitinfo.c: Likewise.
3208         * sysdeps/unix/sysv/linux/truncate64.c: Likewise.
3209         * sysdeps/unix/sysv/linux/xmknod.c: Likewise.
3210         * sysdeps/unix/sysv/linux/xstat64.c: Likewise.
3212 2003-09-02  Jakub Jelinek  <jakub@redhat.com>
3214         * sysdeps/unix/sysv/linux/i386/sysdep.h (PSEUDO): Revert last change.
3215         * sysdeps/unix/sysv/linux/powerpc/syscalls.list: New file.
3216         * sysdeps/unix/sysv/linux/sparc/syscalls.list: New file.
3218 2003-09-02  Ulrich Drepper  <drepper@redhat.com>
3220         * stdio-common/Makefile (CFLAGS-vprintf.c): Add -fexceptions.
3222         * intl/loadmsgcat.c: For _LIBC, call not cancelable versions of
3223         open, close, and read.
3225         * sysdeps/unix/sysv/linux/i386/sysdep.h (PSEUDO): Also define
3226         *_nocancel name.
3228         * sysdeps/unix/sysv/linux/i386/syscalls.list: Add waitpid.
3230         * libio/Makefile (CFLAGS-oldtmpfile.c): Add -fexceptions.
3231         * sysdeps/generic/tmpfile.c (tmpfile): Use __unlink instead of remove.
3232         * libio/oldtmpfile.c (__old_tmpfile): Likewise.
3234         * misc/Makefile (CFLAGS-getusershell.c): Add -fexceptions.
3236         * io/Makefile (CFLAGS-statfs.c): Add -fexceptions.
3237         (CFLAGS-fstatfs.c): Likewise.
3238         (CFLAGS-statvfs.c): Likewise.
3239         (CFLAGS-fstatvfs.c): Likewise.
3241 2003-09-01  Ulrich Drepper  <drepper@redhat.com>
3243         * misc/Makefile (CFLAGS-getsysstats.c): Add -fexceptions.
3244         * posix/unistd.h: Remove __THROW from pathconf, fpathconf,
3245         sysconf.
3246         * posix/Makefile (CFLAGS-sysconf.c): Add -fexceptions.
3247         (CFLAGS-pathconf.c): Likewise.
3248         (CFLAGS-fpathconf.c): Likewise.
3250         * misc/Makefile (CFLAGS-fstab.c): Add -fexceptions.
3251         * misc/fstab.h: Remove all __THROW.
3252         * misc/Makefile (CFLAGS-mntent.c): Add -fexceptions.
3253         (CFLAGS-mntent_r.c): Likewise.
3254         * misc/mntent.h: Remove most __THROW.
3256         * misc/Makefile (CFLAGS-mkstemp.c): Add -fexceptions.
3257         (CFLAGS-mkstemp64.c): Likewise.
3259         * sysdeps/generic/wordexp.c (parse_comm): Disable cancellation
3260         around call to exec_comm.
3261         * posix/wordexp.h: Remove __THROW from wordexp.
3262         * posix/Makefile (CFLAGS-wordexp.c): Add -fexceptions.
3264         * sysdeps/unix/sysv/linux/getloadavg.c (getloadavg): Use
3265         not-cancelable functions.
3267         * libio/Makefile (CFLAGS-oldiofopen.c): Add -fexceptions.
3268         (CFLAGS-iofopen.c): Likewise.
3269         (CFLAGS-iofopen64.c): Likewise.
3271         * stdlib/fmtmsg.c (fmtmsg): Disable cancellation around output
3272         functions.
3273         * stdlib/Makefile (CFLAGS-fmtmsg.c): Add -fexceptions.
3274         * stdlib/fmtmsg.h: Remove __THROW from fmtmsg.
3276         * stdlib/stdlib.h: Remove __THROW from posix_openpt and getpt.
3277         * login/Makefile (CFLAGS-getpt.c): Add -fexceptions.
3279 2003-09-01  Thorsten Kukuk  <kukuk@suse.de>
3281         * nis/nss_compat/compat-spwd.c (getspnam_plususer): Return
3282         NSS_STATUS_SUCCESS if entry was found.
3283         (getspent_next_file): Store user in blacklist after entry
3284         was found, use innetgr.
3286 2003-09-01  Jakub Jelinek  <jakub@redhat.com>
3288         * sysdeps/unix/sysv/linux/powerpc/powerpc32/posix_fadvise.c: New.
3289         * sysdeps/unix/sysv/linux/powerpc/powerpc32/posix_fadvise64.c: New.
3291         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Fix tls offset
3292         computation for TCB_AT_TP.  Support l_firstbyte_offset != 0 for
3293         DTV_AT_TP, optimize.
3295 2003-08-31  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
3297         * sysdeps/unix/sysv/linux/sh/Versions: Add posix_fadvise64 and
3298         posix_fallocate64 at GLIBC_2.3.3.
3299         * sysdeps/unix/sysv/linux/sh/sysdep.h (PSEUDO_ERRVAL): Define.
3300         (PSEUDO_END_ERRVAL, ret_ERRVAL): Likewise.
3302 2003-08-08  H.J. Lu  <hongjiu.lu@intel.com>
3304         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Remove __syscall_
3305         functions.
3307 2003-08-31  Ulrich Drepper  <drepper@redhat.com>
3309         * libio/libioP.h (_IO_acquire_lock_fct): Define as inline function.
3310         Code by Richard Henderson.
3312 2003-08-31  Philip Blundell  <philb@gnu.org>
3314         * sysdeps/unix/sysv/linux/arm/Versions: Add posix_fadvise64 and
3315         posix_fallocate64 at GLIBC_2.3.3.
3317 2003-08-31  Ulrich Drepper  <drepper@redhat.com>
3319         * sysdeps/x86_64/bsd-_setjmp.S: Use HIDDEN_JUMPTARGET.
3320         * include/setjmp.h: Add libc_hidden_proto for __sigsetjmp.
3322 2003-08-30  Jakub Jelinek  <jakub@redhat.com>
3324         * sysdeps/generic/sysdep.h (cfi_window_save, CFI_WINDOW_SAVE): Define.
3325         * sysdeps/unix/sysv/linux/sparc/bits/setjmp.h: Allow file to be
3326         included multiple times.
3327         * sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__clone): Pass
3328         ptid, tls, ctid arguments to the kernel.
3329         * sysdeps/unix/sysv/linux/sparc/sparc32/getpagesize.c (__getpagesize):
3330         Use INTERNAL_SYSCALL instead of __syscall_getpagesize.
3331         * sysdeps/unix/sysv/linux/sparc/sparc32/sigaction.c
3332         (__libc_sigaction): Use INLINE_SYSCALL instead of
3333         __syscall_rt_sigaction.
3334         * sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list
3335         (__syscall_getgroups, __syscall_getpagesize, __syscall__llseek,
3336         __syscall_setfsgid, __syscall_setfsuid, __syscall_setgid,
3337         __syscall_setgroups, __syscall_setregid, __syscall_setreuid,
3338         __syscall_ipc, __syscall_setuid, __syscall_rt_sigaction,
3339         __syscall_rt_sigpending, __syscall_rt_sigprocmask,
3340         __syscall_rt_sigqueueinfo, __syscall_rt_sigsuspend,
3341         __syscall_rt_sigtimedwait): Remove unneeded syscall stubs.
3342         * sysdeps/unix/sysv/linux/sparc/sparc32/Makefile (sysdep_routines):
3343         Remove rt_sigsuspend, rt_sigprocmask, rt_sigtimedwait,
3344         rt_sigqueueinfo, rt_sigaction and rt_sigpending.
3345         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h
3346         (__CLONE_SYSCALL_STRING): Define.
3347         * sysdeps/unix/sysv/linux/sparc/sparc32/socket.S (__socket): Add
3348         CFI directives.
3349         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h
3350         (__CLONE_SYSCALL_STRING): Define.
3351         * sysdeps/unix/sysv/linux/sparc/sysdep.h (INLINE_CLONE_SYSCALL):
3352         Define.
3353         * sysdeps/unix/sysv/linux/sparc/system.c: New file.
3355 2003-08-30  Ulrich Drepper  <drepper@redhat.com>
3357         * sunrpc/rpc/clnt.h: Remove a few __THROW.
3358         * sunrpc/Makefile (CFLAGS-auth_unix.c): Add -fexceptions.
3359         (CFLAGS-key_call.c): Likewise.
3360         (CFLAGS-pmap_rmt.c): Likewise.
3361         (CFLAGS-clnt_perr.c): Likewise.
3362         * sunrpc/rpc/auth.h: Remove serveral __THROW.
3364         * inet/Makefile (CFLAGS-gethstbyad_r.c): Add -fexceptions.
3365         (CFLAGS-gethstbynm_r.c): Likewise.
3366         (CFLAGS-gethstbynm2_r.c): Likewise.
3367         (CFLAGS-rcmd.c): Likewise.
3368         * resolv/Makefile (CFLAGS-res_hconf.c): Add -fexceptions.
3370         * argp/Makefile (CFLAGS-argp-help.c): Add -fexceptions.
3371         (CFLAGS-argp-fmtstream.c): Likewise.
3372         * argp/argp.h: Remove a number of __THROW.
3374         * misc/sys/syslog.h (vsyslog): Remove __THROW.
3376         * misc/Makefile (CFLAGS-getpass.c): Add -fexceptions.
3377         * misc/getpass.c (getpass): Add cleanup handler to ensure the
3378         stream is closed even if the thread is canceled.
3379         (call_fclose): New function.
3380         * posix/unistd.h: Remove __THROW from getpass prototype.
3382         * posix/Makefile (CFLAGS-getopt.c): Add -fexceptions.
3384         * signal/signal.h (psignal): Remove __THROW.
3385         * stdio-common/Makefile (CFLAGS-psignal.c): Add -fexceptions.
3387         * misc/Makefile (CFLAGS-error.c): Define.
3388         * misc/error.c (error): Disable cancellation handling around the
3389         actual output.  The message should in any case be printed.
3390         (error_at_line): Likewise.
3392         * misc/error.h: Protect parameter names with leading __.
3394 2003-08-28  Carlos O'Donell  <carlos@baldric.uwo.ca>
3396         * sysdeps/unix/sysv/linux/hppa/syscalls.list: Add semtimedop.
3398 2003-08-29  Jakub Jelinek  <jakub@redhat.com>
3400         * libio/iofgetpos64.c (_IO_new_fgetpos64): Move lock release to the
3401         end.
3403 2003-08-29  Ulrich Drepper  <drepper@redhat.com>
3405         * libio/stdio.h: Remove a few more __THROW.
3407 2003-08-29  Jakub Jelinek  <jakub@redhat.com>
3409         * libio/Makefile: Compile fputc.c, fputwc.c, freopen64.c, freopen.c,
3410         fseek.c, fseeko64.c, fseeko.c, ftello64.c, ftello.c, fwide.c, getc.c,
3411         getchar.c, getwc.c, getwchar.c, iofclose.c, iofflush.c, iofgetpos64.c,
3412         iofgetpos.c, iofgets.c, iofgetws.c, iofputs.c, iofputws.c, iofread.c,
3413         iofsetpos64.c, iofsetpos.c, ioftell.c, iofwrite.c, iogetdelim.c,
3414         iogetline.c, iogets.c, iogetwline.c, ioputs.c, ioseekoff.c,
3415         ioseekpos.c, iosetbuffer.c, iosetvbuf.c, ioungetc.c, ioungetwc.c,
3416         oldfileops.c, oldiofclose.c, oldiofgetpos64.c, oldiofgetpos.c,
3417         oldiofsetpos64.c, oldiofsetpos.c, peekc.c, putc.c, putchar.c, putwc.c,
3418         putwchar.c and rewind.c with exceptions.
3419         * sysdeps/generic/bits/stdio-lock.h (_IO_acquire_lock,
3420         _IO_release_lock): Define.
3421         * libio/fileops.c (_IO_new_file_underflow): Use it.
3422         * libio/fputc.c (fputc): Likewise.
3423         * libio/fputwc.c (fputwc): Likewise.
3424         * libio/freopen64.c (freopen64):
3425         * libio/freopen.c (freopen): Likewise.
3426         * libio/fseek.c (fseek): Likewise.
3427         * libio/fseeko64.c (fseeko64): Likewise.
3428         * libio/fseeko.c (fseeko): Likewise.
3429         * libio/ftello64.c (ftello64): Likewise.
3430         * libio/ftello.c (ftello): Likewise.
3431         * libio/fwide.c (fwide): Likewise.
3432         * libio/getc.c (_IO_getc): Likewise.
3433         * libio/getchar.c (getchar): Likewise.
3434         * libio/getwc.c (_IO_getwc): Likewise.
3435         * libio/getwchar.c (getwchar): Likewise.
3436         * libio/iofclose.c (_IO_new_fclose):
3437         * libio/iofflush.c (_IO_fflush): Likewise.
3438         * libio/iofgetpos64.c (_IO_new_fgetpos64): Likewise.
3439         * libio/iofgetpos.c (_IO_new_fgetpos): Likewise.
3440         * libio/iofgets.c (_IO_fgets): Likewise.
3441         * libio/iofgetws.c (fgetws): Likewise.
3442         * libio/iofputs.c (_IO_fputs): Likewise.
3443         * libio/iofputws.c (fputws): Likewise.
3444         * libio/iofread.c (_IO_fread): Likewise.
3445         * libio/iofsetpos64.c (_IO_new_fsetpos64): Likewise.
3446         * libio/iofsetpos.c (_IO_new_fsetpos): Likewise.
3447         * libio/ioftell.c (_IO_ftell): Likewise.
3448         * libio/iofwrite.c (_IO_fwrite): Likewise.
3449         * libio/iogetdelim.c (_IO_getdelim): Likewise.
3450         * libio/iogets.c (_IO_gets): Likewise.
3451         * libio/ioputs.c (_IO_puts): Likewise.
3452         * libio/ioseekoff.c (_IO_seekoff): Likewise.
3453         * libio/ioseekpos.c (_IO_seekpos): Likewise.
3454         * libio/iosetbuffer.c (_IO_setbuffer): Likewise.
3455         * libio/iosetvbuf.c (_IO_setvbuf): Likewise.
3456         * libio/ioungetc.c (_IO_ungetc): Likewise.
3457         * libio/ioungetwc.c (ungetwc): Likewise.
3458         * libio/oldiofclose.c (_IO_old_fclose): Likewise.
3459         * libio/oldiofgetpos64.c (_IO_old_fgetpos64): Likewise.
3460         * libio/oldiofgetpos.c (_IO_old_fgetpos): Likewise.
3461         * libio/oldiofsetpos64.c (_IO_old_fsetpos64): Likewise.
3462         * libio/oldiofsetpos.c (_IO_old_fsetpos): Likewise.
3463         * libio/peekc.c (_IO_peekc_locked): Likewise.
3464         * libio/putc.c (_IO_putc): Likewise.
3465         * libio/putchar.c (putchar): Likewise.
3466         * libio/putwc.c (putwc): Likewise.
3467         * libio/putwchar.c (putwchar): Likewise.
3468         * libio/rewind.c (rewind): Likewise.
3469         * libio/wfileops.c (_IO_wfile_underflow): Likewise.
3471 2003-08-29  Ulrich Drepper  <drepper@redhat.com>
3473         * signal/signal.h: sighold, sigrelse, sigignore, sigset were
3474         available in XPG4.2.
3476 2003-08-27  Phil Knirsch  <pknirsch@redhat.com>
3477             Jakub Jelinek  <jakub@redhat.com>
3479         * sunrpc/svc.c (svc_getreqset): Fix fds_bits reading on 64-bit
3480         big endian arches.  Don't read beyond end of fds_bits array.
3482 2003-04-27  Bruno Haible  <bruno@clisp.org>
3484         * manual/message.texi (Advanced gettext functions): Add information
3485         about Korean, Portuguese, Latvian. Gaeilge is also known as Irish.
3486         Add section about Lithuanian, reported by Ricardas Cepas
3487         <rch@richard.eu.org>.
3488         Add information about Croatian.
3489         Ukrainian is like Russian, reported by Andy Rysin <arysin@yahoo.com>.
3490         Remove remark about continuation lines that is not true for PO files.
3491         Fix formula for Slovenian, reported by Roman Maurer
3492         <roman.maurer@amis.net>.
3494 2003-08-27  Ulrich Drepper  <drepper@redhat.com>
3496         * math/math_private.h: Declare __copysignf.
3497         * sysdeps/ieee754/flt-32/s_scalbnf.c: Use __copysignf instead of
3498         copysignf.
3500         * sysdeps/x86_64/fpu/bits/mathinline.h: Define __signbitf,
3501         __signbit, and __signbitl inline functions.
3503         * sysdeps/unix/sysv/linux/x86_64/__start_context.S: Use
3504         HIDDEN_JUMPTARGET instead of JUMPTARGET to call exit().
3506         * sysdeps/x86_64/bsd-_setjmp.S [PIC]: Jump to __GI___sigsetjmp.
3507         * sysdeps/x86_64/setjmp.S: Add libc_hidden_def for __sigsetjmp.
3509 2003-08-27  Jakub Jelinek  <jakub@redhat.com>
3511         * inet/inet_mkadr.c (inet_makeaddr): Optimize.
3513 2003-08-27  Ulrich Drepper  <drepper@redhat.com>
3515         * include/stdio.h: Add declarations for __builtin_fwrite and
3516         __builtin_fwrite_unlocked.
3518 2003-08-27  Jakub Jelinek  <jakub@redhat.com>
3520         * sysdeps/unix/opendir.c (__opendir): Make sure even struct dirent64
3521         fits into allocation.  Add padding on 32-bit arches so that
3522         dirp->data is enough aligned for struct dirent64.
3523         Avoid clearing of the buffer, just clear DIR structure.
3525 2003-08-26  Ulrich Drepper  <drepper@redhat.com>
3527         * nss/nsswitch.c: Add libc_hidden_def for __nss_lookup_function.
3528         * nss/nsswitch.h: Add libc_hidden_proto for __nss_lookup_function.
3530 2003-08-26  Steven Munroe  <sjmunroe@us.ibm.com>
3532         * sysdeps/powerpc/powerpc64/elf/Makefile: New file.
3534 2003-08-26  Jakub Jelinek  <jakub@redhat.com>
3536         * login/programs/utmpdump.c (print_entry): Cast tv_usec to long
3537         to match format string.
3538         * sysdeps/unix/sysv/linux/sparc/sparc32/semctl.c (union semun): Add
3539         __old_buf.
3540         (__new_semctl): Shut up warning.
3541         * sysdeps/unix/sysv/linux/sparc/sparc32/dl-procinfo.h
3542         (_dl_string_hwcap): Add __attribute__ ((always_inline)).
3544 2003-08-26  Jakub Jelinek  <jakub@redhat.com>
3546         * elf/ldconfig.c (search_dir): When checking for GNU-style .so
3547         link file use the real file name, not the resolved name we got by
3548         following the symlinks.
3550 2003-08-25  Ulrich Drepper  <drepper@redhat.com>
3552         * libio/oldfileops.c (_IO_old_file_init): Initialize _mode field
3553         if the object size is large enough.
3555 2003-08-25  Jakub Jelinek  <jakub@redhat.com>
3557         * elf/ldconfig.c (search_dir): Treat symlink as regular file
3558         if it won't point to itself unless it is .so symlink for the linker.
3560 2003-08-25  Ulrich Drepper  <drepper@redhat.com>
3562         * libio/libio.h (_IO_fwide): In the mode==0 optimization, don't
3563         use _mode if _IO_fwide_maybe_incompatible.
3564         * libio/iofwide.c (_IO_fwide): Move the test for mode == 0 after
3565         the compatibility test.
3567 2003-08-25  Jakub Jelinek  <jakub@redhat.com>
3569         * elf/cache.c (save_cache): Don't write beyond end of file_entries
3570         buffer.
3571         Duplicate last old cache entry if the count would be odd.
3573 2003-08-25  Andreas Jaeger  <aj@suse.de>
3575         * sysdeps/unix/sysv/linux/posix_fadvise64.c: Cast arguments of
3576         __LONG_LONG_PAIR to long.
3578 2003-08-25  Philip Blundell  <philb@gnu.org>
3580         * sysdeps/unix/sysv/linux/arm/sysdep.h (PSEUDO_ERRVAL): Define.
3581         (PSEUDO_END_ERRVAL, ret_ERRVAL): Likewise.
3583 2003-08-18  Alfred M. Szmidt  <ams@kemisten.nu>
3585         * sysdeps/generic/bits/libc-lock.h (__libc_cleanup_pop): Redefine
3586         and use __libc_cleanup_region_end instead.
3588 2003-08-25  Ulrich Drepper  <drepper@redhat.com>
3590         * elf/ldconfig.c (search_dir): Revert patch of 2003-7-21.
3592 2003-08-22  Ulrich Drepper  <drepper@redhat.com>
3594         * io/fcntl.h (posix_fallocate): Change type of third parameter to
3595         off_t.
3596         (posix_fallocate64): Change type of third parameter to off64_t.
3597         * sysdeps/generic/posix_fallocate.c: Adjust for type change.
3598         * sysdeps/posix/posix_fallocate.c: Likewise.
3599         * sysdeps/generic/posix_fallocate64.c: Likewise.
3600         * sysdeps/posix/posix_fallocate64.c: Likewise.  Add compatibility
3601         code for 32-bit platforms.
3602         * sysdeps/unix/sysv/linux/i386/Versions: Add new version for
3603         posix_fallocate64.
3604         * sysdeps/unix/sysv/linux/powerpc/powerpc32/Versions: Likewise.
3605         * sysdeps/unix/sysv/linux/s390/s390-32/Versions: Likewise.
3606         * sysdeps/unix/sysv/linux/sparc/sparc32/Versions: Likewise.
3608 2003-08-19  Ulrich Drepper  <drepper@redhat.com>
3610         * string/bits/string2.h (__STRING2_COPY_TYPE): Add attribute to
3611         the type, not to name.
3613         * stdio-common/test-vfprintf.c (main): Don't write temporary file
3614         into source directory.
3616         * malloc/malloc.c (_int_free): Add cheap test for some invalid
3617         block sizes.
3619         * sysdeps/unix/sysv/linux/i386/posix_fadvise64.S: Fix typo in
3620         syscall name.
3622 2003-08-18  Ulrich Drepper  <drepper@redhat.com>
3624         * sysdeps/unix/sysv/linux/shm_open.c (shm_open): Fold EISDIR error
3625         into EINVAL.
3627 2003-08-18  H.J. Lu  <hongjiu.lu@intel.com>
3629         * sysdeps/ia64/dl-machine.h (elf_machine_rela): Use _dl_reloc_bad_type.
3630         (elf_machine_lazy_rel): Likewise.
3632 2003-08-18  Art Haas  <ahaas@airmail.net>
3634         * malloc/malloc.h: Remove unneeded ';' where closing the C++
3635         extern block.
3637 2003-08-18  Ulrich Drepper  <drepper@redhat.com>
3639         * sysdeps/ia64/dl-fptr.h (ELF_MACHINE_LOAD_ADDRESS): Support
3640         loading big binaries where @gprel(sym) cannot be handled in 'add'
3641         but instead has to be used with 'movl'.
3643 2003-08-17  Juergen Kreileder <jk@blackdown.de>
3644             Andreas Jaeger  <aj@suse.de>
3646         * sysdeps/x86_64/bits/byteswap.h: New file.
3648 2003-08-17  Andreas Jaeger  <aj@suse.de>
3650         * sysdeps/unix/sysv/linux/i386/posix_fadvise64.S: Fix typo.
3652 2003-08-16  Jakub Jelinek  <jakub@redhat.com>
3654         * sysdeps/powerpc/powerpc32/sysdep.h (PSEUDO_ERRVAL,
3655         PSEUDO_RET_ERRVAL, ret_ERRVAL, PSEUDO_END_ERRVAL): Define.
3656         * sysdeps/powerpc/powerpc64/sysdep.h (PSEUDO_ERRVAL,
3657         PSEUDO_RET_ERRVAL, ret_ERRVAL, PSEUDO_END_ERRVAL): Define.
3658         * sysdeps/unix/alpha/sysdep.h (PSEUDO_ERRVAL,
3659         ret_ERRVAL, PSEUDO_END_ERRVAL): Define.
3660         * sysdeps/unix/mips/sysdep.h (PSEUDO_ERRVAL,
3661         ret_ERRVAL, PSEUDO_END_ERRVAL): Define.
3662         * sysdeps/unix/sparc/sysdep.h (PSEUDO_ERRVAL,
3663         ret_ERRVAL): Define.
3664         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (PSEUDO_ERRVAL,
3665         PSEUDO_END_ERRVAL, ret_ERRVAL): Define.
3666         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (PSEUDO_ERRVAL,
3667         PSEUDO_END_ERRVAL, ret_ERRVAL): Define.
3668         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h (PSEUDO_ERRVAL):
3669         Define.
3670         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h (PSEUDO_ERRVAL,
3671         PSEUDO_END_ERRVAL, ret_ERRVAL): Define.
3672         * sysdeps/unix/sysdep.h (PSEUDO_END_ERRVAL): Define.
3674         * sysdeps/unix/sysv/linux/syscalls.list (posix_fadvise64,
3675         posix_fadvise64_64): Remove.
3676         * sysdeps/unix/sysv/linux/alpha/syscalls.list (posix_fadvise64): Add
3677         V flag.
3678         * sysdeps/unix/sysv/linux/ia64/syscalls.list (posix_fadvise64):
3679         Likewise.
3680         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list
3681         (posix_fadvise64): Likewise.
3682         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list
3683         (posix_fadvise64): Likewise.
3684         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list
3685         (posix_fadvise64): Likewise.
3686         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (posix_fadvise64):
3687         Likewise.
3688         * sysdeps/unix/sysv/linux/i386/posix_fadvise64_64.S: Moved to...
3689         * sysdeps/unix/sysv/linux/i386/posix_fadvise64.S: ...here.
3690         (__posix_fadvise64_l64): Fix a typo in fadvise64 syscall invocation.
3691         (__posix_fadvise64_l32): New function.
3692         * sysdeps/unix/sysv/linux/i386/Makefile: Revert last change.
3693         * sysdeps/unix/sysv/linux/powerpc/powerpc32/Versions (libc): Export
3694         posix_fadvise64@@GLIBC_2.3.3.
3695         * sysdeps/unix/sysv/linux/s390/s390-32/Versions (libc): Likewise.
3696         * sysdeps/unix/sysv/linux/sparc/sparc32/Versions (libc): Likewise.
3697         * sysdeps/unix/sysv/linux/posix_fadvise.c (posix_fadvise): Return
3698         error value.
3699         * sysdeps/unix/sysv/linux/posix_fadvise64.c: New file.
3701         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h
3702         (SYSCALL_ERROR_HANDLER): Use TLS errno/__libc_errno if USE___THREAD.
3704 2003-08-15  Jakub Jelinek  <jakub@redhat.com>
3706         * sysdeps/sparc/sparc32/dl-machine.h (WEAKADDR): Remove.
3707         (elf_machine_matches_host): Remove weak extern stuff.
3708         Use GL(dl_hwcap) unconditionally and GL(dl_hwcap_mask) if SHARED.
3709         (elf_machine_runtime_setup, sparc_fixup_plt): Remove weak extern
3710         stuff.  Use GL(dl_hwcap) unconditionally.
3712 2003-08-16  Alan Modra  <amodra@bigpond.net.au>
3714         * sysdeps/powerpc/powerpc64/elf/start.S: Add a nop after
3715         __libc_start_main branch.
3717 2003-08-16  Jakub Jelinek <jakub@redhat.com>,
3718             Andreas Jaeger  <aj@suse.de>
3720         * sysdeps/generic/posix_fadvise.c (posix_fadvise): Return ENOSYS
3721         instead of setting errno.
3722         * sysdeps/generic/posix_fadvise64.c (posix_fadvise64): Likewise.
3724 2003-08-16  Andreas Jaeger  <aj@suse.de>
3726         * sysdeps/generic/posix_fadvise.c (posix_fadvise): Adjust prototype.
3727         * sysdeps/generic/posix_fadvise64.c (posix_fadvise64): Likewise.
3729 2003-08-15  Ulrich Drepper  <drepper@redhat.com>
3731         * io/fcntl.h (posix_fadvise64): Change type of third parameter to
3732         off_t.
3733         * sysdeps/unix/sysv/linux/posix_fadvise.c: Adjust definition.
3734         * sysdeps/unix/make-syscalls.sh: Recognize V prefix to the parameter
3735         description indicating the error value is returned, not -1.
3736         * sysdeps/unix/sysv/linux/kernel-features.h: Add definition of
3737         __ASSUME_FADVISE64_64_SYSCALL.
3738         * sysdeps/unix/sysv/linux/syscalls.list: Don't define madvise and
3739         posix_madvise in one file.  Have posix_madvise defined with error
3740         value returned.
3741         Define posix_fadvise64_64 entry.  Add version info to posix_fadvise64
3742         entry.
3743         * sysdeps/unix/sysv/linux/i386/posix_fadvise.S: New file.
3744         * sysdeps/unix/sysv/linux/i386/sysdep.h: Define PSEUDO_ERRVAL,
3745         PSEUDO_END_ERRVAL, and ret_ERRVAL.
3746         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Likewise.
3747         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
3748         * sysdeps/unix/sysv/linux/i386/Versions [GLIBC_2.3.3]: Add
3749         posix_fadvise64.
3751         * posix/Makefile (routines): Add posix_madvise.
3752         * sysdeps/generic/madvise.c: Don't define posix_madvise.
3753         * sysdeps/generic/posix_madvise.c: New file.
3754         * sysdeps/unix/sysv/aix/posix_madvise.c: New file.
3755         * sysdeps/unix/sysv/linux/i386/Makefile [subdir=io] (subdir_routines):
3756         Add posix_fadvise64_64.
3758 2003-08-15  Jakub Jelinek  <jakub@redhat.com>
3760         * assert/assert.h (assert_perror): Use __builtin_expect for gcc >=
3761         3.0, not for !gcc or gcc < 3.0.
3763 2003-08-11  Carlos O'Donell  <carlos@baldric.uwo.ca>
3765         * dlfcn/default.c (main): Cast dlsym loaded value to same type as main.
3766         Address passed to test_in_mod1 and test_in_mod2 without casting.
3767         * dlfcn/defaultmod1.c: Change prototype of test_in_mod1.
3768         (test_in_mod1): Cast dlsym loaded value to same type as mainp.
3769         * dlfcn/defaultmod2.c: Change prototype of test_in_mod2.
3770         (test_in_mod2): Cast dlsym loaded value to same type as mainp.
3772 2003-08-15  Jakub Jelinek  <jakub@redhat.com>
3774         * sysdeps/sparc/sparc32/elf/configure.in (libc_cv_sparc32_tls):
3775         Change quotes before using [].
3777         * sysdeps/unix/sysv/linux/sparc/sys/user.h: New file.
3779         * sysdeps/sparc/sparc32/bits/atomic.h (__sparc32_atomic_lock):
3780         Renamed to...
3781         (__sparc32_atomic_locks): ...this.  Change into 64-byte array.
3782         (__sparc32_atomic_do_lock, __sparc32_atomic_do_unlock): Add addr
3783         argument.  Select one of 64 locks from address bits.
3784         (atomic_compare_and_exchange_val_acq,
3785         atomic_compare_and_exchange_bool_acq): Pass memory address to
3786         __sparc32_atomic_do_{,un}lock.
3788 2003-08-14  Ulrich Drepper  <drepper@redhat.com>
3790         * assert/assert.h (assert): Use !! in front of expression to allow
3791         use of pointers.
3793         * iconvdata/cp932.c: Fixed checking of a few border of code areas.
3794         Changed conversion of JIS X 0201 from using a table to calculating.
3795         * iconvdata/euc-jp-ms.c: Fixed conversion table and rewrote
3796         conversion routine.  Changed CHARSET_NAME definition from EUCJP-MS to
3797         EUC-JP-MS.
3798         * iconvdata/tst-tables.sh: Add CP932 and EUC-JP-MS.
3799         * iconvdata/CP932.irreversible: New file.
3800         * iconvdata/EUC-JP-MS.irreversible: New file.
3801         Patch by MORIYAMA Masayuki <msyk@mtg.biglobe.ne.jp>.
3803 2003-08-13  Ulrich Drepper  <drepper@redhat.com>
3805         * sysdeps/unix/sysv/linux/i386/syscalls.list: Add time syscall.
3807         * elf/Makefile: Use LC_ALL=C in a few cases where we call external
3808         text processing tools.
3810         * sysdeps/pthread/aio_misc.h (struct waitlist): Don't add caller_pid
3811         element unless BROKEN_THREAD_SIGNALS is defined.
3812         (struct requestlist): Likewise.
3813         * sysdeps/pthread/aio_misc.c (__aio_enqueue_request): Don't fill in
3814         caller_pid of new request unless BROKEN_THREAD_SIGNALS is defined.
3815         * sysdeps/pthread/aio_suspend.c (aio_suspend): Likewise.
3816         * sysdeps/pthread/aio_notify.c (__aio_notify_only): Remove caller_pid
3817         parameter unless BROKEN_THREAD_SIGNALS is defined.  Adjust callers.
3818         Pass current PID to __aio_sigqueue.
3819         * sysdeps/pthread/lio_listio.c (lio_listio): Adjust __aio_notify_only
3820         call.  Don't initialize caller_pid field of waitlist element.
3822 2003-08-12  Jakub Jelinek  <jakub@redhat.com>
3824         * libio/libioP.h (_IO_vtable_offset): Define.
3825         * libio/freopen.c (freopen): Use it.
3826         * libio/ioputs.c (_IO_puts): Likewise.
3827         * libio/freopen64.c (freopen64): Likewise.
3828         * libio/genops.c (__underflow, __uflow, _IO_flush_all_lockp):
3829         Likewise.
3830         * libio/iofclose.c (_IO_new_fclose): Likewise.
3831         * libio/iofputs.c (_IO_fputs): Likewise.
3832         * libio/ioftell.c (_IO_ftell): Likewise.
3833         * libio/iofwrite.c (_IO_fwrite): Likewise.
3834         * libio/ioseekoff.c (_IO_seekoff_unlocked): Likewise.
3835         * libio/iosetbuffer.c (_IO_setbuffer): Likewise.
3836         * stdio-common/vfprintf.c (ORIENT, vfprintf): Likewise.
3837         * stdio-common/vfscanf.c (ORIENT): Likewise.
3839 2003-08-11  Ulrich Drepper  <drepper@redhat.com>
3841         * assert/assert.h: Use __builtin_expect in assert and
3842         assert_perror definitions if possible.
3844 2003-08-07  Jakub Jelinek  <jakub@redhat.com>
3846         * sysdeps/generic/ldsodefs.h (_rtld_global): Add
3847         _dl_rtld_lock_recursive and _dl_rtld_unlock_recursive.
3848         * elf/rtld.c (rtld_lock_default_lock_recursive,
3849         rtld_lock_default_unlock_recursive): New functions.
3850         (dl_main): Initialize _dl_rtld_lock_recursive and
3851         _dl_rtld_unlock_recursive.
3853 2003-08-05  Jakub Jelinek  <jakub@redhat.com>
3855         * elf/ldconfig.c (main): Append SLIBDIR and LIBDIR to
3856         config_file directories instead of prepending.
3858 2003-08-02  Ulrich Drepper  <drepper@redhat.com>
3860         * sysdeps/unix/sysv/linux/kernel-features.h: Define
3861         __ASSUME_CLONE_STOPPED.
3863 2003-08-01  Ulrich Drepper  <drepper@redhat.com>
3865         * sysdeps/generic/bits/libc-lock.h
3866         (__libc_cleanup_push,__libc_cleanup_pop): Define even here.
3868 2003-08-01  Roland McGrath  <roland@frob.com>
3870         * sysdeps/mach/hurd/getdents.c: Just use sysdeps/generic/getdents.c.
3872 2003-07-31  Jakub Jelinek  <jakub@redhat.com>
3874         * sysdeps/generic/bits/types.h (__ssize_t): Use __SSIZE_T_TYPE
3875         instead of __SWORD_TYPE.
3876         * sysdeps/generic/bits/typesizes.h (__SSIZE_T_TYPE): Define.
3877         * sysdeps/mach/hurd/bits/typesizes.h (__SSIZE_T_TYPE): Define.
3878         * sysdeps/unix/bsd/bsd4.4/freebsd/bits/typesizes.h (__SSIZE_T_TYPE):
3879         Define.
3880         * sysdeps/unix/sysv/linux/alpha/bits/typesizes.h (__SSIZE_T_TYPE):
3881         Define.
3882         * sysdeps/unix/sysv/linux/sparc/bits/typesizes.h (__SSIZE_T_TYPE):
3883         Define.
3884         * sysdeps/unix/sysv/linux/s390/bits/typesizes.h: New file.
3886         * dlfcn/dlerror.c (once): New.
3887         (dlerror): Call __libc_once.
3888         (_dlerror_run): Remove once.
3890         * sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h (struct sigcontext):
3891         Sync with 2.5.7 and 2.5.73 kernel changes.
3893         * dlfcn/eval.c (funcall): Add noinline attribute to shut up warnings.
3894         * elf/rtld.c (dl_main): Cast ElfW(Addr) arguments with %Zx/%Zd
3895         formats to size_t.
3896         * elf/dl-lookup.c (_dl_debug_bindings): Likewise.
3897         * elf/tst-tls6.c (do_test): Use %zd format for l_tls_modid.
3898         * elf/tst-tls8.c (do_test): Use %zd format for modid1 and modid2.
3899         * gmon/tst-sprofil.c (main): Add parens to shut up warning.
3900         * iconv/tst-iconv3.c (main): Use %td instead of %zd for pointer
3901         difference argument.
3902         * stdio-common/tst-wc-printf.c (main): Cast arguments with %C
3903         format to wint_t.
3904         * stdlib/tst-limits.c (main): For WORD_BIT and LONG_BIT, use
3905         %d format and cast expected value to int.
3906         * sysdeps/generic/libc-start.c (STATIC): Add
3907         __attribute__((always_inline) if LIBC_START_MAIN is already defined.
3908         * sysdeps/powerpc/fpu/w_sqrt.c (a_nan, a_inf): Change from uint32_t
3909         to ieee_float_shape_type.
3910         (__sqrt): Avoid type punning.
3911         * sysdeps/powerpc/fpu/w_sqrtf.c (a_nan, a_inf): Change from uint32_t
3912         to ieee_float_shape_type.
3913         (__sqrtf): Avoid type punning.
3914         * sysdeps/s390/s390-32/dl-machine.h (elf_machine_rela): Don't define
3915         refsym if in dl-conflict.c.
3916         * sysdeps/s390/s390-64/dl-machine.h (elf_machine_rela): Likewise.
3917         * sysdeps/unix/sysv/linux/i386/semctl.c (union semun): Add __old_buf.
3918         (__new_semctl): Shut up warning.
3919         * sysdeps/unix/sysv/linux/semctl.c (union semun): Add __old_buf.
3920         (__new_semctl): Shut up warning.
3921         * sysdeps/unix/sysv/linux/shmctl.c (__new_shmctl): Wrap long lines.
3922         Change old into union of __old_shmid_ds and __old_shminfo structs.
3923         Adjust all users.
3924         * wcsmbs/wcsmbs-tst1.c (main): Cast arguments with %C format to wint_t.
3926         * sysdeps/unix/sysv/linux/utimes.c (__utimes): Fix actime and
3927         modtime computation.
3928         * sysdeps/unix/sysv/linux/futimes.c (__futimes): Likewise.
3929         * sysdeps/posix/utimes.c (__utimes): Likewise.
3931 2003-07-30  Jakub Jelinek  <jakub@redhat.com>
3933         * elf/dl-reloc.c (_dl_allocate_static_tls): Don't return any value,
3934         call dl_signal_error directly.  If already relocated, call
3935         GL(dl_init_static_tls) directly, otherwise queue it for later.
3936         (CHECK_STATIC_TLS): Undo 2003-07-24 change.
3937         * elf/rtld.c (dl_main): Initialize GL(dl_init_static_tls).
3938         * elf/dl-open.c (dl_open_worker): Call GL_dl_init_static_tls
3939         for all static TLS initializations delayed in _dl_allocate_static_tls.
3940         * elf/dl-support.c (_dl_init_static_tls): New variable.
3941         * include/link.h (struct link_map): Add l_need_tls_init.
3942         * sysdeps/generic/ldsodefs.h (_rtld_global): Add _dl_init_static_tls.
3943         (_dl_nothread_init_static_tls): New prototype.
3944         (_dl_allocate_static_tls): Adjust prototype.
3946         * elf/tls-macros.h (VAR_INT_DEF): Add alignment directive.
3948 2003-07-31  Alexandre Oliva  <aoliva@redhat.com>
3950         * elf/dynamic-link.h (elf_machine_rel, elf_machine_rela,
3951         elf_machine_rel_relative, elf_machine_rela_relative): Don't assume
3952         reloc_addr is aligned.
3953         * sysdeps/alpha/dl-machine.h (elf_machine_rela,
3954         elf_machine_rela_relative): Adjust.
3955         * sysdeps/arm/dl-machine.h (elf_machine_rel, elf_machine_rela,
3956         elf_machine_rel_relative, elf_machine_rela_relative): Adjust.
3957         * sysdeps/cris/dl-machine.h (elf_machine_rela,
3958         elf_machine_rela_relative): Adjust.
3959         * sysdeps/hppa/dl-machine.h (elf_machine_rela,
3960         elf_machine_rela_relative): Adjust.
3961         * sysdeps/i386/dl-machine.h (elf_machine_rel, elf_machine_rela,
3962         elf_machine_rel_relative, elf_machine_rela_relative): Adjust.
3963         * sysdeps/ia64/dl-machine.h (elf_machine_rela,
3964         elf_machine_rela_relative): Adjust.
3965         * sysdeps/m68k/dl-machine.h (elf_machine_rela,
3966         elf_machine_rela_relative): Adjust.
3967         * sysdeps/mips/dl-machine.h (elf_machine_rela,
3968         elf_machine_rela_relative): Adjust.
3969         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela,
3970         elf_machine_rela_relative): Adjust.
3971         * sysdeps/powerpc/powerpc64/dl-machine.h
3972         (elf_machine_rela_relative, elf_machine_rela): Adjust.
3973         * sysdeps/s390/s390-32/dl-machine.h (elf_machine_rela,
3974         elf_machine_rela_relative): Adjust.
3975         * sysdeps/s390/s390-64/dl-machine.h (elf_machine_rela,
3976         elf_machine_rela_relative): Adjust.
3977         * sysdeps/sh/dl-machine.h (elf_machine_rela,
3978         elf_machine_rela_relative): Adjust.
3979         * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela,
3980         elf_machine_rela_relative): Adjust.
3981         * sysdeps/sparc/sparc64/dl-machine.h (elf_machine_rela,
3982         elf_machine_rela_relative): Adjust.
3983         * sysdeps/x86_64/dl-machine.h (elf_machine_rela,
3984         elf_machine_rela_relative): Adjust.
3986 2003-07-29  Ulrich Drepper  <drepper@redhat.com>
3988         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Restore
3989         alignment of TCB used before the last change so that it matches
3990         ld's output for IE code.
3992 2003-07-29  Jakub Jelinek  <jakub@redhat.com>
3994         * include/ctype.h (__ctype_b_loc, __ctype_toupper_loc,
3995         __ctype_tolower_loc): Avoid "dereferencing type-punned pointer will
3996         break strict-aliasing rules" warnings.
3998 2003-07-29  Roland McGrath  <roland@redhat.com>
4000         * elf/Makefile: Revert accidental changes in last commit.
4001         * elf/dl-support.c: Likewise.
4003         * rt/tst-timer2.c: New file.
4004         * rt/Makefile (tests): Add it.
4006 2003-07-25  Jakub Jelinek  <jakub@redhat.com>
4008         * elf/dl-support.c (_dl_hwcap): Add nocommon attribute.
4010 2003-07-29  Roland McGrath  <roland@redhat.com>
4012         * elf/Makefile (tests) [$(build-shared) = yes]:
4013         Depend on $(test-modules).
4014         * dlfcn/Makefile: Likewise.
4016 2003-07-28  Roland McGrath  <roland@redhat.com>
4018         * sysdeps/generic/bits/types.h (__STD_TYPE): New macro.
4019         Use that instead of `typedef' when using __*_TYPE macros in rhs.
4021         * elf/tst-tls14.c [USE_TLS && HAVE___THREAD]: Conditionalize on this.
4022         * elf/tst-tlsmod14a.c: Likewise.
4024         * sysdeps/unix/sysv/linux/sys/sysctl.h: Include <linux/compiler.h>
4025         before <linux/sysctl.h>.
4027 2003-07-27  Ulrich Drepper  <drepper@redhat.com>
4029         * sysdeps/unix/sysv/syscalls.list: time syscall never fails.
4030         * sysdeps/unix/sysv/linux/x86_64/time.S: time syscall never fails.
4031         * sysdeps/unix/sysv/i386/time.S: time syscall never fails.
4032         * sysdeps/unix/syscalls.list: umask syscall never fails.
4034 2003-07-27  Andreas Jaeger  <aj@suse.de>
4036         * sysdeps/unix/sysv/linux/init-first.c: Mark init as used.
4038 2003-07-25  Jakub Jelinek  <jakub@redhat.com>
4040         * sysdeps/unix/sysv/linux/a.out.h: Replace with i386 version.
4041         Include bits/a.out.h.
4042         * sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Add
4043         bits/a.out.h.
4044         * sysdeps/unix/sysv/linux/bits/a.out.h: New file.
4045         * sysdeps/unix/sysv/linux/i386/bits/a.out.h: New file.
4046         * sysdeps/unix/sysv/linux/m68k/bits/a.out.h: New file.
4047         * sysdeps/unix/sysv/linux/x86_64/bits/a.out.h: New file.
4048         * sysdeps/unix/sysv/linux/alpha/a.out.h: New file.
4049         * sysdeps/unix/sysv/linux/alpha/bits/a.out.h: New file.
4050         * sysdeps/unix/sysv/linux/sparc/a.out.h: New file.
4051         * sysdeps/unix/sysv/linux/sparc/bits/a.out.h: New file.
4053 2003-07-24  Jakub Jelinek  <jakub@redhat.com>
4055         * sysdeps/pthread/aio_cancel.c (aio_cancel): Return AIO_ALLDONE
4056         if aiocbp != NULL and has already completed.  Return -1/EINVAL if
4057         aiocbp->aio_fildes does not match fildes.
4059 2003-07-24  Ulrich Drepper  <drepper@redhat.com>
4061         * timezone/zic.c (rpytime): Replace cheap overflow check with a
4062         functioning one.
4064         * include/link.h (struct link_map): Add l_tls_firstbyte_offset field.
4065         * sysdeps/generic/dl-tls.c [TLS_TCB_AT_TP] (_dl_determine_tlsoffset):
4066         Fix calculation of offsets to take misalignment of first byte in
4067         file into account.
4068         * elf/dl-load.c (_dl_map_object_from_fd): Initialize
4069         l_tls_firstbyte_offset field.
4070         * elf/rtld.c (_dl_start_final, _dl_start, dl_main): Likewise.
4071         * elf/dl-reloc.c (_dl_allocate_static_tls): Change return type to int.
4072         Take l_tls_firstbyte_offset information into account.
4073         (CHECK_STATIC_TLS): _dl_allocate_static_tls can fail now.
4074         * sysdeps/generic/ldsodefs.h: Adjust _dl_allocate_static_tls prototype.
4075         * elf/Makefile: Add rules to build and run tst-tls14.
4076         * elf/tst-tls14.c: New file.
4077         * elf/tst-tlsmod14a.c: New file.
4078         * elf/tst-tlsmod14b.c: New file.
4080 2003-07-23  Jakub Jelinek  <jakub@redhat.com>
4082         * sysdeps/pthread/lio_listio.c (LIO_OPCODE_BASE): Define.
4083         (lio_listio): Use it.
4084         * sysdeps/pthread/lio_listio64.c: Include lio_listio.c instead of
4085         after few defines to avoid duplication.
4087 2003-07-22  Jakub Jelinek  <jakub@redhat.com>
4089         * include/stdio.h (__libc_fatal): Add libc_hidden_proto.
4090         * include/dlfcn.h (__libc_dlopen_mode, __libc_dlsym, __libc_dlclose):
4091         Likewise.
4092         * elf/dl-libc.c (__libc_dlopen_mode, __libc_dlsym, __libc_dlclose):
4093         Add libc_hidden_def.
4094         * sysdeps/generic/libc_fatal.c (__libc_fatal): Likewise.
4095         * sysdeps/posix/libc_fatal.c (__libc_fatal): Likewise.
4096         * sysdeps/unix/sysv/linux/libc_fatal.c (__libc_fatal): Likewise.
4097         * elf/Versions (libc): Export __libc_dlopen_mode@@GLIBC_PRIVATE,
4098         __libc_dlsym@@GLIBC_PRIVATE and __libc_dlclose@@GLIBC_PRIVATE.
4099         * libio/Versions (libc): Export __libc_fatal@@GLIBC_PRIVATE.
4100         * sysdeps/generic/unwind-dw2.c: Readd #ifs removed during last
4101         change.
4102         * sysdeps/generic/unwind.inc: Removed.
4104         * include/resolv.h (__resp): Declare.  Define to __libc_resp
4105         if in libc.so.
4106         (_res): If USE___THREAD, define to (*__resp).
4107         * resolv/res_libc.c (_res): Normal .bss variable with compat_symbol
4108         even if USE___THREAD.
4109         (__resp): New __thread variable.
4110         (__libc_resp): New alias.
4111         * resolv/Versions (libc): Export _res@GLIBC_2.0 even if
4112         USE_TLS && HAVE___THREAD.  Export __resp@@GLIBC_PRIVATE.
4113         * sysdeps/generic/res-state.c (__res_state): Return __resp
4114         if USE___THREAD.
4116 2003-07-22  H.J. Lu  <hongjiu.lu@intel.com>
4118         * elf/dl-support.c (_dl_hwcap): New variable.
4119         (_dl_aux_init): Initialize GL(dl_hwcap) for static binaries.
4121         * sysdeps/i386/fpu/fclrexcpt.c: Include <unistd.h>, <ldsodefs.h>
4122         and <dl-procinfo.h>.
4123         (__feclearexcept): Clear MXCSR if needed.
4124         * sysdeps/i386/fpu/fsetexcptflg.c: Likewise.
4126         * sysdeps/i386/fpu_control.h (_FPU_GETCW, _FPU_SETCW): Document
4127         that newer hardware needs more than these macros.
4129         * sysdeps/i386/setfpucw.c: New file.
4131 2003-07-22  Jakub Jelinek  <jakub@redhat.com>
4133         * elf/Makefile (CFLAGS-ldconfig.c): Define IS_IN_ldconfig.
4134         * elf/ldconfig.c: Include dl-procinfo.c.
4135         (PROCINFO_CLASS): Define.
4136         * sysdeps/generic/ldsodefs.h (PROCINFO_CLASS): Define.
4137         * sysdeps/unix/sysv/linux/x86_64/dl-procinfo.c: New file.
4138         * sysdeps/unix/sysv/linux/x86_64/dl-procinfo.h: New file.
4139         * sysdeps/unix/sysv/linux/i386/dl-procinfo.c (PROCINFO_CLASS):
4140         Define if not yet defined.  Use it instead of EXTERN.  Undefine
4141         at the end of the file.
4142         * sysdeps/unix/sysv/linux/arm/dl-procinfo.c (PROCINFO_CLASS):
4143         Likewise.
4144         * sysdeps/unix/sysv/linux/sparc/sparc32/dl-procinfo.c
4145         (PROCINFO_CLASS): Likewise.
4146         * sysdeps/unix/sysv/linux/sparc/sparc64/dl-procinfo.c
4147         (PROCINFO_CLASS): Likewise.
4149 2003-07-22  H.J. Lu  <hongjiu.lu@intel.com>
4151         * elf/ldconfig.c (main): Issue a fatal error if relative path
4152         is used to build cache.
4154 2003-07-22  Ulrich Drepper  <drepper@redhat.com>
4156         * elf/readlib.c (process_file): Avoid possible overflow in assignment.
4158 2003-07-21  Art Haas  <ahaas@airmail.net>
4160         * manual/charset.texi (Converting a Character): Fix example code so a
4161         valid pointer is returned.
4163 2003-07-22  Andreas Jaeger  <aj@suse.de>
4165         * elf/readlib.c (process_file): Check that file is a shared
4166         object.
4168         * elf/sofini.c (__FRAME_END__): Use attribute used so that gcc
4169         will not optimize it away.
4170         (__DTOR_END__): Likewise.
4171         (__CTOR_END__): Likewise.
4173         * include/libc-symbols.h (_elf_set_element): Use attribute used so
4174         that gcc will not optimize it away.
4175         (link_warning): Likewise.
4177 2003-07-22  Ulrich Drepper  <drepper@redhat.com>
4179         * wcsmbs/wcpncpy.c (__wcpncpy): Correct destination pointer handling.
4180         * wcsmbs/Makefile (tests): Add tst-wcpncpy.
4181         * wcsmbs/tst-wcpncpy.c: New file.
4183 2003-07-21  Ulrich Drepper  <drepper@redhat.com>
4185         * sysdeps/unix/sysv/linux/bits/sched.h (CLONE_STOPPED): Define.
4187         * sysdeps/i386/fpu/feenablxcpt.c (feenableexcept): Reverse use of
4188         stmxcsr and ldmxcsr.
4190         * Makerules (build-module-helper): Add -z defs unless explicitly said
4191         not to do it.
4192         * dlfcn/Makefile: Define various *-no-z-defs variables for test DSOs
4193         which has undefined symbols.
4194         * elf/Makefile: Likewise.
4196         * sysdeps/i386/fpu/fedisblxcpt.c: Use dl_hwcap, not dl_hwcap_mask.
4197         * sysdeps/i386/fpu/feenablxcpt.c: Likewise.
4198         * sysdeps/i386/fpu/feholdexcpt.c: Likewise.
4199         * sysdeps/i386/fpu/fesetround.c: Likewise.
4200         * sysdeps/i386/fpu/ftestexcept.c: Likewise.
4202 2003-07-21  HJ Lu  <hongjiu.lu@intel.com>
4204         * elf/ldconfig.c (search_dir): Treat symlink as regular file
4205         if it won't point to itself.
4207 2003-07-20  Ulrich Drepper  <drepper@redhat.com>
4209         * sysdeps/ia64/hp-timing.h (REPEAT_READ): Cast to long int not to int.
4211 2003-07-20  Andreas Jaeger  <aj@suse.de>
4213         * iconvdata/cp932.c (BODY): STANDARD_ERR_HANDLER is now called
4214         STANDARD_TO_LOOP_ERR_HANDLER.
4215         * iconvdata/euc-jp-ms.c (BODY): Likewise.
4217 2003-07-19  Ulrich Drepper  <drepper@redhat.com>
4219         * sysdeps/unix/sysv/linux/bits/sched.h (__CPU_ZERO): Fix typo.
4221         * sysdeps/unix/sysv/linux/syscalls.list: Remove affinity syscalls.
4223 2003-07-16  Daniel Jacobowitz  <drow@mvista.com>
4224             Andreas Jaeger  <aj@suse.de>
4226         * sysdeps/unix/sysv/linux/mips/bits/shm.h (SHMLBA): Define to
4227         256K, remove unneeded declaration of __getpagesize.
4229 2003-07-16  Andreas Schwab  <schwab@suse.de>
4231         * sysdeps/unix/sysv/linux/futimes.c: Include <string.h>.
4233 2003-07-15  Ulrich Drepper  <drepper@redhat.com>
4235         * io/test-utime.c (main): Make test yet more robust.
4237 2003-07-14  Ulrich Drepper  <drepper@redhat.com>
4239         More cancellation handling fixups.
4240         * sysdeps/unix/sysv/linux/not-cancel.h: Add waitpid_not_cancel.
4241         * sysdeps/generic/not-cancel.h: Likewise.
4242         * catgets/open_catalog.c: Use not-cancelable syscalls.
4243         * time/Makefile (CFLAGS-getdate.c): Add -fexceptions.
4244         * sysdeps/unix/sysv/linux/llseek.c: Must not be cancelable.
4245         * sysdeps/unix/syscalls.list: Don't mark lseek as cancelable.
4246         * dlfcn/dlfcn.h: Mark dlopen with __THROW again.
4247         * io/fcntl.h: Don't mark posix_fallocate with __THROW.
4248         * libio/fileops.c: Use not-cancelable syscalls for fclose.
4249         * libio/iopopen.c: Use no-cancelable syscalls.
4250         * libio/stdio.h: Mark popen and pclose with __THROW again.
4251         * misc/Makefile (CFLAGS-syslog.c): Add -fexceptions.
4252         * misc/syslog.c: Fix locking and cancellation cleanup handling.
4253         * posix/unistd.h: Mark ttyname and ttyname_r again with __THROW.
4254         * stdio-common/Makefile (CFLAGS-tmpfile.c, CFLAGS-tmpfile64.c,
4255         CFLAGS-tempname.c): Add -fexceptions.
4256         * stdlib/Makefile (CFLAGS-mkstemp.c): Add -fexceptions.
4257         * string/string.h: Mark strerror and strerror_r with _THROW again.
4258         * sysdeps/generic/unwind.inc: New file.  Copied from gcc.
4259         * sysdeps/generic/unwind-dw2.c: Update from gcc version.  Remove
4260         #ifs since we now need all the code compiled.
4261         * sysdeps/posix/spawni.c: Use close_not_cancel instead of close.
4262         * sysdeps/unix/closedir.c: Use not-cancelable syscalls.
4263         * sysdeps/unix/opendir.c: Likewise.
4265         * iconvdata/Makefile (modules): Add CP932 and EUC-JP-MS.
4266         Add rule for EUC-JP-MS dependency.
4267         * iconvdata/cp932.c: New file.
4268         * iconvdata/eucjp-ms.c: New file.
4269         * iconvdata/gconv-modules: Add entries for CP932 and EUC-JP-MS.
4270         Patch by MORIYAMA Masayuki <msyk@mtg.biglobe.ne.jp>.
4272 2003-07-15  Jakub Jelinek  <jakub@redhat.com>
4274         * sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S (__socket): Add
4275         cfi directives.
4277 2003-07-14  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
4279         * sysdeps/unix/sysv/linux/kernel-features.h
4280         (__ASSUME_FIXED_CLONE_SYSCALL): New macro.
4281         * sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S: Use it.
4283         * sysdeps/unix/sysv/linux/utimes.c: Include sysdep.h.
4285 2003-07-14  Ulrich Drepper  <drepper@redhat.com>
4287         * sysdeps/unix/sysv/linux/kernel-features.h: Define
4288         __ASSUME_TGKILL for Alpha appropriately.
4290 2003-07-12  Ulrich Drepper  <drepper@redhat.com>
4292         * sysdeps/unix/sysv/linux/bits/statfs.h (_STATFS_F_FRSIZE): Define.
4293         * sysdeps/unix/sysv/linux/alpha/bits/statfs.h (_STATFS_F_FRSIZE):
4294         Likewise.
4295         * sysdeps/unix/sysv/linux/s390/bits/statfs.h (_STATFS_F_FRSIZE):
4296         Likewise.
4298         * sysdeps/unix/sysv/linux/kernel-features.h: Define
4299         __ASSUME_UTIMES for x86 and kernels > 2.5.75.
4301         * sysdeps/unix/sysv/linux/futimes.c (__futimes): Handle case with
4302         second parameter == NULL.
4303         * sysdeps/unix/sysv/linux/utimes.c: New file.
4305 2003-07-12  Jakub Jelinek  <jakub@redhat.com>
4307         * sysdeps/unix/sysv/linux/futimes.c: Include kernel-features.h.
4308         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_UTIMES): Fix
4309         a typo.
4311 2003-07-12  Ulrich Drepper  <drepper@redhat.com>
4313         * time/sys/time.h: Namespace cleanup.
4314         * sysdeps/unix/sysv/linux/kernel-features.h: Define
4315         __ASSUME_UTIMES for the architectures which always had the syscall.
4316         * sysdeps/unix/sysv/linux/futimes.c: New file.
4318 2003-07-12  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
4320         * sysdeps/unix/sysv/linux/sh/socket.S: Save and restore the PR
4321         register across CENABLE and CDISABLE.
4323 2003-07-11  Jakub Jelinek  <jakub@redhat.com>
4325         * sysdeps/unix/sysv/linux/sigwait.c: Include string.h.
4326         * sysdeps/unix/sysv/linux/sigwaitinfo.c: Likewise.
4327         * sysdeps/unix/sysv/linux/sigtimedwait.c: Likewise.
4328         * sysdeps/unix/sysv/linux/sleep.c (__sleep): Cast value to unsigned
4329         int before assigning to max to avoid warnings.
4331 2003-07-11  Jakub Jelinek  <jakub@redhat.com>
4333         * sysdeps/unix/sysv/linux/powerpc/powerpc32/socket.S (__socket): Add
4334         cfi directives.
4335         * sysdeps/unix/sysv/linux/s390/s390-32/socket.S (__socket): Likewise.
4336         * sysdeps/unix/sysv/linux/s390/s390-64/socket.S (__socket): Likewise.
4338 2003-07-10  Jakub Jelinek  <jakub@redhat.com>
4340         * sysdeps/powerpc/powerpc64/elf/start.S: Set section flags of
4341         .data.rel.ro.local to "aw".
4343 2003-07-10  Ulrich Drepper  <drepper@redhat.com>
4345         * sysdeps/m68k/Makefile: Remove CLFAGS-.oS addition.
4346         * Makeconfig (CFLAGS-.oS): Use PIC-ccflag instead of pic-ccflag.
4347         (PIC-ccflag): Define.
4349 2003-07-04  Jakub Jelinek  <jakub@redhat.com>
4351         * sysdeps/s390/s390-32/elf/start.S: Emit position independent code
4352         if PIC.
4353         * sysdeps/s390/s390-64/elf/start.S: Likewise.
4355 2003-07-07  Jakub Jelinek  <jakub@redhat.com>
4357         * sysdeps/powerpc/powerpc64/elf/start.S: Put L(start_address)
4358         into .data.rel.ro.local section if PIC to avoid DT_TEXTREL.
4360 2003-07-07  Ulrich Drepper  <drepper@redhat.com>
4362         * sysdeps/unix/sysv/linux/kernel-features.h: Version
4363         __ASSUME_CORRECT_SI_PID and __ASSUME_TGKILL if possible.
4365         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Adjust for
4366         compilation with HAVE_AUX_SECURE defined.
4368 2003-07-05  Richard Henderson  <rth@redhat.com>
4370         * sysdeps/alpha/elf/initfini.c: Avoid .ent/.end.
4372 2003-07-03  Ulrich Drepper  <drepper@redhat.com>
4374         * configure.in: Also check for .cfi_rel_offset pseudo-op.
4376 2003-07-03  Jakub Jelinek  <jakub@redhat.com>
4378         * sysdeps/unix/sysv/linux/prof-freq.c (__profile_frequency): Fix a
4379         typo.
4381 2003-07-03  Ulrich Drepper  <drepper@redhat.com>
4383         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_AT_CLKTCK):
4384         Define.
4385         * sysdeps/unix/sysv/linux/prof-freq.h: New file.
4387 2003-07-02  Jakub Jelinek  <jakub@redhat.com>
4389         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Protect new_sysinfo
4390         decl and use with #ifdef NEED_DL_SYSINFO.
4392 2003-07-02  Ulrich Drepper  <drepper@redhat.com>
4394         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Don't set
4395         GL(dl_sysinfo) unles GL(dl_sysinfo_dso) is also set.
4396         * sysdeps/unix/sysv/linux/kernel-features.h: Define
4397         __ASSUME_VSYSCALL only for 2.5.69 and up since this is when the
4398         vsyscall DSO was added.
4400         * posix/bits/posix1_lim.h (_POSIX_NGROUPS_MAX): Define to 8 or 0
4401         depending on selected standard.
4402         (NGROUPS_MAX): Define to 8 if not defined.
4404 2003-07-02  Andreas Jaeger  <aj@suse.de>
4406         * sysdeps/unix/sysv/linux/x86_64/sys/epoll.h: New file.
4408 2003-05-04  H.J. Lu  <hongjiu.lu@intel.com>
4410         * malloc/arena.c (arena_get2): Add atomic_write_barrier.
4411         * malloc/thread-m.h: Include <atomic.h>.
4412         (atomic_full_barrier): Provide default.
4413         (atomic_read_barrier): Likewise.
4414         (atomic_write_barrier): Likewise.
4415         * sysdeps/ia64/bits/atomic.h (atomic_full_barrier): New #define.
4417 2003-06-30  Ulrich Drepper  <drepper@redhat.com>
4419         * sysdeps/generic/sysdep.h: Define cfi_rel_offset and CFI_REL_OFFSET.
4421 2003-06-30  Richard Henderson  <rth@redhat.com>
4423         * sysdeps/alpha/bits/atomic.h (__arch_compare_and_exchange_bool_*_int):
4424         Invert the sense of the return value.
4425         (__arch_exchange_16_int): Fix paste-o.
4426         (__arch_exchange_{32,64}_int): Fix think-o.
4428         * sysdeps/unix/sysv/linux/alpha/clone.S: Load child_tid properly.
4430 2003-06-30  Richard Henderson  <rth@redhat.com>
4432         * include/sys/resource.h (__getrusage): Mark hidden.
4433         * include/sys/time.h (__settimeofday, __setitimer, __utimes): Likewise.
4434         * include/sys/wait.h (__wait4): Likewise.
4436 2003-06-17  Guido Guenther  <agx@sigxcpu.org>
4438         * sysdeps/unix/sysv/linux/mips/xstatconv.c: Handle STAT_IS_KERNEL_STAT
4439         case.
4440         (xstat_conv): Rename to __xstat_conv and remove static inline.
4441         (xstat64_conv): Likewise.
4443 2003-06-29  Ulrich Drepper  <drepper@redhat.com>
4445         * sysdeps/unix/sysv/linux/sleep.c (__sleep): Handle parameter
4446         values which cannot be handled in one nanosleep call.
4448 2003-06-25  Alfred M. Szmidt  <ams@kemisten.nu>
4450         * sysdeps/generic/bits/in.h (IPV6_HOPOPTS, IPV6_DSTOPTS): New macros.
4451         (IPV6_RXHOPOPTS, IPV6_RXDSTOPTS): Use them.
4453         * sysdeps/generic/ifreq.h (__if_nextreq) [_HAVE_SA_LEN]: Typo fix.
4455 2003-06-04  Thorsten Kukuk  <kukuk@suse.de>
4457         * sysdeps/unix/sysv/linux/net/if_arp.h: Sync with kernel header,
4458         fix typo.
4460 2003-06-26  Steven Munroe  <sjmunroe@us.ibm.com>
4462         * sysdeps/unix/sysv/linux/xstatconv.h [!STAT_IS_KERNEL_STAT]:
4463         Conditionalize function definitions that use struct kernel_stat.
4464         * sysdeps/unix/sysv/linux/fxstat.c: Remove __syscall_fstat extern.
4465         * sysdeps/unix/sysv/linux/lxstat.c: Remove __syscall_lstat extern.
4466         * sysdeps/unix/sysv/linux/xstat.c: Remove __syscall_stat extern.
4468 2003-06-28  Ulrich Drepper  <drepper@redhat.com>
4470         * sysdeps/unix/sysv/linux/s390/semtimedop.c (semtimedop): Add real
4471         implementation.
4473 2003-06-07  Thorsten Kukuk  <kukuk@suse.de>
4475         * nis/nss_compat/compat-grp.c: Remove unused nis_first variable.
4476         (getgrent_next_file): Don't store group name to early in blacklist.
4478         * nis/nss_compat/compat-pwd.c (internal_getpwuid_r): Save strlen result
4479         and use memcpy instead of strcpy.
4481 2003-06-28  Ulrich Drepper  <drepper@redhat.com>
4483         * nis/nss_compat/compat-grp.c: Optimize several little things.  Use
4484         stream unlocked.
4485         * nis/nss_compat/compat-initgroups.c: Likewise.
4486         * nis/nss_compat/compat-pwd.c: Likewise.
4487         * nis/nss_compat/compat-spwd.c: Likewise.
4489 2003-06-27  Thorsten Kukuk  <kukuk@suse.de>
4491         * nis/nss_compat/compat-initgroups.c: Don't use our own NIS/NIS+
4492         functions, dlopen corresponding NSS module instead.
4494 2003-06-27  Jeroen Dekkers  <jeroen@dekkers.cx>
4496         * sysdeps/mach/hurd/alpha/init-first.c: Remove call to __libc_init.
4497         * sysdeps/mach/hurd/i386/init-first.c: Likewise.
4498         * sysdeps/mach/hurd/mips/init-first.c: Likewise.
4499         * sysdeps/mach/hurd/powerpc/init-first.c: Likewise.
4501 2003-06-27  Ulrich Drepper  <drepper@redhat.com>
4503         * rt/Makefile (CFLAGS-librt-cancellation.c): Define.
4505 2003-06-26  Roland McGrath  <roland@frob.com>
4507         * sysdeps/mach/configure.in: Barf rather than define NO_CREATION_TIME.
4508         * sysdeps/mach/configure: Regenerated.
4509         * sysdeps/mach/hurd/times.c (times_init): Function removed.
4510         (__times): Assume `creation_time' field is available.
4511         * sysdeps/mach/hurd/Makefile [$(subdir) = csu] (sysdep_routines):
4512         Don't append set-init.
4513         * sysdeps/mach/hurd/set-init.c: File removed.
4515 2003-06-26  Roland McGrath  <roland@redhat.com>
4517         * elf/elf.h (AT_SECURE): New macro.
4518         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Grok it,
4519         set __libc_enable_secure.
4520         (_dl_show_auxv): Add AT_SECURE to name table.
4521         * elf/dl-support.c (_dl_aux_init): Grok AT_SECURE, set
4522         __libc_enable_secure and __libc_enable_secure_decided.
4523         * sysdeps/unix/sysv/linux/ldsodefs.h
4524         [__ASSUME_AT_SECURE] (HAVE_AUX_SECURE): Define it.
4525         * sysdeps/unix/sysv/linux/kernel-features.h
4526         [__LINUX_KERNEL_VERSION >= 132426] (__ASSUME_AT_SECURE): Define it.
4528 2003-06-26  Ulrich Drepper  <drepper@redhat.com>
4530         * io/test-utime.c: If _STATBUF_ST_NSEC is defined, adjust lower
4531         boundary test to take rounding of nanoseconds into account.
4533         * sysdeps/unix/sysv/linux/bits/stat.h: Define _STATBUF_ST_NSEC.
4534         * sysdeps/unix/sysv/linux/ia64/bits/stat.h: Likewise.
4535         * sysdeps/unix/sysv/linux/m68k/bits/stat.h: Likewise.
4536         * sysdeps/unix/sysv/linux/powerpc/bits/stat.h: Likewise.
4537         * sysdeps/unix/sysv/linux/s390/bits/stat.h: Likewise.
4538         * sysdeps/unix/sysv/linux/sparc/bits/stat.h: Likewise.
4539         * sysdeps/unix/sysv/linux/x86_64/bits/stat.h: Likewise.
4541 2003-06-26  Andreas Schwab  <schwab@suse.de>
4543         * sysdeps/m68k/fpu/bits/mathinline.h: Don't inline frexp.
4544         * sysdeps/m68k/fpu/s_frexp.c: Put implementation here.
4545         * sysdeps/m68k/fpu/s_frexpl.c: Fix to handle unnormalized numbers.
4547 2003-06-17  Thorsten Kukuk  <kukuk@suse.de>
4549         * nis/Makefile: Remove NIS/NIS+ files from nss_compat module.
4550         * nis/nss_compat/compat-grp.c: Don't use our own NIS/NIS+ functions,
4551         dlopen corresponding NSS module instead.
4552         * nis/nss_compat/compat-pwd.c: Likewise.
4553         * nis/nss_compat/compat-spwd.c: Likewise.
4554         * nis/nss_compat/compat-initgroups.c: Disabled for now.
4555         * nss/Versions: Export __nss_lookup_function.
4557 2003-06-19  Daniel Jacobowitz  <drow@mvista.com>
4559         * sysdeps/unix/sysv/linux/kernel-features.h: Update kernel features
4560         for the SH architecture.
4562 2003-06-25  Thorsten Kukuk  <kukuk@suse.de>
4564         * csu/Makefile: Use CPPFLAGS to find correct linux/version.h.
4566 2003-06-25  Andreas Jaeger  <aj@suse.de>
4568         * stdlib/tst-strtod.c (main): Declare constant long double as
4569         suggested by Jakub Jelinek and Andreas Schwab.
4571         * posix/tst-nanosleep.c: Include <time.h> for nanosleep
4572         declaration.
4574         * stdio-common/tst-fphex.c: Fix format string.
4576         * posix/transbug.c: Include <string.h> for memset and strlen
4577         declarations.
4579         * stdio-common/tst-sprintf.c: Include <stdlib.h> for free declaration.
4581         * stdlib/tst-strtod.c (main): Pass long double value.
4583         * test-skeleton.c: Include <time.h> for nanosleep declaration.
4585 2003-06-25  Ulrich Drepper  <drepper@redhat.com>
4587         * include/time.h: Don't define CLOCK_IDFIELD_SIZE if _ISOMAC is
4588         defined.
4590 2003-06-11  Jakub Jelinek  <jakub@redhat.com>
4592         * elf/Versions (libc): Add _dl_open_hook@GLIBC_PRIVATE.
4593         * elf/dl-libc.c (struct dl_open_hook): New.
4594         (_dl_open_hook): New variable.
4595         (do_dlsym_private): New function.
4596         (__libc_dlopen_mode) [!SHARED]: Lookup _dl_open_hook@GLIBC_PRIVATE
4597         and initialize it if found.
4598         (__libc_dlopen_mode) [SHARED]: If _dl_open_hook is non-NULL,
4599         call dlopen_mode hook.
4600         (__libc_dlsym) [SHARED]: If _dl_open_hook is non-NULL,
4601         call dlsym hook.
4602         (__libc_dlclose) [SHARED]: If _dl_open_hook is non-NULL,
4603         call dlclose hook.
4605 2003-06-25  Ulrich Drepper  <drepper@redhat.com>
4607         * sysdeps/unix/sysv/linux/cris/sysdep.h (INLINE_SYSCALL): Cast
4608         result to long int so that extensions to long long int work.
4609         Patch by Uwe Reimann <libc-alpha@pulsar.homelinux.net>.
4611 2003-06-19  Jakub Jelinek  <jakub@redhat.com>
4613         * elf/ldconfig.c (main): Use add_system_dir instead of add_dir.
4614         * sysdeps/generic/dl-cache.h (add_system_dir): Define.
4615         * sysdeps/unix/sysv/linux/x86_64/dl-cache.h: Include sparc
4616         dl-cache.h.
4617         * sysdeps/unix/sysv/linux/s390/dl-cache.h: New file.
4618         * sysdeps/unix/sysv/linux/mips/dl-cache.h: New file.
4619         * sysdeps/unix/sysv/linux/powerpc/dl-cache.h: New file.
4620         * sysdeps/unix/sysv/linux/sparc/dl-cache.h: New file.
4622 2003-06-19  Jakub Jelinek  <jakub@redhat.com>
4624         * test-skeleton.c (timeout_handler): If waitpid returned 0,
4625         retry once after a second.  If killed == 0, assume
4626         WTERMSIG (status) == SIGKILL.
4628 2003-06-18  Roland McGrath  <roland@redhat.com>
4630         * sysdeps/generic/dl-sysdep.c (_dl_show_auxv): Catch uninitialized
4631         elements in the table instead of printing an empty name string.
4633 2003-06-05  Roland McGrath  <roland@redhat.com>
4635         * elf/elf.h (PT_GNU_STACK): New macro.
4637 2003-06-24  Ulrich Drepper  <drepper@redhat.com>
4639         * include/time.h: Define CLOCK_IDFIELD_SIZE.
4640         * sysdeps/posix/clock_getres.c: Recognize thread CPU clock IDs.
4641         * sysdeps/unix/clock_gettime.c: Likewise.
4642         * sysdeps/unix/clock_settime.c: Likewise.
4643         * sysdeps/unix/clock_nanosleep.c (CPUCLOCK_P): Adjust for new
4644         clock id for thread CPU clocks.
4646         * sysdeps/unix/sysv/linux/fstatfs64.c (__fstatfs64): Add support
4647         for the fstatfs64 syscall.
4648         * sysdeps/unix/sysv/linux/statfs64.c (__statfs64): Add support for
4649         the statfs64 syscall.
4651         * sysdeps/unix/sysv/linux/kernel-features.h: Define
4652         __ASSUME_STATFS64 appropriately.
4654         * sysdeps/unix/sysv/linux/internal_statvfs.c: Use f_frsize field
4655         from statfs structure if it has been filled in.
4657         * sysdeps/unix/sysv/linux/bits/statfs.h (struct statfs): Add f_frsize
4658         field.
4659         (struct statfs64): Likewise.
4660         * sysdeps/unix/sysv/linux/alpha/bits/statfs.h: Likewise.
4661         * sysdeps/unix/sysv/linux/s390/bits/statfs.h: Likewise.
4663 2003-06-24  Richard Henderson  <rth@redhat.com>
4665         * sysdeps/unix/sysv/linux/alpha/syscalls.list (pread, pwrite): Use
4666         the 64-bit syscall name.
4668         * sysdeps/alpha/setjmp.S (_setjmp, setjmp): Mark .prologue.
4670         * sysdeps/alpha/fpu/bits/mathinline.h: Honor
4671         __LIBC_INTERNAL_MATH_INLINES.  Implement __signbitf, __signbit.
4673         * sysdeps/unix/sysv/linux/alpha/clone.S: Use HIDDEN_JUMPTARGET.
4674         * sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S: Use
4675         libc_hidden_def.
4676         * sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S: Likewise.
4677         * sysdeps/unix/sysv/linux/alpha/setfpucw.c: Use libc_hidden_proto
4678         on them.
4680         * sysdeps/alpha/bits/atomic.h: New file.
4682 2003-06-24  Andreas Schwab  <schwab@suse.de>
4684         * sysdeps/m68k/fpu/libm-test-ulps: Update.
4686 2003-06-24  Andreas Jaeger  <aj@suse.de>
4688         * sysdeps/unix/sysv/linux/x86_64/stat.h (_STAT_VER_LINUX): Avoid
4689         redeclaration with 32-bit code.
4691 2003-05-19  Ed Connell  <ed.connell@sas.com>
4693         * sysdeps/unix/sysv/linux/i386/getcontext.S (getcontext): Retain
4694         floating point mask.
4695         * sysdeps/i386/fpu/fegetenv.c (fegetenv): Likewise.
4697 2003-06-23  Ulrich Drepper  <drepper@redhat.com>
4699         * sysdeps/pthread/aio_misc.h: Mark __aio_requests_mutex,
4700         __aio_enqueue_request, __aio_find_req, __aio_find_req_fd,
4701         __aio_free_request, __aio_notify, and __aio_sigqueue as hidden.
4703         * sysdeps/pthread/aio_suspend.c (aio_suspend): Set errno to the result
4704         of pthread_cond_wait if there was an error.  Use pthread_cleanup_*
4705         instead of __libc_cleanup_region_*.
4707 2003-06-20  Richard Henderson  <rth@redhat.com>
4709         * sysdeps/unix/make-syscalls.sh: Implement ! prefix for strong aliases.
4710         * sysdeps/unix/sysv/linux/alpha/syscalls.list (open, open64): New.
4712 2003-06-20  Richard Henderson  <rth@redhat.com>
4714         * sysdeps/unix/alpha/sysdep.h (INLINE_SYSCALL1): Use __builtin_expect.
4715         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_ST_INO_64_BIT)
4716         Unset for alpha.
4717         (__ASSUME_TIMEVAL64): Set for alpha.
4718         * sysdeps/unix/sysv/linux/alpha/Makefile (sysdep_routines): Remove
4719         adjtimex, osf_sigprocmask, old_adjtimex.
4720         * sysdeps/unix/sysv/linux/alpha/adjtime.c: Use INLINE_SYSCALL,
4721         __ASSUME_TIMEVAL64.  Reorg tv64 functions to avoid uninit variable.
4722         * sysdeps/unix/sysv/linux/alpha/getitimer.S: Use __ASSUME_TIMEVAL64.
4723         * sysdeps/unix/sysv/linux/alpha/getrusage.S: Likewise.
4724         * sysdeps/unix/sysv/linux/alpha/gettimeofday.S: Likewise.
4725         * sysdeps/unix/sysv/linux/alpha/select.S: Likewise.
4726         * sysdeps/unix/sysv/linux/alpha/setitimer.S: Likewise.
4727         * sysdeps/unix/sysv/linux/alpha/settimeofday.S: Likewise.
4728         * sysdeps/unix/sysv/linux/alpha/utimes.S: Likewise.
4729         * sysdeps/unix/sysv/linux/alpha/wait4.S: Likewise.
4730         * sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S: Streamline
4731         PIC code sequence.
4732         * sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S: Likewise.
4733         * sysdeps/unix/sysv/linux/alpha/sigaction.c: New file.
4734         * sysdeps/unix/sysv/linux/alpha/sigprocmask.c: Use INLINE_SYSCALL.
4735         * sysdeps/unix/sysv/linux/alpha/ustat.c: Likewise.
4736         * sysdeps/unix/sysv/linux/alpha/xmknod.c: Likewise.
4737         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Remove osf_sigprocmask,
4738         sys_ustat, sys_mknod, adjtimex, old_adjtimex.
4739         * sysdeps/unix/sysv/linux/alpha/sysdep.h (INLINE_SYSCALL): Don't
4740         defer to __syscall_name; error for rt_sigaction.
4741         * sysdeps/unix/sysv/linux/alpha/xstatconv.c: Include kernel_stat.h.
4743 2003-06-18  Ulrich Drepper  <drepper@redhat.com>
4745         * malloc/malloc.c (public_mALLINFo): Initialize malloc if it
4746         hasn't happened yet.
4748         * sysdeps/unix/sysv/linux/x86_64/register-dump.h (register_dump):
4749         Fix completely broken implementation.  The second parameter is of
4750         type struct ucontext*.
4752         * sysdeps/x86_64/dl-machine.h (elf_machine_runtime_setup): Always
4753         inline.
4755         * sysdeps/i386/i686/dl-hash.h: Don't inline _dl_elf_hash.
4756         * sysdeps/generic/dl-hash.h: Likewise.
4758         * sysdeps/generic/memcmp.c: Remove inline from
4759         memcmp_common_alignment and memcmp_not_common_alignment definition.
4761         * intl/localealias.c (read_alias_file): Determine whether line is
4762         read incompletely early, before we modify the line.
4764 2003-06-17  Jakub Jelinek  <jakub@redhat.com>
4766         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela)
4767         <case R_PPC64_DTPREL64>: Don't segfault on undefined symbols.
4769 2003-06-17  Paul Mackerras  <paulus@samba.org>
4771         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: New file.
4772         * sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S: New file.
4773         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: New file.
4774         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: New file.
4775         * sysdeps/unix/sysv/linux/powerpc/powerpc32/ucontext_i.h: New file.
4776         * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: Adjust.
4778 2003-06-17  Jakub Jelinek  <jakub@redhat.com>
4780         * posix/regcomp.c (build_word_op): Use alnum instead of alpha class.
4782 2003-06-17  Ulrich Drepper  <drepper@redhat.com>
4784         * sysdeps/unix/clock_nanosleep.c (clock_nanosleep): nanosleep
4785         takes care of enabling cancellation.
4787         * sysdeps/pthread/aio_suspend.c (aio_suspend): Make aio_suspend
4788         cancelable.  It's not correct to disable cancellation.  Instead of
4789         a cleanup handler.
4791         * sysdeps/unix/sysv/linux/sigtimedwait.c: If SIGCANCEL is defined
4792         and part of the incoming set, create a temporary set without this
4793         signal.
4794         * sysdeps/unix/sysv/linux/sigwait.c: Likewise.
4795         * sysdeps/unix/sysv/linux/sigwaitinfo.c: Likewise.
4797         * sysdeps/unix/sysv/linux/sleep.c: Use CANCELLATION_P if defined before
4798         returning because seconds==0.  Add __builtin_expect.
4800 2003-06-16  Ulrich Drepper  <drepper@redhat.com>
4802         * sysdeps/unix/sysv/linux/i386/socket.S: Add unwind information.
4804         * sysdeps/unix/sysv/linux/wait.c (__libc_wait): Fix type of result
4805         variable.
4807 2003-06-16  Thorsten Kukuk  <kukuk@suse.de>
4809         * include/libc-symbols.h: Add static_link_warning macro.
4810         * grp/initgroups.c: Print linker warning if this function
4811         is called in a static linked binary.
4812         * nss/getXXbyYY.c: Likewise.
4813         * nss/getXXbyYY_r.c: Likewise.
4814         * nss/getXXent.c: Likewise.
4815         * nss/getXXent_r.c: Likewise.
4816         * sysdeps/posix/getaddrinfo.c: Likewise.
4818 2003-06-16  Bruno Haible  <bruno@clisp.org>
4820         * iconvdata/gconv-modules (ISO-8859-15): Add aliases ISO_8859-15,
4821         LATIN-9.
4822         (ISO-8859-16): Add aliases ISO_8859-16:2001, ISO_8859-16.
4823         (IBM1047): Add alias IBM-1047.
4824         (GBK): Add aliases MS936, WINDOWS-936.
4826 2003-06-16  Jakub Jelinek  <jakub@redhat.com>
4828         * sysdeps/unix/sysv/linux/xstatconv.c (__xstat_conv): Define even if
4829         defined __ASSUME_STAT64_SYSCALL && defined XSTAT_IS_XSTAT64.
4830         (__xstat64_conv): Change xstat_conv to __xstat_conv.
4832 2003-06-16  Ulrich Drepper  <drepper@redhat.com>
4834         * locale/iso-639.def: Update from current official ISO 639.
4836         * math/tgmath.h (__TGMATH_UNARY_IMAG_ONLY): Removed.
4838 2003-06-15  Andreas Jaeger  <aj@suse.de>
4840         * sysdeps/i386/fpu/feenablxcpt.c (feenableexcept): Correct setting
4841         of MXCSR.
4842         * sysdeps/i386/fpu/fedisblxcpt.c (fedisableexcept): Likewise.
4843         * sysdeps/i386/fpu/feholdexcpt.c (feholdexcept): Likewise.
4844         Reported by Arnaud Desitter <arnaud.desitter@geography.oxford.ac.uk>.
4846         * math/tgmath.h (carg): Handle real arguments.
4847         (conj): Likewise.
4848         (cproj): Likewise.
4849         (cimag): Likewise.
4850         (creal): Likewise.
4852         * math/Makefile (CFLAGS-test-tgmath-ret.c): New.
4853         (tests): Add test-tgmath-ret.
4854         * math/test-tgmath-ret.c: New file.
4856         * math/tgmath.h (ilogb): Return always an int.
4858 2003-06-16  Ulrich Drepper  <drepper@redhat.com>
4860         * elf/rtld.c (dl_main): Use l_map_start not l_addr in Phdr
4861         computation so that prelinking works.
4863 2003-06-15  Ulrich Drepper  <drepper@redhat.com>
4865         * elf/dl-iteratephdr.c (__dl_iterate_phdr): Don't skip dynamic
4866         linker's map.
4867         * elf/rtld.c (dl_main): Initialize l_phdr and l_phnum of of the
4868         dynamic linker's map.
4870         Fix cancellation point handling wrt exception based cleanup.
4871         * io/Makefile: Compile fcntl.c, poll.c, and lockf.c with exceptions.
4872         * misc/Makefile: Compile pselect.c, readv.c, writev.c, and usleep.c
4873         with exceptions.
4874         * posix/Makefile: Compile pread.c, pread64.c, pwrite.c, pwrite64.c,
4875         sleep.c, wait.c, waitid.c, and waitpid.c with exceptions.
4876         * rt/Makefile: Compile aio_suspend.c and clock_nanosleep.c with
4877         exceptions.
4878         * signal/Makefile: Compile sigpause.c, sigsuspend.c, sigtimedwait.c,
4879         sigwait.c, and sigwaitinfo.c with exceptions.
4880         * stdlib/Makefile: Compile system.c with exceptions.
4881         * sysvipc/Makefile: Compile msgrcv.c and msgsnd.c with exceptions.
4882         * termios/Makefile: Compile tcdrain.c with exceptions.
4883         * sysdeps/generic/lockf.c: Add comment explaining the cancellation
4884         situation.
4885         * sysdeps/generic/pselect.c: Likewise.
4886         * sysdeps/posix/sigpause.c: Likewise.
4887         * sysdeps/posix/system.c: Likewise.
4888         * sysdeps/posix/waitid.c: Likewise.
4889         * sysdeps/unix/sysv/linux/sleep.c: Likewise.
4890         * sysdeps/unix/sysv/linux/usleep.c: Likewise.
4891         * sysdeps/unix/sysv/linux/i386/sysdep.h: Major rewrite of
4892         INTERNAL_SYSCALL to not use push inside asm statement so that
4893         unwind info is correct around the syscall.
4894         * sysdeps/unix/clock_nanosleep.c: Add cancellation support.
4895         * sysdeps/unix/sysv/linux/clock_nanosleep.c: Likewise.
4897 2003-06-15  Andreas Jaeger  <aj@suse.de>
4899         * sysdeps/x86_64/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
4900         Add CFI directives.
4902 2003-06-15  Guido Guenther  <agx@sigxcpu.org>
4904         * sysdeps/unix/sysv/linux/mips/Makefile: Add missing endif and
4905         create $(objpfx).
4907 2003-06-14  Ulrich Drepper  <drepper@redhat.com>
4909         * sysdeps/unix/sysv/linux/check_pf.c (__check_pf): Use __close,
4910         not close.
4912         * inet/inet6_option.c (inet6_option_alloc): Add libc_hidden_def.
4913         * include/netinet/in.h (inet6_option_alloc): Add libc_hidden_proto
4914         definition.
4916         * inet/netinet/ip6.h (IP6OPT_PAD1, IP6OPT_PADN): Define.
4917         * inet/netinet/in.h: Add prototypes for inet6_option_* functions.
4918         * inet/Makefile (routines): Add inet6_option.
4919         * inet/inet6_option.c: New file.
4920         * inet/Versions [GLIBC_2.3.3] (libc): Add inet6_option_space,
4921         inet6_option_init, inet6_option_append, inet6_option_alloc,
4922         inet6_option_next, and inet6_option_find.
4924 2003-06-13  Ulrich Drepper  <drepper@redhat.com>
4926         * inet/netinet/ip6.h (struct ip6_ext): Define.
4928         * sysdeps/unix/sysv/linux/sys/param.h (howmany): Optimize for gcc.
4930         Fixing gcc 3.3 warnings, part II.
4931         * argp/argp-help.c (hol_entry_long_iterate): Always inline.
4932         * elf/dl-load.c (cache_rpath): Don't inline.
4933         * iconvdata/cns11642l2.h: Always inline all functions.
4934         * iconvdata/iso-ir-165.h: Likewise.
4935         * locale/Makefile (aux): Add coll-lookup.
4936         * locale/coll-lookup.c: New file.
4937         * locale/coll-lookup.h (collidx_table_lookup): Do not define here.
4938         (collseq_table_lookup): Likewise.
4939         * locale/weightwc.h: Adjust collidx_table_lookup calls for name change.
4940         * posix/fnmatch_loop.c: Adjust collseq_table_lookup calls for name
4941         change.
4942         * posix/regcomp.c: Likewise.
4943         * posix/regexec.c: Likewise.
4944         * locale/programs/3level.h (*_get): Always inline.
4945         * locale/programs/locfile.h: Move definition of handle_copy to...
4946         * locale/programs/locfile.c: ...here.
4947         * locale/programs/ld-collate.c (obstack_int32_grow): Always inline.
4948         (obstack_int32_grow_fast): Likewise.
4949         (utf8_encode): Likewise.
4950         (find_element): Avoid aliasing problems.
4951         (insert_value): Likewise.
4952         (collate_read): Likewise.
4953         * nss/getent.c (print_hosts): Don't inline
4954         (print_networks): Likewise.
4955         (print_shadow): Likewise.
4956         (build_doc): Likewise.
4957         * nss/nss_files/files-parse.c [ENTDATA] (parser_stclass): Don't
4958         inline.
4959         * posix/regcomp.c (re_set_fastmap): Always inline.
4960         (seek_collating_symbol_entry): Likewise.
4961         (lookup_collation_sequence_value): Likewise.
4962         (build_range_exp): Likewise.
4963         (build_collating_symbol): Likewise.
4964         * posix/regexec.c (acquire_init_state_context): Don't inline.
4965         (clean_state_log_if_need): Likewise.
4966         * resolv/res_send.c (eConsIovec): Rewrite to not return struct and
4967         adjust all callers.
4968         (evConsTime): Likewise.
4969         (evAddTime): Likewise.
4970         (evSubTime): Likewise.
4971         (evNowTime): Likewise.
4972         (evTimeSpec): Removed.
4973         (__libc_res_nsend): Avoid aliasing problem.
4974         * sysdeps/unix/sysv/linux/ifreq.h: Move old_siocgifconf definition to..
4975         * sysdeps/unix/sysv/linux/ifreq.c: ...here.
4976         * sysdeps/unix/sysv/linux/i386/dl-procinfo.h (_dl_string_hwcap):
4977         Always inline.
4978         (_dl_string_platform): Likewise.
4979         * wctype/wchar-lookup.h (wctype_table_lookup): Always inline.
4980         (wcwidth_table_lookup): Likewise.
4981         (wctrans_table_lookup): Likewise.
4983         * sysdeps/unix/sysv/linux/sys/epoll.h: Include <stdint.h>.
4985 2003-06-12  Ulrich Drepper  <drepper@redhat.com>
4987         * wcsmbs/wchar.h: Define wint_t in std namespace, too [PR libc/5034].
4989 2003-05-29  Jim Meyering  <jim@meyering.net>
4991         * time/strftime.c (my_strftime) [!defined _NL_CURRENT
4992         && HAVE_STRFTIME]: Use underlying_strftime for %r.
4993         Suggested by Daniel Yacob <locales@geez.org>.
4995 2003-06-12  Steven Munroe  <sjmunroe@us.ibm.com>
4997         * sysdeps/powerpc/powerpc64/dl-machine.h (RTLD_START): Replace
4998         @got notation with @toc.
4999         * sysdeps/powerpc/powerpc64/sysdep.h (CALL_MCOUNT): Likewise.
5000         * sysdeps/unix/sysv/linux/powerpc/powerpc64/brk.S (__brk): Likewise.
5002 2003-06-12  Ulrich Drepper  <drepper@redhat.com>
5004         * sysdeps/posix/getaddrinfo.c (gaih_inet): Set no_inet6_date also
5005         if only PF_INET address is needed.
5007         * nss/getXXbyYY_r.c: Make sure we always return a nonzero value in
5008         case of an error.
5010         * scripts/config.guess: Update from upstream version.
5011         * scripts/config.sub: Likewise.
5013 2003-06-12  Jakub Jelinek  <jakub@redhat.com>
5015         * locale/programs/ld-time.c (time_output): Also copy the era format,
5016         not only the name.
5018 2003-06-12  H.J. Lu  <hongjiu.lu@intel.com>
5020         * posix/transbug.c (run_test): Return 1 for failure.
5021         (do_test): Compare only if run_test is successful.
5023 2003-06-12  Simon Josefsson  <jas@extundo.com>
5025         * argp/argp.h [!__THROW]: Define if undefined.
5027 2003-06-12  Ulrich Drepper  <drepper@redhat.com>
5029         * sysdeps/unix/sysv/linux/cris/sysdep.h: Fix handling of syscalls with
5030         more than four parameters.
5031         Patch by Uwe Reimann <libc-alpha@pulsar.homelinux.net>.
5033 2003-06-12  Jakub Jelinek  <jakub@redhat.com>
5035         * sysdeps/unix/sysv/linux/ia64/kernel_stat.h: New file.
5036         * sysdeps/unix/sysv/linux/s390/s390-64/kernel_stat.h: New file.
5037         * sysdeps/unix/sysv/linux/x86_64/kernel_stat.h: New file.
5039         * stdio-common/printf-parsemb.c: Include stdlib.h and sys/param.h.
5041 2003-06-12  Roland McGrath  <roland@redhat.com>
5043         * Makerules ($(objpfx)stubs): Rewrite sed magic.
5045 2003-02-28  Isamu Hasegawa  <isamu@yamato.ibm.com>
5047         * posix/regcomp.c (parse_expression): Deliver translation to
5048         build_word_op, and build_charclass.
5049         (build_charclass): Apply translation for character classes too.
5050         (build_word_op): Deliver translation to build_charclass.
5051         * posix/transbug.c: New file.
5052         * posix/Makefile (tests): Add transbug.
5054 2003-06-04  Paolo Bonzini  <bonzini@gnu.org>
5056         * posix/regexec.c (group_nodes_into_DFAstates): Check for
5057         NEXT_ENDBUF_CONSTRAINT.  Move check for constraints which do a
5058         'continue' before the others.
5060 2003-06-11  Ulrich Drepper  <drepper@redhat.com>
5062         * dirent/scandir.c (SCANDIR): Reset errno after calling selector
5063         function [PR libc/5045].
5065         * sysdeps/i386/bits/byteswap.h (__bswap_32): Use bswap instruction
5066         also for P4.
5068         * time/tzfile.c: Add a couple of __builtin_expect.
5070         Remove warnings gcc 3.3 shows.
5071         * argp/argp-help.c (hol_entry_short_iterate): Don't inline.
5072         * elf/dl-load.c (fillin_rpath): Likewise.
5073         (add_path): Likewise.
5074         * elf/dl-version.c (find_needed): Always inline.
5075         * elf/do-lookup.c (FCT): Don't inline.
5076         * iconv/Makefile: Extend vpath to intl subdir.
5077         (iconvconfig-modules): Add hash-string.
5078         * iconv/gconv_charset.h (strip): Don't inline.
5079         (upstr): Always inline.
5080         Move __gconv_compare_alias prototype to...
5081         * iconv/gconv_int.h: ...here.
5082         * iconv/gconv_db.c: Don't include gconv_charset.h.
5083         * iconv/gconv_conf.c (add_alias): Don't inline.
5084         (insert_module): Likewise.
5085         * iconv/gconv_simple.c (internal_ucs4_loop): Always inline.
5086         (internal_ucs4_loop_unaligned): Likewise.
5087         (internal_ucs4_loop_single): Likewise.
5088         (ucs4_internal_loop): Likewise.
5089         (ucs4_internal_loop_unaligned): Likewise.
5090         (ucs4_internal_loop_single): Likewise.
5091         (internal_ucs4le_loop): Always inline.
5092         (internal_ucs4le_loop_unaligned): Likewise.
5093         (internal_ucs4le_loop_single): Likewise.
5094         (ucs4le_internal_loop): Likewise.
5095         (ucs4le_internal_loop_unaligned): Likewise.
5096         (ucs4le_internal_loop_single): Likewise.
5097         * iconv/loop.c: Always inline the defined functions.
5098         * iconvdata/cns11642.h: Likewise.
5099         * iconvdata/cns11642l1.h: Likewise.
5100         * iconvdata/euc-kr.c: Likewise.
5101         * iconvdata/gb2312.h: Likewise.
5102         * iconvdata/jis0201.h: Likewise.
5103         * iconvdata/jis0208.h: Likewise.
5104         * iconvdata/jis0212.h: Likewise.
5105         * iconvdata/jisx0213.h: Likewise.
5106         * iconvdata/ksc5601.h: Likewise.
5107         * iconvdata/utf-7.c (base64): Don't inline.
5108         * include/libc-symbols.h (symbol_set_first_element): Add cast
5109         (symbol_set_end_p): Likewise.
5110         * include/set-hooks (RUN_HOOK): Likewise.
5111         * inet/Makefile (aux): Add ifreq.
5112         * intl/Makefile (aux): Add some entries from routines.  Add
5113         hash-string.
5114         * intl/hash-string.c: New file.
5115         * intl/hash-string.h: Remove hash_string definition.  Declare
5116         __hash_string.
5117         * iconv/gconv_cache.c (find_module_idx): Adjust hash_string caller.
5118         * iconv/iconvconfig.c (new_name): Likewise.
5119         * intl/dcigettext.c (_nl_find_msg): Likewise.
5120         * intl/loadmsgcat.c (_nl_load_domain): Likewise.
5121         * io/ftw.c (open_dir_stream): Always inline.
5122         (process_entry): Don't inline.
5123         * locale/findlocale.c: Include gconv_int.h.
5124         * locale/setlocale.c (new_composite_name): Don't inline.
5125         * locale/weight.h (findidx): Always inline.
5126         * locale/weightwc.h (findidx): Likewise.
5127         * locale/programs/linereader.c (lr_ignore_rest): Define here.
5128         * locale/programs/linereader.h (lr_ignore_rest): Don't define here,
5129         just declare it.
5130         (lr_getc): Always inline.
5131         (lr_ungetc): Likewise.
5132         * nss/nss_files/files-parse.c (parse_list): Likewise.
5133         * stdio-common/Makefile (aux): Add printf-parsemb and
5134         printf-parsewc.
5135         * stdio-common/_itoa.h (_itoa_word): Always inline.
5136         (_fitoa_word, _fitoa): Don't define here, only declare.
5137         * stdio-common/_itoa.c (_iftoa_word): Add here.
5138         (_fitoa): Likewise.
5139         * stdio-common/_itowa.h (_itowa_word): Always inline.
5140         * stdio-common/printf-parse.h (read_int): Don't inline.
5141         (find_spec): Don't define.
5142         Declare __find_specmb and __find_specwc.
5143         (parse_one_spec): Don't define.
5144         Declare __parse_one_specmb and __parse_one_specwc.
5145         * stdio-common/printf-parsemb.c: New file.
5146         * stdio-common/printf-parsewc.c: New file.
5147         * stdio-common/vfprintf.c: Update calls to find_spec and
5148         parse_one_spec for new names.
5149         * stdio-common/printf-prs.c: Likewise.  Define DONT_NEED_READ_INT.
5150         * stdlib/Makefile (aux): Add grouping and groupingwc.
5151         * stdlib/grouping.c: New file.
5152         * stdlib/groupingwc.c: New file.
5153         * stdlib/grouping.h (correctly_grouped_prefix): Don't define here.
5154         Just prototype.
5155         * stdlib/rpmatch.c (try): Don't inline.
5156         * stdlib/strtod.c (round_and_return): Don't line.
5157         (str_to_mpn): Likewise.
5158         (__mpn_lshift_1): Always inline.  Optimize only for constant count.
5159         Adjust for name change of correctly_grouped_prefix.
5160         * sysdeps/generic/strtol.c: Adjust for name change of
5161         correctly_grouped_prefix.
5162         * string/strxfrm.c (utf8_encode): Don't inline.
5163         * sysdeps/generic/dl-cache.c: Define _dl_cache_libcmp.
5164         * sysdeps/generic/dl-cache.h: Just declare _dl_cache_libcmp.
5165         * sysdeps/generic/ifreq.c: New file.
5166         * sysdeps/unix/sysv/linux/ifreq.c: New file.
5167         * sysdeps/generic/ifreq.h (__ifreq): Only declare here.
5168         * sysdeps/unix/sysv/linux/ifreq.h: Likewise.
5169         * sysdeps/generic/ldsodefs.h (_dl_name_match_p): Always inline.
5170         * sysdeps/generic/unwind-dw2-fde.c (start_fde_sort): Don't inline.
5171         (fde_split): Likewise.
5172         (fde_merge): Likewise.
5173         (end_fde_sort): Likewise.
5174         (init_object): Likewise.
5175         (binary_search_unencoded_fdes): Likewise.
5176         (binary_search_single_encoding_fdes): Likewise.
5177         (binary_search_mixed_encoding_fdes): Likewise.
5178         * sysdeps/generic/wordexp.c (w_addchar): Don't inline.
5179         * sysdeps/i386/dl-machine.c (elf_machine_runtime_setup): Always inline.
5180         * sysdeps/posix/sprofil.c (profil_count): Don't inline.
5181         * sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines):
5182         Add xstatconv.
5183         * sysdeps/unix/sysv/linux/xstatconv.h: New file.
5184         * sysdeps/unix/sysv/linux/xstatconv.c: Don't inline the function.
5185         Export them.  Prepend __ to name.
5186         * sysdeps/unix/sysv/linux/Dist: Add xstatconv.h.
5187         * sysdeps/unix/sysv/linux/fxstat.c: Adjust for name change of
5188         conversion functions.
5189         * sysdeps/unix/sysv/linux/fxstat64.c: Likewise.
5190         * sysdeps/unix/sysv/linux/lxstat.c: Likewise.
5191         * sysdeps/unix/sysv/linux/lxstat64.c: Likewise.
5192         * sysdeps/unix/sysv/linux/xstat.c: Likewise.
5193         * sysdeps/unix/sysv/linux/xstat64.c: Likewise.
5194         * sysdeps/unix/sysv/linux/i386/fxstat.c: Likewise.
5195         * sysdeps/unix/sysv/linux/i386/lxstat.c: Likewise.
5196         * sysdeps/unix/sysv/linux/i386/xstat.c: Likewise.
5197         * sysdeps/unix/sysv/linux/pathconf.c (__statfs_link_max,
5198         __statfs_filesize_max, __statfs_symlinks): Define here.  __ prepended
5199         to name.  Change callers.
5200         * sysdeps/unix/sysv/linux/pathconf.h (__statfs_link_max,
5201         __statfs_filesize_max, __statfs_symlinks): Don't define here, just
5202         declare.
5203         * sysdeps/unix/sysv/linux/fpathconf.c: Change all callers.
5204         * time/tzfile.c (decode): Always inline.
5205         * wcsmbs/wcsnrtombs.c: Change type of inbuf to unsigned char*.
5206         Remove cast in tomb function call.
5207         * wcsmbs/wcsrtombs.c Likewise.
5208         * wcsmbs/wcstob.c: Introduce new temp variable to take pointer in
5209         tomb function call.
5211 2003-06-10  Ulrich Drepper  <drepper@redhat.com>
5213         * po/zh_CN.po: Update from translation team.
5215 2003-06-10  Jakub Jelinek  <jakub@redhat.com>
5217         * sysdeps/unix/sysv/linux/bits/in.h (IPV6_V6ONLY, IPV6_JOIN_ANYCAST,
5218         IPV6_LEAVE_ANYCAST, IPV6_IPSEC_POLICY, IPV6_XFRM_POLICY): Define.
5220 2003-06-10  Ulrich Drepper  <drepper@redhat.com>
5222         * inet/Makefile (aux): Add check_pf.
5223         * include/ifaddrs.h: Add prototype for __check_pf.
5224         * sysdeps/generic/check_pf.c: New file.
5225         * sysdeps/unix/sysv/linux/check_pf.c: New file.
5226         * sysdeps/unix/sysv/linux/ifaddrs.h (__no_netlink_support): Renamed
5227         from no_netlink_support.  Export.
5228         * sysdeps/posix/getaddrinfo.c (getaddrinfo): Don't call getifaddrs,
5229         call __check_pf.
5231         * sysdeps/generic/ifaddrs.h: Add libc_hidden_def.
5233         * sysdeps/posix/getaddrinfo.c (getaddrinfo): Don't leak memory
5234         from getifaddr calls.
5236 2003-06-09  Jakub Jelinek  <jakub@redhat.com>
5238         * sysdeps/unix/sysv/linux/kernel-features.h
5239         (__ASSUME_SETRESGID_SYSCALL): Define.
5240         * sysdeps/unix/sysv/linux/setegid.c: Use __ASSUME_SETRESGID_SYSCALL
5241         instead of __ASSUME_SETRESUID_SYSCALL.
5242         (setegid): Only use setresgid32 inline syscall if __NR_setresgid32 is
5243         defined.
5244         * sysdeps/unix/sysv/linux/seteuid.c (seteuid): Only use setresgid32
5245         inline syscall if __NR_setresuid32 is defined.
5246         * sysdeps/unix/sysv/linux/i386/setegid.c (setegid): Use
5247         __ASSUME_SETRESGID_SYSCALL instead of __ASSUME_SETRESUID_SYSCALL.
5248         * sysdeps/unix/sysv/linux/i386/setregid.c: Backout last changes.
5249         * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise.
5250         * sysdeps/unix/sysv/linux/sparc/sparc32/setegid.c (setegid): Protect
5251         code handling non-existant setresgid32 syscall with
5252         #if __ASSUME_SETRESGID_SYSCALL == 0.
5254 2003-06-09  Andreas Schwab  <schwab@suse.de>
5256         * sunrpc/Makefile (generated): Remove rpc-proto.c, rpc-proto.d.
5257         ($(rpcsvc:%.x=$(objpfx)x%$o)): Don't depend on
5258         $(objpfx)rpc-proto.d.
5259         (rpcsvc-dt-files, rpcsvc-depfiles): Define.  Include
5260         $(rpcsvc-depfiles) instead of $(objpfx)rpc-proto.d.
5261         ($(objpfx)rpc-proto.d, $(objpfx)rpc-proto.c): Remove rules.
5263 2003-06-08  Ulrich Drepper  <drepper@redhat.com>
5265         * sysdeps/unix/sysv/linux/seteuid.c (seteuid): Use setresuid32
5266         syscall directly if possible.  If __ASSUME_SETRESUID_SYSCALL is
5267         defined drop compatibility code.
5268         * sysdeps/unix/sysv/linux/setegid.c (setegid): Use setresgid32
5269         syscall directly if possible.  If __ASSUME_SETRESUID_SYSCALL is
5270         defined drop compatibility code.
5271         * sysdeps/unix/sysv/linux/i386/seteuid.c (seteuid): Use
5272         setresuid32 syscall directly if possible.
5273         * sysdeps/unix/sysv/linux/i386/setegid.c (setegid): Use
5274         setresgid32 syscall directly if possible.
5275         * sysdeps/unix/sysv/linux/i386/setregid.c (__setregid): Make POSIX
5276         compliant.  Don't change sgid.
5277         * sysdeps/unix/sysv/linux/i386/setreuid.c (__setreuid): Make POSIX
5278         compliant.  Don't change suid.
5280         * config.h.in: Add have-forced-unwind.
5281         * configure.in: Add AC_SUBST(libc_cv_forced_unwind).
5283 2003-06-07  Ulrich Drepper  <drepper@redhat.com>
5285         * test-skeleton.c (main): If EXPECTED_STATUS is defined check that
5286         returned status from child matches.
5288         * Makeconfig (gnulib): Add -lgcc_eh once again.
5290 2003-06-06  Ulrich Drepper  <drepper@redhat.com>
5292         * test-skeleton.c (main): Use TEMP_FAILURE_RETRY with waitpid.
5294         * sysdeps/unix/sysv/linux/i386/sysdep.h (ASMFMT_2): Only allow
5295         %edx for first parameter.  This means no pushl and therefore the
5296         unwind info isn't screwed up.
5298 2003-06-04  Richard Henderson  <rth@redhat.com>
5300         * sysdeps/alpha/dl-machine.h (RTLD_START): Fix top-of-stack backtrace.
5301         * sysdeps/unix/sysv/linux/alpha/clone.S: Likewise.
5302         * sysdeps/alpha/elf/start.S: Likewise.  Remove pointless allocation.
5303         * sysdeps/unix/sysv/linux/alpha/rt_sigaction.S: Use standard ldgp
5304         entry sequence and explicit relocs.  Add unwind info for sigreturn
5305         and rt_sigreturn.
5306         * configure.in (libc_cv_asm_cfi_directives): Test .cfi_remember_state.
5308         * sysdeps/unix/sysv/linux/alpha/syscalls.list (semtimedop): New.
5309         Annotate some parameters.
5310         * sysdeps/unix/sysv/linux/alpha/sysdep.h (__NR_semtimedop): New.
5312         * sysdeps/unix/sysv/linux/alpha/gettimeofday.S: Fix typo in conversion.
5314         * include/libc-symbols.h (symbol_set_declare): Use arrays
5315         of unspecified size.
5317 2003-06-04  Jakub Jelinek  <jakub@redhat.com>
5319         * config.make.in (ASFLAGS-config): New.
5320         * Makeconfig (ASFLAGS): Append $(ASFLAGS-config).
5321         * configure.in (libc_cv_as_noexecstack): New check.
5322         (ASFLAGS_config): Substitute.
5324 2003-06-04  Jakub Jelinek  <jakub@redhat.com>
5326         * sysdeps/i386/fpu/bits/mathinline.h (log1p, asinh, acosh, atanh,
5327         hypot, logb): Protect with #ifdef __FAST_MATH__.
5329 2003-06-04  Thorsten Kukuk  <kukuk@suse.de>
5331         * sysdeps/i386/fpu/bits/mathinline.h (ldexpf, ldexpl): Protect with
5332         #ifdef __FAST_MATH__.
5334 2003-06-03  Ulrich Drepper  <drepper@redhat.com>
5336         * sysdeps/generic/glob.c [HAVE_D_TYPE] (glob_in_dir): Also allow
5337         DT_LNK entries if GLOB_ONLYDIR is set [PR libc/5043].
5338         * posix/globtest.sh: Adjust for this change.
5340         * sysdeps/unix/sysv/linux/ifaddrs.c (netlink_open): Call getsockname
5341         to get the actual PID value used in the records passed up.
5342         (getifaddrs): Don't initialize nh.pid here.
5344 2003-06-02  Ulrich Drepper  <drepper@redhat.com>
5346         * sysdeps/unix/sysv/linux/ifaddrs.c (netlink_receive): Minor
5347         optimization.
5349         * po/zh_CN.po: Update from translation team.
5351         * posix/getconf.c (main): Also recognize names without the
5352         _POSIX_ prefix.
5354         * elf/Makefile (CFLAGS-dl-lookup.c): Define.
5356 2003-06-02  Bernd Schmidt  <bernds@redhat.com>
5358         * sysdeps/i386/fpu/bits/mathinline.h (sqrt, __sqrtl, ldexp,
5359         ldexpf, ldexpl): Only define if __FAST_MATH__.
5361 2003-06-02  Richard C. Bilson  <rcbilson@plg.uwaterloo.ca>
5363         Replace hard-coded offsets into struct sigcontext with generated file.
5364         * sysdeps/unix/sysv/linux/ia64/sigcontext-offsets.sym: New file.
5365         * sysdeps/unix/sysv/linux/ia64/Makefile
5366         [$(subdir) = stdlib] (gen-as-const-headers): Add it.
5367         * sysdeps/unix/sysv/linux/ia64/ucontext_i.h: Include it instead of
5368         defining SC_* macros here.
5370 2003-06-02  Jakub Jelinek  <jakub@redhat.com>
5372         * sysdeps/unix/sysv/linux/bits/sched.h (CLONE_PID): Remove.
5374 2003-06-01  Jakub Jelinek  <jakub@redhat.com>
5376         * sysdeps/i386/dl-machine.h: Include <sysdep.h>.
5378 2003-06-01  Ulrich Drepper  <drepper@redhat.com>
5380         * test-skeleton.c (main): Request getopt to not reorder the
5381         command line.
5383         * elf/Makefile (CFLAGS-dl-runtime.c): Define.
5385         * wcsmbs/wcpncpy.c (__wcpncpy): Fix broken implementation to match
5386         stpncpy.
5388 2003-05-31  Ulrich Drepper  <drepper@redhat.com>
5390         * sysdeps/unix/sysv/linux/ia64/bits/sigaction.h (SA_NOCLDWAIT): Define.
5392 2003-05-31  Jakub Jelinek  <jakub@redhat.com>
5394         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_plt_conflict):
5395         New function.
5396         (elf_machine_rela) <case R_PPC64_JMP_SLOT>: Avoid
5397         RESOLVE_CONFLICT_FIND_MAP.  If RESOLVE_CONFLICT_FIND_MAP is defined,
5398         call elf_machine_plt_conflict instead of elf_machine_fixup_plt.
5400 2003-05-31  Ulrich Drepper  <drepper@redhat.com>
5402         * sysdeps/i386/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE): Add
5403         CFI directives.
5405         * csu/Makefile: Fix Makefile warnings regarding Scrt1.o.
5407         * libio/fileops.c (_IO_file_open): Don't mark as inline.
5409         * sysdeps/ia64/elf/initfini.c (gmon_initializer): Mark with
5410         attribute used.
5412 2003-05-30  Ulrich Drepper  <drepper@redhat.com>
5414         * scripts/config.guess: Update from master copy.
5415         * scripts/config.sub: Likewise.
5417 2003-05-30  Guido Guenther  <agx@sigxcpu.org>
5419         * sysdeps/mips/mips64/bsd-_setjmp.S: Include <sys/asm.h> for
5420         SETUP_GP64 and friends.
5421         * sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h: Fix register
5422         names in internal_syscall{6,7}.
5423         * sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h: Likewise.
5424         * sysdeps/unix/sysv/linux/mips/pread.c [_MIPS_SIM == _ABI64]: Fix
5425         number of syscall arguments.
5426         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
5427         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
5428         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
5430 2003-05-30  Andreas Jaeger  <aj@suse.de>
5432         * sysdeps/x86_64/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
5433         Add CFI directives.
5435         * sysdeps/unix/sysv/linux/x86_64/sigaction.c (RESTORE2): Add CFI
5436         directives.
5438         * sysdeps/generic/sysdep.h: Add CFI_* macros for C files.
5440         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
5441         Add CFI directives.
5443 2003-05-30  Jakub Jelinek  <jakub@redhat.com>
5445         * sysdeps/powerpc/powerpc32/elf/start.S: Make code compilable with
5446         SHARED.
5448 2003-05-11  Andreas Schwab  <schwab@suse.de>
5450         * Makerules: Always use -MP together with -MD.
5451         (sed-remove-dotot): Substitute $(..) also at start of line.
5452         ($(stdio_lim:h=st)): Use -MD instead of SUNPRO_DEPENDENCIES.
5453         Generated defines with a single compiler call.
5454         Use $(sed-remove-dotdot).
5455         * mach/Makefile ($(objpfx)mach-syscalls.mk): Use -MD instead
5456         of DEPENDENCIES_OUTPUT, and use $(sed-remove-objpfx).
5457         * sysdeps/unix/sysv/linux/Makefile ($(objpfx)syscall-%.h):
5458         Use -MD instead of SUNPRO_DEPENDENCIES, and use $(sed-remove-objpfx).
5459         * sysdeps/unix/sysv/linux/mips/Makefile
5460         ($(objpfx)syscall-%.h): Likewise.
5462 2003-05-28  Roland McGrath  <roland@redhat.com>
5464         * malloc/malloc.h [! __GNUC__] (__const): Define if undefined.
5466 2003-05-26  Aldy Hernandez  <aldyh@redhat.com>
5468         * soft-fp/soft-fp.h (FP_EX_UNDERFLOW): Define to 0.
5470 2003-05-28  Roland McGrath  <roland@redhat.com>
5472         * sysdeps/unix/sysv/linux/ia64/setcontext.S: Pass fourth argument to
5473         rt_sigprocmask system call.
5474         * sysdeps/unix/sysv/linux/ia64/ucontext_i.h (SC_MASK): Fix value.
5475         From Peter A. Buhr <pabuhr@plg2.math.uwaterloo.ca>.
5477 2003-05-28  Ulrich Drepper  <drepper@redhat.com>
5479         * include/libc-symbols.h: Define hidden attribute for real also if
5480         LIBC_NONSHARED is defined.  Patch by Jakub Jelinek.
5482         * csu/Makefile: Add rules to build Scrt1.o.
5483         * sysdeps/i386/elf/start.S: Make code compilable with SHARED.
5484         * sysdeps/x86_64/elf/start.S: Likewise.
5486 2003-05-27  Jakub Jelinek  <jakub@redhat.com>
5488         * stdio-common/vfprintf.c (process_arg, process_string_arg): Use
5489         pa_int/pa_u_int instead of pa_short_int, pa_u_short_int and pa_char.
5490         * stdio-common/printf-parse.h (union printf_arg): Remove pa_char,
5491         pa_short_int, pa_u_short_int and pa_float.
5493 2003-05-26  Jakub Jelinek  <jakub@redhat.com>
5495         * libio/strops.c (_IO_str_init_static): Change into a wrapper around
5496         _IO_str_init_static_internal.
5497         (_IO_str_init_static_internal): Moved from _IO_str_init_static,
5498         change size argument to _IO_size_t, don't limit sprintf to 64M.
5499         (_IO_str_init_readonly): Call _IO_str_init_static_internal.
5500         * libio/wstrops.c (_IO_wstr_init_static): Change size argument to
5501         _IO_size_t, don't limit swprintf to 256M.
5502         (_IO_wstr_init_readonly): Remove.
5503         * libio/libioP.h (_IO_str_init_static_internal, _IO_wstr_init_static):
5504         Adjust prototypes.
5505         (_IO_wstr_init_readonly): Remove prototype.
5506         * libio/iovsprintf.c (_IO_vsprintf): Use
5507         _IO_str_init_static_internal instead of INTUSE(_IO_str_init_static).
5508         * libio/iovsscanf.c (_IO_vsscanf): Likewise.
5509         * libio/memstream.c (open_memstream): Likewise.
5510         * libio/obprintf.c (_IO_obstack_vfprintf): Likewise.
5511         * libio/vasprintf.c (_IO_vasprintf): Likewise.
5512         * libio/vsnprintf.c (_IO_vsnprintf): Likewise.
5513         * stdio-common/tst-sprintf.c (main): Add new test.
5515 2003-05-26  Ulrich Drepper  <drepper@redhat.com>
5517         * stdio-common/vfprintf.c (vfprintf): Be bug-compatible with some
5518         other implementation in respect of multiple uses of parameter with
5519         different types.
5521 2003-05-25  Ulrich Drepper  <drepper@redhat.com>
5523         * sysdeps/unix/sysv/linux/kernel-features.h: Define
5524         __ASSUME_FUTEX_REQUEUE for >= 2.5.70.
5526 2003-05-22  Andreas Jaeger  <aj@suse.de>
5528         * sysdeps/unix/sysv/linux/x86_64/gettimeofday.S: Add CFI
5529         directives.
5530         * sysdeps/unix/sysv/linux/x86_64/time.S: Likewise.
5531         * sysdeps/x86_64/strtok.S: Likewise.
5533 2003-05-20  Guido Guenther  <agx@sigxcpu.org>
5535         * sysdeps/unix/sysv/linux/mips/bits/siginfo.h: Change SI_ASYNCNL
5536         to -60 and define SI_TKILL.
5538 2003-05-21  H.J. Lu  <hongjiu.lu@intel.com>
5540         * math/test-fenv.c (feexcp_nomask_test): Fix comment.
5541         (feexcp_mask_test): Likewise.
5543 2003-05-21  Ulrich Drepper  <drepper@redhat.com>
5545         * locale/programs/locale.c (main): Fix typo in last patch.
5547         * csu/elf-init.c: Mark __preinit_array_start, __preinit_array_end,
5548         __init_array_start, __init_array_end, __fini_array_start, and
5549         __fini_array_end as hidden.
5551 2003-05-21  Petter Reinholdtsen  <pere@hungry.com>
5553         * locale/programs/locale.c (main): Report an error if setlocale()
5554         fails [PR libc/2254].
5556 2003-05-21  Jakub Jelinek  <jakub@redhat.com>
5558         * sysdeps/unix/sysv/linux/s390/system.c: New file.
5560 2003-05-21  Jakub Jelinek  <jakub@redhat.com>
5562         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (LOADARGS_0,
5563         LOADARGS_1, LOADARGS_2, LOADARGS_3, LOADARGS_4, LOADARGS_5,
5564         LOADARGS_6): Don't error if syscall argument is a string literal.
5565         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h (LOADARGS_0,
5566         LOADARGS_1, LOADARGS_2, LOADARGS_3, LOADARGS_4, LOADARGS_5,
5567         LOADARGS_6): Likewise.
5569 2003-05-21  Andreas Jaeger  <aj@suse.de>
5571         * sysdeps/generic/sysdep.h (cfi_offset, cfi_startproc,
5572         cfi_endproc, cfi_def_cfa, cfi_def_ccfa_register,
5573         cfi_def_cfa_offset, cfi_adjust_cfa_offset, cfi_offset): Define.
5575         * sysdeps/x86_64/sysdep.h (CALL_MCOUNT): Add cfi directives.
5576         (ENTRY): Likewise.
5577         (END): Likewise.
5579         * configure.in: Test for asm cfi directives.
5581         * config.h.in: Add HAVE_ASM_CFI_DIRECTIVES.
5583 2003-05-17  Andreas Jaeger  <aj@suse.de>
5585         * sysdeps/unix/sysv/linux/x86_64/syscall.S: Revert last patch.
5587         * rt/tst-clock_nanosleep.c: Include <time.h> for clock_nanosleep.
5589 2003-05-16  Ulrich Drepper  <drepper@redhat.com>
5591         * rt/Makefile (tests): Add tst-clock_nanosleep.
5592         * rt/tst-clock_nanosleep.c: New file.
5593         * posix/Makefile (tests): Add tst-nanosleep.
5594         * posix/tst-nanosleep.c: New file.
5596         * sysdeps/unix/clock_nanosleep.c (CPUCLOCK_P): Fix definition.
5598         * include/features.h (__USE_XOPEN2K): Define also for
5599         _POSIX_C_SOURCE>=200112L.
5601         * sysdeps/unix/sysv/linux/sigwaitinfo.c (do_sigwaitinfo): Fold
5602         SI_TKILL code into SI_USER.
5603         * sysdeps/unix/sysv/linux/sigtimedwait.c (do_sigtimedwait): Likewise.
5605         * sysdeps/posix/sigpause.c (do_sigpause): Use sigdelset after all.
5607 2003-05-15  Jakub Jelinek  <jakub@redhat.com>
5609         * sysdeps/powerpc/powerpc32/dl-machine.c (_dl_reloc_overflow):
5610         Remove sym argument, always use refsym.
5611         (__process_machine_rela): Adjust callers.
5612         * sysdeps/powerpc/powerpc64/dl-machine.c (_dl_reloc_overflow):
5613         Likewise.
5614         * sysdeps/powerpc/powerpc32/dl-machine.h (_dl_reloc_overflow):
5615         Adjust prototype.
5616         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela): Likewise.
5618 2003-05-15  Ulrich Drepper  <drepper@redhat.com>
5620         * sysdeps/generic/dl-sysdep.c (_dl_show_auxv): Fix typo
5621         (DL_NEED_SYSINFO -> NEED_DL_SYSINFO).  If aux value is not known
5622         print numeric values.
5624 2003-05-12  Thorsten Kukuk  <kukuk@suse.de>
5626         * inet/netinet/igmp.h: Sync with Linux Kernel 2.5.69 and *BSD.
5628 2003-05-14  Andreas Schwab  <schwab@suse.de>
5630         * sysdeps/unix/sysv/linux/ia64/umount.c: New file.
5632 2003-05-14  Jakub Jelinek  <jakub@redhat.com>
5634         * elf/rtld.c (dl_main): For LD_TRACE_PRELINKING print search scope
5635         even if no DT_NEEDED is present.
5637 2003-05-13  David Mosberger  <davidm@hpl.hp.com>
5639         * sysdeps/unix/sysv/linux/ia64/setjmp.S: Fix the fix from
5640         2003-03-27: setjmp is NOT a leaf-routine (due to the call to
5641         __sigjmp_save) so we can't keep the saved unat value in a scratch
5642         register (r16).  Use loc2 instead.
5644 2003-05-13  Ulrich Drepper  <drepper@redhat.com>
5646         * csu/Makefile: Do compile elf-init with PIC flag since in dynamic
5647         binaries it has to be relocatable.
5649         * sysdeps/unix/sysv/linux/waitpid.c: Use waitpid syscall is available.
5651 2003-05-12  Steven Munroe  <sjmunroe@us.ibm.com>
5653         * sysdeps/powerpc/bits/atomic.h
5654         (__arch_compare_and_exchange_bool_8_rel): Define.
5655         (__arch_compare_and_exchange_bool_16_rel): Define.
5656         (__ARCH_REL_INSTR): Define if not already defined.
5657         (__arch_atomic_exchange_and_add_32): Add "memory" to clobber list.
5658         (__arch_atomic_decrement_if_positive_32):
5659         Add "memory" to clobber list.
5660         (__arch_compare_and_exchange_val_32_acq): Remove release sync.
5661         (__arch_compare_and_exchange_val_32_rel): Define.
5662         (__arch_atomic_exchange_32): Remove.
5663         (__arch_atomic_exchange_32_acq): Define.
5664         (__arch_atomic_exchange_32_rel): Define.
5665         (atomic_compare_and_exchange_val_rel): Define.
5666         (atomic_exchange_acq): Use __arch_atomic_exchange_*_acq forms.
5667         (atomic_exchange_rel): Define.
5668         * sysdeps/powerpc/powerpc32/bits/atomic.h
5669         (__arch_compare_and_exchange_bool_32_acq): Remove release sync.
5670         (__arch_compare_and_exchange_bool_32_rel): Define.
5671         (__arch_compare_and_exchange_bool_64_rel): Define.
5672         (__arch_compare_and_exchange_val_64_rel): Define.
5673         (__arch_atomic_exchange_64): Remove.
5674         (__arch_atomic_exchange_64_acq): Define.
5675         (__arch_atomic_exchange_64_rel): Define.
5676         * sysdeps/powerpc/powerpc64/bits/atomic.h
5677         (__arch_compare_and_exchange_bool_32_rel): Define.
5678         (__arch_compare_and_exchange_bool_64_acq): Remove release sync.
5679         (__arch_compare_and_exchange_bool_64_rel): Define.
5680         (__arch_compare_and_exchange_val_64_acq): Remove release sync.
5681         (__arch_compare_and_exchange_val_64_rel): Define.
5682         (__arch_atomic_exchange_64): Remove.
5683         (__arch_atomic_exchange_64_acq): Define.
5684         (__arch_atomic_exchange_64_rel): Define.
5685         (__arch_atomic_exchange_and_add_64): Add "memory" to clobber list.
5686         (__arch_atomic_decrement_if_positive_64):
5687         Add "memory" to clobber list.
5688         [!UP](__ARCH_REL_INSTR): Define as lwsync.
5690 2003-05-11  Andreas Schwab  <schwab@suse.de>
5692         * io/Makefile ($(objpfx)ftwtest.out): Use absolute file names.
5694 2003-05-11  Ulrich Drepper  <drepper@redhat.com>
5696         * time/tst-strftime.c (do_test): Add tests for - flag.
5698 2003-05-11  Jim Meyering  <jim@meyering.net>
5700         * time/strftime.c (my_strftime): Let the `-' (no-pad) flag affect
5701         the space-padded-by-default conversion specifiers, %e, %k, %l.
5703 2003-05-11  Andreas Schwab  <schwab@suse.de>
5705         * sysdeps/generic/sched_setaffinity.c: Fix parameter name.
5707 2003-05-10  Ulrich Drepper  <drepper@redhat.com>
5709         * sysdeps/generic/bits/sched.h: Define cpu_set_t only if not
5710         already defined and when really needed.
5711         * sysdeps/unix/sysv/linux/bits/sched.h: Likewise.
5713 2003-05-09  Thorsten Kukuk  <kukuk@suse.de>
5715         * sysdeps/unix/sysv/linux/netinet/igmp.h: Don't include kernel
5716         headers, add defines from kernel header, move it from here...
5717         * inet/netinet/igmp.h: ... to here.
5718         * inet/Makefile (headers): Add netinet/igmp.h.
5719         * sysdeps/unix/sysv/linux/Makefile: Remove netinet/igmp.h.
5720         * sysdeps/unix/sysv/linux/Dist: Remove netinet/igmp.h.
5722 2003-05-10  Ulrich Drepper  <drepper@redhat.com>
5724         * sysdeps/pthread/lio_listio64.c (lio_listio64): If SIG == NULL,
5725         use dummy sigevent structure with SIGEV_NONE [PR libc/5015].
5727 2003-05-09  Thorsten Kukuk <kukuk@suse.de>
5729         * libio/bits/stdio.h: Sync prototypes with libio/stdio.h
5730         (remove __THROW from possible cancellation points).
5732 2003-05-10  Ulrich Drepper  <drepper@redhat.com>
5734         * posix/sched.h (CPU_SETSIZE): Define.
5736 2003-05-09  Ulrich Drepper  <drepper@redhat.com>
5738         * Makeconfig (gnulib): Remove -lgcc_eh again.
5740         * posix/sched.h: Change prototypes of sched_getaffinity and
5741         sched_setaffinity.  Define CPU_SET, CPU_CLR, CPU_ISSET, and CPU_ZERO.
5742         * sysdeps/generic/sched_getaffinity.c: Adjust definition.
5743         * sysdeps/generic/sched_setaffinity.c: Likewise.
5744         * sysdeps/generic/bits/sched.h: Define __CPU_SETSIZE, __NCPUBITS,
5745         __CPUELT, __CPUMASK, cpu_set_t, __cpu_mask, __CPU_ZERO, __CPU_SET,
5746         __CPU_CLR, and __CPU_ISSET.
5747         * sysdeps/unix/sysv/linux/bits/sched.h: Likewise.
5748         * sysdeps/unix/sysv/linux/sched_getaffinity.c: New file.
5749         * sysdeps/unix/sysv/linux/sched_setaffinity.c: New file.
5751         * include/atomic.h (atomic_exchange_acq): Renamed from atomic_exchange.
5752         (atomic_exchange_rel): New #define.
5753         * sysdeps/ia64/bits/atomic.h: Likewise.
5754         * sysdeps/i386/i486/bits/atomic.h (atomic_exchange_acq): Renamed from
5755         atomic_exchange.
5756         * sysdeps/m68k/m68020/bits/atomic.h: Likewise.
5757         * sysdeps/powerpc/bits/atomic.h: Likewise.
5758         * sysdeps/sparc/sparc32/sparcv9/bits/atomic.h: Likewise.
5759         * sysdeps/sparc/sparc64/bits/atomic.h: Likewise.
5760         * sysdeps/x86_64/bits/atomic.h: Likewise.
5761         * csu/tst-atomic.c: Use atomic_exchange_acq instead of atomic_exchange.
5763         * sysdeps/unix/sysv/linux/x86_64/get_clockfreq.c: New file.
5765 2003-05-08  Ulrich Drepper  <drepper@redhat.com>
5767         * malloc/thread-m.h: Remove special handling of thread_atfork if
5768         HAVE_register_atfork_malloc is defined.
5770 2003-05-07  Andreas Jaeger  <aj@suse.de>
5772         * sysdeps/unix/sysv/linux/x86_64/syscall.S: Add DWARF2 unwind
5773         information.
5775 2003-05-06  Ulrich Drepper  <drepper@redhat.com>
5777         * libio/oldiofdopen.c (_IO_old_fdopen): Use _IO_old_init not _IO_init.
5778         * libio/oldiofopen.c (_IO_old_fopen): Likewise.
5779         * libio/libioP.h: Declare _IO_old_init.
5780         * libio/genops.c (_IO_no_init): Split in two.  New function
5781         _IO_old_init.
5783 2003-05-05  Ulrich Drepper  <drepper@redhat.com>
5785         * sysdeps/generic/enbl-secure.c (__libc_enable_secure_decided): New
5786         variable.
5787         (__libc_init_secure): Don't do anything if __libc_enable_secure_decided
5788         is nonzero.
5789         * include/unistd.h: Declare __libc_enable_secure_decided.
5790         * elf/dl-support.c (_dl_aux_init): Recognize AT_UID, AT_EUID, AT_GID,
5791         and AT_EGID.  If all found, set __libc_enable_secure and
5792         __libc_enable_secure_decided.
5794         * sysdeps/generic/libc-start.c [!SHARED]: Call
5795         __libc_check_standard_fds after __libc_init_first.
5797 2003-05-05  Roland McGrath  <roland@redhat.com>
5799         * Makerules (common-before-compile): New variable.
5800         ($(common-objpfx)%.make): Depend on that instead of $(before-compile).
5801         ($(common-objpfx)%.h $(common-objpfx)%.h.d): Likewise.  Move this rule
5802         to after all setting of before-compile.
5804 2003-05-05  Jakub Jelinek  <jakub@redhat.com>
5806         * sysdeps/ia64/bits/atomic.h (__arch_compare_and_exchange_val_8_acq,
5807         __arch_compare_and_exchange_val_16_acq): Cast 0 to mem's type.
5808         * sysdeps/powerpc/powerpc32/bits/atomic.h
5809         (__arch_compare_and_exchange_val_64_acq): Likewise.
5810         * sysdeps/sparc/sparc32/sparcv9/bits/atomic.h
5811         (__arch_compare_and_exchange_val_8_acq,
5812         __arch_compare_and_exchange_val_16_acq,
5813         __arch_compare_and_exchange_val_64_acq): Likewise.
5814         * sysdeps/sparc/sparc64/bits/atomic.h
5815         (__arch_compare_and_exchange_val_8_acq,
5816         __arch_compare_and_exchange_val_16_acq): Likewise.
5817         * sysdeps/s390/bits/atomic.h (__arch_compare_and_exchange_val_8_acq,
5818         __arch_compare_and_exchange_val_16_acq,
5819         __arch_compare_and_exchange_val_64_acq): Likewise.
5820         * sysdeps/unix/sysv/linux/sh/bits/atomic.h
5821         (__arch_compare_and_exchange_val_64_acq): Likewise.
5822         * sysdeps/s390/s390-64/backtrace.c (__backtrace): Add cast to shut
5823         up warning.
5824         * sysdeps/s390/fpu/fegetenv.c (fegetenv): Likewise.
5826         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h
5827         (INLINE_SYSCALL, INTERNAL_SYSCALL_DIRECT, INTERNAL_SYSCALL_SVC0):
5828         Return long instead of int.
5829         (INTERNAL_SYSCALL_ERROR_P): Cast val to unsigned long, replace
5830         0xfffff001u with -4095UL.
5832 2003-05-05  Andreas Jaeger  <aj@suse.de>
5834         * sysdeps/x86_64/fpu_control.h: New from i386.
5836         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (__NR_semtimedop):
5837         Define if not defined.
5839         * sunrpc/Makefile (generated-dirs): New variable.
5840         * resolv/Makefile (generated): New variable.
5842 2003-05-04  Roland McGrath  <roland@redhat.com>
5844         * csu/Makefile ($(csu-dummies) target rule): Don't use a temp C file.
5845         Depend on $(before-compile).
5847         * csu/Makefile ($(objpfx)crt%.o): Replace implicit rule with a static
5848         pattern rule.  The implicit rule could be ruled out when $(objpfx)
5849         didn't exist at the time of its consideration (ugh!).
5851         * Makerules (+make-deps): Fix target matching.
5852         Use $(sed-remove-dotdot).
5854 2003-05-03  Ulrich Drepper  <drepper@redhat.com>
5856         * nscd/nscd.c (main): Parse config file right after parsing
5857         parameters.  Then, if get_stats is true, call receive_print_stats.
5858         Drop parameter from nscd_init call.
5859         (get_stats): New variable.
5860         (parse_opt): Set get_stats, don't call receive_print_stats here.
5861         * nscd/nscd.h: Declare dbs, stat_user, and stat_uid.  Adjust nscd_init
5862         prototype.
5863         * nscd/connections.c (stat_user, stat_uid): New variables.
5864         (dbs): Make global.
5865         (nscd_init): Don't read configuration file here.  Drop parameter.
5866         (handle_request): Cleanup handling of non-database lookup requests.
5867         * nscd/nscd_conf.c (nscd_parse_file): Recognize stat-user entry.
5868         Get UID of the specified user.  Use xstrdup instead of strdup.
5869         * nscd/nscd_stat.c (receive_print_stats): Check UID.  If not zero,
5870         check stat_user.
5871         * nscd/Makefile (nscd-modules): Add xstrdup.
5872         * nscd/nscd.conf: Document stat-user entry.
5874 2003-05-03  H.J. Lu  <hongjiu.lu@intel.com>
5876         * sysdeps/unix/sysv/linux/ia64/sysdep.h (__NR_semtimedop): Define
5877         if not defined.
5879 2003-04-22  Roland McGrath  <roland@redhat.com>
5881         * elf/elf.h (AT_SYSINFO_EHDR): New macro, replaces AT_SYSINFO_EH_FRAME.
5882         * sysdeps/generic/ldsodefs.h (struct rtld_global): Remove
5883         dl_sysinfo_eh_frame member, add dl_sysinfo_dso member instead.
5884         * elf/dl-support.c: Update defn.
5885         * sysdeps/generic/libc-start.c: Don't call __register_frame_info_bases.
5886         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start) [NEED_DL_SYSINFO]:
5887         Set GL(dl_sysinfo_dso) from AT_SYSINFO_EHDR.
5888         (_dl_show_auxv): Grok AT_SYSINFO_EHDR, not AT_SYSINFO_EH_FRAME.
5889         * elf/rtld.c (dl_main) [NEED_DL_SYSINFO]: If GL(dl_sysinfo_dso) is
5890         set, set up a link_map for the preloaded, prelinked object.
5892 2003-05-03  Roland McGrath  <roland@redhat.com>
5894         * sysdeps/gnu/Makefile (generated): Append errlist-compat.c here, ...
5895         * stdio-common/Makefile: ... not here.
5897         * csu/Makefile ($(objpfx)initfini.s): Depend on $(before-compile).
5898         * sysdeps/gnu/Makefile ($(objpfx)errlist-compat.c): Likewise.
5900 2003-05-02  Ulrich Drepper  <drepper@redhat.com>
5902         * sysdeps/unix/sysv/linux/s390/semtimedop.c: New file.
5904         * sysdeps/unix/sysv/linux/alpha/ipc_priv.h (IPCOP_semtimedop): Define.
5906         * sysdeps/generic/dl-fptr.c (_dl_make_fptr): Use 0 not NULL for
5907         comparing ftab elements.
5908         (_dl_unmap): Fix typo in test.
5909         (_dl_make_fptr): Fix typos introduced in last change.
5911         * sysdeps/generic/dl-fptr.c: Put back one optimization from the
5912         original patch.  Use non-exported symbols.  Mark translatable
5913         strings.  Pretty printing.
5915 2003-05-02  Roland McGrath  <roland@redhat.com>
5917         * Makerules (do-stamp): Do $(make-target-directory).
5919 2003-04-07  H.J. Lu  <hjl@gnu.org>
5921         * sysdeps/generic/dl-fptr.c: Modify to remove the lock.
5923 2003-04-03  H.J. Lu  <hjl@gnu.org>
5925         * sysdeps/ia64/dl-fptr.c: Moved to ...
5926         * sysdeps/generic/dl-fptr.c: Here.
5928         * sysdeps/generic/dl-fptr.h: New.
5929         * sysdeps/ia64/dl-fptr.h: New.
5931         * sysdeps/ia64/dl-symaddr.c: Moved to ...
5932         * sysdeps/generic/dl-symaddr.c: here.
5934         * sysdeps/ia64/dl-machine.h: Include <dl-fptr.h>.
5935         (IA64_BOOT_FPTR_TABLE_LEN): Removed.
5936         (ia64_fdesc): Likewise.
5937         (ia64_fdesc_table): Likewise.
5938         (__ia64_make_fptr): Likewise.
5939         (__ia64_init_bootstrap_fdesc_table): Replace __ia64_boot_fptr_table
5940         with _dl_boot_fptr_table.
5941         (elf_machine_runtime_setup): Replace `struct ia64_fdesc' with
5942         `struct fdesc'.
5943         (elf_machine_rela): Replace __ia64_make_fptr with _dl_make_fptr.
5945 2003-05-01  Roland McGrath  <roland@redhat.com>
5947         * sysdeps/generic/bp-thunks.h: Protect includes with [!__ASSEMBLER__].
5948         * sysdeps/unix/sysv/linux/i386/bp-thunks.h: Likewise.
5950         * sysdeps/unix/sysv/linux/Makefile ($(objpfx)syscall-%.h):
5951         Use $(make-target-directory).
5952         * sysdeps/unix/Makefile ($(objpfx)stub-syscalls.c): Likewise.
5954         * Makerules (compile-mkdep-flags): New variable, pass -MD -MF $@.d.
5955         (compile-command.S): Don't use ifndef.  Append $(compile-mkdep-flags).
5956         (compile-command.s, compile-command.c): Likewise.
5957         ($(objpfx)%.d): All such pattern rules removed.
5958         ($(+sysdir_pfx)sysd-rules): Don't generate them.
5959         ($(common-objpfx)dummy.d): Target removed.
5960         (make-dummy-dep): Variable removed.
5961         (generate-md5): Likewise.
5962         (%.d: %.dt): New pattern rule.
5963         (+depfiles): Use $(wildcard) function to get just existing *.d files
5964         and .d files for existing *.dt files.
5965         (common-clean): Remove all *.d and *.dt files.
5966         (before-compile): Add $(objpfx). when it doesn't exist,
5967         regardless of $(no_deps).
5968         * elf/rtld-Rules ($(objpfx)rtld-%.d): All such pattern rules removed.
5969         (rtld-depfiles): Use .os.d instead of .d names.
5970         Include existing *.d files and .d files for existing *.dt files.
5972         * Makerules ($(common-objpfx)%.make): Protect with [! subdir].
5973         Use -MD, -MT and -MF flags instead of SUNPRO_DEPENDENCIES variable.
5975         * sysdeps/unix/Makefile ($(common-objpfx)s-%.d): Remove compat.h hack.
5976         Do s-*.d includes only if we have some syscall routines in this subdir.
5978         * include/libc-symbols.h (libc_freeres_ptr): Use %nobits instead of
5979         @nobits.  The former is accepted by gas on any ELF platform.
5981 2003-05-01  Ulrich Drepper  <drepper@redhat.com>
5983         * sysdeps/unix/sysv/linux/semtimedop.c: New file.
5985         * malloc/malloc.c (mSTATs): Call ptmalloc_init if necessary.
5987 2003-04-29  Andreas Schwab  <schwab@suse.de>
5989         * string/test-strcat.c (do_one_test): Fix attribute name.
5991 2003-04-30  Alexandre Oliva  <aoliva@redhat.com>
5993         * sysdeps/unix/sysv/linux/mips/sys/ucontext.h (ucontext): Make
5994         uc_flags long for all ABIs.
5996 2003-04-30  Andreas Jaeger  <aj@suse.de>
5998         * sysdeps/unix/sysv/linux/x86_64/sys/debugreg.h
5999         (DR_CONTROL_RESERVED): Use correct value for 64-bit.
6000         Reported by Andrew Derrick Balsa <andrebalsa@mailingaddress.org>.
6001         Add bi-arch support.
6003 2003-04-30  Ulrich Drepper  <drepper@redhat.com>
6005         * malloc/malloc.c (mEMALIGn): Define alias __memalign_internal.
6006         (__posix_memalign): Use __memalign_internal instead of memalign.
6008 2003-04-29  Roland McGrath  <roland@redhat.com>
6010         * configure.in: Search for AUTOCONF unconditionally.
6011         Just don't complain about missing it under --without-cvs.
6013         * include/libc-symbols.h (__symbol_set_attribute): New macro,
6014         give hidden for [SHARED] and weak for [! SHARED].
6015         (symbol_set_declare): Use that.  Never need weak_extern these days.
6016         * Makerules ($(common-objpfx)shlib.lds): Go back to using PROVIDE.
6017         Depend on $(..)Makerules.
6019 2003-04-29  Ulrich Drepper  <drepper@redhat.com>
6021         * sysdeps/unix/sysv/linux/ifaddrs.c (getifaddrs): Use __ protected
6022         variants of socket, bind, recvmsg, and sendto.
6024         * sysdeps/i386/fpu/ftestexcept.c: Also check SSE status word.
6026         * include/signal.h: Use libc_hidden_proto for sigaddset and sigdelset.
6027         * signal/sigaddset.c: Add libc_hidden_def.
6028         * signal/sigdelset.c: Likewise.
6030 2003-04-29  Jakub Jelinek  <jakub@redhat.com>
6032         * sysdeps/i386/i486/string-inlines.c (__memcpy_g, __strchr_g): Move
6033         to the end of the file.
6035         * configure.in: Change __oline__ to $LINENO.
6036         (HAVE_BUILTIN_REDIRECTION): New check.
6037         * config.h.in (HAVE_BUILTIN_REDIRECTION): Add.
6038         * include/libc-symbols.h (libc_hidden_builtin_proto,
6039         libc_hidden_builtin_def, libc_hidden_builtin_weak,
6040         libc_hidden_builtin_ver): Define.
6041         * include/string.h (memchr, memcpy, memmove, memset, strcat, strchr,
6042         strcmp, strcpy, strcspn, strlen, strncmp, strncpy, strpbrk, strrchr,
6043         strspn, strstr): Add libc_hidden_builtin_proto.
6044         * intl/plural.y: Include string.h.
6045         * sysdeps/alpha/alphaev6/memchr.S (memchr): Add
6046         libc_hidden_builtin_def.
6047         * sysdeps/alpha/alphaev6/memcpy.S (memcpy): Likewise.
6048         * sysdeps/alpha/alphaev6/memset.S (memset): Likewise.
6049         * sysdeps/alpha/alphaev67/strcat.S (strcat): Likewise.
6050         * sysdeps/alpha/alphaev67/strchr.S (strchr): Likewise.
6051         * sysdeps/alpha/alphaev67/strlen.S (strlen): Likewise.
6052         * sysdeps/alpha/alphaev67/strrchr.S (strrchr): Likewise.
6053         * sysdeps/alpha/memchr.S (memchr): Likewise.
6054         * sysdeps/alpha/memset.S (memset): Likewise.
6055         * sysdeps/alpha/strcat.S (strcat): Likewise.
6056         * sysdeps/alpha/strchr.S (strchr): Likewise.
6057         * sysdeps/alpha/strcmp.S (strcmp): Likewise.
6058         * sysdeps/alpha/strcpy.S (strcpy): Likewise.
6059         * sysdeps/alpha/strlen.S (strlen): Likewise.
6060         * sysdeps/alpha/strncmp.S (strncmp): Likewise.
6061         * sysdeps/alpha/strncpy.S (strncpy): Likewise.
6062         * sysdeps/alpha/strrchr.S (strrchr): Likewise.
6063         * sysdeps/arm/memset.S (memset): Likewise.
6064         * sysdeps/arm/strlen.S (strlen): Likewise.
6065         * sysdeps/generic/memchr.c (memchr): Likewise.
6066         * sysdeps/generic/memcpy.c (memcpy): Likewise.
6067         * sysdeps/generic/memmove.c (memmove): Likewise.
6068         * sysdeps/generic/memset.c (memset): Likewise.
6069         * sysdeps/generic/strcat.c (strcat): Likewise.
6070         * sysdeps/generic/strchr.c (strchr): Likewise.
6071         * sysdeps/generic/strcmp.c (strcmp): Likewise.
6072         * sysdeps/generic/strcpy.c (strcpy): Likewise.
6073         * sysdeps/generic/strcspn.c (strcspn): Likewise.
6074         * sysdeps/generic/strlen.c (strlen): Likewise.
6075         * sysdeps/generic/strncmp.c (strncmp): Likewise.
6076         * sysdeps/generic/strncpy.c (strncpy): Likewise.
6077         * sysdeps/generic/strpbrk.c (strpbrk): Likewise.
6078         * sysdeps/generic/strrchr.c (strrchr): Likewise.
6079         * sysdeps/generic/strspn.c (strspn): Likewise.
6080         * sysdeps/generic/strstr.c (strstr): Likewise.
6081         * sysdeps/i386/i486/strcat.S (strcat): Likewise.
6082         * sysdeps/i386/i486/strlen.S (strlen): Likewise.
6083         * sysdeps/i386/i586/memcpy.S (memcpy): Likewise.
6084         * sysdeps/i386/i586/memset.S (memset): Likewise.
6085         * sysdeps/i386/i586/strchr.S (strchr): Likewise.
6086         * sysdeps/i386/i586/strcpy.S (strcpy): Likewise.
6087         * sysdeps/i386/i586/strlen.S (strlen): Likewise.
6088         * sysdeps/i386/i686/memcpy.S (memcpy): Likewise.
6089         * sysdeps/i386/i686/memmove.S (memmove): Likewise.
6090         * sysdeps/i386/i686/memset.S (memset): Likewise.
6091         * sysdeps/i386/i686/strcmp.S (strcmp): Likewise.
6092         * sysdeps/i386/memchr.S (memchr): Likewise.
6093         * sysdeps/i386/memset.c (memset): Likewise.
6094         * sysdeps/i386/strchr.S (strchr): Likewise.
6095         * sysdeps/i386/strcspn.S (strcspn): Likewise.
6096         * sysdeps/i386/strlen.c (strlen): Likewise.
6097         * sysdeps/i386/strpbrk.S (strpbrk): Likewise.
6098         * sysdeps/i386/strrchr.S (strrchr): Likewise.
6099         * sysdeps/i386/strspn.S (strspn): Likewise.
6100         * sysdeps/ia64/memchr.S (memchr): Likewise.
6101         * sysdeps/ia64/memcpy.S (memcpy): Likewise.
6102         * sysdeps/ia64/memmove.S (memmove): Likewise.
6103         * sysdeps/ia64/memset.S (memset): Likewise.
6104         * sysdeps/ia64/strcat.S (strcat): Likewise.
6105         * sysdeps/ia64/strchr.S (strchr): Likewise.
6106         * sysdeps/ia64/strcmp.S (strcmp): Likewise.
6107         * sysdeps/ia64/strcpy.S (strcpy): Likewise.
6108         * sysdeps/ia64/strlen.S (strlen): Likewise.
6109         * sysdeps/ia64/strncmp.S (strncmp): Likewise.
6110         * sysdeps/ia64/strncpy.S (strncpy): Likewise.
6111         * sysdeps/m68k/memchr.S (memchr): Likewise.
6112         * sysdeps/m68k/strchr.S (strchr): Likewise.
6113         * sysdeps/mips/mips64/memcpy.S (memcpy): Likewise.
6114         * sysdeps/mips/mips64/memset.S (memset): Likewise.
6115         * sysdeps/mips/memcpy.S (memcpy): Likewise.
6116         * sysdeps/mips/memset.S (memset): Likewise.
6117         * sysdeps/powerpc/powerpc32/memset.S (memset): Likewise.
6118         * sysdeps/powerpc/powerpc32/strchr.S (strchr): Likewise.
6119         * sysdeps/powerpc/powerpc32/strcmp.S (strcmp): Likewise.
6120         * sysdeps/powerpc/powerpc32/strcpy.S (strcpy): Likewise.
6121         * sysdeps/powerpc/powerpc32/strlen.S (strlen): Likewise.
6122         * sysdeps/powerpc/powerpc64/memcpy.S (memcpy): Likewise.
6123         * sysdeps/powerpc/powerpc64/memset.S (memset): Likewise.
6124         * sysdeps/powerpc/powerpc64/strchr.S (strchr): Likewise.
6125         * sysdeps/powerpc/powerpc64/strcmp.S (strcmp): Likewise.
6126         * sysdeps/powerpc/powerpc64/strcpy.S (strcpy): Likewise.
6127         * sysdeps/powerpc/powerpc64/strlen.S (strlen): Likewise.
6128         * sysdeps/powerpc/strcat.c (strcat): Likewise.
6129         * sysdeps/sparc/sparc32/memchr.S (memchr): Likewise.
6130         * sysdeps/sparc/sparc32/memcpy.S (memcpy): Likewise.
6131         * sysdeps/sparc/sparc32/memset.S (memset): Likewise.
6132         * sysdeps/sparc/sparc32/strcat.S (strcat): Likewise.
6133         * sysdeps/sparc/sparc32/strchr.S (strchr, strrchr): Likewise.
6134         * sysdeps/sparc/sparc32/strcmp.S (strcmp): Likewise.
6135         * sysdeps/sparc/sparc32/strcpy.S (strcpy): Likewise.
6136         * sysdeps/sparc/sparc32/strlen.S (strlen): Likewise.
6137         * sysdeps/sparc/sparc64/sparcv9b/memcpy.S (memcpy, memmove): Likewise.
6138         * sysdeps/sparc/sparc64/memchr.S (memchr): Likewise.
6139         * sysdeps/sparc/sparc64/memcpy.S (memcpy, memmove): Likewise.
6140         * sysdeps/sparc/sparc64/memset.S (memset): Likewise.
6141         * sysdeps/sparc/sparc64/strcat.S (strcat): Likewise.
6142         * sysdeps/sparc/sparc64/strchr.S (strchr, strrchr): Likewise.
6143         * sysdeps/sparc/sparc64/strcmp.S (strcmp): Likewise.
6144         * sysdeps/sparc/sparc64/strcpy.S (strcpy): Likewise.
6145         * sysdeps/sparc/sparc64/strcspn.S (strcspn): Likewise.
6146         * sysdeps/sparc/sparc64/strlen.S (strlen): Likewise.
6147         * sysdeps/sparc/sparc64/strncmp.S (strncmp): Likewise.
6148         * sysdeps/sparc/sparc64/strncpy.S (strncpy): Likewise.
6149         * sysdeps/sparc/sparc64/strpbrk.S (strpbrk): Likewise.
6150         * sysdeps/sparc/sparc64/strspn.S (strspn): Likewise.
6151         * sysdeps/sh/memcpy.S (memcpy): Likewise.
6152         * sysdeps/sh/memset.S (memset): Likewise.
6153         * sysdeps/sh/strlen.S (strlen): Likewise.
6154         * sysdeps/s390/s390-32/memchr.S (memchr): Likewise.
6155         * sysdeps/s390/s390-32/memcpy.S (memcpy): Likewise.
6156         * sysdeps/s390/s390-32/memset.S (memset): Likewise.
6157         * sysdeps/s390/s390-32/strcmp.S (strcmp): Likewise.
6158         * sysdeps/s390/s390-32/strcpy.S (strcpy): Likewise.
6159         * sysdeps/s390/s390-32/strncpy.S (strncpy): Likewise.
6160         * sysdeps/s390/s390-64/memchr.S (memchr): Likewise.
6161         * sysdeps/s390/s390-64/memcpy.S (memcpy): Likewise.
6162         * sysdeps/s390/s390-64/memset.S (memset): Likewise.
6163         * sysdeps/s390/s390-64/strcmp.S (strcmp): Likewise.
6164         * sysdeps/s390/s390-64/strcpy.S (strcpy): Likewise.
6165         * sysdeps/s390/s390-64/strncpy.S (strncpy): Likewise.
6166         * sysdeps/x86_64/memcpy.S (memcpy): Likewise.
6167         * sysdeps/x86_64/memset.S (memset): Likewise.
6168         * sysdeps/x86_64/strcat.S (strcat): Likewise.
6169         * sysdeps/x86_64/strchr.S (strchr): Likewise.
6170         * sysdeps/x86_64/strcmp.S (strcmp): Likewise.
6171         * sysdeps/x86_64/strcpy.S (strcpy): Likewise.
6172         * sysdeps/x86_64/strcspn.S (strcspn): Likewise.
6173         * sysdeps/x86_64/strlen.S (strlen): Likewise.
6174         * sysdeps/x86_64/strspn.S (strspn): Likewise.
6175         * string/string-inlines.c: Move...
6176         * sysdeps/generic/string-inlines.c: ...here.
6177         (__memcpy_g, __strchr_g): Remove.
6178         (__NO_INLINE__): Define before including <string.h>,
6179         undefine after.  Include bits/string.h and bits/string2.h.
6180         * sysdeps/i386/i486/string-inlines.c: New file.
6181         * sysdeps/i386/string-inlines.c: New file.
6182         * sysdeps/i386/i486/Versions: Remove.
6183         All GLIBC_2.1.1 symbols moved...
6184         * sysdeps/i386/Versions (libc): ...here.
6186 2003-04-29  Ulrich Drepper  <drepper@redhat.com>
6188         * sysdeps/i386/fpu/Makefile: New file.
6189         * sysdeps/i386/fpu/fedisblxcpt.c: Also set SSE control word.
6190         * sysdeps/i386/fpu/feenablxcpt.c: Likewise.
6191         * sysdeps/i386/fpu/feholdexcpt.c: Likewise.
6192         * sysdeps/i386/fpu/fesetround.c: Also set SSE rounding mode
6193         [PR libc/4987].
6195 2003-04-28  Ulrich Drepper  <drepper@redhat.com>
6197         * nscd/nscd_getgr_r.c: Compact code a bit.  Add some __builtin_expect.
6198         * nscd/nscd_getpw_r.c: Likewise.
6199         * nscd/nscd_gethst_r.c: Likewise.
6201 2003-04-27  Ulrich Drepper  <drepper@redhat.com>
6203         * nscd/pwdcache.c: Initialize .version element in result.
6204         * nscd/grpcache.c: Likewise.
6205         * nscd/pwdcache.c: Likewise.
6207 2003-04-27  Andreas Schwab  <schwab@suse.de>
6209         * Makeconfig ($(common-objpfx)sysd-sorted): Fix for running in
6210         subdirectory.
6212 2003-04-27  Andreas Schwab  <schwab@suse.de>
6214         * sysdeps/unix/sysv/linux/m68k/semtimedop.S: New file.
6216 2003-04-27  Ulrich Drepper  <drepper@redhat.com>
6218         * nscd/connections.c (client_queued): New variable.
6219         (nscd_run): Revamp the loop.  Don't call poll except for cleanup
6220         threads.  Keep track of the number of delays caused because of busy
6221         worker threads.
6222         * nscd/nscd.h: Declare client_queued.
6223         * nscd/nscd_stat.c: Transmit and print client_queued information.
6225         * locale/programs/locale.c (show_info): Use '\177' instead of CHAR_MAX.
6227         * Makerules ($(common-objpfx)shlib.lds): Don't use PROVIDE to
6228         define __start_libc_freeres_ptrs and __stop___libc_freeres_ptrs.
6230 2003-04-26  Ulrich Drepper  <drepper@redhat.com>
6232         * elf/dl-close.c [USE_TLS && TLS_TCB_AT_TP] (_dl_close): Reimplement
6233         tracking of freed memory in static TLS block.
6234         * elf/Makefile: Add rules to build and run tst-tls13.
6235         * elf/tst-tls13.c: New file.
6236         * elf/tst-tlsmod13.c: New file.
6237         * elf/tst-tlsmod13a.c: New file.
6239         * elf/tst-tls8.c: Adjust types of variables to avoid warnings.
6241         * elf/dl-reloc.c: Pretty printing.
6243 2003-04-26  Roland McGrath  <roland@redhat.com>
6245         * Makerules ($(common-objpfx)shlib.lds): New target.
6246         (common-generated): Add it.
6247         (build-shlib, build-module): Use that instead of generating every time.
6248         ($(common-objpfx)libc.so): Depend on it.
6249         (lib%.so rule): Likewise.
6250         (build-module-helper-objlist): Remove %.lds.
6251         (LDSEDCMD-c.so): Variable removed.
6252         * iconvdata/extra-module.mk ($(objpfx)$(mod).so):
6253         Depend on $(common-objpfx)shlib.lds.
6254         * dlfcn/Makefile ($(test-modules)): Likewise.
6256 2003-04-26  Roland McGrath  <roland@frob.com>
6258         * sysdeps/mach/hurd/tmpfile.c: Remove USE_IN_LIBIO conditionals.
6260 2003-04-26  Andreas Schwab  <schwab@suse.de>
6262         * elf/dl-close.c (remove_slotinfo): Fix missing parens.
6264 2003-04-25  Ulrich Drepper  <drepper@redhat.com>
6266         * nscd/cache.c (cache_search): Keep track of how many chain links
6267         we searched and update table statistics.
6268         (cache_add): Keep track of how many values are in the table.
6269         (prune_cache): Likewise.  Keep track of locking success.
6270         Print messages about removed entries in separate pass.
6271         * nscd/connections.c (handle_request): Don't print debug message here.
6272         The caller will do it.  Keep track of locking success.
6273         (nscd_run): Print debug message.  Also print PID of the client process.
6274         * nscd/nscd.c (start_time): New variable.
6275         (main): Remember start time.
6276         * nscd/nscd.h: Declare start_time.
6277         (struct database): Add more members for new statistics.
6278         * nscd/nscd_stat.c: Add support for sending, receiving, and printing
6279         of new statistics.
6281         * sysdeps/posix/getaddrinfo.c: Include <stdbool.h>.
6283 2003-04-22  Jakub Jelinek  <jakub@redhat.com>
6285         * include/link.h (NO_TLS_OFFSET): Define to 0 if not defined.
6286         * elf/dl-close.c (_dl_close): Use NO_TLS_OFFSET.
6287         * elf/dl-object.c (_dl_new_object): Initialize l_tls_offset to
6288         NO_TLS_OFFSET.
6289         * elf/rtld.c (_dl_start_final, _dl_start): Likewise.
6290         * elf/dl-reloc.c (CHECK_STATIC_TLS): Use NO_TLS_OFFSET.
6291         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Likewise.
6292         * sysdeps/powerpc/dl-tls.h (TLS_TPREL_VALUE): Don't subtract
6293         TLS_TCB_SIZE.
6295 2003-04-24  Ulrich Drepper  <drepper@redhat.com>
6297         * nss/getent.c: Implement alternative host database lookup via
6298         getaddrinfo.
6300         * include/ifaddrs.h: New file.
6301         * include/netdb.h: Move definitions of AI_V4MAPPED, AI_ALL, and
6302         AI_ADDRCONFIG...
6303         * resolv/netdb.h: ...here.
6304         * sysdeps/gnu/ifaddrs.c. Use libc_hidden_def where appropriate.
6305         * sysdeps/unix/sysv/linux/ifaddrs.c: Likewise.
6306         * sysdeps/posix/getaddrinfo.c: Implement AI_V4MAPPED, AI_ALL, and
6307         AI_ADDRCONFIG.
6309 2003-04-24  Roland McGrath  <roland@redhat.com>
6311         * elf/dl-reloc.c (_dl_allocate_static_tls): Add internal_function.
6313 2003-04-24  Jakub Jelinek  <jakub@redhat.com>
6315         * elf/dl-reloc.c (allocate_static_tls): Rename to...
6316         (_dl_allocate_static_tls): ... this function.  No longer static.
6317         (CHECK_STATIC_TLS): Adjust.
6318         * sysdeps/generic/ldsodefs.h (_dl_allocate_static_tls): New prototype.
6319         * sysdeps/powerpc/powerpc32/dl-machine.h (__process_machine_rela):
6320         Add SYM_MAP argument.
6321         (elf_machine_rela): Adjust caller.  Declare SYM_MAP unconditionally.
6322         Check if SYM_MAP != NULL for R_PPC_DTPREL32.  Only handle 32-bit
6323         TLS relocs here.  #ifdef out relocs which never appear in
6324         .gnu.conflict section from dl-conflict.c processing.
6325         * sysdeps/powerpc/powerpc32/dl-machine.c (__process_machine_rela):
6326         Add SYM_MAP argument.  Handle 16-bit TLS relocs here.
6328         * sysdeps/s390/s390-32/dl-machine.h (elf_machine_rela): #ifdef
6329         out relocs which never appear in .gnu.conflict section from
6330         dl-conflict.c processing.
6331         * sysdeps/s390/s390-64/dl-machine.h (elf_machine_rela): Likewise.
6332         * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Likewise.
6333         * sysdeps/i386/dl-machine.h (elf_machine_rela): Likewise.
6334         Use r_type in RESOLVE macro.
6336 2003-04-23  Ulrich Drepper  <drepper@redhat.com>
6338         * nis/ypclnt.c (__yp_bind): Expect YPDB parameter to always be !=
6339         NULL.  Remove code made redundant by this assumption.
6340         (__yp_unbind): Add call to free.  Adjust all callers.
6342         * nis/ypclnt.c (yp_all): Free the dom_binding object after
6343         unbinding it.
6345         * grp/initgroups.c (getgrouplist): Don't copy too much into the
6346         user buffer if more groups are found than fit into it.
6348         * nis/nss_nis/nis-initgroups.c (_nss_nis_initgroups_dyn): Use
6349         extend_alloca.
6351 2003-04-23  Jakub Jelinek  <jakub@redhat.com>
6353         * sysdeps/posix/getaddrinfo.c (gaih_inet): Check for rc == ERANGE,
6354         not rc == errno.  Use extend_alloca.
6356         * elf/tst-tls12.c (main): Fix declaration.
6357         * elf/tst-tls10.c (dummy): Make hidden instead of static.
6358         * elf/tst-tlsmod7.c (dummy): Likewise.
6359         * elf/tst-tlsmod8.c (dummy): Likewise.
6360         * elf/tst-tlsmod9.c (dummy): Likewise.
6362 2003-04-22  Roland McGrath  <roland@redhat.com>
6364         * sysdeps/unix/sysv/linux/not-cancel.h: Put parens around macro args.
6365         (open_not_cancel): Make last argument non-optional.
6366         * sysdeps/generic/check_fds.c (check_one_fd): Update caller.
6367         * sysdeps/unix/sysv/linux/gethostid.c (gethostid): Likewise.
6368         * iconv/gconv_cache.c (__gconv_load_cache): Likewise.
6370         * include/tls.h: Protect against multiple inclusion.
6372 2003-04-22  Ulrich Drepper  <drepper@redhat.com>
6374         * nscd/nscd-client.h: Add declaration for __nscd_open_socket.
6375         * nscd/nscd_gethst_r.c (__nscd_open_socket): Renamed from
6376         open_socket.  Not static anymore.
6377         (nscd_gethst_r): Use __nscd_open_socket.
6378         * nscd/nscd_getgr_r.c (open_socket): Removed.
6379         (nscd_getgr_r): Use __nscd_open_socket.
6380         * nscd/nscd_getpw_r.c (open_socket): Removed.
6381         (nscd_getpw_r): Use __nscd_open_socket.
6383         * nscd/nscd.c (main): Change type of fdn to long int and use strtol.
6384         * nscd/connections.c (handle_request): Add cast to avoid warning.
6386 2003-04-21  Ulrich Drepper  <drepper@redhat.com>
6388         * signal/sigfillset.c: Moved to...
6389         * sysdeps/generic/sigfillset.c: ...here.  If SIGCANCEL is defined
6390         do not set the corresponding bit.
6392         * sysdeps/unix/sysv/linux/sigprocmask.c: Prevent changing mask for
6393         SIGCANCEL.
6394         * sysdeps/unix/sysv/linux/alpha/bits/siginfo.h: Define SI_TKILL.
6395         * sysdeps/unix/sysv/linux/bits/siginfo.h: Define SI_TKILL.
6396         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Define SI_TKILL.
6397         * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Define SI_TKILL.
6398         * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Define SI_TKILL.
6400 2003-04-20  Ulrich Drepper  <drepper@redhat.com>
6402         * sysdeps/unix/sysv/linux/not-cancel.h (open_not_cancel): Cast
6403         first syscall parameter to const char*.
6405 2003-04-19  Ulrich Drepper  <drepper@redhat.com>
6407         * intl/Makefile ($(objpfx)msgs.h): Use C locale for sed run.
6409         * configure.in: Add AC_PROG_CXX.
6410         * config.make.in (CXX): Define.
6412         * sysdeps/i386/i686/hp-timing.h (HP_TIMING_PRINT): Change type of
6413         __len to size_t to avoid warnings.
6415 2003-04-18  Jes Sorensen  <jes@wildopensource.com>
6417         * libc/sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Sync with Linux
6418         2.5.67.
6419         * libc/sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Likewise.
6421 2003-04-19  Ulrich Drepper  <drepper@redhat.com>
6423         * stdlib/cxa_finalize.c (__cxa_finalize): Don't call
6424         UNREGISTER_ATFORK if d == NULL.
6426         * catgets/nl_types.h: Remove __THROW marker from cancellation points.
6427         * dirent/dirent.h: Likewise.
6428         * dlfcn/dlfcn.h: Likewise.
6429         * grp/grp.h: Likewise.
6430         * iconv/iconv.h: Likewise.
6431         * io/fcntl.h: Likewise.
6432         * io/ftw.h: Likewise.
6433         * libio/stdio.h: Likewise.
6434         * misc/sys/mman.h: Likewise.
6435         * misc/sys/select.h: Likewise.
6436         * misc/sys/syslog.h: Likewise.
6437         * misc/sys/uio.h: Likewise.
6438         * posix/spawn.h: Likewise.
6439         * posix/unistd.h: Likewise.
6440         * posix/sys/wait.h: Likewise.
6441         * pwd/pwd.h: Likewise.
6442         * resolv/netdb.h: Likewise.
6443         * rt/aio.h: Likewise.
6444         * shadow/shadow.h: Likewise.
6445         * signal/signal.h: Likewise.
6446         * socket/sys/socket.h: Likewise.
6447         * stdlib/stdlib.h: Likewise.
6448         * streams/stropts.h: Likewise.
6449         * string/string.h: Likewise.
6450         * sysdeps/gnu/utmpx.h: Likewise.
6451         * sysvipc/sys/msg.h: Likewise.
6452         * termios/termios.h: Likewise.
6453         * time/time.h: Likewise.
6454         * wcsmbs/wchar.h: Likewise.
6455         * iconv/gconv_cache.c: Include <not-cancel.h> and use non-cancelable
6456         functions.
6457         * misc/daemon.c: Likewise.
6458         * sysdeps/generic/backtracesymsfd.c: Likewise.
6459         * sysdeps/generic/check_fds.c: Likewise.
6460         * sysdeps/unix/sysv/linux/gethostid.c: Likewise.
6461         * sysdeps/unix/sysv/linux/not-cancel.h: New file.
6462         * sysdeps/generic/not-cancel.h: New file.
6463         * csu/Makefile (distribute): Add not-cancel.h.
6464         * sysdeps/unix/sysv/linux/fatal-prepare.h: New file.
6465         * sysdeps/unix/sysv/linux/Makefile: Define FATAL_PREPARE_INCLUDE
6466         for assert.c and assert-perr.c to include <fatal-prepare.h>.
6467         * sysdeps/unix/sysv/linux/Dist: Add fatal-prepare.h.
6469         * sysdeps/posix/remove.c (remove): Rewrite.  No need to restore
6470         errno and unlink first.
6472         * io/ftw.c (ftw_dir): In all places assume fchdir is available.
6474 2003-04-18  Ulrich Drepper  <drepper@redhat.com>
6476         * sysdeps/unix/sysv/linux/libc_fatal.c (__libc_fatal): Use
6477         INTERNAL_SYSCALL instead of INLINE_SYSCALL.
6479 2003-04-17  Ulrich Drepper  <drepper@redhat.com>
6481         * sysdeps/unix/sysv/linux/Makefile: Remove db2 directory handling.
6483         * malloc/Makefile (CFLAGS-malloc.c): Define DEFAULT_TOP_PAD to 128k.
6484         * sysdeps/unix/sysv/linux/Makefile (CFLAGS-malloc.c): Add to, not
6485         replace.
6487         * signal/Makefile (tests): Add tst-sigsimple.
6488         * signal/tst-sigsimple.c: New file.
6490 2003-04-16  Jakub Jelinek  <jakub@redhat.com>
6492         * elf/Makefile (distribute): Add tst-tlsmod{[7-9],1[0-2]}.c and
6493         tst-tls10.h.
6494         (tests): Add tst-tls1[0-2].
6495         (modules-names): Add tst-tlsmod{[7-8],1[0-2]}.
6496         ($(objpfx)tst-tlsmod8.so): Depend on tst-tlsmod7.so.
6497         ($(objpfx)tst-tlsmod10.so): Depend on tst-tlsmod9.so.
6498         ($(objpfx)tst-tlsmod12.so): Depend on tst-tlsmod11.so.
6499         ($(objpfx)tst-tls10): Depend on tst-tlsmod8.so.
6500         ($(objpfx)tst-tls11): Depend on tst-tlsmod10.so.
6501         ($(objpfx)tst-tls12): Depend on tst-tlsmod12.so.
6502         * elf/tst-tls10.c: New test.
6503         * elf/tst-tls11.c: New test.
6504         * elf/tst-tls12.c: New test.
6505         * elf/tst-tls10.h: New file.
6506         * elf/tst-tlsmod7.c: New file.
6507         * elf/tst-tlsmod8.c: New file.
6508         * elf/tst-tlsmod9.c: New file.
6509         * elf/tst-tlsmod10.c: New file.
6510         * elf/tst-tlsmod11.c: New file.
6511         * elf/tst-tlsmod12.c: New file.
6513 2003-04-15  Steven Munroe  <sjmunroe@us.ibm.com>
6515         * sysdeps/powerpc/bits/atomic.h: Moved ppc32/64 specific code to ...
6516         * sysdeps/powerpc/powerpc32/bits/atomic.h: New file.
6517         * sysdeps/powerpc/powerpc64/bits/atomic.h: New file.
6519 2003-04-17  Ulrich Drepper  <drepper@redhat.com>
6521         * posix/regex.h: Include <sys/types.h>.
6523         * signal/sigrelse.c (sigrelse): Use sigdelset and not __sigdelset.
6524         The signal number must be checked.
6525         * signal/sighold.c (sighold): Use sigaddset and not __sigaddset.
6526         The signal number must be checked [PR libc/5004].
6528         * sysdeps/unix/sysv/linux/system.c: If compiled without threads
6529         don't do anything fancy.
6531         * sysdeps/generic/bits/libc-lock.h: Define
6532         __rtld_lock_define_initialized_recursive.
6534         * nss/getXXbyYY_r.c [USE_NSCD] (REENTRANT_NAME): Only retry
6535         contacting nscd if NOT_USENSCD_NAME > 0.
6536         * nss/nsswitch.c (__nss_disable_nscd): New function.
6537         * nss/nsswitch.h: Declare it.
6538         * nss/Versions [GLIBC_PRIVATE]: Export __nss_disable_nscd.
6539         * nscd/nscd.c (main): Call __nss_disable_nscd.
6541 2003-04-16  Ulrich Drepper  <drepper@redhat.com>
6543         * stdio-common/perror.c (perror): We don't need to set the offset
6544         to _IO_pos_bad, this is how streams are initialized.
6546         * locale/programs/ld-time.c (TESTARR_ELEM): Make i unsigned.
6547         (time_output): If necessary, allocate new buffer for .name string if
6548         padding is required.
6550         * sysdeps/unix/sysv/linux/ifaddrs.c (getifaddrs): Check lengths
6551         before copying.  This might leave holes in the list.  Adjust
6552         pointers if necessary.
6553         (netlink_receive): Allocate only one block.
6554         (free_netlink_handle): Adjust appropriately.
6555         (getifaddrs): Lots of cleanups.
6557         * string/test-strncpy.c (do_one_test): Mark start and stop as
6558         possibly unused.
6559         * string/test-memchr.c: Likewise.
6560         * string/test-memcmp.c: Likewise.
6561         * string/test-memcpy.c: Likewise.
6562         * string/test-memmove.c: Likewise.
6563         * string/test-memset.c: Likewise.
6564         * string/test-strcat.c: Likewise.
6565         * string/test-strchr.c: Likewise.
6566         * string/test-strcmp.c: Likewise.
6567         * string/test-strcpy.c: Likewise.
6568         * string/test-strlen.c: Likewise.
6569         * string/test-strncmp.c: Likewise.
6570         * string/test-strpbrk.c: Likewise.
6571         * string/test-strrchr.c: Likewise.
6572         * string/test-strspn.c: Likewise.
6574 2003-04-15  Roland McGrath  <roland@redhat.com>
6576         * libio/fileops.c (_IO_file_close_it): Macro tweak to avoid warning.
6578         * sysdeps/generic/libc-start.c [NEED_DL_SYSINFO]: Add decl for
6579         INTUSE(__register_frame_info_bases).
6581 2003-04-15  Ulrich Drepper  <drepper@redhat.com>
6583         * elf/elf.h: Define AT_SYSINFO_EH_FRAME.
6584         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Handle
6585         AT_SYSINFO_EH_FRAME.  Adjust string width.
6586         (_dl_show_auxv):Display AT_SYSINFO_EH_FRAME value.
6587         * sysdeps/generic/ldsodefs.h [NEED_DL_SYSINFO] (struct rtld_global):
6588         Add _dl_sysinfo_eh_frame field.
6589         * elf/dl-support.c [NEED_DL_SYSINFO]: Define _dl_sysinfo_eh_frame.
6590         * sysdeps/generic/libc-start.c [NEED_DL_SYSINFO] Define eh_obj
6591         variable.
6592         [NEED_DL_SYSINFO] (LIBC_START_MAIN): Call __register_frame_info_bases
6593         if _dl_sysinfo_eh_frame is non-NULL.
6595         * Makeconfig (gnulib): Add -lgcc_eh.
6597         * config.h.in: Define HAVE_FORCED_UNWIND.
6599 2003-04-15  Steven Munroe  <sjmunroe@us.ibm.com>
6601         * sysdeps/powerpc/powerpc64/strcmp.S: Convert to full 64-bit.
6602         * sysdeps/powerpc/powerpc64/strcpy.S: Likewise.
6604 2003-04-15  Jakub Jelinek  <jakub@redhat.com>
6606         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Avoid
6607         checking R_PPC_RELATIVE, R_PPC_NONE and whether relocation is
6608         against local symbol in conflict processing.
6610 2003-04-15  Steven Munroe  <sjmunroe@us.ibm.com>
6612         * sysdeps/powerpc/bits/atomic.h
6613         [__powerpc64] (__arch_compare_and_exchange_val_64_acq): Define.
6614         [! __powerpc64] (__arch_compare_and_exchange_val_64_acq): Defined
6615         as abort stub.
6616         (__arch_compare_and_exchange_val_32_acq): Define.
6617         (atomic_compare_and_exchange_val_acq): Define.
6619 2003-04-15  Ulrich Drepper  <drepper@redhat.com>
6621         * include/atomic.h: Pretty printing.
6623 2003-04-14  Ulrich Drepper  <drepper@redhat.com>
6625         * stdio-common/vfscanf.c: Add casts to avoid warnings.
6627 2003-04-14  Jakub Jelinek  <jakub@redhat.com>
6629         * sysdeps/i386/i486/bits/atomic.h: Rename LOCK to LOCK_PREFIX.
6630         * sysdeps/x86_64/bits/atomic.h: Likewise.
6632 2003-04-14  Ulrich Drepper  <drepper@redhat.com>
6634         * sysdeps/unix/sysv/linux/i386/sysdep.h: Change PUSHARGS_1 and
6635         POPARGS_1 to emit labels for the mov instructions.
6637 2003-04-14  Jakub Jelinek  <jakub@redhat.com>
6639         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h (ret_NOERRNO): Define.
6641 2003-04-14  Roland McGrath  <roland@redhat.com>
6643         * sysdeps/generic/unwind-dw2.c (_Unwind_GetCFA): Add a cast to silence
6644         compiler warning.
6646         * sysdeps/generic/unwind-pe.h: Fix decl hacks broken in merge.
6648 2003-04-14  Ulrich Drepper  <drepper@redhat.com>
6650         * string/strxfrm.c (STRXFRM): Terminate rulearr at correct
6651         position.  Reported by jreiser@BitWagon.com.
6653 2003-04-13  Ulrich Drepper  <drepper@redhat.com>
6655         * sysdeps/generic/unwind-dw2-fde.c: Update from recent gcc version.
6656         * sysdeps/generic/unwind-dw2-fde.h: Likewise.
6657         * sysdeps/generic/unwind-dw2.c: Likewise.
6658         * sysdeps/generic/unwind-pe.h: Likewise.
6660 2003-04-13  Alexandre Oliva  <aoliva@redhat.com>
6662         * sysdeps/unix/sysv/linux/mips/profil-counter: New.
6663         * sysdeps/unix/sysv/linux/mips/sigcontextinfo.h: Port to n32/n64.
6664         * sysdeps/unix/sysv/linux/mips/bits/sigcontext.h: New.
6665         * sysdeps/unix/sysv/linux/mips/sys/ucontext.h: Port to n32/n64.
6666         (mcontext_t): Make it match the 32-bit mips kernel in o32.
6667         * sysdeps/unix/sysv/linux/mips/sys/user.h: Bring in constants from
6668         the mips and mips64 headers.
6669         (struct user): Port to n32/n64.
6671 2003-04-12  Ulrich Drepper  <drepper@redhat.com>
6673         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Add cast to
6674         avoid warning.
6676         * sysdeps/unix/sysv/linux/i386/sigaction.c (__libc_sigaction): If
6677         __ASSUME_VSYSCALL is defined don't add restorer.
6678         * sysdeps/unix/sysv/linux/kernel-features.h: Define
6679         __ASSUME_VSYSCALL for 2.5.53.
6681 2003-04-11  Ulrich Drepper  <drepper@redhat.com>
6683         * sysdeps/generic/libc-start.c: Cleanup MAIN_AUXVEC_ARG handling.
6684         Remove HAVE_CANCELBUF code.  Replace with code using the new
6685         initializers for unwind-based cleanup handling.
6686         * sysdeps/generic/unwind.h: Update from latest gcc version.
6687         * sysdeps/unix/sysv/linux/i386/sysdep.h: Define labels in a few
6688         places to allow unwind data generation.
6689         * sysdeps/i386/bits/setjmp.h: Allow file to be included multiple times.
6690         * sysdeps/x86_64/bits/setjmp.h: Likewise.
6691         * sysdeps/sh/bits/setjmp.h: Likewise.
6692         * sysdeps/powerpc/bits/setjmp.h: Likewise.
6693         * sysdeps/unix/sysv/linux/ia64/bits/setjmp.h: Likewise.
6694         * sysdeps/alpha/bits/setjmp.h: Likewise.
6696 2003-04-11  Roland McGrath  <roland@redhat.com>
6698         * csu/tst-empty.c: New file.
6699         * csu/Makefile (tests, tests-static): Add it.
6701 2003-04-11  Jakub Jelinek  <jakub@redhat.com>
6703         * string/test-strcmp.c (do_random_tests): Test whether return value
6704         has been promoted to wordsize if the ABI requires caller to do so.
6705         * string/test-strncmp.c (do_random_tests): Likewise.
6706         * string/test-memcmp.c (do_random_tests): Likewise.
6708         * sysdeps/powerpc/powerpc64/strcmp.S (strcmp): Sign extend rRTN
6709         before returning.
6711         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c
6712         (__fe_nomask_env): Try prctl even if __ASSUME_NEW_PRCTL_SYSCALL
6713         is not defined, but the prctl constants are.
6715         * string/tester.c (test_strcmp): Fix a typo.
6717 2003-04-09  Ulrich Drepper  <drepper@redhat.com>
6719         * sysdeps/alpha/fpu/bits/mathdef.h: Remove FLT_EVAL_METHOD definition.
6720         * sysdeps/powerpc/fpu/bits/mathdef.h: Likewise.
6722 2003-04-08  Alexandre Oliva  <aoliva@redhat.com>
6724         * sysdeps/mips/sys/regdef.h (t4,t5,t6,t7): Renamed to t0..t3 on
6725         NewABI.
6726         (ta0, ta1, ta2, ta3): Defined to t4..t7 on o32, and a4..a7 on
6727         NewABI.
6728         * sysdeps/mips/mips64/memcpy.S: Adjust register naming
6729         conventions.
6730         * sysdeps/mips/mips64/memset.S: Likewise.
6731         * sysdeps/unix/mips/sysdep.S (__syscall_error) [_LIBC_REENTRANT]:
6732         Use t0 instead of t4 as temporary.
6734 2003-04-07  Ulrich Drepper  <drepper@redhat.com>
6736         * elf/ldconfig.c (parse_conf): Ignore leading whitespace.  Use
6737         feof_unlocked instead of feof.
6738         (add_dir): Ignore trailing whitespace.
6740 2003-04-07  Jakub Jelinek  <jakub@redhat.com>
6742         * posix/bug-regex4.c (main): Cap RANGE and STOP arguments to
6743         sum of SIZE1 and SIZE2 arguments.
6745 2003-04-06  Ulrich Drepper  <drepper@redhat.com>
6747         * iconv/iconv_prog.c (process_block): Don't print message about
6748         invalid input if the -c option is used.
6749         (main): Correctly append IGNORE string for -c option.
6751 2003-04-06  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
6753         * sysdeps/sh/bits/atomic.h: Moved to ...
6754         * sysdeps/unix/sysv/linux/sh/bits/atomic.h: ... here.  Add comments.
6755         (__arch_compare_and_exchange_val_*_acq): Add parens around macro
6756         arguments.
6757         (atomic_bit_set, atomic_bit_test_set): Likewise.
6758         (atomic_exchange_and_add): Likewise.  Don't evaluate VALUE argument
6759         twice.
6760         (atomic_add, atomic_add_negative, atomic_add_zero): Likewise.
6762 2003-04-06  Roland McGrath  <roland@redhat.com>
6764         * sysdeps/unix/sysv/linux/i386/swapcontext.S: Rewrite register
6765         restoration as done for setcontext yesterday.
6767 2003-04-06  Jakub Jelinek  <jakub@redhat.com>
6769         * elf/rtld.c: Revert 2003-03-14 change.
6770         * elf/dl-conflict.c (_dl_resolve_conflicts): Move
6771         #if ! ELF_MACHINE_NO_RELA conditional into the routine.
6773 2003-04-05  Ulrich Drepper  <drepper@redhat.com>
6775         * sunrpc/xdr.c (xdr_string): Catch nodesize == 0 [PR libc/4999].
6777         * sysdeps/ieee754/ldbl-96/e_gammal_r.c (__ieee754_gammal_r):
6778         Always initialize *signgamp before returning an error.
6780 2003-04-05  Roland McGrath  <roland@redhat.com>
6782         * sysdeps/unix/sysv/linux/i386/setcontext.S: Rewrite to avoid writing
6783         below the stack pointer even if switching to the same context we are
6784         running right now.
6786 2003-04-05  Ulrich Drepper  <drepper@redhat.com>
6788         * catgets/gencat.c (read_input_file): Make sure that \n is not
6789         alone on the line before testing for continuation.
6791         * math/test-tgmath.c (compile_test): Initialize c.
6793 2003-04-05  Alexandre Oliva  <aoliva@redhat.com>
6795         * sysdeps/unix/sysv/linux/mips/mips64/n32/ftruncate64.c: New.
6796         * sysdeps/unix/sysv/linux/mips/mips64/n32/truncate64.c: New.
6797         * sysdeps/unix/sysv/linux/kernel-features.h: fcntl64 is available
6798         on mips n32.
6799         * sysdeps/unix/sysv/linux/mips/kernel_stat.h: Explain why
6800         XSTAT_IS_XSTAT64 must not be used for mips n64.  Use 64-bit data
6801         structure on n32 as well.
6802         * sysdeps/unix/sysv/linux/mips/bits/stat.h: Use POSIX-compliant
6803         data types on n32 and n64.
6805 2003-04-05  Ulrich Drepper  <drepper@redhat.com>
6807         * libio/fileops.c (_IO_new_file_fopen): Don't free step data right
6808         after getting them.
6810         * malloc/thread-m.h [PTHREAD_MUTEX_INITIALIZER]: If
6811         HAVE_register_atfork_malloc is defined use __register_atfork_malloc
6812         instead of __register_atfork.
6814 2003-04-05  Jakub Jelinek  <jakub@redhat.com>
6816         * stdio-common/reg-printf.c (__register_printf_function): Calloc
6817         instead of malloc __printf_arginfo_table and __printf_function_table.
6818         Reported by John Reiser <jreiser@BitWagon.com>.
6820 2003-04-04  Steven Munroe  <sjmunroe@us.ibm.com>
6822         * sysdeps/powerpc/powerpc64/strchr.S: 64-bit optimizations.
6823         * sysdeps/powerpc/powerpc64/strlen.S: 64-bit optimizations.
6825         * sysdeps/powerpc/fpu/bits/mathdef.h (FLT_EVAL_METHOD): Undef before
6826         defining.
6828 2003-04-04  Alexandre Oliva  <aoliva@redhat.com>
6830         * sysdeps/unix/sysv/linux/mips/bits/fcntl.h (struct flock): Adjust
6831         for n64 abi.
6833 2003-04-03  Roland McGrath  <roland@redhat.com>
6835         * configure.in: Fix up use of compilation flags to match the build:
6836         For .s files, $ASFLAGS;
6837         For .S files, $CPPFLAGS $ASFLAGS;
6838         For .c files, $CFLAGS $CPPFLAGS;
6839         when linking, add $LDFLAGS.
6840         * configure: Regenerated.
6842 2003-04-03  Jakub Jelinek  <jakub@redhat.com>
6844         * sysdeps/unix/sysv/linux/getsysstats.c (get_proc_path): Reverse test
6845         for atomic_compare_and_exchange_bool_acq failure.
6847 2003-04-03  Ulrich Drepper  <drepper@redhat.com>
6849         * posix/unistd.h: Define _POSIX_VERSION, _POSIX2_VERSION,
6850         _POSIX2_C_BIND, _POSIX2_C_DEV, _POSIX2_SW_DEV, and
6851         _POSXI2_LOCALEDEF to 200112L.  Remove _POSIX2_C_VERSION.
6852         Remove declaration of pthread_atfork.
6854 2003-04-02  Ulrich Drepper  <drepper@redhat.com>
6856         * locale/iso-639.def: Add many more languages from the current ISO 639.
6858         * sysdeps/unix/sysv/linux/ipc_priv.h: Define IPCOP_semtimedop.
6859         * sysdeps/generic/semtimedop.c: New file.
6860         * sysdeps/unix/sysv/linux/i386/semtimedop.S: New file.
6861         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Add semtimedop.
6862         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
6863         * sysvipc/Makefile (routines): Add semtimedop.
6864         * sysvipc/Versions [GLIBC_2.3.3] (glibc): Add semtimedop.
6865         * sysvipc/sys/sem.h: Declare semtimedop.
6867 2003-04-02  Daniel Jacobowitz  <drow@mvista.com>
6869         * configure.in: Check for __register_frame_info in both
6870         -lgcc and -lgcc_eh.
6871         * configure: Regenerated.
6873 2003-04-01  Roland McGrath  <roland@redhat.com>
6875         * scripts/abilist.awk: Allow dots in soname suffix.
6877         * scripts/abilist.awk (emit): Fix bailout condition.
6879 2003-04-01  Jakub Jelinek  <jakub@redhat.com>
6881         * sysdeps/unix/sysv/linux/sparc/sparc64/sigsuspend.c: Use the
6882         IA-64 version.
6884         * elf/tls-macros.h [__ia64__] (TLS_IE, TLS_LD, TLS_GD): Add gp
6885         register as input to asm.
6887 2003-04-01  Jakub Jelinek  <jakub@redhat.com>
6889         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h (sigevent_t): Fix a typo.
6891 2003-04-01  Andreas Jaeger  <aj@suse.de>
6893         * configure.in: Output as/ld as name if version is too old.
6895 2003-03-31  Daniel Jacobowitz  <drow@mvista.com>
6897         * configure.in: Don't require an installed C library in the test
6898         for ".set" assembler support.
6900 2003-03-31  Roland McGrath  <roland@redhat.com>
6902         * signal/tst-sigset.c: New file.
6903         * signal/Makefile (tests): Add it.
6905 2003-03-31  Ulrich Drepper  <drepper@redhat.com>
6907         * sysdeps/unix/sysv/linux/alpha/bits/signum.h (_NSIG): Define to 65.
6908         * sysdeps/unix/sysv/linux/hppa/bits/signum.h (_NSIG): Likewise.
6909         * sysdeps/unix/sysv/linux/sparc/bits/signum.h (_NSIG): Likewise.
6910         * sysdeps/unix/sysv/linux/bits/signum.h (_NSIG): Likewise.
6911         (__SIGRTMAX): Adjust accordingly.
6912         * sysdeps/gnu/siglist.c: If OLD2_SIGLIST_SIZE is defined define
6913         second compatibility symbol set.
6914         * sysdeps/unix/sysv/linux/siglist.h (OLD2_SIGLIST_SIZE): Define.
6916 2003-03-31  Andreas Schwab  <schwab@suse.de>
6918         * sysdeps/m68k/m68020/bits/atomic.h (atomic_increment_and_test):
6919         Define.
6920         (atomic_decrement_and_test): Fix test.
6922 2003-03-31  Jakub Jelinek  <jakub@redhat.com>
6924         * sysdeps/sparc/sparc32/bits/atomic.h: New file.
6925         * sysdeps/sparc/sparc32/sparcv9/bits/atomic.h: New file.
6926         * sysdeps/sparc/sparc64/bits/atomic.h: New file.
6927         * sysdeps/sparc/sparc32/atomicity.h: Removed.
6928         * sysdeps/sparc/sparc32/sparcv9/atomicity.h: Removed.
6929         * sysdeps/sparc/sparc64/atomicity.h: Removed.
6931 2003-03-30  Roland McGrath  <roland@redhat.com>
6933         * scripts/abilist.awk: Grok .opd foo plus .text .foo as "foo F" alone.
6935         * intl/po2test.sed: Anchor substitution regexps to fix last change.
6937 2003-03-29  Paolo Bonzini  <bonzini@gnu.org>
6939         * intl/po2test.sed: Unify the transformations for msgid and msgstr
6940         and remove a useless s/// command.
6942 2003-03-27  David Mosberger  <davidm@hpl.hp.com>
6944         * sysdeps/ia64/dl-machine.h (RTLD_START): Wrap ".save rp, r0"
6945         directive into empty .prologue region to ensure that call-chain
6946         is terminated even for the first instruction.
6948         * sysdeps/ia64/elf/start.S (_start): Use ".save rp, r0" idiom
6949         to terminate call-chain right from the get-go.
6951         * sysdeps/unix/sysv/linux/ia64/fork.S (fork): Remove unnecessary
6952         stop bit between compare & branch.
6954 2003-03-29  Ulrich Drepper  <drepper@redhat.com>
6956         * stdlib/strtod.c (INTERNAL): Recognize first digit after decimal
6957         point correctly [PR libc/4993].
6959         * sysdeps/unix/sysv/linux/ifaddrs.c (getifaddrs): Avoid
6960         netlink_open calls if netlink is known to not be available.
6962 2003-03-29  Alexandre Oliva  <aoliva@redhat.com>
6964         * configure.in: Add mips64* support.
6965         * sysdeps/mips/bits/endian.h: Make it bi-endian.
6966         * sysdeps/mips/mipsel/bits/endian.h: Removed.
6967         * sysdeps/mips/mips64/n32/el/bits/endian.h: Removed.
6968         * sysdeps/mips/mips64/n64/el/bits/endian.h: Removed.
6969         * sysdeps/mips/mips32/Makefile (CC): Add -mabi=32.
6970         * sysdeps/mips/mips64/n32/Makefile (CC): Add -mabi=n32.
6971         * sysdeps/mips/mips64/n64/Makefile (CC): Add -mabi=64.
6972         * sysdeps/mips/Implies: Moved wordsize-32 to...
6973         * sysdeps/mips/mips32/Implies: New file.
6974         * sysdeps/unix/mips/sysdep.h (PSEUDO_NOERRNO, PSEUDO_END_NOERRNO,
6975         ret_NOERRNO): New.
6976         (ret, PSEUDO_END): Moved past END.
6977         (PSEUDO): Moved to...
6978         * sysdeps/unix/mips/mips32/sysdep.h: New file.
6979         * sysdeps/unix/mips/mips64/n32/sysdep.h: Removed #undef PSEUDO.
6980         * sysdeps/unix/mips/mips64/n64/sysdep.h: Likewise.
6981         * sysdeps/unix/sysv/linux/mips/sysdep.h: Move to...
6982         * sysdeps/unix/sysv/linux/mips/mips32/sysdep.h: New file.
6983         * sysdeps/unix/sysv/linux/mips/mips32/kern64/sysdep.h: New file.
6985         * sysdeps/unix/sysv/linux/mips/clone.S (__thread_start):
6986         Re-introduce ENTRY.
6988 2003-03-28  Thorsten Kukuk  <kukuk@suse.de>
6990         * sysdeps/unix/sysv/linux/ifaddrs.c: New file.
6991         * inet/test-ifaddrs.c: Allow AF_PACKET.
6992         * sysdeps/unix/sysv/linux/kernel-features.h: Add
6993         __ASSUME_NETLINK_SUPPORT.
6995 2003-03-28  Ulrich Drepper  <drepper@redhat.com>
6997         * elf/vismain.c (do_test): Comment out tests which fail in the moment.
6999 2003-03-26  H.J. Lu  <hjl@gnu.org>
7001         * elf/vismod.h (getvarlocal1): Return const char **.
7002         (getvarinmod1): Likewise.
7003         (getvaritcpt1): Likewise.
7004         (getvarlocal2): Likewise.
7005         (getvarinmod2): Likewise.
7006         (getvaritcpt2): Likewise.
7007         (getvaritcpt3): Likewise.
7008         * elf/vismain.c (do_test): Adjusted.
7009         * elf/vismod1.c (getvarlocal1): Return address.
7010         (getvarinmod1): Likewise.
7011         (getvaritcpt1): Likewise.
7012         * elf/vismod2.c (getvarlocal2): Likewise.
7013         (getvarinmod2): Likewise.
7014         (getvaritcpt2): Likewise.
7015         * elf/vismod3.c (getvaritcpt3): Likewise.
7017 2003-03-28  Roland McGrath  <roland@redhat.com>
7019         * elf/vismain.c (do_test): Print both addresses when they don't match.
7021         * scripts/abilist.awk: If given -v filename_regexp and/or -v
7022         libname_regexp when parsing names, then produce output only
7023         for those matching the given regexps.  In combine mode, save all
7024         stanzas for a final sorting by stanza header at the end.
7025         Emit a blank line between stanzas.
7027         * scripts/abilist.awk: When given -v combine=1, do parse_names and
7028         emit a single output stream with lib name in stanza header lines.
7030         * scripts/abilist.awk: Emit A for all *ABS* regardless of type.
7032 2003-03-27  Roland McGrath  <roland@redhat.com>
7034         * sysdeps/powerpc/bits/atomic.h [! __powerpc64__]
7035         (__arch_atomic_decrement_if_positive_64): Fix bogus definition.
7037 2003-03-28  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
7039         * sysdeps/sh/bits/atomic.h (__arch_compare_and_exchange_val_8_acq):
7040         Return old value. Make asm output reg constraint earlyclobber.
7041         Renamed from...
7042         (__arch_compare_and_exchange_8_acq): ... this.
7043         (__arch_compare_and_exchange_val_16_acq):
7044         Return old value. Make asm output reg constraint earlyclobber.
7045         Renamed from...
7046         (__arch_compare_and_exchange_16_acq): ... this.
7047         (__arch_compare_and_exchange_val_32_acq):
7048         Return old value. Make asm output reg constraint earlyclobber.
7049         Renamed from...
7050         (__arch_compare_and_exchange_32_acq): ... this.
7051         (__arch_compare_and_exchange_val_64_acq):
7052         Renamed from...
7053         (__arch_compare_and_exchange_64_acq): ... this.
7054         (atomic_exchange_and_add): Use local variables and
7055         __arch_compare_and_exchange_val_64_acq.
7056         (atomic_add): Likewise.
7057         (atomic_add_negative, atomic_add_zero): Use local variables.
7059 2003-03-28  Alexandre Oliva  <aoliva@redhat.com>
7061         * sysdeps/unix/mips/sysdep.S: Include sys/asm.h.
7063 2003-03-27  Ulrich Drepper  <drepper@redhat.com>
7065         * Makefile: Remove libmd5crypt goal.
7067 2003-03-25  Jakub Jelinek  <jakub@redhat.com>
7069         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Restore
7070         special handling of relocations against local symbols.
7072 2003-03-27  Steven Munroe  <sjmunroe@us.ibm.com>
7074         * sysdeps/powerpc/bits/atomic.h
7075         (__arch_compare_and_exchange_bool_32_acq): Move to [!__powerpc64__].
7076         [__powerpc64__] (__arch_compare_and_exchange_bool_32_acq):
7077         Define PPC64 specific version.
7078         [__powerpc64__] (__arch_compare_and_exchange_bool_64_acq):
7079         Change (mem) constraint to "b".
7080         [__powerpc64__] (__arch_atomic_exchange_and add_64):
7081         Replace addi with add. Change (value) contraint to "r".
7082         Change (mem) constraint to "b".
7083         [__powerpc64__] (__arch_atomic_decrement_if_positive_64): New macro.
7084         (__arch_atomic_exchange_32): Change (mem) constraint to "b".
7085         (__arch_atomic_exchange_and_add_32): Change (mem) constraint to "b".
7086         (__arch_atomic_decrement_if_positive_32): New macro.
7087         (atomic_decrement_if_positive): Use __arch* macros.
7089 2003-03-27  Jakub Jelinek  <jakub@redhat.com>
7091         * sysdeps/ia64/fpu/libm-test-ulps: Update.
7093 2003-03-27  Roland McGrath  <roland@redhat.com>
7095         * scripts/rpm2dynsym.sh: New file.
7096         * Makefile (distribute): Add it.
7098 2003-03-27  David Mosberger  <davidm@hpl.hp.com>
7100         * sysdeps/unix/sysv/linux/ia64/getcontext.S: Restore caller's
7101         ar.unat before returning.  Add missing .mem.offset directives
7102         to ensure file gets assembled without warnings.
7103         * sysdeps/unix/sysv/linux/ia64/setjmp.S: Likewise.
7105 2003-03-27  Jakub Jelinek  <jakub@redhat.com>
7107         * sysdeps/unix/sysv/linux/sysconf.c (__sysconf) <_SC_MONOTONIC_CLOCK>:
7108         Return -1 instead of 0 if clock_getres failed.
7110 2003-03-27  Roland McGrath  <roland@redhat.com>
7112         * scripts/abilist.awk: If variable `parse_names' is set, grok the file
7113         header lines and write out foo.symlist files for each foo.so.NN listed.
7115         * libio/libioP.h (_IO_wfile_jumps): Remove attribute_hidden.
7116         This symbol is exported, and we don't want to hide it.
7117         Add libc_hidden_proto instead.
7118         (_IO_file_jumps): Add libc_hidden_proto.
7119         * libio/wfileops.c (_IO_wfile_jumps): Add libc_hidden_data_def.
7120         Remove INTVARDEF.
7121         * libio/fileops.c (_IO_file_jumps): Likewise.
7122         * libio/stdfiles.c: Don't use INTUSE on them.
7123         * libio/iofdopen.c (_IO_new_fdopen): Likewise.
7124         * libio/iofopen.c (__fopen_internal): Likewise.
7125         * libio/freopen.c (freopen): Likewise.
7126         * libio/freopen64.c (freopen64): Likewise.
7127         * libio/iovdprintf.c (_IO_vdprintf): Likewise.
7129         * Makerules (check-abi) [$(enable-check-abi) = warn]:
7130         Ignore exit status from diff.
7131         * configure.in (enable_check_abi): Document possible value "warn".
7132         Change default to no for now.
7133         * configure: Regenerated.
7135         * sysdeps/unix/Makefile ($(objpfx)stub-syscalls.c): Emit stub_warning
7136         macro calls and a #include <stub-tag.h> at the end.
7137         * Makerules ($(objpfx)stubs): Tweak sed commands.
7139         * sysdeps/unix/sysv/linux/syscalls.list: Use - rather than EXTRA in
7140         caller column for *xattr syscalls, since they are in sysdeps/generic.
7142         * sysdeps/unix/sysv/linux/i386/setfsuid.c: setfsgid -> setfsuid
7143         * sysdeps/unix/sysv/linux/i386/setfsgid.c: setfsuid -> setfsgid
7145 2003-03-26  Roland McGrath  <roland@redhat.com>
7147         * Makerules (check-abi-config): Use /thread instead of /tls when
7148         use-thread and not just use-tls is set.
7150         * Makerules (update-abi): Put quotes around $(update-abi-config).
7152         * elf/Makefile (check-abi): Depend on check-abi-ld.
7153         (update-abi): Depend on update-abi-ld.
7155 2003-03-26  GOTO Masanori  <gotom@debian.or.jp>
7157         * sysdeps/unix/sysv/linux/i386/setfsuid.c: Use INTERNAL_SYSCALL and
7158         do not check for errors (unless testing for 32bit variant).
7159         * sysdeps/unix/sysv/linux/i386/setfsgid.c: Likewise.
7161 2003-03-27  Philip Blundell  <philb@gnu.org>
7163         * sysdeps/unix/sysv/linux/arm/sysdep.h (PSEUDO_RET_NOERRNO): Use
7164         unconditional mov.  Remove nop.
7166         * sysdeps/unix/sysv/linux/kernel-features.h
7167         (__ASSUME_VFORK_SYSCALL): Define for kernel 2.4 on arm.
7168         * sysdeps/unix/sysv/linux/arm/vfork.S: Elide compatibility code
7169         when __ASSUME_VFORK_SYSCALL is defined.
7170         * sysdeps/unix/sysv/linux/arm/mmap64.S: Likewise for
7171         __ASSUME_MMAP2_SYSCALL.
7172         * sysdeps/unix/sysv/linux/arm/sigaction.c: Likewise for
7173         __ASSUME_REALTIME_SIGNALS.
7175 2003-03-26  Ulrich Drepper  <drepper@redhat.com>
7177         * sysdeps/generic/ldsodefs.h (ELF_RTYPE_CLASS_COPY): Define to 2
7178         only if DL_NO_COPY_RELOCS is not defined.
7179         * sysdeps/ia64/dl-lookupcfg.h: Define DL_NO_COPY_RELOCS.
7181 2003-03-26  Roland McGrath  <roland@redhat.com>
7183         * sysdeps/unix/make-syscalls.sh: When an undefined syscall has
7184         SOURCE=-, append its symbol names to make variable unix-stub-syscalls.
7185         * sysdeps/unix/Makefile [$(subdir) = misc] [unix-stub-syscalls]
7186         (sysdep_routines): Add stub-syscalls.
7187         ($(objpfx)stub-syscalls.c): New target.
7188         (generated): Add stub-syscalls.c.
7190         * tls.make.c: Also define use-tls according to USE_TLS macro.
7192 2003-03-26  Ulrich Drepper  <drepper@redhat.com>
7194         * sysdeps/unix/sysv/linux/alpha/bits/siginfo.h (struct siginfo): Avoid
7195         no-op padding element.
7196         * sysdeps/unix/sysv/linux/bits/siginfo.h: Likewise.
7197         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Likewise.
7198         * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Likewise.
7199         * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Likewise.
7201 2003-03-26  GOTO Masanori  <gotom@debian.or.jp>
7203         * sysdeps/unix/sysv/linux/i386/getgroups.c: Fix the error
7204         condition check for the return value of getgroups32.
7206 2003-03-26  Jakub Jelinek  <jakub@redhat.com>
7208         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (PSEUDO_NOERRNO):
7209         Fix a typo.
7210         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h (PSEUDO_NOERRNO,
7211         PSEUDO_END_NOERRNO): Define.
7212         * sysdeps/unix/sysdep.h (PSEUDO_END_NOERRNO): Fix a typo.
7213         Define to PSEUDO_END.
7215 2003-03-26  Ulrich Drepper  <drepper@redhat.com>
7217         * abilist/librt.abilist: Add new timer interfaces for 64-bit archs.
7219 2003-03-25  Jiro SEKIBA  <jir@yamato.ibm.com>
7221         * iconvdata/euc-tw.c (from_euc_tw): Fix return value of TO_LOOP.
7222         * iconvdata/bug-iconv4.c: New file.
7223         * iconvdata/Makefile (tests): Add bug-iconv4.
7225 2003-03-25  H.J. Lu  <hjl@gnu.org>
7227         * elf/dl-lookup.c (_dl_lookup_symbol): Avoid looking up protected
7228         symbols twice.
7229         (_dl_lookup_versioned_symbol): Likewise.
7231 2003-03-26  Jakub Jelinek  <jakub@redhat.com>
7233         * csu/tst-atomic.c (do_test): Add some new
7234         atomic_compare_and_exchange_val_acq, atomic_add_zero,
7235         atomic_compare_and_exchange_bool_acq and atomic_add_negative tests.
7236         * include/atomic.h (atomic_add_negative, atomic_add_zero):
7237         Prefix local variable so that it doesn't clash with the one
7238         in atomic_exchange_and_add.
7239         * sysdeps/ia64/bits/atomic.h (atomic_exchange): Fix for long/void *
7240         pointers.
7241         (atomic_exchange_and_add): Implement using __sync_fetch_and_add_?i.
7242         * sysdeps/powerpc/bits/atomic.h (atomic_exchange_and_add): Force
7243         value into register.
7244         * sysdeps/s390/bits/atomic.h (__arch_compare_and_exchange_val_64_acq):
7245         Cast newval to long.
7246         * sysdeps/x86_64/bits/atomic.h
7247         (__arch_compare_and_exchange_val_64_acq): Cast newval and oldval to
7248         long.
7249         (atomic_exchange): Cast newvalue to long if sizeof == 8.
7250         (atomic_exchange_and_add): Cast value to long if sizeof == 8.
7251         (atomic_add, atomic_add_negative, atomic_add_zero): Likewise.
7252         (atomic_bit_set): Shift 1L up in all cases to shut up warnings.
7254 2003-03-21  Martin Schwidefsky  <schwidefskyde.ibm.com>
7256         * sysdeps/s390/s390-32/backtrace.c (__backtrace): Remove high order
7257         bit from backtrace addresses.
7259 2003-03-21  Andreas Schwab  <schwab@suse.de>
7261         * sysdeps/unix/sysv/linux/i386/chown.c: Don't define any versioned
7262         __chown symbols.
7264 2003-03-25  Roland McGrath  <roland@redhat.com>
7266         * config.make.in (enable-check-abi): New variable from configure.
7267         * configure.in (enable_check_abi): New substituted variable,
7268         controlled by --{enable,disable}-check-abi (default yes).
7269         * configure: Regenerated.
7270         * Makerules [$(enable-check-abi) = yes] (tests): Put this condition
7271         on check-abi dependency.
7273 2003-03-26  Andreas Schwab  <schwab@suse.de>
7275         * sysdeps/m68k/m68020/bits/atomic.h: Fix typos.
7276         * include/atomic.h: Likewise.
7278         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Define ret_NOERRNO.
7280 2003-03-25  Roland McGrath  <roland@redhat.com>
7282         * sysdeps/powerpc/bits/atomic.h (__arch_atomic_exchange_32): New macro.
7283         (__arch_atomic_exchange_64): New macro.
7284         (atomic_exchange): Use them.
7285         (__arch_atomic_exchange_and_add_32): New macro.
7286         (__arch_atomic_exchange_and_add_64): New macro.
7287         (atomic_exchange_and_add): Use them.
7288         Original patch from Steven Munroe <sjmunroe@us.ibm.com>.
7290 2003-03-25  Alexandre Oliva  <aoliva@redhat.com>
7292         * sysdeps/mips/sgidefs.h (_MIPS_ISA_MIPS32, _MIPS_ISA_MIPS64):
7293         Define.
7294         * sysdeps/mips/sys/asm.h: Test _MIPS_ISA against them on all
7295         ISA tests.
7296         (ALSZ, ALMASK, SZREG, REG_S, REG_L): Define based on ABI, not ISA.
7297         (PTR_ADD, etc): Test _MIPS_SZPTR instead of _MIPS_SZLONG.
7298         * sysdeps/unix/sysv/linux/mips/bits/sigaction.h: Use _MIPS_SZPTR
7299         to decide whether to add padding.
7300         * sysdeps/unix/sysv/linux/mips/bits/sigaction.h: Use _MIPS_SZPTR
7301         to decide whether to add padding.
7302         * sysdeps/unix/sysv/linux/mips/kernel_sigaction.h (struct
7303         old_kernel_sigaction): Likewise.
7305 2003-03-25  Ulrich Drepper  <drepper@redhat.com>
7307         * csu/tst-atomic.c: Adjust tests to what atomic_add_negative and
7308         atomic_add_zero were supposed to do.
7309         * include/atomic.h: Adjust atomic_add_negative and atomic_add_zero
7310         to x86 behavior.
7312         * sysdeps/generic/bits/typesizes.h (__TIMER_T_TYPE): Define as void*.
7313         This matches the new timer implementation.
7314         * sysdeps/unix/sysv/linux/sparc/bits/typesizes.h (__TIMER_T_TYPE):
7315         Likewise.
7316         * sysdeps/unix/sysv/linux/alpha/bits/typesizes.h (__TIMER_T_TYPE):
7317         Likewise.
7318         * sysdeps/unix/sysv/linux/bits/siginfo.h (struct siginfo): Adjust
7319         timer info for what the kernel provides these days.
7320         (struct sigevent): Add _tid field.
7321         Define SIGEV_THREAD_ID.
7322         Remove struct __pthread_attr_s forward declaration.
7323         * sysdeps/unix/sysv/linux/alpha/bits/siginfo.h: Likewise.
7324         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Likewise.
7325         * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Likewise.
7326         * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Likewise.
7328         * Versions.def (librt): Add GLIBC_2.3.3.
7330         * abilist/libpthread.abilist: Update for nptl.
7332 2003-03-24  Jon Grimm  <jgrimm@us.ibm.com>
7334         * inet/netinet/in.h: Add IPPROTO_SCTP.
7336 2003-03-24  Ulrich Drepper  <drepper@redhat.com>
7338         * sysdeps/unix/sysv/linux/sys/epoll.h (EPOLLET): Define.
7340 2003-03-24  Philip Blundell  <philb@gnu.org>
7342         * sysdeps/unix/sysv/linux/arm/sysdep.h (INTERNAL_SYSCALL):
7343         Remove a1 from clobber list.
7345 2003-03-24  Ulrich Drepper  <drepper@redhat.com>
7347         * timezone/antarctica: Update from tzdata2003a.
7348         * timezone/asia: Likewise.
7349         * timezone/australasia: Likewise.
7350         * timezone/europe: Likewise.
7351         * timezone/iso3166.tab: Likewise.
7352         * timezone/northamerica: Likewise.
7353         * timezone/southamerica: Likewise.
7354         * timezone/zone.tab: Likewise.
7356 2003-03-24  Steven Munroe  <sjmunroe@us.ibm.com>
7358         * sysdeps/powerpc/powerpc64/sysdep.h (PSEUDO_END_NOERRNO): Fix typo.
7360 2003-03-23  Ulrich Drepper  <drepper@redhat.com>
7362         * sysdeps/unix/sysv/linux/ia64/sysdep.h (ret_NOERRNO): Avoid
7363         unwanted expansion by definining to ret.  Patch by Ian Wienand.
7365         * sysdeps/unix/make-syscalls.sh: Recognize 'E' in first position of
7366         the parameter description to denote no error checking.  Generate
7367         appropriate pseudo asm code.
7368         * sysdeps/unix/syscalls.list: Mark getgid, getpid, getuid with 'E'.
7369         * sysdeps/unix/sysv/linux/syscalls.list: Mark getegid, geteuid,
7370         getpgrp, and getppid with 'E'.
7371         * sysdeps/powerpc/powerpc32/sysdep.h: Define PSEUDO_NOERRNO,
7372         PSEUDO_END_NOERRNO, and ret_NOERRNO.
7373         * sysdeps/powerpc/powerpc64/sysdep.h: Likewise.
7374         * sysdeps/unix/sysdep.h: Likewise.
7375         * sysdeps/unix/alpha/sysdep.h: Likewise.
7376         * sysdeps/unix/sparc/sysdep.h: Likewise.
7377         * sysdeps/unix/sysv/linux/arm/sysdep.h: Likewise.
7378         * sysdeps/unix/sysv/linux/cris/sysdep.h: Likewise.
7379         * sysdeps/unix/sysv/linux/hppa/sysdep.h: Likewise.
7380         * sysdeps/unix/sysv/linux/i386/sysdep.h: Likewise.
7381         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Likewise.
7382         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Likewise.
7383         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Likewise.
7384         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise.
7385         * sysdeps/unix/sysv/linux/sh/sysdep.h: Likewise.
7386         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Likewise.
7387         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
7389 2003-03-23  Roland McGrath  <roland@redhat.com>
7391         * Makeconfig (+includes): Don't use $(last-includes).
7393 2003-03-22  Alexandre Oliva  <aoliva@redhat.com>
7395         * sysdeps/unix/sysv/linux/configure.in: Update mips64 patterns.
7396         * sysdeps/unix/sysv/linux/configure: Rebuilt.
7398 2003-03-23  Jakub Jelinek  <jakub@redhat.com>
7400         * sysdeps/alpha/fpu/libm-test-ulps: Update.
7401         * sysdeps/arm/libm-test-ulps: Update.
7402         * sysdeps/hppa/fpu/libm-test-ulps: Update.
7403         * sysdeps/ia64/fpu/libm-test-ulps: Update.
7404         * sysdeps/mips/fpu/libm-test-ulps: Update.
7405         * sysdeps/powerpc/nofpu/libm-test-ulps: Update.
7406         * sysdeps/powerpc/fpu/libm-test-ulps: Update.
7407         * sysdeps/sparc/sparc32/fpu/libm-test-ulps: Update.
7408         * sysdeps/sparc/sparc64/fpu/libm-test-ulps: Update.
7409         * sysdeps/sh/sh4/fpu/libm-test-ulps: Update.
7410         * sysdeps/s390/fpu/libm-test-ulps: Update.
7411         * sysdeps/x86_64/fpu/libm-test-ulps: Update.
7413 2003-03-22  Roland McGrath  <roland@redhat.com>
7415         * include/atomic.h: Put parens around all macro arguments.
7416         (__atomic_val_bysize, __atomic_bool_bysize): New macros.
7417         (atomic_compare_and_exchange_val_acq): Use it.
7418         (atomic_compare_and_exchange_bool_acq): Likewise.
7419         (atomic_increment_and_test): Invert sense of test.
7420         (atomic_decrement_and_test): Likewise.
7421         * csu/tst-atomic.c: Update those tests to match.
7423 2003-03-22  Jakub Jelinek  <jakub@redhat.com>
7425         * include/atomic.h (atomic_compare_and_exchange_val_acq): Add comment.
7426         Don't define if __arch_compare_and_exchange_val_32_acq is not defined.
7427         (atomic_compare_and_exchange_bool_acq): Add comment.  Don't use
7428         __oldval variable in the macro, since it might be macro argument.
7429         (atomic_decrement_if_positive): Initialize __memp, remove setting
7430         of non-existent variable.
7431         (atomic_bit_test_set): Cast 1 to __typeof (*mem) before shifting.
7432         * sysdeps/ia64/bits/atomic.h (atomic_exchange_and_add): Implement
7433         using atomic_compare_and_exchange_val_acq.
7434         (atomic_decrement_if_positive, atomic_bit_test_set): Define.
7435         * sysdeps/s390/bits/atomic.h (__arch_compare_and_exchange_val_8_acq):
7436         Renamed from...
7437         (__arch_compare_and_exchange_bool_8_acq): ... this.
7438         (__arch_compare_and_exchange_val_16_acq): Renamed from...
7439         (__arch_compare_and_exchange_bool_16_acq): ... this.
7440         (__arch_compare_and_exchange_val_32_acq): Return old value.  Renamed
7441         from...
7442         (__arch_compare_and_exchange_bool_32_acq): ... this.
7443         (__arch_compare_and_exchange_val_64_acq): Return old value.  Renamed
7444         from...
7445         (__arch_compare_and_exchange_bool_64_acq): ... this.
7446         (__arch_compare_and_exchange_val_32_acq): Use __typeof for local
7447         variables types instead of assuming int.
7448         Change prefix of local variables to __arch.
7449         * sysdeps/generic/bits/atomic.h (arch_compare_and_exchange_acq):
7450         Remove.
7451         (atomic_compare_and_exchange_val_acq,
7452         atomic_compare_and_exchange_bool_acq): Define.
7454         * csu/tst-atomic.c: New test.
7455         * csu/tst-atomic-long.c: New test.
7456         * csu/Makefile (tests): Add tst-atomic and tst-atomic-long.
7458         * malloc/memusagestat.c (main): Kill warning if uint64_t is ulong.
7460         * sysdeps/s390/Versions: Add trailing newline.
7462         * sysdeps/unix/sysv/linux/sysconf.c (__sysconf): Kill warning
7463         if INTERNAL_SYSCALL_ERROR_P doesn't use its first argument.
7465 2003-03-22  Andreas Schwab  <schwab@suse.de>
7467         * sysdeps/m68k/fpu/libm-test-ulps: Update.
7469         * sysdeps/m68k/m68020/bits/atomic.h: New file.
7470         * sysdeps/m68k/m68020/atomicity.h: Removed.
7472 2003-03-22  Alexandre Oliva  <aoliva@redhat.com>
7474         * sysdeps/mips/elf/ldsodefs.h: Add mips-specific elf64 relocation
7475         data structures and macros.  Protect from multiple inclusion.
7477         * sysdeps/mips/dl-machine.h (ELF_MIPS_GNU_GOT1_MASK): Fix harmless
7478         typo in #if test.
7480 2003-03-21  Andreas Jaeger  <aj@suse.de>
7482         * sysdeps/i386/fpu/libm-test-ulps: Update.
7484         * math/libm-test.inc (tgamma_test): Recompute some constants with
7485         36 digits precision.
7486         (lgamma_test): Likewise.
7487         (ccos_test): Likewise.
7488         (ccosh_test): Likewise.
7489         (clog10_test): Likewise.
7490         (csin_test): Likewise.
7491         (csinh_test): Likewise.
7492         (ctan_test): Likewise.
7493         (ctanh_test): Likewise.
7495 2003-03-19  Jakub Jelinek  <jakub@redhat.com>
7497         * sysdeps/sparc/sparc64/fpu/libm-test-ulps: Regenerated.
7499 2003-03-21  Roland McGrath  <roland@redhat.com>
7501         * sysdeps/i386/i486/bits/atomic.h (atomic_bit_set): Use "ir"
7502         constraint to permit non-constant BIT argument.
7503         (atomic_bit_test_set): Likewise.
7504         * sysdeps/x86_64/bits/atomic.h (atomic_bit_test_set): Likewise.
7505         (atomic_bit_set): Likewise.  Use 1UL in case that BIT might be >= 32.
7506         For quadword case, use "i" constraint if __builtin_constant_p and < 32
7507         or "r" constraint otherwise.
7509         * configure.in: Move AC_PROG_CC and other program-finding before all
7510         the version checks.
7511         * configure: Regenerated.
7513 2003-03-21  Alexandre Oliva  <aoliva@redhat.com>
7515         * sysdeps/mips/mips64/memcpy.S: Fix porting bug that broke
7516         unaligned copying of 8-15 bytes.  From Chris Demetriou
7517         <cgd@broadcom.com>.  Fix label names.
7518         * sysdeps/mips/mips64/memset.S: Fix label names.  Make similar
7519         change as to memcpy.S.
7520         * sysdeps/mips/memcpy.S: Formatting changes.
7521         * sysdeps/mips/memset.S: Likewise.
7523 2003-03-21  Roland McGrath  <roland@redhat.com>
7525         * sysdeps/arm/sysdep.h (CALL_MCOUNT): Add trailing semicolon.
7527 2003-03-21  Alexandre Oliva  <aoliva@redhat.com>
7529         * sysdeps/mips/mips64/memcpy.S, sysdeps/mips/mips64/memset.S: New.
7530         * sysdeps/mips/memcpy.S, sysdeps/mips/memset.S: Update comments.
7532 2003-03-21  Roland McGrath  <roland@redhat.com>
7534         * sysdeps/i386/i486/bits/atomic.h
7535         (__arch_compare_and_exchange_val_64_acq): Rewrite abort-calling
7536         version of the macro to avoid compile-time warnings.
7537         [! __PIC__] (__arch_compare_and_exchange_64_acq): Rename to above.
7538         (atomic_exchange_and_add, atomic_add): Fix name and usage of it.
7539         (atomic_increment, atomic_decrement): Likewise.
7541 2003-03-21  Ulrich Drepper  <drepper@redhat.com>
7543         * sysdeps/x86_64/bits/atomic.h: Don't use matching memory constraints.
7544         * sysdeps/i386/i486/bits/atomic.h: Likewise.
7546 2003-03-21  Roland McGrath  <roland@redhat.com>
7548         * include/atomic.h (atomic_compare_and_exchange_bool_acq): Typo fix.
7550 2003-03-20  Ulrich Drepper  <drepper@redhat.com>
7552         * include/atomic.h: Define atomic_compare_and_exchange_val_acq,
7553         atomic_compare_and_exchange_val_rel,
7554         atomic_compare_and_exchange_bool_acq, and
7555         atomic_compare_and_exchange_bool_rel instead of
7556         atomic_compare_and_exchange_acq and atomic_compare_and_exchange_rel.
7557         * sysdeps/i386/i486/bits/atomic.h: Define
7558         __arch_compare_and_exchange_val_*_acq instead of
7559         __arch_compare_and_exchange_*_acq.
7560         * sysdeps/x86_64/bits/atomic.h: Likewise.
7561         * sysdeps/ia64/bits/atomic.h: Define
7562         __arch_compare_and_exchange_bool_*_acq instead of
7563         __arch_compare_and_exchange_*_acq.
7564         * sysdeps/powerpc/bits/atomic.h: Likewise.
7565         * sysdeps/s390/bits/atomic.h: Likewise.
7566         * gmon/mcount.c: Adjust for new form of compare&exchange macros.
7567         * malloc/set-freeres.c: Likewise.
7568         * nscd/cache.c: Likewise.
7569         * stdlib/cxa_finalize.c: Likewise.
7570         * sysdeps/unix/sysv/linux/getsysstats.c: Likewise.
7572 2003-03-20  Alexandre Oliva  <aoliva@redhat.com>
7574         * sysdeps/mips/bits/setjmp.h: n32 has only 6 call-saved fpregs.
7575         * sysdeps/mips/mips64/setjmp_aux.c (__sigsetjmp_aux): Adjust.
7576         * sysdeps/mips/mips64/__longjmp.c (__longjmp): Likewise.
7578         * sysdeps/unix/sysv/linux/mips/pread.c: Don't break up offset
7579         into high and low halves on n64.
7580         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
7581         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
7582         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
7584 2003-03-20  Ulrich Drepper  <drepper@redhat.com>
7586         * include/atomic.h (atomic_decrement_if_positive): Adjust for the
7587         correct atomic_compare_and_exchange_acq semantics.
7589 2003-03-20  Alexandre Oliva  <aoliva@redhat.com>
7591         * sysdeps/mips/ieee754.h: Remove excess #endif.
7593 2003-03-20  Roland McGrath  <roland@redhat.com>
7595         * sysdeps/powerpc/bits/atomic.h (atomic_exchange): Remove unused
7596         variable.  Remove superfluous memory clobber.
7598         * include/atomic.h: Syntax braino fix.
7600         * posix/tst-nice.c (do_test): Use %m formats instead of printing errno
7601         in decimal.  Don't bail if niced at start.  Just check that nice call
7602         bumps the total at all.
7604 2003-03-20  Alexandre Oliva  <aoliva@redhat.com>
7606         * sysdeps/mips/bits/setjmp.h: Store all N32 and N64 registers,
7607         including pc, gp, sp and fp, as long long.
7608         * sysdeps/mips/mips64/setjmp.S: Pass gp to __sigsetjmp_aux.
7609         * sysdeps/mips/mips64/setjmp_aux.c: Adjust type of arguments.
7610         Add gp argument, and set gp in the jmpbuf to it.
7611         * sysdeps/mips/setjmp_aux.c: Revert to o32-only.
7613 2003-03-20  Ulrich Drepper  <drepper@redhat.com>
7615         * include/atomic.h: Define atomic_exchange and
7616         atomic_decrement_if_positive if not already defined.  Add some
7617         __builtin_expect.
7618         * sysdeps/i386/i486/bits/atomic.h: Define atomic_exchange.
7619         * sysdeps/x86_64/bits/atomic.h: Likewise.
7620         * sysdeps/ia64/bits/atomic.h: Pretty printing.  Define atomic_exchange.
7621         * sysdeps/powerpc/bits/atomic.h: Pretty printing.  Define
7622         atomic_exchange, atomic_exchange_and_add, and
7623         atomic_decrement_if_positive
7625 2003-03-20  Alexandre Oliva  <aoliva@redhat.com>
7627         * sysdeps/unix/sysv/linux/mips/mips64/n64/ioctl.S: Sign-extend
7628         with a single instruction.
7630         * sysdeps/mips/dl-machine.h (ELF_MIPS_GNU_GOT1_MASK): Define
7631         properly for n64.
7632         (elf_machine_runtime_setup): Cast link_map pointer to Elf Addr
7633         type.
7634         (elf_machine_rel, elf_machine_rel_relative): Cast symidx to Elf
7635         Word before comparing with gotsym.  Take reloc_addr argument as
7636         void*.  Remove the code added for the compiler to drop any
7637         alignment assumptions.
7639 2003-03-19  Ulrich Drepper  <drepper@redhat.com>
7641         * Makefile (distribute): Add include/atomic.h and bits/atomic.h.
7642         * include/atomic.h: New file.
7643         * sysdeps/i386/i486/bits/atomic.h: New file.
7644         * sysdeps/x86_64/bits/atomic.h: New file.
7645         * sysdeps/s390/bits/atomic.h: New file.
7646         * sysdeps/sh/bits/atomic.h: New file.
7647         * sysdeps/ia64/bits/atomic.h: New file.
7648         * sysdeps/powerpc/bits/atomic.h: New file.
7649         * sysdeps/generic/bits/atomic.h: New file.
7650         * sysdeps/i386/i486/atomicity.h: Removed.
7651         * sysdeps/x86_64/atomicity.h: Removed.
7652         * sysdeps/s390/s390-32/atomicity.h: Removed.
7653         * sysdeps/s390/s390-64/atomicity.h: Removed.
7654         * sysdeps/ia64/atomicity.h: Removed.
7655         * sysdeps/powerpc/powerpc32/atomicity.h: Removed.
7656         * sysdeps/powerpc/powerpc64/atomicity.h: Removed.
7657         * elf/dl-profile.c: Use atomic.h instead of atomicity.h.  Adjust
7658         use of macros from atomicity.h to new names and semantics.
7659         * gmon_mcount.c: Likewise.
7660         * malloc/set-freeres.c: Likewise.
7661         * nscd/cache.c: Likewise.
7662         * stdlib/cxa_finalize.c: Likewise.
7663         * sysdeps/unix/sysv/linux/getsysstats.c: Likewise.
7665 2003-03-19  Alexandre Oliva  <aoliva@redhat.com>
7667         * sysdeps/mips/ieee754.h: New file, suitable to replace both
7668         ../ieee754/ieee754.h and ../ieee754/ldbl-128/ieee754.h, kept
7669         mips-specific for now.
7671 2003-03-19  Ulrich Drepper  <drepper@redhat.com>
7673         * stdlib/strtod.c (INTERNAL): While eating trailing zeros handle
7674         hexdigits correctly.  Reported by Fred Tydeman <tydeman@tybor.com>.
7675         * stdlib/tst-strtod.c: Add test for the bug.
7677         * posix/tst-nice.c (do_test): Remove invalid of return value.
7678         Don't run test if initial level != 0.
7680 2003-03-19  Amos Waterland  <apw@us.ibm.com>
7682         * posix/tst-nice.c: New file.
7683         * posix/Makefile (tests): Add tst-nice.
7685 2003-03-18  Roland McGrath  <roland@redhat.com>
7687         * abilist: New directory of libfoo.abilist files maintained using
7688         scripts/merge-abilist.awk and "make update-abi" rules.
7689         * Makefile (distribute): Add abilist/*.abilist.
7690         * Makerules [$(build-shared) = yes] [$(subdir)] (tests):
7691         Depend on check-abi.
7693         * configure.in: Move $critic_missing check after all AC_CHECK_PROG_VER.
7694         * configure: Regenerated.
7696         * sysdeps/unix/sysv/linux/syscalls.list (posix_fadvise64): Fix name.
7698 2003-03-18  Ulrich Drepper  <drepper@redhat.com>
7700         * sysdeps/posix/sysconf.c (__sysconf): Handle _SC_MONOTONIC_CLOCK
7701         correctly.
7703 2003-03-18  Steven Munroe  <sjmunroe@us.ibm.com>
7705         * sysdeps/powerpc/powerpc64/memcpy.S: New file.
7707 2003-03-18  Ulrich Drepper  <drepper@redhat.com>
7709         * Versions.def: Add GLIBC_2.3.3 for libpthread.
7711 2003-03-17  Ulrich Drepper  <drepper@redhat.com>
7713         * sysdeps/generic/libc-start.c [!SHARED &&
7714         !LIBC_START_MAIN_AUXVEC_ARG]: Compute beginning of auxvec correctly.
7716 2003-03-17  Roland McGrath  <roland@redhat.com>
7718         * include/ctype.h: Revert last change.
7720 2003-03-17  Ulrich Drepper  <drepper@redhat.com>
7722         * argp/tst-argp1.c: Use test-skeleton.c.
7723         * locale/tst-C-locale.c: Likewise.
7725 2003-03-17  Alexandre Oliva  <aoliva@redhat.com>
7727         * sysdeps/mips/mips64/Implies: Move wordsize-64 to...
7728         * sysdeps/mips/mips64/n64/Implies: New file.
7729         * sysdeps/mips/mips64/n64/Makefile: New file.
7730         * sysdeps/mips/mips64/n64/el/bits/endian.h: New file.
7731         * sysdeps/mips/mips64/n32/Implies: New file.
7732         * sysdeps/mips/mips64/n32/Makefile: New file.
7733         * sysdeps/mips/mips64/n32/el/bits/endian.h: New file.
7734         * sysdeps/unix/mips/mips64/n32/sysdep.h: New file.
7735         * sysdeps/unix/mips/mips64/n64/sysdep.h: New file.
7736         * sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h: New file.
7737         * sysdeps/unix/sysv/linux/mips/mips64/n64/glob64.c: New file.
7738         * sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h: New file.
7739         * sysdeps/unix/sysv/linux/mips/mips64/ldconfig.h: New file.
7740         * sysdeps/unix/sysv/linux/mips/mips64/llseek.c: New file.
7741         * sysdeps/unix/sysv/linux/mips/mips64/recv.c: New file.
7742         * sysdeps/unix/sysv/linux/mips/mips64/send.c: New file.
7743         * sysdeps/unix/sysv/linux/mips/mips64/syscall.S: New file.
7744         * sysdeps/unix/sysv/linux/mips/mips64/syscalls.list: New file.
7745         * sysdeps/unix/sysv/linux/mips/mips64/umount.c: New file.
7746         * sysdeps/unix/sysv/linux/mips/mips64/n64/ioctl.S: New file.
7748         * sysdeps/unix/sysv/linux/configure.in (libc_cv_slibdir): Use
7749         lib64 for mips64/n64 and lib32 for mips64/n32.
7750         (ldd_rewrite_script): Needed for all mips64 configurations.
7751         * sysdeps/unix/sysv/linux/configure: Rebuilt.
7752         * sysdeps/unix/sysv/linux/mips/mips64/ldd-rewrite.sed: New file.
7753         * sysdeps/unix/sysv/linux/mips/mips64/Dist: New file.
7755         * sysdeps/mips/machine-gmon.h (MCOUNT): Define for N32 and N64 as
7756         well.
7758         * sysdeps/unix/sysv/linux/mips/configure.in: New.  Pre-process
7759         asm/unistd.h into asm-unistd.h.
7760         * sysdeps/unix/sysv/linux/mips/configure: Generated.
7761         * sysdeps/unix/sysv/linux/mips/Makefile: Do custom processing
7762         of syscall list.
7763         * sysdeps/unix/sysv/linux/mips/sys/syscall.h: New file.
7764         * sysdeps/unix/sysv/linux/mips/clone.S: Don't include
7765         asm/unistd.h.
7767         * sysdeps/unix/sysv/linux/mips/sys/ptrace.h: New file.
7768         * sysdeps/unix/sysv/linux/mips/ptrace.c: New file.  Use long
7769         long type for registers on n32.
7771         * sysdeps/mips/bits/wordsize.h: New file, appropriate for all
7772         3 ABIs.
7773         * sysdeps/mips/mips64/gmp-mparam.h: New file.  Define
7774         BITS_PER_LONGINT to __WORDSIZE, to match all 3 ABIs.
7775         * sysdeps/mips/setjmp_aux.c (STRINGXP, REGS, PTRS): New macros.
7776         (__sigsetjmp_aux): Use them.  Adjust for all 3 ABIs.
7777         * sysdeps/mips/elf/start.S: Adjust for all 3 ABIs.
7778         * sysdeps/unix/mips/brk.S: Likewise.
7779         * sysdeps/unix/mips/sysdep.S: Likewise.
7780         * sysdeps/unix/sysv/linux/mips/clone.S: Likewise.
7781         * sysdeps/mips/bits/setjmp.h (__jmp_buf): Likewise.
7782         * sysdeps/mips/sys/ucontext.h: Likewise.
7783         * sysdeps/unix/sysv/linux/mips/sys/profcs.h: Likewise.
7784         * sysdeps/unix/sysv/linux/mips/sys/ucontext.h: Likewise.
7785         * sysdeps/unix/sysv/linux/mips/kernel_stat.h: Likewise.
7786         * sysdeps/mips/mips64/bsd-_setjmp.S: Likewise.
7787         * sysdeps/mips/mips64/bsd-setjmp.S: Likewise.
7788         * sysdeps/mips/mips64/setjmp.S: Likewise.
7789         * sysdeps/mips/mips64/bits/setjmp.h: Deleted, obsolete.
7790         * sysdeps/mips/mips64/soft-fp/sfp-machine.h: Use long long for
7791         64-bit types.
7793 2003-03-16  Ulrich Drepper  <drepper@redhat.com>
7795         * sysdeps/unix/clock_settime.c (HANDLE_REALTIME): Define tv here,
7796         not at function level.
7797         * sysdeps/unix/clock_gettime.c (HANDLE_REALTIME): Likewise.
7799 2003-03-15  Roland McGrath  <roland@redhat.com>
7801         * nis/nss_nis/nis-hosts.c (internal_gethostbyname2_r): int -> size_t
7802         * nis/nss_nis/nis-network.c (_nss_nis_getnetbyname_r): Likewise.
7803         * nis/nss_nis/nis-alias.c (_nss_nis_getaliasbyname_r): Likewise.
7804         * nis/nis_table.c (__create_ib_request): Likewise.
7806         * posix/fnmatch_loop.c: Add casts for signedness.
7807         * nss/nss_files/files-hosts.c: Likewise.
7808         * nscd/nscd_getpw_r.c (nscd_getpw_r): Likewise.
7809         * gmon/gmon.c (write_call_graph): Use u_long for FROM_LEN.
7810         * nscd/nscd_getgr_r.c (nscd_getgr_r): Use nscd_ssize_t for CNT.
7812         * configure.in (libc_cv_visibility_attribute): Use AC_TRY_COMMAND,
7813         get errors into the log file.
7814         (libc_cv_broken_visibility_attribute): Likewise.
7815         (libc_cv_broken_alias_attribute): Likewise.
7816         (libc_cv_asm_weak_directive): Likewise.
7817         (libc_cv_need_minus_P): Likewise.
7818         (libc_cv_dot_text): Likewise.
7819         (libc_cv_asm_global_directive): Likewise.
7820         (libc_cv_asm_type_prefix): Likewise.
7821         * configure: Regenerated.
7823         * nscd/cache.c (cache_search): Give first arg type `request_type'.
7824         * nscd/nscd.h: Update decl.
7826         * nscd/nscd_getpw_r.c (nscd_getpw_r): Add casts for signedness.
7827         * nscd/nscd_getgr_r.c (nscd_getgr_r): Likewise.
7828         * elf/dl-close.c (_dl_close): Likewise.
7829         * sysdeps/unix/sysv/linux/powerpc/chown.c (__chown): int -> size_t
7830         * io/fts.c (fts_build): Likewise.
7831         * elf/cache.c (add_to_cache): Likewise.
7832         * locale/programs/locarchive.c (show_archive_content): Likewise.
7834         * posix/fnmatch.c (fnmatch): Tweak __builtin_expect use.
7836         * include/ctype.h (__ctype_b_loc): Tweak type punning to make gcc 3.3
7837         happy.
7838         (__ctype_toupper_loc, __ctype_tolower_loc): Likewise.
7840 2003-03-15  Ulrich Drepper  <drepper@redhat.com>
7842         * sysdeps/unix/sysv/linux/ia64/system.c: Use the generic Linux
7843         code for most parts.
7845 2003-03-15  Roland McGrath  <roland@redhat.com>
7847         * sysdeps/unix/sysv/linux/i386/system.c: Moved to ...
7848         * sysdeps/unix/sysv/linux/system.c: ... here.
7849         (FORK): Don't #define if already #define'd.
7850         * sysdeps/unix/sysv/linux/s390/system.c: File removed.
7851         * sysdeps/unix/sysv/linux/kernel-features.h [__powerpc__]:
7852         (__ASSUME_CLONE_THREAD_FLAGS): Define for kernel >= 2.5.64.
7854         * dlfcn/tst-dlinfo.c: New file.
7855         * dlfcn/Makefile (tests): Add tst-dlinfo.
7856         ($(objpfx)tst-dlinfo): New target.
7858         * dlfcn/dlinfo.c: New file.
7859         * dlfcn/Makefile (libdl-routines): Add it.
7860         * dlfcn/Versions (libdl: GLIBC_2.3.3): Add dlinfo.
7861         * dlfcn/dlfcn.h [__USE_GNU]: Declare dlinfo.
7862         [__USE_GNU] (RTLD_DI_*): New enum constants.
7863         [__USE_GNU] (Dl_serpath, Dl_serinfo): New types.
7864         * elf/dl-load.c (cache_rpath): New inline function.
7865         (_dl_map_object): Use it.
7866         (_dl_rtld_di_serinfo): New function.
7867         * sysdeps/generic/ldsodefs.h: Declare it.
7868         * elf/Versions (ld: GLIBC_PRIVATE): Add it.
7870         * sysdeps/powerpc/elf/libc-start.c (AUX_VECTOR_INIT): Define it.
7871         (LIBC_START_MAIN, LIBC_START_MAIN_AUXVEC_ARG, MAIN_AUXVEC_ARG)
7872         (INIT_MAIN_ARGS): Define, and #include <sysdeps/generic/libc-start.c>.
7873         (__libc_start_main): Just call the generic one for most of the work.
7875         * sysdeps/generic/libc-start.c [LIBC_START_MAIN]: If defined, define a
7876         static function by that name instead of BP_SYM (__libc_start_main).
7877         [LIBC_START_MAIN_AUXVEC_ARG]: Take AUXVEC as argument.
7878         [MAIN_AUXVEC_ARG]: Pass 4th argument to MAIN.
7879         [INIT_MAIN_ARGS]: Give INIT the same args as MAIN.
7881         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start) [DL_PLATFORM_AUXV]:
7882         Use this macro for extra AT_* cases.
7883         * sysdeps/unix/sysv/linux/powerpc/dl-sysdep.c (DL_PLATFORM_AUXV):
7884         New macro, guts from ...
7885         (__aux_init_cache): ... here, function removed.
7886         (DL_PLATFORM_INIT): Don't define this.
7888         * sysdeps/powerpc/powerpc32/memset.S: Put __cache_line_size in bss.
7889         * sysdeps/powerpc/powerpc64/memset.S: Likewise.
7891         * Versions.def (libthread_db): Add GLIBC_2.3.3 set.
7893 2003-03-14  Roland McGrath  <roland@redhat.com>
7895         * dlfcn/dlerror.c (dlerror): If objname is "", don't put ": " after it.
7897 2003-03-14  Jakub Jelinek  <jakub@redhat.com>
7899         * sysdeps/unix/sysv/linux/Makefile (syscall-%.h): Fix a typo.
7901         * sysdeps/unix/sysv/linux/sparc/sparc64/pause.c: Include
7902         sysdeps/posix/pause.c instead of sysdeps/unix/common/pause.c.
7904 2003-03-14  Alexandre Oliva  <aoliva@redhat.com>
7906         * sysdeps/mips/fpu/bits/mathdef.h: New.
7907         (__NO_LONG_DOUBLE_MATH): Define for o32.
7909         * sysdeps/mips/sys/asm.h: Formatting changes.
7910         (PTR, PTRSIZE, PTRLOG): Adjust for all 3 ABIs.
7911         (CPADD): Define for all of them.
7912         (SETUP_GP, SETUP_GPX, SETUP_GPX_L, SAVE_GP, SETUP_GP64,
7913         SETUP_GPX64, SETUP_GPX64_L, RESTORE_GP64, USE_ALT_CP,
7914         NARGSAVE): Define per ABI spec.
7915         (END): Don't redefine.
7916         (LONG_SLL, LONG_SLLV, LONG_SRL, LONG_SRLV, LONG_SRA,
7917         LONG_SRAV): Remove duplicate definitions.
7918         (PTR_ADD, PTR_ADDI, PTR_ADDU, PTR_ADDIU, PTR_SUB, PTR_SUBI,
7919         PTR_SUBU, PTR_SUBIU, PTR_L, PTR_S, PTR_SLL, PTR_SLLV, PTR_SRL,
7920         PTR_SRLV, PTR_SRA, PTR_SRAV, PTR_SCALESHIFT): Define for n32.
7921         (PTR_LA): Define for all 3 ABIs.
7923         * sysdeps/mips/dl-machine.h: Include sys/asm.h.
7924         (elf_machine_matches_host): Prevent linking of o32 and n32
7925         together.
7926         (elf_machine_dynamic): Document assumption on $gp.
7927         (STRINGXP, STRINGXV, STRINGV_): New macros.
7928         (elf_machine_load_address): Use them to stringize PTR_LA and
7929         PTR_SUBU.
7930         (ELF_DL_FRAME_SIZE, ELF_DL_SAVE_ARG_REGS,
7931         ELF_DL_RESTORE_ARG_REGS, IFABIO32): New macros used in...
7932         (_dl_runtime_resolve): Adjust it for all 3 ABIs.
7933         (__dl_runtime_resolve): Cast the symtab initializer to the
7934         right type.
7935         (RTLD_START): Use it.  Adjust it for all 3 ABIs.
7936         (elf_machine_rel): Mark as always_inline in RTLD_BOOTSTRAP.
7937         Handle 64-bit R_MIPS_REL composite relocation and accept
7938         R_MIPS_64 relocations to shift addend size to 64 bits.
7939         Document assumption regarding local GOT entries.  Document
7940         backward-compatibility departing from the ABI behavior in
7941         applying relocations that reference section symbols, no longer
7942         used.  Support relocations to mis-aligned offsets.
7943         * sysdeps/mips/mips64/dl-machine.h: Deleted, obsolete.
7945         * sysdeps/unix/sysv/linux/mips/readelflib.c: New file.
7947         * sysdeps/unix/sysv/linux/mips/kernel_sigaction.h
7948         (_KERNEL_NSIG_BPW): Define in terms of _MIPS_SZLONG.
7949         * sysdeps/unix/sysv/linux/mips/sigaction.c: Define restore and
7950         restore_rt functions.  Use them.
7952         * sysdeps/unix/sysv/linux/mips/sys/tas.h (_test_and_set): Don't
7953         .set mips2 on new abis.
7955 2003-03-13  Ulrich Drepper  <drepper@redhat.com>
7957         * posix/getconf.c: Recognize POSIX2_SYMLINKS.
7958         * sysdeps/generic/bits/confname.h: Define _PC_2_SYMLINKS.
7959         * sysdeps/posix/fpathconf.c: Handle _PC_2_SYMLINKS.
7960         * sysdeps/posix/pathconf.c: Likewise.
7961         * sysdeps/unix/sysv/linux/fpathconf.c: Likewise.
7962         * sysdeps/unix/sysv/linux/pathconf.c: Likewise.
7963         * sysdeps/unix/sysv/linux/pathconf.h: Define statfs_symlinks.
7965         * sysdeps/unix/sysv/linux/linux_fsinfo.h: Define some more magic
7966         words.
7968 2003-03-14  Alexandre Oliva  <aoliva@redhat.com>
7970         * include/gmp.h: Include/gmp-mparam.h.
7971         * stdlib/strtod.c: Include gmp-mparam.h before gmp.h and
7972         gmp-impl.h.
7974         * elf/dl-conflict.c: Don't compile _dl_resolve_conflicts if
7975         ELF_MACHINE_NO_RELA is set.
7976         * elf/rtld.c (dl_main): No prelink support for REL-only.
7978         * sysdeps/generic/ldconfig.h (FLAG_MIPS64_LIBN32,
7979         FLAG_MIPS64_LIBN64): Define.
7980         * elf/cache.c (print_entry): Handle mips64 n32 and n64.
7982         * sysdeps/mips/memcpy.S: Map t0-3 to a4-7 on new abis.
7983         * sysdeps/mips/memset.S: Likewise.
7984         * sysdeps/mips/sys/regdef.h: Alias a4-7 or t0-3 to $8-11
7985         depending on the ABI.
7987         * sysdeps/mips/atomicity.h (exchange_and_add, atomic_add):
7988         Don't .set mips2 on new abi.
7989         (compare_and_swap): Likewise.  Support 64-bit longs on n64.
7991         * stdlib/fpioconst.h: Include gmp.h with angle brackets.
7993 2003-03-13  Roland McGrath  <roland@redhat.com>
7995         * elf/dl-load.c (_dl_map_object_from_fd): Bail if no PT_LOAD phdrs
7996         found.  Reported by Alexandre Oliva <aoliva@redhat.com>.
7998 2003-03-13  Alexandre Oliva  <aoliva@redhat.com>
8000         * stdio-common/_itoa.c (_itoa_base_table): Make 64-bit
8001         literals long long.
8002         * stdlib/fpioconst.c: Likewise.
8003         * stdlib/strtod.c: Likewise.
8005         * sysdeps/mips/add_n.S: Use L macro for local labels.
8006         * sysdeps/mips/addmul_1.S: Likewise.
8007         * sysdeps/mips/lshift.S: Likewise.
8008         * sysdeps/mips/memcpy.S: Likewise.
8009         * sysdeps/mips/memset.S: Likewise.
8010         * sysdeps/mips/mul_1.S: Likewise.
8011         * sysdeps/mips/rshift.S: Likewise.
8012         * sysdeps/mips/sub_n.S: Likewise.
8013         * sysdeps/mips/submul_1.S: Likewise.
8014         * sysdeps/mips/mips64/add_n.S: Likewise.
8015         * sysdeps/mips/mips64/addmul_1.S: Likewise.
8016         * sysdeps/mips/mips64/lshift.S: Likewise.
8017         * sysdeps/mips/mips64/mul_1.S: Likewise.
8018         * sysdeps/mips/mips64/rshift.S: Likewise.
8019         * sysdeps/mips/mips64/sub_n.S: Likewise.
8020         * sysdeps/mips/mips64/submul_1.S: Likewise.
8021         * sysdeps/unix/mips/sysdep.h: Define L() according to ABI
8022         conventions.  Define END as in sys/asm.h.
8023         * sysdeps/unix/mips/sysdep.S: Likewise.
8024         * sysdeps/unix/mips/wait.S: Likewise.
8025         * sysdeps/unix/sysv/linux/mips/clone.S: Likewise.
8027         * sysdeps/ieee754/dbl-64/dbl2mpn.c (__mpn_extract_double):
8028         Cast shifted values that may be too narrow to mp_limb_t.
8029         * sysdeps/ieee754/dbl-64/mpn2dbl.c (__mpn_construct_double):
8030         Likewise.
8031         * sysdeps/ieee754/flt-32/mpn2flt.c (__mpn_construct_float):
8032         Likewise.
8033         * sysdeps/ieee754/ldbl-128/ldbl2mpn.c
8034         (__mpn_extract_long_double): Likewise.
8035         * sysdeps/ieee754/ldbl-128/mpn2ldbl.c
8036         (__mpn_construct_long_double): Likewise.
8037         * sysdeps/ieee754/ldbl-96/ldbl2mpn.c
8038         (__mpn_extract_long_double): Likewise.
8039         * sysdeps/ieee754/ldbl-96/mpn2ldbl.c
8040         (__mpn_construct_long_double): Likewise.
8042 2003-03-13  Roland McGrath  <roland@redhat.com>
8044         * elf/Makefile ($(objpfx)librtld.mk): Tweak regexp so that one-line
8045         entries in the map file match too.
8047 2003-03-13  Guido Guenther  <agx@sigxcpu.org>
8049         * sysdeps/unix/sysv/linux/mips/clone.S: introduce and use local
8050         label .Lthread_start since current binutils don't allow branches
8051         to globally visible symbols.
8053 2003-03-13  Jakub Jelinek  <jakub@redhat.com>
8055         * sysdeps/unix/sysv/linux/ia64/sysdep.h (BREAK_INSN_1, BREAK_INSN,
8056         ASM_OUTARGS_0, ASM_OUTARGS_1, ASM_OUTARGS_2, ASM_OUTARGS_3,
8057         ASM_OUTARGS_4, ASM_OUTARGS_5, ASM_OUTARGS_6): Define.
8058         (INTERNAL_SYSCALL, INLINE_SYSCALL): Use it.  Make syscall arguments
8059         clobbered by the syscall.
8060         (ASM_ARGS_1, ASM_ARGS_2, ASM_ARGS_3, ASM_ARGS_4, ASM_ARGS_5,
8061         ASM_ARGS_6): Change constraints from r to index of corresponding
8062         output register.
8063         * sysdeps/unix/sysv/linux/ia64/clone2.S (__clone2): Swap
8064         ptid and ctid to match kernel.
8065         * sysdeps/unix/sysv/linux/ia64/system.c (FORK): Likewise.
8067 2003-03-12  Steven Munroe  <sjmunroe@us.ibm.com>
8069         * sysdeps/powerpc/powerpc64/elf/configure.in: Remove
8070         AC_DEFINE(PI_STATIC_AND_HIDDEN).  Not supported for PowerPC64.
8071         * sysdeps/powerpc/powerpc64/elf/configure: Regenerated.
8073 2003-03-11  Roland McGrath  <roland@redhat.com>
8075         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela):
8076         Check SYM_MAP rather than SYM as definedness check.
8077         Handle R_PPC64_ADDR32, R_PPC64_ADDR30, and R_PPC64_REL64 relocs.
8078         Don't handle R_PPC64_REL24 reloc.
8079         Mostly from Steven Munroe <sjmunroe@us.ibm.com>.
8081         * sysdeps/powerpc/powerpc64/dl-machine.h
8082         [USE_TLS] (elf_machine_type_class): Match all the TLS relocs in a
8083         block, so we cover all the TPREL16* flavors without 6 ||s.
8084         [USE_TLS] (elf_machine_tprel): New function.
8085         (elf_machine_rela) [USE_TLS]: Use elf_machine_tprel for TPREL64 reloc,
8086         and handle TPREL16 relocs too.  Return rather than break for DTPREL64.
8087         Mostly from Steven Munroe <sjmunroe@us.ibm.com>.
8089 2003-03-11  Ralf Baechle  <ralf@linux-mips.org>
8091         * sysdeps/unix/sysv/linux/mips/clone.S (__thread_start): Use jal
8092         instead of jalr to invoke subroutine so restoring the $gp register
8093         will work properly.
8095 2003-03-11  Martin Schwidefsky  <schwidefsky@de.ibm.com>
8097         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (__NR_pread64): Define
8098         to __NR_pread if not defined.
8099         (__NR_pwrite64): Define to __NR_pwrite if not defined.
8101 2003-03-11  Jakub Jelinek  <jakub@redhat.com>
8103         * sysdeps/unix/sysv/linux/ia64/system.c: New file.
8104         * sysdeps/unix/sysv/linux/kernel-features.h
8105         (__ASSUME_CLONE_THREAD_FLAGS): Define for IA-64 and s390* with
8106         kernel >= 2.5.64.
8108 2003-03-11  Jakub Jelinek  <jakub@redhat.com>
8110         * sysdeps/generic/dl-sysdep.c (_dl_important_hwcaps): If CNT == 1,
8111         allocate space even for the trailing '/'.
8112         Reported by John Reiser <jreiser@BitWagon.com>.
8114         * sysdeps/unix/sysv/linux/ia64/sysdep.h (LOAD_ARGS_6, ASM_ARGS_6,
8115         ASM_CLOBBERS_6): Define.
8116         (ASM_CLOBBERS_5): Use ASM_CLOBBERS_6.
8117         * sysdeps/unix/sysv/linux/ia64/clone2.S (__clone2): Reorder arguments
8118         to match IA-32 order.
8119         * sysdeps/unix/sysv/linux/i386/clone.S: Fix comment.
8121 2003-03-10  Steven Munroe  <sjmunroe@us.ibm.com>
8123         * sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S: Don't clobber R7.
8124         Copy extra params for NPTL to registers used in clone syscall.
8126 2003-03-10  Martin Schwidefsky  <schwidefsky@de.ibm.com>
8128         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Correct system
8129         call names for pread and pwrite.
8131 2003-03-10  Roland McGrath  <roland@redhat.com>
8133         * dlfcn/Makefile (libdl-routines): Add dladdr1.
8134         * dlfcn/dladdr1.c: New file.
8135         * dlfcn/dlfcn.h [__USE_GNU]: Declare dladdr1.
8136         [__USE_GNU] (RTLD_DL_SYMENT, RTLD_DL_LINKMAP): New enum constants.
8137         * elf/dl-addr.c (_dl_addr): Take new args, a struct link_map ** and
8138         a const ElfNN_Sym ** to fill in.
8139         * include/dlfcn.h: Update decl.  Include <link.h>.
8140         * dlfcn/dladdr.c (dladdr): Update caller.
8141         * malloc/mtrace.c (tr_where): Likewise.
8142         * sysdeps/generic/elf/backtracesyms.c: Likewise.
8143         * sysdeps/generic/elf/backtracesymsfd.c: Likewise.
8144         * dlfcn/Versions (libdl: GLIBC_2.3.3): New set, add dladdr1.
8145         * Versions.def (libdl): Define GLIBC_2.3.3 set.
8147         * sysdeps/unix/make-syscalls.sh: Generate $(compile-syscall) for
8148         assembler command.
8149         * sysdeps/unix/Makefile (compile-syscall): New variable.
8150         Pass -g0 to compiler for assembling syscall stubs from stdin.
8152         * sysdeps/i386/sysdep.h [HAVE_CPP_ASM_DEBUGINFO]
8153         (STABS_CURRENT_FILE, STABS_CURRENT_FILE1, STABS_FUN, STABS_FUN_END):
8154         Define these to do nothing.
8156         * configure.in: New check for -g on .S files.
8157         * configure: Regenerated.
8158         * config.make.in (have-cpp-asm-debuginfo): New variable.
8159         * config.h.in (HAVE_CPP_ASM_DEBUGINFO): New #undef.
8160         * Makeconfig (ASFLAGS): New variable, if undefined and
8161         $(have-cpp-asm-debuginfo), take options matching -g% from $(CFLAGS).
8162         * Makerules (compile.S, COMPILE.S): Use $(ASFLAGS).
8164 2003-03-09  Roland McGrath  <roland@redhat.com>
8166         * sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S: Take 3 new args
8167         used by NPTL on new kernels.  From Paul Mackerras <paulus@samba.org>.
8169 2003-03-09  Ulrich Drepper  <drepper@redhat.com>
8171         * po/fi.po: Update from translation team.
8172         * po/ca.po: Likewise.
8173         * po/da.po: Likewise.
8175 2003-03-08  Ulrich Drepper  <drepper@redhat.com>
8177         * rt/tst-aio7.c (do_test): Change BYTES into a #define.
8179 2003-03-07  Ulrich Drepper  <drepper@redhat.com>
8181         * rt/tst-aio7.c (do_test): Give BUFF permanent extent, too.
8183         * sysdeps/powerpc/fpu/w_sqrt.c: Fix comment.
8185 2003-03-07  Roland McGrath  <roland@redhat.com>
8187         * sysdeps/s390/s390-32/sysdep.h (L): Use .Lfoo instead of foo.
8188         * sysdeps/s390/s390-64/sysdep.h (L): Likewise.
8190 2003-03-04  Guido Guenther  <agx@sigxcpu.org>
8192         * sysdeps/unix/sysv/linux/mips/syscalls.list: Remove unneeded
8193         stubs, we have INLINE_SYSCALL.
8194         * sysdeps/unix/sysv/linux/mips/bits/mman.h: Define MAP_POPULATE,
8195         MAP_NONBLOCK.
8197 2003-03-06  Roland McGrath  <roland@redhat.com>
8199         * rt/tst-aio7.c (do_test): Revert last change.  Instead, give CB1
8200         permanent extent and add a comment about testing its implicit teardown.
8202 2003-03-06  Martin Schwidefsky  <schwidefsky@de.ibm.com>
8204         * rt/tst-aio7.c (do_test): Cancel i/o on CB1 before it's out of scope.
8206 2003-03-05  Ulrich Drepper  <drepper@redhat.com>
8208         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage): Fix
8209         reversed __builtin_expect expectation.
8211 2003-03-05  Roland McGrath  <roland@redhat.com>
8213         * stdio-common/sscanf.c: Use prototype defn with ... syntax.
8214         * libio/swscanf.c: Likewise.
8215         * libio/swprintf.c: Likewise.
8217 2003-03-04  Roland McGrath  <roland@redhat.com>
8219         * sysdeps/powerpc/powerpc64/dl-machine.h: Include <dl-tls.h>.
8220         (elf_machine_rela): Always use RESOLVE_MAP, needed for
8221         R_PPC64_JMP_SLOT as well as TLS cases.
8222         (BIT_INSERT): Move parenthesis where it ought to have been.
8223         Reported by Steven Munroe <sjmunroe@us.ibm.com>.
8225         * posix/confstr.c (confstr): Correct STRING_LEN values for
8226         _CS_GNU_LIBC_VERSION and _CS_GNU_LIBPTHREAD_VERSION, add missing
8227         break.  Reported by Alexandre Julliard <julliard@winehq.com>.
8229 2003-03-04  Jakub Jelinek  <jakub@redhat.com>
8231         * sysdeps/ia64/fpu/libm-test-ulps: Regenerated.
8233 2003-03-04  Ulrich Drepper  <drepper@redhat.com>
8235         * sysdeps/unix/sysv/linux/x86_64/clone.S: Add support for the new
8236         clone parameters.
8238         * po/sv.po: Update from translation team.
8240 2003-03-04  Andreas Jaeger  <aj@suse.de>
8241             Ulrich Drepper  <drepper@redhat.com>
8243         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Fix comments.
8245 2003-03-03  Ulrich Drepper  <drepper@redhat.com>
8247         * sysdeps/generic/dl-sysdep.h: Add double include protection.
8249         * po/tr.po: Update from translation team.
8251         * elf/dl-load.c (_dl_map_object_from_fd): Determine whether there
8252         are holes between the segments.  Only call mprotect to set
8253         proection to PROT_NONE if there are some.
8255         * elf/dl-load.c (struct filebuf): Actually use FILEBUF_SIZE.
8256         Update comment.
8258         * include/sched.h (__clone2): Use ... instead of adding all the
8259         new parameters.
8261 2003-03-03  Roland McGrath  <roland@redhat.com>
8263         * elf/dl-load.c (struct filebuf): Fix typo in last change.
8265         * sysdeps/powerpc/powerpc32/elf/configure.in: Don't define
8266         PI_STATIC_AND_HIDDEN.
8268 2003-03-03  Ian Wienand  <ianw@gelato.unsw.edu.au>
8270         * sysdeps/unix/sysv/linux/ia64/clone2.S: Update to take extra clone
8271         flags.
8272         * include/sched.h: Update clone2 prototype.
8274 2003-03-03  Andreas Jaeger  <aj@suse.de>
8276         * math/tgmath.h (__TGMATH_UNARY_REAL_RET_ONLY): New definition.
8277         (llrint): Use it to correct return type.
8278         (lrint): Likewise.
8279         (lround): Likewise.
8280         (llround): Likewise.
8282 2003-03-03  Ulrich Drepper  <drepper@redhat.com>
8284         * elf/dl-load.c (struct filebuf): For 64-bit platforms use 640
8285         byte filebuf size.
8287         * libio/fileops.c (_IO_new_file_fopen): Close stillborn descriptor
8288         if ccs parameter isn't valid.  Reported by Andreas Schwab.
8290 2003-03-03  Martin Schwidefsky  <schwidefsky@de.ibm.com>
8292         * sysdeps/unix/sysv/linux/s390/s390-32/syscall.S (syscall): Add support
8293         for system call numbers > 255.
8294         * sysdeps/unix/sysv/linux/s390/s390-32/syscall.h (DO_CALL,
8295         INLINE_SYSCALL, INTERNAL_SYSCALL_DIRECT, INTERNAL_SYSCALL_SVC0,
8296         INTERNAL_SYSCALL): Likewise.
8297         * sysdeps/unix/sysv/linux/s390/s390-64/syscall.S (syscall): Likewise.
8298         * sysdeps/unix/sysv/linux/s390/s390-64/syscall.h (DO_CALL,
8299         INLINE_SYSCALL, INTERNAL_SYSCALL_DIRECT, INTERNAL_SYSCALL_SVC0,
8300         INTERNAL_SYSCALL): Likewise.
8302 2003-03-03  Martin Schwidefsky  <schwidefsky@de.ibm.com>
8304         * sysdeps/generic/dl-tls.c (_dl_deallocate_tls): Don't free the dtv
8305         array if it is the initial dtv.
8307 2003-03-03  Ulrich Drepper  <drepper@redhat.com>
8309         * po/es.po: Update from translation team.
8310         * po/fr.po: Likewise.
8311         * po/gl.po: Likewise.
8312         * po/sk.po: Likewise.
8313         * po/sv.po: Likewise.
8315         * sysdeps/unix/sysv/linux/syscalls.list: Add remap_file_pages entry.
8316         * misc/sys/mman.h: Add prototype for remap_file_pages.
8317         * sysdeps/generic/remap_file_pages.c: New file.
8318         * misc/Makefile (routines): Add remap_file_pages.
8319         * misc/Versions [libc:GLIBC_2.3.3]: Add remap_file_pages.
8321         * sysdeps/unix/sysv/linux/x86_64/bits/mman.h: Define MAP_POPULATE
8322         and MAP_NONBLOCK.
8323         * sysdeps/unix/sysv/linux/s390/bits/mman.h: Likewise.
8324         * sysdeps/unix/sysv/linux/powerpc/bits/mman.h: Likewise
8325         * sysdeps/unix/sysv/linux/m68k/bits/mman.h: Likewise.
8326         * sysdeps/unix/sysv/linux/arm/bits/mman.h: Likewise.
8327         * sysdeps/unix/sysv/linux/ia64/bits/mman.h: Likewise.
8328         * sysdeps/unix/sysv/linux/hppa/bits/mman.h: Likewise.
8329         * sysdeps/unix/sysv/linux/alpha/bits/mman.h: Likewise.
8330         * sysdeps/unix/sysv/linux/i386/bits/mman.h: Likewise.
8332 2003-03-03  Roland McGrath  <roland@redhat.com>
8334         * sysdeps/ia64/dl-fptr.c (__ia64_make_fptr): Revert last change.
8335         * sysdeps/ia64/dl-machine.h: Likewise.
8336         * sysdeps/ia64/dl-symaddr.c (_dl_symbol_address): Remove const from
8337         argument type.
8338         * sysdeps/ia64/dl-lookupcfg.h: Update decl.
8340         * sysdeps/wordsize-64/strtol_l.c (strtoll_l): Define as weak alias.
8341         * sysdeps/wordsize-64/strtoul_l.c (strtoull_l): Define as weak alias.
8342         * locale/Versions (libc: GLIBC_2.3): Move those to ...
8343         * sysdeps/wordsize-32/Versions (libc: GLIBC_2.3): ... here, new file.
8344         * sysdeps/wordsize-64/Versions (libc: GLIBC_2.3.3) Likewise.
8345         * Versions.def (libc): Add GLIBC_2.3.3 set.
8347         * sysdeps/ia64/dl-fptr.c (__ia64_make_fptr): Add const to MAP arg.
8348         * sysdeps/ia64/dl-machine.h: Update decl.
8350 2003-03-03  Andreas Jaeger  <aj@suse.de>
8352         * sysdeps/unix/clock_settime.c (HANDLE_REALTIME): Add missing brace.
8354 2003-03-02  Roland McGrath  <roland@redhat.com>
8356         * scripts/abilist.awk: Reject data items with apparent 0 size.
8358         * scripts/merge-abilist.awk: Restore hack to elide pattern foo.*/bar
8359         after foo.* as if it were a duplicate.
8361         * sysdeps/unix/sysv/linux/ia64/brk.S: Add .type and .size for __curbrk.
8363 2003-03-02  Ulrich Drepper  <drepper@redhat.com>
8365         * elf/dl-load.c (struct filebuf): Reduce buf array to 512 bytes.
8367         * sysdeps/generic/bits/time.h: Define CLOCK_MONOTONIC.
8368         * sysdeps/posix/clock_getres.c: Define code for CLOCK_REALTIME only
8369         if not already defined.  Use SYSDEP_GETRES to allow other files to
8370         provide alternative implementations.
8371         * sysdeps/unix/sysv/linux/clock_getres.c: New file
8372         * sysdeps/unix/clock_gettime.c: Define code for CLOCK_REALTIME only
8373         if not already defined.  Use SYSDEP_GETTIME to allow other files to
8374         provide alternative implementations.
8375         * sysdeps/unix/sysv/linux/clock_gettime.c: New file.
8376         * sysdeps/unix/clock_settime.c: Define code for CLOCK_REALTIME only
8377         if not already defined.  Use SYSDEP_GETTIME to allow other files to
8378         provide alternative implementations.
8379         * sysdeps/unix/sysv/linux/clock_settime.c: New file.
8380         * sysdeps/unix/clock_nanosleep.c: Use SYSDEP_NANOSLEEP to allow
8381         other files to provide alternative implementations.  Rearrange
8382         tests for invalid parameters.
8383         * sysdeps/unix/sysv/linux/clock_nanosleep.c: New file.
8384         * sysdeps/unix/sysv/linux/sysconf.c: New file.
8385         * sysdeps/unix/sysv/linux/kernel-features.h: Define
8386         __ASSUME_POSIX_TIMERS for Linux 2.5.63 and up.
8387         * sysdeps/unix/sysv/linux/bits/posix_opt.h: Define
8388         _POSIX_MONOTONIC_CLOCK.
8390 2003-03-02  Roland McGrath  <roland@redhat.com>
8392         * scripts/merge-abilist.awk: More checks for bogus input.
8393         Uniquify duplicate config names.
8395         * scripts/abilist.awk: Don't distinguish weak symbols in normal output.
8397         * sysdeps/powerpc/powerpc32/dl-machine.c (_dl_reloc_overflow): Renamed
8398         from dl_reloc_overflow, make global.
8399         (__process_machine_rela): Update callers.
8400         * sysdeps/powerpc/powerpc32/dl-machine.h: Declare _dl_reloc_overflow.
8401         Add attribute_hidden to __process_machine_rela decl.
8402         (elf_machine_type_class, elf_machine_rela): Handle 16-bit TLS relocs.
8404         * sysdeps/generic/libc-start.c (__libc_start_main): Don't assign const
8405         variable.
8407         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_fixup_plt):
8408         Don't use weak_extern for dl_rtld_map.  Instead check only if [SHARED].
8409         (elf_machine_rela): Clean up.
8411         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Clean up.
8413         PowerPC TLS support contributed by Paul Mackerras <paulus@samba.org>.
8414         * sysdeps/powerpc/powerpc32/elf/configure.in: New file.
8415         * sysdeps/powerpc/powerpc32/elf/configure: New generated file.
8416         * elf/tls-macros.h [__powerpc__ && !__powerpc64__]
8417         (TLS_LE, TLS_IE, TLS_LD, TLS_GD): Define them.
8418         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Support
8419         new relocs for TLS.
8421         * sysdeps/powerpc/dl-tls.h (TLS_TP_OFFSET, TLS_DTV_OFFSET): Move these
8422         macros out of [SHARED].
8423         (TLS_TPREL_VALUE, TLS_DTPREL_VALUE): New macros.
8425         * elf/elf.h: Define R_PPC_* relocs for TLS support.
8426         Clean up R_PPC64_* macro definition comments.
8428         * configure.in: In "running configure fragment for" message,
8429         omit $srcdir from the name if we prepended it.
8430         * configure: Regenerated.
8432         * elf/dl-reloc.c (allocate_static_tls): Fix calculations.
8433         From Jakub Jelinek <jakub@redhat.com>.
8435         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Revert last change,
8436         which duplicated the O_DIRECT defn.
8438 2003-03-01  GOTO Masanori  <gotom@debian.or.jp>
8440         * stdlib/stdlib.h: Add missing __USE_BSD enclosure for BSD derived
8441         random functions.
8443 2003-03-01  Andreas Schwab  <schwab@suse.de>
8445         * resolv/Makefile (tests): Don't depend on
8446         $(objpfx)mtrace-tst-leaks when cross compiling.
8448         * sysdeps/m68k/dl-machine.h (_dl_start_user): Access
8449         __libc_stack_end through GOT since it is a global symbol.
8451 2003-03-01  GOTO Masanori  <gotom@debian.or.jp>
8453         * argp/argp.h: Fix a typo.
8454         Reported by H.S.Teoh <hsteoh@quickfur.ath.cx>.
8456         * manual/terminal.texi: Fix cfmakeraw() definition from int to void.
8458 2003-02-27  Pat Rankin  <rankin@pactechdata.com>
8460         * posix/regexec.c (proceed_next_node): Cast re_string_get_buffer to
8461         char *.
8462         (get_subexp): Likewise.
8464 2003-03-01  GOTO Masanori  <gotom@debian.or.jp>
8466         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (O_DIRECT): Define.
8468 2003-02-26  Steven Munroe  <sjmunroe@us.ibm.com>
8470         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h (O_DIRECT): Define.
8472 2003-02-27  Roland McGrath  <roland@redhat.com>
8474         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela): Remove
8475         special case for dl_rtld_map in R_PPC64_RELATIVE; it's harmless to
8476         repeat it and avoids the test for the common case.
8477         Clean up and fix calculations for TLS relocs.
8479         * sysdeps/powerpc/powerpc64/dl-tls.h: Moved to ...
8480         * sysdeps/powerpc/dl-tls.h: ... here.
8481         (TLS_TP_OFFSET): New macro.
8483         * sunrpc/svc_udp.c (svcudp_recv): Add a cast to last change.
8485 2003-02-27  Ulrich Drepper  <drepper@redhat.com>
8487         * sysdeps/i386/fpu/libm-test-ulps: Increase ULPs for yn due to
8488         code generation changes in recent gcc.
8490 2003-02-26  Steven Munroe  <sjmunroe@us.ibm.com>
8492         * sysdeps/powerpc/fpu/fpu_control.h (_FPU_GETCW, _FPU_SETCW):
8493         Rename argument to avoid symbol conflict.
8495         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h
8496         [__USE_GNU] (O_DIRECT): New macro.
8498 2003-02-24  David Mosberger  <davidm@hpl.hp.com>
8500         * sysdeps/unix/sysv/linux/ia64/sysdep.S (__syscall_error): Fix
8501         unwind info.
8503 2003-02-27  Ulrich Drepper  <drepper@redhat.com>
8505         * resolv/res_libc.c [USE___THREAD] (_res): Don't need the
8506         initializer anymore now that res_thread_freeres is more careful.
8508         * sunrpc/svc_udp.c (svcudp_recv): Remove all control messages
8509         except the PKTINFO.  Reset interface in PKTINFO.
8510         Patch by Neil Brown <neilb@cse.unsw.edu.au> [PR libc/4973].
8512 2003-02-25  Steven Munroe  <sjmunroe@us.ibm.com>
8514         * elf/elf.h: Add new R_PPC64_* relocs for TLS.
8515         * elf/tls-macros.h [__powerpc64__] (TLS_LE, TLS_IE, TLS_LD, TLS_GD):
8516         Define.
8517         * sysdeps/powerpc/powerpc64/elf/configure.in: New file.
8518         * sysdeps/powerpc/powerpc64/elf/configure: New file (generated).
8519         * sysdeps/powerpc/powerpc64/dl-machine.h: Support new TLS relocs.
8520         * sysdeps/powerpc/powerpc64/dl-tls.h: New file.
8522         * sysdeps/powerpc/elf/libc-start.c (__libc_start_main):
8523         Do DL_SYSDEP_OSCHECK here, matching 2002-12-01 change to generic file.
8525 2003-02-25  Andreas Jaeger  <aj@suse.de>
8527         * manual/memory.texi (Malloc Tunable Parameters): Clarify
8528         behaviour of M_MMAP_THRESHOLD.
8530 2003-02-25  Roland McGrath  <roland@redhat.com>
8532         * resolv/res_init.c (res_thread_freeres): Bail out if _res.nscount is
8533         zero, inidicating _res was not initialized yet.
8535 2003-02-24  Ulrich Drepper  <drepper@redhat.com>
8537         * sysdeps/unix/sysv/linux/ttyname_r.c (__ttyname_r): Remove EACCES
8538         test.
8540 2003-02-24  Roland McGrath  <roland@redhat.com>
8542         * sysdeps/posix/pause.c: Add LIBC_CANCEL_HANDLED.
8544 2003-02-23  Roland McGrath  <roland@redhat.com>
8546         * sysdeps/posix/pause.c: New file.
8547         * sysdeps/unix/common/pause.c: File removed.
8549 2003-02-23  Ulrich Drepper  <drepper@redhat.com>
8551         * sysdeps/generic/bits/confname.h: Remove #ifs.
8553         * posix/Makefile (CFLAGS-regex.c): Remove RE_ENABLE_I18N definition.
8554         * posix/regex_internal.h (RE_ENABLE_I18N): Pretty printing.
8556         * resolv/res_libc.c [USE___THREAD] (_res): Initialize _vcsock
8557         element to -1.
8559 2003-02-22  Ulrich Drepper  <drepper@redhat.com>
8561         * sysdeps/generic/dl-sysdep.c: Avoid warning.
8563 2003-02-22  Roland McGrath  <roland@redhat.com>
8565         * resolv/tst-leaks.c: New file by Daniel Jacobowitz <drow@mvista.com>.
8566         * resolv/Makefile (tests): Add tst-leaks.
8567         ($(objpfx)tst-leaks): Depend on $(objpfx)libresolv.so.
8568         (tst-leaks-ENV): New variable.
8569         ($(objpfx)mtrace-tst-leaks): New target.
8570         (tests): Depend on it.
8572         * include/libc-internal.h: Declare __libc_thread_freeres.
8574         * Makerules: Fix last change to use $($(subdir)-version) when set.
8576         * Makerules (install-lib-nosubdir): Depend on installed
8577         libfoo-X.Y.Z.so and libfoo.so.NN files so they are installed
8578         regardless of the libfoo.so target's dependencies.
8580         * MakeTAGS (sub-make-vars): New variable, includes generating=t.
8581         Use that in $(MAKE) calls.
8583 2003-02-22  Ulrich Drepper  <drepper@redhat.com>
8585         * catgets/gencat.c (read_input_file): Collision between
8586         auto-assigned numbers and user-defined nubmers is not fatal.
8587         Handle it.
8588         Patch by Michael M. Lampkin <michael.lampkin@ieee.org>.
8589         * catgets/Makefile: Add rules to run test2.msg test.
8590         * catgets/test2.msg: New file.
8592         * catgets/gencat.c (main): Return 1 if messages have been printed.
8594         * iconv/iconv_prog.c (main): Unify messages.
8596         * stdlib/strtod.c (INTERNAL): Remove bogus clearing of second word
8597         when shifting retval.
8598         * stdlib/tst-strtod.c (main): Add strtold test case.
8599         Reported by Fred J. Tydeman <tydeman@tybor.com>.
8601 2003-02-21  Roland McGrath  <roland@redhat.com>
8603         * malloc/thread-freeres.c: Conditionalize on _LIBC_REENTRANT.
8604         * sunrpc/rpc_thread.c: Likewise for text_set_element use.
8605         (__rpc_thread_destroy): Add it to __libc_subfreeres too.
8607         * include/resolv.h: Add libc_hidden_proto for __res_nclose.
8608         * resolv/res_init.c (__res_nclose): Add libc_hidden_def.
8609         (res_thread_freeres): New function, on __libc_thread_subfreeres and
8610         __libc_subfreeres.
8612         * malloc/Versions (libc: GLIBC_PRIVATE): Add __libc_thread_freeres.
8613         * malloc/thread-freeres.c: New file.
8614         * malloc/Makefile (aux): Add it.
8615         * sunrpc/Versions (libc: GLIBC_PRIVATE): Removed.
8616         * sunrpc/rpc_thread.c (__rpc_thread_destroy): Put in special section
8617         "__libc_thread_freeres_fn" and add to __libc_thread_subfreeres set.
8619         * sysdeps/unix/sysv/linux/i386/geteuid.c (__geteuid): Typo fix.
8620         * sysdeps/unix/sysv/linux/i386/getgid.c (__getgid): Typo fix.
8622 2003-02-21  Roland McGrath  <roland@frob.com>
8624         * sysdeps/mach/hurd/opendir.c (__opendir): Use O_NONBLOCK in open.
8626         * iconvdata/Makefile (tests): Add bug-iconv3 only if
8627         [$(have-thread-library) = yes].
8629 2003-02-21  Ulrich Drepper  <drepper@redhat.com>
8631         * sysdeps/unix/sysv/linux/bits/signum.h (__SIGRTMAX): Define as _NSIG.
8633         * sysdeps/unix/sysv/linux/i386/getuid.c: Use INTERNAL_SYSCALL and do
8634         not chechk for errors (unless testing for 32bit variant).
8635         * sysdeps/unix/sysv/linux/i386/getgid.c: Likewise.
8636         * sysdeps/unix/sysv/linux/i386/geteuid.c: Likewise.
8637         * sysdeps/unix/sysv/linux/i386/getegid.c: Likewise.
8639 2003-02-21  Jakub Jelinek  <jakub@redhat.com>
8641         * sysdeps/x86_64/dl-machine.h (elf_machine_rela) <R_X86_64_PC32>:
8642         Check for signed overflow, not unsigned.
8644         * sysdeps/sparc/sparc64/elf/configure.in: New file.
8645         * sysdeps/unix/sysv/linux/sparc/sparc64/Makefile (sysdep-CFLAGS):
8646         Use -fcall-used-g6, not -fcall-used-g7.
8648 2003-02-21  Andreas Jaeger  <aj@suse.de>
8650         * sysdeps/x86_64/fpu/fesetenv.c (fesetenv): Fix setting of default
8651         mode.
8653         * sysdeps/x86_64/fpu/fsetexcptflg.c (fesetexceptflag): Do not
8654         clear whole mxcsr but only exceptions.
8656 2003-02-21  Roland McGrath  <roland@redhat.com>
8658         * Makerules: Filter $(install-lib-ldscripts) out of list of targets
8659         for libfoo.so that need $(make-link) rules.
8661 2003-02-21  Roland McGrath  <roland@frob.com>
8663         * sysdeps/mach/hurd/bits/typesizes.h (__DEV_T_TYPE): Use __U32_TYPE
8664         to match existing struct stat layout in mig protocols.
8666 2003-02-20  Ulrich Drepper  <drepper@redhat.com>
8668         * version.h (VERSION): Bump to 2.3.2.
8670         * elf/Makefile (distribute): Add reldep9.c, tst-array1.exp,
8671         tst-array2.exp, tst-array4.exp, tst-array2dep.c, check-textrel.c,
8672         and dl-sysdep.h.
8673         * sysdeps/generic/Dist: Add sysdep-cancel.h.
8674         * sysdeps/powerpc/nofpu/Dist: Add soft-supp.h.
8675         * sysdeps/unix/Dist: Add s-proto-bp.S and s-proto-cancel.S.
8676         * sysdeps/unix/sysv/linux/Dist: Add pathconf.h.
8677         * sysdeps/unix/sysv/linux/i386/Dist: Add bp-thunk.h.
8678         * sysdeps/unix/sysv/linux/powerpc/powerpc64/Dist: Add fe_nomask.c and
8679         ucontext_i.h.
8680         * Makefile (distribute): Add include/stubs-prologue.h,
8681         include/gnu/stubs.h, scripts/merge-abilist.awk, and
8682         scripts/extract-abilist.awk.
8684 2003-02-20  Roland McGrath  <roland@redhat.com>
8686         * math/Makefile (distribute): Don't add generated files.
8688 2003-02-20  Ulrich Drepper  <drepper@redhat.com>
8690         * math/Makefile: Rearrange variable definitions slightly to get
8691         definition in the right order.
8693 2003-02-20  Roland McGrath  <roland@redhat.com>
8695         * Makerules: Clean up conditional around include of tls.make.
8696         * Make-dist: Export generating=t to prevent using that.
8697         (+distinfo): Likewise for $(shell $(MAKE) ...) runs.
8699 2003-02-20  Ulrich Drepper  <drepper@redhat.com>
8701         * inet/rcmd.c (rresvport_af): Avoid using invliad values.  Wrap
8702         around in search if port IPPORT_RESERVED/2 has been test.
8704 2003-02-20  Paolo Bonzini  <bonzini@gnu.org>
8706         * posix/regcomp.c: Remove inclusions.
8707         * posix/regexec.c: Likewise.
8708         * posix/regex_internal.c: Likewise.
8709         * posix/regex_internal.h: Add inclusions here.
8710         * posix/regex.c: Only include sys/types.h before regex.h.  Include
8711         regex_internal.h here.  Include regex_internal.c before regcomp.c
8712         and regexec.c (might expose more opportunities to the C compiler).
8714         * posix/regcomp.c (parse_expression): Fix construct rejected by SGI CC.
8716         * posix/regex_internal.h [!_LIBC] (__mempcpy): Fix typo.
8717         [!_LIBC] (__wcrtomb): New definition.
8718         [!_LIBC]: Conditionalize enabling of I18N on HAVE_WCSCOLL and
8719         HAVE_LOCALE_H as well.
8721 2003-02-20  Ulrich Drepper  <drepper@redhat.com>
8723         * sysdeps/unix/sysv/linux/tcsetattr.c (tcsetattr): Remove obsolete
8724         patch to check for system call errors.
8726 2002-07-24  Philip Blundell  <philb@gnu.org>
8728         * sysdeps/unix/sysv/linux/arm/ioperm.c (init_iosys): Yield ENODEV
8729         on unknown systems.
8731 2003-02-20  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
8733         * sysdeps/powerpc/powerpc32/atomicity.h: Remove compiler workaround.
8734         * sysdeps/unix/sysv/linux/kernel-features.h
8735         (__ASSUME_NEW_PRCTL_SYSCALL): Defined for ppc32 too.
8736         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fe_nomask.c: Use prctl
8737         if possible.
8738         * sysdeps/unix/sysv/linux/powerpc/powerpc32/vfork.S: Avoid short
8739         interprocedure branches.
8740         * sysdeps/powerpc/soft-fp/Dist (sim-full.c, fenv_const.c): Move to...
8741         * sysdeps/powerpc/nofpu/Dist: ...here.
8742         * sysdeps/unix/sysv/linux/powerpc/Dist (fe_nomask.c): Move to...
8743         * sysdeps/unix/sysv/linux/powerpc/powerpc32/Dist: ...here.
8744         * sysdeps/unix/sysv/linux/s390/s390-64/Dist (kernel_stat.h): Delete.
8745         * sysdeps/unix/sysv/linux/sparc/Dist (bits/utmpx.h): Delete.
8746         * sysdeps/unix/sysv/linux/x86_64/Dist (bits/utmpx.h): Delete.
8748 2003-02-18  Alan Modra  <amodra@bigpond.net.au>
8750         * sysdeps/powerpc/powerpc32/sysdep.h (HIDDEN_JUMPTARGET): Redefine.
8752 2003-02-20  Philip Blundell  <philb@gnu.org>
8754         * sysdeps/unix/sysv/linux/arm/sysdep.h (INLINE_SYSCALL): Add
8755         missing arguments to INTERNAL_SYSCALL_ERROR_P and
8756         INTERNAL_SYSCALL_ERRNO.
8758 2003-02-20  Martin Schwidefsky  <schwidefsky@de.ibm.com>
8760         * sysdeps/unix/sysv/linux/s390/s390-32/chown.c (__real_chown): Test
8761         for __ASSUME_32BITUIDS.
8763 2003-02-20  Andreas Schwab  <schwab@suse.de>
8765         * sysdeps/unix/sysv/linux/m68k/bits/mman.h: Add MADV_* and
8766         POSIX_MADV_* constants.
8768 2003-02-20  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
8770         * sysdeps/unix/sysv/linux/sh/pread.c: New file.
8771         * sysdeps/unix/sysv/linux/sh/pread64.c: New file.
8772         * sysdeps/unix/sysv/linux/sh/pwrite.c: New file.
8773         * sysdeps/unix/sysv/linux/sh/pwrite64.c: New file.
8775 2003-02-19  Jiro Sekiba  <jir@yamato.ibm.com>
8777         * iconvdata/utf-16.c (gconv_end): Fix range of low surrogate.
8779 2003-02-16  Roland McGrath  <roland@redhat.com>
8781         * signal/signal.h: Include <sys/ucontext.h>, not <ucontext.h>.
8783 2003-02-19  Ulrich Drepper  <drepper@redhat.com>
8785         * stdlib/strtod.c (INTERNAL): Up the safety margin for cutting off
8786         decimal input digits.
8787         * stdlib/tst-strtod.c (main): Add test for strtof bug.
8789 2003-02-18  Ulrich Drepper  <drepper@redhat.com>
8791         * sysdeps/unix/sysv/linux/ttyname_r.c (__ttyname_r): Recognize
8792         invalid file descriptors and missing access permissions.
8794 2003-02-17  Ulrich Drepper  <drepper@redhat.com>
8796         * nss/getXXbyYY_r.c (REENTRANT_NAME): Return 0 if no entry has
8797         been found.
8799         * sysdeps/posix/sysconf.c (__sysconf): Test for LOGIN_NAME_MAX and
8800         TTY_NAME_MAX and not the _POSIX_* minimal value macros.
8801         * sysdeps/unix/sysv/linux/bits/local_lim.h: Define TTY_NAME_MAX
8802         and LOGIN_NAME_MAX.
8804 2003-02-17  Kevin B. Hendricks  <kevin.hendricks@sympatico.ca>
8805             Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
8807         * sysdeps/powerpc/elf/libc-start.c: Handle NONTLS_INIT_TP.
8808         * sysdeps/powerpc/powerpc32/__longjmp.S: Remove R2 handling.
8809         * sysdeps/powerpc/powerpc32/setjmp.S: Likewise.
8810         * sysdeps/powerpc/powerpc32/fpu/__longjmp.S: Likewise.
8811         * sysdeps/powerpc/powerpc32/fpu/setjmp.S: Likewise.
8813 2003-02-17  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
8815         * sysdeps/unix/sysv/linux/powerpc/ftruncate64.c: Delete.
8816         * sysdeps/unix/sysv/linux/powerpc/truncate64.c: Delete.
8817         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Delete.
8818         * sysdeps/unix/sysv/linux/powerpc/pread.c: Delete.
8819         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Delete.
8820         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Delete.
8822         * sysdeps/unix/sysv/linux/powerpc/fe_nomask.c: Move file...
8823         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fe_nomask.c: ...here.
8824         * sysdeps/unix/sysv/linux/powerpc/glob64.c: Move file...
8825         * sysdeps/unix/sysv/linux/powerpc/powerpc32/glob64.c: ...here.
8827         * sysdeps/unix/sysv/linux/tcgetattr.c: Use INLINE_SYSCALL.
8828         * sysdeps/unix/sysv/linux/tcsetattr.c: Likewise.
8829         * sysdeps/unix/sysv/linux/powerpc/tcgetattr.c: Delete.
8830         * sysdeps/unix/sysv/linux/powerpc/tcsetattr.c: Delete.
8832 2003-02-14  Thorsten Kukuk  <kukuk@suse.de>
8834         * nss/getent.c (print_hosts): Print all IP addresses of one host.
8836 2003-02-15  Roland McGrath  <roland@frob.com>
8838         * sysdeps/mach/hurd/tls.h: New file.
8839         * sysdeps/mach/hurd/i386/tls.h: New file.
8841         * mach/errsystems.awk: Include <errno.h> in generated output.
8843         * sysdeps/mach/Makefile (mach-before-compile rule): Pass generating=t,
8844         use target mach-before-compile instead of generated.
8845         (mach-before-compile): New target.
8846         * Makerules: Disable use of tls.make if $(generating) is set.
8847         * mach/Makefile: Include mach-syscalls.mk even if no_deps=t.
8848         * sysdeps/mach/hurd/Makefile: Make generated hurd headers depend on
8849         mach-shortcuts.h so mach/ generation happens before hurd/.
8851 2003-02-14  Ulrich Drepper  <drepper@redhat.com>
8853         * sysdeps/i386/fpu/s_nextafterl.c: Decrement high word of mantissa
8854         of demorm correctly if low word is zero.
8855         Reported by Fred J. Tydeman <tydeman@tybor.com>.
8856         * math/libm-test.inc (nextafter_test): New test, but disabled due
8857         to gcc bug.
8859         * sysdeps/generic/libc-start.c [HAVE_PTR_NTHREADS]: Decrement thread
8860         counter and only call __exit_thread if this is not the last thread.
8862 2003-02-13  Jakub Jelinek  <jakub@redhat.com>
8864         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Add instead of
8865         subtracting map->l_tls_offset.
8867 2003-02-12  Ulrich Drepper  <drepper@redhat.com>
8869         * sysdeps/generic/bits/confname.h: Define _CS_GNU_LIBC_VERSION and
8870         _CS_GNU_LIBPTHREAD_VERSION.
8871         * posix/conststr.c: Handle these new values.
8872         * posix/getconf.c: Likewise.
8874         * sysdeps/mips/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE): Fix
8875         masking of version index.
8876         Patch by Lance Larsh <Lance.Larsh@oracle.com>.
8878 2003-02-11  Ulrich Drepper  <drepper@redhat.com>
8880         * nss/nss_files/files-hosts.c (HOST_DB_LOOKUP): Compute alignment
8881         correctly.  Reported by Thorsten Kukuk.
8883 2003-02-10  Ulrich Drepper  <drepper@redhat.com>
8885         * elf/Makefile (check-textrel-CFLAGS): Pass _XOPEN_SOURCE and
8886         _BSD_SOURCE to compiler.
8887         * elf/check-textrel.c (SWAP): Add parenthesis to avoid warnings.
8888         Patches by Alan Modra.
8890 2003-02-08  Ulrich Drepper  <drepper@redhat.com>
8892         * io/ftwtest.c: Get current working directory before and after the
8893         nftw call and make sure they match.
8895 2003-02-08  Jim Meyering  <jim@meyering.net>
8897         * io/ftw.c (ftw_startup): When using FTW_CHDIR, always remember
8898         the current directory, not just when DIR contains a slash.
8899         Reported by Manoj Srivastava.
8901 2003-02-07  Jim Meyering  <jim@meyering.net>
8903         * io/ftw.c: Add autoconf-recommended block of alloca-related code.
8904         Include autoconf-recommended block of dirent/NAMELEN-related
8905         definitions and includes.  Use NAMELEN throughout, rather than
8906         _D_EXACT_NAMLEN.
8907         [_LIBC]: Define NAMELEN to _D_EXACT_NAMLEN.
8908         [!_LIBC] (__getcwd): Define to xgetcwd and declare xgetcwd.
8909         (stpcpy): Declare, if necessary.
8910         (mempcpy): Define, if necessary.
8911         [!_LIBC] (__stpcpy, __mempcpy): Define.
8912         [!_LIBC] (LXSTAT, XSTAT): Define.
8913         (lstat) [!LIBC && !LSTAT_FOLLOWS_SLASHED_SYMLINK]: Define to rpl_lstat.
8914         (find_object): Don't use c99-style struct initializer.
8915         Tweak wording in a couple comments.
8917 2003-02-07  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
8919         * elf/tls-macros.h: Add non-PIC TLS macros and fix clobber list
8920         for SH.
8921         * sysdeps/unix/sysv/linux/sh/brk.c: Add SYSCALL_INST_PAD
8922         after the trapa instruction.
8923         * sysdeps/unix/sysv/linux/sh/clone.S (__clone): Add additional
8924         parameters.
8925         * sysdeps/unix/sysv/linux/sh/sh4/sysdep.h: New file.
8926         (NEED_SYSCALL_INST_PAD): Define.
8927         * sysdeps/unix/sysv/linux/sh/sys/user.h (start_thread): Undef to
8928         avoid to use definition for the kernel.
8929         * sysdeps/unix/sysv/linux/sh/sysdep.h (SYSCALL_ERROR_HANDLER):
8930         Save and restore the frame pointer.
8931         (SYSCALL_INST_PAD): Define.
8932         (INLINE_SYSCALL): Make use of INTERNAL_SYSCALL.
8933         (INTERNAL_SYSCALL): Make use of ERR parameter. Add SYSCALL_INST_PAD
8934         after trapa instruction.
8935         (INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
8936         INTERNAL_SYSCALL_ERROR_P): Adjust accordingly.
8938 2003-02-07  Jakub Jelinek  <jakub@redhat.com>
8940         * resolv/res_libc.c (_res): Ensure _res is not common symbol,
8941         so that it can have aliases.
8942         * inet/herrno.c (h_errno): Put it into .bss not .data section.
8944 2003-02-07  Ulrich Drepper  <drepper@redhat.com>
8946         * elf/dl-runtime.c (fixup): Correct typo in version index computation.
8947         (profile_fixup): Likewise.
8948         Patch by Lance Larsh <Lance.Larsh@oracle.com>.
8950 2002-11-24  Robert Love  <rml@tech9.net>
8952         * posix/sched.h: Second parameter of sched_setaffinity and
8953         sched_getaffinity is `unsigned int', not `unsigned long'.
8954         * sysdeps/generic/sched_setaffinity.c: Likewise.
8955         * sysdeps/generic/sched_getaffinity.c: Likewise.
8957 2003-02-05  Ulrich Drepper  <drepper@redhat.com>
8959         * debug/catchsegv.sh: Fix typo in error messsage.
8960         Reported by John Levon <levon@movementarian.org>.
8962         * sysdeps/unix/sysv/linux/posix_fadvise.c: New file.
8963         * sysdeps/unix/sysv/linux/syscalls.list: Add posix_fadvise64 syscall.
8964         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Likewise.
8965         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
8966         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Likewise.
8967         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
8968         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
8970         * libio/putwc_u.c: Use _IO_putwc_unlocked, not _IO_putc_unlocked.
8971         Patch by Moritz Schulte <moritz@duesseldorf.ccc.de>.
8973 2003-02-05  Jim Meyering  <jim@meyering.net>
8975         Fix a heap-corrupting bug.
8976         * io/ftw.c: Include <limits.h>.
8977         (PATH_MAX) [!defined PATH_MAX]: Define to 1024.
8978         (process_entry): Allocate enough space to hold the resulting
8979         file name.  Don't presume that 2*dirbufsize is enough.
8980         (ftw_startup): Always use PATH_MAX to compute buffer size, now that
8981         it is guaranteed to be defined.
8983 2003-02-04  Ulrich Drepper  <drepper@redhat.com>
8985         * iconvdata/Makefile: Add rules to build and run bug-iconv3.
8986         * iconvdata/bug-iconv3.c: New file.
8988 2003-02-04  Martin Schwidefsky  <schwidefsky@de.ibm.com>
8990         * sysdeps/unix/sysv/linux/s390/system.c: New file.
8992 2003-02-03  Jakub Jelinek  <jakub@redhat.com>
8994         * sysdeps/sparc/sparc32/elf/configure.in (BROKEN_SPARC_WDISP22): New
8995         check.
8996         * config.h.in (BROKEN_SPARC_WDISP22): Add.
8998 2003-02-03  Ulrich Drepper  <drepper@redhat.com>
9000         * sysdeps/i386/i686/memmove.S: New file.
9002 2003-01-31  Steven Munroe  <sjmunroe@us.ibm.com>
9004         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c:
9005         Include kernel-features.h
9006         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: Likewise.
9007         * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S: Likewise.
9008         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: Likewise.
9009         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Likewise.
9011 2003-02-02  Jakub Jelinek  <jakub@redhat.com>
9013         * elf/tls-macros.h [sparc] (TLS_LD, TLS_GD): Add "cc" clobbers.
9015 2003-01-25  Jim Meyering  <jim@meyering.net>
9017         * io/ftw.c (object_compare): Compare inode numbers before device
9018         numbers, since the former are much more likely to differ.
9020 2003-02-01  Ulrich Drepper  <drepper@redhat.com>
9022         * time/tzfile.c (__tzfile_compute): Change return value type to
9023         void.  Adjust return statements.
9024         * include/time.h (__tzfile_compute): Adjust prototype.
9026 2003-02-01  Jim Meyering  <jim@meyering.net>
9028         * time/tzset.c (__tz_convert): Remove dead code; __tzfile_compute
9029         always returns 1.
9031 2003-01-31  Steven Munroe  <sjmunroe@us.ibm.com>
9033         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c
9034         [!__ASSUME_NEW_PRCTL_SYSCALL]: Noop prctl syscall and set ENOSYS.
9036 2003-01-31  Steven Munroe  <sjmunroe@us.ibm.com>
9038         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S
9039         [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Generate ENOSYS stub.
9040         * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S
9041         [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Likewise.
9042         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S
9043         [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Likewise.
9044         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S
9045         [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Likewise.
9047 2003-01-31  Steven Munroe  <sjmunroe@us.ibm.com>
9049         * sysdeps/unix/sysv/linux/configure.in: Change arch_minimum_kernel
9050         back to 2.4.19 for powerpc64.
9051         * sysdeps/unix/sysv/linux/kernel-features.h
9052         (__ASSUME_NEW_PRCTL_SYSCALL): Define for powerpc64.
9053         (__ASSUME_NEW_RT_SIGRETURN_SYSCALL): Define for powerpc64.
9055 2003-02-01  Ulrich Drepper  <drepper@redhat.com>
9057         * wcsmbs/wcscpy.c (wcscpy): Add alternative implementation for
9058         platforms with strange alignment requirements on wchar_t.
9060 2003-01-31  Andreas Schwab  <schwab@suse.de>
9062         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Remove __GI_*
9063         aliases, already added by make-syscalls.sh.
9064         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
9065         * sysdeps/unix/sysv/linux/hppa/syscalls.list: Likewise.
9066         * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise.
9067         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
9068         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
9069         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
9070         * sysdeps/unix/sysv/linux/syscalls.list: Likewise.
9071         * sysdeps/unix/inet/syscalls.list: Likewise.
9072         * sysdeps/unix/syscalls.list: Likewise.
9074 2003-01-31  Andreas Schwab  <schwab@suse.de>
9076         * sysdeps/m68k/Makefile (sysdep-CFLAGS): Don't define, not needed
9077         any more.
9079 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
9081         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S (__clone): Use lg,
9082         not l to load tls from stack.
9084 2003-01-30  Roland McGrath  <roland@redhat.com>
9086         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Move check for
9087         null argument before all else.
9088         Reported by Martin Schwidefsky <schwidefsky@de.ibm.com>.
9090 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
9092         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_lazy_rel):
9093         Move to RESOLVE protected part of the header.
9094         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_lazy_rel):
9095         Likewise.
9097 2003-01-30  Ulrich Drepper  <drepper@redhat.com>
9099         * stdio-common/Makefile (tests): Add bug15.
9100         (bug15-ENV): Define.
9101         * stdio-common/bug15.c: New file.
9103 2002-10-07  Wolfram Gloger  <wg@malloc.de>
9105         * malloc/malloc.c (sYSMALLOc): Only check for breakage due
9106         to foreign sbrk()'s if arena is contiguous.  Bug report from
9107         Bruno Haible <bruno@clisp.org>.
9109 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
9111         * sysdeps/s390/libc-tls.c: Include stdlib.h.
9113 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
9115         * stdio-common/vfprintf.c (vfprintf): Only subtract lowest 3 bits of
9116         ps.__count.
9118 2003-01-30  Ulrich Drepper  <drepper@redhat.com>
9120         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S: Fix storing and
9121         restoring of %r6.
9122         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S: Likewise.  Use
9123         64-bit load.
9124         Patch by Martin Schwidefsky  <schwidefsky@de.ibm.com>.
9126 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
9128         * elf/dl-reloc.c (CHECK_STATIC_TLS): Move _dl_signal_error...
9129         (allocate_static_tls): ...here.  Add __attribute_noinline__.
9130         Don't return on failure.
9131         (_dl_reloc_bad_type): Add __attribute_noinline__.
9132         * elf/do-rel.h (elf_dynamic_do_rel): Add
9133         __attribute__((always_inline)).
9134         * elf/dynamic-link.h (elf_machine_rel, elf_machine_rela,
9135         elf_machine_rel_relative, elf_machine_rela_relative,
9136         elf_machine_lazy_rel): Add prototypes with
9137         __attribute__((always_inline)).
9139 2003-01-29  David Mosberger  <davidm@hpl.hp.com>
9141         * elf/dl-support.c (_dl_aux_init): Handle AT_SYSINFO.
9143 2003-01-29  Roland McGrath  <roland@redhat.com>
9145         * configure.in: Barf if configured in $srcdir.
9147 2003-01-28  Steven Munroe  <sjmunroe@us.ibm.com>
9149         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c
9150         (__fe_nomask_env): Change __prctl call to INTERNAL_SYSCALL.
9152 2003-01-28  Martin Schwidefsky  <schwidefsky@de.ibm.com>
9154         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S: Reorder additional
9155         clone parameters to match the order used on ia32.
9156         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S: Likewise.
9158 2003-01-27  Martin Schwidefsky  <schwidefsky@de.ibm.com>
9160         * elf/elf.h: Add new s390 relocs.
9161         * elf/tls-macros.h: Add s390 versions.
9162         * sysdeps/s390/Versions [GLIBC_2.3] (ld): Export __tls_get_offset.
9163         * sysdeps/s390/dl-tls.h: New file.
9164         * sysdeps/s390/libc-tls.c: New file.
9165         * sysdeps/s390/s390-32/dl-machine.h (elf_machine_type_class): Add TLS
9166         relocs for class PLT.
9167         (elf_machine_rela): Handle TLS relocs.
9168         * sysdeps/s390/s390-64/dl-machine.h: Likewise.
9169         * sysdeps/s390/s390-32/elf/configure.in: Add TLS check.
9170         * sysdeps/s390/s390-64/elf/configure.in: Likewise.
9171         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S: Add support for
9172         CLONE_CHILD_*TID flags.
9173         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S: Likewise.
9174         * sysdeps/unix/sysv/linux/s390/s390-64/mmap.S: Use branch with 32
9175         bit offset.
9176         * sysdeps/unix/sysv/linux/s390/s390-64/socket.S: Likewise.
9177         * sysdeps/unix/sysv/linux/s390/s390-64/syscall.S: Likewise.
9178         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S (__syscall_error):
9179         Support USE___THREAD. Define RTLD_PRIVATE_ERRNO variant.
9180         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S (__syscall_error):
9181         Likewise.
9182         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h:
9183         (SYSCALL_ERROR_LABEL): Move define next to SYSCALL_ERROR_HANDLER.
9184         (SYSCALL_ERROR_HANDLER): Add USE___THREAD and RTLD_PRIVATE_ERRNO
9185         variants.
9186         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h:
9187         (SYSCALL_ERROR_LABEL): Move define next to SYSCALL_ERROR_HANDLER. Use
9188         direct branch to syscall_error for !PIC and PIC && !_LIBC_REENTRANT.
9189         (SYSCALL_ERROR_HANDLER): Add USE___THREAD and RTLD_PRIVATE_ERRNO
9190         variants.
9192 2003-01-28  Ulrich Drepper  <drepper@redhat.com>
9194         * sysdeps/unix/common/pause.c (do_pause): New function.  Split
9195         from __libc_pause.  Implement using sigsuspend.
9196         (__libc_pause): Call do_pause to do the real work.
9198         * sysdeps/posix/sigpause.c (do_sigpause): Check range of
9199         sig_or_mask parameter is is_sig != 0.
9201 2003-01-21  Philip Blundell  <philb@gnu.org>
9203         * sysdeps/unix/sysv/linux/bits/ioctls.h (SIOCSIFNAME): Define.
9205 2003-01-27  Steven Munroe  <sjmunroe@us.ibm.com>
9207         * stdio-common/Makefile: Add bug14-ENV to set LOCPATH for make check.
9209 2003-01-27  Ulrich Drepper  <drepper@redhat.com>
9211         * stdio-common/bug14.c: Use official name for the locale.
9213         * stdio-common/vfprintf.c [USE_IN_LIBIO]: Use _IO_cleanup_region_start
9214         instead of __libc_cleanup_region_start and _IO_cleanup_region_end
9215         instead of __libc_cleanup_region_end.
9217         * sysdeps/unix/sysv/linux/i386/system.c (CLEANUP_HANDLER): Pass 1
9218         as first parameter to __libc_cleanup_region_start.
9220         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c
9221         (__fe_nomask_env): Use __prctl not prctl.
9222         * sysdeps/unix/sysv/linux/syscalls.list: Add __prctl alias for
9223         prctl syscall.
9225         * elf/dl-reloc.c (CHECK_STATIC_TLS): Improve error message.
9227         * elf/dl-open.c (_dl_tls_static_size): Bump to 2048.
9229         * elf/dl-reloc.c (allocate_static_tls): Avoid arithmetic
9230         wrap-around in test.
9232 2003-01-26  Andreas Schwab  <schwab@suse.de>
9234         * sysdeps/wordsize-32/divdi3.c: Export the functions only as
9235         compatibility symbols.  Remove INTDEF for __divdi3.
9236         * sysdeps/wordsize-32/lldiv.c: Don't use __divdi3_internal.
9237         * sysdeps/powerpc/powerpc32/divdi3.c: Remove.
9238         * sysdeps/powerpc/powerpc32/Makefile (CPPFLAGS-divdi3.c): Don't
9239         define.
9240         * sysdeps/powerpc/powerpc32/Dist: Remove divdi3.c.
9242 2003-01-24  Jakub Jelinek  <jakub@redhat.com>
9244         * elf/tls-macros.h: Add SPARC 32-bit definitions.
9245         * sysdeps/sparc/sparc32/elf/configure.in: Add TLS check.
9246         * sysdeps/sparc/sparc32/dl-machine.h: Add dl_machine_h guards
9247         for the first half of the header.  Include tls.h.
9248         (elf_machine_type_class): Return ELF_RTYPE_CLASS_PLT for TLS
9249         relocs too.
9250         (elf_machine_rela): Handle TLS relocs.
9251         * sysdeps/sparc/dl-tls.h: New file.
9253         * sysdeps/unix/sysv/linux/sparc/sparc32/socket.S: Add cancellation
9254         support.
9256         * sysdeps/sparc/sparc32/sparcv9/hp-timing.h: Use %g6 instead of %g7.
9257         * sysdeps/sparc/sparc32/memchr.S: Likewise.
9258         * sysdeps/sparc/sparc32/memcpy.S: Likewise.
9259         * sysdeps/sparc/sparc32/strcat.S: Likewise.
9260         * sysdeps/sparc/sparc32/strchr.S: Likewise.
9261         * sysdeps/sparc/sparc32/strcmp.S: Likewise.
9262         * sysdeps/sparc/sparc32/strcpy.S: Likewise.
9263         * sysdeps/sparc/sparc64/sparcv9b/memcpy.S: Likewise.
9264         * sysdeps/sparc/sparc64/hp-timing.h: Likewise.
9265         * sysdeps/sparc/sparc64/memcpy.S: Likewise.
9266         * sysdeps/sparc/sparc64/stpcpy.S: Likewise.
9267         * sysdeps/sparc/sparc64/stpncpy.S: Likewise.
9268         * sysdeps/sparc/sparc64/strcat.S: Likewise.
9269         * sysdeps/sparc/sparc64/strchr.S: Likewise.
9270         * sysdeps/sparc/sparc64/strcmp.S: Likewise.
9271         * sysdeps/sparc/sparc64/strcpy.S: Likewise.
9272         * sysdeps/sparc/sparc64/strncmp.S: Likewise.
9273         * sysdeps/sparc/sparc64/strncpy.S: Likewise.
9274         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Likewise.
9275         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h: Likewise.
9277 2003-01-24  Andreas Schwab  <schwab@suse.de>
9279         * elf/dl-close.c (_dl_close): Don't relocate DT_FINI_ARRAY
9280         elements, and process them backwards.
9281         * elf/Makefile ($(objpfx)tst-array4): New target.
9282         ($(objpfx)tst-array4.out): Likewise.
9283         (tests) [$(have-initfini-array) = yes]: Add tst-array4.
9284         * elf/tst-array4.c: New file.
9285         * elf/tst-array4.exp: Likewise.
9287 2003-01-24  Steven Munroe  <sjmunroe@us.ibm.com>
9289         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c: New file.
9291 2003-01-27  Guido Guenther  <agx@sigxcpu.org>
9293         * sysdeps/unix/sysv/linux/mips/sysdep.h (SYSCALL_ERROR_LABEL): Define.
9294         * sysdeps/unix/sysv/linux/mips/pread.c: Add support for
9295         cancellation handling and handle both __NR_pread64 and __NR_pread.
9296         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
9297         * sysdeps/unix/sysv/linux/mips/pwrite.c: Add support for
9298         cancellation handling and handle both __NR_pwrite64 and __NR_pwrite.
9299         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
9300         * sysdeps/unix/mips/sysdep.S: Don't set errno in the _LIBC_REENTRANT
9301         case, use register names consistently.
9303 2003-01-27  Wolfram Gloger  <wg@malloc.de>
9305         * malloc/hooks.c (mem2chunk_check): Check alignment of mem
9306         pointer, not of the computed chunk.  Bug report from Carlos
9307         O'Donell <carlos@baldric.uwo.ca>.
9309 2003-01-25  Andreas Schwab  <schwab@suse.de>
9311         * sysdeps/m68k/dl-machine.h (_dl_start_user): Use pc-relative
9312         addressing to save GOT entries.
9314 2003-01-21  Jakub Jelinek  <jakub@redhat.com>
9316         * sysdeps/unix/alpha/sysdep.h (inline_syscall0,
9317         inline_syscall1, inline_syscall2, inline_syscall3,
9318         inline_syscall4, inline_syscall5, inline_syscall6): Add __volatile__.
9319         * sysdeps/unix/sysv/linux/alpha/sysdep.h (INTERNAL_SYSCALL): Add
9320         __attribute__((unused)) to ChEcK.
9322 2003-01-20  Martin Schwidefsky  <schwidefsky@de.ibm.com>
9324         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (INTERNAL_SYSCALL):
9325         Fix inline assembler constraints.
9326         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (INTERNAL_SYSCALL):
9327         Likewise.
9329         * sysdeps/s390/s390-64/Makefile (pic-ccflag): Use -fpic instead of
9330         -fPIC.
9332 2003-01-20  Segher Boessenkool  <segher@koffie.nl>
9334         * sysdeps/ieee754/dbl-64/sincos32.c (__mpcos): Really
9335         compute the cosine, not the sine, even if x > 0.8.
9337 2003-01-19  Ulrich Drepper  <drepper@redhat.com>
9339         * nis/nss_nis/nis-spwd.c: Make _nss_nis_endspent an alias of
9340         _nss_nis_setspent.  Work around the different prototypes.
9341         * nis/nss_nis/nis-rpc.c (internal_nis_setrpcent): Use
9342         internal_nis_endrpcent.
9343         (internal_nis_endrpcent): Change return type to void.  Change callers.
9344         * nis/nss_nis/nis-pwd.c: Make _nss_nis_endpwent an alias of
9345         _nss_nis_setpwent.  Work around the different prototypes.
9346         * nis/nss_nis/nis-proto.c (_nss_nis_endprotoent): Split out body
9347         of the function to...
9348         (internal_nis_endprotoent): ... here.  New function.
9349         (internal_nis_setprotoent): Use internal_nis_endprotoent.
9350         * nis/nss_nis/nis-network.c: Make _nss_nis_endnetent an alias of
9351         _nss_nis_setnetent.  Work around the different prototypes.
9352         * nis/nss_nis/nis-netgrp.c (_nss_nis_endnetgrent): Split out body
9353         of the function to...
9354         (internal_nis_endnetgrent): ... here.  New function.
9355         (_nss_nis_setnetgrent): Use internal_nis_endnetgrent.
9357 2003-01-19  Jim Meyering  <jim@meyering.net>
9359         * time/strftime.c: (widen): Merge nearly-identical definitions.
9360         (nl_get_alt_digit) [! defined my_strftime]: Define.
9361         (my_strftime) [_NL_CURRENT]: Merge nearly-identical uses of
9362         _nl_get_alt_digit and _nl_get_walt_digit.
9364 2003-01-19  Ulrich Drepper  <drepper@redhat.com>
9366         * time/strftime.c (my_strftime): Handle very large width
9367         specifications for numeric values correctly.  Improve checks for
9368         overflow.
9369         * time/Makefile (tests): Add tst-strftime.
9370         * time/tst-strftime.c: New file.
9372 2003-01-18  Ulrich Drepper  <drepper@redhat.com>
9374         * nis/nss_nis/nis-hosts.c: Make _nss_nis_endhostent an alias of
9375         _nss_nis_sethostent.  Work around the different prototypes.
9376         * nis/nss_nis/nis-grp.c: Make _nss_nis_endgrent an alias of
9377         _nss_nis_setgrent.  Work around the different prototypes.
9378         * nis/nss_nis/nis-ethers.c (internal_nis_endetherent): New
9379         function.  Split out from _nss_nis_endetherent.
9380         (internal_nis_setetherent): Use internal_nis_endetherent instead of
9381         duplicating the code.
9382         * nis/nss_nis/nis-alias.c: Make _nss_nss_nis_endaliasent an alias
9383         of _nss_nis_setaliasent.
9384         * nis/nss_nis/nis-service.c (internal_nis_setservent): Reuse
9385         internal_nis_endservent code, don't duplicate it.
9387         * inet/rexec.c (rexec_af): Protect socket operations with
9388         TEMP_FAILURE_RETRY.  Use writev instead of multiple write.
9389         * inet/rcmd.c (rcmd_af): Likewise.
9391 2003-01-17  Roland McGrath  <roland@redhat.com>
9393         * math/libm-test.inc (sin_test, cos_test, sincos_test) [TEST_DOUBLE]:
9394         Add test of value 0.80190127184058835.
9396         * elf/dl-open.c: Fix typo ifdef -> ifndef on _dl_tls_static_size defn.
9398 2003-01-17  Richard Henderson  <rth@redhat.com>
9400         * sysdeps/alpha/dl-machine.h (elf_machine_type_class): Add TLS
9401         relocs for class PLT.
9402         * sysdeps/alpha/libc-tls.c: New file.
9403         * sysdeps/unix/alpha/sysdep.S (EPILOGUE, GPSAVEREG): New.
9404         (LOADGP) [!PIC]: Rewrite to preserve caller's gp.
9406 2003-01-17  Jakub Jelinek  <jakub@redhat.com>
9408         * sysdeps/unix/sysv/linux/ia64/dl-static.c (_dl_static_init): Use
9409         __libc_lock_{,un}lock_recursive instead of __libc_lock_{,un}lock
9410         on _dl_static_lock.
9412 2003-01-17  Andreas Jaeger  <aj@suse.de>
9414         * stdio-common/bug14.c: Include stdlib.h for exit prototype.
9416 2003-01-16  Steven Munroe  <sjmunroe@us.ibm.com>
9418         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: New file.
9419         * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S: New file.
9420         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: New file.
9421         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: New file.
9422         * sysdeps/unix/sysv/linux/powerpc/powerpc64/ucontext_i.h: New file.
9423         * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: New file.
9424         * sysdeps/unix/sysv/linux/configure.in: Minimum kernel for PPC64
9425         is 2.4.21.
9427 2003-01-16  Ulrich Drepper  <drepper@redhat.com>
9429         * sysdeps/generic/glob.c (glob): Assume sysconf() always returns
9430         values != -1 for _LIBC.  Use extend_alloca to reallocate alloca'ed
9431         buffers.
9433         * sysdeps/generic/sysconf.c: Unconditionally implement
9434         _SC_GETPW_R_SIZE_MAX and _SC_GETGR_R_SIZE_MAX.
9435         * sysdeps/posix/sysconf.c: Likewise.
9437 2003-01-16  Jakub Jelinek  <jakub@redhat.com>
9439         * posix/regcomp.c (parse_bracket_exp): If build_charclass fails,
9440         set *err to the returned error, not to REG_ESPACE unconditionally.
9441         (build_word_op): Likewise.
9442         * posix/Makefile (tests): Add bug-regex16.
9443         * posix/bug-regex16.c: New test.
9445 2003-01-16  Jakub Jelinek  <jakub@redhat.com>
9447         * elf/dl-load.c (_dl_map_object_from_fd): Use
9448         GL(dl_tls_dtv_slotinfo_list) != NULL to check whether TLS has
9449         been already initialized.
9451 2003-01-15  Dmitry V. Levin  <ldv@altlinux.org>
9453         * sysdeps/unix/sysv/linux/ptsname.c: Fix typo in comment.
9455 2003-01-16  Jakub Jelinek  <jakub@redhat.com>
9457         * posix/regcomp.c (re_compile_internal): If clearing buffer, clear
9458         allocated too.  Reported by Al Viro <aviro@redhat.com>.
9460 2003-01-16  Roland McGrath  <roland@redhat.com>
9462         Tweak merged .abilist file format to merge duplicate symbols in
9463         different sets into multi-version stanzas with new "| SET regexp..."
9464         header continuation lines.
9465         * scripts/merge-abilist.awk: Rewritten for new format.
9466         * scripts/extract-abilist.awk: Likewise.
9468 2003-01-15  Ulrich Drepper  <drepper@redhat.com>
9470         * nscd/connections.c (nscd_run): Remove bogus return which isn't
9471         necessary with gcc 3.2+.
9472         (nscd_init): Don't use error() to print message, use dbg_log.
9474         * iconv/gconv_simple.c (STORE_REST): Explicitly store the total
9475         expected size into state.
9476         (UNPACK_BYTES): Do the reverse.
9477         * iconv/loop.c: Use CLEAR_STATE if defined to clear __state element.
9478         * wcsmbs/tst-mbrtowc.c (utf8_test_1): Add test for the bug.
9479         Reported by Al Viro <aviro@redhat.com>.
9481         * stdio-common/Makefile (tests): Add bug14.
9482         * stdio-common/bug14.c: New file.
9484         * stdio-common/vfscanf.c: When recognizing multibyte characters in
9485         string reset the byte counter after mbrtowc reported it is not a
9486         partial character.  Reported by Al Viro <aviro@redhat.com>.
9488 2003-01-15  Steven Munroe  <sjmunroe@us.ibm.com>
9490         * sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S: Include
9491         sysdep-cancel.h, not sysdep.h.
9493 2003-01-15  Ulrich Drepper  <drepper@redhat.com>
9495         * nscd/connections.c (nscd_run): Protect accept call with
9496         TEMP_FAILURE_RETRY.
9498 2003-01-15  Andreas Schwab  <schwab@suse.de>
9500         * sysdeps/unix/Makefile: Include $(common-objpfx)s-proto-bp.d.
9501         (common-generated): Add s-proto-bp.d.
9502         * sysdeps/unix/make-syscalls.sh: Use s-proto-bp.d for dependencies
9503         of bp thunks.
9504         * sysdeps/unix/s-proto-bp.S: New file.
9505         * sysdeps/generic/bp-thunks.h: Don't include <sys/vm86.h> here.
9506         Use <io/sys/sendfile.h> instead of <sys/sendfile.h>.
9507         * sysdeps/unix/sysv/linux/i386/bp-thunks.h: New file.
9509 2003-01-15  Roland McGrath  <roland@redhat.com>
9511         * Makerules: Use -include for tls.make, suppresses warning.
9512         Move gen-as-const-headers rules up so before-compile is set in time.
9513         (sed-remove-dotdot): Fix to work right for subdirs or top dir.
9515 2003-01-15  Ulrich Drepper  <drepper@redhat.com>
9517         * nscd/nscd.c (main): Make code to close all file descriptors
9518         faster and more robust.
9520         * nscd/nscd_getpw_r.c (nscd_getpw_r): Consolidate writing of the
9521         request with one writev call.  Protect all read calls with
9522         TEMP_FAILURE_RETRY.
9523         * nscd/nscd_getgr_r.c (nscd_getgr_r): Likewise.
9524         * nscd/nscd_gethst_r.c (nscd_gethst_r): Likewise.
9526         * nscd/hstcache.c: Use extend_alloca to reallocate alloca'd buffer.
9527         Protect writev calls with TEMP_FAILURE_RETRY.
9528         * nscd/grpcache.c: Likewise.
9529         * nscd/pwdcache.c: Likewise.
9531         * nscd/hstcache.c (addhstbynamev6): Don't interpret hostname as
9532         IPv6 address in debug output.
9534 2003-01-14  Roland McGrath  <roland@redhat.com>
9536         * Makerules (check-abi-%): Use two rules for $(common-objpfx) and
9537         $(objpfx) directories, and get rid of vpath directives.  The previous
9538         arrangement resulted in files being written to the source directories
9539         when run in a clean build.  Find all .abilist files in $(..)abilist/.
9540         (update-abi-%): Likewise.
9541         (generated): Don't add .symlist files, they'll be intermediates.
9543         * sysdeps/generic/init-first.c: Add a comment.
9545         * elf/Makefile ($(objpfx)ld.so): Pass -z defs in link.
9547         * scripts/gen-as-const.awk: Grok lone "--" as a separator between
9548         #includes and expressions.
9550         * scripts/merge-abilist.awk: Omit cpu-.*-os.*/modifier from merged
9551         config list when it already contains cpu-.*-os.* without / part.
9553         * Makerules (sed-remove-dotdot): New variable.
9554         ($(common-objpfx)%.make): Use it.  Depend on $(before-compile).
9555         ($(common-objpfx)%.h $(common-objpfx)%.h.d): Likewise.
9556         (check-abi-config): New variable, append /tls or /notls to the tuple.
9557         (check-abi-%): Use that for -v config value.
9558         Find .abilist files in abilist/libfoo.abilist, not in subdir.
9559         * Rules: Move bits/stdio_lim.h generation rules to Makerules.
9561 2003-01-14  Ulrich Drepper  <drepper@redhat.com>
9563         * manual/install.texi: Correct description of header preparation for
9564         Linux build.  Patch by mhwood@Ameritech.Net [PR libc/4941].
9566 2003-01-14  Guido Guenther  <agx@sigxcpu.org>
9568         * sysdeps/unix/sysv/linux/mips/sysdep.h (INTERNAL_SYSCALL,
9569         INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
9570         INTERNAL_SYSCALL_ERROR_P, INLINE_SYSCALL): Define.
9572 2003-01-14  Steven Munroe  <sjmunroe@us.ibm.com>
9574         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h
9575         (INTERNAL_SYSCALL): Make use of ERR parameter.
9576         (INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
9577         INTERNAL_SYSCALL_ERROR_P): Adjust accordingly.
9578         (INLINE_SYSCALL): Make use of INTERNAL_SYSCALL.
9579         * sysdeps/unix/sysv/linux/powerpc/powerpc64/vfork.S: New file.
9581 2003-01-14  Ulrich Drepper  <drepper@redhat.com>
9583         * sunrpc/pm_getport.c (pmap_getport): Open TCP socket if protocol
9584         == IPPROTO_TCP.
9585         Patch by James Strandboge <jamie@tpptraining.com> [PR libc/4943].
9587         * sysdeps/unix/sysv/linux/i386/dl-procinfo.c (_dl_x86_cap_flags):
9588         Fix entry for bit 31.
9590         * iconvdata/Makefile: Add rules to build IBM866NAV.
9591         * iconvdata/ibm866nav.c: New file.
9592         * iconvdata/tst-tables.sh: Add IBM866NAV.
9593         * iconvdata/gconv-modules: Add entries for IBM866NAV.
9595 2003-01-13  Ulrich Drepper  <drepper@redhat.com>
9597         * string/tester.c (test_strcpy): Use the previously #if 0'ed code
9598         to test void* parameters.
9600         * sysdeps/i386/i486/bits/string.h (__STRING_SMALLL_GET16): Cast
9601         source pointer before dereferencing.
9602         (__STRING_SMALLL_GET32): Likewise.
9603         (__memset_gc): Add missing parenthesis around macro arguments.
9604         Patch by Denis Zaitsev <zzz@cd-club.ru>.
9606         * sysdeps/i386/i486/bits/string.h (__strspn_cg): Tell the compiler
9607         that %eax is modified.  Reported by Denis Zaitsev <zzz@cd-club.ru>.
9609 2003-01-14  Jakub Jelinek  <jakub@redhat.com>
9611         * sysdeps/unix/alpha/sysdep.h (INLINE_SYSCALL): Undefined before
9612         defining.
9614 2003-01-13  Martin Schwidefsky  <schwidefsky@de.ibm.com>
9616         * sysdeps/s390/s390-64/initfini.c: Avoid unterminated string literals.
9617         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (L): Don't define it
9618         here.
9619         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (L): Likewise.
9621 2003-01-13  Martin Schwidefsky  <schwidefsky@de.ibm.com>
9623         * sysdeps/s390/s390-32/sysdep.h (JUMPTARGET): Move branch instructions
9624         from here...
9625         (PSEUDO): ... to here.
9626         * sysdeps/s390/s390-64/sysdep.h (JUMPTARGET): Move branch instruction
9627         from here...
9628         (PSEUDO): ... to here.
9630 2003-01-13  Ulrich Drepper  <drepper@redhat.com>
9632         * locale/programs/charmap-dir.c (charmap_readdir): Use struct
9633         dirent64 instead of struct dirent for dirent.  Call readdir64
9634         instead of readdir.
9636         * locale/programs/locfile.c (siblings_uncached): Use struct
9637         dirent64 instead of struct dirent for other_dentry.  Call
9638         readdir64 instead of readdir.
9640         * elf/ldconfig.c (direntry): Change type to struct dirent64.
9641         (search_dir): Use readdir64 instead of readdir.
9642         Patch by Zhangfan Xing <xing@pacific.jpl.nasa.gov>.
9644 2003-01-12  Roland McGrath  <roland@redhat.com>
9646         * hurd/lookup-retry.c (__hurd_file_name_lookup_retry): Use strtoul,
9647         not strtol.  The former is usable in ld.so, the latter not.
9649         * include/fcntl.h: Declare __libc_creat.
9651         * sysdeps/mach/hurd/Makefile (libmachuser-link.so-no-z-defs,
9652         libhurduser-link.so-no-z-defs): New variables.
9654         * malloc/malloc.c: Revert last change.
9655         * malloc/malloc.h (_int_*): Move these decls to ...
9656         * include/malloc.h: ... here.  Add attribute_hidden.
9657         (_int_valloc): Declare it too.
9659 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
9661         * elf/dl-close.c (_dl_close): Fix typo, must be == not = in
9662         search for removed searchlist.  Reported by Roland McGrath.
9664         * io/ftwtest-sh: Add test for case of symlink to nonexisting file
9665         given as start file.
9667         * io/ftw.c (ftw_startup): Use correct name in check for symlink
9668         without existing target.  Patch by Jim Meyering.
9670         * Makerules (build-shlib-helper): Don't use -z defs linker option
9671         if no-z-defs is defined either.
9673 2003-01-10  Martin Schwidefsky  <schwidefsky@de.ibm.com>
9675         * sysdeps/unix/sysv/linux/s390/s390-64/kernel_stat.h: Remove unused
9676         file.
9678 2003-01-10  Martin Schwidefsky  <schwidefsky@de.ibm.com>
9680         * sysdeps/unix/sysv/linux/s390/s390-32/syscalls.list: Add vfork.
9681         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
9683 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
9685         * io/ftwtest-sh: Add test case for relative path with /. at the end.
9687 2003-01-12  Jim Meyering  <jim@meyering.net>
9689         * io/ftw.c (ftw_startup): When trying to stat the starting directory,
9690         use the basename if we've already chdir'd into its parent directory.
9692 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
9694         * io/ftw.c (process_entry): Use relative path when using chdir()
9695         to change directory after call to ftw_dir.
9696         * io/ftwtest-sh: Add test for relative path argument to nftw()
9697         with FTW_CHDIR option.
9699 2003-01-12  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
9701         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_VFORK_SYSCALL):
9702         Define for powerpc.
9703         * sysdeps/unix/sysv/linux/powerpc/syscall.S: Take register alignment
9704         into account.
9705         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h
9706         (INTERNAL_SYSCALL): Make use of ERR parameter.
9707         (INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
9708         INTERNAL_SYSCALL_ERROR_P): Adjust accordingly.
9709         (INLINE_SYSCALL): Make use of INTERNAL_SYSCALL.
9710         * sysdeps/unix/sysv/linux/powerpc/powerpc32/vfork.S: New file.
9712 2003-01-09  Richard Henderson  <rth@redhat.com>
9714         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Compute
9715         DTPREL64 and TPREL64 without loadbase applied.
9717 2003-01-09  Richard Henderson  <rth@redhat.com>
9719         * sysdeps/unix/alpha/sysdep.S: Use correct definition of errno
9720         for NOT_IN_libc.
9722         * sysdeps/unix/sysv/linux/alpha/sysdep.h: Move inline syscall bits...
9723         * sysdeps/unix/alpha/sysdep.h: ... here.
9724         (PSEUDO_LOADGP): Remove.
9725         (PSEUDO_PROLOGUE): Load GP in non-pic case.
9726         (SYSCALL_ERROR_LABEL): New.
9727         (PSEUDO): Use it in error branch.
9728         (PSEUDO_END): Add $syscall_error label.
9730 2003-01-12  Andreas Jaeger  <aj@suse.de>
9732         * math/bits/mathcalls.h: Round is a const function.
9734 2003-01-11  Jim Meyering  <jim@meyering.net>
9736         * io/ftw.c [HAVE_CONFIG_H]: Include <config.h>.
9737         [HAVE_SYS_PARAM_H || _LIBC]: Guard inclusion of <sys/param.h>.
9738         Include <sys/stat.h>, not <include/sys/stat.h>, if !_LIBC.
9739         [!_LIBC] (__chdir, __closedir, __fchdir, __getcwd, __opendir): Define.
9740         [!_LIBC] (__readdir64, __tdestroy, __tfind, __tsearch): Define.
9741         [!_LIBC] (internal_function, dirent64, MAX): Define.
9742         (__set_errno): Define if not already defined.
9743         (open_dir_stream): When FTW_CHDIR is enabled, invoke opendir on
9744         the basename, not the entire file name.
9745         (process_entry): When FTW_CHDIR is enabled, invoke XSTAT or LXSTAT on
9746         the basename, not the entire file name.
9748 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
9750         * string/tester.c (test_strcpy): Disable last added strcpy until
9751         it is fixed.
9753 2003-01-11  Philip Blundell  <philb@gnu.org>
9755         * sysdeps/unix/sysv/linux/arm/socket.S: Add cancellation support.
9757 2003-01-11  Andreas Schwab  <schwab@suse.de>
9759         * Makerules: Add vpath for %.dynsym and %.so so that the
9760         implicit rule chaining for check-abi works.
9762 2003-01-11  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
9764         * sysdeps/unix/sysv/linux/sh/sysdep.h (SYSCALL_ERROR_HANDLER):
9765         Add non-PIC case.
9767 2003-01-11  Jakub Jelinek  <jakub@redhat.com>
9769         * elf/tls-macros.h [__ia64__] (__TLS_CALL_CLOBBERS): Define.
9770         [__ia64__] (TLS_LE, TLS_IE): Fix typos.  Add ;; at start of asm if
9771         gp is used early.
9772         [__ia64__] (TLS_LD, TLS_GD): Likewise.  Use __TLS_CALL_CLOBBERS.
9773         * elf/Makefile ($(objpfx)tst-tlsmod5.so, $(objpfx)tst-tlsmod6.so):
9774         Ensure libc.so in DT_NEEDED.
9775         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Move
9776         CHECK_STATIC_TLS before l_tls_offset use.
9777         * sysdeps/i386/dl-machine.h (elf_machine_rel, elf_machine_rela):
9778         Likewise.
9779         * sysdeps/sh/dl-machine.h (elf_machine_rela): Likewise.
9780         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage) [TLS_DTV_AT_TP]:
9781         Allocate TLS_PRE_TCB_SIZE bytes below result.
9782         (_dl_deallocate_tls) [TLS_DTV_AT_TP]: Adjust before freeing.
9783         * sysdeps/generic/libc-tls.c (__libc_setup_tls): If
9784         TLS_INIT_TP_EXPENSIVE is not defined, allocate even if no PT_TLS
9785         segment has been found.  If TLS_DTV_AT_TP, allocate TLS_PRE_TCB_SIZE
9786         bytes below result and add tcb_offset to memsz.
9787         * sysdeps/ia64/dl-tls.h (__tls_get_addr): New prototype.
9788         * sysdeps/ia64/dl-machine.h: Include tls.h.
9789         (elf_machine_type_class): Return ELF_RTYPE_CLASS_PLT for TLS relocs
9790         too.
9791         (elf_machine_rela): Assume if sym_map != NULL sym is non-NULL too.
9792         Handle R_IA64_DTPMOD*, R_IA64_DTPREL* and R_IA64_TPREL* relocations.
9793         * sysdeps/ia64/libc-tls.c: New file.
9795 2003-01-10  Steven Munroe  <sjmunroe@us.ibm.com>
9797         * sysdeps/powerpc/powerpc64/sysdep.h (PSEUDO_RET): Add branch hit.
9798         * sysdeps/unix/sysv/linux/powerpc/bits/stat.h (STAT_VER_LINUX):
9799         Fix type.  Move definition out of #if.
9800         * sysdeps/unix/sysv/linux/powerpc/powerpc64/ftruncate64.c: New file.
9801         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pread.c: New file.
9802         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pread64.c: New file.
9803         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pwrite.c: New file.
9804         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pwrite64.c: New file.
9805         * sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S: Add cancellation
9806         support.
9807         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Remove
9808         ftruncate64, pread64, pwrite64, truncate64 entries.
9809         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h
9810         (INLINE_SYSCALL): New version that supports function call like
9811         syscalls.  Add __builtin_expect.
9812         (LOADARGS_n): Add argument size safety checks.
9813         (INTERNAL_SYSCALL): New Macro.
9814         * sysdeps/unix/sysv/linux/powerpc/powerpc64/truncate64.c: New file.
9815         * sysdeps/unix/sysv/linux/powerpc/sys/procfs.h [__PPC_ELF_H]: Avoid
9816         redefinition of elf_fpreg_t and elf_fpregset_t.
9818 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
9820         * elf/dl-close.c (_dl_close): Add several asserts.  Correct and
9821         simplify test for unloading.  If loader of a DSO is unloaded do not
9822         use its scope anymore.  Fall back to own scope and adjust opencounts.
9823         Fix several comments.
9824         * elf/dl-deps.c (_dl_map_object_deps): Always allocate memory for
9825         the l_searchlist, not only for l_initfini.
9827         * elf/dl-lookup.c (add_dependencies): Avoid creating relocation
9828         dependencies if objects cannot be removed.  Remove object with the
9829         definition as not unloadable if necessary.
9831         * elf/reldep6.c: Create relocation dependency before closing the first
9832         module.
9834 2003-01-10  Guido Günther  <agx@sigxcpu.org>
9836         * sysdeps/unix/mips/fork.S: Add PSEUDO_END.
9837         * sysdeps/unix/mips/brk.S: Likewise.
9838         * sysdeps/unix/mips/pipe.S: Likewise.
9840 2003-01-10  Andreas Schwab  <schwab@suse.de>
9842         * sysdeps/unix/sysv/linux/m68k/getsysstats.c: New file.
9844         * sysdeps/unix/sysv/linux/m68k/vfork.S: Optimize for kernels which
9845         are known to have the vfork syscall.
9847         * sysdeps/m68k/sysdep.h (JUMPTARGET): Undefine before defining it.
9849         * sysdeps/unix/sysv/linux/kernel-features.h
9850         (__ASSUME_MMAP2_SYSCALL, __ASSUME_TRUNCATE64_SYSCALL)
9851         (__ASSUME_STAT64_SYSCALL, __ASSUME_FCNTL64)
9852         (__ASSUME_VFORK_SYSCALL): Define for m68k kernels >= 2.4.12.
9854 2003-01-09  Jakub Jelinek  <jakub@redhat.com>
9856         * elf/Makefile: Add rules to build and run reldep9 test.
9857         * elf/reldep9.c: New file.
9858         * elf/reldep9mod1.c: New file.
9859         * elf/reldep9mod2.c: New file.
9860         * elf/reldep9mod3.c: New file.
9862 2003-01-09  Jakub Jelinek  <jakub@redhat.com>
9864         * elf/Makefile: Add rules to build and run nodelete2 test.
9865         * elf/nodelete2.c: New file.
9866         * elf/nodel2mod1.c: New file.
9867         * elf/nodel2mod2.c: New file.
9868         * elf/nodel2mod3.c: New file.
9870 2003-01-09  Jakub Jelinek  <jakub@redhat.com>
9872         * posix/test-vfork.c (noop): Add __attribute_noinline__.
9873         * sysdeps/generic/sysdep.h (JUMPTARGET): Define if not defined.
9874         * sysdeps/i386/sysdep.h (JUMPTARGET): Undefine JUMPTARGET before
9875         defining it.
9876         * sysdeps/powerpc/powerpc32/sysdep.h (JUMPTARGET): Likewise.
9877         * sysdeps/powerpc/powerpc64/sysdep.h (JUMPTARGET): Likewise.
9878         * sysdeps/s390/s390-32/sysdep.h (JUMPTARGET): Likewise.
9879         * sysdeps/s390/s390-64/sysdep.h (JUMPTARGET): Likewise.
9880         * sysdeps/x86_64/sysdep.h (JUMPTARGET): Likewise.
9882 2003-01-09  Andreas Schwab  <schwab@suse.de>
9884         * sysdeps/m68k/fpu/libm-test-ulps: Regenerated.
9886 2003-01-08  Ulrich Drepper  <drepper@redhat.com>
9888         * sysdeps/unix/sysv/linux/arm/sysdep.h (INTERNAL_SYSCALL,
9889         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Add err
9890         argument.
9891         (INTERNAL_SYSCALL_DECL): Define.
9893 2003-01-06  Jakub Jelinek  <jakub@redhat.com>
9895         * sysdeps/unix/sysv/linux/ia64/sysdep.h (INTERNAL_SYSCALL,
9896         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Add err
9897         argument.
9898         (INTERNAL_SYSCALL_DECL): Define.
9899         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h: Likewise.
9900         * sysdeps/unix/sysv/linux/sparc/sysdep.h: Likewise.
9901         * sysdeps/unix/sysv/linux/i386/sysdep.h: Likewise.
9902         (INLINE_SYSCALL): Adjust.
9903         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Likewise.
9904         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise.
9905         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Likewise.
9906         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
9907         * elf/dl-misc.c (_dl_debug_vdprintf): Add INTERNAL_SYSCALL_DECL,
9908         add err argument to INTERNAL_SYSCALL* macros.
9909         * sysdeps/unix/sysv/linux/i386/brk.c (__brk): Likewise.
9910         * sysdeps/unix/sysv/linux/i386/system.c (cancel_handler): Likewise.
9911         * sysdeps/unix/sysv/linux/m68k/brk.c (__brk): Likewise.
9912         * sysdeps/unix/sysv/linux/m68k/getpagesize.c  (__getpagesize):
9913         Likewise.
9914         * sysdeps/unix/sysv/linux/sigwait.c (do_sigwait): Likewise.
9915         * sysdeps/unix/sysv/linux/i386/sigaction.c (__libc_sigaction): Use
9916         INLINE_SYSCALL instead of INTERNAL_SYSCALL and setting errno.
9918 2003-01-07  Ulrich Drepper  <drepper@redhat.com>
9920         Unify symbols in user namespace exported by libc.so and libc.a.
9921         * argp/argp-fmtstream.c: Don't define argp_make_fmtstream,
9922         argp_fmtstream_free, and argp_fmtstream_printf.
9923         * argp/argp-fs-xinl.c: Don't define argp_fmtstream_putc,
9924         argp_fmtstream_puts, argp_fmtstream_write, argp_fmtstream_set_lmargin,
9925         argp_fmtstream_set_rmargin, argp_fmtstream_set_wmargin, and
9926         argp_fmtstream_point.
9927         * gmon/gmon.c: Don't define write_profiling.
9928         * libio/genops.c: Don't define _cleanup.
9930         * intl/explodename.c (_nl_find_language.c): Mark as static.
9931         * intl/loadinfo.h: Remove _nl_find_language prototype.
9933         * libio/fileops.c (_IO_file_seekoff_maybe_mmap): Mark as static.
9934         * libio/libioP.h: Remove declaration.
9936         * libio/iopopen.c (_IO_proc_jumps): Mark as static.
9937         * libio/libioP.h: Remove declaration.
9939         * sysdeps/generic/unwind-dw2.c: Mark __frame_state_for with STATIC.
9940         * sysdeps/generic/framestate.c: Define STATIC before including
9941         unwind-dw2.c.
9943         * time/Versions [GLIBC_2.3.2] (libc): Export strptime_l.
9945 2003-01-06  Philip Blundell  <philb@gnu.org>
9947         * sysdeps/unix/arm/sysdep.S (syscall_error): Optimise a little.
9948         [__LIBC_REENTRANT]: Unify PIC and non-PIC cases.
9950         * sysdeps/unix/sysv/linux/arm/sysdep.h (PSEUDO): Remove .type
9951         directive.
9952         (PSEUDO_RET): Use SYSCALL_ERROR in place of __syscall_error.
9953         (SYSCALL_ERROR): New.
9954         (SYSCALL_ERROR_HANDLER) [NOT_IN_libc]: Provide local copy of error
9955         handling code.
9956         (INTERNAL_SYSCALL): Define.
9957         (INLINE_SYSCALL): Use it.
9958         (INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Define.
9959         * sysdeps/unix/sysv/linux/arm/socket.S (__socket): Use
9960         SYSCALL_ERROR in place of __syscall_error.
9962 2003-01-07  Jakub Jelinek  <jakub@redhat.com>
9964         * sysdeps/ia64/bits/byteswap.h [__GNUC__ >= 2] (__bswap_16,
9965         __bswap_32, __bswap_64): Put x into temporary variable
9966         to avoid warnings.
9967         [!__GNUC__] (__bswap_16, __bswap_32, __bswap_64): Change into static
9968         (inline) functions.
9969         * sysdeps/s390/bits/byteswap.h [__GNUC__ >= 2] (__bswap_16,
9970         __bswap_32, __bswap_64): Put x into temporary variable
9971         to avoid warnings.
9972         [!__GNUC__] (__bswap_16, __bswap_32, __bswap_64): Change into static
9973         (inline) functions.
9974         * sysdeps/i386/bits/byteswap.h [!__GNUC__] (__bswap_16, __bswap_32):
9975         Likewise.
9977 2003-01-07  Jakub Jelinek  <jakub@redhat.com>
9979         * sysdeps/unix/sysv/linux/alpha/adjtime.c (ntp_adjtime): New weak
9980         alias.
9982 2003-01-07  Jakub Jelinek  <jakub@redhat.com>
9984         * elf/rtld.c (_rtld_global): Remove _dl_dynamic_weak initializer.
9985         * elf/dl-support.c (_dl_dynamic_weak): Initialize to 0.
9987 2003-01-07  Ulrich Drepper  <drepper@redhat.com>
9989         * math/libm-test.inc (significand_test): New function.
9990         (main): Call it.
9992 2003-01-06  Roland McGrath  <roland@redhat.com>
9994         * sysdeps/i386/i486/bits/string.h (memset): Add parens around macro
9995         arguments.
9996         (memcpy, memrchr, strcpy, __stpcpy, strncpy, strcat): Likewise.
9997         (strcmp, strncat, strncmp, strchr, __strchrnul, strchrnul): Likewise.
9998         (index, strrchr, rindex, strcspn, strspn, strpbrk, strstr): Likewise.
10000         * string/tester.c (test_strcpy): Add test with `void *' arguments.
10002 2003-01-06  Ulrich Drepper  <drepper@redhat.com>
10004         * sysdeps/i386/fpu/s_significandl.c (__significandl): Really
10005         return significand and not the exponent.
10006         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
10008         * elf/dl-misc.c (_dl_debug_vdprintf): Help PPC port by explicitly
10009         taking address of iov in INTERNAL_SYSCALL call.  Patch by Franz Sirl.
10011         * malloc/malloc.c: Mark all _int_* functions as static.
10013 2003-01-06  Jakub Jelinek  <jakub@redhat.com>
10015         * sysdeps/unix/alpha/sysdep.h (PSEUDO): Use PSEUDO_PREPARE_ARGS.
10016         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S: Add cancellation
10017         handling.
10018         * sysdeps/unix/sysv/linux/alpha/select.S: Likewise.
10020 2003-01-06  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
10022         * sysdeps/powerpc/powerpc32/sysdep.h (PSEUDO_RET): Add branch hint.
10023         * sysdeps/unix/sysv/linux/powerpc/powerpc32/socket.S: Add cancellation
10024         support.
10025         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Remove
10026         ftruncate64, truncate64, pread64 and pwrite64 entries.
10027         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h
10028         (INLINE_SYSCALL): Add __builtin_expect.
10029         (LOADARGS_n): Add argument size safety checks.
10030         * sysdeps/unix/sysv/linux/powerpc/powerpc32/ftruncate64.c: New file.
10031         * sysdeps/unix/sysv/linux/powerpc/powerpc32/truncate64.c: New file.
10032         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pread.c: New file.
10033         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pread64.c: New file.
10034         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pwrite.c: New file.
10035         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pwrite64.c: New file.
10037 2003-01-06  Jakub Jelinek  <jakub@redhat.com>
10039         * sysdeps/generic/sysdep-cancel.h (LIBC_CANCEL_HANDLED): Define.
10040         * sysdeps/generic/creat.c: Include sysdep-cancel.h.
10041         (LIBC_CANCEL_HANDLED): Add.
10043         * sysdeps/unix/sysv/linux/alpha/sysdep.h
10044         (inline_syscall_r0_constraint): Rename to...
10045         (inline_syscall_r0_out_constraint): ... this.  Add =.
10046         (inline_syscall[0-6]): Use inline_syscall_r0_out_constraint.
10048 2003-01-06  Andreas Schwab  <schwab@suse.de>
10050         * sysdeps/m68k/dl-machine.h (elf_machine_runtime_setup): Make
10051         sure this is always inlined.
10052         (elf_machine_rela): Likewise.
10054         * sysdeps/m68k/Makefile (sysdep-CFLAGS): Increase inline limit.
10056 2003-01-04  Roland McGrath  <roland@redhat.com>
10058         * Makeconfig (+mkdep): Add -MP flag.
10059         Suggested by Art Haas <ahaas@airmail.net>.
10061 2003-01-05  Andreas Schwab  <schwab@suse.de>
10063         * sysdeps/m68k/Makefile (CFLAGS-.oS): Append -fPIC.
10065 2003-01-05  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
10067         * sysdeps/unix/sysv/linux/sh/clone.S (__clone): Use
10068         SYSCALL_ERROR_HANDLER.
10069         * sysdeps/unix/sysv/linux/sh/pipe.S (__libc_pipe): Likewise.
10070         * sysdeps/unix/sysv/linux/sh/socket.S (__socket): Likewise.
10071         Add support for cancellation handling.
10072         * sysdeps/unix/sysv/linux/sh/syscall.S (__syscall): Use
10073         SYSCALL_ERROR_HANDLER.
10074         * sysdeps/unix/sysv/linux/sh/vfork.S (__vfork): Likewise.
10075         * sysdeps/unix/sysv/linux/sh/sysdep.h (PSEUDO): Likewise.
10076         Add support for cancellation handling.
10077         (SYSCALL_ERROR_HANDLER): Define PIC variants.
10079 2003-01-04  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
10081         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Mark
10082         __syscall_pread64 and __syscall_pwrite64 cancelable.
10083         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h
10084         (INTERNAL_SYSCALL): New macro.
10085         (LOADARGS_0, LOADARGS_1): Fix.
10087 2003-01-05  Ulrich Drepper  <drepper@redhat.com>
10089         * Makerules (build-shlip-helper): Unless told otherwise, add
10090         -Wl,-z,defs to linker command line.
10091         * rt/Makefile (librt.so): Link with ld.so.
10092         * dlfcn/Makefile (libdl.so): Likewise.
10094 2003-01-05  Jakub Jelinek  <jakub@redhat.com>
10096         * sysdeps/unix/sysv/linux/s390/s390-32/socket.S: Add support for
10097         cancellation handling.
10098         * sysdeps/unix/sysv/linux/s390/s390-64/socket.S: Likewise.
10099         * sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c: Likewise.
10101 2003-01-04  Ulrich Drepper  <drepper@redhat.com>
10103         * sysdeps/unix/sysv/linux/i386/system.c (cancel_handler): Correct
10104         order of parameters passed to kill.
10106 2003-01-04  Andreas Schwab  <schwab@suse.de>
10108         * sysdeps/unix/sysv/linux/m68k/bits/stat.h: Add nanosecond fields.
10110 2003-01-03  Paul Eggert  <eggert@twinsun.com>
10112         * malloc/obstack.h (__INT_TO_PTR) [__STDC__]: Cast result to
10113         (void *) to avoid diagnostic with native c89 on SGI IRIX 6.5
10114         when compiling Bison 1.875's `bitset bset = obstack_alloc
10115         (bobstack, bytes);'.  Problem reported by Nelson H. F. Beebe.
10117 2003-01-04  Ulrich Drepper  <drepper@redhat.com>
10119         * sysdeps/posix/system.c (do_system): Minor optimizations.  Remove
10120         unnecessary code.
10121         Correct reference counter in case SIGQUIT handler installation failed.
10123 2003-01-03  Ulrich Drepper  <drepper@redhat.com>
10125         * include/libc-symbols.h [HAVE_WEAK_SYMBOLS] (_weak_extern):
10126         Define using _Pragma(weak ...).
10128 2003-01-03  Andreas Jaeger  <aj@suse.de>, Jakub Jelinek <jakub@redhat.com>
10130         * resolv/res_libc.c: Provide declaration for __res_init_weak and
10131         reorder declarations.
10133 2003-01-03  Art Haas  <ahaas@airmail.net>
10135         * localedata/tests-mbwc/dat_iswalnum.c: Convert GCC extension
10136         initializer syntax to C99.
10137         * localedata/tests-mbwc/dat_iswalpha.c: Likewise.
10138         * localedata/tests-mbwc/dat_iswcntrl.c: Likewise.
10139         * localedata/tests-mbwc/dat_iswctype.c: Likewise.
10140         * localedata/tests-mbwc/dat_iswdigit.c: Likewise.
10141         * localedata/tests-mbwc/dat_iswgraph.c: Likewise.
10142         * localedata/tests-mbwc/dat_iswlower.c: Likewise.
10143         * localedata/tests-mbwc/dat_iswprint.c: Likewise.
10144         * localedata/tests-mbwc/dat_iswpunct.c: Likewise.
10145         * localedata/tests-mbwc/dat_iswspace.c: Likewise.
10146         * localedata/tests-mbwc/dat_iswupper.c: Likewise.
10147         * localedata/tests-mbwc/dat_iswxdigit.c: Likewise.
10148         * localedata/tests-mbwc/dat_mblen.c: Likewise.
10149         * localedata/tests-mbwc/dat_mbrlen.c: Likewise.
10150         * localedata/tests-mbwc/dat_mbrtowc.c: Likewise.
10151         * localedata/tests-mbwc/dat_mbsrtowcs.c: Likewise.
10152         * localedata/tests-mbwc/dat_mbstowcs.c: Likewise.
10153         * localedata/tests-mbwc/dat_mbtowc.c: Likewise.
10154         * localedata/tests-mbwc/dat_strcoll.c: Likewise.
10155         * localedata/tests-mbwc/dat_strfmon.c: Likewise.
10156         * localedata/tests-mbwc/dat_strxfrm.c: Likewise.
10157         * localedata/tests-mbwc/dat_swscanf.c: Likewise.
10158         * localedata/tests-mbwc/dat_towctrans.c: Likewise.
10159         * localedata/tests-mbwc/dat_towlower.c: Likewise.
10160         * localedata/tests-mbwc/dat_towupper.c: Likewise.
10161         * localedata/tests-mbwc/dat_wcrtomb.c: Likewise.
10162         * localedata/tests-mbwc/dat_wcscat.c: Likewise.
10163         * localedata/tests-mbwc/dat_wcschr.c: Likewise.
10164         * localedata/tests-mbwc/dat_wcscmp.c: Likewise.
10165         * localedata/tests-mbwc/dat_wcscoll.c: Likewise.
10166         * localedata/tests-mbwc/dat_wcscpy.c: Likewise.
10167         * localedata/tests-mbwc/dat_wcscspn.c: Likewise.
10168         * localedata/tests-mbwc/dat_wcslen.c: Likewise.
10169         * localedata/tests-mbwc/dat_wcsncat.c: Likewise.
10170         * localedata/tests-mbwc/dat_wcsncmp.c: Likewise.
10171         * localedata/tests-mbwc/dat_wcsncpy.c: Likewise.
10172         * localedata/tests-mbwc/dat_wcspbrk.c: Likewise.
10173         * localedata/tests-mbwc/dat_wcsrtombs.c: Likewise.
10174         * localedata/tests-mbwc/dat_wcsspn.c: Likewise.
10175         * localedata/tests-mbwc/dat_wcsstr.c: Likewise.
10176         * localedata/tests-mbwc/dat_wcstod.c: Likewise.
10177         * localedata/tests-mbwc/dat_wcstok.c: Likewise.
10178         * localedata/tests-mbwc/dat_wcstombs.c: Likewise.
10179         * localedata/tests-mbwc/dat_wcswidth.c: Likewise.
10180         * localedata/tests-mbwc/dat_wcsxfrm.c: Likewise.
10181         * localedata/tests-mbwc/dat_wctob.c: Likewise.
10182         * localedata/tests-mbwc/dat_wctomb.c: Likewise.
10183         * localedata/tests-mbwc/dat_wctrans.c: Likewise.
10184         * localedata/tests-mbwc/dat_wctype.c: Likewise.
10185         * localedata/tests-mbwc/dat_wcwidth.c: Likewise.
10187 2003-01-03  Richard Henderson  <rth@redhat.com>
10189         * sysdeps/unix/sysv/linux/alpha/sysdep.h (inline_syscall_r0_asm): New.
10190         (inline_syscall_r0_constraint): New.
10191         (inline_syscall[0-6]): Use them.
10193 2003-01-03  Jakub Jelinek  <jakub@redhat.com>
10195         * sysdeps/generic/ldsodefs.h (_dl_allocate_tls, _dl_deallocate_tls):
10196         Add rtld_hidden_proto.
10197         * sysdeps/generic/dl-tls.c (_dl_deallocate_tls): Add rtld_hidden_def.
10198         (_dl_allocate_tls): Likewise.  Remove INTDEF.
10200 2002-07-05  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
10202         * sysdeps/sh/memcpy.S: Optimize.  Based on a patch by Toshiyasu
10203         Morita <toshiyasu.morita@hsa.hitachi.com>.
10204         * sysdeps/sh/memcpy.S: Likewise.
10206 2003-01-02  Ulrich Drepper  <drepper@redhat.com>
10208         * sysdeps/pthread/aio_suspend.c (aio_suspend): Don't quite remove
10209         any, but unify the test.
10211 2003-01-02  Jakub Jelinek  <jakub@redhat.com>
10213         * sysdeps/unix/sysv/linux/arm/sigaction.c (__sigaction,
10214         sigaction): Protect weak_alias and libc_hidden_weak with
10215         #ifndef LIBC_SIGACTION.
10216         * sysdeps/unix/sysv/linux/ia64/sigaction.c (__sigaction,
10217         sigaction): Likewise.
10218         * sysdeps/unix/sysv/linux/mips/sigaction.c (__sigaction,
10219         sigaction): Likewise.
10220         * sysdeps/unix/sysv/linux/s390/s390-64/sigaction.c (__sigaction,
10221         sigaction): Likewise.
10222         * sysdeps/unix/sysv/linux/sparc/sparc32/sigaction.c (__sigaction,
10223         sigaction): Likewise.
10224         * sysdeps/unix/sysv/linux/sparc/sparc64/sigaction.c (__sigaction,
10225         sigaction): Likewise.
10226         * sysdeps/unix/sysv/linux/x86_64/sigaction.c (__sigaction,
10227         sigaction): Likewise.
10228         * sysdeps/unix/sysv/linux/i386/sigaction.c (__sigaction,
10229         sigaction): Likewise.  Remove SIGCANCEL handling here.
10230         * sysdeps/unix/sysv/linux/sigaction.c (__sigaction, sigaction):
10231         Likewise.
10233 2003-01-02  Art Haas  <ahaas@airmail.net>
10235         * login/tst-utmp.c: Convert GCC extension initializer syntax to C99.
10237 2003-01-02  Ulrich Drepper  <drepper@redhat.com>
10239         * posix/getconf.c: Update copyright year.
10240         * nss/getent.c: Likewise.
10241         * nscd/nscd_nischeck.c: Likewise.
10242         * iconv/iconvconfig.c: Likewise.
10243         * iconv/iconv_prog.c: Likewise.
10244         * elf/ldconfig.c: Likewise.
10245         * catgets/gencat.c: Likewise.
10246         * csu/version.c: Likewise.
10247         * elf/ldd.bash.in: Likewise.
10248         * elf/sprof.c (print_version): Likewise.
10249         * locale/programs/locale.c: Likewise.
10250         * locale/programs/localedef.c: Likewise.
10251         * nscd/nscd.c (print_version): Likewise.
10252         * debug/xtrace.sh: Likewise.
10253         * malloc/memusage.sh: Likewise.
10254         * malloc/mtrace.pl: Likewise.
10256 2003-01-01  Jakub Jelinek  <jakub@redhat.com>
10258         * io/sys/stat.h: Include time.h with __need_timespec even if
10259         __USE_MISC is defined but __USE_XOPEN is not.
10261 2003-01-01  Andreas Jaeger  <aj@suse.de>
10263         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Use union
10264         type to avoid strict aliasing problem.
10265         (_nss_dns_gethostbyname2_r): Likewise.
10266         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyaddr_r): Likewise.
10267         (_nss_dns_getnetbyname_r): Likewise.
10268         * resolv/gethnamaddr.c (_gethtent): Likewise.
10269         (gethostbyname2): Likewise.
10271 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
10273         * string/string-inlines.c: Define __memcpy_g and __strchr_g macros
10274         to avoid using the exported symbols.  Define aliases with the
10275         original names separately.
10277         * include/time.h: Add libc_hidden_proto for __strftime_l.
10278         * include/wchar.h: Add libc_hidden_proto for __wcsftime_l.
10279         * time/strftime.c: Always use libc_hidden_def if _LIBC.
10281         * libio/libioP.h: Add libc_hidden_proto for _IO_file_open.
10282         * libio/fileops.c: Add libc_hidden_def for _IO_file_open.
10284         * malloc/mtrace.c: Add libc_hidden_proto and libc_hidden_def for
10285         tr_break.
10287         * csu/Makefile (routines): Add dso_handle.
10288         * csu/dso_handle.c: New file.
10290 2002-12-31  Roland McGrath  <roland@redhat.com>
10292         * Makerules (compile.S, COMPILE.S): Remove -DASSEMBLER here.
10293         Use $(S-CPPFLAGS) in place of $(asm-CPPFLAGS).
10294         (S-CPPFLAGS): Add -DASSEMBLER here instead.
10295         (generate-md5, +make-deps): Fix magic to get $(S-CPPFLAGS).
10297 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
10299         * malloc/thread-m.h [SHARED] (thread_atfork): Assume __dso_handle
10300         is available.
10302 2002-12-31  Andreas Jaeger  <aj@suse.de>
10304         * sysdeps/unix/sysv/linux/powerpc/powerpc32/kernel_stat.h: Sync
10305         with Linux kernel.
10306         * sysdeps/unix/sysv/linux/sparc/sparc32/kernel_stat.h: Likewise.
10307         * sysdeps/unix/sysv/linux/s390/s390-64/kernel_stat.h: Likewise.
10308         * sysdeps/unix/sysv/linux/hppa/kernel_stat.h: Likewise.
10310         * sysdeps/unix/sysv/linux/kernel_stat.h
10311         (_HAVE_STAT_NSEC,_HAVE_STAT_NSEC64): New.
10313         * sysdeps/unix/sysv/linux/xstatconv.c (xstat_conv): Re-add
10314         __unused[1-3] since they're needed by some platforms.  Handle
10315         _HAVE_STAT_NSEC and _HAVE_STAT_NSEC64.
10317         * sysdeps/unix/sysv/linux/x86_64/bits/stat.h: Add nsec resolution
10318         for structs stat and stat64.
10319         * sysdeps/unix/sysv/linux/ia64/bits/stat.h: Likewise.
10320         * sysdeps/unix/sysv/linux/powerpc/bits/stat.h: Likewise.
10321         * sysdeps/unix/sysv/linux/sparc/bits/stat.h: Likewise.
10322         * sysdeps/unix/sysv/linux/s390/bits/stat.h: Likewise.
10324         * io/sys/stat.h [__USE_MISC]: Define __need_timespec for struct stat.
10326         * sysdeps/unix/sysv/linux/xstatconv.c (xstat_conv): Adjust for
10327         nsec resolution changes.
10328         (xstat64_conv): Likewise.
10329         (xstat32_conv): Likewise.
10331         * sysdeps/unix/sysv/linux/kernel_stat.h: Add nsec resolution for
10332         struct kernel_stat.
10334         * sysdeps/unix/sysv/linux/bits/stat.h: Add nsec resolution for
10335         structs stat and stat64.
10337         * time/time.h (__timespec_defined): Define for __USE_MISC.
10339 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
10341         * include/signal.h: Add libc_hidden_proto for __libc_current_sigrtmin
10342         and __libc_current_sigrtmax.
10344 2002-12-31  Jakub Jelinek  <jakub@redhat.com>
10346         * include/errno.h (__errno_location): Add prototype.
10347         Use libc_hidden_proto unconditionally.
10348         * include/netdb.h (__h_errno_location): Use libc_hidden_proto
10349         unconditionally.
10350         * include/resolv.h (__res_state): Likewise.
10352         * hurd/errno-loc.c (__errno_location): Add libc_hidden_def.
10353         * include/sys/socket.h (accept): Add libc_hidden_proto.
10354         * include/errno.h (__errno_location): Likewise.
10355         * include/netdb.h (__h_errno_location): Likewise.
10356         * include/resolv.h (__res_state): Likewise.
10357         * include/unistd.h (__lseek): Likewise.
10358         * sysdeps/generic/errno-loc.c (__errno_location): Add libc_hidden_def.
10359         * sysdeps/generic/herrno-loc.c (__h_errno_location): Likewise.
10360         * sysdeps/generic/res-state.c (__res_state): Likewise.
10361         * sysdeps/generic/accept.c (accept): Likewise.
10362         * sysdeps/generic/lseek.c (__lseek): Likewise.
10363         * sysdeps/generic/allocrtsig.c (__libc_current_sigrtmin,
10364         __libc_current_sigrtmax): Likewise.
10365         * sysdeps/mach/hurd/accept.c (accept): Likewise.
10366         * sysdeps/mach/hurd/lseek.c (__lseek): Likewise.
10367         * sysdeps/unix/sysv/aix/accept.c (accept): Likewise.
10368         * sysdeps/unix/sysv/aix/lseek.c (__lseek): Likewise.
10369         * sysdeps/unix/sysv/linux/accept.S (accept): Likewise.
10370         * sysdeps/unix/inet/syscalls.list (__GI_accept): New alias to accept.
10371         * sysdeps/unix/sysv/linux/alpha/syscalls.list (__GI_accept): Likewise.
10372         * sysdeps/unix/sysv/linux/hppa/syscalls.list (__GI_accept): Likewise.
10373         * sysdeps/unix/sysv/linux/ia64/syscalls.list (__GI___lseek): New
10374         alias to llseek.
10375         (__GI_accept): New alias to accept.
10376         * sysdeps/unix/sysv/linux/mips/syscalls.list (__GI_accept): Likewise.
10377         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (__GI___lseek):
10378         New alias to llseek.
10379         (__GI_accept): New alias to accept.
10380         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list (__GI_accept):
10381         Likewise.
10382         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (__GI_accept):
10383         Likewise.
10384         * sysdeps/unix/syscalls.list (__GI___lseek): New alias to lseek.
10386         * sysdeps/alpha/setjmp.S : Use libc_hidden_def(name) instead of
10387         strong_alias (name, __GI_name).
10388         * sysdeps/arm/bsd-_setjmp.S : Likewise.
10389         * sysdeps/hppa/bsd-_setjmp.S : Likewise.
10390         * sysdeps/i386/bsd-_setjmp.S : Likewise.
10391         * sysdeps/mips/mips64/bsd-_setjmp.S : Likewise.
10392         * sysdeps/mips/bsd-_setjmp.S : Likewise.
10393         * sysdeps/powerpc/powerpc32/bsd-_setjmp.S : Likewise.
10394         * sysdeps/powerpc/powerpc64/setjmp.S : Likewise.
10395         * sysdeps/s390/s390-32/elf/setjmp.S : Likewise.
10396         * sysdeps/s390/s390-32/bsd-_setjmp.S : Likewise.
10397         * sysdeps/s390/s390-64/elf/setjmp.S : Likewise.
10398         * sysdeps/s390/s390-64/bsd-_setjmp.S : Likewise.
10399         * sysdeps/sh/bsd-_setjmp.S : Likewise.
10400         * sysdeps/sparc/sparc32/setjmp.S : Likewise.
10401         * sysdeps/unix/arm/fork.S : Likewise.
10402         * sysdeps/unix/bsd/hp/m68k/vfork.S : Likewise.
10403         * sysdeps/unix/bsd/i386/vfork.S : Likewise.
10404         * sysdeps/unix/bsd/osf/alpha/fork.S : Likewise.
10405         * sysdeps/unix/bsd/sun/m68k/vfork.S : Likewise.
10406         * sysdeps/unix/bsd/ultrix4/mips/vfork.S : Likewise.
10407         * sysdeps/unix/bsd/vax/vfork.S : Likewise.
10408         * sysdeps/unix/i386/fork.S : Likewise.
10409         * sysdeps/unix/mips/fork.S : Likewise.
10410         * sysdeps/unix/sparc/fork.S : Likewise.
10411         * sysdeps/unix/sparc/vfork.S : Likewise.
10412         * sysdeps/unix/sysv/linux/arm/vfork.S : Likewise.
10413         * sysdeps/unix/sysv/linux/cris/vfork.S : Likewise.
10414         * sysdeps/unix/sysv/linux/i386/vfork.S : Likewise.
10415         * sysdeps/unix/sysv/linux/ia64/fork.S : Likewise.
10416         * sysdeps/unix/sysv/linux/ia64/setjmp.S : Likewise.
10417         * sysdeps/unix/sysv/linux/ia64/vfork.S : Likewise.
10418         * sysdeps/unix/sysv/linux/m68k/vfork.S : Likewise.
10419         * sysdeps/unix/sysv/linux/sh/vfork.S : Likewise.
10420         * sysdeps/unix/sysv/linux/sparc/sparc64/longjmp.S : Likewise.
10421         * sysdeps/unix/sysv/linux/sparc/sparc64/setjmp.S : Likewise.
10422         * sysdeps/unix/sysv/linux/sparc/fork.S : Likewise.
10423         * sysdeps/unix/sysv/linux/sparc/vfork.S : Likewise.
10424         * sysdeps/unix/sysv/linux/x86_64/vfork.S : Likewise.
10425         * sysdeps/unix/fork.S : Likewise.
10426         * sysdeps/vax/bsd-_setjmp.S : Likewise.
10427         * sysdeps/x86_64/bsd-_setjmp.S : Likewise.
10429         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Guard against multiple
10430         inclusion.
10432 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
10434         * include/unistd.h: Add libc_hidden_proto for __fork and __vfork.
10435         * sysdeps/generic/fork.c: Add libc_hidden_def for __fork.
10436         * sysdeps/mach/hurd/fork.c: Likewise.
10437         * sysdeps/unix/sysv/aix/fork.c: Likewise.
10438         * sysdeps/unix/fork.S: Add __GI___fork alias.
10439         * sysdeps/unix/arm/fork.S: Likewise.
10440         * sysdeps/unix/bsd/osf/alpha/fork.S: Likewise.
10441         * sysdeps/unix/i386/fork.S: Likewise.
10442         * sysdeps/unix/mips/fork.S: Likewise.
10443         * sysdeps/unix/sparc/fork.S: Likewise.
10444         * sysdeps/unix/sysv/linux/ia64/fork.S: Likewise.
10445         * sysdeps/unix/sysv/linux/sparc/fork.S: Likewise.
10446         * sysdeps/unix/sysv/linux/syscalls.list: Likewise.
10447         * sysdeps/generic/vfork.c: Add libc_hidden_def for __vfork.
10448         * sysdeps/unix/bsd/hp/m68k/vfork.S: Add __GI___vfork alias.
10449         * sysdeps/unix/bsd/i386/vfork.S: Likewise.
10450         * sysdeps/unix/bsd/sun/m68k/vfork.S: Likewise.
10451         * sysdeps/unix/bsd/ultrix4/mips/vfork.S: Likewise.
10452         * sysdeps/unix/bsd/vax/vfork.S: Likewise.
10453         * sysdeps/unix/sparc/vfork.S: Likewise.
10454         * sysdeps/unix/sysv/linux/arm/vfork.S: Likewise.
10455         * sysdeps/unix/sysv/linux/cris/vfork.S: Likewise.
10456         * sysdeps/unix/sysv/linux/i386/vfork.S: Likewise.
10457         * sysdeps/unix/sysv/linux/ia64/vfork.S: Likewise.
10458         * sysdeps/unix/sysv/linux/m68k/vfork.S: Likewise.
10459         * sysdeps/unix/sysv/linux/sh/vfork.S: Likewise.
10460         * sysdeps/unix/sysv/linux/sparc/vfork.S: Likewise.
10461         * sysdeps/unix/sysv/linux/x86_64/vfork.S: Likewise.
10463         * include/time.h: Add libc_hidden_proto for __nanosleep.
10464         * sysdeps/generic/nanosleep.c: Add libc_hidden_def for __nanosleep.
10465         * sysdeps/mach/nanosleep.c: Likewise.
10466         * sysdeps/unix/sysv/aix/nanosleep.c: Likewise.
10467         * sysdeps/unix/sysv/linux/syscalls.list: Add __GI___nanosleep alias.
10469         * libio/libioP.h: Add libc_hidden_proto for _IO_list_lock,
10470         _IO_list_unlock, and _IO_list_resetlock.
10471         * libio/genops.c: Add libc_hidden_def for _IO_list_lock,
10472         _IO_list_unlock, and _IO_list_resetlock.
10474         * libio/libioP.h: Add libc_hidden_proto for _IO_iter_begin,
10475         _IO_iter_end, _IO_iter_next, and _IO_iter_file.
10476         * libio/genops.c: Add libc_hidden_def for _IO_iter_begin,
10477         _IO_iter_end, _IO_iter_next, and _IO_iter_file.
10479         * include/setjmp.h: Add libc_hidden_proto for __libc_longjmp.
10480         * sysdeps/generic/longjmp.c: Add libc_hidden_def for __longjmp.
10481         * sysdeps/unix/sysv/linux/sparc/sparc64/longjmp.S: Add
10482         __GI___longjmp alias.
10484         * include/setjmp.h: Add libc_hidden_proto for _setjmp.
10485         * sysdeps/alpha/setjmp.S: Add __GI__setjmp alias.
10486         * sysdeps/arm/bsd-_setjmp.S: Likewise.
10487         * sysdeps/generic/bsd-_setjmp.c: Likewise.
10488         * sysdeps/hppa/bsd-_setjmp.S: Likewise.
10489         * sysdeps/i386/bsd-_setjmp.S: Likewise.
10490         * sysdeps/m68k/bsd-_setjmp.c: Likewise.
10491         * sysdeps/mips/bsd-_setjmp.S: Likewise.
10492         * sysdeps/mips/mips64/bsd-_setjmp.S: Likewise.
10493         * sysdeps/powerpc/powerpc32/bsd-_setjmp.S: Likewise.
10494         * sysdeps/powerpc/powerpc64/setjmp.S: Likewise.
10495         * sysdeps/s390/s390-32/bsd-_setjmp.S: Likewise.
10496         * sysdeps/s390/s390-32/elf/setjmp.S: Likewise.
10497         * sysdeps/s390/s390-64/bsd-_setjmp.S: Likewise.
10498         * sysdeps/s390/s390-64/elf/setjmp.S: Likewise.
10499         * sysdeps/sh/bsd-_setjmp.S: Likewise.
10500         * sysdeps/sparc/sparc32/setjmp.S: Likewise.
10501         * sysdeps/unix/sysv/linux/ia64/setjmp.S: Likewise.
10502         * sysdeps/unix/sysv/linux/sparc/sparc64/setjmp.S: Likewise.
10503         * sysdeps/vax/bsd-_setjmp.S: Likewise.
10504         * sysdeps/x86_64/bsd-_setjmp.S: Likewise.
10506 2002-12-30  Ulrich Drepper  <drepper@redhat.com>
10508         * malloc/thread-m.h (thread_atfork): Define using __register_atfork.
10510 2002-12-30  Roland McGrath  <roland@redhat.com>
10512         * Rules (generated): Target removed.
10513         * mach/Makefile (generated): Define it here instead.
10515         * math/Makefile (generated): Add m_*l and m_*f variants too.
10517 2002-12-30  Ulrich Drepper  <drepper@redhat.com>
10519         * elf/dl-close.c (_dl_close): Handle relocation dependencies among
10520         the to-be-deleted objects right away instead of later separately.
10521         The latter fails because the scope data structures of the DSO
10522         might already be gone.
10524         * elf/Makefile: Add rules to build and run reldep8 test.
10525         * elf/reldep8.c: New file.
10526         * elf/reldep8mod1.c: New file.
10527         * elf/reldep8mod2.c: New file.
10528         * elf/reldep8mod3.c: New file.
10529         Contributed by Jakub Jelinek.
10531 2002-12-24  GOTO Masanori  <gotom@debian.or.jp>
10533         * sysdeps/unix/sysv/linux/getdents.c (__GETDENTS): Fix condition
10534         checking of return value ENOSYS from getdents64.
10536 2002-12-28  Andreas Schwab  <schwab@suse.de>
10538         * sysdeps/unix/Makefile: Include $(common-objpfx)s-proto-cancel.d.
10539         ($(common-objpfx)s-%.d): Generalized from
10540         $(common-objpfx)s-proto.d rule.
10541         (common-generated): Add s-proto-cancel.d.
10542         * sysdeps/unix/make-syscalls.sh: Use s-proto-cancel.d for
10543         cancellable syscalls.
10544         * sysdeps/unix/s-proto-cancel.S: New file.
10546 2002-12-29  Roland McGrath  <roland@redhat.com>
10548         * resolv/res_libc.c: Move _res defn magic after res_init defn
10549         so _res macro is in effect for that code.
10551         * Makerules ($(common-objpfx)%.h $(common-objpfx)%.h.d): Fix sed
10552         pattern for prepending $(..) so it doesn't affect $(foo).
10554         * math/Makefile (generated): Add $(addsuffix .c .S,$(calls:s_%=m_%)).
10556 2002-12-29  Jakub Jelinek  <jakub@redhat.com>
10558         * elf/cache.c (add_to_cache): Don't loop forever with 1ULL << 63 set
10559         in hwcap.
10561 2002-12-28  Ulrich Drepper  <drepper@redhat.com>
10563         * misc/sys/cdefs.h (__attribute_deprecated__): New #define.
10565 2002-12-28  Andreas Jaeger  <aj@suse.de>
10567         * sysdeps/generic/readelflib.c (process_elf_file): Cast value to
10568         avoid warning.
10569         * sysdeps/generic/dl-cache.c (_dl_load_cache_lookup): Likewise.
10571 2002-12-27  Jakub Jelinek  <jakub@redhat.com>
10573         * inet/herrno.c (__h_errno_location): Remove.
10574         * inet/Makefile (routines): Add herrno-loc.
10575         * resolv/res_libc.c (__res_state): Remove.
10576         * resolv/Makefile (routines): Add res-state.
10577         * sysdeps/generic/herrno-loc.c: New file.
10578         * sysdeps/generic/res-state.c: New file.
10580 2002-12-27  Jakub Jelinek  <jakub@redhat.com>
10582         * sysdeps/unix/sysv/linux/i386/sysdep.h (I386_USE_SYSENTER):
10583         Only define if USE_DL_SYSINFO is defined.
10585 2002-12-22  Jakub Jelinek  <jakub@redhat.com>
10587         * sysdeps/unix/sysv/linux/ia64/sysdep.h (INLINE_SYSCALL,
10588         INTERNAL_SYSCALL, INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERROR):
10589         Define. Patch by Richard Henderson and Jes Sorensen.
10590         (PSEUDO): Remove unnecessary ;;.
10591         * elf/rtld.c (dl_main): Initialize TLS even if no PT_TLS segments
10592         are found unless TLS_INIT_TP_EXPENSIVE.  Use NONTLS_INIT_TP.
10593         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Use NONTLS_INIT_TP
10594         if not initializing thread pointer.
10595         [!USE_TLS && NONTLS_INIT_TP] (__pthread_initialize_minimal): New.
10596         * sysdeps/generic/libc-start.c (__pthread_initialize_minimal): Don't
10597         make it weak also if NONTLS_INIT_TP.
10598         * sysdeps/unix/common/pause.c: Handle cancellation.
10599         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h [DONT_LOAD_G1]
10600         (LOADSYSCALL): Remove.
10601         (SYSCALL_ERROR_HANDLER_ENTRY): Define.
10602         (SYSCALL_ERROR_HANDLER): Use it.
10603         (PSEUDO): Don't jump around error handler.
10604         * sysdeps/unix/sysv/linux/sparc/sparc32/pipe.S (__libc_pipe): Don't
10605         jump around error handler.
10606         * sysdeps/unix/sysv/linux/sparc/sparc32/syscall.S (syscall): Likewise.
10607         * sysdeps/unix/sysv/linux/sparc/sparc32/socket.S (__socket): Branch
10608         to __syscall_error_handler on failure.
10609         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h [DONT_LOAD_G1]
10610         (LOADSYSCALL): Remove.
10611         (SYSCALL_ERROR_HANDLER_ENTRY): Define.
10612         (SYSCALL_ERROR_HANDLER): Use it.
10613         (PSEUDO): Don't jump around error handler.
10614         * sysdeps/unix/sysv/linux/sparc/sparc64/pipe.S (__libc_pipe): Don't
10615         jump around error handler.
10616         * sysdeps/unix/sysv/linux/sparc/sparc64/syscall.S (syscall): Likewise.
10617         * sysdeps/unix/sysv/linux/sparc/sparc64/socket.S (__socket): Branch
10618         to __syscall_error_handler on failure.
10620 2002-12-27  Roland McGrath  <roland@redhat.com>
10622         * scripts/gen-as-const.awk: New file.
10623         * Makefile (distribute): Add it.
10624         * Makerules ($(common-objpfx)%.h %.h.d: %.sym): New pattern rule.
10625         (before-compile): Add $(gen-as-const-headers:%.sym=$(common-objpfx)%.h)
10626         to the list.
10627         (+depfiles): Add $(addprefix $(common-objpfx),$(gen-as-const-headers)).
10629 2002-12-27  Andreas Schwab  <schwab@suse.de>
10631         * sysdeps/unix/sysv/linux/m68k/socket.S: Add cancellation support.
10633 2002-12-27  Jakub Jelinek  <jakub@redhat.com>
10635         * malloc/arena.c (ptmalloc_init): Don't call next_env_entry if
10636         _environ is NULL.
10638 2002-12-27  Andreas Schwab  <schwab@suse.de>
10640         * Makerules ($(common-objpfx)%.make): Filter through
10641         $(sed-remove-objpfx).
10643 2002-12-23  Roland McGrath  <roland@redhat.com>
10645         * scripts/abilist.awk: Produce a more compact format, divided into
10646         stanzas for each version set, the set name listed only once.
10647         * scripts/extract-abilist.awk: New file.
10648         * scripts/merge-abilist.awk: New file.
10649         * Makerules (check-abi-%, update-abi-%): New pattern rules.
10650         (update-abi, check-abi): New targets.
10651         * Makefile (+subdir_targets): Add subdir_{check,update}-abi.
10653 2002-12-19  Roland McGrath  <roland@redhat.com>
10655         * Makerules (%.symlist): Use LC_ALL=C when running awk script.
10657         * sysdeps/unix/sysv/linux/i386/brk.c (__brk): Cast result of
10658         INTERNAL_SYSCALL.
10660 2002-12-21  Andreas Schwab  <schwab@suse.de>
10662         * elf/check-textrel.c (handle_file): Swap p_type.
10664 2002-12-21  Andreas Schwab  <schwab@suse.de>
10666         * sysdeps/unix/sysv/linux/m68k/sysdep.h (INTERNAL_SYSCALL): Define.
10667         (INLINE_SYSCALL): Use it.
10668         (INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Define.
10669         (SYSCALL_ERROR_HANDLER): Define RTLD_PRIVATE_ERRNO variant.
10671         * sysdeps/unix/sysv/linux/m68k/getpagesize.c: Use INTERNAL_SYSCALL.
10672         * sysdeps/unix/sysv/linux/m68k/brk.c: Likewise.
10674 2002-12-20  Art Haas  <ahaas@airmail.net>
10676         * sysdeps/gnu/siglist.c: Convert GCC extension initializer
10677         syntax to C99.
10679 2002-12-21  Philip Blundell  <philb@gnu.org>
10681         * sysdeps/arm/elf/start.S (_start): Optimise a little.  Push stack
10682         top as seventh arg to __libc_start_main.
10683         Reported by paulnash@wildseed.com.
10685         * sysdeps/unix/sysv/linux/arm/clone.S: Small optimisation.
10687         * sysdeps/unix/sysv/linux/arm/sigcontextinfo.h: Elide
10688         compatibility cruft when new enough kernel is assumed.
10690 2002-12-20  Jakub Jelinek  <jakub@redhat.com>
10692         * sysdeps/unix/sysv/linux/i386/brk.c (__brk): Use INTERNAL_SYSCALL
10693         instead of INLINE_SYSCALL.
10695 2002-12-20  Ulrich Drepper  <drepper@redhat.com>
10697         * sysdeps/unix/sysv/linux/i386/sigaction.c (__libc_sigaction): Fix
10698         typo.
10700         * sysdeps/unix/sysv/linux/alpha/bits/shm.h: Define SHM_HUGETLB.
10701         * sysdeps/unix/sysv/linux/bits/shm.h: Likewise.
10702         * sysdeps/unix/sysv/linux/hppa/bits/shm.h: Likewise.
10703         * sysdeps/unix/sysv/linux/ia64/bits/shm.h: Likewise.
10704         * sysdeps/unix/sysv/linux/mips/bits/shm.h: Likewise.
10705         * sysdeps/unix/sysv/linux/powerpc/bits/shm.h: Likewise.
10706         * sysdeps/unix/sysv/linux/s390/bits/shm.h: Likewise.
10707         * sysdeps/unix/sysv/linux/sparc/bits/shm.h: Likewise.
10708         * sysdeps/unix/sysv/linux/x86_64/bits/shm.h: Likewise.
10709         Patch by William Lee Irwin <wli@holomorphy.com>.
10711 2002-12-20  Andreas Schwab  <schwab@suse.de>
10713         * locale/programs/ld-measurement.c (measurement_output): Fix
10714         index calculation.
10716 2002-12-20  Ulrich Drepper  <drepper@redhat.com>
10718         * include/libio.h [_IO_MTSAFE_IO && _IO_lock_inexpensive]:
10719         Redefine _IO_flockifle and _IO_funlockfile as inlines.
10721         * sysdeps/generic/dl-sysdep.c (_dl_important_hwcaps): For TLS
10722         builds add "tls" in the search path.
10723         * elf/ldconfig.c (is_hwcap_platform): Also recognize "tls".
10724         (path_hwcap): Recognize "tls".
10726 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
10728         * sysdeps/unix/sysv/linux/i386/system.c (cancel_handler): Use
10729         __waitpid instead of waitpid.
10731         * sysdeps/unix/sysv/linux/i386/_exit.S: Use ENTER_KERNEL instead of
10732         int $0x80.
10733         * sysdeps/unix/sysv/linux/i386/getcontext.S: Likewise.
10734         * sysdeps/unix/sysv/linux/i386/setcontext.S: Likewise.
10735         * sysdeps/unix/sysv/linux/i386/swapcontext.S: Likewise.
10737         * sysdeps/unix/sysv/linux/i386/sysdep.h: Add support to use AT_SYSINFO
10738         information for system calls.
10740         * sysdeps/generic/dl-sysdep.h: Define RTLD_PRIVATE_ERRNO to 1 only
10741         for ld.so.
10743         * elf/rtld.c (_dl_start) [USE___THREAD]: Define initdtv.
10745 2002-12-19  Roland McGrath  <roland@redhat.com>
10747         * iconvdata/ibm856.h: Convert GCC extension initializer syntax to C99.
10748         * iconvdata/ibm922.h: Likewise.
10749         * iconvdata/ibm930.h: Likewise.
10750         * iconvdata/ibm932.h: Likewise.
10751         * iconvdata/ibm933.h: Likewise.
10752         * iconvdata/ibm935.h: Likewise.
10753         * iconvdata/ibm937.h: Likewise.
10754         * iconvdata/ibm939.h: Likewise.
10755         * iconvdata/ibm943.h: Likewise.
10756         * iconvdata/isiri-3342.h: Likewise.
10758 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
10760         * test-skeleton.c (main): Make sure correct value is seen as
10761         argv[0] after adjustment of argv, and argc.
10763         * elf/rtld.c: Don't initialize _dl_dynamic_weak to 1 if
10764         RTLD_CORRECT_DYNAMIC_WEAK is defined.
10766 2002-12-19  Jakub Jelinek  <jakub@redhat.com>
10768         * nscd/connections.c (nscd_run): Shut up warning.
10769         * tst-ungetc.c (assert): Undefined before redefining.
10771 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
10773         * posix/regex.c: Use __builtin_expect even outside glibc if gcc 3
10774         is used.
10776 2002-12-17  Art Haas  <ahaas@airmail.net>
10778         * iconvdata/cp737.h: Convert GCC extension initializer syntax to C99.
10779         * iconvdata/cp775.h: Likewise.
10780         * iconvdata/ibm1046.h: Likewise.
10781         * iconvdata/ibm1124.h: Likewise.
10782         * iconvdata/ibm1129.h: Likewise.
10783         * iconvdata/ibm1132.h: Likewise.
10784         * iconvdata/ibm1133.h: Likewise.
10785         * iconvdata/ibm1160.h: Likewise.
10786         * iconvdata/ibm1161.h: Likewise.
10787         * iconvdata/ibm1162.h: Likewise.
10788         * iconvdata/ibm1163.h: Likewise.
10789         * iconvdata/ibm1164.h: Likewise.
10791 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
10793         * sysdeps/unix/sysv/linux/i386/system.c: Define FORK only if
10794         __ASSUME_CLONE_THREAD_FLAGS is defined.
10795         * sysdeps/unix/sysv/linux/kernel-features.h
10796         (__ASSUME_CLONE_THREAD_FLAGS): Define for x86 and kernel >= 2.5.50.
10798 2002-12-18  Ulrich Drepper  <drepper@redhat.com>
10800         * sysdeps/unix/sysv/linux/i386/brk.c: Use INTERNAL_SYSCALL instead
10801         of asm.
10802         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
10804         * elf/dl-support.c [NEED_DL_SYSINFO]: Define and initialize
10805         _dl_sysinfo.
10806         [DL_SYSINFO_IMPLEMENTATION]: If defined use it to generate the needed
10807         code.
10808         * elf/rtld.c [DL_NEED_SYSINFO]: Initialize _dl_sysinfo element of
10809         _rtld_global.
10810         [DL_SYSINFO_IMPLEMENTATION]: If defined use it to generate the needed
10811         code.
10812         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start) [NEED_DL_SYSINFO]:
10813         Check for AT_SYSINFO and set _dl_sysinfo appropriately.
10814         * sysdeps/generic/ldsodefs.h (struct rtld_global) [NEED_DL_SYSINFO]:
10815         Add _dl_sysinfo.
10817 2002-12-18  Jakub Jelinek  <jakub@redhat.com>
10819         * misc/Versions [libc: GLIBC_2.3.1]: Move __libc_readv and
10820         __libc_writev to...
10821         [libc: GLIBC_PRIVATE]: ...here.
10822         * sysvipc/Versions [libc: GLIBC_2.3.1]: Move __libc_msgrcv and
10823         __libc_msgsnd to...
10824         [libc: GLIBC_PRIVATE]: ...here.
10826 2002-12-18  Ulrich Drepper  <drepper@redhat.com>
10828         * sysdeps/unix/sysv/linux/i386/sysdep.h: Define ENTER_KERNEL macro.
10829         Use it instead of directly int $0x80.
10830         * sysdeps/unix/sysv/linux/i386/brk.c: Use ENTER_KERNEL.
10831         * sysdeps/unix/sysv/linux/i386/mmap64.S: Likewise.
10832         * sysdeps/unix/sysv/linux/i386/mmap.S: Likewise.
10833         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
10834         * sysdeps/unix/sysv/linux/i386/socket.S: Likewise.
10835         * sysdeps/unix/sysv/linux/i386/syscall.S: Likewise.
10837 2002-12-17  Ulrich Drepper  <drepper@redhat.com>
10839         * malloc/malloc.c (mALLOPt): Make sure malloc is initialized.
10841         * elf/elf.h (AT_SYSINFO): New define.
10842         * sysdeps/generic/dl-sysdep.c (_dl_show_auxv): Add support for
10843         AT_SYSINFO.
10845 2002-12-17  Jakub Jelinek  <jakub@redhat.com>
10847         * sysdeps/unix/sysv/linux/alpha/syscalls.list (msgrcv, msgsnd):
10848         Make cancelable.
10849         * sysdeps/unix/sysv/linux/hppa/syscalls.list (msgrcv, msgsnd):
10850         Likewise.
10851         * sysdeps/unix/sysv/linux/ia64/syscalls.list (msgrcv, msgsnd):
10852         Likewise.
10853         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (msgrcv, msgsnd):
10854         Likewise.
10855         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (msgrcv, msgsnd):
10856         Likewise.
10857         * sysdeps/unix/sysv/linux/ia64/sigsuspend.c (__sigsuspend): Likewise.
10859         * malloc/thread-m.h (mutex_init, mutex_lock, mutex_trylock,
10860         mutex_unlock): If not building NPTL, use __libc_maybe_call2 if
10861         available, otherwise __libc_maybe_call.
10862         * sysdeps/unix/sysv/linux/x86_64/recv.c: Add support for
10863         cancellation handling.
10864         * sysdeps/unix/sysv/linux/x86_64/send.c: Likewise.
10866 2002-12-17  Isamu Hasegawa  <isamu@yamato.ibm.com>
10868         * posix/regcomp.c (free_workarea_compile): Free the new member
10869         ORG_INDICES.
10870         (analyze): Initialize ORG_INDICES.
10871         (duplicate_node_closure): Search for a existing node, which is
10872         duplicated from the node ORG_DEST and satisfies the constraint
10873         CONSTRAINT.  And use it to avoid inifimite loop.
10874         (search_duplicated_node): New function.
10875         (duplicate_node): Store the index of the original node.
10876         * posix/regex_internal.c (re_dfa_add_node): Realloc ORG_INDICES
10877         if needed.
10878         * posix/regex_internal.h (re_dfa_t): Add new members.
10880 2002-12-17  Ulrich Drepper  <drepper@redhat.com>
10882         * stdio-common/tst-fdopen.c: Undefine assert before redefining it.
10884 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
10886         * sysdeps/posix/system.c (do_system): Add support for installation
10887         of cancellation handlers.
10888         * sysdeps/unix/sysv/linux/i386/system.c: New file.
10890         * stdlib/Makefile (tests): Add tst-system.
10891         * stdlib/tst-system.c: New file.
10893         * sysdeps/unix/sysv/linux/i386/socket.S [NEED_CANCELLATION &&
10894         CENABLE]: Don't lose content of %ebx.
10896 2002-12-17  Jakub Jelinek  <jakub@redhat.com>
10898         * sysdeps/unix/sysv/linux/i386/socket.S: Use SINGLE_THREAD_P
10899         macro instead of comparing %gs:MULTIPLE_THREADS_OFFSET directly.
10901 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
10903         * sysdeps/posix/getaddrinfo.c (gaih_inet): If __nss_lookup_function
10904         fails to return a function pointer don't use it.
10906 2002-12-16  Art Haas  <ahaas@airmail.net>
10908         * io/ftw.c: Convert GCC extension initializer syntax to C99.
10909         * iconvdata/iso-ir-165.c: Likewise.
10910         * iconvdata/jis0208.c: Likewise.
10911         * iconvdata/jis0212.c: Likewise.
10913 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
10915         * sysdeps/unix/sysv/linux/syscalls.list: Add epoll_create,
10916         epoll_ctl, and epoll_wait.
10917         * sysdeps/unix/sysv/linux/Versions [libc: GLIBC_2.3.2]: Add
10918         epoll_create, epoll_ctl, and epoll_wait.
10919         * sysdeps/unix/sysv/linux/sys/epoll.h: New file.  Written by
10920         Davide Libenzi <davidel@xmailserver.org>.
10921         * sysdeps/unix/sysv/linux/Dist: Add sys/epoll.h.
10922         * sysdeps/unix/sysv/linux/Makefile [subdir=misc] (sysdep_headers):
10923         Add sys/epoll.h.
10925 2002-12-16  Art Haas  <ahaas@airmail.net>
10927         * sysdeps/generic/bp-semctl.h: Convert GCC extension initializer
10928         syntax to C99
10929         * sysdeps/unix/sysv/aix/settimer.c: Likewise.
10930         * sysdeps/unix/sysv/aix/sleep.c: Likewise.
10931         * sysdeps/unix/sysv/aix/usleep.c: Likewise.
10933 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
10935         * stdio-common/Makefile (routines): Remove lockfile.  Add
10936         flockfile, ftrylockfile, and funlockfile.
10937         * sysdeps/generic/lockfile.c: Removed.  Each function has its own file.
10938         * sysdeps/generic/flockfile.c: New file.
10939         * sysdeps/generic/ftrylockfile.c: New file.
10940         * sysdeps/generic/funlockfile.c: New file.
10942 2002-12-16  Jakub Jelinek  <jakub@redhat.com>
10944         * sysdeps/unix/sysv/linux/i386/socket.S: Use CENABLE and CDISABLE
10945         macros instead of doing the calls directly.
10946         * sysdeps/unix/make-syscalls.sh: Add ptw-*.$o target name to rules.
10947         * Makerules ($(+sysdir_pfx)sysd-rules): Emit rules for ptw-%
10948         targets.
10950 2002-12-16  Jakub Jelinek  <jakub@redhat.com>
10952         * sysdeps/i386/fpu/bits/mathinline.h: Backout last change.
10953         * sysdeps/ieee754/bits/nan.h: Likewise.
10955         * sysdeps/unix/sysv/linux/ia64/syscalls.list (__syscall_open,
10956         __syscall_wait4, __syscall_ioctl, __syscall_write): Add.
10958 2002-12-16  Roland McGrath  <roland@redhat.com>
10960         * sunrpc/xdr_mem.c (xdrmem_inline): Fix argument type.
10961         * sunrpc/xdr_rec.c (xdrrec_inline): Likewise.
10962         * sunrpc/xdr_stdio.c (xdrstdio_inline): Likewise.
10964         * sysdeps/unix/sysv/linux/syscalls.list: Add getpmsg, putpmsg.
10965         * sysdeps/unix/sysv/linux/mips/syscalls.list: Remove s_getpmsg,
10966         s_putpmsg.
10967         * sysdeps/unix/sysv/linux/i386/getpmsg.c: File removed.
10968         * sysdeps/unix/sysv/linux/i386/putpmsg.c: File removed.
10969         * sysdeps/unix/sysv/linux/m68k/getpmsg.c: File removed.
10970         * sysdeps/unix/sysv/linux/m68k/putpmsg.c: File removed.
10971         * sysdeps/unix/sysv/linux/mips/getpmsg.c: File removed.
10972         * sysdeps/unix/sysv/linux/mips/putpmsg.c: File removed.
10973         * sysdeps/unix/sysv/linux/powerpc/getpmsg.c: File removed.
10974         * sysdeps/unix/sysv/linux/powerpc/putpmsg.c: File removed.
10976 2002-12-13  Paul Eggert  <eggert@twinsun.com>
10978         * sunrpc/rpc/xdr.h (struct XDR.xdr_ops.x_inline): 2nd arg
10979         is now u_int, not int.
10980         (struct XDR.x_handy): Now u_int, not int.
10981         * sunrpc/xdr_mem.c: Include <limits.h>.
10982         (xdrmem_getlong, xdrmem_putlong, xdrmem_getbytes, xdrmem_putbytes,
10983         xdrmem_inline, xdrmem_getint32, xdrmem_putint32):
10984         x_handy is now unsigned, not signed.
10985         Do not decrement x_handy if no change is made.
10986         (xdrmem_setpos): Check for int overflow.
10987         * sunrpc/xdr_sizeof.c (x_inline): 2nd arg is now unsigned.
10988         (xdr_sizeof): Remove cast that is now unnecessary, now that
10989         x_handy is unsigned.
10991 2002-12-15  Art Haas  <ahaas@airmail.net>
10993         * iconv/gconv_conf.c: Convert GCC extension initializer syntax to C99.
10994         * iconvdata/gap.awk: Likewise.
10995         * iconvdata/gen-8bit-gap-1.sh: Likewise.
10996         * iconvdata/gen-8bit-gap.sh: Likewise.
10997         * locale/C-address.c: Likewise.
10998         * locale/C-collate.c: Likewise.
10999         * locale/C-ctype.c: Likewise.
11000         * locale/C-identification.c: Likewise.
11001         * locale/C-measurement.c: Likewise.
11002         * locale/C-messages.c: Likewise.
11003         * locale/C-monetary.c: Likewise.
11004         * locale/C-name.c: Likewise.
11005         * locale/C-numeric.c: Likewise.
11006         * locale/C-paper.c: Likewise.
11007         * locale/C-telephone.c: Likewise.
11008         * locale/C-time.c: Likewise.
11009         * nscd/connections.c: Likewise.
11010         * nscd/grpcache.c: Likewise.
11011         * nscd/hstcache.c: Likewise.
11012         * nscd/pwdcache.c: Likewise.
11013         * stdio-common/vfprintf.c: Likewise.
11014         * stdlib/random.c: Likewise.
11015         * sysdeps/generic/siglist.c: Likewise.
11016         * sysdeps/i386/fpu/bits/mathinline.h: Likewise.
11017         * sysdeps/ieee754/bits/nan.h: Likewise.
11018         * sysdeps/posix/sprofil.c: Likewise.
11019         * sysdeps/unix/sysv/linux/sleep.c: Likewise.
11020         * sysdeps/unix/sysv/linux/sysctl.c: Likewise.
11021         * sysdeps/unix/sysv/linux/usleep.c: Likewise.
11023 2002-12-15  Roland McGrath  <roland@redhat.com>
11025         * sysdeps/unix/sysv/linux/readv.c (do_readv): Use prototype defn.
11027         * sysdeps/unix/sysv/linux/wait.c: Don't include <nptl/pthreadP.h> or
11028         <tls.h> here, no need for it.
11029         * sysdeps/unix/sysv/linux/waitpid.c: Likewise.
11031         * sysdeps/unix/sysv/linux/i386/fcntl.c (do_fcntl): Take ARG as void *
11032         parameter, not varargs parameter.
11034         * sysdeps/generic/sysdep-cancel.h (LIBC_CANCEL_RESET): Evaluate the
11035         argument so it's not an unused variable.
11037         * resolv/resolv.h (__p_key_syms, __p_cert_syms, __p_class_syms,
11038         __p_type_syms, __p_rcode_syms): Remove decls, never really intended
11039         for users.
11041         * resolv/Versions (libresolv: GLIBC_2.3.2): New set, add __p_rcode.
11043 2002-12-15  Ulrich Drepper  <drepper@redhat.com>
11045         * sysdeps/unix/sysv/linux/i386/fcntl.c (do_fcntl): This is the
11046         original __libc_fcntl code.  Just renamed.
11048 2002-12-15  Andreas Schwab  <schwab@suse.de>
11050         * sysdeps/unix/sysv/linux/m68k/clone.S: Make inline syscall to _exit.
11052 2002-12-14  Olaf Hering  <olh@suse.de>
11054         * sysdeps/powerpc/bits/setjmp.h: Include <bits/wordsize.h>.
11055         * sysdeps/powerpc/powerpc64/setjmp.S: Fix typo in r18 load.
11057 2002-12-15  Ulrich Drepper  <drepper@redhat.com>
11059         * sysdeps/unix/sysv/linux/libc_fatal.c: New file.
11061         * sysdeps/generic/sysdep-cancel.h: Add dummy definitions for
11062         SINGLE_THREAD_P, LIBC_CANCEL_ASYNC, and LIBC_CANCEL_RESET.
11064         * sysdeps/unix/sysv/linux/open64.c: New file.
11066         * sysdeps/generic/pselect.c: Add support for cancellation handling.
11067         * sysdeps/posix/open64.c: Likewise.
11068         * sysdeps/posix/sigpause.c: Likewise.
11069         * sysdeps/posix/sigwait.c: Likewise.
11070         * sysdeps/posix/system.c: Likewise.
11071         * sysdeps/posix/waitid.c: Likewise.
11072         * sysdeps/unix/sysv/linux/accept.S: Likewise.
11073         * sysdeps/unix/sysv/linux/connect.S: Likewise.
11074         * sysdeps/unix/sysv/linux/llseek.c: Likewise.
11075         * sysdeps/unix/sysv/linux/msgrcv.c: Likewise.
11076         * sysdeps/unix/sysv/linux/msgsnd.c: Likewise.
11077         * sysdeps/unix/sysv/linux/poll.c: Likewise.
11078         * sysdeps/unix/sysv/linux/pread.c: Likewise.
11079         * sysdeps/unix/sysv/linux/pread64.c: Likewise.
11080         * sysdeps/unix/sysv/linux/pwrite.c: Likewise.
11081         * sysdeps/unix/sysv/linux/pwrite64.c: Likewise.
11082         * sysdeps/unix/sysv/linux/readv.c: Likewise.
11083         * sysdeps/unix/sysv/linux/recv.S: Likewise.
11084         * sysdeps/unix/sysv/linux/recvfrom.S: Likewise.
11085         * sysdeps/unix/sysv/linux/recvmsg.S: Likewise.
11086         * sysdeps/unix/sysv/linux/send.S: Likewise.
11087         * sysdeps/unix/sysv/linux/sendmsg.S: Likewise.
11088         * sysdeps/unix/sysv/linux/sendto.S: Likewise.
11089         * sysdeps/unix/sysv/linux/sigsuspend.c: Likewise.
11090         * sysdeps/unix/sysv/linux/sigtimedwait.c: Likewise.
11091         * sysdeps/unix/sysv/linux/sigwait.c: Likewise.
11092         * sysdeps/unix/sysv/linux/sigwaitinfo.c: Likewise.
11093         * sysdeps/unix/sysv/linux/tcdrain.c: Likewise.
11094         * sysdeps/unix/sysv/linux/wait.c: Likewise.
11095         * sysdeps/unix/sysv/linux/waitpid.c: Likewise.
11096         * sysdeps/unix/sysv/linux/writev.c: Likewise.
11097         * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.
11098         * sysdeps/unix/sysv/linux/i386/socket.S: Likewise.
11100 2002-12-14  Jakub Jelinek  <jakub@redhat.com>
11102         * sysdeps/generic/sysdep-cancel.h: New file.
11103         * sysdeps/unix/make-syscalls.sh: Handle C at start of args as
11104         cancelable syscall.
11105         * sysdeps/unix/inet/syscalls.list (accept, connect, recv, recvfrom,
11106         recvmsg, send, sendmsg, sendto): Make cancelable.
11107         * sysdeps/unix/mman/syscalls.list (msync): Likewise.
11108         * sysdeps/unix/sysv/linux/alpha/syscalls.list (llseek, pread,
11109         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
11110         sendto, osf_select): Likewise.
11111         * sysdeps/unix/sysv/linux/hppa/syscalls.list (accept, connect, recv,
11112         recvfrom, recvmsg, send, sendmsg, sendto): Likewise.
11113         * sysdeps/unix/sysv/linux/ia64/syscalls.list (llseek, pread,
11114         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
11115         sendto): Likewise.
11116         * sysdeps/unix/sysv/linux/mips/syscalls.list (accept, connect, recv,
11117         recvfrom, recvmsg, send, sendmsg, sendto): Likewise.
11118         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (llseek, pread,
11119         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
11120         sendto): Likewise.
11121         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list (llseek, pread,
11122         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
11123         sendto, select): Likewise.
11124         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (llseek, pread,
11125         pwrite, accept, connect, recvfrom, recvmsg, sendmsg, sendto):
11126         Likewise.
11127         * sysdeps/unix/sysv/linux/syscalls.list (creat, nanosleep, pause,
11128         select, fcntl): Likewise.
11129         * sysdeps/unix/sysv/syscalls.list (pause, poll): Likewise.
11130         * sysdeps/unix/syscalls.list (close, fcntl, fsync, lseek, open,
11131         read, readv, select, sigsuspend, write, writev): Likewise.
11133 2002-12-14  Jakub Jelinek  <jakub@redhat.com>
11135         * dirent/bug-readdir1.c: Include unistd.h.
11137 2002-12-13  Jakub Jelinek  <jakub@redhat.com>
11139         * locale/programs/locale.c: Include locarchive.h.
11140         (ARCHIVE_NAME): Define.
11141         (write_archive_locales): New function.
11142         (write_locales): Use it.  Ensure the same locale is not printed
11143         multiple times in verbose mode.
11144         Mode LC_IDENTIFICATION and LC_CTYPE printing into...
11145         (print_LC_IDENTIFICATION, print_LC_CTYPE): ... these helper
11146         functions.
11147         (struct nameent): New type.
11148         (nameentcmp): New function.
11150 2002-12-14  Jakub Jelinek  <jakub@redhat.com>
11152         * posix/regex_internal.c (re_string_context_at): Guard wide char
11153         code with #ifdef RE_ENABLE_I18N.
11155 2002-11-22  Paolo Bonzini  <bonzini@gnu.org>
11157         * posix/regcomp.c (regcomp): __re_compile_fastmap -> re_compile_fastmap
11159 2002-12-13  Roland McGrath  <roland@redhat.com>
11161         * posix/bug-regex15.c: New file.
11162         * posix/Makefile (tests): Add it.
11164         * test-skeleton.c (TEST_DATA_LIMIT): New macro, default to 64MB.
11165         (main): Set RLIMIT_DATA limit to TEST_DATA_LIMIT (or lower if need be).
11167 2002-12-13  Ulrich Drepper  <drepper@redhat.com>
11169         * elf/dl-misc.c (_dl_debug_vdprintf): Don't depend on 5-digit PIDs.
11171         * misc/syslog.c (log_cleanup): Don't use parameter in
11172         __libc_lock_unlock call, use syslog_lock directly.  Adjust callers to
11173         pass NULL instead of a pointer to syslog_lock.
11175 2002-12-12  Ulrich Drepper  <drepper@redhat.com>
11177         * iconvdata/Makefile: iconv-rules: Add definition to use gconv.map
11178         linker map for all iconv modules.
11179         (distribute): Add gconv.map.
11180         * iconvdata/gconv.map: New file.
11182         * elf/Makefile: Also check all iconv modules for text relocations.
11184         * stdlib/Makefile: Remove code to automatically import GMP.
11186         * elf/Makefile (tests): Add rules to build and run check-textrel.
11187         * elf/check-textrel.c: New file.
11189         * sysdeps/unix/sysv/linux/i386/sysdep.h (SETUP_PIC_REG): Add .size
11190         directive.
11192 2002-12-11  Jakub Jelinek  <jakub@redhat.com>
11194         * io/test-utime (main): If stnow.st[am]time is wrong, print it and
11195         not st.st[am]time.
11197 2002-04-30  Bruno Haible  <bruno@clisp.org>
11199         * intl/loadmsgcat.c (_nl_init_domain_conv): Don't append //TRANSLIT to
11200         the encoding if it already has slashes.
11201         Reported by Perry Rapp <prapp@erols.com>.
11203 2002-12-11  Roland McGrath  <roland@redhat.com>
11205         * csu/Makefile ($(objpfx)elf-init.oS): Remove target, braino.
11206         (CPPFLAGS-elf-init.oS, CFLAGS-elf-init.oS): New variables.
11207         Turn off PIC for compiling this file.
11209 2002-12-11  Ulrich Drepper  <drepper@redhat.com>
11211         * malloc/thread-m.h: Remove thread_id type and MUTEX_INITIALIZER
11212         definitions.  Not needed.
11213         [_LIBC]: Use definitions from libc-lock.h instead of referencing
11214         pthread routines directly.
11215         * malloc/arena.c (ptmalloc_unlock_all2): Don't add (void) to
11216         mutex_init calls.
11217         (arena_get2): Don't look at return value of mutex_lock.
11219 2002-12-11  Roland McGrath  <roland@redhat.com>
11221         * csu/Makefile ($(objpfx)elf-init.oS): New target, just clone
11222         elf-init.o instead of compiling a PIC version.
11224 2002-12-11  Bruno Haible  <bruno@clisp.org>
11226         * intl/gettext.h: Renamed to ...
11227         * intl/gmo.h: ... here.
11228         * intl/Makefile (distribute): Add gmo.h, remove gettext.h.
11229         * intl/gettextP.h: Update.
11230         * intl/loadmsgcat.c: Update.
11232         * intl/gettextP.h (PARAMS): Make more portable.
11233         (attribute_hidden): Define as empty macro if not already defined.
11234         * intl/hash-string.h (PARAMS): Make more portable.
11235         * intl/loadinfo.h (PARAMS): Likewise.
11236         * intl/plural-exp.h (PARAMS): Likewise.
11237         (attribute_hidden): Move definition near the definition of
11238         internal_function.
11240         * intl/gettextP.h (_nl_locale_name) [!_LIBC]: New declaration.
11241         * intl/plural-exp.h (plural_eval) [!_LIBC]: New declaration.
11243 2002-07-13  Bruno Haible  <bruno@clisp.org>
11245         * intl/dcigettext.c (freea): New macro.
11246         (FREE_BLOCKS): Free also the registered blocks.
11247         (DCIGETTEXT): Free the 'search' variable.
11248         Reported by Andreas Fischer <a.fischer@asentics.de>.
11250 2002-04-27  Bruno Haible  <bruno@clisp.org>
11252         * intl/gettextP.h [! _LIBC]: Use prefix libintl_ instead of suffix __.
11253         * intl/dcigettext.c: Likewise.
11254         * intl/dcgettext.c: Likewise.
11255         * intl/dgettext.c: Likewise.
11256         * intl/gettext.c: Likewise.
11257         * intl/dcngettext.c: Likewise.
11258         * intl/dngettext.c: Likewise.
11259         * intl/ngettext.c: Likewise.
11260         * intl/textdomain.c: Likewise.
11261         * intl/bindtextdom.c: Likewise.
11262         * intl/plural-exp.h: Likewise.
11264 2002-01-02  Bruno Haible  <bruno@clisp.org>
11266         * intl/loadmsgcat.c (_nl_init_domain_conv): Use PARAMS in extern decl.
11268 2001-04-30  Bruno Haible  <bruno@clisp.org>
11270         * intl/dcigettext.c (getuid, getgid, geteuid, getegid): Provide
11271         default macro definitions.  Needed for mingw32.
11273 2002-12-10  Ulrich Drepper  <drepper@redhat.com>
11275         * sysdeps/i386/bits/byteswap.h (__bswap_64): Apply
11276         __builtin_constant_p to macro parameter.
11278         * sysdeps/generic/sigpause.c: Define all functions as weak.
11279         * sysdeps/posix/sigpause.c: Likewise.
11281         * elf/tst-tls7.c (do_test): Adjustments for l_tls_modid being of
11282         type size_t.
11284 2002-12-10  Jakub Jelinek  <jakub@redhat.com>
11286         * elf/tst-array1.c (preinit_array, init_array, fini_array):
11287         Explicitly align the array to sizeof (void *).
11288         * elf/tst-array2dep.c (init_array, fini_array): Likewise.
11290         * include/libc-symbols.h: Fix a comment typo.
11292         * sysdeps/unix/sysv/linux/alpha/select.S (__libc_select): New alias.
11293         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S (__libc_sigsuspend):
11294         Likewise.
11295         * sysdeps/unix/sysv/linux/ia64/sigsuspend.c (__libc_sigsuspend):
11296         Likewise.
11297         * sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c
11298         (__libc_sigsuspend): Likewise.
11299         * sysdeps/unix/sysv/linux/sparc/sparc64/sigsuspend.c
11300         (__libc_sigsuspend): Likewise.
11301         * sysdeps/generic/creat.c (__libc_creat): Renamed from creat.
11302         (creat): New weak alias.
11304 2002-12-10  Roland McGrath  <roland@redhat.com>
11306         * manual/libc-texinfo.sh: Emit @set ADD-ON for each ADD-ON that
11307         contributes a manual chapter.
11308         * manual/signal.texi (Process Signal Mask): Use @ifset linuxthreads
11309         around xref to it.
11311         * sysdeps/unix/sysv/linux/dl-librecon.h (EXTRA_LD_ENVVARS): Refer to
11312         and move contents to ...
11313         (EXTRA_LD_ENVVARS_LINUX): ... this new macro.  Add break for nonmatch.
11314         * sysdeps/unix/sysv/linux/i386/dl-librecon.h (EXTRA_LD_ENVVARS): Use
11315         it instead of duplicating its contents.
11316         (EXTRA_LD_ENVVARS): Likewise.  Add break for nonmatch.
11318 2002-12-09  Jakub Jelinek  <jakub@redhat.com>
11320         * elf/dl-support.c (_dl_non_dynamic_init): Add DL_OSVERSION_INIT if
11321         defined.
11322         * sysdeps/unix/sysv/linux/dl-librecon.h (_dl_osversion_init): New
11323         function.
11324         (EXTRA_LD_ENVVARS): Use it.
11325         (DL_OSVERSION_INIT): Define.
11326         * sysdeps/unix/sysv/linux/i386/dl-librecon.h: Include linux
11327         dl-librecon.h.
11328         (EXTRA_LD_ENVVARS): Undef before defining.  Use _dl_osversion_init.
11330 2002-12-10  Ulrich Drepper  <drepper@redhat.com>
11332         * Versions.def: No new symbols in 2.3.1, but some new ones in 2.3.2.
11334         * sysdeps/unix/closedir.c (__closedir): Remove __libc_lock_lock
11335         call.  It is not allowed to destroy pthread mutexes which are
11336         still in use even though it is safe for our implementations.  If
11337         somebody still uses the descriptor it is a bug.
11339 2002-12-09  Richard Henderson  <rth@redhat.com>
11341         * csu/abi-note.S: Use .p2align, not .align.
11343 2002-12-09  Ulrich Drepper  <drepper@redhat.com>
11345         * sysdeps/unix/sysv/linux/syscalls.list: Add __libc_creat and
11346         __libc_select aliases.
11348         * sysdeps/unix/sysv/linux/sigwaitinfo.c: Define __libc_sigwaitinfo
11349         alias.
11351         * sysdeps/unix/sysv/linux/sigwait.c: Define __libc_sigwait alias.
11353         * sysdeps/unix/sysv/linux/sigsuspend.c: Define __libc_sigsuspend alias.
11355         * sysdeps/unix/sysv/linux/poll.c: Define __libc_poll alias.
11357         * sysdeps/unix/syscalls.list: Define __libc_select alias.
11359         * sysdeps/posix/waitid.c: Define __libc_waitid alias.
11361         * sysdeps/posix/sigpause.c: Define __libc_sigpause and
11362         __libc___xpg_sigpause aliases.
11364         * sysdeps/generic/pselect.c: Define __libc_pselect alias.
11366         * misc/error.c: Remove use of USE_IN_LIBIO.
11368 2002-12-08  Roland McGrath  <roland@redhat.com>
11370         * elf/Makefile (tests): Uncomment tst-array[123].
11371         * Makeconfig (CPPFLAGS-.oS): Add -DLIBC_NONSHARED=1.
11372         * csu/elf-init.c: New file.
11373         * csu/Makefile (routines, static-only-routines): Add elf-init.
11374         * sysdeps/alpha/elf/start.S: Use __libc_csu_init in place of _init
11375         and __libc_csu_fini in place of _fini.
11376         * sysdeps/arm/elf/start.S: Likewise.
11377         * sysdeps/cris/elf/start.S: Likewise.
11378         * sysdeps/hppa/elf/start.S: Likewise.
11379         * sysdeps/i386/elf/start.S: Likewise.
11380         * sysdeps/ia64/elf/start.S: Likewise.
11381         * sysdeps/m68k/elf/start.S: Likewise.
11382         * sysdeps/mach/hurd/powerpc/static-start.S: Likewise.
11383         * sysdeps/mips/elf/start.S: Likewise.
11384         * sysdeps/powerpc/powerpc32/elf/start.S: Likewise.
11385         * sysdeps/powerpc/powerpc64/elf/start.S: Likewise.
11386         * sysdeps/s390/s390-32/elf/start.S: Likewise.
11387         * sysdeps/s390/s390-64/elf/start.S: Likewise.
11388         * sysdeps/sh/elf/start.S: Likewise.
11389         * sysdeps/sparc/sparc32/elf/start.S: Likewise.
11390         * sysdeps/sparc/sparc64/elf/start.S: Likewise.
11391         * sysdeps/x86_64/elf/start.S: Likewise.
11393         * sysdeps/pthread/aio_notify.c (notify_func_wrapper): Take a malloc'd
11394         struct containing function ptr and value, free it.
11395         (__aio_notify_only): Allocate that and copy values from SIGEV into it.
11396         It's not safe to let the new thread use the SIGEV pointer.
11398 2001-10-20  Paul Eggert  <eggert@twinsun.com>
11400         * misc/error.c (strerror_r): Do not declare unless [!_LIBC].
11401         Do not check for HAVE_DECL_STRERROR_R missing unless STRERROR_R_CHAR_P.
11402         Use strerror_r that is only a macro, even if it is not a function.
11403         (strerror): Check for HAVE_DECL_STRERROR before declaring.
11404         (private_strerror): Use prototypes, not old-style function definition.
11405         (print_errno_message): New function.
11406         Support the POSIX 'int'-flavored strerror_r, as well as the traditional
11407         char*-flavored one.
11408         (error_tail, error, error_at_line): Use it.
11410 2002-12-07  Carlos O'Donell  <carlos@baldric.uwo.ca>
11412         * sysdeps/unix/sysv/linux/hppa/bits/shm.h: Added SHMLBA #define.
11414 2002-12-08  Ulrich Drepper  <drepper@redhat.com>
11416         * scripts/output-format.sed: Fix bug in one of the s expressions
11417         which used / for one too many things.
11419         * include/unistd.h: Declare __libc_close.
11421 2002-12-07  Ulrich Drepper  <drepper@redhat.com>
11423         * sysdeps/generic/bits/stdio-lock.h (_IO_lock_trylock): New define.
11425 2002-12-07  Roland McGrath  <roland@redhat.com>
11427         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Reintroduce changes
11428         from 2002-12-06, but remove unnecessary memset call without removing
11429         necessary copy of initialization image.
11431         * Makerules ($(common-objpfx)format.lds): New target.
11432         (common-generated): Add it.
11433         ($(inst_libdir)/libc.so): Depend on that, and cat it into the result.
11434         * scripts/output-format.sed: New file.
11435         * Makefile (distribute): Add it.
11437 2002-12-07  Ulrich Drepper  <drepper@redhat.com>
11439         * sysdeps/generic/libc-tls.c: Include <sys/param.h>.
11440         Reported by Art Haas <ahaas@airmail.net>.
11442 2002-12-07  Kenneth W. Chen  <kenneth.w.chen@intel.com>
11444         * sysdeps/ia64/strncpy.S (strncpy): Clear ar.ec.  Fix .recovery4.
11446 2002-12-07  Jakub Jelinek  <jakub@redhat.com>
11448         * string/test-strncpy.c (do_random_tests): Improve test coverage.
11450 2002-12-06  Ulrich Drepper  <drepper@redhat.com>
11452         * test-skeleton.c (timeout_handler): Allow expected signal to be
11453         SIGALRM.
11455         * wctype/wcfuncs.c: Add libc_hidden_def for iswalnum.
11457         * sysdeps/posix/raise.c: Add libc_hidden_def for raise.
11459 2002-12-07  Jakub Jelinek  <jakub@redhat.com>
11461         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h [RTLD_PRIVATE_ERRNO]
11462         (SYSCALL_ERROR_HANDLER): Fix a pasto.
11463         Reported by Jeff Bailey <jbailey@nisa.net>.
11465 2002-12-06  Ulrich Drepper  <drepper@redhat.com>
11467         * sysdeps/generic/libc-tls.c: Undo last patch.
11469         * include/wctype.h: Define iswalnum with libc_hidden_proto.
11471         * include/signal.h: Define raise with libc_hidden_proto.
11473         * sysdeps/unix/sysv/linux/fexecve.c (fexecve): Use __snprintf and
11474         __execve instead of snprintf and execve.
11476         * sysdeps/x86_64/fpu/libm-test-ulps: Relax errors for float and double
11477         again a bit.
11479 2002-12-06  Jakub Jelinek  <jakub@redhat.com>
11481         * posix/Makefile (annexc.out): Add -I../dir for all sorted-dirs.
11482         * posix/annexc.c (fmt, testfmt): Remove -D_LIBC.
11484 2002-12-06  Ulrich Drepper  <drepper@redhat.com>
11486         * misc/syslog.c (log_cleanup): New function.
11487         (openlog): Use log_cleanup instead of __libc_mutex_unlock.
11488         (closelog): Likewise.
11490         * elf/dl-close.c: Use __rtld_lock_* macros instead of __libc_lock_*.
11491         * elf/dl-iteratephdr.c: Likewise.
11492         * elf/dl-lookup.c: Likewise.
11493         * elf/dl-misc.c: Likewise.
11494         * elf/dl-open.c: Likewise.
11495         * elf/dl-support.c: Likewise.
11496         * elf/rtld.c: Likewise.
11497         * sysdeps/generic/ldsodefs.h: Likewise.
11498         * sysdeps/generic/bits/libc-lock.h: Define __rtld_lock_* macros.
11499         * sysdeps/mach/bits/libc-lock.h: Likewise.
11500         * sysdeps/mach/hurd/bits/libc-lock.h: Likewise.
11502 2002-12-06  Roland McGrath  <roland@redhat.com>
11504         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Cope with zero ALIGN.
11506         * malloc/hooks.c [_LIBC && (USE___THREAD || (USE_TLS && !SHARED))]
11507         (malloc_starter, memalign_starter, free_starter): Don't define these.
11508         * malloc/malloc.c [_LIBC && (USE___THREAD || (USE_TLS && !SHARED))]:
11509         Don't declare them either.
11510         * malloc/arena.c (ptmalloc_init) [_LIBC && USE_TLS]: Don't call
11511         __pthread_initialize, so no need to set hooks to *_starter.
11512         (ptmalloc_init_minimal): New function, broken out of ptmalloc_init.
11513         [_LIBC && SHARED && USE_TLS && !USE___THREAD]
11514         (__libc_malloc_pthread_startup): New function.
11515         * malloc/Versions (libc: GLIBC_PRIVATE): New set, add that function.
11517         * malloc/hooks.c (memalign_starter): New function.
11518         * malloc/malloc.c: Declare it.
11519         * malloc/arena.c (save_memalign_hook): New variable.
11520         (ptmalloc_init): Set __memalign_hook to memalign_starter.
11522         * elf/dl-minimal.c (free): Clear the memory.
11523         (calloc): Just call malloc, knowing all memory it returns is cleared.
11525         * sysdeps/generic/dl-tls.c (allocate_dtv): Use calloc instead of
11526         malloc and memset; calloc can avoid the zeroing when redundant.
11527         (_dl_tls_setup): Likewise.
11528         * elf/dl-load.c (decompose_rpath): Likewise.
11529         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Comment out memset
11530         call, since memory from sbrk at startup is already zero.
11532         * elf/rtld.c (_dl_start, dl_main): TLS_INIT_TP macro now returns an
11533         error string for failure, null for success.  Update callers.
11534         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Likewise.
11535         * elf/dl-load.c (_dl_map_object_from_fd): Likewise.
11537 2002-12-05  Jakub Jelinek  <jakub@redhat.com>
11539         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (sendfile): Change
11540         args to i:iipi.
11541         (readahead): Change args to i:iii.
11542         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list (readahead):
11543         Change args to i:iii.
11544         * sysdeps/unix/sysv/linux/mips/syscalls.list (readahead): Change
11545         args to i:iiii.
11547 2002-12-05  Roland McGrath  <roland@redhat.com>
11549         * stdlib/cxa_finalize.c (__cxa_finalize): When given a null argument,
11550         call all functions rather than none.
11551         Reported by Mark P. Mitchell <mark@codesourcery.com>.
11553 2002-12-04  Roland McGrath  <roland@redhat.com>
11555         * locale/localeinfo.h [NL_CURRENT_INDIRECT]: Use attribute_tls_model_ie
11556         on _nl_current_LC_* variables.
11558 2002-12-05  Ulrich Drepper  <drepper@redhat.com>
11560         * dirent/bug-readdir1.c (main): Don't call closedir, just close
11561         the file descriptor.  This is testing what the bug report was about.
11563 2002-12-04  Ulrich Drepper  <drepper@redhat.com>
11565         * po/be.po: New file.
11567         * argp/Makefile (tests): Add tst-argp1.
11569         * sysdeps/unix/sysv/linux/alpha/bits/siginfo.h: (struct sigevent):
11570         Change type of _attribute to void*.
11571         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Likewise.
11572         * sysdeps/unix/sysv/linux/bits/siginfo.h: Likewise.
11573         * sysdeps/unix/sysv/linux/mips/bits/siginfo.h: Likewise.
11574         * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Likewise.
11575         * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Likewise.
11577 2002-12-04  Roland McGrath  <roland@redhat.com>
11579         * sysdeps/generic/ldsodefs.h (struct rtld_global): Move all [USE_TLS]
11580         members to the end, so a libpthread compiled with !USE_TLS will still
11581         find other members properly.
11583         * sysdeps/i386/i486/bits/string.h (__strcpy_g): Add dummy output
11584         operand for DEST memory.  Fix dummy input operand to use SRC.
11585         Reported by Davin McCall <davmac@ozonline.com.au>.
11587         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Account for TCB
11588         alignment when initializing the DTV entry.
11590         * elf/dl-load.c (_dl_map_object_from_fd): If we hit a TLS segment
11591         when TLS has not been set up, try to set it up if we can.
11592         * elf/tst-tls4.c: Revert last change.
11593         * elf/tst-tls5.c: Likewise.
11594         * elf/tst-tls6.c: Likewise.
11595         * elf/tst-tls7.c: Likewise.
11596         * elf/tst-tls8.c: Likewise.
11597         * elf/tst-tls9.c: Likewise.
11599         * sysdeps/generic/dl-tls.c [SHARED] (_dl_tls_setup): New function.
11600         * sysdeps/generic/ldsodefs.h: Declare it.
11601         * elf/Versions (ld: GLIBC_PRIVATE): Add it.
11602         * sysdeps/generic/libc-tls.c (init_slotinfo): New static inline
11603         function, broken out of __libc_setup_tls.
11604         (init_static_tls): Likewise.
11605         (__libc_setup_tls): Call them.
11606         (_dl_tls_setup): New function, uses new subroutines.
11608         * elf/dl-close.c (free_slotinfo): Make argument pointer to pointer.
11609         Clear the pointer when returning true.
11610         (libc_freeres_fn) [SHARED]: If GL(dl_initial_dtv) is null, free the
11611         first element of the slotinfo list too.
11613         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Define only if
11614         [SHARED].
11616         * sysdeps/generic/ldsodefs.h (_dl_next_tls_modid): Declare as hidden.
11617         (_dl_determine_tlsoffset): Likewise.
11619         * elf/rtld.c (_dl_initial_error_catch_tsd): Renamed from
11620         startup_error_tsd, made global.
11621         (dl_main): Update initialization.
11622         * elf/dl-tsd.c: Likewise.
11623         * sysdeps/generic/ldsodefs.h: Declare it.
11625 2002-12-03  Ulrich Drepper  <drepper@redhat.com>
11627         * manual/texinfo.tex: Update from latest upstream version.
11629 2002-12-03  Roland McGrath  <roland@redhat.com>
11631         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Include static TLS
11632         area surplus in calculation for sbrk call.
11634         * iconvdata/cp1125.c: New file.
11635         * iconvdata/Makefile (distribute): Add it.
11636         (modules): Add CP1125.
11637         (gen-8bit-gap-modules): Add cp1125.
11638         * iconvdata/gconv-modules: Add CP1125, alias RUSCII.
11639         * iconvdata/tst-tables.sh: Add CP1125 to the list to test.
11641 2002-12-03  Andreas Jaeger  <aj@suse.de>
11643         * sysdeps/x86_64/fpu/libm-test-ulps: Regenerated.
11645 2002-12-03  Ulrich Drepper  <drepper@redhat.com>
11647         * sysdeps/posix/system.c (do_system): Make signal handler
11648         installation thread safe.
11650 2002-12-02  Roland McGrath  <roland@redhat.com>
11652         * sysdeps/unix/sysv/linux/alpha/syscalls.list (readahead): Change
11653         caller from EXTRA to -.
11654         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
11655         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
11656         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
11658 2002-12-02  Carlos O'Donell  <carlos@baldric.uwo.ca>
11660         * sysdeps/hppa/fpu/fesetround.c (fesetround): Use ~FE_DOWNWARD so both
11661         bits of RM are cleared.
11663 2002-12-02  Roland McGrath  <roland@redhat.com>
11665         * elf/tst-tls4.c: Define an unused TLS variable here, so that no lazy
11666         TLS setup is required.
11667         * elf/tst-tls5.c: Likewise.
11668         * elf/tst-tls6.c: Likewise.
11669         * elf/tst-tls7.c: Likewise.
11670         * elf/tst-tls8.c: Likewise.
11671         * elf/tst-tls9.c: Likewise.
11673         * elf/rtld.c (dl_main): Remove [! SHARED] conditional from
11674         `if (GL(dl_tls_max_dtv_idx) > 0)' tests for doing TLS setup.
11675         * elf/dl-close.c (libc_freeres_fn): Check GL(dl_tls_dtv_slotinfo_list)
11676         for being null before calling free_slotinfo.
11677         * elf/dl-load.c (_dl_map_object_from_fd) [SHARED]: For PT_TLS in
11678         dynamic loading, bail with error if GL(dl_tls_max_dtv_idx) is zero.
11680 2002-11-30  Bruno Haible  <bruno@clisp.org>
11682         * iconv/gconv.h (__gconv_btowc_fct): New typedef.
11683         (struct __gconv_step): New field __btowc_fct.
11684         * wcsmbs/btowc.c (__btowc): Use the __btowc_fct shortcut if possible.
11685         * iconv/gconv_int.h (__BUILTIN_TRANSFORM): Renamed from
11686         __BUILTIN_TRANS.
11687         (__gconv_btwoc_ascii): New declaration.
11688         * iconv/gconv_simple.c (BUILTIN_TRANSFORMATION): Add BtowcFct argument.
11689         (__gconv_btwoc_ascii): New function.
11690         * iconv/gconv_builtin.h: Add BtowcFct argument to all
11691         BUILTIN_TRANSFORMATION invocations.
11692         * iconv/gconv_conf.c (BUILTIN_TRANSFORMATION): Add BtowcFct argument.
11693         * iconv/iconvconfig.c (BUILTIN_TRANSFORMATION): Likewise.
11694         * iconv/gconv_builtin.c (map): New field btowc_fct.
11695         (BUILTIN_TRANSFORMATION): Add BtowcFct argument. Use it to initialize
11696         btowc_fct field.
11697         (__gconv_get_builtin_trans): Initialize __btowc_fct field.
11698         * iconv/gconv_cache.c (find_module): Initialize __btowc_fct field.
11699         * iconv/gconv_db.c (gen_steps, increment_counter): Likewise.
11700         * wcsmbs/wcsmbsload.c (to_wc, to_mb): Likewise.
11701         * iconv/skeleton.c: Document STORE_REST and FROM_ONEBYTE.
11702         (gconv_init): Initialize __btowc_fct field.
11703         Undefine EXTRA_LOOP_ARGS and FROM_ONEBYTE at the end.
11704         * iconv/loop.c: Document ONEBYTE_BODY.
11705         (gconv_btowc, FROM_ONEBYTE): Define if ONEBYTE_BODY is defined.
11706         Undefine ONEBYTE_BODY at the end.
11707         * iconvdata/8bit-generic.c (ONEBYTE_BODY): New macro.
11708         * iconvdata/8bit-gap.c (NONNUL): New macro.
11709         (BODY for FROM_LOOP): Use it.
11710         (ONEBYTE_BODY): New macro.
11711         * iconvdata/isiri-3342.c (HAS_HOLES): Set to 1.
11712         (NONNUL): New macro.
11713         * iconvdata/ansi_x3.110.c (ONEBYTE_BODY): New macro.
11714         * iconvdata/armscii-8.c (ONEBYTE_BODY): New macro.
11715         * iconvdata/cp1255.c (ONEBYTE_BODY): New macro.
11716         * iconvdata/cp1258.c (ONEBYTE_BODY): New macro.
11717         * iconvdata/tcvn5712-1.c (ONEBYTE_BODY): New macro.
11718         * iconvdata/big5.c (ONEBYTE_BODY): New macro.
11719         * iconvdata/big5hkscs.c (ONEBYTE_BODY): New macro.
11720         * iconvdata/euc-cn.c (ONEBYTE_BODY): New macro.
11721         * iconvdata/euc-jp.c (ONEBYTE_BODY): New macro.
11722         * iconvdata/euc-jisx0213.c (ONEBYTE_BODY): New macro.
11723         * iconvdata/euc-kr.c (ONEBYTE_BODY): New macro.
11724         * iconvdata/euc-tw.c (ONEBYTE_BODY): New macro.
11725         * iconvdata/gbk.c (ONEBYTE_BODY): New macro.
11726         * iconvdata/gb18030.c (ONEBYTE_BODY): New macro.
11727         * iconvdata/ibm932.c: Include <stdbool.h>.
11728         (TRUE, FALSE): Remove macros.
11729         (BODY for FROM_LOOP): Remove unused variable rp1.
11730         (ONEBYTE_BODY): New macro.
11731         (BODY for TO_LOOP): Use bool.
11732         * iconvdata/ibm932.h (__ibm932sb_to_ucs4_idx): Remove array.
11733         * iconvdata/ibm943.c: Include <stdbool.h>.
11734         (TRUE, FALSE): Remove macros.
11735         (BODY for FROM_LOOP): Remove unused variable rp1.
11736         (ONEBYTE_BODY): New macro.
11737         (BODY for TO_LOOP): Use bool.
11738         * iconvdata/ibm943.h (__ibm943sb_to_ucs4_idx): Remove array.
11739         * iconvdata/iso8859-1.c (ONEBYTE_BODY): New macro.
11740         * iconvdata/iso_6937-2.c (ONEBYTE_BODY): New macro.
11741         * iconvdata/iso_6937.c (ONEBYTE_BODY): New macro.
11742         * iconvdata/johab.c (ONEBYTE_BODY): New macro.
11743         * iconvdata/sjis.c (ONEBYTE_BODY): New macro.
11744         * iconvdata/shift_jisx0213.c (ONEBYTE_BODY): New macro.
11745         * iconvdata/t.61.c (ONEBYTE_BODY): New macro.
11746         * iconvdata/uhc.c (ONEBYTE_BODY): New macro.
11747         * iconvdata/gbbig5.c: Tweak comment.
11749 2002-12-02  Ulrich Drepper  <drepper@redhat.com>
11751         * po/fi.po: Update from translation team.
11753 2002-12-01  Roland McGrath  <roland@redhat.com>
11755         * sysdeps/unix/sysv/linux/getdents.c (__GETDENTS): Fix condition
11756         testing getdents64 return value.
11758         * scripts/versions.awk: Don't pass -n flag to sort command.
11760         * posix/bug-regex13.c: Include <string.h>.
11762         * sysdeps/generic/libc-start.c (__libc_start_main): Do
11763         DL_SYSDEP_OSCHECK here.
11764         * sysdeps/unix/sysv/linux/init-first.c (init): Not here.
11765         * sysdeps/unix/sysv/linux/dl-osinfo.h: Include <fcntl.h>.
11767         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Bail if
11768         argument TCBSIZE <= TLS_INIT_TCB_SIZE, not just if it's zero.
11770         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Check l_tls_offset
11771         instead of l_type to decide whether to use TLS_DTV_UNALLOCATED.
11773         * include/link.h: Comment typo fix.
11775 2002-12-01  Roland McGrath  <roland@frob.com>
11777         * sysdeps/mach/hurd/bits/posix_opt.h (_POSIX_FSYNC): Set to 200112L.
11778         (_POSIX_SPAWN, _POSIX_MAPPED_FILES, _POSIX_MEMLOCK_RANGE,
11779         _POSIX_MEMORY_PROTECTION): Likewise.
11780         (_POSIX_POLL, _POSIX_SELECT): Removed.
11782 2002-11-28  Ulrich Drepper  <drepper@redhat.com>
11784         * sysdeps/unix/sysv/linux/bits/posix_opt.h: Define macros which
11785         require it to 200112L.  Remove _POSIX_POLL and _POSIX_SELECT.
11787 2002-11-28  Jakub Jelinek  <jakub@redhat.com>
11789         * sysdeps/unix/alpha/sysdep.S: Change defined(USE___THREAD) to
11790         USE___THREAD.
11791         * sysdeps/unix/sysv/linux/alpha/sysdep.h (inline_syscall*): Avoid
11792         "=v" constraints.
11794 2002-11-28  Ulrich Drepper  <drepper@redhat.com>
11796         * sysdeps/unix/sysv/linux/x86_64/vfork.S: Don't trash the CPU's
11797         branch prediction buffers by using unpaired call/ret.
11799 2002-11-27  Ulrich Drepper  <drepper@redhat.com>
11801         * sysdeps/unix/sysv/linux/i386/sysdep.h (ASMFMT_2): Fix typo in
11802         first parameters constraint string.
11803         (ASMFMT_3): Likewise.  Patch by stefan.lauterbach@mincom.de.
11805 2002-11-27  Isamu Hasegawa  <isamu@yamato.ibm.com>
11807         * posix/regcomp.c (parse_expression): Set the bit since the back
11808         reference is used in the regular expression.
11809         * posix/regex_internal.c (re_node_set_init_1): Make it clean in case
11810         of malloc failure.
11811         (re_node_set_init_copy): Likewise.
11812         * posix/regex_internal.h (state_array_t): New structure.
11813         (re_sub_match_last_t): Likewise.
11814         (re_sub_match_top_t): Likewise.
11815         (re_match_context_t): Add new members.
11816         (re_dfa_t): Likewise.
11817         * posix/regexec.c (re_search_internal): Invoke prune_impossible_nodes
11818         to check the matching is really correct, and retry if failed.
11819         Move the routin pruning the impossible nodes from here, ...
11820         (prune_impossible_nodes): To this function.
11821         (check_matching): Invoke check_subexp_matching_top, and replace
11822         redundant checking with transit_state_bkref invocation.
11823         (proceed_next_node): Replace strncmp with memcmp.  Reported by
11824         Paolo Bonzini  <bonzini@gnu.org>.
11825         (update_cur_sifted_state): Remove search_subexp invocation.
11826         (search_subexp): Remove this function.
11827         (check_dst_limits_calc_pos): Use search_cur_bkref_entry for
11828         optimization.
11829         (sift_states_bkref): Use search_cur_bkref_entry for optimization.
11830         Remove unused invocation of match_ctx_add_entry.
11831         (transit_state): Invoke check_subexp_matching_top.
11832         (check_subexp_matching_top): New function.
11833         (transit_state_bkref): Remove unused array.
11834         Merge transit_state_bkref_loop.
11835         (transit_state_bkref_loop): Use get_subexp instead of
11836         sift_states_backward.  Use search_cur_bkref_entry for optimization.
11837         Merge this function to transit_state_bkref.
11838         (get_subexp): New function.
11839         (get_subexp_sub): Likewise.
11840         (find_subexp_node): Likewise.
11841         (check_arrival): Likewise.
11842         (check_arrival_expand_ecl): Likewise.
11843         (check_arrival_expand_ecl_sub): Likewise.
11844         (expand_bkref_cache): Likewise.
11845         (match_ctx_init): Initialize new members.
11846         (match_ctx_clean): New function.
11847         (match_ctx_free): Release new members.
11848         (match_ctx_free_subtops): New function.
11849         (match_ctx_add_entry): Fix indent.
11850         (search_cur_bkref_entry): New function.
11851         (match_ctx_add_subtop): Likewise.
11852         (match_ctx_add_sublast): Likewise.
11854 2002-11-25  Ulrich Drepper  <drepper@redhat.com>
11856         * iconv/Makefile (tests): Remove tst-iconv4.c
11857         * iconv/tst-iconv4.c: Moved to...
11858         * iconvdata/tst-iconv4.c: ...here.  New file.
11859         * iconvdata/Makefile (tests): Add tst-iconv4.  Add dependencies.
11861 2002-11-25  Roland McGrath  <roland@redhat.com>
11863         * inet/test-ifaddrs.c (main: addr_string): Handle null SA.
11864         Grok AF_LINK if defined.
11865         From Momchil Velikov <velco@fadata.bg>.
11867         * sysdeps/gnu/ifaddrs.c (getifaddrs): If ioctl fails for netmask,
11868         brdaddr, or dstaddr, just set those pointers to null and don't fail.
11869         Reported by Momchil Velikov <velco@fadata.bg>.
11871         * sysdeps/generic/ifreq.h (__if_nextreq) [_HAVE_SA_LEN]: If sa_len
11872         is > sizeof IFR->ifa_addr, advance past the whole longer length.
11873         (__ifreq): Count up NIFS that way too.
11874         Reported by Momchil Velikov <velco@fadata.bg>.
11876         * sysdeps/mach/hurd/lchmod.c: Include <fcntl.h>.
11878         * sysdeps/mach/hurd/i386/init-first.c: Include <ldsodefs.h>
11879         and <fpu_control.h>.
11881 2002-11-24  Ulrich Drepper  <drepper@redhat.com>
11883         * elf/elf.h (EM_ST19): Fix typo.
11885 2002-11-25  Jakub Jelinek  <jakub@redhat.com>
11887         * include/errno.h (__set_errno): Define as errno = val
11888         unconditionally.
11890 2002-11-24  Roland McGrath  <roland@redhat.com>
11892         * sysdeps/posix/readv.c: Include <errno.h>, use __set_errno macro.
11893         * sysdeps/posix/writev.c: Likewise.
11894         From Momchil Velikov <velco@fadata.bg>.
11896         * elf/dl-error.c [! _LIBC_REENTRANT]: Use a static variable instead of
11897         calling *GL(dl_error_catch_tsd) for a thread-local location.
11898         * elf/rtld.c (startup_error_tsd): Conditionalize on [_LIBC_REENTRANT].
11899         (dl_main): Same for GL(dl_error_catch_tsd) initialization.
11900         * elf/dl-tsd.c: Conditionalize contents on [_LIBC_REENTRANT].
11902         * libio/iofflush.c: Add libc_hidden_def.
11903         * libio/iofwrite.c: Likewise.
11904         * sysdeps/generic/sigtimedwait.c: Likewise.
11905         * sysdeps/generic/sigwaitinfo.c: Likewise.
11906         * sysdeps/posix/sigwait.c: Likewise.
11907         Reported by Momchil Velikov <velco@fadata.bg>.
11909         * inet/inet_lnaof.c (inet_lnaof): Change return type to in_addr_t
11910         to match <arpa/inet.h> declaration.
11911         * inet/inet_netof.c (inet_netof): Likewise.
11912         * inet/inet_mkadr.c (inet_makeaddr): Likewise for argument types.
11913         Reported by Momchil Velikov <velco@fadata.bg>.
11915         * configure.in: Skip AUTOCONF check under --without-cvs.
11916         * configure: Regenerated.
11918         * posix/Makefile (headers): Add bits/pthreadtypes.h.
11919         * sysdeps/unix/sysv/linux/Makefile (sysdep_heaers): Don't add it here.
11920         * sysdeps/unix/sysv/linux/Dist: Remove it from the list.
11922 2002-11-24  Andreas Schwab  <schwab@suse.de>
11924         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Support inline syscall
11925         with six arguments.
11927 2002-11-19  Jim Meyering  <jim@meyering.net>
11929         * time/mktime.c (__mon_yday, __mktime_internal) [!_LIBC]: Declare
11930         as `static'.
11931         * time/strptime.c (__mon_yday) [!_LIBC]: Declare as `static'.
11933 2002-11-23  Roland McGrath  <roland@redhat.com>
11935         * scripts/abilist.awk: Avoid strtonum function, not there in mawk.
11936         Just produce hex output for datum sizes.
11938         * elf/Makefile ($(objpfx)librtld.mk): Tighten up regexp.
11939         Reported by Luca Barbieri <ldb@ldb.ods.org>.
11941 2002-11-20  Steven Munroe  <sjmunroe@us.ibm.com>
11943         * sysdeps/unix/sysv/linux/powerpc/bits/msq.h (msqid_ds)
11944         [__WORDSIZE == 32]: Only PPC32 requires __unused1, __unused2,
11945         and __unused3 fields.
11946         * sysdeps/unix/sysv/linux/powerpc/bits/sem.h (semid_ds)
11947         [__WORDSIZE == 32]: Only PPC32 requires __unused1
11948         and __unused2 fields.
11949         * sysdeps/unix/sysv/linux/powerpc/bits/shm.h (shmid_ds)
11950         [__WORDSIZE == 32]: Only PPC32 requires __unused1, __unused2,
11951         __unused3, and __unused4 fields.
11953         * csu/gmon-start.c (__gmon_start__): Always use TEXT_START macro to
11954         obtain lowest address for profiling in __monstartup call.
11956 2002-11-21  Roland McGrath  <roland@redhat.com>
11958         * sysdeps/ia64/fpu/Makefile (libm-sysdep_routines): Remove redunant
11959         $(calls) $(calls:=f) $(long-c-$(long-double-fcts)).
11961         * locale/localeinfo.h (struct locale_data): Revert last change.
11963         * sysdeps/unix/sysv/linux/ia64/syscalls.list (s_exit_group): Add it.
11964         From Ian Wienand <ianw@gelato.unsw.edu.au>.
11966         * sysdeps/unix/sysv/linux/ia64/sysdep.h (__NR_pread): Define to
11967         __NR_pread64 if not defined.
11968         (__NR_pwrite): Define to __NR_pwrite64 if not defined.
11969         From Ian Wienand <ianw@gelato.unsw.edu.au>.
11971 2002-11-21  Roland McGrath  <roland@frob.com>
11973         * sysdeps/mach/hurd/i386/init-first.c (posixland_init): Set
11974         __libc_multiple_libcs here.  Call __setfpucw.
11976 2002-11-21  Ulrich Drepper  <drepper@redhat.com>
11978         * elf/Makefile (tests): Don't run test-arrayX tests for now.
11980         * sysdeps/unix/sysv/linux/bits/sched.h: Add new CLONE_* flags.
11981         * sysdeps/unix/sysv/linux/i386/clone.S: Add support for
11982         CLONE_CHILD_*TID flags.
11984 2002-11-20  Andreas Jaeger  <aj@suse.de>
11986         * sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h (SIGCONTEXT):
11987         We pass struct ucontext on x86-64.
11988         (GET_PC): Adjust.
11989         (GET_FRAME): Adjust.
11990         (GET_STACK): Adjust.
11992 2002-11-20  Roland McGrath  <roland@redhat.com>
11994         * sysdeps/powerpc/powerpc32/dl-machine.c [! SHARED]: Further
11995         conditionalize [! DO_VERSIONING] #error.
11997         * scripts/abilist.awk: Grok function descriptor symbols.
11999         * intl/tst-gettext.c (main): Check return values from setlocale.
12000         Add necessary unsetenv's to make LANG=existing-locale check work.
12002         * intl/tst-gettext.sh: Use mkdir -p.  Copy test files unconditionally,
12003         so aborted prior runs don't confuse things.
12005         * locale/localeinfo.h (struct locale_data: union locale_data_value):
12006         Use uintptr_t instead of unsigned int for `word' member.
12007         (_NL_CURRENT_WORD): Cast to uint32_t.
12009         * posix/bug-regex5.c (main): Use union to extract _NL_COLLATE_NRULES
12010         value.
12012 2002-11-20  Ulrich Drepper  <drepper@redhat.com>
12014         * elf/tls-macros.h: Add IA-64 definitions.
12015         Patch by Ian Wienand <ianw@gelato.unsw.edu.au>.
12017         * iconv/Makefile (tests): Add tst-iconv4.
12018         * iconv/tst-iconv4.c: New file.
12020         * iconv/gconv_simple.c (internal_ucs4le_loop_unaligned): Return
12021         __GCONV_EMPTY_INPUT only if input is really empty.  Otherwise
12022         __GCONV_INCOMPLETE_INPUT.
12023         (ucs4le_internal_loop): Likewise.
12024         (ucs4le_internal_loop_unaligned): Likewise.
12025         * iconvdata/unicode.c (PREPARE_LOOP): Likewise.
12026         * iconvdata/utf-16.c (PREPARE_LOOP): Likewise.
12027         * iconvdata/utf-32.c (PREPARE_LOOP): Likewise.
12029         * iconv/loop.c (LOOPFCT): First test for empty input then for full
12030         output buffer.
12032         * inet/getnameinfo.c: Use extend_alloca where appropriate.
12033         * sysdeps/posix/getaddrinfo.c: Likewise.
12035         * include/alloca.h (extend_alloca): New define.  Based on stack
12036         direction it'll try to append to the previouls allocated buffer.
12038 2002-11-07  Thorsten Kukuk  <kukuk@suse.de>
12040         * sysdeps/posix/getaddrinfo.c (gaih_inet): If AF_UNSPEC is set,
12041         use the same service for AF_INET and AF_INET6.
12043 2002-11-19  Ulrich Drepper  <drepper@redhat.com>
12045         * intl/localealias.c (read_alias_file): Use only about 400 bytes
12046         of stack space instead of 16k.
12048 2002-11-18  Wolfram Gloger  <wg@malloc.de>
12050         * malloc/arena.c
12051         (ptmalloc_lock_all, ptmalloc_unlock_all, ptmalloc_unlock_all2): Do
12052         nothing if not initialized.  Bug report from Marcus Brinkmann
12053         <Marcus.Brinkmann@ruhr-uni-bochum.de>.
12055 2002-11-19  Roland McGrath  <roland@redhat.com>
12057         * posix/Versions (libc: GLIBC_2.3.2): Add sched_getaffinity and
12058         sched_setaffinity.
12060         * configure.in (libc_cv_gcc_dwarf2_unwind_info check): Use libraries
12061         `-lgcc -lgcc_eh -lgcc', not just `-lgcc -lgcc_eh' in link commands for
12062         test leading to libc_cv_gcc_dwarf2_unwind_info=no_registry_needed.
12063         * configure: Regenerated.
12065 2002-11-19  Ulrich Drepper  <drepper@redhat.com>
12067         * include/dlfcn.h: __libc_dlopen is now a macro calling
12068         __libc_dlopen_mode with the extra parameter RTLD_LAZY.
12069         (__libc_dlopen_mode): New prototype.
12070         * elf/dl-libc.c (__libc_dlopen_mode): Renamed from __libc_dlopen.  Add
12071         new parameter.  Store new parameter in mode field of structure passed
12072         to do_dlopen.
12073         (struct do_dlopen_args): Add new field mode.
12074         (do_dlopen): Pass mode from parameter structure to _dl_open.
12076 2002-11-11  Randolf Chung  <tausq@debian.org>
12078         * sysdeps/unix/sysv/linux/hppa/bits/fcntl.h [__USE_FILE_OFFSET64]
12079         (F_GETLK, F_SETLK, F_SETLKW): Define to F_*64 versions.
12080         * sysdeps/unix/sysv/linux/hppa/fcntl.c: New file.
12082         * sysdeps/hppa/fpu/libm-test-ulps: New file (generated).
12084         * sysdeps/hppa/Makefile (CFLAGS-rtld.c): New variable.
12085         Set -mdisable-fpregs for this file.
12087 2002-11-11  Carlos O'Donell  <carlos@baldric.uwo.ca>
12089         * sysdeps/unix/sysv/linux/configure.in:
12090         Make 2.4.19 minimum linux kernel for hppa, and add unwind symbols
12091         from gcc-3.0 era for backwards compatibility.
12092         * sysdeps/unix/sysv/linux/configure: Regenerate.
12094         * sysdeps/unix/sysv/linux/hppa/sys/ucontext.h:
12095         Define mcontext_t as a sigcontext.
12097 2002-11-18  Roland McGrath  <roland@redhat.com>
12099         * dlfcn/dlerror.c (fini): New function, __attribute__ ((destructor)).
12100         Free memory in `last_result' if it was used.
12102         * resolv/nss_dns/dns-network.c (getanswer_r): In BYNAME case, search
12103         all aliases for one that matches the "<dotted-quad>.IN-ADDR.ARPA" form.
12104         Do the parsing inline instead of copying strings and calling
12105         inet_network, and properly skip all alias names not matching the form.
12107         * manual/pattern.texi (Variable Substitution): Fix # and ## examples.
12109 2002-11-17  Ulrich Drepper  <drepper@redhat.com>
12111         * manual/pattern.texi (Wordexp Example): Fix sample code.
12113         * sysdeps/unix/sysv/linux/i386/clone.S: Initialize word in the
12114         childs stack which will be loaded into the %esi register.
12116 2002-11-14  Paul Eggert  <eggert@twinsun.com>
12118         * resolv/nss_dns/dns-network.c (getanswer_r): Check for buffer
12119         overflow when skipping the question part and when unpacking aliases.
12121 2002-11-15  Roland McGrath  <roland@redhat.com>
12123         * math/Makefile (libm-calls): Remove s_copysign, s_isinf, s_isnan,
12124         s_finite, s_modf, s_scalbn, s_frexp, m_ldexp, s_signbit.
12125         Instead add $(calls:s_%=m_%) to get m_* versions of them all.
12127 2002-11-15  Jakub Jelinek  <jakub@redhat.com>
12129         * sysdeps/i386/dl-machine.h (elf_machine_rela): Handle R_386_COPY.
12130         * sysdeps/arm/dl-machine.h (elf_machine_rela): Handle R_ARM_COPY.
12132 2002-11-15  Roland McGrath  <roland@redhat.com>
12134         * math/Makefile (libm-calls): Change s_ldexp to m_ldexp.
12135         * Makerules ($(+sysdir_pfx)sysd-rules): Emit pattern rules for m_%.[Sc]
12136         from sysdeps/.../s_%.[Sc] with commands $(+make-include-of-dep).
12137         (+make-include-of-dep): New canned sequence.
12139         * stdlib/canonicalize.c (__realpath): Check for malloc failure.
12140         From Dmitry V. Levin <ldv@altlinux.org>.
12142 2002-11-14  Roland McGrath  <roland@redhat.com>
12144         * sysdeps/generic/errno.c (__libc_errno): Remove alias.
12145         * inet/herrno.c (__libc_h_errno): Likewise.
12146         * resolv/res_libc.c (__libc_res): Likewise.
12147         [USE___THREAD]: Use this in place of [USE_TLS && HAVE___THREAD].
12148         (__res_state) [! USE___THREAD]: Don't define as weak.
12149         * csu/Versions: Revert last change.
12150         * resolv/Versions: Revert last change.
12152         * Makerules ($(common-objpfx)%.make): New pattern rule.
12153         * tls.make.c: New file.
12154         * Makefile (distribute): Add it.
12156         * sysdeps/generic/errno.c [! USE___THREAD]
12157         [HAVE_ELF && SHARED && DO_VERSIONING] (errno, _errno): Declare these
12158         with compat_symbol so they are not link-time visible.
12159         [! USE___THREAD] (__libc_errno): New alias for errno.
12160         * csu/Versions [!(USE_TLS && HAVE___THREAD)] (libc: GLIBC_PRIVATE):
12161         Add __libc_errno here.
12162         * inet/herrno.c [USE___THREAD]: Use this conditional
12163         in place of [USE_TLS && HAVE___THREAD].
12164         [! USE___THREAD] [HAVE_ELF && SHARED && DO_VERSIONING]
12165         (h_errno, _h_errno): Declare these with compat_symbol so they are not
12166         link-time visible.
12167         [! USE___THREAD] (__libc_h_errno): New alias for h_errno.
12168         * resolv/res_libc.c [! USE___THREAD]
12169         [HAVE_ELF && SHARED && DO_VERSIONING] (_res): Likewise.
12170         (_res): Use __attribute__ ((section (".bss"))) so we can have an alias.
12171         (__libc_res): Define as alias for _res.
12172         * resolv/Versions [!(USE_TLS && HAVE___THREAD)] (libc: GLIBC_PRIVATE):
12173         Add __libc_h_errno and __libc_res here.
12175 2002-11-14  Jakub Jelinek  <jakub@redhat.com>
12177         * csu/Versions (errno): Move STT_TLS symbol to GLIBC_PRIVATE for now.
12178         * resolv/Versions (h_errno, _res): Likewise.
12180 2002-11-14  Roland McGrath  <roland@redhat.com>
12182         * Makerules (%.dynsym): Remove $(objpfx) from target and dep.
12183         (%.symlist): Likewise.
12185 2002-11-13  Roland McGrath  <roland@redhat.com>
12187         * scripts/abilist.awk: New file.
12188         * Makefile (distribute): Add it.
12189         * Makerules ($(objpfx)%.dynsym, $(objpfx)%.symlist): New rules.
12190         (tests): Depend on .symlist file for each $(install-lib.so-versioned).
12191         [$(subdir) = elf] (tests): Depend on libc.symlist.
12192         (generated, common-generated): Add those files.
12194         * aclocal.m4 (LIBC_PROG_BINUTILS): Check for objdump, set OBJDUMP.
12195         * configure: Regenerated.
12196         * config.make.in (OBJDUMP): New variable, substituted by configure.
12198         * malloc/mcheck.c (struct hdr): New members `block' and `magic2'.
12199         (mallochook, reallochook): Set them up.
12200         (checkhdr): Check HDR->magic2 value.
12201         (freehook): Reset HDR->magic2.
12202         (memalignhook): New static function.
12203         (old_memalign_hook): New static variable.
12204         (mcheck, reallochook): Set __memalign_hook to memalignhook.
12206         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage): Zero the space
12207         for the new TCB.
12209 2002-11-13  Andreas Jaeger  <aj@suse.de>
12211         * sysdeps/unix/sysv/linux/x86_64/sigaction.c: Check for visibility
12212         attribute.
12213         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
12215 2002-11-11  Paul Eggert  <eggert@twinsun.com>
12217         * manual/crypt.texi (Cryptographic Functions): Mention that
12218         the MD5 one-way algorithm is compatible with BSD's.
12220 2002-11-11  Isamu Hasegawa  <isamu@yamato.ibm.com>
12222         * posix/regex_internal.c (re_string_skip_chars): Also return the last
12223         wide character.
12224         (re_string_reconstruct): Calculate the context by itself when the
12225         offset points out of the valid range.
12226         (re_string_context_at): Use wide character when MB_CUR_MAX > 1.
12227         * posix/regex_internal.h (WIDE_NEWLINE_CHAR): New macro.
12228         (IS_WIDE_WORD_CHAR): New macro.
12229         (IS_WIDE_NEWLINE): New macro.
12231 2002-11-12  Andreas Jaeger  <aj@suse.de>
12233         * sysdeps/x86_64/strchr.S: Don't use one register for two
12234         purposes, this fixes a bug noticed by test-strchr.c.
12236         * sysdeps/x86_64/strcat.S: Fix algorithm to align source pointer
12237         correctly.
12239 2002-11-12  Roland McGrath  <roland@redhat.com>
12241         * libio/libioP.h [_LIBC && !SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_1)]
12242         (_G_IO_NO_BACKWARD_COMPAT): Define it.
12244         * sysdeps/ia64/dl-fptr.c [_LIBC_REENTRANT]: Include <ia64intrin.h>
12245         instead of <pt-machine.h>.
12246         [_LIBC_REENTRANT] (lock, unlock): Use __sync_lock_* macros instead of
12247         testandset.
12248         From Ian Wienand <ianw@gelato.unsw.edu.au>.
12250 2002-11-10  Roland McGrath  <roland@redhat.com>
12252         * libio/bug-wfflush.c (do_test): Call rewind instead of fsetpos.
12253         Call fputs instead of fwprintf (simpler to follow in debugger).
12255         * crypt/md5-crypt.c: Doc fix.
12257         * sysdeps/unix/make-syscalls.sh: Insert $(make-target-directory) at
12258         the beginning of generated target commands.
12260         * csu/Makefile ($(objpfx)crti.o, $(objpfx)crtn.o): Add explicit
12261         dependencies for these in case implicit rule search skipped the
12262         nonexistent source directory.
12263         * sysdeps/gnu/Makefile ($(objpfx)errlist.d): Give this rule all the
12264         files with $(object-suffixes) as targets too.
12265         * Makerules [no_deps && objpfx] (before-compile): Add $(objpfx).
12266         and a target for it using $(make-target-directory).
12268         * Rules (before-compile): Add $(common-objpfx)bits/stdio-lim.h.
12270 2002-11-10  Roland McGrath  <roland@frob.com>
12272         * sysdeps/unix/sysv/linux/bits/pthreadtypes.h: Moved to ...
12273         * sysdeps/generic/bits/pthreadtypes.h: ... here.
12275         * sysdeps/mach/hurd/fcntl.c (__libc_fcntl): Treat a struct flock with
12276         l_start == 0 and l_len == 1 as we do l_len == 0.
12278 2002-11-10  Ulrich Drepper  <drepper@redhat.com>
12280         * po/da.po: Update from translation team.
12282 2002-11-10  Roland McGrath  <roland@redhat.com>
12284         * config.make.in (includedir): New variable, substituted by configure.
12285         Reported missing by Jocelyn Fournier <joc@presence-pc.com>.
12286         * Makeconfig (includedir): Use $(prefix), not $(exec_prefix).
12288 2002-11-10  Andreas Jaeger  <aj@suse.de>
12290         * sysdeps/unix/sysv/linux/x86_64/sys/ucontext.h (enum): Add
12291         REG_OLDMASK and REG_CR2 to synch with kernel header.
12292         (NGREG): Increase.
12294         * nss/getXXent.c (GETFUNC_NAME): Use union type to avoid strict
12295         aliasing problem.
12296         * nss/getXXbyYY_r.c (INTERNAL): Likewise.
12297         * nss/getnssent_r.c (__nss_getent_r): Likewise.
12298         (__nss_setent): Likewise.
12299         (__nss_getent_r): Likewise.
12300         * inet/getnetgrent_r.c (innetgr): Likewise.
12301         (__internal_setnetgrent_reuse): Likewise.
12302         (internal_getnetgrent_r): Likewise.
12303         * inet/ether_hton.c (ether_hostton): Likewise.
12304         * inet/ether_ntoh.c (ether_ntohost): Likewise.
12305         * sunrpc/netname.c (netname2user): Likewise.
12306         * sunrpc/publickey.c (getpublickey): Likewise.
12307         (getsecretkey): Likewise.
12309 2002-11-09  Marcus Brinkmann  <marcus@gnu.org>
12311         * sysdeps/mach/hurd/i386/ioperm.c (ioperm): Correct off by one
12312         error in range calculation.
12314 2002-10-09  Jakub Jelinek  <jakub@redhat.com>
12316         * string/test-strspn.c (do_test): Ensure zero termination.
12317         * string/test-strpbrk.c (do_test): Likewise.
12318         * string/test-strncmp.c (stupid_strncmp): Use strnlen, not strlen.
12319         * string/test-strncpy.c (stupid_strncpy): Likewise.
12320         * string/test-stpncpy.c (stupid_stpncpy): Likewise.
12322 2002-10-08  Roland McGrath  <roland@redhat.com>
12324         * string/test-string.h (test_init): Fill BUF1 and BUF2 with
12325         nonzero characters.
12327 2002-09-22  H.J. Lu  <hjl@gnu.org>
12329         * sysdeps/unix/sysv/linux/mmap64.c (MMAP2_PAGE_SHIFT): Renamed
12330         from PAGE_SHIFT.  Define if not defined.  Check MMAP2_PAGE_SHIFT
12331         only if __NR_mmap2 is defined.
12333         * sysdeps/unix/sysv/linux/powerpc/mmap64.c: Moved to ...
12334         * sysdeps/unix/sysv/linux/mmap64.c: ... here.
12335         * sysdeps/unix/sysv/linux/hppa/mmap64.c: File removed.
12336         * sysdeps/unix/sysv/linux/sparc/sparc32/mmap64.c: FIle removed,
12338 2002-11-08  Jakub Jelinek  <jakub@redhat.com>
12340         * posix/bug-regex13.c (tests): Add new test.
12342         * string/test-strchr.c (stupid_strchr): New function.
12343         (do_random_tests): Make sure the string is zero terminated.
12344         * string/test-strpbrk.c (stupid_strpbrk): New function.
12345         (do_random_tests): Make sure the string is zero terminated.
12346         * string/test-strcmp.c (stupid_strcmp): New function.
12347         (do_random_tests): Make sure the strings are zero terminated.
12348         * string/test-strspn.c (stupid_strspn): New function.
12349         (simple_strspn): Rename rej argument to acc.
12350         (do_random_tests): Make sure the string is zero terminated.
12351         * string/test-strcspn.c (stupid_strcspn): New function.
12352         * string/test-strncpy.c (stupid_strncpy): New function.
12353         * string/test-stpncpy.c (stupid_stpncpy): New function.
12354         * string/test-strncmp.c (stupid_strncmp): New function.
12355         (do_random_tests): Make sure the strings are zero terminated.
12356         * string/test-string.h (impl_t): Change test into long.
12357         (IMPL): Add __attribute__((aligned (sizeof (void *)))).
12359 2002-11-08  Roland McGrath  <roland@redhat.com>
12361         * sysdeps/ia64/elf/configure.in: Add TLS check.
12362         From Ian Wienand <ianw@cse.unsw.edu.au>.
12363         * sysdeps/ia64/elf/configure: Regenerated.
12365 2002-11-07  Roland McGrath  <roland@redhat.com>
12367         * libio/fileops.c (_IO_new_file_overflow): Use INTUSE(_IO_do_write) in
12368         place of _IO_new_do_write.
12369         [_LIBC] (_IO_do_write): Define as macro for _IO_new_do_write and
12370         #undef before versioned_symbol use.
12372 2002-11-07  Richard Henderson  <rth@redhat.com>
12374         * configure.in (ASM_ALPHA_NG_SYMBOL_PREFIX): Remove test.
12375         * configure: Regenerated.
12376         * config.h.in (ASM_ALPHA_NG_SYMBOL_PREFIX): Remove #undef.
12377         * sysdeps/alpha/dl-machine.h (TRAMPOLINE_TEMPLATE): Use !samegp.
12378         (RTLD_START): Likewise.  Access _dl_skip_args, _rtld_local, and
12379         _dl_fini via gp-relative relocations.
12380         * sysdeps/alpha/fpu/e_sqrt.c: Use !samegp.
12382         * elf/tls-macros.h: Add alpha versions.
12383         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Handle TLS relocs.
12384         * sysdeps/unix/alpha/sysdep.S: Support USE___THREAD.
12385         * sysdeps/unix/alpha/sysdep.h: Likewise.  Add SYSCALL_ERROR_HANDLER.
12386         * sysdeps/unix/sysv/linux/alpha/brk.S: Use it.
12387         * sysdeps/unix/sysv/linux/alpha/clone.S: Likewise.
12388         * sysdeps/unix/sysv/linux/alpha/getitimer.S: Likewise.
12389         * sysdeps/unix/sysv/linux/alpha/getrusage.S: Likewise.
12390         * sysdeps/unix/sysv/linux/alpha/gettimeofday.S: Likewise.
12391         * sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S: Likewise.
12392         * sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S: Likewise.
12393         * sysdeps/unix/sysv/linux/alpha/rt_sigaction.S: Likewise.
12394         * sysdeps/unix/sysv/linux/alpha/select.S: Likewise.
12395         * sysdeps/unix/sysv/linux/alpha/setitimer.S: Likewise.
12396         * sysdeps/unix/sysv/linux/alpha/settimeofday.S: Likewise.
12397         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S: Likewise.
12398         * sysdeps/unix/sysv/linux/alpha/syscall.S: Likewise.
12399         * sysdeps/unix/sysv/linux/alpha/utimes.S: Likewise.
12400         * sysdeps/unix/sysv/linux/alpha/wait4.S: Likewise.
12402         * sysdeps/unix/sysv/linux/alpha/sysdep.h: Re-include protect.
12403         Kill argument registers across the inline syscall.
12405         * sysdeps/unix/sysv/linux/alpha/clone.S: Add user_tid and tls args.
12407         * linuxthreads/sysdeps/alpha/tls.h: New file.
12408         * sysdeps/alpha/dl-tls.h: New file.
12410 2002-10-29  David Mosberger  <davidm@hpl.hp.com>
12412         * sysdeps/ia64/elf/initfini.c [HAVE_INITFINI_ARRAY]
12413         (gmon_initializer): New function.
12414         (.init prologue): If HAVE_INITFINI_ARRAY is true, don't call
12415         __gmon_start__ here.  Call it from gmon_initializer() instead.
12417 2002-03-12  H.J. Lu  <hjl@gnu.org>
12419         * elf/Makefile [$(have-initfini-array) = yes] (tests): Add tst-array1,
12420         tst-array2, and tst-array3.
12421         [$(have-initfini-array) = yes] (tests-static): Add tst-array3.
12422         [$(have-initfini-array) = yes] (modules-names): Add tst-array2dep.
12423         ($(objpfx)tst-array1.out): New target.
12424         ($(objpfx)tst-array2): Likewise.
12425         ($(objpfx)tst-array2.out): Likewise.
12426         ($(objpfx)tst-array3.out): Likewise.
12427         * elf/tst-array1.c: New file.
12428         * elf/tst-array1.exp: Likewise.
12429         * elf/tst-array2.c: Likewise.
12430         * elf/tst-array2dep.c: Likewise.
12431         * elf/tst-array2.exp: Likewise.
12432         * elf/tst-array3.c: Likewise.
12434 2002-10-28  David Mosberger  <davidm@hpl.hp.com>
12436         * elf/dl-fini.c (_dl_fini): Invoke fini_array in _reverse_ order.
12437         Don't add L->l_addr to array entry values.
12439 2002-11-07  Jakub Jelinek  <jakub@redhat.com>
12441         * string/test-string.h: New file.
12442         * string/test-strlen.c: New file.
12443         * string/test-string.h: New file.
12444         * string/test-strcmp.c: New file.
12445         * string/test-strchr.c: New file.
12446         * string/test-strrchr.c: New file.
12447         * string/test-strcpy.c: New file.
12448         * string/test-stpcpy.c: New file.
12449         * string/test-strncpy.c: New file.
12450         * string/test-stpncpy.c: New file.
12451         * string/test-strpbrk.c: New file.
12452         * string/test-strcspn.c: New file.
12453         * string/test-strspn.c: New file.
12454         * string/test-strcat.c: New file.
12455         * string/test-strncmp.c: New file.
12456         * string/test-memchr.c: New file.
12457         * string/test-memcmp.c: New file.
12458         * string/test-memset.c: New file.
12459         * string/test-memcpy.c: New file.
12460         * string/test-mempcpy.c: New file.
12461         * string/test-memmove.c: New file.
12462         * string/Makefile (strop-tests): New variable.
12463         (tests): Add strop-tests.
12464         (distribute): Add test-string.h.
12466 2002-11-06  Ulrich Drepper  <drepper@redhat.com>
12468         * posix/regcomp.c: Use tabs instead of spaces.
12469         * posix/regexec.c: Likewise.
12470         * posix/regex_internal.h: Likewise.
12472         * posix/regcomp.c (re_compile_fastmap_iter): Use __wcrtomb not wctomb.
12474 2002-11-06  Jakub Jelinek  <jakub@redhat.com>
12476         * posix/regcomp.c (re_compile_pattern): Don't set regs_allocated
12477         here.
12478         (regcomp): Don't set can_be_null here.
12479         (re_comp): Clear whole re_comp_buf with the exception of fastmap.
12480         (re_compile_internal): Clear can_be_null, set regs_allocated.
12482         * posix/regcomp.c (re_set_fastmap): New function.
12483         (re_compile_fastmap_iter): Use it.  Remove redundant type ==
12484         COMPLEX_BRACKET check.
12485         * posix/regexec.c (re_search_internal): Optimize searching with
12486         fastmap.  Call re_string_reconstruct even if match_first is
12487         smaller than raw_mbs_idx.
12489 2002-11-06  Isamu Hasegawa  <isamu@yamato.ibm.com>
12491         * posix/regcomp (free_dfa_content): Use free_state.
12492         * posix/regex_internal.c (re_string_realloc_buffers): Don't edit
12493         pointers in case that realloc failed.
12494         (re_node_set_merge): Likewise.
12495         (register_state): Likewise.
12496         (create_newstate_common): Invoke memory release functions in case of
12497         error conditions.
12498         (create_ci_newstate): Likewise.
12499         (create_cd_newstate): Likewise.
12500         (free_state): New function.
12501         * posix/regexec.c (re_search_internal): Invoke memory release
12502         functions in case of error conditions.
12503         (sift_states_backward): Likewise.
12504         (merge_state_array): Likewise.
12505         (add_epsilon_src_nodes): Likewise.
12506         (sub_epsilon_src_nodes): Likewise.
12507         (search_subexp): Likewise.
12508         (sift_states_bkref): Likewise.
12509         (transit_state_sb): Likewise.
12510         (transit_state_mb): Likewise.
12511         (transit_state_bkref_loop): Likewise.
12512         (group_nodes_into_DFAstates): Likewise.
12513         (push_fail_stack): Don't edit pointers in case that realloc failed.
12514         (extend_buffers): Likewise.
12515         (match_ctx_add_entry): Likewise.
12517 2002-11-06  Roland McGrath  <roland@redhat.com>
12519         * sysdeps/unix/sysv/linux/mips/configure.in: File removed.
12520         * sysdeps/unix/sysv/linux/mips/configure: Likewise.
12522         * configure.in: Add checks on as and ld for binutils 2.13 or later.
12523         * configure: Regenerated.
12525 2002-11-06  Ulrich Drepper  <drepper@redhat.com>
12527         * posix/regcomp.c (regcomp): __re_compile_fastmap can never fail.
12528         If re_compile_internal failed free fastmap buffer.
12529         (free_dfa_content): Broken out of regfree function.  Frees all dfa
12530         related data.
12531         (regfree): Add free_dfa_content.
12532         (re_compile_internal): If any of the called functions fails free
12533         all dfa related memory.
12535 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
12537         * sysdeps/unix/sysv/linux/sys/sysctl.h: Add ugly hacks to prevent
12538         warnings from the kernel headers.
12540 2002-11-05  Roland McGrath  <roland@redhat.com>
12542         * sysdeps/unix/mips/sysdep.h [! __PIC__] (PSEUDO): Add nop after jump.
12543         From Johannes Stezenbach <js@convergence.de>.
12545         * sysdeps/unix/sysv/linux/mips/Versions (libc: GLIBC_2.0): Change
12546         #errlist-compat magic comment to give 123 as size.
12547         (libc: GLIBC_2.1): Remove this set, moving #errlist-compat magic to ...
12548         (libc: GLIBC_2.2): ... here.
12549         (libc: GLIBC_2.3): Likewise.
12551 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
12553         * elf/dl-fini.c (_dl_fini): Correct the increment of l_opencount
12554         which happens at the beginning so that we can unload modules in
12555         __libc_freeres.
12557 2002-11-06  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
12559         * sysdeps/sh/bits/setjmp.h (JB_SIZE): Define only
12560         under [__USE_MISC || _ASM].
12562         * elf/elf.h: Remove the obsolete SH TLS relocations.
12564 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
12566         * posix/regcomp.c (regcomp): Initialize preg->can_be_null to zero.
12568 2002-11-05  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
12570         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h: Handle
12571         __NR_pread64 and __NR_pwrite64.
12572         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h: Likewise.
12573         * sysdeps/unix/sysv/linux/powerpc/pread.c: Remove __NR_pread64
12574         and __NR_pwrite64.
12575         Revert change to use INLINE_SYSCALL.
12576         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Likewise.
12577         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Likewise.
12578         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Likewise.
12579         * sysdeps/unix/sysv/linux/powerpc/ftruncate64.c: Revert change to use
12580         INLINE_SYSCALL.
12581         * sysdeps/unix/sysv/linux/powerpc/truncate64.c: Likewise.
12583         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (INLINE_SYSCALL):
12584         Update clobber list and add a comment about the syscall ABI.
12586         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list (s_pread64,
12587         s_pwrite64, s_ftruncate, s_truncate): Re-add.
12589 2002-11-05  Jakub Jelinek  <jakub@redhat.com>
12591         * iconv/gconv_dl.c (free_mem): Clear loaded.
12592         * locale/loadarchive.c (_nl_archive_subfreeres): Call locale_data's
12593         cleanup if any.
12595 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
12597         * sysdeps/unix/sysv/linux/fexecve.c: Include <stdio.h>.
12599         * libio/ioseekoff.c: Remove INTDEF.  Define _IO_seekoff_unlocked.  Same
12600         as old code without locking.  _IO_seekoff calls this function after
12601         locking the stream.
12602         * libio/ioseekpos.c: Likewise for _IO_seekpos.
12603         * libio/libioP.h: Replace _IO_seekoff_internal and _IO_seekpos_internal
12604         prototypes with _IO_seekoff_unlocked and _IO_seekpos_unlocked
12605         prototypes.
12606         * libio/iolibio.h (_IO_fseek): Call _IO_seekoff_unlocked instead
12607         of _IO_seekoff_internal.
12608         (_IO_rewind): Likewise.
12609         * libio/ioftell.c: Likewise.
12610         * libio/ftello.c: Likewise.
12611         * libio/ftello64.c: Likewise.
12612         * libio/iofgetpos.c: Likewise.
12613         * libio/iofgetpos64.c: Likewise.
12614         * libio/oldiofgetpos.c: Likewise.
12615         * libio/oldiofgetpos64.c: Likewise.
12616         * libio/iofsetpos.c: Call _IO_seekpos_unlocked instead of
12617         _IO_seekpos_internal.
12618         * libio/iofsetpos64.c: Likewise.
12619         * libio/oldiofsetpos.c: Likewise.
12620         * libio/oldiofsetpos64.c: Likewise.
12622 2002-11-04  Roland McGrath  <roland@redhat.com>
12624         * sysdeps/unix/sysv/linux/powerpc/chown.c: Use INLINE_SYSCALL macro.
12625         * sysdeps/unix/sysv/linux/powerpc/ftruncate64.c: Likewise.
12626         * sysdeps/unix/sysv/linux/powerpc/ioctl.c: Likewise.
12627         * sysdeps/unix/sysv/linux/powerpc/pread.c: Likewise.
12628         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Likewise.
12629         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Likewise.
12630         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Likewise.
12631         * sysdeps/unix/sysv/linux/powerpc/tcgetattr.c: Likewise.
12632         * sysdeps/unix/sysv/linux/powerpc/tcsetattr.c: Likewise.
12633         * sysdeps/unix/sysv/linux/powerpc/truncate64.c: Likewise.
12634         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list (s_ioctl,
12635         s_chown, s_ftruncate64, s_mmap2, s_pread64, s_pwrite64, s_truncate64,
12636         sys_fstat, sys_lstat, sys_mknod, sys_readv, sys_stat, sys_writev):
12637         Remove these, no longer used.
12639 2002-11-04  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
12641         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list (s_ipc,
12642         s_llseek, s_readahead, s_execve, s_fcntl, s_fcntl64, s_fstat64,
12643         s_getcwd, s_getdents, s_getdents64, s_getpmsg, s_getpriority,
12644         s_getrlimit, s_lstat64, s_poll, s_ptrace, s_putpmsg, s_reboot,
12645         s_setrlimit, s_sigaction, s_sigpending, s_sigprocmask, s_sigsuspend,
12646         s_stat64, s_sysctl, s_ugetrlimit, s_ustat, s_vfork): Remove now unused
12647         syscall stubs.
12649         * sysdeps/unix/sysv/linux/pwrite.c: Fix typo.
12650         * sysdeps/unix/sysv/linux/pwrite64.c: Likewise.
12651         * sysdeps/unix/sysv/linux/powerpc/pread.c: Handle both __NR_pread64
12652         and __NR_pread.
12653         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Likewise.
12654         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Handle both __NR_pwrite64
12655         and __NR_pwrite.
12656         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Likewise.
12658 2002-11-03  Roland McGrath  <roland@redhat.com>
12660         * sysdeps/generic/ldsodefs.h (struct rtld_global): New member
12661         `_dl_tls_static_used'.
12662         * sysdeps/generic/libc-tls.c (_dl_tls_static_used): New variable.
12663         (__libc_setup_tls): Initialize it.  Let the initial value of
12664         _dl_tls_static_size indicate some surplus space in the computed value.
12665         * elf/dl-open.c (_dl_tls_static_size): New variable.
12666         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Initialize
12667         _dl_tls_static_used.  Add some surplus space into _dl_tls_static_size.
12668         * elf/dl-reloc.c [USE_TLS] (allocate_static_tls): New function.
12669         (CHECK_STATIC_TLS): Use it.
12670         * elf/dl-close.c (_dl_close): Adjust _dl_tls_static_used when the
12671         closed objects occupied a trailing contiguous chunk of static TLS area.
12673 2002-10-18  Bruno Haible  <bruno@clisp.org>
12675         * charmaps/ISO_5428: Use Greek characters introduced in Unicode 3.0.
12677 2002-11-04  Ulrich Drepper  <drepper@redhat.com>
12679         * libio/wfileops.c (_IO_wfile_seekoff): Don't modify _offset and
12680         _wide_data->_IO_read_end if adjustment can be made in the current
12681         buffer.
12683         * sysdeps/unix/sysv/linux/fexecve.c: New file.
12685         * libio/bug-wfflush.c (do_test): Using fseek is not allowed when
12686         wide oriented streams are used.
12688         * nss/getXXent_r.c (ENDFUNC_NAME): Don't do anything if the
12689         service hasn't been used [PR libc/4744].
12691         * include/features.h: Use __STDC_VERSION__ not __STDC_VERSION.
12692         Reported by Miloslav Trmac <mitr@volny.cz> [PR libc/4766].
12694         * manual/examples/dir.c: Don't include <stddef.h>.
12695         * manual/examples/select.c: Include <errno.h> for TEMP_FAILURE_RETRY.
12696         Reported by Frédéric Delanoy <delanoy_f@yahoo.com>.
12698 2002-11-02  H.J. Lu  <hjl@gnu.org>
12700         * stdio-common/reg-printf.c: Include <stddef.h>.
12702 2002-11-03  Ulrich Drepper  <drepper@redhat.com>
12704         * sysdeps/generic/libc-tls.c: Define _dl_tls_static_used.
12706         * po/ca.po: Update from translation team.
12707         * po/es.po: Likewise.
12709         * sysdeps/generic/segfault.c (catch_segfault): If HAVE_PROC_SELF
12710         is defined write out memory map.
12711         * sysdeps/unix/sysv/linux/segfault.c: New file.
12713 2002-11-02  Roland McGrath  <roland@redhat.com>
12715         * sysdeps/unix/sysv/linux/getdents.c (__GETDENTS): Use union type for
12716         pointers that can alias.
12717         Reported by Daniel Jacobowitz <drow@mvista.com>.
12719         * sysdeps/unix/bsd/bsd4.4/freebsd/bits/typesizes.h: New file.
12721 2002-11-02  Roland McGrath  <roland@redhat.com>
12723         * manual/filesys.texi (Reading/Closing Directory): Rewrite readdir_r
12724         description to be clearer and to say that *RESULT is set to ENTRY.
12726 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
12728         * posix/regexec.c (build_trtable): Alloca or malloc dests_node and
12729         dests_ch arrays together.  Alloca or malloc dest_states,
12730         dest_states_word and dest_states_nl arrays together.  Free memory on
12731         error exit.
12733 2002-10-29  Daniel Jacobowitz  <drow@mvista.com>
12735         * crypt/crypt_util.c (__init_des_r): Initialize current_salt
12736         and current_saltbits.
12738 2002-11-02  Roland McGrath  <roland@redhat.com>
12740         * stdio-common/reg-printf.c: Include <stdlib.h>.
12742 2002-11-02  H.J. Lu  <hjl@gnu.org>
12744         * sysdeps/unix/sysv/linux/mips/syscalls.list (s_execve): Set
12745         caller to EXTRA instead of execve.
12747 2002-11-01  Roland McGrath  <roland@redhat.com>
12749         * sysdeps/generic/errno-loc.c [! USE___THREAD]: Use this conditional
12750         in place of [!(USE_TLS && HAVE___THREAD)].
12751         (__errno_location) [! USE___THREAD]: Define as strong, not weak.
12753 2002-10-31  Roger Sayle  <roger@eyesopen.com>
12755         * sysdeps/i386/soft-fp/sfp-machine.h (_FP_NANFRAC_Q, _FP_NANSIGN_Q):
12756         New macros.
12757         * sysdeps/x86_64/soft-fp/sfp-machine.h: Likewise.
12759         * soft-fp/soft-fp.h: Allow sfp-machine.h to define FP_RND_NEAREST
12760         without defining FP_ROUNDMODE.
12762 2002-10-29  Jakub Jelinek  <jakub@redhat.com>
12764         * sysdeps/gnu/siglist.c (PTR_SIZE_STR): Remove.
12765         (__old_sys_siglist, __old_sys_sigabbrev): Use strong_alias and
12766         declare_symbol.
12767         * sysdeps/mach/hurd/siglist.h (OLD_SIGLIST_SIZE_STR): Remove.
12768         (OLD_SIGLIST_SIZE): Define.
12769         * sysdeps/unix/sysv/linux/siglist.h (OLD_SIGLIST_SIZE_STR): Remove.
12770         (OLD_SIGLIST_SIZE): Define.
12771         * sysdeps/unix/sysv/linux/arm/siglist.c: Remove.
12773 2002-11-01  Jakub Jelinek  <jakub@redhat.com>
12775         * sysdeps/ia64/strncpy.S: Fix recovery code.
12777 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
12779         * include/libc-symbols.h (__libc_freeres_fn_section, libc_freeres_fn):
12780         New macros.
12781         * elf/dl-close.c (free_mem): Use libc_freeres_fn macro, remove
12782         text_set_element.
12783         * elf/dl-libc.c (free_mem): Likewise.
12784         * iconv/gconv_conf.c (free_mem): Likewise.
12785         * iconv/gconv_db.c (free_mem): Likewise.
12786         * iconv/gconv_dl.c (free_mem): Likewise.
12787         * iconv/gconv_cache.c (free_mem): Likewise.
12788         * intl/finddomain.c (free_mem): Likewise.
12789         * intl/dcigettext.c (free_mem): Likewise.
12790         * locale/setlocale.c (free_mem): Likewise.
12791         * misc/fstab.c (fstab_free): Likewise.
12792         * nss/nsswitch.c (free_mem): Likewise.
12793         * posix/regcomp.c (free_mem): Likewise.
12794         * resolv/gai_misc.c (free_res): Likewise.
12795         * stdlib/fmtmsg.c (free_mem): Likewise.
12796         * sunrpc/clnt_perr.c (free_mem): Likewise.
12797         * sysdeps/generic/setenv.c (free_mem): Likewise.
12798         * sysdeps/unix/sysv/linux/shm_open.c (freeit): Likewise.
12799         * sysdeps/pthread/aio_misc.c (free_res): Likewise.
12800         * time/tzset.c (free_mem): Likewise.
12801         * malloc/mtrace.c (release_libc_mem): Add __libc_freeres_fn_section.
12802         * locale/loadarchive.c (_nl_archive_subfreeres): Likewise.
12803         * malloc/set-freeres.c (__libc_freeres): Likewise.
12805         * login/getutent.c: Include stdlib.h instead of stddef.h.
12806         (buffer): Change into pointer to utmp, add libc_freeres_ptr.
12807         (__getutent): Allocate buffer the first time it is run.
12808         * login/getutid.c: Include stdlib.h instead of stddef.h.
12809         (buffer): Change into pointer to utmp, add libc_freeres_ptr.
12810         (__getutid): Allocate buffer the first time it is run.
12811         * login/getutline.c: Include stdlib.h instead of stddef.h.
12812         (buffer): Change into pointer to utmp, add libc_freeres_ptr.
12813         (__getutline): Allocate buffer the first time it is run.
12814         * malloc/mtrace.c (malloc_trace_buffer): Change into char *.
12815         (mtrace): Allocate malloc_trace_buffer.
12816         * resolv/nsap_addr.c (inet_nsap_ntoa): Decrease size of tmpbuf.
12817         * resolv/ns_print.c (ns_sprintrrf): Decrease size of t.
12818         * string/strerror.c: Include libintl.h and errno.h.
12819         (buf): New variable.
12820         (strerror): Only allocate buffer if actually needed (unknown error).
12821         * time/tzfile.c (transitions): Add libc_freeres_ptr.
12822         (freeres): Remove.
12824 2002-10-25  Jakub Jelinek  <jakub@redhat.com>
12826         * include/libc-symbols.h (libc_freeres_ptr): New macro.
12827         * malloc/set-freeres.c (__libc_freeres_ptrs): Define using
12828         symbol_set_define.
12829         (__libc_freeres): Free all pointers in that section.
12830         * Makerules (build-shlib): Add $(LDSEDCMD-$(@F:lib%.so=%).so) to sed
12831         commands when creating .lds script.
12832         (LDSEDCMD-c.so): New variable.
12833         * inet/rcmd.c (ahostbuf): Change into char *.  Add libc_freeres_ptr.
12834         (rcmd_af): Use strdup to allocate ahostbuf.
12835         * inet/rexec.c (ahostbuf): Change into char *.  Add libc_freeres_ptr.
12836         (rexec_af): Use strdup to allocate ahostbuf.
12837         * stdio-common/reg-printf.c (printf_funcs): Remove.
12838         (__printf_arginfo_table): Change into printf_arginfo_function **.
12839         Add libc_freeres_ptr.
12840         (__register_printf_function): Allocate __printf_arginfo_table
12841         and __printf_function_table the first time it is called.
12842         * stdio-common/printf-parse.h (__printf_arginfo_table): Change into
12843         printf_arginfo_function **.
12844         (parse_one_spec): Add __builtin_expect.
12845         * grp/fgetgrent.c (buffer): Add libc_freeres_ptr.
12846         (free_mem): Remove.
12847         * inet/getnetgrent.c (buffer): Add libc_freeres_ptr.
12848         (free_mem): Remove.
12849         * intl/localealias.c (libc_freeres_ptr): Define if !_LIBC.
12850         (string_space, map): Add libc_freeres_ptr.
12851         (free_mem): Remove.
12852         * misc/efgcvt.c (FCVT_BUFPTR): Add libc_freeres_ptr.
12853         (free_mem): Remove.
12854         * misc/mntent.c (getmntent_buffer): Add libc_freeres_ptr.
12855         (free_mem): Remove.
12856         * crypt/md5-crypt.c (libc_freeres_ptr): Define if !_LIBC.
12857         (buffer): Add libc_freeres_ptr.
12858         (free_mem): Remove for _LIBC.
12859         * nss/getXXbyYY.c (buffer): Add libc_freeres_ptr.
12860         (free_mem): Remove.
12861         * nss/getXXent.c (buffer): Add libc_freeres_ptr.
12862         (free_mem): Remove.
12863         * pwd/fgetpwent.c (buffer): Add libc_freeres_ptr.
12864         (free_mem): Remove.
12865         * resolv/res_hconf.c (ifaddrs): Add libc_freeres_ptr.
12866         (free_mem): Remove.
12867         * shadow/fgetspent.c (buffer): Add libc_freeres_ptr.
12868         (free_mem): Remove.
12869         * sysdeps/posix/ttyname.c (getttyname_name): Add libc_freeres_ptr.
12870         (free_mem): Remove.
12871         * sysdeps/unix/sysv/linux/getsysstats.c (mount_proc): Add
12872         libc_freeres_ptr.
12873         (free_mem): Remove.
12874         * sysdeps/unix/sysv/linux/ttyname.c (getttyname_name, ttyname_buf): Add
12875         libc_freeres_ptr.
12876         (free_mem): Remove.
12878 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
12880         * malloc/obstack.c [_LIBC] (obstack_free): Change into strong_alias
12881         instead of duplicating the whole function in libc.
12883 2002-10-31  Roland McGrath  <roland@redhat.com>
12885         * sysdeps/i386/bits/byteswap.h [__GNUC__ < 2] (__bswap_32):
12886         Renamed from __bswap_16 (typo fix).  Reported by <dens@stl.sarov.ru>.
12888 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
12890         * sysdeps/unix/sysv/linux/Makefile (syscall-%.h): Add -D for each
12891         32bit-predefine when creating .new32 list and -U for each
12892         32bit-predefine when creating .new64 list.
12893         * sysdeps/unix/sysv/linux/x86_64/Makefile (32bit-predefine): New.
12895 2002-10-29  Andreas Schwab  <schwab@suse.de>
12897         * sysdeps/generic/allocrtsig.c: Include <testrtsig.h>, not
12898         "testrtsig.h".  Reported by Daniel Jacobowitz <dan@debian.org>.
12900 2002-10-25  Roland McGrath  <roland@redhat.com>
12902         * sysdeps/unix/sysv/linux/configure.in: Fix typo in last change.
12903         * sysdeps/unix/sysv/linux/configure: Regenerated.
12905         * sysdeps/generic/ldsodefs.h: Remove [! SHARED] conditional from
12906         _dl_starting_up decl.
12908 2002-10-20  H.J. Lu  <hjl@gnu.org>
12910         * sysdeps/unix/sysv/linux/configure.in: Don't check
12911         /lib/modules/`uname -r`/build/include for kernel headers if
12912         cross compiling.
12913         * sysdeps/unix/sysv/linux/configure: Regenerated.
12915 2002-10-25  Roland McGrath  <roland@redhat.com>
12917         * math/math.h (M_LOG2El): Correct the value.
12918         From Stephen L Moshier <steve@moshier.net>.
12920         * sysdeps/unix/sysv/linux/init-first.c (init): Remove [! SHARED]
12921         conditional from __libc_multiple_libcs access.  Remove kludge for weak
12922         symbol access with old compilers we no longer support.
12923         * sysdeps/unix/sysv/aix/init-first.c (init): Likewise.
12924         * sysdeps/generic/libc-start.c (__libc_start_main): Likewise.
12926 2002-10-25  Roland McGrath  <roland@redhat.com>
12928         * sysdeps/posix/sigvec.c [SA_RESETHAND]: Disable wrapper hacks and
12929         implement SV_RESETHAND by translating it to SA_RESETHAND.
12931 2002-10-23  Alexandre Oliva  <aoliva@redhat.com>
12933         * elf/dl-reloc.c (_dl_reloc_bad_use): Print the full 32-bit relocation
12934         type on ELF64 platforms.
12936 2002-10-24  Ulrich Drepper  <drepper@redhat.com>
12938         * elf/elf.h (R_X86_64_GOTTPOFF): Renamed from r_x86_64_GOTTPOFF.
12940         * elf/elf.h: Define ELF_NOTE_OS_FREEBSD and NT_TASKSTRUCT.
12942 2002-10-24  Jakub Jelinek  <jakub@redhat.com>
12944         * elf/dl-misc.c: Include <sysdep.h>.
12945         (_dl_debug_vdprintf): Only take dl_load_lock if not _dl_starting_up.
12947         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (INTERNAL_SYSCALL,
12948         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
12949         (INLINE_SYSCALL): Use that.
12950         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (INTERNAL_SYSCALL,
12951         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
12952         (INLINE_SYSCALL): Use that.
12953         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (INTERNAL_SYSCALL,
12954         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
12955         (INLINE_SYSCALL): Use that.
12956         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Include
12957         dl-sysdep.h.
12958         (SYSCALL_ERROR_HANDLER): Define RTLD_PRIVATE_ERRNO variant.
12959         (__INTERNAL_SYSCALL_STRING): Define.
12960         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h: Include
12961         dl-sysdep.h.
12962         (SYSCALL_ERROR_HANDLER): Define RTLD_PRIVATE_ERRNO variant.
12963         (__INTERNAL_SYSCALL_STRING): Define.
12964         * sysdeps/unix/sysv/linux/sparc/sysdep.h (INLINE_SYSCALL): Pass
12965         __SYSCALL_STRING to inline_syscall*.
12966         (INTERNAL_SYSCALL, INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO):
12967         New macros.
12968         (inline_syscall0, inline_syscall1, inline_syscall2, inline_syscall3,
12969         inline_syscall4, inline_syscall5, inline_syscall6): Add string
12970         argument.
12972 2002-10-24  Roland McGrath  <roland@redhat.com>
12974         * sysdeps/generic/ldsodefs.h (_dl_starting_up): Declare it here.
12975         * sysdeps/unix/sysv/linux/init-first.c: Not here.
12976         * sysdeps/powerpc/elf/libc-start.c: Or here.
12977         * sysdeps/unix/sysv/aix/libc-start.c: Or here.
12978         * sysdeps/unix/sysv/aix/start-libc.c: Or here.
12979         * sysdeps/unix/sysv/aix/init-first.c: Or here.
12980         * sysdeps/generic/libc-start.c: Or here.
12981         * sysdeps/unix/sysv/linux/init-first.c (init): Protect _dl_starting_up
12982         access with [! SHARED].
12983         * sysdeps/unix/sysv/aix/init-first.c (init): Likewise.
12985         * libio/bug-wfflush.c: New file.
12986         * libio/Makefile (tests): Add bug-wfflush.
12988 2002-10-23  Roland McGrath  <roland@redhat.com>
12990         * stdio-common/tst-fphex.c: New file.
12991         * stdio-common/Makefile (tests): Add tst-fphex.
12992         * sysdeps/generic/printf_fphex.c (__printf_fphex): Fix initialization
12993         of WNUMEND.  Fix counting of decimal point in WIDTH.  Print '0' pad
12994         chars always before the value digits.
12995         Reported by James Antill <james.antill@redhat.com>.
12997 2002-10-24  Jakub Jelinek  <jakub@redhat.com>
12999         * posix/regcomp.c (re_comp): Call __regfree on re_comp_buf.
13000         (free_mem): New function.
13001         * posix/Makefile (tests): Add bug-regex14.  Add bug-regex14-mem
13002         if not cross compiling.
13003         (generated): Add bug-regex14-mem and bug-regex14.mtrace.
13004         (bug-regex14-ENV): Set.
13005         (bug-regex14-mem): New target.
13006         * posix/bug-regex14.c: New file.
13008 2002-10-23  Roland McGrath  <roland@redhat.com>
13010         * elf/Makefile ($(objpfx)librtld.map): Use temporary file for output
13011         target, so we don't touch it when the link fails.
13013         * libio/ftello.c (ftello): Use _IO_off64_t for type of POS.
13014         Check for the result overflowing off_t and fail with EOVERFLOW.
13015         * libio/ioftell.c (_IO_ftell): Likewise.
13016         * libio/iofgetpos.c (_IO_new_fgetpos): Likewise.
13018         * login/logwtmp.c (logwtmp): If sizeof ut_tv != sizeof struct timeval,
13019         use a temporary timeval on the stack for gettimeofday and copy it.
13020         * login/logout.c (logout): Likewise.
13021         Reported by Steven Munroe <sjmunroe@us.ibm.com>.
13023         * sysdeps/unix/sysv/linux/bits/statfs.h (struct statfs):
13024         Use __SWORD_TYPE instead of int for member types.
13025         (struct statfs64): Likewise.
13026         * sysdeps/unix/sysv/linux/alpha/bits/statfs.h: New file.
13027         * sysdeps/unix/sysv/linux/s390/bits/statfs.h: New file.
13028         * sysdeps/unix/sysv/linux/ia64/bits/statfs.h: File removed.
13029         * sysdeps/unix/sysv/linux/sparc/bits/statfs.h: File removed.
13030         * sysdeps/unix/sysv/linux/x86_64/bits/statfs.h: File removed.
13032         * sysdeps/unix/sysv/linux/sparc/bits/statvfs.h: Moved to ...
13033         * sysdeps/unix/sysv/linux/bits/statvfs.h: ... here.
13034         (ST_NODIRATIME): Restore fixed value of 2048.
13035         * sysdeps/unix/sysv/linux/alpha/bits/statvfs.h: File removed.
13036         * sysdeps/unix/sysv/linux/ia64/bits/statvfs.h: File removed.
13038         Rearranged <bits/types.h> definitions to reduce duplication.
13039         * sysdeps/generic/bits/types.h: Rewritten, using macros from
13040         <bits/wordsize.h> and new header <bits/typesizes.h>.
13041         * posix/Makefile (headers): Add bits/typesizes.h here.
13042         * sysdeps/generic/bits/typesizes.h: New file.
13043         * sysdeps/unix/sysv/linux/alpha/bits/typesizes.h: New file.
13044         * sysdeps/unix/sysv/linux/sparc/bits/typesizes.h: New file.
13045         * sysdeps/mach/hurd/bits/typesizes.h: New file.
13046         * sysdeps/unix/sysv/linux/alpha/bits/types.h: File removed.
13047         * sysdeps/unix/sysv/linux/bits/types.h: File removed.
13048         * sysdeps/unix/sysv/linux/ia64/bits/types.h: File removed.
13049         * sysdeps/unix/sysv/linux/mips/bits/types.h: File removed.
13050         * sysdeps/unix/sysv/linux/s390/bits/types.h: File removed.
13051         * sysdeps/unix/sysv/linux/sparc/bits/types.h: File removed.
13052         * sysdeps/unix/sysv/linux/x86_64/bits/types.h: File removed.
13053         * posix/sys/types.h [__USE_POSIX199506 || __USE_UNIX98]: Include
13054         <bits/pthreadtypes.h> here, not in <bits/types.h>.
13055         * signal/signal.h: Likewise.
13057         * streams/stropts.h: Include <bits/xtitypes.h>.
13058         * streams/Makefile (headers): Add bits/xtitypes.h here.
13059         * sysdeps/generic/bits/xtitypes.h: New file.
13060         * sysdeps/s390/bits/xtitypes.h: New file.
13061         * sysdeps/ia64/bits/xtitypes.h: New file.
13062         * sysdeps/x86_64/bits/xtitypes.h: New file.
13064         * sysvipc/Makefile (headers): Add bits/ipctypes.h here.
13065         * sysdeps/generic/bits/ipctypes.h: New file.
13066         * sysdeps/mips/bits/ipctypes.h: New file.
13067         * sysdeps/gnu/bits/shm.h: Include <bits/ipctypes.h>.
13068         * sysdeps/gnu/bits/msq.h: Likewise.
13069         * sysvipc/sys/ipc.h: Likewise.
13071 2002-10-22  Ulrich Drepper  <drepper@redhat.com>
13073         * elf/dl-load.c (struct filebuf): For buf element to have the
13074         alignment of ElfXX_Ehdr since this is what will be stored in it.
13076 2002-10-22  Jakub Jelinek  <jakub@redhat.com>
13078         * locale/programs/locarchive.c (add_alias): Change locrec_offset arg
13079         into pointer to locrec_offset.
13080         (add_locale_to_archive): Adjust callers.  Free normalized_name right
13081         before returning, not immediately after add_locale, pass it to
13082         add_alias if not NULL instead of name.  Rename second normalized_name
13083         occurence to nnormalized_codeset_name.
13085         * locale/programs/locarchive.c (enlarge_archive): Make sure
13086         string_size is always a multiple of 4.
13087         Reported by Andreas Schwab <schwab@suse.de>.
13089 2002-10-21  Andreas Schwab  <schwab@suse.de>
13091         * sysdeps/unix/sysv/linux/ia64/syscalls.list (s_execve): Set
13092         caller to EXTRA instead of execve, since the latter has a
13093         higher-priority implementation in linuxthreads.
13095 2002-10-21  Roland McGrath  <roland@redhat.com>
13097         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Initialize the static
13098         slotinfo list's len member to the proper size, not just 1.
13099         Initialize static_map.l_tls_initimage.
13101         * elf/dl-open.c (dl_open_worker): Fix loop searching for
13102         dtv_slotinfo_list element containing new modules' l_tls_modid.
13104         * elf/tst-tls9.c, elf/tst-tls9-static.c: New files.
13105         * elf/tst-tlsmod5.c, elf/tst-tlsmod6.c: New files.
13106         * elf/Makefile (tests): Add tst-tls9.
13107         (tests-static): Add tst-tls9-static.
13108         (tst-tls9-static-ENV): New variable.
13109         ($(objpfx)tst-tls9-static, $(objpfx)tst-tls9-static.out): New targets.
13111         * elf/dl-close.c (remove_slotinfo): Remove an assert; the number of
13112         modids used by partially loaded modules being closed can't be known.
13114 2002-10-21  Isamu Hasegawa  <isamu@yamato.ibm.com>
13116         * posix/Makefile: Add a test case for the bug reported by Aharon
13117         Robbins <arnold@skeeve.com>.
13118         * posix/bug-regex13.c: New file.
13119         * posix/regcomp.c (peek_token_bracket): Skip the byte already read.
13121 2002-10-21  Ulrich Drepper  <drepper@redhat.com>
13123         * csu/gmon-start.c: Pretty printing.
13125 2002-10-19  Art Haas  <ahaas@neosoft.com>
13127         * configure.in: Replace AC_CONFIG_HEADER with AC_CONFIG_HEADERS,
13128         add AC_HELP_STRING to all AC_ARG_WITH and AC_ARG_ENABLE macros,
13129         add autoconf quotes to the AC_CONFIG_AUX_DIR macro.
13130         * configure: Regenerated.
13132 2002-10-19  Roland McGrath  <roland@redhat.com>
13134         * configure.in: Call AC_CONFIG_SUBDIRS with empty argument
13135         and then set $subdirs directly, because the new Autoconf breaks
13136         compatibility in every way imaginable and insists on whining
13137         about usage that worked since the dawn of time.
13138         * configure: Regenerated.
13140         * configure: Regenerated (using Autoconf 2.54).
13141         * sysdeps/alpha/elf/configure: Likewise.
13142         * sysdeps/generic/configure: Likewise.
13143         * sysdeps/i386/elf/configure: Likewise.
13144         * sysdeps/ia64/elf/configure: Likewise.
13145         * sysdeps/mach/hurd/configure: Likewise.
13146         * sysdeps/mach/configure: Likewise.
13147         * sysdeps/unix/configure: Likewise.
13148         * sysdeps/unix/common/configure: Likewise.
13149         * sysdeps/unix/sysv/aix/configure: Likewise.
13150         * sysdeps/unix/sysv/linux/configure: Likewise.
13151         * sysdeps/unix/sysv/linux/mips/configure: Likewise.
13152         * sysdeps/x86_64/elf/configure: Likewise.
13154         * config.make.in: Nix completely-soft nonsense.
13155         * configure.in: Likewise.  Under --without-fp, use nofpu subdirectory
13156         of machine directories instead of fpu subdirectory.
13157         * sysdeps/powerpc/soft-fp/Makefile: Remove cruft added in last change.
13158         * sysdeps/powerpc/nofpu/Makefile: Put it in this new file instead.
13159         * sysdeps/powerpc/soft-fp/sim-full.c: Moved to ...
13160         * sysdeps/powerpc/nofpu/sim-full.c: ... here.
13161         * sysdeps/powerpc/soft-fp/fraiseexcpt.c: Moved to ...
13162         * sysdeps/powerpc/nofpu/fraiseexcpt.c: ... here.
13163         * sysdeps/powerpc/soft-fp/fegetexcept.c: Moved to ...
13164         * sysdeps/powerpc/nofpu/fegetexcept.c: ... here.
13165         * sysdeps/powerpc/soft-fp/fclrexcpt.c: Moved to ...
13166         * sysdeps/powerpc/nofpu/fclrexcpt.c: ... here.
13167         * sysdeps/powerpc/soft-fp/ftestexcept.c: Moved to ...
13168         * sysdeps/powerpc/nofpu/ftestexcept.c: ... here.
13169         * sysdeps/powerpc/soft-fp/fgetexcptflg.c: Moved to ...
13170         * sysdeps/powerpc/nofpu/fgetexcptflg.c: ... here.
13171         * sysdeps/powerpc/soft-fp/fsetexcptflg.c: Moved to ...
13172         * sysdeps/powerpc/nofpu/fsetexcptflg.c: ... here.
13173         * sysdeps/powerpc/soft-fp/fedisblxcpt.c: Moved to ...
13174         * sysdeps/powerpc/nofpu/fedisblxcpt.c: ... here.
13175         * sysdeps/powerpc/soft-fp/feenablxcpt.c: Moved to ...
13176         * sysdeps/powerpc/nofpu/feenablxcpt.c: ... here.
13177         * sysdeps/powerpc/soft-fp/fegetenv.c: Moved to ...
13178         * sysdeps/powerpc/nofpu/fegetenv.c: ... here.
13179         * sysdeps/powerpc/soft-fp/fesetenv.c: Moved to ...
13180         * sysdeps/powerpc/nofpu/fesetenv.c: ... here.
13181         * sysdeps/powerpc/soft-fp/fegetround.c: Moved to ...
13182         * sysdeps/powerpc/nofpu/fegetround.c: ... here.
13183         * sysdeps/powerpc/soft-fp/fesetround.c: Moved to ...
13184         * sysdeps/powerpc/nofpu/fesetround.c: ... here.
13185         * sysdeps/powerpc/soft-fp/feupdateenv.c: Moved to ...
13186         * sysdeps/powerpc/nofpu/feupdateenv.c: ... here.
13187         * sysdeps/powerpc/soft-fp/feholdexcpt.c: Moved to ...
13188         * sysdeps/powerpc/nofpu/feholdexcpt.c: ... here.
13189         * sysdeps/powerpc/soft-fp/fenv_const.c: Moved to ...
13190         * sysdeps/powerpc/nofpu/fenv_const.c: ... here.
13191         * sysdeps/powerpc/soft-fp/libm-test-ulps: Moved to ...
13192         * sysdeps/powerpc/nofpu/libm-test-ulps: ... here.
13193         * sysdeps/powerpc/soft-fp/soft-supp.h: Moved to ...
13194         * sysdeps/powerpc/nofpu/soft-supp.h: ... here.
13195         * sysdeps/powerpc/soft-fp/Versions (libc: GLIBC_2.3.2): Moved to ...
13196         * sysdeps/powerpc/nofpu/Versions: ... here, new file.
13198 2002-10-19  Bruno Haible  <bruno@clisp.org>
13200         * sysdeps/unix/bsd/bsd4.4/freebsd/sys/sysmacros.h: New file.
13202 2002-10-18  Roland McGrath  <roland@redhat.com>
13204         * io/Makefile (routines): Add lchmod.
13205         * io/sys/stat.h [__USE_BSD] (lchmod): Declare it.
13206         * sysdeps/generic/lchmod.c: New file.
13207         * sysdeps/mach/hurd/lchmod.c: New file.
13208         * io/Versions (libc: GLIBC_2.3.2): New set, add lchmod.
13210 2002-10-18  Art Haas  <ahaas@neosoft.com>
13212         * configure.in: Remove remaining AC_FD_CC macros, and replace
13213         AC_FD_MSG with AS_MESSAGE_FD.
13215 2002-10-18  Roland McGrath  <roland@redhat.com>
13217         * sysdeps/powerpc/powerpc32/dl-machine.c (__process_machine_rela): Fix
13218         typos: VALUE -> FINALADDR.
13220         * sysdeps/unix/alpha/sysdep.h (INLINE_SYSCALL, INLINE_SYSCALL1)
13221         (inline_syscall_clobbers, inline_syscall0, inline_syscall1)
13222         (inline_syscall2, inline_syscall3, inline_syscall4, inline_syscall5)
13223         (inline_syscall6): Move these macros ...
13224         * sysdeps/unix/sysv/linux/alpha/sysdep.h: ... to here.
13226         * configure.in (libc_link_dests, libc_link_sources): Remove these
13227         variables and the AC_LINK_FILES call.
13229         * sysdeps/powerpc/soft-fp/Versions (libc: GLIBC_2.3.2): Fix last
13230         change to put new symbols here instead of in GLIBC_2.2.
13231         * sysdeps/powerpc/Subdirs: Move this file ...
13232         * sysdeps/powerpc/soft-fp/Subdirs: ... here.
13234 2002-10-07  Roland McGrath  <roland@redhat.com>
13236         * sysdeps/generic/bits/time.h: Replaced with contents of the
13237         sysdeps/unix/sysv/linux/i386/bits/time.h file.  All the following
13238         files were identical except for the absence of CLOCK_THREAD_CPUTIME_ID
13239         and CLOCK_PROCESS_CPUTIME_ID in .../linux/bits/time.h; adding these
13240         macros is ok even for architectures that don't now implement them.
13241         * sysdeps/mach/hurd/bits/time.h: File removed.
13242         * sysdeps/unix/sysv/linux/bits/time.h: File removed.
13243         * sysdeps/unix/sysv/linux/i386/bits/time.h: File removed.
13244         * sysdeps/unix/sysv/linux/ia64/bits/time.h: File removed.
13245         * sysdeps/unix/sysv/linux/sparc/bits/time.h: File removed.
13246         * sysdeps/unix/sysv/linux/x86_64/bits/time.h: File removed.
13248 2002-10-18  Jeff Bailey  <jbailey@gnu.org>
13250         * configure.in: Replace obsolete AC_OUTPUT syntax with
13251         AC_CONFIG_FILES, AC_CONFIG_COMMANDS, and new-type AC_OUTPUT trio.
13253         * aclocal.m4 (GLIBC_PROVIDES): Add AC_PROVIDEs for
13254         _AS_PATH_SEPARATOR_PREPARE and _AS_TEST_PREPARE.
13256         * configure.in: Replace AC_FD_CC with AS_MESSAGE_LOG_FD.
13257         * sysdeps/alpha/elf/configure.in: Likewise.
13258         * sysdeps/i386/elf/configure.in: Likewise.
13259         * sysdeps/mach/hurd/configure.in: Likewise.
13260         * sysdeps/x86_64/elf/configure.in: Likewise.
13262         * configure.in: Use AC_CONFIG_SRCDIR and new AC_INIT syntax.
13264         * sysdeps/alpha/elf/configure.in: Remove unneeded sinclude statement.
13265         * sysdeps/generic/configure.in: Likewise.
13266         * sysdeps/i386/elf/configure.in: Likewise.
13267         * sysdeps/ia64/elf/configure.in: Likewise.
13268         * sysdeps/mach/configure.in: Likewise.
13269         * sysdeps/mach/hurd/configure.in: Likewise.
13270         * sysdeps/unix/configure.in: Likewise.
13271         * sysdeps/unix/common/configure.in: Likewise.
13272         * sysdeps/unix/sysv/aix/configure.in: Likewise.
13273         * sysdeps/unix/sysv/linux/configure.in: Likewise.
13274         * sysdeps/unix/sysv/linux/mips/configure.in: Likewise.
13275         * sysdeps/x86_64/elf/configure.in: Likewise.
13277         * aclocal.m4: Use just the bits from AS_INIT that are needed for the
13278         GLIBC_PROVIDES.  Use plain comment instead of HEADER-COMMENT so
13279         that it's obvious when extra autoconf machinery is being dragged in.
13281 2002-10-18  Roland McGrath  <roland@redhat.com>
13283         * configure.in: Remove bogus echo included in
13284         2002-10-08  Aldy Hernandez  <aldyh@redhat.com> change.
13285         * configure: Regenerated.
13287 2002-10-18  Jakub Jelinek  <jakub@redhat.com>
13289         * sysdeps/unix/sysv/linux/pathconf.h (statfs_link_max): Add inline.
13290         (statfs_filesize_max): New function.
13291         * sysdeps/unix/sysv/linux/linux_fsinfo.h (JFFS_SUPER_MAGIC,
13292         JFFS2_SUPER_MAGIC, JFS_SUPER_MAGIC, NTFS_SUPER_MAGIC,
13293         ROMFS_SUPER_MAGIC, UDF_SUPER_MAGIC): Define.
13294         * sysdeps/unix/sysv/linux/fpathconf.c (__fpathconf): Use
13295         statfs_filesize_max.
13296         * sysdeps/unix/sysv/linux/pathconf.c (__pathconf): Likewise.
13297         * sysdeps/unix/sysv/linux/alpha/fpathconf.c: Removed.
13298         * sysdeps/unix/sysv/linux/alpha/pathconf.c: Removed.
13300 2002-10-17  Roland McGrath  <roland@redhat.com>
13302         * configure.in (MIG): Just AC_SUBST it here.
13303         * configure: Regenerated.
13304         * sysdeps/mach/configure.in (MIG): Do the AC_CHECK_TOOL here.
13305         Adding final - argument to all AC_CHECK_HEADER uses for .defs files.
13306         * sysdeps/mach/configure: Regenerated.
13308         * aclocal.m4 (GLIBC_PROVIDES): Add AC_PROVIDE([_AS_TR_SH_PREPARE])
13309         and AC_PROVIDE([_AS_CR_PREPARE]).
13311         * aclocal.m4 (GLIBC_PROVIDES): Add AC_PROVIDE([_AS_ECHO_N_PREPARE]).
13312         Remove AC_LANG(C) call, instead just define([_AC_LANG], [C]).
13314         * elf/dl-support.c: Move _dl_tls_* variables to ...
13315         * sysdeps/generic/libc-tls.c: ... here.
13317         * elf/dl-close.c (remove_slotinfo): Take new argument.  If false,
13318         allow IDX to be one past the current last slotinfo entry.
13319         (_dl_close): Pass IMAP->l_init_called for that parameter.
13321 2002-10-07  Andreas Schwab  <schwab@suse.de>
13323         * aclocal.m4: Fix for autoconf 2.53.
13324         * configure.in: Likewise.  Require autoconf 2.53.
13326 2002-10-08  Richard Henderson  <rth@redhat.com>
13328         * soft-fp/op-4.h: Handle carry correctly in
13329         __FP_FRAC_ADD_3, __FP_FRAC_ADD_4, __FP_FRAC_SUB_3,
13330         __FP_FRAC_SUB_4, __FP_FRAC_DEC_3, __FP_FRAC_DEC_4.
13331         * soft-fp/op-common.h: New macros _FP_DIV_MEAT_N_loop.
13333 2002-10-08  Aldy Hernandez  <aldyh@redhat.com>
13335         * configure.in: Compute completely-soft.
13336         * config.make.in: Make completely-soft available to sub-makes.
13337         * sysdeps/powerpc/soft-fp/Makefile: Add gcc-single-routines and
13338         gcc-double-routines.  Add sim-full.c.  Add fenv_const and
13339         fe_nomask to libm-support.
13340         * sysdeps/powerpc/soft-fp/sim-full.c: New file.
13341         * sysdeps/powerpc/soft-fp/fraiseexcpt.c: New file.
13342         * sysdeps/powerpc/soft-fp/fegetexcept.c: New file.
13343         * sysdeps/powerpc/soft-fp/fclrexcpt.c: New file.
13344         * sysdeps/powerpc/soft-fp/ftestexcept.c: New file.
13345         * sysdeps/powerpc/soft-fp/fgetexcptflg.c: New file.
13346         * sysdeps/powerpc/soft-fp/fsetexcptflg.c: New file.
13347         * sysdeps/powerpc/soft-fp/fedisblxcpt.c: New file.
13348         * sysdeps/powerpc/soft-fp/feenablxcpt.c: New file.
13349         * sysdeps/powerpc/soft-fp/fegetenv.c: New file.
13350         * sysdeps/powerpc/soft-fp/fesetenv.c: New file.
13351         * sysdeps/powerpc/soft-fp/fegetround.c: New file.
13352         * sysdeps/powerpc/soft-fp/fesetround.c: New file.
13353         * sysdeps/powerpc/soft-fp/feupdateenv.c: New file.
13354         * sysdeps/powerpc/soft-fp/feholdexcpt.c: New file.
13355         * sysdeps/powerpc/soft-fp/fenv_const.c: New file.
13356         * sysdeps/powerpc/soft-fp/libm-test-ulps: New file.
13357         * sysdeps/powerpc/soft-fp/soft-supp.h: New file.
13358         * sysdeps/powerpc/soft-fp/Versions: Add libgcc soft-float
13359         symbols.  Add __sim_disabled_exceptions, __sim_exceptions,
13360         __sim_round_mode.
13361         * sysdeps/powerpc/soft-float/Dist: Add sim-full.c, fenv_const.c.
13362         * sysdeps/powerpc/soft-float/sfp-machine.h: Define
13363         FP_HANDLE_EXCEPTIONS.
13364         Define FP_ROUNDMODE.
13365         Redefine FP_* macros to correspond to the FE_* bit positions.
13366         Define FP_DIV_MEAT_S to _FP_DIV_MEAT_1_loop.
13367         Define externs for __sim_exceptions, __sim_disabled_exceptions,
13368         __sim_round_mode, __simulate_exceptions.
13369         * sysdeps/powerpc/fpu/bits/fenv.h: Move file from here...
13370         * sysdeps/powerpc/bits/fenv.h: ...to here.
13372 2002-10-06  Jakub Jelinek  <jakub@redhat.com>
13374         * sysdeps/powerpc/powerpc32/dl-machine.c (__process_machine_rela):
13375         Store R_PPC_UADDR32 and R_PPC_UADDR16 one byte at a time.
13376         Use __builtin_expect for R_PPC_ADDR24 overflow check.  Fix
13377         R_PPC_ADDR16, R_PPC_UADDR16 and R_PPC_ADDR14* overflow check, use
13378         __builtin_expect.
13380 2002-10-15  Jakub Jelinek  <jakub@redhat.com>
13382         * include/resolv.h (__libc_res_nquery, __libc_res_nsearch,
13383         __libc_res_nsend): New prototypes.
13384         * resolv/res_query.c (QUERYSIZE): Define.
13385         (__libc_res_nquery): Renamed from res_nquery.  Added answerp
13386         argument.  Allocate only QUERYSIZE bytes first, if res_nmkquery
13387         fails use MAXPACKET buffer.  Call __libc_res_nsend instead of
13388         res_nsend, pass answerp.
13389         (res_nquery): Changed into wrapper around __libc_res_nquery.
13390         (__libc_res_nsearch): Renamed from res_nsearch.  Added answerp
13391         argument.  Call __libc_res_nquerydomain and __libc_res_nquery
13392         instead of the non-__libc_ variants, pass them answerp.
13393         (res_nsearch): Changed into wrapper around __libc_res_nsearch.
13394         (__libc_res_nquerydomain): Renamed from res_nquerydomain.
13395         Added answerp argument.  Call __libc_res_nquery instead of
13396         res_nquery, pass answerp.
13397         (res_nquerydomain): Changed into wrapper around
13398         __libc_res_nquerydomain.
13399         * resolv/res_send.c: Include sys/ioctl.h.
13400         (MAXPACKET): Define.
13401         (send_vc): Change arguments.  Reallocate answer buffer if it is
13402         too small.
13403         (send_dg): Likewise.
13404         (__libc_res_nsend): Renamed from res_nsend.  Added ansp argument.
13405         Reallocate answer buffer if it is too small and hooks are in use.
13406         Adjust calls to send_vc and send_dg.
13407         (res_nsend): Changed into wrapper around __libc_res_nsend.
13408         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyname2_r): Allocate
13409         just 1K answer buffer on the stack, use __libc_res_nsearch instead
13410         of res_nsearch.
13411         (_nss_dns_gethostbyaddr_r): Similarly with __libc_res_nquery.
13412         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyaddr_r): Likewise.
13413         (_nss_dns_getnetbyname_r): Similarly with __libc_res_nsearch.
13414         * resolv/gethnamaddr.c (gethostbyname2): Likewise.
13415         (gethostbyaddr): Similarly with __libc_res_nquery.
13416         * resolv/Versions (libresolv): Export __libc_res_nquery and
13417         __libc_res_nsearch at GLIBC_PRIVATE.
13419 2002-10-17  Roland McGrath  <roland@redhat.com>
13421         * configure.in: Grok --without-__thread and disable HAVE___THREAD.
13422         * configure: Regenerated.
13424         * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Do CHECK_STATIC_TLS
13425         before performing the reloc, not after.
13426         * sysdeps/i386/dl-machine.h (elf_machine_rel): Likewise.
13428 2002-10-17  Ulrich Drepper  <drepper@redhat.com>
13430         * locale/programs/locale.c (write_locales): Use 'm' flag in fopen call.
13431         * locale/programs/linereader.c (lr_open): Likewise.
13432         * locale/programs/charmap-dir.c (charmap_open): Likewise.
13433         * locale/programs/locarchive.c (add_locale_to_archive): Likewise.
13435 2002-10-17  Isamu Hasegawa  <isamu@yamato.ibm.com>
13437         * posix/bug-regex11.c: Add a test case for the bug reported by
13438         Paolo Bonzini <bonzini@gnu.org>.
13439         * posix/regexec.c (sift_states_bkref): Use correct destination of
13440         the back reference.
13442 2002-10-17  Roland McGrath  <roland@redhat.com>
13444         * elf/dl-load.c (_dl_map_object_from_fd): Don't check DF_STATIC_TLS.
13445         * elf/dl-reloc.c (_dl_relocate_object: CHECK_STATIC_TLS): New macro
13446         to signal error if an IE-model TLS reloc resolved to a dlopen'd module.
13447         * sysdeps/i386/dl-machine.h (elf_machine_rel, elf_machine_rela):
13448         Call it after performing TPOFF relocs.
13449         * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Likewise.
13450         * sysdeps/sh/dl-machine.h (elf_machine_rela): Likewise.
13451         * elf/dl-conflict.c (CHECK_STATIC_TLS): New macro (no-op).
13453         * elf/dl-close.c (remove_slotinfo): Change asserts so as not to crash
13454         when closing a partially-initialized object.
13456         * elf/dl-load.c (_dl_map_object_from_fd) [! USE_TLS]: Call lose
13457         instead of _dl_fatal_printf when we see PT_TLS.
13459         * Makeconfig (CPPFLAGS): Fix last change to use $(libof-$(<F))
13460         instead of $(libof-$<).
13462 2002-10-16  Roland McGrath  <roland@redhat.com>
13464         * cppflags-iterator.mk (CPPFLAGS-$(cpp-src)): Variable removed.
13465         instead of += to append, to be sure $(lib) gets expanded at defn time.
13466         (libof-$(cpp-src)): New variable, define this instead.
13467         * extra-lib.mk (cpp-srcs-left): Reduce duplication in include setup.
13468         (lib): Don't use override.
13469         (CPPFLAGS-$(lib)): New variable, put -D's here.
13470         * Makeconfig (CPPFLAGS): Use basename fn for CPPFLAGS-basename.
13471         Also add $(CPPFLAGS-LIB) before the file-specific flags, for each
13472         LIB found by $(libof-*) for basename, target, or source.
13473         * Makerules (CPPFLAGS-nonlib): New variable.
13474         * nscd/Makefile (lib): Set to nonlib when using cppflags-iterator.mk.
13475         * locale/Makefile (lib): Likewise.
13476         * sunrpc/Makefile (lib): Likewise.
13478         * sysdeps/unix/sysv/linux/fpathconf.c (LINUX_LINK_MAX): Move macro ...
13479         * sysdeps/unix/sysv/linux/linux_fsinfo.h (LINUX_LINK_MAX): ... here.
13480         * sysdeps/unix/sysv/linux/pathconf.h: New file.
13481         (statfs_link_max): New function, guts from fpathconf.c.
13482         * sysdeps/unix/sysv/linux/fpathconf.c: Rewritten using that.
13483         * sysdeps/unix/sysv/linux/pathconf.c (__pathconf): Likewise.
13484         * sysdeps/unix/sysv/linux/alpha/pathconf.c (__pathconf): Rewritten
13485         to use the linux/pathconf.c code by #include rather than duplication.
13486         * sysdeps/unix/sysv/linux/alpha/fpathconf.c (__pathconf): Likewise.
13488 2002-10-16  Jakub Jelinek  <jakub@redhat.com>
13490         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
13491         Use __libc_errno only for libc itself.
13493 2002-10-16  Andreas Jaeger  <aj@suse.de>
13495         * sysdeps/x86_64/_mcount.S: Fix off-by-1 error in argument access.
13497 2002-10-16  Ulrich Drepper  <drepper@redhat.com>
13499         * sysdeps/unix/sysv/linux/i386/sysdep.h (SYSCALL_ERROR_HANDLER):
13500         Use __libc_errno only for libc itself.
13502 2002-10-15  Roland McGrath  <roland@redhat.com>
13503             Jakub Jelinek  <jakub@redhat.com>
13505         * sysdeps/unix/sysv/linux/Makefile
13506         ($(objpfx)syscall-%.h $(objpfx)syscall-%.d): Take code from
13507         sparc/Makefile to produce a bi-arch file as needed.
13508         That's now parameterized by the variable $(64bit-predefine).
13509         Use LC_ALL=C for `comm' commands in that rule.
13510         No longer conditional on [$(no_syscall_list_h)].
13511         * sysdeps/unix/sysv/linux/sparc/Makefile: Remove replacement rules.
13512         (64bit-predefine): New variable.
13513         * sysdeps/unix/sysv/linux/x86_64/Makefile: Likewise.
13514         * sysdeps/unix/sysv/linux/s390/Makefile: New file.
13515         * sysdeps/unix/sysv/linux/powerpc/Makefile
13516         (64bit-predefine): New variable.
13518 2002-10-15  Roland McGrath  <roland@redhat.com>
13520         * sysdeps/unix/sysv/linux/Makefile
13521         ($(objpfx)syscall-%.h $(objpfx)syscall-%.d)
13523         * login/utmp-private.h: Declare __libc_utmp_lock.
13524         * sysdeps/unix/getlogin_r.c (getlogin_r): Take __libc_utmp_lock once
13525         and call __libc_utmp_jump_table functions directly, instead of using
13526         __setutent et al.
13528         * sysdeps/unix/sysv/linux/configure.in: Use case instead of if.
13529         * sysdeps/unix/sysv/linux/configure: Regenerated.
13531         * sysdeps/gnu/bits/utmp.h: Include <bits/wordsize.h>.
13532         (struct lastlog) [__WORDSIZE == 64 && __WORDSIZE_COMPAT32]:
13533         Use int32_t for ll_time.
13534         (struct utmp) [__WORDSIZE == 64 && __WORDSIZE_COMPAT32]:
13535         Use int32_t instead of long int for ut_session.
13536         Use an anonymous struct with 32-bit fields for ut_tv.
13537         * sysdeps/gnu/bits/utmpx.h: Include <bits/wordsize.h>.
13538         (struct utmpx) [__WORDSIZE == 64 && __WORDSIZE_COMPAT32]: Do the same
13539         here as in utmp.h for `struct utmp'.
13540         * sysdeps/unix/sysv/linux/powerpc/bits/utmp.h: File removed.
13541         * sysdeps/unix/sysv/linux/powerpc/bits/utmpx.h: File removed.
13542         * sysdeps/unix/sysv/linux/sparc/bits/utmp.h: File removed.
13543         * sysdeps/unix/sysv/linux/sparc/bits/utmpx.h: File removed.
13544         * sysdeps/unix/sysv/linux/x86_64/bits/utmp.h: File removed.
13545         * sysdeps/unix/sysv/linux/x86_64/bits/utmpx.h: File removed.
13547         * sysdeps/unix/sysv/linux/bits/resource.h: Replaced with the contents
13548         of the sysdeps/unix/sysv/linux/i386/bits/resource.h file.
13549         All the following files were identical or equivalent to it.
13550         * sysdeps/unix/sysv/linux/i386/bits/resource.h: File removed.
13551         * sysdeps/unix/sysv/linux/arm/bits/resource.h: File removed.
13552         * sysdeps/unix/sysv/linux/cris/bits/resource.h: File removed.
13553         * sysdeps/unix/sysv/linux/hppa/bits/resource.h: File removed.
13554         * sysdeps/unix/sysv/linux/ia64/bits/resource.h: File removed.
13555         * sysdeps/unix/sysv/linux/m68k/bits/resource.h: File removed.
13556         * sysdeps/unix/sysv/linux/powerpc/bits/resource.h: File removed.
13557         * sysdeps/unix/sysv/linux/s390/bits/resource.h: File removed.
13558         * sysdeps/unix/sysv/linux/sh/bits/resource.h: File removed.
13559         * sysdeps/unix/sysv/linux/x86_64/bits/resource.h: File removed.
13561         * sysdeps/unix/sysv/linux/bits/socket.h (struct msghdr): Use size_t
13562         instead of int for msg_iovlen, instead of socklen_t for msg_controllen.
13563         Other than the previously incorrect sign of msg_iovlen, this is a
13564         no-op on 32-bit platforms.  On 64-bit platforms it makes this header
13565         match their layouts as well, so the following are now identical to it.
13566         * sysdeps/unix/sysv/linux/s390/bits/socket.h: File removed.
13567         * sysdeps/unix/sysv/linux/sparc/bits/socket.h: File removed.
13568         * sysdeps/unix/sysv/linux/x86_64/bits/socket.h: File removed.
13569         * sysdeps/unix/sysv/linux/ia64/bits/socket.h: File removed.
13570         * sysdeps/unix/sysv/linux/alpha/bits/socket.h: File removed.
13572 2002-10-15  Ulrich Drepper  <drepper@redhat.com>
13574         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_VFORK_SYSCALL):
13575         Define for 2.4+ kernels.
13577         * sysdeps/unix/sysv/linux/i386/vfork.S: Optimize for kernels which
13578         are known to have the vfork syscall.  Don't confuse the CPUs
13579         branch prediction unit by jumping to the return address.
13581         * sysdeps/unix/sysv/linux/alpha/fpathconf.c (__fpathconf): Add
13582         support for reiserfs and xfs.
13584         * sysdeps/unix/sysv/linux/fpathconf.c (__fpathconf): Add case for
13585         XFS link count.
13586         * sysdeps/unix/sysv/linux/linux_fsinfo.h: Define XFS_SUPER_MAGIC
13587         and XFS_LINK_MAX.
13588         Patch by Eric Sandeen <sandeen@sgi.com> [PR libc/4706].
13590 2002-10-16  Jakub Jelinek  <jakub@redhat.com>
13592         * include/libc-symbols.h (attribute_tls_model_ie): Define.
13593         * include/errno.h (errno): Define to __libc_errno in libc.so.
13594         Add attribute_tls_model_ie.
13595         * include/netdb.h (h_errno): Define to __libc_h_errno in libc.so.
13596         Add attribute_tls_model_ie.
13597         * include/resolv.h (_res): Define to __libc_res in libc.so.  Add
13598         attribute_tls_model_ie.
13599         * inet/herrno.c (__libc_h_errno): Add hidden alias to h_errno.
13600         (h_errno): Define.
13601         * resolv/res_libc.c (__libc_res): Add hidden alias to _res.
13602         (_res): Define.
13603         * sysdeps/generic/bits/libc-tsd.h (__libc_tsd_define): Add
13604         attribute_tls_model_ie.
13605         * sysdeps/generic/errno-loc.c (errno): Only undefine if not using
13606         __thread.
13607         * sysdeps/generic/errno.c (__libc_errno): Add hidden alias to errno.
13608         * sysdeps/unix/sysv/linux/i386/sysdep.h (SYSCALL_ERROR_HANDLER): Use
13609         __libc_errno in USE___THREAD case.
13610         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
13611         Likewise.
13612         * configure.in (HAVE_TLS_MODEL_ATTRIBUTE): Check for
13613         __attribute__((tls_model (""))).
13614         * configure: Rebuilt.
13615         * config.h.in (HAVE_TLS_MODEL_ATTRIBUTE): Add.
13617 2002-10-15  Ulrich Drepper  <drepper@redhat.com>
13619         * timezone/asia: Update from tzdata2002d.
13620         * timezone/australasia: Likewise.
13621         * timezone/iso3166.tab: Likewise.
13622         * timezone/southamerica: Likewise.
13623         * timezone/zone-tab: Likewise.
13625 2002-10-15  Roland McGrath  <roland@redhat.com>
13627         * sysdeps/generic/dl-tls.c (_dl_deallocate_tls) [TLS_TCB_AT_TP]:
13628         Adjust TCB pointer before calling free, so we get the whole block.
13630 2002-10-14  Roland McGrath  <roland@redhat.com>
13632         * sysdeps/unix/sysv/linux/x86_64/sigaction.c
13633         [HAVE_HIDDEN && !HAVE_BROKEN_VISIBILITY_ATTRIBUTE]: Declare restore_rt
13634         extern using attribute_hidden instead of static, avoids warning.
13636 2002-10-09  Jakub Jelinek  <jakub@redhat.com>
13638         * sysdeps/unix/sysv/linux/configure.in: Use */lib64 for s390x too.
13639         * sysdeps/unix/sysv/linux/configure: Rebuilt.
13641 2002-10-14  Ulrich Drepper  <drepper@redhat.com>
13643         * po/sv.po: Update from translation team.
13645 2002-10-12  H.J. Lu  <hjl@gnu.org>
13647         * sunrpc/thrsvc.c (PROCQUIT): New.
13648         (struct rpc_arg): New.
13649         (dispatch): Call exit (0) if request->rq_proc == PROCQUIT.
13650         (test_one_call): Take struct rpc_arg * instead of CLIENT *c.
13651         (thread_wrapper): Modified for struct rpc_arg * and call PROCQUIT.
13652         (main): Modified for struct rpc_arg *.
13654 2002-10-14  Ulrich Drepper  <drepper@redhat.com>
13656         * dirent/scandir.c: Rearrange code a bit to reduce binary size.
13658 2002-10-14  Jakub Jelinek  <jakub@redhat.com>
13660         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Include tls.h.
13661         (SYSCALL_ERROR_HANDLER): Use RTLD_PRIVATE_ERRNO sequence
13662         in ld.so even if __thread is supported.
13664 2002-10-13  Jakub Jelinek  <jakub@redhat.com>
13666         * sysdeps/unix/sysv/linux/arm/profil-counter.h (profil_counter):
13667         Add hack to prevent the compiler from clobbering the signal context.
13668         * sysdeps/unix/sysv/linux/sh/profil-counter.h (profil_counter):
13669         Likewise.
13670         * sysdeps/unix/sysv/linux/x86_64/profil-counter.h (profil_counter):
13671         Likewise.
13673 2002-10-14  Andreas Jaeger  <aj@suse.de>
13675         * sysdeps/mips/fpu/libm-test-ulps: Regenerated by
13676         Guido Guenther <agx@sigxcpu.org>.
13678 2002-10-14  Ulrich Drepper  <drepper@redhat.com>
13680         * po/sk.po: Update from translation team.
13682 2002-09-26  Roland McGrath  <roland@redhat.com>
13684         * elf/dl-load.c (_dl_dst_count, _dl_dst_substitute): Handle $LIB
13685         dynamic string tag.
13686         * elf/Makefile ($(objpfx)trusted-dirs.st): Make the output define
13687         DL_DST_LIB based on $(slibdir).
13689 2002-10-13  Roland McGrath  <roland@frob.com>
13691         * elf/rtld-Rules ($(objpfx)rtld-libc.a): Use $(verbose) in ar command.
13693         * sysdeps/mach/hurd/getresuid.c: New file.
13694         * sysdeps/mach/hurd/getresgid.c: New file.
13695         * sysdeps/mach/hurd/setresuid.c: New file.
13696         * sysdeps/mach/hurd/setresgid.c: New file.
13698         * posix/unistd.h [__USE_GNU] (getresuid, getresgid, setresuid,
13699         setresgid): Declare them.
13700         * NEWS: Mention it.
13701         * include/unistd.h
13702         (__getresuid, __getresgid, __setresuid, __setresgid): Declare them,
13703         add libc_hidden_proto.
13704         * posix/Versions (libc: GLIBC_2.3.2): New set.  Add
13705         getresuid, getresgid, setresuid, setresgid here.
13706         * Versions.def (libc): Define GLIBC_2.3.2 set.
13707         * sysdeps/generic/getresuid.c (__getresuid): Fix argument types.
13708         Add libc_hidden_def.
13709         * sysdeps/generic/getresgid.c (__getresgid): Likewise.
13710         * sysdeps/generic/setresgid.c: New file.
13711         * sysdeps/generic/setresuid.c: New file.
13712         * sysdeps/unix/sysv/linux/Makefile [$(subdir) = misc]
13713         (sysdep_routines): Don't add getresuid and getresgid here.
13714         * sysdeps/unix/sysv/linux/arm/Makefile [$(subdir) = misc]
13715         (sysdep_routines): Don't add setresuid and setresgid here.
13716         * sysdeps/unix/sysv/linux/cris/Makefile: Likewise.
13717         * sysdeps/unix/sysv/linux/sh/Makefile: Likewise.
13718         * sysdeps/unix/sysv/linux/s390/s390-32/Makefile: Likewise.
13719         * sysdeps/unix/sysv/linux/s390/s390-64/Makefile: Likewise.
13720         * sysdeps/unix/sysv/linux/i386/Makefile: Likewise.
13721         * sysdeps/unix/sysv/linux/m68k/Makefile: Likewise.
13722         * posix/Makefile (routines): Add them all here instead.
13723         * sysdeps/unix/sysv/linux/i386/getresuid.c (getresuid): Renamed to
13724         __getresuid.  Add libc_hidden_def for that, and weak alias to old name.
13725         * sysdeps/unix/sysv/linux/i386/getresgid.c (getresgid): Renamed to
13726         __getresgid.  Add libc_hidden_def for that, and weak alias to old name.
13727         * sysdeps/unix/sysv/linux/i386/setresuid.c: Add libc_hidden_def.
13728         [! __NR_setresuid]: Include generic file.
13729         * sysdeps/unix/sysv/linux/i386/setresgid.c (setresgid): Renamed to
13730         __setresgid.  Add libc_hidden_def for that, and weak alias to old name.
13731         [! __NR_setresuid]: Include generic file.
13732         * sysdeps/unix/sysv/linux/syscalls.list (setresuid, setresgid):
13733         Caller is - now, not EXTRA.
13734         * sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list
13735         (setresuid, setresgid, getresuid, getresgid): Likewise.
13736         * sysdeps/unix/sysv/linux/syscalls.list (getresuid, getresgid):
13737         Add these calls here.
13738         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Remove them here.
13739         * sysdeps/unix/sysv/linux/hppa/syscalls.list: Likewise.
13740         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
13741         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
13742         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
13743         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Likewise.
13744         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Likewise.
13745         * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise.
13746         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
13748         * sysdeps/unix/sysv/linux/Makefile [$(subdir) = misc]
13749         (sysdep_routines): Add setfsuid and setfsgid here.
13750         * sysdeps/unix/sysv/linux/arm/Makefile: Not here.
13751         * sysdeps/unix/sysv/linux/sparc/sparc32/Makefile: Likewise.
13752         * sysdeps/unix/sysv/linux/cris/Makefile: Likewise.
13753         * sysdeps/unix/sysv/linux/sh/Makefile: Likewise.
13754         * sysdeps/unix/sysv/linux/s390/s390-32/Makefile: Likewise.
13755         * sysdeps/unix/sysv/linux/s390/s390-64/Makefile: Likewise.
13756         * sysdeps/unix/sysv/linux/i386/Makefile: Likewise.
13757         * sysdeps/unix/sysv/linux/m68k/Makefile: Likewise.
13759         * hurd/errno.c: Renamed to ...
13760         * hurd/errno-loc.c: ... this.
13761         * hurd/Makefile (routines): errno -> errno-loc
13763 2002-10-13  Ulrich Drepper  <drepper@redhat.com>
13765         * po/de.po: Update from translation team.
13767         * MakeTAGS: Add -E flag to xgettext runs.
13769 2002-10-12  Ulrich Drepper  <drepper@redhat.com>
13771         * po/fr.po: Update from translation team.
13773         * sysdeps/posix/system.c: Remove support for old and buggy SCO systems.
13774         Optimize a bit for use in glibc.
13776 2002-10-12  Roland McGrath  <roland@redhat.com>
13778         * stdio-common/tst-rndseek.c (TIMEOUT): Increase to 10 seconds.
13779         Some machines are slow.  Guido Guenther <agx@sigxcpu.org> has one.
13781 2002-10-12  Ulrich Drepper  <drepper@redhat.com>
13783         * po/sv.po: Update from translation team.
13785 2002-10-11  Isamu Hasegawa  <isamu@yamato.ibm.com>
13787         * posix/regcomp.c (re_compile_fastmap_iter): Remove the handling
13788         OP_CONTEXT_NODE.
13789         (regfree): Likewise.
13790         (create_initial_state): Likewise.
13791         (analyze): Remove the substitutions which became useless.
13792         (calc_first): Likewise.
13793         (calc_epsdest): Use edests of OP_BACK_REF in case that it has
13794         epsilon destination.
13795         (duplicate_node_closure): New function.
13796         (duplicate_node): Remove the handling OP_CONTEXT_NODE.
13797         (calc_inveclosure): Likewise.
13798         (calc_eclosure): Likewise.
13799         (calc_eclosure_iter): Invoke duplicate_node_closure instead of
13800         direct invocation of duplicate_node.
13801         (parse): Don't use comma operator in the return to avoid compiler
13802         warning.
13803         (parse_reg_exp): Likewise.
13804         (parse_branch): Likewise.
13805         (parse_expression): Likewise.
13806         (parse_sub_exp): Likewise.
13807         (parse_dup_op): Likewise.
13808         * posix/regex_internal.c (re_dfa_add_node): Remove the substitutions
13809         which became useless.
13810         (create_ci_newstate): Remove the handling OP_CONTEXT_NODE.
13811         (create_cd_newstate): Likewise.
13812         * posix/regex_internal.h (re_token_type_t): Remove the obsolete type.
13813         (re_token_t): Likewise.
13814         (re_dfa_t): Likewise.
13815         (re_node_set_remove): New macro.
13816         * posix/regexec.c (check_matching): Remove the handling
13817         OP_CONTEXT_NODE.
13818         (check_halt_node_context): Likewise.
13819         (proceed_next_node): Likewise.
13820         (pop_fail_stack): Fix the memory leak.
13821         (set_regs): Likewise.
13822         (free_fail_stack_return): New function.
13823         (sift_states_backward): Fix the memory leak.  Remove the handling
13824         OP_CONTEXT_NODE.
13825         (update_cur_sifted_state): Append some if clause to avoid redundant
13826         call.
13827         (sub_epsilon_src_nodes): Use IS_EPSILON_NODE since it might be a
13828         back reference.
13829         (check_dst_limits): Remove the handling OP_CONTEXT_NODE.
13830         (check_subexp_limits): Likewise.
13831         (search_subexp): Likewise.
13832         (sift_states_bkref): Likewise.
13833         (transit_state_mb): Likewise.
13834         (transit_state_bkref_loop): Likewise.
13835         (transit_state_bkref_loop): Likewise.
13836         (group_nodes_into_DFAstates): Likewise.
13837         (check_node_accept): Likewise.
13838         (sift_ctx_init): Add initializing.
13840 2002-10-12  Ulrich Drepper  <drepper@redhat.com>
13842         * sysdeps/unix/sysv/linux/i386/sysdep.h (INLINE_SYSCALL): Use
13843         __builtin_expect.
13845 2002-10-11  Ulrich Drepper  <drepper@redhat.com>
13847         * elf/dl-load.c (_dl_map_object_from_fd): Remove unnecessarily
13848         duplicated variable c.
13850         * sysdeps/unix/sysv/linux/sigwait.c (__sigwait): Use INTERNAL_SYSCALL
13851         if possible.
13853         * sysdeps/unix/sysv/linux/i386/sysdep.h
13854         (INTERNAL_SYSCALL_ERROR_P): New define.
13855         (INTERNAL_SYSCALL_ERRNO): Likewise.
13857         * sysdeps/unix/sysv/linux/i386/profil-counter.h (profil_counter):
13858         Add hack to prevent the compiler from clobbering the signal context.
13860 2002-10-11  Roland McGrath  <roland@redhat.com>
13862         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
13863         Fix typos.
13865         * sysdeps/generic/dl-lookupcfg.h: Include <tls.h>.
13866         * sysdeps/sh/dl-lookupcfg.h: File removed.
13867         * sysdeps/i386/dl-lookupcfg.h: File removed.
13869         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER): Add
13870         missing labels and ; from last change.
13872         * stdio-common/tst-sscanf.c (val_double): Append .0 to large whole
13873         number literals, so they are doubles instead of ints.
13875 2002-10-09  Roland McGrath  <roland@redhat.com>
13877         * sysdeps/generic/bits/libc-tsd.h [USE___THREAD]: Conditional
13878         changed from [USE_TLS && HAVE___THREAD].
13880         * sysdeps/i386/dl-machine.h (elf_machine_type_class, elf_machine_rel):
13881         Disable TLS relocs if [RTLD_BOOTSTRAP && !USE___THREAD].
13882         * sysdeps/x86_64/dl-machine.h
13883         (elf_machine_type_class, elf_machine_rela): Likewise.
13884         * sysdeps/sh/dl-machine.h (elf_machine_type_class, elf_machine_rela):
13885         Likewise.
13887         * include/link.h (struct link_map): Remove member l_tls_tp_initialized.
13888         * elf/rtld.c (_dl_start_final, dl_main): Don't use it.
13889         (_dl_start): Conditionalize PT_TLS check on [USE___THREAD].
13891         * sysdeps/i386/dl-tls.h (__TLS_GET_ADDR): Use ___tls_get_addr_internal
13892         instead of ___tls_get_addr.
13893         (___tls_get_addr_internal): Add attribute_hidden to decl.
13895         * sysdeps/generic/ldsodefs.h (struct rtld_global): New variable
13896         _dl_error_catch_tsd.
13897         * elf/rtld.c (startup_error_tsd): New function.
13898         (dl_main): Point _dl_error_catch_tsd at that.
13899         * elf/dl-error.c: Don't use libc-tsd.h for DL_ERROR,
13900         use new function pointer instead.
13901         * elf/dl-tsd.c: New file.
13902         * elf/Makefile (routines): Add it.
13904 2002-10-07  Roland McGrath  <roland@redhat.com>
13906         * elf/dl-misc.c (_dl_debug_vdprintf): Use INTERNAL_SYSCALL macro for
13907         writev if it's available.  Otherwise if [RTLD_PRIVATE_ERRNO] then
13908         take _dl_load_lock around calling __writev.
13910         * sysdeps/unix/sysv/linux/i386/sysdep.h (INTERNAL_SYSCALL): New macro.
13911         (INLINE_SYSCALL): Use that.
13913         * sysdeps/generic/dl-sysdep.h: New file.
13914         * sysdeps/mach/hurd/dl-sysdep.h: New file.
13915         * sysdeps/generic/ldsodefs.h: Include <dl-sysdep.h>.
13916         * include/errno.h [IS_IN_rtld]: Include <dl-sysdep.h> to define ...
13917         [RTLD_PRIVATE_ERRNO]: Use a hidden global variable for errno and
13918         access it directly.
13919         * elf/dl-minimal.c (__errno_location): Removed.
13920         * sysdeps/unix/i386/sysdep.S (__syscall_errno) [RTLD_PRIVATE_ERRNO]:
13921         Use GOTOFF access for errno.
13922         * sysdeps/unix/sysv/linux/i386/sysdep.h
13923         [RTLD_PRIVATE_ERRNO] (SYSCALL_ERROR_HANDLER): Likewise.
13925         * sysdeps/unix/x86_64/sysdep.S (__syscall_errno) [RTLD_PRIVATE_ERRNO]:
13926         Use PC-relative access for errno.
13927         * sysdeps/unix/sysv/linux/x86_64/sysdep.h
13928         [RTLD_PRIVATE_ERRNO] (SYSCALL_ERROR_HANDLER): Likewise.
13930         * include/tls.h: New file.
13931         (USE___THREAD): New macro.
13932         Define to 1 under [USE_TLS && HAVE___THREAD] and only when compiling
13933         libc or libpthread.
13934         * sysdeps/unix/sysv/linux/i386/sysdep.h [USE___THREAD]: Conditional
13935         changed from [USE_TLS && HAVE___THREAD].
13936         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
13937         * sysdeps/unix/i386/sysdep.S: Likewise.
13938         * sysdeps/unix/x86_64/sysdep.S: Likewise.
13939         * include/errno.h: Likewise.
13940         * include/netdb.h: Likewise.
13941         * include/resolv.h: Likewise.
13943         * sysdeps/generic/errno.c: New file.
13944         * csu/Makefile (aux): New variable, list errno.
13945         * sysdeps/unix/sysv/linux/i386/sysdep.S (errno, _errno): Remove defns.
13946         * sysdeps/unix/sysv/linux/m68k/sysdep.S: Likewise.
13947         * sysdeps/unix/sysv/linux/x86_64/sysdep.S: Likewise.
13948         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S: Likewise.
13949         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S: Likewise.
13950         * sysdeps/unix/sysv/linux/arm/sysdep.S: Likewise.
13951         * sysdeps/unix/sysv/linux/cris/sysdep.S: Likewise.
13952         * sysdeps/unix/sysv/linux/hppa/sysdep.c: Likewise.
13953         * sysdeps/unix/sysv/linux/ia64/sysdep.S: Likewise.
13954         * sysdeps/unix/sysv/linux/powerpc/sysdep.c: Likewise.
13955         * sysdeps/unix/sysv/linux/sparc/sysdep.S: Likewise.
13956         * sysdeps/unix/sysv/linux/sh/sysdep.S: Likewise.
13957         * sysdeps/unix/alpha/sysdep.S: Likewise.
13958         * sysdeps/generic/start.c: Likewise.
13959         * sysdeps/unix/start.c: Likewise.
13960         * sysdeps/unix/arm/start.c: Likewise.
13961         * sysdeps/unix/bsd/ultrix4/mips/start.S: Likewise.
13962         * sysdeps/unix/sparc/start.c: Likewise.
13963         * sysdeps/unix/sysv/irix4/start.c: Likewise.
13964         * sysdeps/unix/sysv/linux/mips/sysdep.S: File removed.
13966         * manual/search.texi (Tree Search Function, Hash Search Function):
13967         Mention search.h clearly.
13969 2002-10-05  Roland McGrath  <roland@redhat.com>
13971         * elf/dl-fxstat64.c: File removed.
13972         * elf/dl-xstat64.c: File removed.
13973         * elf/Makefile (rtld-routines): Remove them.
13974         * sysdeps/unix/sysv/linux/xstat64.c: Remove RTLD_STAT64 conditionals.
13975         Instead, use strong_alias instead of versioned_symbol in the
13976         !SHLIB_COMPAT case.
13977         * sysdeps/unix/sysv/linux/fxstat64.c: Likewise.
13978         * sysdeps/unix/sysv/linux/lxstat64.c: Likewise.
13980         * include/shlib-compat.h
13981         (SHLIB_COMPAT): Require that IS_IN_##lib be defined nonzero.
13982         [! NOT_IN_libc] (IS_IN_libc): Define it.
13983         * cppflags-iterator.mk (CPPFLAGS-$(cpp-src)): Use -Dx=1 not just -Dx.
13984         * elf/Makefile (CPPFLAGS-.os): Likewise.
13986         * sunrpc/rpc_main.c (main): Don't declare with noreturn attribute.
13987         Return the status instead of calling exit.
13989         * Makeconfig (CFLAGS): Prepend -std=gnu99.
13990         * Makerules (+make-deps): Use $(CFLAGS) only for .c sources.
13991         Remove superfluous rm command, whose @ plus make bugs hid
13992         all these commands from the make output.
13994         * include/stubs-prologue.h: New file.  Give #error under #ifdef _LIBC.
13995         * Makefile ($(inst_includedir)/gnu/stubs.h): Depend on it.
13996         Use that file's contents instead of literal echo's for the prologue.
13997         * include/features.h: Include <gnu/stubs.h> unconditionally.
13998         * include/gnu/stubs.h: New file.
14000 2002-09-30  Roland McGrath  <roland@redhat.com>
14002         * elf/rtld-Rules: New file.
14003         * elf/Makefile ($(objpfx)librtld.map, $(objpfx)librtld.mk,
14004         $(objpfx)rtld-libc.a): New targets.
14005         (generated): Add them.
14006         (reloc-link): Remove -o $@ from the variable.
14007         ($(objpfx)dl-allobjs.os): Add -o $@ after $(reloc-link).
14008         (distribute): Add rtld-Rules.
14009         (CPPFLAGS-.os): Define this instead of CFLAGS-.os.
14010         * Makerules ($(+sysdir_pfx)sysd-rules): Emit rules for rtld-% targets.
14011         (common-mostlyclean, common-clean): Clean up rtld-* files.
14012         * sysdeps/unix/make-syscalls.sh: Add rtld-*.os target name to rules.
14014 2003-05-20  Jakub Jelinek  <jakub@redhat.com>
14016         * elf/dynamic-link.h (elf_get_dynamic_info): Add temp argument.
14017         If temp != NULL, copy dynamic entries which need relocation to temp
14018         array before relocating.
14019         (DL_RO_DYN_TEMP_CNT): Define.
14020         * elf/dl-load.c (_dl_map_object_from_fd): Adjust caller.
14021         * elf/rtld.c (_dl_start): Likewise.
14022         (dl_main): Likewise.  Add dyn_temp static variable.
14024 2002-10-11  Roland McGrath  <roland@redhat.com>
14026         * sysdeps/generic/dl-tls.c (__tls_get_addr): After freeing block in
14027         now-unused dtv slot, reset the slot to TLS_DTV_UNALLOCATED.
14029         * elf/tls-macros.h [__x86_64__] (TLS_GD): Fix the sequence with the
14030         proper set of no-op insn prefixes.
14032         * elf/tst-tls8.c (do_test): Use %zd format for l_tls_modid members.
14034 2002-10-11  Ulrich Drepper  <drepper@redhat.com>
14036         * sysdeps/unix/sysv/linux/execve.c: Don't try calling
14037         __pthread_kill_other_threads_np.
14039         * sysdeps/generic/pselect.c: Avoid unnecessary sigprocmask calls.
14041 2002-10-08  Roland McGrath  <roland@redhat.com>
14043         * locale/newlocale.c (__newlocale): If setting all categories to "C",
14044         just return &_nl_C_locobj instead of copying it.
14045         * locale/freelocale.c (__freelocale): Check for &_nl_C_locobj.
14046         * locale/duplocale.c (__duplocale): Likewise.
14048 2002-10-07  Roland McGrath  <roland@frob.com>
14050         * config.h.in (HAVE_I386_SET_GDT): New #undef.
14051         * sysdeps/mach/configure.in: Define it with new check for i386_set_gdt.
14052         * sysdeps/mach/configure: Regenerated.
14054 2002-10-06  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
14056         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (INLINE_SYSCALL):
14057         Add all necessary register outputs for syscall-clobbered registers.
14059 2002-10-02  David Mosberger  <davidm@hpl.hp.com>
14061         * sysdeps/ia64/bzero.S: Rewritten by Sverre Jarp to tune for
14062         Itanium 2 (and Itanium).
14063         Fix unwind directives and make it fit in 80 columns.
14064         * sysdeps/ia64/memset.S: Likewise.
14065         * sysdeps/ia64/memcpy.S: Likewise.
14066         Move jump table to .rodata section.
14068 2002-10-03  Roland McGrath  <roland@frob.com>
14070         * sysdeps/mach/hurd/i386/init-first.c (_hurd_stack_setup): Add
14071         clobbers to asm.
14073 2002-10-10  Andreas Jaeger  <aj@suse.de>
14075         * sysdeps/x86_64/_mcount.S: Restore correct registers.
14077 2002-10-10  Ulrich Drepper  <drepper@redhat.com>
14079         * posix/Versions (libc) [GLIBC_PRIVATE]: Add __pselect.
14081 2002-10-09  Ulrich Drepper  <drepper@redhat.com>
14083         * sysdeps/generic/ldsodefs.h: Remove attribute_hidden from
14084         _dl_allocate_tls_init.  Add rtld_hidden_proto.
14085         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Add
14086         rtld_hidden_def.
14087         * elf/Versions (ld) [GLIBC_PRIVATE]: Add _dl_allocate_tls_init.
14089         * version.h (VERSION): Bump to 2.3.1.
14091         * Make-dist: Add back one of the tar invocations removed before.
14093         * stdlib/Makefile (distribute): Add allocalim.h.
14095         * sysdeps/generic/bits/libc-tsd.h [!(USE_TLS && HAVE___THREAD)]
14096         (__libc_tsd_address): Use correct variable name.
14097         Patch by Stefan Jones <stefan.jones@multigig.com>.
14099         * sysdeps/unix/sysv/linux/ia64/getcontext.S: Add missing ;;.
14100         Reported by edwardsg@sgi.com [PR libc/4678].
14102         * Versions.def (libc): Add GLIBC_2.3.1.
14103         (libpthread): Add GLIBC_2.3.1.
14105         * include/signal.h: Add libc_hidden_proto for __sigwait, __sigwaitinfo,
14106         and __sigtimedwait.
14107         * signal/Versions: Add __sigtimedwait, __sigwait, and __sigwaitinfo.
14108         * sysdeps/unix/sysv/linux/sigtimedwait.c (__sigtimedwait): Add
14109         libc_hidden_def.
14110         * sysdeps/unix/sysv/linux/sigwait.c (__sigwait): Likewise.
14111         * sysdeps/unix/sysv/linux/sigwaitinfo.c (__sigwaitinfo): Likewise.
14113         * include/sys/msg.h: Declare __libc_msgrcv and __libc_msgsnd.
14114         * sysdeps/unix/sysv/linux/msgrcv.c (__msgrcv): Rename to __libc_msgrcv
14115         and make old name an alias.
14116         * sysdeps/unix/sysv/linux/msgsnd.c (__msgsnd): Rename to __libc_msgsnd
14117         and make old name an alias.
14118         * sysvipc/Versions (libc) [GLIBC_PRIVATE]: Add __libc_msgrcv and
14119         __libc_msgsnd.
14121         * include/sys/uio.h: Declare __libc_readv and __libc_writev.
14122         * misc/Versions (libc) [GLIBC_PRIVATE]: Add __libc_readv and
14123         __libc_writev.
14124         * sysdeps/generic/readv.c (__readv): Rename to __libc_readv and make
14125         old name an alias.
14126         * sysdeps/posix/readv.c: Likewise
14127         * sysdeps/unix/sysv/aix/readv.c: Likewise.
14128         * sysdeps/unix/sysv/linux/readv.c: Likewise.
14129         * sysdeps/generic/writev.c (__writev): Rename to __libc_writev and make
14130         old name an alias.
14131         * sysdeps/posix/writev.c: Likewise
14132         * sysdeps/unix/sysv/aix/writev.c: Likewise.
14133         * sysdeps/unix/sysv/linux/writev.c: Likewise.
14135         * include/sys/wait.h: Declare __waitid.
14136         * posix/Versions (libc) [GLIBC_PRIVATE]: Add __waitid.
14137         * sysdeps/generic/waitid.c (waitid): Rename to __waitid and make old
14138         name an alias.
14139         * sysdeps/posix/waitid.c: Likewise.
14140         * sysdeps/unix/sysv/aix/waitid.c: Likewise.
14142         * sysdeps/unix/sysv/linux/syscalls.list: Add creat syscall.
14144 2002-10-07  Jakub Jelinek  <jakub@redhat.com>
14146         * include/alloca.h (__libc_use_alloca, __libc_alloca_cutoff): New
14147         prototypes.
14148         (__MAX_ALLOCA_CUTOFF): Define.
14149         Include allocalim.h.
14150         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyname2_r,
14151         _nss_dns_gethostbyaddr_r): Use alloca or malloc to allocate
14152         host_buffer depending on __libc_use_alloca.
14153         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyname_r,
14154         _nss_dns_getnetbyaddr_r): Use alloca or malloc to allocate
14155         net_buffer depending on __libc_use_alloca.
14156         * resolv/res_query.c (res_nquery): Use alloca or malloc to allocate
14157         buf depending on __libc_use_alloca.
14158         * resolv/gethnamaddr.c (gethostbyname2, gethostbyaddr): Likewise.
14159         * stdio-common/vfprintf.c (vfprintf): Use __libc_use_alloca
14160         instead of hardcoded constants.
14161         Pass proper size argument to alloca and compute end for wide char
14162         version.
14163         * stdio-common/printf_fp.c (__printf_fp): Use __libc_use_alloca
14164         instead of hardcoded constants.
14165         * string/strcoll.c (strcoll): Likewise.
14166         * string/strxfrm.c (strxfrm): Likewise.
14167         * sysdeps/posix/readv.c (__readv): Likewise.
14168         * sysdeps/posix/writev.c (__writev): Likewise.
14169         * sysdeps/generic/allocalim.h: New file.
14171 2002-10-08  Roland McGrath  <roland@redhat.com>
14173         * configure.in (aux_missing warning): Change "too old" to
14174         "incompatible versions", since for autoconf it's "too new" right now.
14175         * configure: Regenerated.
14177         * configure.in (AUTOCONF): New check to set it.  Set to "no" if the
14178         one found doesn't work on our configure.in.
14179         * configure: Regenerated.
14180         * config.make.in (AUTOCONF): New substituted variable.
14181         * Makefile (autoconf-it-cvs): New canned sequence, broken out of ...
14182         (autoconf-it): ... here, use that instead of defining conditionally.
14183         Use $(AUTOCONF) instead of literal autoconf.
14184         [$(AUTOCONF) != no] (configure, %/configure): Protect these rules
14185         with this condition.
14186         * Make-dist (autoconf-it, configure, %/configure): Copy those changes.
14188 2002-10-08  Ulrich Drepper  <drepper@redhat.com>
14190         * Make-dist (dist): Cleanup a bit.  We are not interested in the
14191         14 char filename limit anymore.  Remove intermediate files and
14192         symlinks.
14194 2002-10-05  Ulrich Drepper  <drepper@redhat.com>
14196         * po/sk.po: Update from translation team.
14197         * po/tr.po: Likewise.
14198         * po/gl.po: Likewise.
14200 2002-10-05  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
14202         * elf/tls-macros.h: Fix SH version of macros so as to match ABI syntax.
14204 2002-10-03  Ulrich Drepper  <drepper@redhat.com>
14206         * version.h (RELEASE): Change to stable.
14208 2002-10-03  Jakub Jelinek  <jakub@redhat.com>
14210         * sysdeps/unix/sysv/linux/_exit.c (__syscall_exit,
14211         __syscall_exit_group): New prototypes.
14213 2002-10-03  Ulrich Drepper  <drepper@redhat.com>
14215         * glibc 2.3 released.
14218 See ChangeLog.13 for earlier changes.