Update.
[platform/upstream/glibc.git] / ChangeLog
1 2003-11-19  Ulrich Drepper  <drepper@redhat.com>
2
3         * posix/bug-regex20.c: Correct invalid UTF-8 sequences.
4
5         * posix/regex_internal.c (build_wcs_upper_buffer): If mbrtowc
6         fails, just use the byte, do no fancy conversions.
7
8         * posix/regex_internal.h (re_string_first_byte): Use ->valid_len
9         not ->len.
10         (re_string_is_single_byte_char): Likewise.
11
12 2003-11-18  Ulrich Drepper  <drepper@redhat.com>
13
14         * posix/regexec.c (get_subexp): After calling get_subexp_seb
15         reload buf and bkref_str.  Little optimization by avoiding memcmp.
16
17 2003-11-14  David Mosberger   <davidm@hpl.hp.com>
18
19         * sysdeps/unix/sysv/linux/ia64/sysdep.h
20         (GAS_ALIGN_BREAKS_UNWIND_INFO): Define this macro to indicate
21         that all existing GAS versions have a problem with .align inside
22         a function.
23         * sysdeps/ia64/memccpy.S: Work around GAS_ALIGN_BREAKS_UNWIND_INFO bug.
24         * sysdeps/ia64/memcpy.S: Likewise.
25         * sysdeps/ia64/memset.S: Likewise.
26         * sysdeps/ia64/memmove.S: Likewise.  Also move the jump-table to
27         out of .text into .rodata, where it belongs.
28
29         * sysdeps/unix/sysv/linux/ia64/pipe.S: There is no need to
30         save/restore input-arguments, because they're necessarily
31         preserved by the kernel to support syscall-restart.
32
33 2003-11-18  Jakub Jelinek  <jakub@redhat.com>
34
35         * posix/regex_internal.h (re_token_type_t): Remove unused ALT,
36         END_OF_RE_TOKEN_T and SUBEXP.  Reorder values.  Add OP_UTF8_PERIOD
37         and EPSILON_BIT.
38         (IS_EPSILON_NODE): Just test if EPSILON_BIT is set.
39         (ACCEPT_MB_NODE): Return 1 for OP_UTF8_PERIOD as well.
40         * posix/regex_internal.c (create_ci_newstate, create_cd_newstate):
41         Handle OP_UTF8_PERIOD.
42         (re_string_reconstruct): Set valid_len for single byte char searching
43         with no translation and case sensitivity.
44         * posix/regcomp.c (re_compile_fastmap_iter, calc_first): Handle
45         OP_UTF8_PERIOD.
46         (re_compile_internal): Don't call optimize_utf8 if preg->translate
47         != NULL.
48         (optimize_utf8): Remove BACK_SLASH case.
49         Transform OP_PERIOD into OP_UTF8_PERIOD if the searching can be
50         optimized.
51         (parse_bracket_exp): Don't create SIMPLE_BRACKET if it doesn't have
52         any bits set and COMPLEX_BRACKET is used.
53         * posix/regexec.c (transit_state_mb): Fix comment typo.
54         (group_nodes_into_DFAstates, check_node_accept): Handle
55         OP_UTF8_PERIOD.
56         (check_node_accept_bytes): Likewise.  Reorder slightly so that
57         re_string_char_size_at and re_string_elem_size_at are called
58         only when needed.
59         * posix/bug-regex20.c (BRE, ERE): Define.
60         (tests): Use them to make lines shorter.  Expect . to be
61         optimized.  Add lots of new tests.
62         (main): Run (ATM just case sensitive) test with backwards searching
63         as well.
64
65 2003-11-18  Jakub Jelinek  <jakub@redhat.com>
66
67         * io/bug-ftw4.c: Include string.h.
68         * posix/fnmatch.c (mbsinit): Remove define.
69
70 2003-11-17  Jakub Jelinek  <jakub@redhat.com>
71
72         * posix/regcomp.c (optimize_utf8): Optimize multi-byte chars as
73         well.
74         * posix/bug-regex20.c (tests): Add new tests.  Multi-byte char
75         followed by dup operator is expected to be optimized.
76
77         * posix/regexec.c (check_node_accept_bytes): Move nrules and j
78         variables to the block where they are only used, initialize
79         nrules only immediately before using it.
80
81 2003-11-15  Andreas Jaeger  <aj@suse.de>
82
83         * sysdeps/x86_64/fpu/s_scalbnl.S: New file.
84         * sysdeps/x86_64/fpu/s_truncl.S: New file.
85         * sysdeps/x86_64/fpu/s_nearbyintl.S: New file.
86         * sysdeps/x86_64/fpu/s_floorl.S: New file.
87         * sysdeps/x86_64/fpu/s_ilogbl.S: New file.
88         * sysdeps/x86_64/fpu/e_remainderl.S: New file.
89
90         * math/libm-test.inc (floor_test): Test also ±0.25.
91         (ceil_test): Test -0.25.
92
93 2003-11-17  Ulrich Drepper  <drepper@redhat.com>
94
95         * sysdeps/posix/getaddrinfo.c: Add support for destination address
96         selection according to RFC 3484.
97
98 2003-11-15  Ulrich Drepper  <drepper@redhat.com>
99
100         * posix/regex_internal.h: Add forward declaration of re_dfa_t.
101         Replace last two parameters of re_string_allocate and
102         re_string_construct with pointer to DFA.
103         (re_dfa_t): Add map_notascii field.
104         * posix/regcomp.c (re_compile_internal): Add call of
105         re_string_construct.
106         (init_dfa): Initialize mpa_notascii.
107         * posix/regex_internal.c: Adjust definitions of re_string_allocate
108         and re_string_construct.
109         Pass DFA to re_string_construct.  Adjust definition.  Initialize
110         map_notascii field.
111         (build_wcs_upper_buffer): If map_notascii is zero use simplfied
112         method to map ASCII values to upper case.
113         * posix/regex.c: Include localeinfo.h.
114         * posix/regexec.c: Adjust call of re_string_allocate.
115
116         * locale/langinfo.h: Add _NL_CTYPE_MAP_TO_NONASCII.
117         * locale/localeinfo.h (LIMAGIC): Change value.
118         * locale/categories.def. Add entry for _NL_CTYPE_MAP_TO_NONASCII.
119         * locale/C-ctype.h: Likewise.
120         * locale/programs/ld-ctype.c: Compute whether any mapping maps from
121         ASCII to non-ASCII value.  Write out that value.
122
123         * wcsmbs/mbsinit.c: Undef mbsinit and __mbsinit.
124         * include/wchar.h: Provide inline versions of mbsinit and __mbsinit.
125
126 2003-11-14  Jakub Jelinek  <jakub@redhat.com>
127
128         * posix/tst-rxspencer.c (check_match): @ without any following
129         characters must match only end of string.
130         (main): Fix filename in error message.
131
132 2003-11-12  David Mosberger  <davidm@hpl.hp.com>
133
134         * sysdeps/ia64/dl-machine.h: Force inlining of
135         elf_machine_runtime_setup().
136
137 2003-11-13  Andreas Jaeger  <aj@suse.de>
138
139         * math/Makefile (CFLAGS-test-float.c): Add -fno-builtin.
140         (CFLAGS-test-double.c): Likewise.
141         (CFLAGS-test-ldouble.c): Likewise.
142         (CPPFLAGS-test-ifloat.c): Likewise.
143         (CPPFLAGS-test-idouble.c): Likewise.
144         (CPPFLAGS-test-ildoubl.c): Likewise.
145
146         * math/libm-test.inc (ceil_test): Test ceil (0.25).
147
148 2003-11-04  Ulrich Drepper  <drepper@redhat.com>
149
150         * sysdeps/unix/sysv/linux/ifaddrs.c: Make sure it's the kernel who
151         sends the netlink data.
152         * sysdeps/unix/sysv/linux/check_pf.c: Likewise.
153
154 2003-11-13  Jakub Jelinek  <jakub@redhat.com>
155
156         * posix/regcomp.c (optimize_utf8): Optimize even if SIMPLE_BRACKET
157         with no bits set for >= 0x80 chars is seen.
158         * posix/bug-regex20.c (tests): Add new tests.  Expect [ABC] to be
159         optimized.
160         (main): Run all tests with RE_ICASE as well.
161
162 2003-11-13  Ulrich Drepper  <drepper@redhat.com>
163
164         * posix/Makefile: Add rules to build and run tst-rxspencer.
165         (distribute): Add rxspencer/tests and rxspencer/COPYRIGHT.
166         * posix/tst-rxspencer.c: New file.
167         * posix/rxspencer/tests: New file.
168         * posix/rxspencer/COPYRIGHT: New file.
169         Patch mostly by Jakub Jelinek.
170
171         * posix/regcomp.c (parse_bracket_exp): Don't check for range if
172         this is no option given the first token.
173
174         * posix/regcomp.c (parse_bracket_exp): Fix test for EOS after
175         hyphen in range expression.  Return EBRACK in this case.
176
177         * posix/regcomp.c (parse_bracket_element): Reject hyphens unless
178         we expect them or it's the last element in the bracket expression.
179         Indicated by new parameter.  Adjust all callers.
180
181         * posix/runtests.c (run_a_test): If regcomp failed, reset last_pattern.
182         Prettier error messages.
183
184         * posix/regcomp.c (parse_dup_op): Fail with REG_BADBR is first
185         number in {,} expression is larger.
186
187 2003-11-13  Andreas Jaeger  <aj@suse.de>
188
189         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_TGKILL):
190         Define appropriately for x86_64.
191         (__ASSUME_UTIMES): Likewise.
192         (__ASSUME_CLONE_THREAD_FLAGS): Likewise.
193
194         * sysdeps/x86_64/fpu/s_ceill.S: New file.
195
196 2003-11-13  Ulrich Drepper  <drepper@redhat.com>
197
198         * posix/regcomp.c (parse_expression): In BRE consecutive
199         duplications are not allowed.
200
201 2003-11-12  Ulrich Drepper  <drepper@redhat.com>
202
203         * posix/regcomp.c (parse_bracket_exp): If end of expression is
204         seen, return EBRACK error, not BADPAT.
205
206         * posix/regcomp.c (parse_expression): If token is OP_OPEN_DUP_NUM
207         and RE_CONTEXT_INVALID_DUP syntax flag is set, fail.
208         * posix/regex.h (RE_CONTEXT_INVALUD_OPS): New macro.
209         (RE_SYNTAX_POSIX_BASIC): Use RE_CONTEXT_INVALUD_OPS.
210
211         * posix/regcomp.c (parse_sub_exp): In case of not-matching ( )
212         return REG_EPAREN.
213
214         * posix/PTESTS: Cleanup.  Fix typoes.  Correct bugs in 2003.2.
215         * posix/runptests.c (main): Handle comments.
216         * posix/PTESTS2C.sed: Handle comments.
217
218 2003-11-12  Jakub Jelinek  <jakub@redhat.com>
219
220         * posix/regcomp.c (optimize_utf8): New function.
221         (re_compile_fastmap_iter): Use dfa->mb_cur_max > 1 instead
222         of !icase.
223         (re_compile_internal): Call optimize_utf8 if not case insensitive
224         and in UTF-8 locale.
225         * posix/regex_internal.h: Ifdef out some prototypes if
226         RE_NO_INTERNAL_PROTOTYPES is defined to shut up warnings.
227         * posix/Makefile (tests): Add bug-regex20.
228         (bug-regex20-ENV): Add LOCPATH.
229         * posix/bug-regex20.c: New test.
230
231 2003-11-12  Jakub Jelinek  <jakub@redhat.com>
232
233         * io/ftw.c (NFTW_NEW_NAME, NFTW_OLD_NAME): Add prototypes.
234
235 2003-11-12  Jakub Jelinek  <jakub@redhat.com>
236
237         * posix/tst-regex.c (umemlen): New variable.
238         (test_expr): Add expectedicase argument.  Test case insensitive
239         searches as well as backwards searches (case sensitive and
240         insensitive) too.
241         (run_test): Add icase argument.  Use it to compute regcomp flags.
242         (run_test_backwards): New function.
243         (main): Cast read to size_t to avoid warning.  Set umemlen.
244         Add expectedicase arguments to test_expr.
245         * posix/regex_internal.c (re_string_reconstruct): If is_utf8,
246         find previous character by walking back instead of converting
247         all chars from beginning.
248
249 2003-11-12  Jakub Jelinek  <jakub@redhat.com>
250
251         * posix/regex_internal.h (struct re_string_t): Add is_utf8
252         and mb_cur_max fields.
253         (struct re_dfa_t): Likewise.  Reorder fields to make structure
254         smaller on 64-bit arches.
255         (re_string_allocate, re_string_construct): Add mb_cur_max and
256         is_utf8 arguments.
257         (re_string_char_size_at, re_string_wchar_at): Use pstr->mb_cur_max
258         instead of MB_CUR_MAX.
259         * posix/regcomp.c (re_compile_fastmap_iter): Use dfa->mb_cur_max
260         instead of MB_CUR_MAX.
261         (re_compile_internal): Pass new arguments to re_string_construct.
262         (init_dfa): Initialize mb_cur_max and is_utf8 fields.
263         (peek_token, peek_token_bracket): Use input->mb_cur_max instead
264         of MB_CUR_MAX.
265         (parse_expression, parse_bracket_exp, parse_charclass_op): Use
266         dfa->mb_cur_max instead of MB_CUR_MAX.
267         * posix/regex_internal.c (re_string_construct_common): Add
268         mb_cur_max and is_utf8 arguments.  Initialize fields with them.
269         (re_string_allocate, re_string_construct): Add mb_cur_max and
270         is_utf8 arguments, pass them to re_string_construct_common.
271         Use mb_cur_max instead of MB_CUR_MAX.
272         (re_string_realloc_buffers): Use pstr->mb_cur_max instead of
273         MB_CUR_MAX.
274         (re_string_reconstruct): Likewise.
275         (re_string_context_at): Use input->mb_cur_max instead of
276         MB_CUR_MAX.
277         (create_ci_newstate, create_cd_newstate): Use dfa->mb_cur_max
278         instead of MB_CUR_MAX.
279         * posix/regexec.c (re_search_internal): Likewise.
280         Pass new arguments to re_string_allocate.
281         (check_matching, transit_state_sb): Use dfa->mb_cur_max instead of
282         MB_CUR_MAX.
283         (extend_buffers): Use pstr->mb_cur_max instead of MB_CUR_MAX.
284
285 2003-11-12  Jakub Jelinek  <jakub@redhat.com>
286
287         * posix/Makefile (tests): Add bug-regex19.
288         (bug-regex19-ENV): Add LOCPATH.
289         * posix/bug-regex19.c: New test.
290
291 2003-11-11  Jakub Jelinek  <jakub@redhat.com>
292
293         * posix/regcomp.c (re_compile_fastmap_iter): Handle RE_ICASE
294         with MB_CUR_MAX > 1 locales in the fastmap.
295
296 2003-11-11  Jakub Jelinek  <jakub@redhat.com>
297
298         * posix/regex_internal.c (build_wcs_buffer): Fix comment typo.
299         (build_wcs_upper_buffer): Likewise.  Use towupper for wchar_t instead
300         of toupper.
301         * posix/Makefile (tests): Add bug-regex17 and bug-regex18.
302         (bug-regex17-ENV, bug-regex18-ENV): Add LOCPATH.
303         * posix/bug-regex17.c: New file
304         * posix/bug-regex18.c: New file.
305
306 2003-10-08  Thorsten Kukuk  <kukuk@suse.de>
307
308         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h (pread, pwrite):
309         Define __NR_pread/__NR_pwrite if not done in kernel headers
310
311 2003-11-11  Roland McGrath  <roland@redhat.com>
312
313         * manual/xtract-typefun.awk: Swallow [(){}*] from function names.
314
315         * manual/Makefile (info): Don't depend on dir-add.info.
316         (libc.dvi libc.pdf libc.info): Depend on dir-add.texi.
317         (dir-add.info): Target removed, replaced with ...
318         (dir-add.texi): New target.
319         (distribute): Add it.
320         (install): Remove variant with --section arguments.
321         Let the @dircategory directives do their work.
322         (mostlyclean): Don't remove dir-add.info here.
323         (realclean): Remove dir-add.texi here.
324         * manual/libc.texinfo: @include dir-add.texi
325         * configure.in: Remove check for old Debian install-info.
326         * configure: Regenerated.
327         * config.make.in (OLD_DEBIAN_INSTALL_INFO): Variable removed.
328
329 2003-11-08  Andreas Schwab  <schwab@suse.de>
330
331         * scripts/data/c++-types-ia64-linux-gnu.data: New file.
332
333 2003-11-10  Carlos O'Donell  <carlos@baldric.uwo.ca>
334
335         * io/ftwtest-sh: Fix nested sed commands.
336
337 2003-11-10  Jakub Jelinek  <jakub@redhat.com>
338
339         * posix/regex_internal.h (re_string_char_size_at): Don't look beyond
340         valid_len wide chars.
341
342 2003-11-09  Roland McGrath  <roland@redhat.com>
343
344         * manual/examples/dir2.c (one): Add const to argument type.
345         Reported by J de Haan <j.de.haan@home.nl>.
346
347 2003-11-07  Ulrich Drepper  <drepper@redhat.com>
348
349         * po/pl.po: Update from translation team.
350
351 2003-11-07  Jakub Jelinek  <jakub@redhat.com>
352
353         * io/ftw.c (NFTW_OLD_NAME, NFTW_NEW_NAME): Define.
354         (ftw_dir, ftw_startup): Add __attribute ((noinline)).
355         (NFTW_OLD_NAME, NFTW_NEW_NAME): New functions.
356         (NFTW_NAME): Only define if !_LIBC, add versioned_symbol
357         and compat_symbol.
358         * io/ftw64.c (NFTW_OLD_NAME, NFTW_NEW_NAME): Define.
359         * io/Versions (libc): Export nftw@@GLIBC_2.3.3
360         and nftw64@@GLIBC_2.3.3.
361
362         * io/ftw.h (FTW_ACTIONRETVAL): New flag.
363         (FTW_CONTINUE, FTW_STOP, FTW_SKIP_SUBTREE, FTW_SKIP_SIBLINGS): New.
364         * io/ftw.c (ftw_dir): Add old_dir argument.
365         Clear result if it was FTW_SKIP_SIBLINGS after processing all
366         dir entries.  Change cwd back if old_dir != NULL.
367         (process_entry): Adjust caller.  Don't change cwd back here.
368         Change FTW_SKIP_SUBTREE result to 0.
369         (ftw_startup): Adjust ftw_dir caller.
370         Clear result if it was FTW_SKIP_SUBTREE or FTW_SKIP_SIBLINGS.
371         * io/ftwtest.c (skip_subtree, skip_siblings): New variables.
372         (options, main): Add --skip-subtree and --skip-siblings options.
373         (cb): Use return FTW_CONTINUE instead of return 0.
374         Handle --skip-subtree and --skip-siblings.
375         * io/ftwtest-sh: Add tests for FTW_ACTIONRETVAL.
376         * manual/filesys.texi: Document FTW_ACTIONRETVAL.
377
378 2003-11-04  Jakub Jelinek  <jakub@redhat.com>
379
380         * io/ftw.c (ftw_dir): Close dir if callback with FTW_D type returns
381         non-zero.
382         * io/Makefile (tests): Add bug-ftw4.
383         * io/bug-ftw4.c: New test.
384
385 2003-10-27  Daniel Jacobowitz  <drow@mvista.com>
386
387         * libio/libioP.h [_IO_USE_OLD_IO_FILE]
388         (struct _IO_FILE_complete_plus): New type.
389         * libio/oldiofopen.c (_IO_old_fopen): Use _IO_FILE_complete_plus.
390         * libio/oldiofdopen.c (_IO_old_fdopen): Likewise.
391         * libio/oldiopopen.c (struct _IO_proc_file, _IO_old_popen): Likewise.
392         Call _IO_old_init instead of _IO_init.
393
394 2003-11-03  Ulrich Drepper  <drepper@redhat.com>
395
396         * intl/locale.alias: nb_NO is now the correct name, not no_NO.
397
398         * locale/iso-639.def: Add Blin.
399         Patch by Daniel Yacob <locales@geez.org>.
400
401 2003-10-31  Steven Munroe  <sjmunroe@us.ibm.com>
402
403         * sysdeps/powerpc/powerpc32/strncmp.S: New File.
404         * sysdeps/powerpc/powerpc64/strncmp.S: New File.
405
406 2003-11-01  Randolph Chung  <tausq@debian.org>
407
408         * sysdeps/unix/sysv/linux/hppa/sysdep.h (LOAD_ARGS_0, LOAD_ARGS_1,
409         LOAD_ARGS_2, LOAD_ARGS_3, LOAD_ARGS_4, LOAD_ARGS_5, LOAD_ARGS_6):
410         Add missing parentheses.
411
412 2003-11-01  Roland McGrath  <roland@redhat.com>
413
414         * libio/bug-ftell.c (do_test): Add a cast.
415
416 2003-09-26  Daniel Jacobowitz  <drow@mvista.com>
417
418         * Makerules (shlib.lds): Make sure that ld doesn't try to link
419         anything while generating the linker script.
420
421 2003-10-31  Roland McGrath  <roland@redhat.com>
422
423         * locale/lc-ctype.c (_nl_postload_ctype): Update _nl_global_locale's
424         special members.
425
426 2003-10-29  Ulrich Drepper  <drepper@redhat.com>
427
428         * po/be.po: Update from translation team.
429
430 2003-10-27  Ulrich Drepper  <drepper@redhat.com>
431
432         * elf/rtld.c (map_doit): Pass __RTLD_OPENEXEC in last parameter to
433         _dl_map_object.
434
435         * elf/sprof.c (load_shobj): Use l_map_start not l_addr to locate
436         ELF header.
437
438         * inet/rcmd.c (__validuser2_sa): Remove unnecessary code to skip
439         rest of line.  We use getline which means this cannot happen.
440
441 2003-10-26  Ulrich Drepper  <drepper@redhat.com>
442
443         * sysdeps/unix/sysv/linux/internal_statvfs.c (__internal_statvfs):
444         Avoid infinite loops in case the mounts file is hosed.
445         * io/Makefile: Add rules to build and run tst-statvfs.
446         * io/tst-statvfs.c: New file.
447
448         * include/dlfcn.h (__RTLD_OPENEXEC): Define.
449         * elf/dl-load.c (_dl_map_object_from_fd): Don't allow loading
450         executables unless __RTLD_OPENEXEC flag is present.
451         * elf/rtld.c (dl_main): Pass __RTLD_OPENEXEC flag to
452         _dl_map_object when loading the executable.
453
454         * sysdeps/generic/glob.c (glob): Handle GLOB_BRACE and escaping
455         correctly.
456         * posix/globtest.sh: Add tests for GLOB_BRACE and escaping.
457
458         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Default
459         reverse lookup format for IPv6 addresses is using bitstring and
460         .ip6.arpa suffix.
461         * resolv/ns_name.c: Implement encoding and decoding bitstring in
462         hex format.
463
464 2003-10-23  Jakub Jelinek  <jakub@redhat.com>
465
466         * locale/programs/locale.c (show_info): Fix printing word values on
467         64-bit big-endian architectures.
468
469 2003-10-19  Bruno Haible  <bruno@clisp.org>
470
471         * intl/hash-string.c (hash_string): Zero-extend each char from the
472         string; the old code did a sign-extend on some platforms.
473
474 2003-10-22  Steven Munroe  <sjmunroe@us.ibm.com>
475
476         * sysdeps/powerpc/powerpc32/Makefile (+cflags, asm-CPPFLAGS): Don't
477         append options to these.
478         * sysdeps/powerpc/powerpc64/Makefile (+cflags, asm-CPPFLAGS): Likewise.
479
480 2003-10-18  Carlos O'Donell  <carlos@baldric.uwo.ca>
481
482         * sysdeps/unix/sysv/linux/hppa/sysdep.h: Fix merge error.
483
484 2003-10-15  Roland McGrath  <roland@redhat.com>
485
486         * elf/dl-iteratephdr.c [! SHARED] (dl_iterate_phdr): New function.
487         Fake an entry for the main executable and then call __dl_iterate_phdr.
488         * elf/Makefile (routines): Remove dl-iteratephdr-static.
489         (elide-routines.os): Likewise.
490         (CFLAGS-dl-iterate-phdr-static.c): Variable removed.
491         * sysdeps/generic/dl-iteratephdr-static.c: File removed.
492         * sysdeps/unix/sysv/linux/ia64/dl-iteratephdr-static.c: File removed.
493
494 2003-10-15  Jakub Jelinek  <jakub@redhat.com>
495
496         * elf/rtld.c (print_statistics): Print also number of relative
497         relocations.
498
499 2003-10-12  Carlos O'Donell  <carlos@baldric.uwo.ca>
500
501         * sysdeps/hppa/sysdep.h: Undef JUMPTARGET before use.
502         * sysdeps/unix/sysv/linux/hppa/sysdep.h: Define PSEUDO_ERRVAL,
503         SYSCALL_ERROR_LABEL under all conditions, INTERNAL_SYSCALL_DECL,
504         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO, INTERNAL_SYSCALL,
505         and undef JUMPTARGET before use.
506         [PIC]: Save pic register around syscall.
507         * sysdeps/unix/sysv/linux/hppa/sysdep.c (syscall):
508         Cleanup asm statment.
509
510 2003-10-13  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
511
512         * sysdeps/unix/sysv/linux/sh/sysdep.h (DO_CALL): Add SYSCALL_INST_PAD
513         after trapa instruction.
514
515 2003-10-09  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
516
517         * sysdeps/unix/sysv/linux/sh/syscalls.list: Add waitpid.
518
519 2003-10-10  Carlos O'Donell  <carlos@baldric.uwo.ca>
520
521         * sysdeps/hppa/Makefile (CFLAGS-malloc.c): Variable removed.
522
523 2003-10-09  Roland McGrath  <roland@redhat.com>
524
525         * elf/rtld.c (dl_main): Don't set l_name for sysinfo DSO, since there
526         is no file to name.
527
528 2003-10-08  Jakub Jelinek  <jakub@redhat.com>
529
530         * sysdeps/generic/dl-sysdep.c (_dl_important_hwcaps): Don't generate
531         two identical copies of strings.
532
533 2003-10-06  Ulrich Drepper  <drepper@redhat.com>
534
535         * posix/bug-regex11.c: Add some more tests which fail so far.
536         Disable them.  Patch by Paolo Bonzini <bonzini@gnu.org>.
537
538 2003-10-05  Paolo Bonzini  <bonzini@gnu.org>
539
540         * posix/bug-regex11.c: Add more backreference-related test cases.
541         (main): Show the failing regex in the error messages.
542         * posix/regexec.c (check_dst_limits_calc_pos):
543         Simplify some nested conditionals.  Replace if's with a switch
544         statement.
545         (check_dst_limits_calc_pos <TYPE_BKREF>): Rename parameter NODE to
546         FROM_NODE, it shadows a local variable; don't recurse if FROM_NODE
547         does not change in the recursive invocation, fixing an infinite loop
548         in the ()\1*\1* regex.
549         (sift_states_backward): Fix function comment.
550         * posix/regcomp.c (calc_epsdest): Add an assertion.
551
552 2003-10-06  Ulrich Drepper  <drepper@redhat.com>
553
554         * manual/examples/testopt.c: Fix warnings.  Better error message
555         for missing -c argument.
556         Patch mostly by Gitonga Marete <bgmarete@comcast.net>.
557
558         * timezone/asia: Update from tzdata2003d.
559         * timezone/australasia: Likewise.
560         * timezone/backward: Likewise.
561         * timezone/europe: Likewise.
562         * timezone/iso3166.tab: Likewise.
563         * timezone/northamerica: Likewise.
564         * timezone/southamerica: Likewise.
565         * timezone/zone.tab: Likewise.
566
567 2003-10-05  Jakub Jelinek  <jakub@redhat.com>
568
569         * sysdeps/ia64/backtrace.c: New file.
570         * sysdeps/x86_64/backtrace.c: New file.
571         * sysdeps/generic/unwind.h (_Unwind_Trace_Fn): New type.
572         (_Unwind_Backtrace): New prototype.
573
574 2003-10-03  Ulrich Drepper  <drepper@redhat.com>
575
576         * sysdeps/i386/elf/bsd-setjmp.S: Use linkonce section for PIC stub.
577         * sysdeps/i386/elf/setjmp.S: Likewise.
578
579 2003-10-02  Roland McGrath  <roland@redhat.com>
580
581         * argp/argp-help.c (__argp_short_program_name): Move inside [! _LIBC].
582         * argp/argp-namefrob.h
583         [_LIBC || HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME]
584         (__argp_short_program_name): Don't declare fn, define it as a macro.
585
586 2003-08-22  Simon Josefsson  <jas@extundo.com>
587
588         * argp/argp-fmtstream.h [!__attribute__]: Define to nothing.
589
590         * argp/argp-help.c: Don't include malloc.h, some platforms
591         complain and it doesn't appear to be used.
592         [!_LIBC && HAVE_STRERROR_R && !HAVE_DECL_STRERROR_R]: Declare
593         strerror_r.
594         [!_LIBC && !HAVE_STRERROR_R && !HAVE_DECL_STRERROR]: Declare
595         strerror.
596         (hol_entry_long_iterate): Change __attribute to __attribute__.
597         (_help, __argp_error, __argp_failure) [!_LIBC && (HAVE_FLOCKFILE
598         && HAVE_FUNLOCKFILE)]: Protect call to flockfile and funlockfile.
599         (__argp_basename) [!_LIBC]: New. Taken from LSH, by Niels Möller,
600         modified after comments from Ulrich Drepper.
601         (__argp_short_program_name): Ditto.
602         (__argp_state_help, __argp_error, __argp_failure): Use it.
603         (__argp_failure): Use strerror when necessary.
604
605         * argp/argp-namefrob.h (__flockfile, __funlockfile, __mempcpy)
606         (__strchrnul, __strerror_r, __strndup) [!_LIBC]: Remove __-prefix.
607         (clearerr_unlocked, feof_unlocked, ferror_unlocked)
608         (fflush_unlocked, fgets_unlocked, fputc_unlocked, fputs_unlocked)
609         (fread_unlocked, fwrite_unlocked, getc_unlocked, getchar_unlocked)
610         (putc_unlocked, putchar_unlocked) [!_LIBC && !HAVE_DECL_*]: Map to
611         non-unlocked functions.
612         [!_LIBC]: Add prototypes for __argp_basename and
613         __argp_short_program_name.
614
615         * argp/argp-parse.c (argp_default_parser): Only use
616         program_invocation{_short,}_name if declared.
617         (parser_init): Use __argp_short_program_name.
618
619         * argp/argp-xinl.c [_LIBC || HAVE_FEATURES_H]: Add CPP check for
620         '#include features.h'.
621
622         * argp/argp.h [!__attribute__]: Define to nothing.
623
624 2003-09-26  Paolo Bonzini  <bonzini@gnu.org>
625
626         * posix/regcomp.c (parse_sub_exp): Pass RE_CARET_ANCHORS_HERE
627         for the first token in a subexpression as well.
628
629 2003-10-02  Jakub Jelinek  <jakub@redhat.com>
630
631         * posix/regcomp.c (peek_token): Add 2003-09-20 changes for anchor
632         handling again.
633         (parse_reg_exp): Likewise.
634         * posix/regex.h (RE_CARET_ANCHORS_HERE): Define.
635
636         * posix/bug-regex11.c (tests): Add new tests.
637         * posix/bug-regex12.c (tests): Add new test.
638
639 2003-10-01  Thorsten Kukuk  <kukuk@suse.de>
640
641         * elf/dl-reloc.c (_dl_allocate_static_tls): Move definition of
642         variables only used if TLS_DTV_AT_TP is defined into the #if branch.
643
644 2003-10-02  Jeroen Dekkers  <jeroen@dekkers.cx>
645
646         * sysdeps/mach/hurd/malloc-machine.h: Copy the tsd code from
647         the old thread-m.h header too.
648
649 2003-10-02  Ulrich Drepper  <drepper@redhat.com>
650
651         * sysdeps/unix/sysv/linux/ia64/bits/sigstack.h (MINSIGSTKSZ): Go
652         back to 131027 since this is what the kernel enforces.
653
654         * inet/getnameinfo.c: Move domain out of nrl_domainname scope and
655         define it with libc_freeres_ptr.
656
657 2003-10-01  Roland McGrath  <roland@redhat.com>
658
659         * elf/rtld.c (dl_main): Add cast in last change.
660
661 2003-09-10  Chris Demetriou  <cgd@broadcom.com>
662
663         * sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h: Remove
664         "#if 0" surrounding most of contents.
665         (SYSCALL_ERROR_LABEL): Define.
666         (__SYSCALL_CLOBBERS): Add $10.
667         (internal_syscall7): Remove.
668         * sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h: Likewise.
669
670 2003-09-30  Ulrich Drepper  <drepper@redhat.com>
671
672         * elf/rtld.c (dl_main): Also set l_map_start.
673
674 2003-09-30  Daniel Jacobowitz  <drow@mvista.com>
675
676         * elf/rtld.c (dl_main): Set l_libname and l_name for the sysinfo DSO
677         to work around kernel problem.
678
679 2003-09-27  Wolfram Gloger  <wg@malloc.de>
680
681         * malloc/malloc.c: Include <malloc-machine.h> earlier instead of
682         "thread-m.h", so that default parameters can be overridden in a
683         system-specific malloc-machine.h.  Remove extra ; from extern "C"
684         closing brace.
685         * sysdeps/generic/malloc-machine.h: New file.
686         * sysdeps/mach/hurd/malloc-machine.h: New file.
687         * malloc/thread-m.h: Removed.
688         * malloc/Makefile: Remove CFLAGS-malloc.c parameter addition, it
689         is in sysdeps/generic/malloc-machine.h now.
690
691 2003-09-29  Ulrich Drepper  <drepper@redhat.com>
692
693         * elf/dl-reloc.c (_dl_allocate_static_tls): Move definition of
694         variables only used if TLS_TCB_AT_TP is defined into the #if
695         branch.
696
697         * sysdeps/unix/sysv/linux/sys/sysmacros.h: Add __extension__ as
698         well to cover using long long in C90.
699
700 2003-09-28  Alfred M. Szmidt  <ams@kemisten.nu>
701
702         * sysdeps/mach/hurd/bits/libc-lock.h (__libc_cleanup_pop):
703         Redefine and use __libc_cleanup_region_end instead.
704
705 2003-09-29  Thorsten Kukuk  <kukuk@suse.de>
706
707         * sysdeps/unix/sysv/linux/sys/sysmacros.h: Use __inline and
708         fix prototypes for picky C++ compilers.
709
710 2003-09-27  Ulrich Drepper  <drepper@redhat.com>
711
712         * sysdeps/unix/sysv/linux/ustat.c (ustat): Set errno to EINVAL if
713         the device ID is invalid and return -1.
714         * sysdeps/unix/sysv/linux/xmknod.c (__xmknod): Likewise.
715
716 2003-09-26  Andreas Schwab  <schwab@suse.de>
717
718         * sysdeps/unix/sysv/linux/ia64/getcontext.S: Pass fourth argument to
719         rt_sigprocmask system call.
720
721 2003-09-25  Roland McGrath  <roland@redhat.com>
722
723         * sysdeps/unix/sysv/linux/dl-execstack.c (_dl_make_stack_executable):
724         Don't check for zero __libc_stack_end, it should be initialized.
725         [_STACK_GROWS_DOWN] [PROT_GROWSDOWN]: Try using PROT_GROWSDOWN flag
726         and fall back if it fails with EINVAL.
727         [_STACK_GROWS_UP] [PROT_GROWSUP]: Likewise for PROT_GROWSUP.
728
729 2003-09-25  Jakub Jelinek  <jakub@redhat.com>
730
731         * sysdeps/unix/sysv/linux/x86_64/dl-procinfo.c: Include
732         sysdeps/i386/dl-procinfo.c instead of
733         sysdeps/unix/sysv/linux/i386/dl-procinfo.c.
734         * sysdeps/unix/sysv/linux/i386/dl-procinfo.h: Avoid using
735         #include_next.
736
737 2003-09-25  Ulrich Drepper  <drepper@redhat.com>
738
739         * posix/regcomp.c (peek_token): Remove recent changes for anchor
740         handling again.
741         (parse_reg_exp): Likewise.
742         * posix/regex.h: Remove RE_CARET_ANCHORS_HERE.
743
744         * csu/Makefile ($(objpfx)version-info.h): Fix sed script to handle
745         banners.
746
747         * nis/nis_table.c (nis_list): Always strdup string used with
748         ibreq->ibr_name.  Add several NULL pointer checks.
749
750         * nis/nss_nisplus/nisplus-alias.c: Add check for NULL return value
751         of nis_list.
752         * nis/nss_nisplus/nisplus-ethers.c: Likewise.
753         * nis/nss_nisplus/nisplus-grp.c: Likewise.
754         * nis/nss_nisplus/nisplus-hosts.c: Likewise.
755         * nis/nss_nisplus/nisplus-netgrp.c: Likewise.
756         * nis/nss_nisplus/nisplus-network.c: Likewise.
757         * nis/nss_nisplus/nisplus-proto.c: Likewise.
758         * nis/nss_nisplus/nisplus-publickey.c: Likewise.
759         * nis/nss_nisplus/nisplus-pwd.c: Likewise.
760         * nis/nss_nisplus/nisplus-rpc.c: Likewise.
761         * nis/nss_nisplus/nisplus-service.c: Likewise.
762         * nis/nss_nisplus/nisplus-spwd.c: Likewise.
763
764         * sysdeps/unix/sysv/linux/alpha/bits/mman.h: Define PROT_GROWSDOWN
765         and PROT_GROWSUP.
766         * sysdeps/unix/sysv/linux/arm/bits/mman.h: Likewise.
767         * sysdeps/unix/sysv/linux/cris/bits/mman.h: Likewise.
768         * sysdeps/unix/sysv/linux/hppa/bits/mman.h: Likewise.
769         * sysdeps/unix/sysv/linux/i386/bits/mman.h: Likewise.
770         * sysdeps/unix/sysv/linux/ia64/bits/mman.h: Likewise.
771         * sysdeps/unix/sysv/linux/m68k/bits/mman.h: Likewise.
772         * sysdeps/unix/sysv/linux/powerpc/bits/mman.h: Likewise.
773         * sysdeps/unix/sysv/linux/s390/bits/mman.h: Likewise.
774         * sysdeps/unix/sysv/linux/sh/bits/mman.h: Likewise.
775         * sysdeps/unix/sysv/linux/sparc/bits/mman.h: Likewise.
776         * sysdeps/unix/sysv/linux/x86_64/bits/mman.h: Likewise.
777
778 2003-09-25  Jakub Jelinek  <jakub@redhat.com>
779
780         * misc/syslog.c: Include locale.h.
781         (vsyslog): Add date always in C locale %h %e %T format.
782
783 2003-09-24  Paul Eggert  <eggert@twinsun.com>
784
785         * argp/argp-fmtstream.c (__argp_fmtstream_ensure): Check for
786         size_t overflow when reallocating storage.
787         * argp/argp-help.c (make_hol, hol_append): Likewise.
788         (SIZE_MAX): New macro.
789
790 2003-08-07  Alfred M. Szmidt  <ams@kemisten.nu>
791
792         * sysdeps/mach/hurd/bits/libc-lock.h
793         (__libc_cleanup_push, __libc_cleanup_pop): New macros.
794
795 2003-08-01  Alfred M. Szmidt  <ams@kemisten.nu>
796
797         * sysdeps/i386/dl-procinfo.h: New file, contents taken from ...
798         * sysdeps/unix/sysv/linux/i386/dl-procinfo.h: ... here.
799         #include_next dl-procinfo.h to get them.
800         (_DL_HWCAP_COUNT): Moved to sysdeps/i386/dl-procinfo.h.
801         (_DL_PLATFORMS_COUNT): Likewise.
802         (_DL_FIRST_PLATFORM): Likewise.
803         (_DL_HWCAP_PLATFORM): Likewise.
804         (HWCAP_I386_FPU, HWCAP_I386_VME, HWCAP_I386_DE, HWCAP_I386_PSE,
805         HWCAP_I386_TSC, HWCAP_I386_MSR, HWCAP_I386_PAE, HWCAP_I386_MCE,
806         HWCAP_I386_CX8, HWCAP_I386_APIC, HWCAP_I386_SEP, HWCAP_I386_MTRR,
807         HWCAP_I386_PGE, HWCAP_I386_MCA, HWCAP_I386_CMOV,
808         HWCAP_I386_FCMOV, HWCAP_I386_MMX, HWCAP_I386_OSFXSR,
809         HWCAP_I386_XMM, HWCAP_I386_XMM2, HWCAP_I386_AMD3D,
810         HWCAP_IMPORTANT): Likewise.
811         (_DL_PROCINFO_H_): Likewise.
812         (_dl_hwcap_string, _dl_platform_string, _dl_string_hwcap): Likewise.
813         (_dl_string_platform): Likewise.
814         * sysdeps/unix/sysv/linux/i386/dl-procinfo.c: Moved to ...
815         * sysdeps/i386/dl-procinfo.c: ... here, new file.
816
817 2003-09-24  Ulrich Drepper  <drepper@redhat.com>
818
819         * sysdeps/unix/sysv/linux/dl-execstack.c
820         (_dl_make_stack_executable): Remember that we changed the permission.
821
822         * sysdeps/ia64/dl-machine.h (RTLD_START): Remove setting of
823         __libc_stack_end.  Patch by David Mosberger.
824
825 2003-09-24  Jakub Jelinek  <jakub@redhat.com>
826
827         * elf/Versions (ld): Export __libc_stack_end@GLIBC_2.1 instead of
828         __libc_stack_end@GLIBC_PRIVATE.
829
830         * sysdeps/generic/dl-sysdep.c (DL_STACK_END): Define if not defined.
831         (_dl_sysdep_start): Set __libc_stack_end here.
832         * sysdeps/alpha/dl-machine.h (RTLD_START): Remove setting of
833         __libc_stack_end.
834         * sysdeps/arm/dl-machine.h (RTLD_START): Likewise.
835         * sysdeps/cris/dl-machine.h (RTLD_START): Likewise.
836         * sysdeps/i386/dl-machine.h (RTLD_START): Likewise.
837         * sysdeps/m68k/dl-machine.h (RTLD_START): Likewise.
838         * sysdeps/s390/s390-32/dl-machine.h (RTLD_START): Likewise.
839         * sysdeps/s390/s390-64/dl-machine.h (RTLD_START): Likewise.
840         * sysdeps/sh/dl-machine.h (RTLD_START): Likewise.
841         * sysdeps/x86_64/dl-machine.h (RTLD_START): Likewise.
842         * sysdeps/ia64/dl-machine.h (DL_STACK_END): Define.
843         * sysdeps/sparc/sparc32/dl-machine.h (DL_STACK_END): Define.
844         (RTLD_START): Remove setting of __libc_stack_end.
845         * sysdeps/sparc/sparc64/dl-machine.h (DL_STACK_END): Define.
846         (RTLD_START): Remove setting of __libc_stack_end.
847
848 2003-09-24  Ulrich Drepper  <drepper@redhat.com>
849
850         * sysdeps/unix/sysv/linux/sys/sysmacros.h: Add gnu_dev_ prefix to
851         function definitions.  Adjust macro expansions accordingly.
852         * sysdeps/unix/sysv/linux/Versions: Add gnu_dev_ prefix to major,
853         minor, makedev name.
854         * sysdeps/unix/sysv/linux/makedev.c: Likewise.
855
856 2003-09-24  Jakub Jelinek  <jakub@redhat.com>
857
858         * sysdeps/unix/sysv/linux/sys/sysmacros.h (major, minor, makedev):
859         Add __THROW.
860
861 2003-09-24  Jakub Jelinek  <jakub@redhat.com>
862
863         * nscd/Makefile (others): Add nscd before including ../Rules.
864
865 2003-09-24  Ulrich Drepper  <drepper@redhat.com>
866
867         * nscd/Makefile: Add rules to build nscd as a PIE.
868         * configure.in: Check for -fpie and -pie compiler options.
869         * config.make.in (have-fpie): Define.
870
871 2003-09-23  Ulrich Drepper  <drepper@redhat.com>
872
873         * sysdeps/unix/sysv/linux/sys/sysmacros.h: Adjust for larger
874         kernel dev_t size.
875         * sysdeps/unix/sysv/linux/alpha/sys/sysmacros.h: Removed.
876         * sysdeps/unix/sysv/linux/sparc/sys/sysmacros.h: Removed.
877         * sysdeps/unix/sysv/linux/makedev.c: New file.
878         * sysdeps/unix/sysv/linux/Dist: Add makedev.c.
879         * sysdeps/unix/sysv/linux/Makefile [subdir=misc]
880         (sysdep_routines): Add makedev.
881         * sysdeps/unix/sysv/linux/Versions [libc] (GLIBC_2.3.3): Add
882         major, minor, makedev.
883         * sysdeps/unix/sysv/linux/ustat.c (ustat): Adjust for 32-bit
884         kernel dev_t.
885         * sysdeps/unix/sysv/linux/alpha/ustat.c: Removed.
886         * sysdeps/unix/sysv/linux/xmknod.c (__xmknod): Likewise.
887         * sysdeps/unix/sysv/linux/alpha/xmknod.c: Removed.
888         Code by Alexander Viro <aviro@redhat.com>.
889
890 2003-09-23  Ulrich Drepper  <drepper@redhat.com>
891
892         * sysdeps/unix/sysv/linux/powerpc/powerpc32/Versions [libc]
893         (GLIBC_2.3.3): Add setcontext, getcontext, swapcontext, and
894         makecontext.
895         * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: Correct change
896         for include Altivec support for PPC32.  It was not compatible.
897         * sysdeps/unix/sysv/linux/powerpc/powerpc32/ucontext_i.h: Adjust
898         offsets for ucontext_t change.
899         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Adjust
900         for ucontext_t change.  Add compatibility code.
901         * sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S: Likewise.
902         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Likewise.
903         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Likewise.
904         Patch by Paul Mackerras <paulus@samba.org>.
905
906 2003-02-25  Randolph Chung  <tausq@debian.org>
907
908         * sysdeps/hppa/Makefile: Include compat code in build.
909         * sysdeps/hppa/libgcc-compat.c: New file.
910         * sysdeps/hppa/Dist: Add libgcc-compat.c.
911         * sysdeps/hppa/Versions [GLIBC_2.2]: Add __clz_tab.
912
913 2003-09-23  Roland McGrath  <roland@redhat.com>
914
915         * elf/rtld.c (dl_main): In rtld_is_main case, reinitialize
916         GL(dl_stack_flags) according to rtld's own PT_GNU_STACK.
917         Move GL(dl_make_stack_executable_hook) initialization up.
918         * elf/tst-execstack-prog.c: New file.
919         * elf/Makefile (tests-execstack-yes): Add it.
920         (LDFLAGS-tst-execstack-prog): New variable.
921
922 2003-09-23  Jakub Jelinek  <jakub@redhat.com>
923
924         * sysdeps/x86_64/dl-machine.h (RTLD_START): Set __libc_stack_end
925         before calling _dl_start, using %rip relative access.
926         Use %rip relative access to _dl_skip_args, _rtld_local._dl_loaded
927         and _dl_fini.
928
929 2003-09-23  Roland McGrath  <roland@redhat.com>
930
931         * sysdeps/i386/dl-machine.h (RTLD_START): Set __libc_stack_end before
932         calling _dl_start, using GOTOFF access.
933
934         * configure.in (libc_cv_z_execstack): New check.
935         * configure: Regenerated.
936         * config.make.in (have-z-execstack): New variable set by it.
937         * elf/tst-execstack.c: New file.
938         * elf/tst-execstack-mod.c: New file.
939         * elf/tst-execstack-needed.c: New file.
940         * elf/Makefile (tests-execstack-yes, modules-execstack-yes): New
941         variables.
942         (tests, modules-names): Conditionally include them.
943         (distribute): Add tst-execstack-mod.c here.
944         ($(objpfx)tst-execstack, $(objpfx)tst-execstack.out): New targets.
945         (LDFLAGS-tst-execstack, LDFLAGS-tst-execstack-mod): New variables.
946         ($(objpfx)tst-execstack-needed): New target.
947         (LDFLAGS-tst-execstack-needed): New variable.
948
949         * sysdeps/generic/ldsodefs.h (struct rtld_global): Add _dl_stack_flags
950         and _dl_make_stack_executable_hook.  Declare _dl_make_stack_executable.
951         * elf/rtld.c (_rtld_global): Add initializer for _dl_stack_flags.
952         (dl_main): Reset _dl_stack_flags according to PT_GNU_STACK phdr.
953         Initialize _dl_make_stack_executable_hook.
954         * elf/dl-support.c: Define those new variables.
955         (_dl_non_dynamic_init): Scan phdrs for PT_GNU_STACK.
956         (_dl_phdr): Fix type.
957         * elf/dl-load.c (_dl_map_object_from_fd): Grok PT_GNU_STACK phdr and
958         enable execute permission for the stack if necessary.
959         * sysdeps/generic/dl-execstack.c: New file.
960         * elf/Makefile (dl-routines): Add it.
961         * elf/Versions (ld: GLIBC_PRIVATE): Add _dl_make_stack_executable.
962         * sysdeps/unix/sysv/linux/dl-execstack.c: New file.
963
964 2003-09-23  Ulrich Drepper  <drepper@redhat.com>
965
966         * sysdeps/posix/sprofil.c (pc_to_index): Remove inline marker.
967
968 2003-09-20  Alfred M. Szmidt  <ams@kemisten.nu>
969
970         * sysdeps/generic/utmp_file.c (setutent_file, LOCK_FILE,
971         UNLOCK_FILE, setutent_file): Use fcntl_not_cancel instead of
972         __fcntl_nocancel.
973
974 2003-09-22  Ulrich Drepper  <drepper@redhat.com>
975
976         * malloc/malloc.c: Include <stdint.h>.
977
978 2003-09-20  Paolo Bonzini  <bonzini@gnu.org>
979
980         * posix/regcomp.c (build_word_op): Rename like...
981         (build_charclass_op): ...this.  Accept two extra parameters,
982         CLASS_NAME and EXTRA.  Add EXTRA to the result, not only _.
983         (peek_token): Accept \s and \S as OP_SPACE and OP_NOTSPACE.
984         (parse_expression): Replace build_word_op with
985         build_charclass_op, add new arguments, accept OP_SPACE
986         and OP_NOTSPACE.
987         * posix/regex_internal.h (re_token_type_t): Add OP_SPACE
988         and OP_NOTSPACE.
989
990         * posix/regcomp.c (peek_token): Don't look back for ( or |
991         to check whether to treat a caret as special.  It fails
992         for the (extended) regex \(^.
993         (parse, parse_reg_exp): Pass RE_CARET_ANCHORS_HERE to fetch_token.
994         * posix/regex.h: Define RE_CARET_ANCHORS_HERE.
995
996         * posix/regexec.c: Check out of bounds value before shifting.
997
998         * posix/regex_internal.h: Define __attribute for non-gcc.
999
1000 2003-09-22  Jakub Jelinek  <jakub@redhat.com>
1001
1002         * include/atomic.h (atomic_compare_and_exchange_val_rel,
1003         atomic_compare_and_exchange_bool_rel): Swap oldval/newval arguments
1004         to avoid confusion.
1005
1006         * sysdeps/unix/opendir.c: Include string.h.
1007
1008 2003-09-22  Ulrich Drepper  <drepper@redhat.com>
1009
1010         * timezone/zdump.c: Update from tzcode2003c.
1011         * timezone/zic.c: Likewise.
1012         * timezone/leapseconds: Update from tzdata2003c.
1013
1014 2003-09-19  Ulrich Drepper  <drepper@redhat.com>
1015
1016         * elf/Makefile ($(objpfx)librtld.os): Create link map also for
1017         final build to ease quality control.
1018
1019         * sysdeps/unix/sysv/linux/getcwd.c (__getcwd): If compiled for
1020         ld.so, don't include NULL buffer pointer handling.
1021
1022 2003-09-19  Jakub Jelinek  <jakub@redhat.com>
1023
1024         * dlfcn/dlopen.c (dlopen): Add static_link_warning.
1025
1026 2003-09-18  Jakub Jelinek  <jakub@redhat.com>
1027
1028         * libio/memstream.c (open_memstream): Use _IO_init instead of
1029         _IO_old_init.
1030
1031 2003-09-17  Ulrich Drepper  <drepper@redhat.com>
1032
1033         * sysdeps/generic/wordexp.c (eval_expr_val): Use strtol since we
1034         have to recognize octal and hexadecimal numbers as well.  Simplify
1035         function, signs are handled in strtol.
1036         * posix/wordexp-test.c: Add tests for octal and hexadecimal
1037         numbers in arithmetic expressions.
1038
1039 2003-09-17  Jakub Jelinek  <jakub@redhat.com>
1040
1041         * elf/Makefile (distribute): Add tst-alignmod.c.
1042         (tests): Add tst-align.
1043         (modules-names): Add tst-alignmod.
1044         (CFLAGS-tst-align.c, CFLAGS-tst-alignmod.c): Add
1045         $(stack-align-test-flags).
1046         ($(objpfx)tst-align): Depend on libdl.
1047         ($(objpfx)tst-align.out): Depend on tst-alignmod.so.
1048         * elf/tst-align.c: New file.
1049         * elf/tst-alignmod.c: New file.
1050         * misc/Makefile (CFLAGS-tst-tsearch.c): Add $(stack-align-test-flags).
1051         * misc/tst-tsearch.c: Include tst-stack-align.h.
1052         (stack_align_check): New array.
1053         (cmp_fn, walk_action): Use TEST_STACK_ALIGN ().
1054         (main): Report error if stack was not enough aligned
1055         in cmp_fn or walk_action.
1056         * stdlib/Makefile (CFLAGS-tst-qsort.c): Add $(stack-align-test-flags).
1057         * stdlib/tst-qsort.c: Include tst-stack-align.h.
1058         (align_check): New var.
1059         (compare): Use TEST_STACK_ALIGN () macro.
1060         (main): Report error if stack was not enough aligned in compare.
1061         * sysdeps/i386/i686/Makefile (stack-align-test-flags): Remove
1062         unneeded -mpreferred-stack-boundary=4.
1063         * sysdeps/x86_64/tst-stack-align.h: New file.
1064
1065         * libio/memstream.c (_IO_wmem_jumps): Remove unused structure.
1066         (_IO_wmem_sync, _IO_wmem_finish): Remove unused functions.
1067
1068 2003-09-17  Philip Blundell  <philb@gnu.org>
1069
1070         * sysdeps/arm/dl-machine.h (CALL_ROUTINE): Deleted.
1071         (BX): Define.
1072         (ELF_MACHINE_RUNTIME_TRAMPOLINE): Optimise a little.
1073
1074         * sysdeps/arm/sysdep.h (DO_RET): New.
1075
1076         * sysdeps/unix/sysv/linux/arm/vfork.S: Add #error if __NR_vfork
1077         required but not defined.  Improve test of error code.
1078
1079 2003-09-17  Jakub Jelinek  <jakub@redhat.com>
1080
1081         * sysdeps/i386/Makefile (stack-align-test-flags): Add
1082         -malign-double -mpreferred-stack-boundary=4.
1083
1084 2003-09-17  Ulrich Drepper  <drepper@redhat.com>
1085
1086         * sysdeps/posix/utimes.c (__utimes): Truncate instead of round.
1087         * sysdeps/unix/sysv/linux/utimes.c (__utimes): Likewise.
1088
1089 2003-09-15  Jakub Jelinek  <jakub@redhat.com>
1090
1091         * sysdeps/i386/Makefile (sysdep-CFLAGS): If not in math or csu
1092         subdir, add -mpreferred-stack-boundary=4, with few exceptions.
1093
1094 2003-09-17  Jakub Jelinek  <jakub@redhat.com>
1095
1096         * Makeconfig (stack-align-test-flags): Set.
1097         * stdlib/Makefile (CFLAGS-tst-bsearch.c): Add
1098         $(stack-align-test-flags).
1099         * stdlib/tst-bsearch.c: Include tst-stack-align.h.
1100         (align_check): New var.
1101         (comp): Use TEST_STACK_ALIGN macro.
1102         (do_test): Fail if align_check != 1.
1103         * sysdeps/generic/tst-stack-align.h: New file.
1104         * sysdeps/i386/i686/Makefile (stack-align-test-flags): Add -msse.
1105         * sysdeps/i386/i686/tst-stack-align.h: New file.
1106
1107 2003-09-17  Ulrich Drepper  <drepper@redhat.com>
1108
1109         * sysdeps/unix/sysv/linux/i386/clone.S: Make sure child gets a
1110         stack which is aligned (mod 16).
1111
1112 2003-09-17  Uwe Reimann  <Uwe_Reimann@gmx.net>
1113             Hans-Peter Nilsson  <hp@axis.com>
1114
1115         * sysdeps/cris/dl-machine.h (elf_machine_type_class): Classify
1116         R_CRIS_GLOB_DAT as ELF_RTYPE_CLASS_PLT.  Clarify comment.
1117
1118 2003-09-17  Jakub Jelinek  <jakub@redhat.com>
1119
1120         * dirent/scandir.c: Include bits/libc-lock.h.
1121         (struct scandir_cancel_struct): New type.
1122         (cancel_handler): New function.
1123         (SCANDIR): Add __libc_cleanup_{push,pop}, save state into
1124         scandir_cancel_struct.
1125
1126 2003-09-16  Ulrich Drepper  <drepper@redhat.com>
1127
1128         * sysdeps/unix/sysv/linux/Dist: Remove internal_statvfs.c.
1129         * sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines):
1130         Add internal_statvfs.
1131         * sysdeps/unix/sysv/linux/fstatvfs.c: Call __internal_statvfs
1132         instead of including "internal_statvfs.c".
1133         * sysdeps/unix/sysv/linux/statvfs.c: Likewise.
1134         * sysdeps/unix/sysv/linux/internal_statvfs.c: Make it a real function.
1135         Add code to avoid the stat calls on all the reported mount points
1136         when we can determine mismatch in advance.
1137         * sysdeps/unix/sysv/linux/linux_fsinfo.h: Add AUTOFS_SUPER_MAGIC and
1138         USBDEVFS_SUPER_MAGIC.
1139
1140 2003-09-16  Jakub Jelinek  <jakub@redhat.com>
1141
1142         * posix/Versions (sched_getaffinity, sched_setaffinity): Change
1143         from GLIBC_2.3.2 to GLIBC_2.3.3 symbol version.
1144
1145 2003-09-16  Bruno Haible  <bruno@clisp.org>
1146
1147         * intl/tst-gettext2.sh: Set GCONV_PATH and LOCPATH only after
1148         invoking msgfmt, not before.
1149
1150 2003-09-15  Jakub Jelinek  <jakub@redhat.com>
1151
1152         * argp/argp.h (argp_parse, __argp_parse): Remove __THROW.
1153         * argp/Makefile (CFLAGS-argp-help.c, CFLAGS-argp-parse.c): Add
1154         $(uses-callbacks).
1155         * dirent/Makefile (CFLAGS-scandir.c, CFLAGS-scandir64.c): Likewise.
1156         * elf/Makefile (CFLAGS-dl-iterate-phdr.c,
1157         CFLAGS-dl-iterate-phdr-static.c): Add $(uses-callbacks).
1158         * elf/dl-iteratephdr.c (cancel_handler): New function.
1159         (__dl_iterate_phdr): Add __libc_cleanup_{push,pop}.
1160         * elf/link.h (dl_iterate_phdr): Remove __THROW.
1161         * io/Makefile (CFLAGS-fts.c): Merge into one assignment.
1162         Add $(uses-callbacks).
1163         (CFLAGS-ftw.c, CFLAGS-ftw64.c): Add $(uses-callbacks).
1164         * misc/Makefile (CFLAGS-tsearch.c, CFLAGS-lsearch.c): Change
1165         $(exceptions) to $(uses-callbacks).
1166         * Makeconfig (uses-callbacks): Set to $(exceptions).
1167         * posix/Makefile (CFLAGS-glob.c, CFLAGS-glob64.c): Add
1168         $(uses-callbacks).
1169         * stdlib/Makefile (CFLAGS-bsearch.c, CFLAGS-msort.c, CFLAGS-qsort.c):
1170         Likewise.
1171
1172 2003-09-15  Andreas Schwab  <schwab@suse.de>
1173
1174         * sysdeps/m68k/setjmp.c: Add hidden_def.
1175
1176 2003-09-14  Ulrich Drepper  <drepper@redhat.com>
1177
1178         * libio/memstream.c (open_memstream): Don't allow wide char operations.
1179
1180         * dirent/dirent.h: Remove __THROW from scandir.
1181
1182 2003-09-14  Philip Blundell  <philb@gnu.org>
1183
1184         * sysdeps/unix/sysv/linux/arm/mmap.S: Use sys_mmap2 if it's known
1185         to be available.
1186
1187         * sysdeps/unix/sysv/linux/arm/mmap64.S: Optimise code a little.
1188
1189         * sysdeps/arm/memset.S: Rewrite.
1190
1191 2003-09-12  Jakub Jelinek  <jakub@redhat.com>
1192
1193         * sysdeps/unix/sysv/linux/s390/bits/typesizes.h: New.
1194         (__SSIZE_T_TYPE): Define to __SWORD_TYPE for gcc 2.95.x and
1195         __SLONGWORD_TYPE otherwise.
1196
1197 2003-09-14  Ulrich Drepper  <drepper@redhat.com>
1198
1199         * io/Makefile (CFLAGS-ftw.c): Add -fexceptions.
1200         (CFLAGS-ftw64.c): Likewise.
1201
1202 2003-09-13  Ulrich Drepper  <drepper@redhat.com>
1203
1204         * nscd/Makefile (CFLAGS-nscd_getpw_r.c): Add -fexceptions.
1205         (CFLAGS-nscd_getgr_r.c): Likewise.
1206         (CFLAGS-nscd_gethst_r.c): Likewise.
1207
1208 2003-09-12  Ulrich Drepper  <drepper@redhat.com>
1209
1210         * sysdeps/unix/sysv/linux/if_index.c: Use only non-cancelable
1211         interfaces.
1212
1213         * grp/Makefile (CFLAGS-getgrgid_r.c, CFLAGS-getgrnam_r.c,
1214         CFLAGS-fgetgrent.c, CFLAGS-fgetgrent_r.c, CFLAGS-putgrent.c,
1215         CFLAGS-initgroups.c, CFLAGS-getgrgid.c): Add -fexceptions.
1216         * inet/Makefile (CFLAGS-either_ntoh.c, CFLAGS-either_hton.c,
1217         CFLAGS-getnetgrent.c, CFLAGS-getnetgrent_r.c): Likewise.
1218         * io/Makefile (CFLAGS-posix_fallocate.c, CFLAGS-posix_fallocate64.c):
1219         Likewise.
1220         * misc/Makefile (CFLAGS-err.c): Likewise.
1221         * posix/Makefile (CFLAGS-getaddrinfo.c, CFLAGS-spawn.c,
1222         CFLAGS-spawnp.c, CFLAGS-spawni.c, CFLAGS-pause.c, CFLAGS-glob.c,
1223         CFLAGS-glob64.c): Likewise.
1224         * pwd/Makefile (CFLAGS-getpw.c): Likewise.
1225         * shadow/Makefile (CFLAGS-fgetspent.c, CFLAGS-fgetspent_r.c,
1226         CFLAGS-putspent.c, CFLAGS-getspnam.c, CFLAGS-getspnam_r.c): Likewise.
1227         * stdio-common/Makefile (CFLAGS-cuserid.c): Likewise.
1228         * sunrpc/Makefile (CFLAGS-openchild.c): Likewise.
1229
1230         * stdlib/Makefile (CFLAGS-mkstemp.c): Remove definition.
1231
1232         * libio/stdio.h: Remove __THROW from cuserid prototype.
1233
1234         * locale/loadarchive.c: Use only non-cancelable interfaces.
1235         * resolv/herror.c (herror): Likewise.
1236
1237         * malloc/hooks.c: Before using IO stream mark stream so it uses
1238         only non-cancelable interfaces.
1239         * malloc/malloc.c: Likewise.
1240         * posix/getopt.c: Likewise.
1241
1242
1243 2003-09-11  Jakub Jelinek  <jakub@redhat.com>
1244
1245         * Makerules (LDFLAGS-c.so): Remove -u __register_frame.
1246
1247 2003-09-12  Ulrich Drepper  <drepper@redhat.com>
1248
1249         * stdio-common/stdio_ext.h: Mark most functions with __THROW.
1250
1251         * misc/err.h: Remove __THROW from all prototypes.
1252
1253         * posix/getopt.h (__THROW): Define if not already defined.  Add
1254         __THROW to the getopt functions.
1255
1256 2003-09-11  Ulrich Drepper  <drepper@redhat.com>
1257
1258         * io/Makefile (CFLAGS-lockf.c): Add -fexceptions.
1259         (CFLAGS-fts.c): Likewise.
1260         * io/fcntl.h: Remove __THROW from lockf prototypes.
1261         * io/fts.h: Remove most __THROW.
1262
1263 2003-09-11  H.J. Lu  <hongjiu.lu@intel.com>
1264
1265         * elf/tls-macros.h (TLS_IE): Add a stop bit for ia64.
1266         (TLS_LD): Likewise.
1267         (TLS_GD): Likewise.
1268
1269 2003-09-11  Jakub Jelinek  <jakub@redhat.com>
1270
1271         * libio/fileops.c (_IO_new_file_overflow): Add INTUSE to
1272         _IO_free_backup_area call.
1273
1274 2003-09-10  Chris Demetriou  <cgd@broadcom.com>
1275
1276         * sysdeps/unix/sysv/linux/mips/pread64.c (__libc_pread64): Fix
1277         syscall invocation.
1278         * sysdeps/unix/sysv/linux/mips/pwrite64.c (__libc_pwrite64): Likewise.
1279         * sysdeps/unix/sysv/linux/mips/pread.c (__libc_pread): Likewise.
1280         Also, only assert off_t size is 4 for N32 and O32, and clean up
1281         white space.
1282         * sysdeps/unix/sysv/linux/mips/pwrite.c (__libc_pwrite): Likewise.
1283
1284 2003-09-10  Roland McGrath  <roland@redhat.com>
1285
1286         * sysdeps/unix/sysv/linux/tcgetattr.c (__tcgetattr):
1287         Don't use c_ispeed under [! _HAVE_STRUCT_TERMIOS_C_ISPEED].
1288         Don't use c_ospeed under [! _HAVE_STRUCT_TERMIOS_C_OSPEED].
1289         * sysdeps/unix/sysv/linux/tcsetattr.c (tcsetattr): Likewise.
1290         Reported by Daniel Jacobowitz  <drow@mvista.com>.
1291
1292 2003-09-10  Jakub Jelinek  <jakub@redhat.com>
1293
1294         * string/Makefile (strop-tests): Add memccpy.
1295         * string/test-memccpy.c: New test.
1296
1297 2003-09-09  Jakub Jelinek  <jakub@redhat.com>
1298
1299         * sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h (SIGCONTEXT): Add
1300         siginfo_t * argument before, change into struct ucontext *.
1301         (SIGCONTEXT_EXTRA_ARGS): Define to _si,.
1302         (GET_PC, GET_FRAME, GET_STACK): Adjust for ctx being a pointer
1303         instead of structure.
1304         * sysdeps/unix/sysv/linux/x86_64/register-dump.h (REGISTER_DUMP):
1305         Likewise.
1306
1307 2003-09-09  Ulrich Drepper  <drepper@redhat.com>
1308
1309         * string/stratcliff.c (main): Check memccpy.
1310
1311 2003-04-11  Jes Sorensen  <jes@wildopensource.com>
1312
1313         * sysdeps/ia64/memccpy.S: When recovering for src_aligned and the
1314         character is found during recovery, use correct register when
1315         determining the position of the found character.
1316
1317 2003-04-01  Jes Sorensen  <jes@wildopensource.com>
1318
1319         * sysdeps/ia64/memccpy.S: Use speculatively loads for readahead to
1320         avoid segfaults when reading from unmapped pages. For aligned
1321         reload and continue, for misaligned, roll back and use byte copy.
1322         Save ar.ec on entry and restore on exit.
1323
1324 2003-09-09  Chris Demetriou  <cgd@broadcom.com>
1325
1326         * sysdeps/unix/mips/sysdep.h (PSEUDO_END): Undef before defining.
1327
1328 2003-09-08  Chris Demetriou  <cgd@broadcom.com>
1329
1330         * sysdeps/mips/mips64/n32/Implies: Move ieee754/ldbl-128 to
1331         the top of the list.
1332         * sysdeps/mips/mips64/n64/Implies: Likewise.
1333
1334 2003-09-08  Roland McGrath  <roland@frob.com>
1335
1336         * sysdeps/unix/sysv/linux/speed.c
1337         (cfsetospeed): Only set c_ospeed under [_HAVE_STRUCT_TERMIOS_C_OSPEED].
1338         (cfsetispeed): Only set c_ispeed under [_HAVE_STRUCT_TERMIOS_C_ISPEED].
1339         * sysdeps/unix/sysv/linux/bits/termios.h
1340         (_HAVE_STRUCT_TERMIOS_C_ISPEED, _HAVE_STRUCT_TERMIOS_C_OSPEED): Define.
1341         * sysdeps/unix/sysv/linux/alpha/bits/termios.h: Likewise.
1342         * sysdeps/unix/sysv/linux/powerpc/bits/termios.h: Likewise.
1343
1344 2003-09-08  Ulrich Drepper  <drepper@redhat.com>
1345
1346         * sysdeps/unix/sysv/linux/x86_64/register-dump.h: Undo last change.
1347         * sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h: Likewise.
1348
1349 2003-09-08  Jakub Jelinek  <jakub@redhat.com>
1350
1351         * sysdeps/generic/bits/types.h (__quad_t): Make long int if 64-bit.
1352         (__u_quad_t): Make unsigned long int if 64-bit.
1353         (__SQUAD_TYPE): Make long int if 64-bit.
1354         (__UQUAD_TYPE): Make unsigned long int if 64-bit.
1355         * sysdeps/unix/sysv/linux/s390/bits/typesizes.h: Remove.
1356
1357 2003-09-08  Ulrich Drepper  <drepper@redhat.com>
1358
1359         * Makefile (tests): Run check-c++-types.sh if possible.
1360         * scripts/check-c++-types.h: New file.
1361         * scripts/data/c++-types-i386-linux-gnu.data: New file.
1362
1363 2003-09-08  Andreas Jaeger  <aj@suse.de>
1364
1365         * sysdeps/unix/sysv/linux/x86_64/register-dump.h (register_dump):
1366         Use struct sigcontext.
1367
1368         * sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h (SIGCONTEXT):
1369         Use struct sigcontext.
1370         (GET_PC): Adopt.
1371         (GET_FRAME): Likewise.
1372         (GET_STACK): Likewise.
1373
1374 2003-09-08  Wolfram Gloger  <wg@malloc.de>
1375
1376         * malloc/malloc.c (sYSMALLOc): Move foreign sbrk accounting into
1377         contiguous case.  Bug report from Prem Gopalan <prem@mazunetworks.com>.
1378         (mALLOPt): Avoid requirement of C99.
1379
1380 2003-09-08  Ulrich Drepper  <drepper@redhat.com>
1381
1382         * libio/bug-ftell.c: Include <sys/types.h>.
1383         (main): Mark cp as const.
1384
1385 2003-09-07  Jakub Jelinek  <jakub@redhat.com>
1386
1387         * sysdeps/unix/sysv/linux/syscalls.list (fcntl): Remove.
1388         * sysdeps/unix/sysv/linux/x86_64/fcntl.c: Remove.
1389
1390 2003-09-05  Roland McGrath  <roland@redhat.com>
1391
1392         * sysdeps/unix/sysv/linux/tcgetattr.c (__tcgetattr): Fill in c_ispeed
1393         and c_ospeed fields.
1394         * sysdeps/unix/sysv/linux/speed.c (cfsetospeed): Set c_ospeed field.
1395         (cfsetispeed): Set c_ispeed field.
1396         * sysdeps/unix/sysv/linux/tcsetattr.c (IBAUD0): Define unconditionally
1397         to match corresponding speed.c code.
1398
1399 2003-09-06  Ulrich Drepper  <drepper@redhat.com>
1400
1401         * libio/wfileops.c (_IO_wfile_underflow): Mark beginning of the
1402         narrow character buffer.
1403         * libio/Makefile: Add rules to build and run bug-ftell.
1404         * libio/bug-ftell.c: New file.
1405
1406         * stdio-common/vfprintf.c: Don't use the first grouping number twice.
1407
1408         * stdio-common/vfscanf.c (vfscanf): Fix recognition of characters
1409         matching the decimal point and possibly leading the thousands
1410         separator.  This caused the recognition of thousands separators to
1411         always fail.
1412
1413 2003-09-05  Ulrich Drepper  <drepper@redhat.com>
1414
1415         * libio/fileops.c (_IO_new_file_overflow): Handle switching to
1416         write mode from read in backup buffer.
1417         * libio/Makefile (tests): Add bug-ungetc2.
1418         * libio/bug-ungetc2.c: New file.
1419
1420 2003-09-05  Roland McGrath  <roland@redhat.com>
1421
1422         * nss/getXXbyYY.c (FUNCTION_NAME): Remove unused variable.
1423
1424 2003-09-04  Roland McGrath  <roland@frob.com>
1425
1426         * sysdeps/mach/hurd/mmap.c (__mmap): If io_map fails with MIG_BAD_ID,
1427         EOPNOTSUPP, or ENOSYS, change it to ENODEV.
1428
1429 2003-09-04  H.J. Lu  <hongjiu.lu@intel.com>
1430
1431         * sysdeps/unix/sysv/linux/ia64/bits/sigstack.h (MINSIGSTKSZ):
1432         Fix a typo.
1433
1434 2003-09-05  Andreas Jaeger  <aj@suse.de>
1435
1436         * sysdeps/i386/bits/string.h (__memrchr): Do addition in assembler
1437         to make it conforming C.
1438         * sysdeps/i386/i486/bits/string.h (__memrchr): Likewise.
1439
1440         * sysdeps/unix/sysv/linux/i386/fcntl.c (__fcntl_nocancel): Change
1441         prototype to use variable argument lists and get the possible one
1442         argument via va_arg.
1443         * sysdeps/unix/sysv/linux/fcntl.c (__fcntl_nocancel): Likewise.
1444         * sysdeps/unix/sysv/linux/x86_64/fcntl.c: New.
1445
1446 2003-09-04  Ulrich Drepper  <drepper@redhat.com>
1447
1448         * posix/unistd.h: Add back __THROW to sysconf, pathconf, fpathconf.
1449
1450         * sysdeps/unix/sysv/linux/pathconf.c (__statfs_filesize_max):
1451         Report correct value for vxfs.
1452         * sysdeps/unix/sysv/linux/linux_fsinfo.h: Define VXFS_SUPER_MAGIC.
1453
1454         * gmon/gmon.c: Use only not-cancelable syscalls to write profiling
1455         data.
1456
1457         * sysdeps/generic/utmp_file.c: Use not-cancelable syscalls all
1458         over the place.  It would be allowed to have these functions as
1459         cancellation points but the cleanup would be ugly and a lot of
1460         work.
1461
1462         * sysdeps/generic/not-cancel.h (fcntl_not_cancel): Define.
1463         * sysdeps/unix/sysv/linux/not-cancel.h (fcntl_not_cancel): Define.
1464
1465         * include/fcntl.h (__fcntl_nocancel): Declare.
1466         * sysdeps/unix/sysv/linux/fcntl.c: New file.
1467         * sysdeps/unix/sysv/linux/i386/fcntl.c (__libc_fcntl): Only enable
1468         cancellation if absolutely needed.
1469         (__fcntl_nocancel): Define.
1470
1471         * posix/unistd.h (gethostid): Remove __THROW.  Clarify comment.
1472         * sysdeps/unix/sysv/linux/Makefile (CFLAGS-gethostid.c): Add
1473         -fexceptions.
1474         * sysdeps/unix/sysv/linux/gethostid.c (gethostid): Use
1475         extend_alloca.
1476
1477         * resolv/res_init.c (__res_nclose): Use close_not_cancel_no_status
1478         instead of __close.
1479
1480         * nss/getXXbyYY.c (FUNCTION_NAME): Add a few casts.  Remove
1481         unnecessary errno handling.
1482
1483         * nss/getXXbyYY_r.c (INTERNAL): Use better variable name.
1484         Initialize it in all cases.  Change it to be a bit more like the
1485         code we had before.
1486
1487 2003-09-04  Jakub Jelinek  <jakub@redhat.com>
1488
1489         * libio/fileops.c (_IO_file_read, _IO_new_file_write): Add
1490         __builtin_expect.
1491         (_IO_file_open): Likewise.  Use close_not_cancel.
1492
1493 2003-09-04  Ulrich Drepper  <drepper@redhat.com>
1494
1495         * libio/libio.h: Define _IO_FLAGS2_NOTCANCEL.
1496         * libio/fileops.c [_LIBC]: Remove close macro.
1497         (_IO_file_open): If _IO_FLAGS2_NOTCANCEL is set, use open_not_cancel.
1498         (_IO_new_file_open): Recognize 'c' flag in mode string.
1499         (_IO_file_read): If _IO_FLAGS2_NOTCANCEL is set use read_not_cancel.
1500         (_IO_new_file_write): If _IO_FLAGS2_NOTCANCEL is set use
1501         write_not_cancel.
1502         * iconv/gconv_conf.c: Use fopen with 'c' mode flag.
1503         * inet/rcmd.c: Likewise.
1504         * inet/ruserpass.c: Likewise.
1505         * intl/localealias.c: Likewise.
1506         * malloc/mtrace.c: Likewise.
1507         * misc/getpass.c: Likewise.
1508         * misc/getttyent.c: Likewise.
1509         * misc/mntent_r.c: Likewise.
1510         * misc/getusershell.c: Likewise.
1511         * nss/nsswitch.c: Likewise.
1512         * resolv/res_hconf.c: Likewise.
1513         * resolv/res_init.c: Likewise.
1514         * sysdeps/unix/sysv/linux/getsysstats.c: Likewise.
1515         * time/getdate.c: Likewise.
1516         * time/tzfile.c: Likewise.
1517         * misc/fstab.h: Undo last change.
1518         * misc/mntent.h: Likewise.
1519         * misc/Makefile: Remove CFLAGS-mntent_r.c, CFLAGS-mntent.c, and
1520         CFLAGS-fstab.c definition.
1521
1522 2003-09-04  Jakub Jelinek  <jakub@redhat.com>
1523
1524         * sysdeps/generic/unwind.h (_Unwind_GetBSP): Add prototype.
1525
1526 2003-09-03  Ulrich Drepper  <drepper@redhat.com>
1527
1528         * nss/getXXbyYY_r.c (INTERNAL): Explicitly set errno and avoid
1529         returning ERANGE if this wasn't intended.
1530
1531 2003-09-03  Jakub Jelinek  <jakub@redhat.com>
1532
1533         * intl/loadmsgcat.c (open, close, read, mmap, munmap): Define as
1534         function-like macros.
1535
1536 2003-09-03  Ulrich Drepper  <drepper@redhat.com>
1537
1538         * grp/Makefile (CFLAGS-getgrent_r.c): Add -fexceptions.
1539         (CFLAGS-getgrent.c): Likewise.
1540         * pwd/Makefile (CFLAGS-getpwent_r.c): Add -fexceptions.
1541         (CFLAGS-getpwent.c): Likewise.
1542         * shadow/Makefile (CFLAGS-getspent_r.c): Add -fexceptions.
1543         (CFLAGS-getspent.c): Likewise.
1544
1545         * inet/Makefile: Add -fexceptions to CFLAGS for the various
1546         getXXent and getXXbyYY functions.
1547
1548         * locale/loadlocale.c: Use not-cancelable variants of open, close,
1549         and read.
1550
1551 2003-09-02  Jakub Jelinek  <jakub@redhat.com>
1552
1553         * sysdeps/unix/sysv/linux/alpha/Makefile (sysdep_routines): Remove
1554         rt_sigsuspend, rt_sigprocmask, rt_sigtimedwait, rt_sigqueueinfo and
1555         rt_sigpending.
1556         * sysdeps/unix/sysv/linux/alpha/sigaction.c (__syscall_rt_sigaction):
1557         New prototype.
1558         * sysdeps/unix/sysv/linux/arm/syscalls.list (__syscall_*): Remove
1559         unused __syscall_ stubs.
1560         * sysdeps/unix/sysv/linux/arm/Makefile (sysdep_routines): Remove
1561         rt_*.
1562         * sysdeps/unix/sysv/linux/cris/Makefile: Removed.
1563         * sysdeps/unix/sysv/linux/mips/mips64/syscalls.list
1564         (__syscall_recvfrom, __syscall_sendto): Remove unused aliases.
1565         * sysdeps/unix/sysv/linux/mips/syscalls.list (__syscall_*): Remove
1566         unused __syscall_ stubs.
1567         * sysdeps/unix/sysv/linux/mips/Makefile (sysdep_routines): Remove rt_*.
1568         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list
1569         (__syscall_*): Remove unused __syscall_ stubs.
1570         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list
1571         (__syscall_*): Likewise.
1572         * sysdeps/unix/sysv/linux/powerpc/Makefile (sysdep_routines): Remove
1573         rt_*.
1574         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (__syscall_*):
1575         Remove unused __syscall_ stubs.
1576         * sysdeps/unix/sysv/linux/sh/Makefile (sysdep_routines): Remove rt_*.
1577         * sysdeps/unix/sysv/linux/rt_sigaction.c: Removed.
1578         * sysdeps/unix/sysv/linux/rt_sigpending.c: Removed.
1579         * sysdeps/unix/sysv/linux/rt_sigprocmask.c: Removed.
1580         * sysdeps/unix/sysv/linux/rt_sigqueueinfo.c: Removed.
1581         * sysdeps/unix/sysv/linux/rt_sigreturn.c: Removed.
1582         * sysdeps/unix/sysv/linux/rt_sigsuspend.c: Removed.
1583         * sysdeps/unix/sysv/linux/rt_sigtimedwait.c: Removed.
1584         * sysdeps/unix/sysv/linux/s_pread64.c: Removed.
1585         * sysdeps/unix/sysv/linux/s_pwrite64.c: Removed.
1586         * sysdeps/unix/sysv/linux/alpha/gethostname.c: Remove unused
1587         __syscall_* prototypes.
1588         * sysdeps/unix/sysv/linux/alpha/ipc_priv.h: Likewise.
1589         * sysdeps/unix/sysv/linux/alpha/msgctl.c: Likewise.
1590         * sysdeps/unix/sysv/linux/alpha/semctl.c: Likewise.
1591         * sysdeps/unix/sysv/linux/alpha/shmctl.c: Likewise.
1592         * sysdeps/unix/sysv/linux/arm/sigaction.c: Likewise.
1593         * sysdeps/unix/sysv/linux/i386/chown.c: Likewise.
1594         * sysdeps/unix/sysv/linux/i386/fchown.c: Likewise.
1595         * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.
1596         * sysdeps/unix/sysv/linux/i386/fxstat.c: Likewise.
1597         * sysdeps/unix/sysv/linux/i386/getegid.c: Likewise.
1598         * sysdeps/unix/sysv/linux/i386/geteuid.c: Likewise.
1599         * sysdeps/unix/sysv/linux/i386/setuid.c: Likewise.
1600         * sysdeps/unix/sysv/linux/i386/getgid.c: Likewise.
1601         * sysdeps/unix/sysv/linux/i386/getgroups.c: Likewise.
1602         * sysdeps/unix/sysv/linux/i386/getmsg.c: Likewise.
1603         * sysdeps/unix/sysv/linux/i386/xstat.c: Likewise.
1604         * sysdeps/unix/sysv/linux/i386/getresgid.c: Likewise.
1605         * sysdeps/unix/sysv/linux/i386/getresuid.c: Likewise.
1606         * sysdeps/unix/sysv/linux/i386/getrlimit.c: Likewise.
1607         * sysdeps/unix/sysv/linux/i386/getuid.c: Likewise.
1608         * sysdeps/unix/sysv/linux/i386/lchown.c: Likewise.
1609         * sysdeps/unix/sysv/linux/i386/lockf64.c: Likewise.
1610         * sysdeps/unix/sysv/linux/i386/lxstat.c: Likewise.
1611         * sysdeps/unix/sysv/linux/i386/putmsg.c: Likewise.
1612         * sysdeps/unix/sysv/linux/i386/setfsgid.c: Likewise.
1613         * sysdeps/unix/sysv/linux/i386/setfsuid.c: Likewise.
1614         * sysdeps/unix/sysv/linux/i386/setgid.c: Likewise.
1615         * sysdeps/unix/sysv/linux/i386/setgroups.c: Likewise.
1616         * sysdeps/unix/sysv/linux/i386/setregid.c: Likewise.
1617         * sysdeps/unix/sysv/linux/i386/setresgid.c: Likewise.
1618         * sysdeps/unix/sysv/linux/i386/setresuid.c: Likewise.
1619         * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise.
1620         * sysdeps/unix/sysv/linux/i386/setrlimit.c: Likewise.
1621         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
1622         * sysdeps/unix/sysv/linux/ia64/fxstat.c: Likewise.
1623         * sysdeps/unix/sysv/linux/ia64/lxstat.c: Likewise.
1624         * sysdeps/unix/sysv/linux/ia64/sigaction.c: Likewise.
1625         * sysdeps/unix/sysv/linux/ia64/sigpending.c: Likewise.
1626         * sysdeps/unix/sysv/linux/ia64/sigprocmask.c: Likewise.
1627         * sysdeps/unix/sysv/linux/ia64/sigsuspend.c: Likewise.
1628         * sysdeps/unix/sysv/linux/ia64/xstat.c: Likewise.
1629         * sysdeps/unix/sysv/linux/m68k/chown.c: Likewise.
1630         * sysdeps/unix/sysv/linux/mips/ftruncate64.c: Likewise.
1631         * sysdeps/unix/sysv/linux/mips/pread.c: Likewise.
1632         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
1633         * sysdeps/unix/sysv/linux/mips/ptrace.c: Likewise.
1634         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
1635         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
1636         * sysdeps/unix/sysv/linux/mips/sigaction.c: Likewise.
1637         * sysdeps/unix/sysv/linux/mips/truncate64.c: Likewise.
1638         * sysdeps/unix/sysv/linux/mips/ustat.c: Likewise.
1639         * sysdeps/unix/sysv/linux/mips/xmknod.c: Likewise.
1640         * sysdeps/unix/sysv/linux/powerpc/chown.c: Likewise.
1641         * sysdeps/unix/sysv/linux/powerpc/ioctl.c: Likewise.
1642         * sysdeps/unix/sysv/linux/s390/s390-32/chown.c: Likewise.
1643         * sysdeps/unix/sysv/linux/s390/s390-32/lchown.c: Likewise.
1644         * sysdeps/unix/sysv/linux/s390/s390-64/xstat.c: Likewise.
1645         * sysdeps/unix/sysv/linux/s390/s390-64/fxstat.c: Likewise.
1646         * sysdeps/unix/sysv/linux/s390/s390-64/lxstat.c: Likewise.
1647         * sysdeps/unix/sysv/linux/s390/s390-64/sigaction.c: Likewise.
1648         * sysdeps/unix/sysv/linux/s390/s390-64/sigpending.c: Likewise.
1649         * sysdeps/unix/sysv/linux/s390/s390-64/sigprocmask.c: Likewise.
1650         * sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c: Likewise.
1651         * sysdeps/unix/sysv/linux/sparc/sparc64/sigpending.c: Likewise.
1652         * sysdeps/unix/sysv/linux/sparc/sparc64/sigprocmask.c: Likewise.
1653         * sysdeps/unix/sysv/linux/x86_64/sigaction.c: Likewise.
1654         * sysdeps/unix/sysv/linux/pwrite.c: Likewise.
1655         * sysdeps/unix/sysv/linux/execve.c: Likewise.
1656         * sysdeps/unix/sysv/linux/aio_sigqueue.c: Likewise.
1657         * sysdeps/unix/sysv/linux/reboot.c: Likewise.
1658         * sysdeps/unix/sysv/linux/_exit.c: Likewise.
1659         * sysdeps/unix/sysv/linux/ftruncate64.c: Likewise.
1660         * sysdeps/unix/sysv/linux/pwrite64.c: Likewise.
1661         * sysdeps/unix/sysv/linux/fxstat64.c: Likewise.
1662         * sysdeps/unix/sysv/linux/gai_sigqueue.c: Likewise.
1663         * sysdeps/unix/sysv/linux/readahead.c: Likewise.
1664         * sysdeps/unix/sysv/linux/getcwd.c: Likewise.
1665         * sysdeps/unix/sysv/linux/sigwait.c: Likewise.
1666         * sysdeps/unix/sysv/linux/getdents.c: Likewise.
1667         * sysdeps/unix/sysv/linux/readv.c: Likewise.
1668         * sysdeps/unix/sysv/linux/getpriority.c: Likewise.
1669         * sysdeps/unix/sysv/linux/sigaction.c: Likewise.
1670         * sysdeps/unix/sysv/linux/ipc_priv.h: Likewise.
1671         * sysdeps/unix/sysv/linux/llseek.c: Likewise.
1672         * sysdeps/unix/sysv/linux/sysctl.c: Likewise.
1673         * sysdeps/unix/sysv/linux/lxstat64.c: Likewise.
1674         * sysdeps/unix/sysv/linux/mmap64.c: Likewise.
1675         * sysdeps/unix/sysv/linux/ustat.c: Likewise.
1676         * sysdeps/unix/sysv/linux/poll.c: Likewise.
1677         * sysdeps/unix/sysv/linux/pread64.c: Likewise.
1678         * sysdeps/unix/sysv/linux/writev.c: Likewise.
1679         * sysdeps/unix/sysv/linux/pread.c: Likewise.
1680         * sysdeps/unix/sysv/linux/ptrace.c: Likewise.
1681         * sysdeps/unix/sysv/linux/sigpending.c: Likewise.
1682         * sysdeps/unix/sysv/linux/sigprocmask.c: Likewise.
1683         * sysdeps/unix/sysv/linux/sigqueue.c: Likewise.
1684         * sysdeps/unix/sysv/linux/sigsuspend.c: Likewise.
1685         * sysdeps/unix/sysv/linux/sigtimedwait.c: Likewise.
1686         * sysdeps/unix/sysv/linux/sigwaitinfo.c: Likewise.
1687         * sysdeps/unix/sysv/linux/truncate64.c: Likewise.
1688         * sysdeps/unix/sysv/linux/xmknod.c: Likewise.
1689         * sysdeps/unix/sysv/linux/xstat64.c: Likewise.
1690
1691 2003-09-02  Jakub Jelinek  <jakub@redhat.com>
1692
1693         * sysdeps/unix/sysv/linux/i386/sysdep.h (PSEUDO): Revert last change.
1694         * sysdeps/unix/sysv/linux/powerpc/syscalls.list: New file.
1695         * sysdeps/unix/sysv/linux/sparc/syscalls.list: New file.
1696
1697 2003-09-02  Ulrich Drepper  <drepper@redhat.com>
1698
1699         * stdio-common/Makefile (CFLAGS-vprintf.c): Add -fexceptions.
1700
1701         * intl/loadmsgcat.c: For _LIBC, call not cancelable versions of
1702         open, close, and read.
1703
1704         * sysdeps/unix/sysv/linux/i386/sysdep.h (PSEUDO): Also define
1705         *_nocancel name.
1706
1707         * sysdeps/unix/sysv/linux/i386/syscalls.list: Add waitpid.
1708
1709         * libio/Makefile (CFLAGS-oldtmpfile.c): Add -fexceptions.
1710         * sysdeps/generic/tmpfile.c (tmpfile): Use __unlink instead of remove.
1711         * libio/oldtmpfile.c (__old_tmpfile): Likewise.
1712
1713         * misc/Makefile (CFLAGS-getusershell.c): Add -fexceptions.
1714
1715         * io/Makefile (CFLAGS-statfs.c): Add -fexceptions.
1716         (CFLAGS-fstatfs.c): Likewise.
1717         (CFLAGS-statvfs.c): Likewise.
1718         (CFLAGS-fstatvfs.c): Likewise.
1719
1720 2003-09-01  Ulrich Drepper  <drepper@redhat.com>
1721
1722         * misc/Makefile (CFLAGS-getsysstats.c): Add -fexceptions.
1723         * posix/unistd.h: Remove __THROW from pathconf, fpathconf,
1724         sysconf.
1725         * posix/Makefile (CFLAGS-sysconf.c): Add -fexceptions.
1726         (CFLAGS-pathconf.c): Likewise.
1727         (CFLAGS-fpathconf.c): Likewise.
1728
1729         * misc/Makefile (CFLAGS-fstab.c): Add -fexceptions.
1730         * misc/fstab.h: Remove all __THROW.
1731         * misc/Makefile (CFLAGS-mntent.c): Add -fexceptions.
1732         (CFLAGS-mntent_r.c): Likewise.
1733         * misc/mntent.h: Remove most __THROW.
1734
1735         * misc/Makefile (CFLAGS-mkstemp.c): Add -fexceptions.
1736         (CFLAGS-mkstemp64.c): Likewise.
1737
1738         * sysdeps/generic/wordexp.c (parse_comm): Disable cancellation
1739         around call to exec_comm.
1740         * posix/wordexp.h: Remove __THROW from wordexp.
1741         * posix/Makefile (CFLAGS-wordexp.c): Add -fexceptions.
1742
1743         * sysdeps/unix/sysv/linux/getloadavg.c (getloadavg): Use
1744         not-cancelable functions.
1745
1746         * libio/Makefile (CFLAGS-oldiofopen.c): Add -fexceptions.
1747         (CFLAGS-iofopen.c): Likewise.
1748         (CFLAGS-iofopen64.c): Likewise.
1749
1750         * stdlib/fmtmsg.c (fmtmsg): Disable cancellation around output
1751         functions.
1752         * stdlib/Makefile (CFLAGS-fmtmsg.c): Add -fexceptions.
1753         * stdlib/fmtmsg.h: Remove __THROW from fmtmsg.
1754
1755         * stdlib/stdlib.h: Remove __THROW from posix_openpt and getpt.
1756         * login/Makefile (CFLAGS-getpt.c): Add -fexceptions.
1757
1758 2003-09-01  Thorsten Kukuk  <kukuk@suse.de>
1759
1760         * nis/nss_compat/compat-spwd.c (getspnam_plususer): Return
1761         NSS_STATUS_SUCCESS if entry was found.
1762         (getspent_next_file): Store user in blacklist after entry
1763         was found, use innetgr.
1764
1765 2003-09-01  Jakub Jelinek  <jakub@redhat.com>
1766
1767         * sysdeps/unix/sysv/linux/powerpc/powerpc32/posix_fadvise.c: New.
1768         * sysdeps/unix/sysv/linux/powerpc/powerpc32/posix_fadvise64.c: New.
1769
1770         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Fix tls offset
1771         computation for TCB_AT_TP.  Support l_firstbyte_offset != 0 for
1772         DTV_AT_TP, optimize.
1773
1774 2003-08-31  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
1775
1776         * sysdeps/unix/sysv/linux/sh/Versions: Add posix_fadvise64 and
1777         posix_fallocate64 at GLIBC_2.3.3.
1778         * sysdeps/unix/sysv/linux/sh/sysdep.h (PSEUDO_ERRVAL): Define.
1779         (PSEUDO_END_ERRVAL, ret_ERRVAL): Likewise.
1780
1781 2003-08-08  H.J. Lu  <hongjiu.lu@intel.com>
1782
1783         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Remove __syscall_
1784         functions.
1785
1786 2003-08-31  Ulrich Drepper  <drepper@redhat.com>
1787
1788         * libio/libioP.h (_IO_acquire_lock_fct): Define as inline function.
1789         Code by Richard Henderson.
1790
1791 2003-08-31  Philip Blundell  <philb@gnu.org>
1792
1793         * sysdeps/unix/sysv/linux/arm/Versions: Add posix_fadvise64 and
1794         posix_fallocate64 at GLIBC_2.3.3.
1795
1796 2003-08-31  Ulrich Drepper  <drepper@redhat.com>
1797
1798         * sysdeps/x86_64/bsd-_setjmp.S: Use HIDDEN_JUMPTARGET.
1799         * include/setjmp.h: Add libc_hidden_proto for __sigsetjmp.
1800
1801 2003-08-30  Jakub Jelinek  <jakub@redhat.com>
1802
1803         * sysdeps/generic/sysdep.h (cfi_window_save, CFI_WINDOW_SAVE): Define.
1804         * sysdeps/unix/sysv/linux/sparc/bits/setjmp.h: Allow file to be
1805         included multiple times.
1806         * sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__clone): Pass
1807         ptid, tls, ctid arguments to the kernel.
1808         * sysdeps/unix/sysv/linux/sparc/sparc32/getpagesize.c (__getpagesize):
1809         Use INTERNAL_SYSCALL instead of __syscall_getpagesize.
1810         * sysdeps/unix/sysv/linux/sparc/sparc32/sigaction.c
1811         (__libc_sigaction): Use INLINE_SYSCALL instead of
1812         __syscall_rt_sigaction.
1813         * sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list
1814         (__syscall_getgroups, __syscall_getpagesize, __syscall__llseek,
1815         __syscall_setfsgid, __syscall_setfsuid, __syscall_setgid,
1816         __syscall_setgroups, __syscall_setregid, __syscall_setreuid,
1817         __syscall_ipc, __syscall_setuid, __syscall_rt_sigaction,
1818         __syscall_rt_sigpending, __syscall_rt_sigprocmask,
1819         __syscall_rt_sigqueueinfo, __syscall_rt_sigsuspend,
1820         __syscall_rt_sigtimedwait): Remove unneeded syscall stubs.
1821         * sysdeps/unix/sysv/linux/sparc/sparc32/Makefile (sysdep_routines):
1822         Remove rt_sigsuspend, rt_sigprocmask, rt_sigtimedwait,
1823         rt_sigqueueinfo, rt_sigaction and rt_sigpending.
1824         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h
1825         (__CLONE_SYSCALL_STRING): Define.
1826         * sysdeps/unix/sysv/linux/sparc/sparc32/socket.S (__socket): Add
1827         CFI directives.
1828         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h
1829         (__CLONE_SYSCALL_STRING): Define.
1830         * sysdeps/unix/sysv/linux/sparc/sysdep.h (INLINE_CLONE_SYSCALL):
1831         Define.
1832         * sysdeps/unix/sysv/linux/sparc/system.c: New file.
1833
1834 2003-08-30  Ulrich Drepper  <drepper@redhat.com>
1835
1836         * sunrpc/rpc/clnt.h: Remove a few __THROW.
1837         * sunrpc/Makefile (CFLAGS-auth_unix.c): Add -fexceptions.
1838         (CFLAGS-key_call.c): Likewise.
1839         (CFLAGS-pmap_rmt.c): Likewise.
1840         (CFLAGS-clnt_perr.c): Likewise.
1841         * sunrpc/rpc/auth.h: Remove serveral __THROW.
1842
1843         * inet/Makefile (CFLAGS-gethstbyad_r.c): Add -fexceptions.
1844         (CFLAGS-gethstbynm_r.c): Likewise.
1845         (CFLAGS-gethstbynm2_r.c): Likewise.
1846         (CFLAGS-rcmd.c): Likewise.
1847         * resolv/Makefile (CFLAGS-res_hconf.c): Add -fexceptions.
1848
1849         * argp/Makefile (CFLAGS-argp-help.c): Add -fexceptions.
1850         (CFLAGS-argp-fmtstream.c): Likewise.
1851         * argp/argp.h: Remove a number of __THROW.
1852
1853         * misc/sys/syslog.h (vsyslog): Remove __THROW.
1854
1855         * misc/Makefile (CFLAGS-getpass.c): Add -fexceptions.
1856         * misc/getpass.c (getpass): Add cleanup handler to ensure the
1857         stream is closed even if the thread is canceled.
1858         (call_fclose): New function.
1859         * posix/unistd.h: Remove __THROW from getpass prototype.
1860
1861         * posix/Makefile (CFLAGS-getopt.c): Add -fexceptions.
1862
1863         * signal/signal.h (psignal): Remove __THROW.
1864         * stdio-common/Makefile (CFLAGS-psignal.c): Add -fexceptions.
1865
1866         * misc/Makefile (CFLAGS-error.c): Define.
1867         * misc/error.c (error): Disable cancellation handling around the
1868         actual output.  The message should in any case be printed.
1869         (error_at_line): Likewise.
1870
1871         * misc/error.h: Protect parameter names with leading __.
1872
1873 2003-08-28  Carlos O'Donell  <carlos@baldric.uwo.ca>
1874
1875         * sysdeps/unix/sysv/linux/hppa/syscalls.list: Add semtimedop.
1876
1877 2003-08-29  Jakub Jelinek  <jakub@redhat.com>
1878
1879         * libio/iofgetpos64.c (_IO_new_fgetpos64): Move lock release to the
1880         end.
1881
1882 2003-08-29  Ulrich Drepper  <drepper@redhat.com>
1883
1884         * libio/stdio.h: Remove a few more __THROW.
1885
1886 2003-08-29  Jakub Jelinek  <jakub@redhat.com>
1887
1888         * libio/Makefile: Compile fputc.c, fputwc.c, freopen64.c, freopen.c,
1889         fseek.c, fseeko64.c, fseeko.c, ftello64.c, ftello.c, fwide.c, getc.c,
1890         getchar.c, getwc.c, getwchar.c, iofclose.c, iofflush.c, iofgetpos64.c,
1891         iofgetpos.c, iofgets.c, iofgetws.c, iofputs.c, iofputws.c, iofread.c,
1892         iofsetpos64.c, iofsetpos.c, ioftell.c, iofwrite.c, iogetdelim.c,
1893         iogetline.c, iogets.c, iogetwline.c, ioputs.c, ioseekoff.c,
1894         ioseekpos.c, iosetbuffer.c, iosetvbuf.c, ioungetc.c, ioungetwc.c,
1895         oldfileops.c, oldiofclose.c, oldiofgetpos64.c, oldiofgetpos.c,
1896         oldiofsetpos64.c, oldiofsetpos.c, peekc.c, putc.c, putchar.c, putwc.c,
1897         putwchar.c and rewind.c with exceptions.
1898         * sysdeps/generic/bits/stdio-lock.h (_IO_acquire_lock,
1899         _IO_release_lock): Define.
1900         * libio/fileops.c (_IO_new_file_underflow): Use it.
1901         * libio/fputc.c (fputc): Likewise.
1902         * libio/fputwc.c (fputwc): Likewise.
1903         * libio/freopen64.c (freopen64):
1904         * libio/freopen.c (freopen): Likewise.
1905         * libio/fseek.c (fseek): Likewise.
1906         * libio/fseeko64.c (fseeko64): Likewise.
1907         * libio/fseeko.c (fseeko): Likewise.
1908         * libio/ftello64.c (ftello64): Likewise.
1909         * libio/ftello.c (ftello): Likewise.
1910         * libio/fwide.c (fwide): Likewise.
1911         * libio/getc.c (_IO_getc): Likewise.
1912         * libio/getchar.c (getchar): Likewise.
1913         * libio/getwc.c (_IO_getwc): Likewise.
1914         * libio/getwchar.c (getwchar): Likewise.
1915         * libio/iofclose.c (_IO_new_fclose):
1916         * libio/iofflush.c (_IO_fflush): Likewise.
1917         * libio/iofgetpos64.c (_IO_new_fgetpos64): Likewise.
1918         * libio/iofgetpos.c (_IO_new_fgetpos): Likewise.
1919         * libio/iofgets.c (_IO_fgets): Likewise.
1920         * libio/iofgetws.c (fgetws): Likewise.
1921         * libio/iofputs.c (_IO_fputs): Likewise.
1922         * libio/iofputws.c (fputws): Likewise.
1923         * libio/iofread.c (_IO_fread): Likewise.
1924         * libio/iofsetpos64.c (_IO_new_fsetpos64): Likewise.
1925         * libio/iofsetpos.c (_IO_new_fsetpos): Likewise.
1926         * libio/ioftell.c (_IO_ftell): Likewise.
1927         * libio/iofwrite.c (_IO_fwrite): Likewise.
1928         * libio/iogetdelim.c (_IO_getdelim): Likewise.
1929         * libio/iogets.c (_IO_gets): Likewise.
1930         * libio/ioputs.c (_IO_puts): Likewise.
1931         * libio/ioseekoff.c (_IO_seekoff): Likewise.
1932         * libio/ioseekpos.c (_IO_seekpos): Likewise.
1933         * libio/iosetbuffer.c (_IO_setbuffer): Likewise.
1934         * libio/iosetvbuf.c (_IO_setvbuf): Likewise.
1935         * libio/ioungetc.c (_IO_ungetc): Likewise.
1936         * libio/ioungetwc.c (ungetwc): Likewise.
1937         * libio/oldiofclose.c (_IO_old_fclose): Likewise.
1938         * libio/oldiofgetpos64.c (_IO_old_fgetpos64): Likewise.
1939         * libio/oldiofgetpos.c (_IO_old_fgetpos): Likewise.
1940         * libio/oldiofsetpos64.c (_IO_old_fsetpos64): Likewise.
1941         * libio/oldiofsetpos.c (_IO_old_fsetpos): Likewise.
1942         * libio/peekc.c (_IO_peekc_locked): Likewise.
1943         * libio/putc.c (_IO_putc): Likewise.
1944         * libio/putchar.c (putchar): Likewise.
1945         * libio/putwc.c (putwc): Likewise.
1946         * libio/putwchar.c (putwchar): Likewise.
1947         * libio/rewind.c (rewind): Likewise.
1948         * libio/wfileops.c (_IO_wfile_underflow): Likewise.
1949
1950 2003-08-29  Ulrich Drepper  <drepper@redhat.com>
1951
1952         * signal/signal.h: sighold, sigrelse, sigignore, sigset were
1953         available in XPG4.2.
1954
1955 2003-08-27  Phil Knirsch  <pknirsch@redhat.com>
1956             Jakub Jelinek  <jakub@redhat.com>
1957
1958         * sunrpc/svc.c (svc_getreqset): Fix fds_bits reading on 64-bit
1959         big endian arches.  Don't read beyond end of fds_bits array.
1960
1961 2003-04-27  Bruno Haible  <bruno@clisp.org>
1962
1963         * manual/message.texi (Advanced gettext functions): Add information
1964         about Korean, Portuguese, Latvian. Gaeilge is also known as Irish.
1965         Add section about Lithuanian, reported by Ricardas Cepas
1966         <rch@richard.eu.org>.
1967         Add information about Croatian.
1968         Ukrainian is like Russian, reported by Andy Rysin <arysin@yahoo.com>.
1969         Remove remark about continuation lines that is not true for PO files.
1970         Fix formula for Slovenian, reported by Roman Maurer
1971         <roman.maurer@amis.net>.
1972
1973 2003-08-27  Ulrich Drepper  <drepper@redhat.com>
1974
1975         * math/math_private.h: Declare __copysignf.
1976         * sysdeps/ieee754/flt-32/s_scalbnf.c: Use __copysignf instead of
1977         copysignf.
1978
1979         * sysdeps/x86_64/fpu/bits/mathinline.h: Define __signbitf,
1980         __signbit, and __signbitl inline functions.
1981
1982         * sysdeps/unix/sysv/linux/x86_64/__start_context.S: Use
1983         HIDDEN_JUMPTARGET instead of JUMPTARGET to call exit().
1984
1985         * sysdeps/x86_64/bsd-_setjmp.S [PIC]: Jump to __GI___sigsetjmp.
1986         * sysdeps/x86_64/setjmp.S: Add libc_hidden_def for __sigsetjmp.
1987
1988 2003-08-27  Jakub Jelinek  <jakub@redhat.com>
1989
1990         * inet/inet_mkadr.c (inet_makeaddr): Optimize.
1991
1992 2003-08-27  Ulrich Drepper  <drepper@redhat.com>
1993
1994         * include/stdio.h: Add declarations for __builtin_fwrite and
1995         __builtin_fwrite_unlocked.
1996
1997 2003-08-27  Jakub Jelinek  <jakub@redhat.com>
1998
1999         * sysdeps/unix/opendir.c (__opendir): Make sure even struct dirent64
2000         fits into allocation.  Add padding on 32-bit arches so that
2001         dirp->data is enough aligned for struct dirent64.
2002         Avoid clearing of the buffer, just clear DIR structure.
2003
2004 2003-08-26  Ulrich Drepper  <drepper@redhat.com>
2005
2006         * nss/nsswitch.c: Add libc_hidden_def for __nss_lookup_function.
2007         * nss/nsswitch.h: Add libc_hidden_proto for __nss_lookup_function.
2008
2009 2003-08-26  Steven Munroe  <sjmunroe@us.ibm.com>
2010
2011         * sysdeps/powerpc/powerpc64/elf/Makefile: New file.
2012
2013 2003-08-26  Jakub Jelinek  <jakub@redhat.com>
2014
2015         * login/programs/utmpdump.c (print_entry): Cast tv_usec to long
2016         to match format string.
2017         * sysdeps/unix/sysv/linux/sparc/sparc32/semctl.c (union semun): Add
2018         __old_buf.
2019         (__new_semctl): Shut up warning.
2020         * sysdeps/unix/sysv/linux/sparc/sparc32/dl-procinfo.h
2021         (_dl_string_hwcap): Add __attribute__ ((always_inline)).
2022
2023 2003-08-26  Jakub Jelinek  <jakub@redhat.com>
2024
2025         * elf/ldconfig.c (search_dir): When checking for GNU-style .so
2026         link file use the real file name, not the resolved name we got by
2027         following the symlinks.
2028
2029 2003-08-25  Ulrich Drepper  <drepper@redhat.com>
2030
2031         * libio/oldfileops.c (_IO_old_file_init): Initialize _mode field
2032         if the object size is large enough.
2033
2034 2003-08-25  Jakub Jelinek  <jakub@redhat.com>
2035
2036         * elf/ldconfig.c (search_dir): Treat symlink as regular file
2037         if it won't point to itself unless it is .so symlink for the linker.
2038
2039 2003-08-25  Ulrich Drepper  <drepper@redhat.com>
2040
2041         * libio/libio.h (_IO_fwide): In the mode==0 optimization, don't
2042         use _mode if _IO_fwide_maybe_incompatible.
2043         * libio/iofwide.c (_IO_fwide): Move the test for mode == 0 after
2044         the compatibility test.
2045
2046 2003-08-25  Jakub Jelinek  <jakub@redhat.com>
2047
2048         * elf/cache.c (save_cache): Don't write beyond end of file_entries
2049         buffer.
2050         Duplicate last old cache entry if the count would be odd.
2051
2052 2003-08-25  Andreas Jaeger  <aj@suse.de>
2053
2054         * sysdeps/unix/sysv/linux/posix_fadvise64.c: Cast arguments of
2055         __LONG_LONG_PAIR to long.
2056
2057 2003-08-25  Philip Blundell  <philb@gnu.org>
2058
2059         * sysdeps/unix/sysv/linux/arm/sysdep.h (PSEUDO_ERRVAL): Define.
2060         (PSEUDO_END_ERRVAL, ret_ERRVAL): Likewise.
2061
2062 2003-08-18  Alfred M. Szmidt  <ams@kemisten.nu>
2063
2064         * sysdeps/generic/bits/libc-lock.h (__libc_cleanup_pop): Redefine
2065         and use __libc_cleanup_region_end instead.
2066
2067 2003-08-25  Ulrich Drepper  <drepper@redhat.com>
2068
2069         * elf/ldconfig.c (search_dir): Revert patch of 2003-7-21.
2070
2071 2003-08-22  Ulrich Drepper  <drepper@redhat.com>
2072
2073         * io/fcntl.h (posix_fallocate): Change type of third parameter to
2074         off_t.
2075         (posix_fallocate64): Change type of third parameter to off64_t.
2076         * sysdeps/generic/posix_fallocate.c: Adjust for type change.
2077         * sysdeps/posix/posix_fallocate.c: Likewise.
2078         * sysdeps/generic/posix_fallocate64.c: Likewise.
2079         * sysdeps/posix/posix_fallocate64.c: Likewise.  Add compatibility
2080         code for 32-bit platforms.
2081         * sysdeps/unix/sysv/linux/i386/Versions: Add new version for
2082         posix_fallocate64.
2083         * sysdeps/unix/sysv/linux/powerpc/powerpc32/Versions: Likewise.
2084         * sysdeps/unix/sysv/linux/s390/s390-32/Versions: Likewise.
2085         * sysdeps/unix/sysv/linux/sparc/sparc32/Versions: Likewise.
2086
2087 2003-08-19  Ulrich Drepper  <drepper@redhat.com>
2088
2089         * string/bits/string2.h (__STRING2_COPY_TYPE): Add attribute to
2090         the type, not to name.
2091
2092         * stdio-common/test-vfprintf.c (main): Don't write temporary file
2093         into source directory.
2094
2095         * malloc/malloc.c (_int_free): Add cheap test for some invalid
2096         block sizes.
2097
2098         * sysdeps/unix/sysv/linux/i386/posix_fadvise64.S: Fix typo in
2099         syscall name.
2100
2101 2003-08-18  Ulrich Drepper  <drepper@redhat.com>
2102
2103         * sysdeps/unix/sysv/linux/shm_open.c (shm_open): Fold EISDIR error
2104         into EINVAL.
2105
2106 2003-08-18  H.J. Lu  <hongjiu.lu@intel.com>
2107
2108         * sysdeps/ia64/dl-machine.h (elf_machine_rela): Use _dl_reloc_bad_type.
2109         (elf_machine_lazy_rel): Likewise.
2110
2111 2003-08-18  Art Haas  <ahaas@airmail.net>
2112
2113         * malloc/malloc.h: Remove unneeded ';' where closing the C++
2114         extern block.
2115
2116 2003-08-18  Ulrich Drepper  <drepper@redhat.com>
2117
2118         * sysdeps/ia64/dl-fptr.h (ELF_MACHINE_LOAD_ADDRESS): Support
2119         loading big binaries where @gprel(sym) cannot be handled in 'add'
2120         but instead has to be used with 'movl'.
2121
2122 2003-08-17  Juergen Kreileder <jk@blackdown.de>
2123             Andreas Jaeger  <aj@suse.de>
2124
2125         * sysdeps/x86_64/bits/byteswap.h: New file.
2126
2127 2003-08-17  Andreas Jaeger  <aj@suse.de>
2128
2129         * sysdeps/unix/sysv/linux/i386/posix_fadvise64.S: Fix typo.
2130
2131 2003-08-16  Jakub Jelinek  <jakub@redhat.com>
2132
2133         * sysdeps/powerpc/powerpc32/sysdep.h (PSEUDO_ERRVAL,
2134         PSEUDO_RET_ERRVAL, ret_ERRVAL, PSEUDO_END_ERRVAL): Define.
2135         * sysdeps/powerpc/powerpc64/sysdep.h (PSEUDO_ERRVAL,
2136         PSEUDO_RET_ERRVAL, ret_ERRVAL, PSEUDO_END_ERRVAL): Define.
2137         * sysdeps/unix/alpha/sysdep.h (PSEUDO_ERRVAL,
2138         ret_ERRVAL, PSEUDO_END_ERRVAL): Define.
2139         * sysdeps/unix/mips/sysdep.h (PSEUDO_ERRVAL,
2140         ret_ERRVAL, PSEUDO_END_ERRVAL): Define.
2141         * sysdeps/unix/sparc/sysdep.h (PSEUDO_ERRVAL,
2142         ret_ERRVAL): Define.
2143         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (PSEUDO_ERRVAL,
2144         PSEUDO_END_ERRVAL, ret_ERRVAL): Define.
2145         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (PSEUDO_ERRVAL,
2146         PSEUDO_END_ERRVAL, ret_ERRVAL): Define.
2147         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h (PSEUDO_ERRVAL):
2148         Define.
2149         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h (PSEUDO_ERRVAL,
2150         PSEUDO_END_ERRVAL, ret_ERRVAL): Define.
2151         * sysdeps/unix/sysdep.h (PSEUDO_END_ERRVAL): Define.
2152
2153         * sysdeps/unix/sysv/linux/syscalls.list (posix_fadvise64,
2154         posix_fadvise64_64): Remove.
2155         * sysdeps/unix/sysv/linux/alpha/syscalls.list (posix_fadvise64): Add
2156         V flag.
2157         * sysdeps/unix/sysv/linux/ia64/syscalls.list (posix_fadvise64):
2158         Likewise.
2159         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list
2160         (posix_fadvise64): Likewise.
2161         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list
2162         (posix_fadvise64): Likewise.
2163         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list
2164         (posix_fadvise64): Likewise.
2165         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (posix_fadvise64):
2166         Likewise.
2167         * sysdeps/unix/sysv/linux/i386/posix_fadvise64_64.S: Moved to...
2168         * sysdeps/unix/sysv/linux/i386/posix_fadvise64.S: ...here.
2169         (__posix_fadvise64_l64): Fix a typo in fadvise64 syscall invocation.
2170         (__posix_fadvise64_l32): New function.
2171         * sysdeps/unix/sysv/linux/i386/Makefile: Revert last change.
2172         * sysdeps/unix/sysv/linux/powerpc/powerpc32/Versions (libc): Export
2173         posix_fadvise64@@GLIBC_2.3.3.
2174         * sysdeps/unix/sysv/linux/s390/s390-32/Versions (libc): Likewise.
2175         * sysdeps/unix/sysv/linux/sparc/sparc32/Versions (libc): Likewise.
2176         * sysdeps/unix/sysv/linux/posix_fadvise.c (posix_fadvise): Return
2177         error value.
2178         * sysdeps/unix/sysv/linux/posix_fadvise64.c: New file.
2179
2180         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h
2181         (SYSCALL_ERROR_HANDLER): Use TLS errno/__libc_errno if USE___THREAD.
2182
2183 2003-08-15  Jakub Jelinek  <jakub@redhat.com>
2184
2185         * sysdeps/sparc/sparc32/dl-machine.h (WEAKADDR): Remove.
2186         (elf_machine_matches_host): Remove weak extern stuff.
2187         Use GL(dl_hwcap) unconditionally and GL(dl_hwcap_mask) if SHARED.
2188         (elf_machine_runtime_setup, sparc_fixup_plt): Remove weak extern
2189         stuff.  Use GL(dl_hwcap) unconditionally.
2190
2191 2003-08-16  Alan Modra  <amodra@bigpond.net.au>
2192
2193         * sysdeps/powerpc/powerpc64/elf/start.S: Add a nop after
2194         __libc_start_main branch.
2195
2196 2003-08-16  Jakub Jelinek <jakub@redhat.com>,
2197             Andreas Jaeger  <aj@suse.de>
2198
2199         * sysdeps/generic/posix_fadvise.c (posix_fadvise): Return ENOSYS
2200         instead of setting errno.
2201         * sysdeps/generic/posix_fadvise64.c (posix_fadvise64): Likewise.
2202
2203 2003-08-16  Andreas Jaeger  <aj@suse.de>
2204
2205         * sysdeps/generic/posix_fadvise.c (posix_fadvise): Adjust prototype.
2206         * sysdeps/generic/posix_fadvise64.c (posix_fadvise64): Likewise.
2207
2208 2003-08-15  Ulrich Drepper  <drepper@redhat.com>
2209
2210         * io/fcntl.h (posix_fadvise64): Change type of third parameter to
2211         off_t.
2212         * sysdeps/unix/sysv/linux/posix_fadvise.c: Adjust definition.
2213         * sysdeps/unix/make-syscalls.sh: Recognize V prefix to the parameter
2214         description indicating the error value is returned, not -1.
2215         * sysdeps/unix/sysv/linux/kernel-features.h: Add definition of
2216         __ASSUME_FADVISE64_64_SYSCALL.
2217         * sysdeps/unix/sysv/linux/syscalls.list: Don't define madvise and
2218         posix_madvise in one file.  Have posix_madvise defined with error
2219         value returned.
2220         Define posix_fadvise64_64 entry.  Add version info to posix_fadvise64
2221         entry.
2222         * sysdeps/unix/sysv/linux/i386/posix_fadvise.S: New file.
2223         * sysdeps/unix/sysv/linux/i386/sysdep.h: Define PSEUDO_ERRVAL,
2224         PSEUDO_END_ERRVAL, and ret_ERRVAL.
2225         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Likewise.
2226         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
2227         * sysdeps/unix/sysv/linux/i386/Versions [GLIBC_2.3.3]: Add
2228         posix_fadvise64.
2229
2230         * posix/Makefile (routines): Add posix_madvise.
2231         * sysdeps/generic/madvise.c: Don't define posix_madvise.
2232         * sysdeps/generic/posix_madvise.c: New file.
2233         * sysdeps/unix/sysv/aix/posix_madvise.c: New file.
2234         * sysdeps/unix/sysv/linux/i386/Makefile [subdir=io] (subdir_routines):
2235         Add posix_fadvise64_64.
2236
2237 2003-08-15  Jakub Jelinek  <jakub@redhat.com>
2238
2239         * assert/assert.h (assert_perror): Use __builtin_expect for gcc >=
2240         3.0, not for !gcc or gcc < 3.0.
2241
2242 2003-08-11  Carlos O'Donell  <carlos@baldric.uwo.ca>
2243
2244         * dlfcn/default.c (main): Cast dlsym loaded value to same type as main.
2245         Address passed to test_in_mod1 and test_in_mod2 without casting.
2246         * dlfcn/defaultmod1.c: Change prototype of test_in_mod1.
2247         (test_in_mod1): Cast dlsym loaded value to same type as mainp.
2248         * dlfcn/defaultmod2.c: Change prototype of test_in_mod2.
2249         (test_in_mod2): Cast dlsym loaded value to same type as mainp.
2250
2251 2003-08-15  Jakub Jelinek  <jakub@redhat.com>
2252
2253         * sysdeps/sparc/sparc32/elf/configure.in (libc_cv_sparc32_tls):
2254         Change quotes before using [].
2255
2256         * sysdeps/unix/sysv/linux/sparc/sys/user.h: New file.
2257
2258         * sysdeps/sparc/sparc32/bits/atomic.h (__sparc32_atomic_lock):
2259         Renamed to...
2260         (__sparc32_atomic_locks): ...this.  Change into 64-byte array.
2261         (__sparc32_atomic_do_lock, __sparc32_atomic_do_unlock): Add addr
2262         argument.  Select one of 64 locks from address bits.
2263         (atomic_compare_and_exchange_val_acq,
2264         atomic_compare_and_exchange_bool_acq): Pass memory address to
2265         __sparc32_atomic_do_{,un}lock.
2266
2267 2003-08-14  Ulrich Drepper  <drepper@redhat.com>
2268
2269         * assert/assert.h (assert): Use !! in front of expression to allow
2270         use of pointers.
2271
2272         * iconvdata/cp932.c: Fixed checking of a few border of code areas.
2273         Changed conversion of JIS X 0201 from using a table to calculating.
2274         * iconvdata/euc-jp-ms.c: Fixed conversion table and rewrote
2275         conversion routine.  Changed CHARSET_NAME definition from EUCJP-MS to
2276         EUC-JP-MS.
2277         * iconvdata/tst-tables.sh: Add CP932 and EUC-JP-MS.
2278         * iconvdata/CP932.irreversible: New file.
2279         * iconvdata/EUC-JP-MS.irreversible: New file.
2280         Patch by MORIYAMA Masayuki <msyk@mtg.biglobe.ne.jp>.
2281
2282 2003-08-13  Ulrich Drepper  <drepper@redhat.com>
2283
2284         * sysdeps/unix/sysv/linux/i386/syscalls.list: Add time syscall.
2285
2286         * elf/Makefile: Use LC_ALL=C in a few cases where we call external
2287         text processing tools.
2288
2289         * sysdeps/pthread/aio_misc.h (struct waitlist): Don't add caller_pid
2290         element unless BROKEN_THREAD_SIGNALS is defined.
2291         (struct requestlist): Likewise.
2292         * sysdeps/pthread/aio_misc.c (__aio_enqueue_request): Don't fill in
2293         caller_pid of new request unless BROKEN_THREAD_SIGNALS is defined.
2294         * sysdeps/pthread/aio_suspend.c (aio_suspend): Likewise.
2295         * sysdeps/pthread/aio_notify.c (__aio_notify_only): Remove caller_pid
2296         parameter unless BROKEN_THREAD_SIGNALS is defined.  Adjust callers.
2297         Pass current PID to __aio_sigqueue.
2298         * sysdeps/pthread/lio_listio.c (lio_listio): Adjust __aio_notify_only
2299         call.  Don't initialize caller_pid field of waitlist element.
2300
2301 2003-08-12  Jakub Jelinek  <jakub@redhat.com>
2302
2303         * libio/libioP.h (_IO_vtable_offset): Define.
2304         * libio/freopen.c (freopen): Use it.
2305         * libio/ioputs.c (_IO_puts): Likewise.
2306         * libio/freopen64.c (freopen64): Likewise.
2307         * libio/genops.c (__underflow, __uflow, _IO_flush_all_lockp):
2308         Likewise.
2309         * libio/iofclose.c (_IO_new_fclose): Likewise.
2310         * libio/iofputs.c (_IO_fputs): Likewise.
2311         * libio/ioftell.c (_IO_ftell): Likewise.
2312         * libio/iofwrite.c (_IO_fwrite): Likewise.
2313         * libio/ioseekoff.c (_IO_seekoff_unlocked): Likewise.
2314         * libio/iosetbuffer.c (_IO_setbuffer): Likewise.
2315         * stdio-common/vfprintf.c (ORIENT, vfprintf): Likewise.
2316         * stdio-common/vfscanf.c (ORIENT): Likewise.
2317
2318 2003-08-11  Ulrich Drepper  <drepper@redhat.com>
2319
2320         * assert/assert.h: Use __builtin_expect in assert and
2321         assert_perror definitions if possible.
2322
2323 2003-08-07  Jakub Jelinek  <jakub@redhat.com>
2324
2325         * sysdeps/generic/ldsodefs.h (_rtld_global): Add
2326         _dl_rtld_lock_recursive and _dl_rtld_unlock_recursive.
2327         * elf/rtld.c (rtld_lock_default_lock_recursive,
2328         rtld_lock_default_unlock_recursive): New functions.
2329         (dl_main): Initialize _dl_rtld_lock_recursive and
2330         _dl_rtld_unlock_recursive.
2331
2332 2003-08-05  Jakub Jelinek  <jakub@redhat.com>
2333
2334         * elf/ldconfig.c (main): Append SLIBDIR and LIBDIR to
2335         config_file directories instead of prepending.
2336
2337 2003-08-02  Ulrich Drepper  <drepper@redhat.com>
2338
2339         * sysdeps/unix/sysv/linux/kernel-features.h: Define
2340         __ASSUME_CLONE_STOPPED.
2341
2342 2003-08-01  Ulrich Drepper  <drepper@redhat.com>
2343
2344         * sysdeps/generic/bits/libc-lock.h
2345         (__libc_cleanup_push,__libc_cleanup_pop): Define even here.
2346
2347 2003-08-01  Roland McGrath  <roland@frob.com>
2348
2349         * sysdeps/mach/hurd/getdents.c: Just use sysdeps/generic/getdents.c.
2350
2351 2003-07-31  Jakub Jelinek  <jakub@redhat.com>
2352
2353         * sysdeps/generic/bits/types.h (__ssize_t): Use __SSIZE_T_TYPE
2354         instead of __SWORD_TYPE.
2355         * sysdeps/generic/bits/typesizes.h (__SSIZE_T_TYPE): Define.
2356         * sysdeps/mach/hurd/bits/typesizes.h (__SSIZE_T_TYPE): Define.
2357         * sysdeps/unix/bsd/bsd4.4/freebsd/bits/typesizes.h (__SSIZE_T_TYPE):
2358         Define.
2359         * sysdeps/unix/sysv/linux/alpha/bits/typesizes.h (__SSIZE_T_TYPE):
2360         Define.
2361         * sysdeps/unix/sysv/linux/sparc/bits/typesizes.h (__SSIZE_T_TYPE):
2362         Define.
2363         * sysdeps/unix/sysv/linux/s390/bits/typesizes.h: New file.
2364
2365         * dlfcn/dlerror.c (once): New.
2366         (dlerror): Call __libc_once.
2367         (_dlerror_run): Remove once.
2368
2369         * sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h (struct sigcontext):
2370         Sync with 2.5.7 and 2.5.73 kernel changes.
2371
2372         * dlfcn/eval.c (funcall): Add noinline attribute to shut up warnings.
2373         * elf/rtld.c (dl_main): Cast ElfW(Addr) arguments with %Zx/%Zd
2374         formats to size_t.
2375         * elf/dl-lookup.c (_dl_debug_bindings): Likewise.
2376         * elf/tst-tls6.c (do_test): Use %zd format for l_tls_modid.
2377         * elf/tst-tls8.c (do_test): Use %zd format for modid1 and modid2.
2378         * gmon/tst-sprofil.c (main): Add parens to shut up warning.
2379         * iconv/tst-iconv3.c (main): Use %td instead of %zd for pointer
2380         difference argument.
2381         * stdio-common/tst-wc-printf.c (main): Cast arguments with %C
2382         format to wint_t.
2383         * stdlib/tst-limits.c (main): For WORD_BIT and LONG_BIT, use
2384         %d format and cast expected value to int.
2385         * sysdeps/generic/libc-start.c (STATIC): Add
2386         __attribute__((always_inline) if LIBC_START_MAIN is already defined.
2387         * sysdeps/powerpc/fpu/w_sqrt.c (a_nan, a_inf): Change from uint32_t
2388         to ieee_float_shape_type.
2389         (__sqrt): Avoid type punning.
2390         * sysdeps/powerpc/fpu/w_sqrtf.c (a_nan, a_inf): Change from uint32_t
2391         to ieee_float_shape_type.
2392         (__sqrtf): Avoid type punning.
2393         * sysdeps/s390/s390-32/dl-machine.h (elf_machine_rela): Don't define
2394         refsym if in dl-conflict.c.
2395         * sysdeps/s390/s390-64/dl-machine.h (elf_machine_rela): Likewise.
2396         * sysdeps/unix/sysv/linux/i386/semctl.c (union semun): Add __old_buf.
2397         (__new_semctl): Shut up warning.
2398         * sysdeps/unix/sysv/linux/semctl.c (union semun): Add __old_buf.
2399         (__new_semctl): Shut up warning.
2400         * sysdeps/unix/sysv/linux/shmctl.c (__new_shmctl): Wrap long lines.
2401         Change old into union of __old_shmid_ds and __old_shminfo structs.
2402         Adjust all users.
2403         * wcsmbs/wcsmbs-tst1.c (main): Cast arguments with %C format to wint_t.
2404
2405         * sysdeps/unix/sysv/linux/utimes.c (__utimes): Fix actime and
2406         modtime computation.
2407         * sysdeps/unix/sysv/linux/futimes.c (__futimes): Likewise.
2408         * sysdeps/posix/utimes.c (__utimes): Likewise.
2409
2410 2003-07-30  Jakub Jelinek  <jakub@redhat.com>
2411
2412         * elf/dl-reloc.c (_dl_allocate_static_tls): Don't return any value,
2413         call dl_signal_error directly.  If already relocated, call
2414         GL(dl_init_static_tls) directly, otherwise queue it for later.
2415         (CHECK_STATIC_TLS): Undo 2003-07-24 change.
2416         * elf/rtld.c (dl_main): Initialize GL(dl_init_static_tls).
2417         * elf/dl-open.c (dl_open_worker): Call GL_dl_init_static_tls
2418         for all static TLS initializations delayed in _dl_allocate_static_tls.
2419         * elf/dl-support.c (_dl_init_static_tls): New variable.
2420         * include/link.h (struct link_map): Add l_need_tls_init.
2421         * sysdeps/generic/ldsodefs.h (_rtld_global): Add _dl_init_static_tls.
2422         (_dl_nothread_init_static_tls): New prototype.
2423         (_dl_allocate_static_tls): Adjust prototype.
2424
2425         * elf/tls-macros.h (VAR_INT_DEF): Add alignment directive.
2426
2427 2003-07-31  Alexandre Oliva  <aoliva@redhat.com>
2428
2429         * elf/dynamic-link.h (elf_machine_rel, elf_machine_rela,
2430         elf_machine_rel_relative, elf_machine_rela_relative): Don't assume
2431         reloc_addr is aligned.
2432         * sysdeps/alpha/dl-machine.h (elf_machine_rela,
2433         elf_machine_rela_relative): Adjust.
2434         * sysdeps/arm/dl-machine.h (elf_machine_rel, elf_machine_rela,
2435         elf_machine_rel_relative, elf_machine_rela_relative): Adjust.
2436         * sysdeps/cris/dl-machine.h (elf_machine_rela,
2437         elf_machine_rela_relative): Adjust.
2438         * sysdeps/hppa/dl-machine.h (elf_machine_rela,
2439         elf_machine_rela_relative): Adjust.
2440         * sysdeps/i386/dl-machine.h (elf_machine_rel, elf_machine_rela,
2441         elf_machine_rel_relative, elf_machine_rela_relative): Adjust.
2442         * sysdeps/ia64/dl-machine.h (elf_machine_rela,
2443         elf_machine_rela_relative): Adjust.
2444         * sysdeps/m68k/dl-machine.h (elf_machine_rela,
2445         elf_machine_rela_relative): Adjust.
2446         * sysdeps/mips/dl-machine.h (elf_machine_rela,
2447         elf_machine_rela_relative): Adjust.
2448         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela,
2449         elf_machine_rela_relative): Adjust.
2450         * sysdeps/powerpc/powerpc64/dl-machine.h
2451         (elf_machine_rela_relative, elf_machine_rela): Adjust.
2452         * sysdeps/s390/s390-32/dl-machine.h (elf_machine_rela,
2453         elf_machine_rela_relative): Adjust.
2454         * sysdeps/s390/s390-64/dl-machine.h (elf_machine_rela,
2455         elf_machine_rela_relative): Adjust.
2456         * sysdeps/sh/dl-machine.h (elf_machine_rela,
2457         elf_machine_rela_relative): Adjust.
2458         * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela,
2459         elf_machine_rela_relative): Adjust.
2460         * sysdeps/sparc/sparc64/dl-machine.h (elf_machine_rela,
2461         elf_machine_rela_relative): Adjust.
2462         * sysdeps/x86_64/dl-machine.h (elf_machine_rela,
2463         elf_machine_rela_relative): Adjust.
2464
2465 2003-07-29  Ulrich Drepper  <drepper@redhat.com>
2466
2467         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Restore
2468         alignment of TCB used before the last change so that it matches
2469         ld's output for IE code.
2470
2471 2003-07-29  Jakub Jelinek  <jakub@redhat.com>
2472
2473         * include/ctype.h (__ctype_b_loc, __ctype_toupper_loc,
2474         __ctype_tolower_loc): Avoid "dereferencing type-punned pointer will
2475         break strict-aliasing rules" warnings.
2476
2477 2003-07-29  Roland McGrath  <roland@redhat.com>
2478
2479         * elf/Makefile: Revert accidental changes in last commit.
2480         * elf/dl-support.c: Likewise.
2481
2482         * rt/tst-timer2.c: New file.
2483         * rt/Makefile (tests): Add it.
2484
2485 2003-07-25  Jakub Jelinek  <jakub@redhat.com>
2486
2487         * elf/dl-support.c (_dl_hwcap): Add nocommon attribute.
2488
2489 2003-07-29  Roland McGrath  <roland@redhat.com>
2490
2491         * elf/Makefile (tests) [$(build-shared) = yes]:
2492         Depend on $(test-modules).
2493         * dlfcn/Makefile: Likewise.
2494
2495 2003-07-28  Roland McGrath  <roland@redhat.com>
2496
2497         * sysdeps/generic/bits/types.h (__STD_TYPE): New macro.
2498         Use that instead of `typedef' when using __*_TYPE macros in rhs.
2499
2500         * elf/tst-tls14.c [USE_TLS && HAVE___THREAD]: Conditionalize on this.
2501         * elf/tst-tlsmod14a.c: Likewise.
2502
2503         * sysdeps/unix/sysv/linux/sys/sysctl.h: Include <linux/compiler.h>
2504         before <linux/sysctl.h>.
2505
2506 2003-07-27  Ulrich Drepper  <drepper@redhat.com>
2507
2508         * sysdeps/unix/sysv/syscalls.list: time syscall never fails.
2509         * sysdeps/unix/sysv/linux/x86_64/time.S: time syscall never fails.
2510         * sysdeps/unix/sysv/i386/time.S: time syscall never fails.
2511         * sysdeps/unix/syscalls.list: umask syscall never fails.
2512
2513 2003-07-27  Andreas Jaeger  <aj@suse.de>
2514
2515         * sysdeps/unix/sysv/linux/init-first.c: Mark init as used.
2516
2517 2003-07-25  Jakub Jelinek  <jakub@redhat.com>
2518
2519         * sysdeps/unix/sysv/linux/a.out.h: Replace with i386 version.
2520         Include bits/a.out.h.
2521         * sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Add
2522         bits/a.out.h.
2523         * sysdeps/unix/sysv/linux/bits/a.out.h: New file.
2524         * sysdeps/unix/sysv/linux/i386/bits/a.out.h: New file.
2525         * sysdeps/unix/sysv/linux/m68k/bits/a.out.h: New file.
2526         * sysdeps/unix/sysv/linux/x86_64/bits/a.out.h: New file.
2527         * sysdeps/unix/sysv/linux/alpha/a.out.h: New file.
2528         * sysdeps/unix/sysv/linux/alpha/bits/a.out.h: New file.
2529         * sysdeps/unix/sysv/linux/sparc/a.out.h: New file.
2530         * sysdeps/unix/sysv/linux/sparc/bits/a.out.h: New file.
2531
2532 2003-07-24  Jakub Jelinek  <jakub@redhat.com>
2533
2534         * sysdeps/pthread/aio_cancel.c (aio_cancel): Return AIO_ALLDONE
2535         if aiocbp != NULL and has already completed.  Return -1/EINVAL if
2536         aiocbp->aio_fildes does not match fildes.
2537
2538 2003-07-24  Ulrich Drepper  <drepper@redhat.com>
2539
2540         * timezone/zic.c (rpytime): Replace cheap overflow check with a
2541         functioning one.
2542
2543         * include/link.h (struct link_map): Add l_tls_firstbyte_offset field.
2544         * sysdeps/generic/dl-tls.c [TLS_TCB_AT_TP] (_dl_determine_tlsoffset):
2545         Fix calculation of offsets to take misalignment of first byte in
2546         file into account.
2547         * elf/dl-load.c (_dl_map_object_from_fd): Initialize
2548         l_tls_firstbyte_offset field.
2549         * elf/rtld.c (_dl_start_final, _dl_start, dl_main): Likewise.
2550         * elf/dl-reloc.c (_dl_allocate_static_tls): Change return type to int.
2551         Take l_tls_firstbyte_offset information into account.
2552         (CHECK_STATIC_TLS): _dl_allocate_static_tls can fail now.
2553         * sysdeps/generic/ldsodefs.h: Adjust _dl_allocate_static_tls prototype.
2554         * elf/Makefile: Add rules to build and run tst-tls14.
2555         * elf/tst-tls14.c: New file.
2556         * elf/tst-tlsmod14a.c: New file.
2557         * elf/tst-tlsmod14b.c: New file.
2558
2559 2003-07-23  Jakub Jelinek  <jakub@redhat.com>
2560
2561         * sysdeps/pthread/lio_listio.c (LIO_OPCODE_BASE): Define.
2562         (lio_listio): Use it.
2563         * sysdeps/pthread/lio_listio64.c: Include lio_listio.c instead of
2564         after few defines to avoid duplication.
2565
2566 2003-07-22  Jakub Jelinek  <jakub@redhat.com>
2567
2568         * include/stdio.h (__libc_fatal): Add libc_hidden_proto.
2569         * include/dlfcn.h (__libc_dlopen_mode, __libc_dlsym, __libc_dlclose):
2570         Likewise.
2571         * elf/dl-libc.c (__libc_dlopen_mode, __libc_dlsym, __libc_dlclose):
2572         Add libc_hidden_def.
2573         * sysdeps/generic/libc_fatal.c (__libc_fatal): Likewise.
2574         * sysdeps/posix/libc_fatal.c (__libc_fatal): Likewise.
2575         * sysdeps/unix/sysv/linux/libc_fatal.c (__libc_fatal): Likewise.
2576         * elf/Versions (libc): Export __libc_dlopen_mode@@GLIBC_PRIVATE,
2577         __libc_dlsym@@GLIBC_PRIVATE and __libc_dlclose@@GLIBC_PRIVATE.
2578         * libio/Versions (libc): Export __libc_fatal@@GLIBC_PRIVATE.
2579         * sysdeps/generic/unwind-dw2.c: Readd #ifs removed during last
2580         change.
2581         * sysdeps/generic/unwind.inc: Removed.
2582
2583         * include/resolv.h (__resp): Declare.  Define to __libc_resp
2584         if in libc.so.
2585         (_res): If USE___THREAD, define to (*__resp).
2586         * resolv/res_libc.c (_res): Normal .bss variable with compat_symbol
2587         even if USE___THREAD.
2588         (__resp): New __thread variable.
2589         (__libc_resp): New alias.
2590         * resolv/Versions (libc): Export _res@GLIBC_2.0 even if
2591         USE_TLS && HAVE___THREAD.  Export __resp@@GLIBC_PRIVATE.
2592         * sysdeps/generic/res-state.c (__res_state): Return __resp
2593         if USE___THREAD.
2594
2595 2003-07-22  H.J. Lu  <hongjiu.lu@intel.com>
2596
2597         * elf/dl-support.c (_dl_hwcap): New variable.
2598         (_dl_aux_init): Initialize GL(dl_hwcap) for static binaries.
2599
2600         * sysdeps/i386/fpu/fclrexcpt.c: Include <unistd.h>, <ldsodefs.h>
2601         and <dl-procinfo.h>.
2602         (__feclearexcept): Clear MXCSR if needed.
2603         * sysdeps/i386/fpu/fsetexcptflg.c: Likewise.
2604
2605         * sysdeps/i386/fpu_control.h (_FPU_GETCW, _FPU_SETCW): Document
2606         that newer hardware needs more than these macros.
2607
2608         * sysdeps/i386/setfpucw.c: New file.
2609
2610 2003-07-22  Jakub Jelinek  <jakub@redhat.com>
2611
2612         * elf/Makefile (CFLAGS-ldconfig.c): Define IS_IN_ldconfig.
2613         * elf/ldconfig.c: Include dl-procinfo.c.
2614         (PROCINFO_CLASS): Define.
2615         * sysdeps/generic/ldsodefs.h (PROCINFO_CLASS): Define.
2616         * sysdeps/unix/sysv/linux/x86_64/dl-procinfo.c: New file.
2617         * sysdeps/unix/sysv/linux/x86_64/dl-procinfo.h: New file.
2618         * sysdeps/unix/sysv/linux/i386/dl-procinfo.c (PROCINFO_CLASS):
2619         Define if not yet defined.  Use it instead of EXTERN.  Undefine
2620         at the end of the file.
2621         * sysdeps/unix/sysv/linux/arm/dl-procinfo.c (PROCINFO_CLASS):
2622         Likewise.
2623         * sysdeps/unix/sysv/linux/sparc/sparc32/dl-procinfo.c
2624         (PROCINFO_CLASS): Likewise.
2625         * sysdeps/unix/sysv/linux/sparc/sparc64/dl-procinfo.c
2626         (PROCINFO_CLASS): Likewise.
2627
2628 2003-07-22  H.J. Lu  <hongjiu.lu@intel.com>
2629
2630         * elf/ldconfig.c (main): Issue a fatal error if relative path
2631         is used to build cache.
2632
2633 2003-07-22  Ulrich Drepper  <drepper@redhat.com>
2634
2635         * elf/readlib.c (process_file): Avoid possible overflow in assignment.
2636
2637 2003-07-21  Art Haas  <ahaas@airmail.net>
2638
2639         * manual/charset.texi (Converting a Character): Fix example code so a
2640         valid pointer is returned.
2641
2642 2003-07-22  Andreas Jaeger  <aj@suse.de>
2643
2644         * elf/readlib.c (process_file): Check that file is a shared
2645         object.
2646
2647         * elf/sofini.c (__FRAME_END__): Use attribute used so that gcc
2648         will not optimize it away.
2649         (__DTOR_END__): Likewise.
2650         (__CTOR_END__): Likewise.
2651
2652         * include/libc-symbols.h (_elf_set_element): Use attribute used so
2653         that gcc will not optimize it away.
2654         (link_warning): Likewise.
2655
2656 2003-07-22  Ulrich Drepper  <drepper@redhat.com>
2657
2658         * wcsmbs/wcpncpy.c (__wcpncpy): Correct destination pointer handling.
2659         * wcsmbs/Makefile (tests): Add tst-wcpncpy.
2660         * wcsmbs/tst-wcpncpy.c: New file.
2661
2662 2003-07-21  Ulrich Drepper  <drepper@redhat.com>
2663
2664         * sysdeps/unix/sysv/linux/bits/sched.h (CLONE_STOPPED): Define.
2665
2666         * sysdeps/i386/fpu/feenablxcpt.c (feenableexcept): Reverse use of
2667         stmxcsr and ldmxcsr.
2668
2669         * Makerules (build-module-helper): Add -z defs unless explicitly said
2670         not to do it.
2671         * dlfcn/Makefile: Define various *-no-z-defs variables for test DSOs
2672         which has undefined symbols.
2673         * elf/Makefile: Likewise.
2674
2675         * sysdeps/i386/fpu/fedisblxcpt.c: Use dl_hwcap, not dl_hwcap_mask.
2676         * sysdeps/i386/fpu/feenablxcpt.c: Likewise.
2677         * sysdeps/i386/fpu/feholdexcpt.c: Likewise.
2678         * sysdeps/i386/fpu/fesetround.c: Likewise.
2679         * sysdeps/i386/fpu/ftestexcept.c: Likewise.
2680
2681 2003-07-21  HJ Lu  <hongjiu.lu@intel.com>
2682
2683         * elf/ldconfig.c (search_dir): Treat symlink as regular file
2684         if it won't point to itself.
2685
2686 2003-07-20  Ulrich Drepper  <drepper@redhat.com>
2687
2688         * sysdeps/ia64/hp-timing.h (REPEAT_READ): Cast to long int not to int.
2689
2690 2003-07-20  Andreas Jaeger  <aj@suse.de>
2691
2692         * iconvdata/cp932.c (BODY): STANDARD_ERR_HANDLER is now called
2693         STANDARD_TO_LOOP_ERR_HANDLER.
2694         * iconvdata/euc-jp-ms.c (BODY): Likewise.
2695
2696 2003-07-19  Ulrich Drepper  <drepper@redhat.com>
2697
2698         * sysdeps/unix/sysv/linux/bits/sched.h (__CPU_ZERO): Fix typo.
2699
2700         * sysdeps/unix/sysv/linux/syscalls.list: Remove affinity syscalls.
2701
2702 2003-07-16  Daniel Jacobowitz  <drow@mvista.com>
2703             Andreas Jaeger  <aj@suse.de>
2704
2705         * sysdeps/unix/sysv/linux/mips/bits/shm.h (SHMLBA): Define to
2706         256K, remove unneeded declaration of __getpagesize.
2707
2708 2003-07-16  Andreas Schwab  <schwab@suse.de>
2709
2710         * sysdeps/unix/sysv/linux/futimes.c: Include <string.h>.
2711
2712 2003-07-15  Ulrich Drepper  <drepper@redhat.com>
2713
2714         * io/test-utime.c (main): Make test yet more robust.
2715
2716 2003-07-14  Ulrich Drepper  <drepper@redhat.com>
2717
2718         More cancellation handling fixups.
2719         * sysdeps/unix/sysv/linux/not-cancel.h: Add waitpid_not_cancel.
2720         * sysdeps/generic/not-cancel.h: Likewise.
2721         * catgets/open_catalog.c: Use not-cancelable syscalls.
2722         * time/Makefile (CFLAGS-getdate.c): Add -fexceptions.
2723         * sysdeps/unix/sysv/linux/llseek.c: Must not be cancelable.
2724         * sysdeps/unix/syscalls.list: Don't mark lseek as cancelable.
2725         * dlfcn/dlfcn.h: Mark dlopen with __THROW again.
2726         * io/fcntl.h: Don't mark posix_fallocate with __THROW.
2727         * libio/fileops.c: Use not-cancelable syscalls for fclose.
2728         * libio/iopopen.c: Use no-cancelable syscalls.
2729         * libio/stdio.h: Mark popen and pclose with __THROW again.
2730         * misc/Makefile (CFLAGS-syslog.c): Add -fexceptions.
2731         * misc/syslog.c: Fix locking and cancellation cleanup handling.
2732         * posix/unistd.h: Mark ttyname and ttyname_r again with __THROW.
2733         * stdio-common/Makefile (CFLAGS-tmpfile.c, CFLAGS-tmpfile64.c,
2734         CFLAGS-tempname.c): Add -fexceptions.
2735         * stdlib/Makefile (CFLAGS-mkstemp.c): Add -fexceptions.
2736         * string/string.h: Mark strerror and strerror_r with _THROW again.
2737         * sysdeps/generic/unwind.inc: New file.  Copied from gcc.
2738         * sysdeps/generic/unwind-dw2.c: Update from gcc version.  Remove
2739         #ifs since we now need all the code compiled.
2740         * sysdeps/posix/spawni.c: Use close_not_cancel instead of close.
2741         * sysdeps/unix/closedir.c: Use not-cancelable syscalls.
2742         * sysdeps/unix/opendir.c: Likewise.
2743
2744         * iconvdata/Makefile (modules): Add CP932 and EUC-JP-MS.
2745         Add rule for EUC-JP-MS dependency.
2746         * iconvdata/cp932.c: New file.
2747         * iconvdata/eucjp-ms.c: New file.
2748         * iconvdata/gconv-modules: Add entries for CP932 and EUC-JP-MS.
2749         Patch by MORIYAMA Masayuki <msyk@mtg.biglobe.ne.jp>.
2750
2751 2003-07-15  Jakub Jelinek  <jakub@redhat.com>
2752
2753         * sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S (__socket): Add
2754         cfi directives.
2755
2756 2003-07-14  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
2757
2758         * sysdeps/unix/sysv/linux/kernel-features.h
2759         (__ASSUME_FIXED_CLONE_SYSCALL): New macro.
2760         * sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S: Use it.
2761
2762         * sysdeps/unix/sysv/linux/utimes.c: Include sysdep.h.
2763
2764 2003-07-14  Ulrich Drepper  <drepper@redhat.com>
2765
2766         * sysdeps/unix/sysv/linux/kernel-features.h: Define
2767         __ASSUME_TGKILL for Alpha appropriately.
2768
2769 2003-07-12  Ulrich Drepper  <drepper@redhat.com>
2770
2771         * sysdeps/unix/sysv/linux/bits/statfs.h (_STATFS_F_FRSIZE): Define.
2772         * sysdeps/unix/sysv/linux/alpha/bits/statfs.h (_STATFS_F_FRSIZE):
2773         Likewise.
2774         * sysdeps/unix/sysv/linux/s390/bits/statfs.h (_STATFS_F_FRSIZE):
2775         Likewise.
2776
2777         * sysdeps/unix/sysv/linux/kernel-features.h: Define
2778         __ASSUME_UTIMES for x86 and kernels > 2.5.75.
2779
2780         * sysdeps/unix/sysv/linux/futimes.c (__futimes): Handle case with
2781         second parameter == NULL.
2782         * sysdeps/unix/sysv/linux/utimes.c: New file.
2783
2784 2003-07-12  Jakub Jelinek  <jakub@redhat.com>
2785
2786         * sysdeps/unix/sysv/linux/futimes.c: Include kernel-features.h.
2787         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_UTIMES): Fix
2788         a typo.
2789
2790 2003-07-12  Ulrich Drepper  <drepper@redhat.com>
2791
2792         * time/sys/time.h: Namespace cleanup.
2793         * sysdeps/unix/sysv/linux/kernel-features.h: Define
2794         __ASSUME_UTIMES for the architectures which always had the syscall.
2795         * sysdeps/unix/sysv/linux/futimes.c: New file.
2796
2797 2003-07-12  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
2798
2799         * sysdeps/unix/sysv/linux/sh/socket.S: Save and restore the PR
2800         register across CENABLE and CDISABLE.
2801
2802 2003-07-11  Jakub Jelinek  <jakub@redhat.com>
2803
2804         * sysdeps/unix/sysv/linux/sigwait.c: Include string.h.
2805         * sysdeps/unix/sysv/linux/sigwaitinfo.c: Likewise.
2806         * sysdeps/unix/sysv/linux/sigtimedwait.c: Likewise.
2807         * sysdeps/unix/sysv/linux/sleep.c (__sleep): Cast value to unsigned
2808         int before assigning to max to avoid warnings.
2809
2810 2003-07-11  Jakub Jelinek  <jakub@redhat.com>
2811
2812         * sysdeps/unix/sysv/linux/powerpc/powerpc32/socket.S (__socket): Add
2813         cfi directives.
2814         * sysdeps/unix/sysv/linux/s390/s390-32/socket.S (__socket): Likewise.
2815         * sysdeps/unix/sysv/linux/s390/s390-64/socket.S (__socket): Likewise.
2816
2817 2003-07-10  Jakub Jelinek  <jakub@redhat.com>
2818
2819         * sysdeps/powerpc/powerpc64/elf/start.S: Set section flags of
2820         .data.rel.ro.local to "aw".
2821
2822 2003-07-10  Ulrich Drepper  <drepper@redhat.com>
2823
2824         * sysdeps/m68k/Makefile: Remove CLFAGS-.oS addition.
2825         * Makeconfig (CFLAGS-.oS): Use PIC-ccflag instead of pic-ccflag.
2826         (PIC-ccflag): Define.
2827
2828 2003-07-04  Jakub Jelinek  <jakub@redhat.com>
2829
2830         * sysdeps/s390/s390-32/elf/start.S: Emit position independent code
2831         if PIC.
2832         * sysdeps/s390/s390-64/elf/start.S: Likewise.
2833
2834 2003-07-07  Jakub Jelinek  <jakub@redhat.com>
2835
2836         * sysdeps/powerpc/powerpc64/elf/start.S: Put L(start_address)
2837         into .data.rel.ro.local section if PIC to avoid DT_TEXTREL.
2838
2839 2003-07-07  Ulrich Drepper  <drepper@redhat.com>
2840
2841         * sysdeps/unix/sysv/linux/kernel-features.h: Version
2842         __ASSUME_CORRECT_SI_PID and __ASSUME_TGKILL if possible.
2843
2844         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Adjust for
2845         compilation with HAVE_AUX_SECURE defined.
2846
2847 2003-07-05  Richard Henderson  <rth@redhat.com>
2848
2849         * sysdeps/alpha/elf/initfini.c: Avoid .ent/.end.
2850
2851 2003-07-03  Ulrich Drepper  <drepper@redhat.com>
2852
2853         * configure.in: Also check for .cfi_rel_offset pseudo-op.
2854
2855 2003-07-03  Jakub Jelinek  <jakub@redhat.com>
2856
2857         * sysdeps/unix/sysv/linux/prof-freq.c (__profile_frequency): Fix a
2858         typo.
2859
2860 2003-07-03  Ulrich Drepper  <drepper@redhat.com>
2861
2862         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_AT_CLKTCK):
2863         Define.
2864         * sysdeps/unix/sysv/linux/prof-freq.h: New file.
2865
2866 2003-07-02  Jakub Jelinek  <jakub@redhat.com>
2867
2868         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Protect new_sysinfo
2869         decl and use with #ifdef NEED_DL_SYSINFO.
2870
2871 2003-07-02  Ulrich Drepper  <drepper@redhat.com>
2872
2873         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Don't set
2874         GL(dl_sysinfo) unles GL(dl_sysinfo_dso) is also set.
2875         * sysdeps/unix/sysv/linux/kernel-features.h: Define
2876         __ASSUME_VSYSCALL only for 2.5.69 and up since this is when the
2877         vsyscall DSO was added.
2878
2879         * posix/bits/posix1_lim.h (_POSIX_NGROUPS_MAX): Define to 8 or 0
2880         depending on selected standard.
2881         (NGROUPS_MAX): Define to 8 if not defined.
2882
2883 2003-07-02  Andreas Jaeger  <aj@suse.de>
2884
2885         * sysdeps/unix/sysv/linux/x86_64/sys/epoll.h: New file.
2886
2887 2003-05-04  H.J. Lu  <hongjiu.lu@intel.com>
2888
2889         * malloc/arena.c (arena_get2): Add atomic_write_barrier.
2890         * malloc/thread-m.h: Include <atomic.h>.
2891         (atomic_full_barrier): Provide default.
2892         (atomic_read_barrier): Likewise.
2893         (atomic_write_barrier): Likewise.
2894         * sysdeps/ia64/bits/atomic.h (atomic_full_barrier): New #define.
2895
2896 2003-06-30  Ulrich Drepper  <drepper@redhat.com>
2897
2898         * sysdeps/generic/sysdep.h: Define cfi_rel_offset and CFI_REL_OFFSET.
2899
2900 2003-06-30  Richard Henderson  <rth@redhat.com>
2901
2902         * sysdeps/alpha/bits/atomic.h (__arch_compare_and_exchange_bool_*_int):
2903         Invert the sense of the return value.
2904         (__arch_exchange_16_int): Fix paste-o.
2905         (__arch_exchange_{32,64}_int): Fix think-o.
2906
2907         * sysdeps/unix/sysv/linux/alpha/clone.S: Load child_tid properly.
2908
2909 2003-06-30  Richard Henderson  <rth@redhat.com>
2910
2911         * include/sys/resource.h (__getrusage): Mark hidden.
2912         * include/sys/time.h (__settimeofday, __setitimer, __utimes): Likewise.
2913         * include/sys/wait.h (__wait4): Likewise.
2914
2915 2003-06-17  Guido Guenther  <agx@sigxcpu.org>
2916
2917         * sysdeps/unix/sysv/linux/mips/xstatconv.c: Handle STAT_IS_KERNEL_STAT
2918         case.
2919         (xstat_conv): Rename to __xstat_conv and remove static inline.
2920         (xstat64_conv): Likewise.
2921
2922 2003-06-29  Ulrich Drepper  <drepper@redhat.com>
2923
2924         * sysdeps/unix/sysv/linux/sleep.c (__sleep): Handle parameter
2925         values which cannot be handled in one nanosleep call.
2926
2927 2003-06-25  Alfred M. Szmidt  <ams@kemisten.nu>
2928
2929         * sysdeps/generic/bits/in.h (IPV6_HOPOPTS, IPV6_DSTOPTS): New macros.
2930         (IPV6_RXHOPOPTS, IPV6_RXDSTOPTS): Use them.
2931
2932         * sysdeps/generic/ifreq.h (__if_nextreq) [_HAVE_SA_LEN]: Typo fix.
2933
2934 2003-06-04  Thorsten Kukuk  <kukuk@suse.de>
2935
2936         * sysdeps/unix/sysv/linux/net/if_arp.h: Sync with kernel header,
2937         fix typo.
2938
2939 2003-06-26  Steven Munroe  <sjmunroe@us.ibm.com>
2940
2941         * sysdeps/unix/sysv/linux/xstatconv.h [!STAT_IS_KERNEL_STAT]:
2942         Conditionalize function definitions that use struct kernel_stat.
2943         * sysdeps/unix/sysv/linux/fxstat.c: Remove __syscall_fstat extern.
2944         * sysdeps/unix/sysv/linux/lxstat.c: Remove __syscall_lstat extern.
2945         * sysdeps/unix/sysv/linux/xstat.c: Remove __syscall_stat extern.
2946
2947 2003-06-28  Ulrich Drepper  <drepper@redhat.com>
2948
2949         * sysdeps/unix/sysv/linux/s390/semtimedop.c (semtimedop): Add real
2950         implementation.
2951
2952 2003-06-07  Thorsten Kukuk  <kukuk@suse.de>
2953
2954         * nis/nss_compat/compat-grp.c: Remove unused nis_first variable.
2955         (getgrent_next_file): Don't store group name to early in blacklist.
2956
2957         * nis/nss_compat/compat-pwd.c (internal_getpwuid_r): Save strlen result
2958         and use memcpy instead of strcpy.
2959
2960 2003-06-28  Ulrich Drepper  <drepper@redhat.com>
2961
2962         * nis/nss_compat/compat-grp.c: Optimize several little things.  Use
2963         stream unlocked.
2964         * nis/nss_compat/compat-initgroups.c: Likewise.
2965         * nis/nss_compat/compat-pwd.c: Likewise.
2966         * nis/nss_compat/compat-spwd.c: Likewise.
2967
2968 2003-06-27  Thorsten Kukuk  <kukuk@suse.de>
2969
2970         * nis/nss_compat/compat-initgroups.c: Don't use our own NIS/NIS+
2971         functions, dlopen corresponding NSS module instead.
2972
2973 2003-06-27  Jeroen Dekkers  <jeroen@dekkers.cx>
2974
2975         * sysdeps/mach/hurd/alpha/init-first.c: Remove call to __libc_init.
2976         * sysdeps/mach/hurd/i386/init-first.c: Likewise.
2977         * sysdeps/mach/hurd/mips/init-first.c: Likewise.
2978         * sysdeps/mach/hurd/powerpc/init-first.c: Likewise.
2979
2980 2003-06-27  Ulrich Drepper  <drepper@redhat.com>
2981
2982         * rt/Makefile (CFLAGS-librt-cancellation.c): Define.
2983
2984 2003-06-26  Roland McGrath  <roland@frob.com>
2985
2986         * sysdeps/mach/configure.in: Barf rather than define NO_CREATION_TIME.
2987         * sysdeps/mach/configure: Regenerated.
2988         * sysdeps/mach/hurd/times.c (times_init): Function removed.
2989         (__times): Assume `creation_time' field is available.
2990         * sysdeps/mach/hurd/Makefile [$(subdir) = csu] (sysdep_routines):
2991         Don't append set-init.
2992         * sysdeps/mach/hurd/set-init.c: File removed.
2993
2994 2003-06-26  Roland McGrath  <roland@redhat.com>
2995
2996         * elf/elf.h (AT_SECURE): New macro.
2997         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Grok it,
2998         set __libc_enable_secure.
2999         (_dl_show_auxv): Add AT_SECURE to name table.
3000         * elf/dl-support.c (_dl_aux_init): Grok AT_SECURE, set
3001         __libc_enable_secure and __libc_enable_secure_decided.
3002         * sysdeps/unix/sysv/linux/ldsodefs.h
3003         [__ASSUME_AT_SECURE] (HAVE_AUX_SECURE): Define it.
3004         * sysdeps/unix/sysv/linux/kernel-features.h
3005         [__LINUX_KERNEL_VERSION >= 132426] (__ASSUME_AT_SECURE): Define it.
3006
3007 2003-06-26  Ulrich Drepper  <drepper@redhat.com>
3008
3009         * io/test-utime.c: If _STATBUF_ST_NSEC is defined, adjust lower
3010         boundary test to take rounding of nanoseconds into account.
3011
3012         * sysdeps/unix/sysv/linux/bits/stat.h: Define _STATBUF_ST_NSEC.
3013         * sysdeps/unix/sysv/linux/ia64/bits/stat.h: Likewise.
3014         * sysdeps/unix/sysv/linux/m68k/bits/stat.h: Likewise.
3015         * sysdeps/unix/sysv/linux/powerpc/bits/stat.h: Likewise.
3016         * sysdeps/unix/sysv/linux/s390/bits/stat.h: Likewise.
3017         * sysdeps/unix/sysv/linux/sparc/bits/stat.h: Likewise.
3018         * sysdeps/unix/sysv/linux/x86_64/bits/stat.h: Likewise.
3019
3020 2003-06-26  Andreas Schwab  <schwab@suse.de>
3021
3022         * sysdeps/m68k/fpu/bits/mathinline.h: Don't inline frexp.
3023         * sysdeps/m68k/fpu/s_frexp.c: Put implementation here.
3024         * sysdeps/m68k/fpu/s_frexpl.c: Fix to handle unnormalized numbers.
3025
3026 2003-06-17  Thorsten Kukuk  <kukuk@suse.de>
3027
3028         * nis/Makefile: Remove NIS/NIS+ files from nss_compat module.
3029         * nis/nss_compat/compat-grp.c: Don't use our own NIS/NIS+ functions,
3030         dlopen corresponding NSS module instead.
3031         * nis/nss_compat/compat-pwd.c: Likewise.
3032         * nis/nss_compat/compat-spwd.c: Likewise.
3033         * nis/nss_compat/compat-initgroups.c: Disabled for now.
3034         * nss/Versions: Export __nss_lookup_function.
3035
3036 2003-06-19  Daniel Jacobowitz  <drow@mvista.com>
3037
3038         * sysdeps/unix/sysv/linux/kernel-features.h: Update kernel features
3039         for the SH architecture.
3040
3041 2003-06-25  Thorsten Kukuk  <kukuk@suse.de>
3042
3043         * csu/Makefile: Use CPPFLAGS to find correct linux/version.h.
3044
3045 2003-06-25  Andreas Jaeger  <aj@suse.de>
3046
3047         * stdlib/tst-strtod.c (main): Declare constant long double as
3048         suggested by Jakub Jelinek and Andreas Schwab.
3049
3050         * posix/tst-nanosleep.c: Include <time.h> for nanosleep
3051         declaration.
3052
3053         * stdio-common/tst-fphex.c: Fix format string.
3054
3055         * posix/transbug.c: Include <string.h> for memset and strlen
3056         declarations.
3057
3058         * stdio-common/tst-sprintf.c: Include <stdlib.h> for free declaration.
3059
3060         * stdlib/tst-strtod.c (main): Pass long double value.
3061
3062         * test-skeleton.c: Include <time.h> for nanosleep declaration.
3063
3064 2003-06-25  Ulrich Drepper  <drepper@redhat.com>
3065
3066         * include/time.h: Don't define CLOCK_IDFIELD_SIZE if _ISOMAC is
3067         defined.
3068
3069 2003-06-11  Jakub Jelinek  <jakub@redhat.com>
3070
3071         * elf/Versions (libc): Add _dl_open_hook@GLIBC_PRIVATE.
3072         * elf/dl-libc.c (struct dl_open_hook): New.
3073         (_dl_open_hook): New variable.
3074         (do_dlsym_private): New function.
3075         (__libc_dlopen_mode) [!SHARED]: Lookup _dl_open_hook@GLIBC_PRIVATE
3076         and initialize it if found.
3077         (__libc_dlopen_mode) [SHARED]: If _dl_open_hook is non-NULL,
3078         call dlopen_mode hook.
3079         (__libc_dlsym) [SHARED]: If _dl_open_hook is non-NULL,
3080         call dlsym hook.
3081         (__libc_dlclose) [SHARED]: If _dl_open_hook is non-NULL,
3082         call dlclose hook.
3083
3084 2003-06-25  Ulrich Drepper  <drepper@redhat.com>
3085
3086         * sysdeps/unix/sysv/linux/cris/sysdep.h (INLINE_SYSCALL): Cast
3087         result to long int so that extensions to long long int work.
3088         Patch by Uwe Reimann <libc-alpha@pulsar.homelinux.net>.
3089
3090 2003-06-19  Jakub Jelinek  <jakub@redhat.com>
3091
3092         * elf/ldconfig.c (main): Use add_system_dir instead of add_dir.
3093         * sysdeps/generic/dl-cache.h (add_system_dir): Define.
3094         * sysdeps/unix/sysv/linux/x86_64/dl-cache.h: Include sparc
3095         dl-cache.h.
3096         * sysdeps/unix/sysv/linux/s390/dl-cache.h: New file.
3097         * sysdeps/unix/sysv/linux/mips/dl-cache.h: New file.
3098         * sysdeps/unix/sysv/linux/powerpc/dl-cache.h: New file.
3099         * sysdeps/unix/sysv/linux/sparc/dl-cache.h: New file.
3100
3101 2003-06-19  Jakub Jelinek  <jakub@redhat.com>
3102
3103         * test-skeleton.c (timeout_handler): If waitpid returned 0,
3104         retry once after a second.  If killed == 0, assume
3105         WTERMSIG (status) == SIGKILL.
3106
3107 2003-06-18  Roland McGrath  <roland@redhat.com>
3108
3109         * sysdeps/generic/dl-sysdep.c (_dl_show_auxv): Catch uninitialized
3110         elements in the table instead of printing an empty name string.
3111
3112 2003-06-05  Roland McGrath  <roland@redhat.com>
3113
3114         * elf/elf.h (PT_GNU_STACK): New macro.
3115
3116 2003-06-24  Ulrich Drepper  <drepper@redhat.com>
3117
3118         * include/time.h: Define CLOCK_IDFIELD_SIZE.
3119         * sysdeps/posix/clock_getres.c: Recognize thread CPU clock IDs.
3120         * sysdeps/unix/clock_gettime.c: Likewise.
3121         * sysdeps/unix/clock_settime.c: Likewise.
3122         * sysdeps/unix/clock_nanosleep.c (CPUCLOCK_P): Adjust for new
3123         clock id for thread CPU clocks.
3124
3125         * sysdeps/unix/sysv/linux/fstatfs64.c (__fstatfs64): Add support
3126         for the fstatfs64 syscall.
3127         * sysdeps/unix/sysv/linux/statfs64.c (__statfs64): Add support for
3128         the statfs64 syscall.
3129
3130         * sysdeps/unix/sysv/linux/kernel-features.h: Define
3131         __ASSUME_STATFS64 appropriately.
3132
3133         * sysdeps/unix/sysv/linux/internal_statvfs.c: Use f_frsize field
3134         from statfs structure if it has been filled in.
3135
3136         * sysdeps/unix/sysv/linux/bits/statfs.h (struct statfs): Add f_frsize
3137         field.
3138         (struct statfs64): Likewise.
3139         * sysdeps/unix/sysv/linux/alpha/bits/statfs.h: Likewise.
3140         * sysdeps/unix/sysv/linux/s390/bits/statfs.h: Likewise.
3141
3142 2003-06-24  Richard Henderson  <rth@redhat.com>
3143
3144         * sysdeps/unix/sysv/linux/alpha/syscalls.list (pread, pwrite): Use
3145         the 64-bit syscall name.
3146
3147         * sysdeps/alpha/setjmp.S (_setjmp, setjmp): Mark .prologue.
3148
3149         * sysdeps/alpha/fpu/bits/mathinline.h: Honor
3150         __LIBC_INTERNAL_MATH_INLINES.  Implement __signbitf, __signbit.
3151
3152         * sysdeps/unix/sysv/linux/alpha/clone.S: Use HIDDEN_JUMPTARGET.
3153         * sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S: Use
3154         libc_hidden_def.
3155         * sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S: Likewise.
3156         * sysdeps/unix/sysv/linux/alpha/setfpucw.c: Use libc_hidden_proto
3157         on them.
3158
3159         * sysdeps/alpha/bits/atomic.h: New file.
3160
3161 2003-06-24  Andreas Schwab  <schwab@suse.de>
3162
3163         * sysdeps/m68k/fpu/libm-test-ulps: Update.
3164
3165 2003-06-24  Andreas Jaeger  <aj@suse.de>
3166
3167         * sysdeps/unix/sysv/linux/x86_64/stat.h (_STAT_VER_LINUX): Avoid
3168         redeclaration with 32-bit code.
3169
3170 2003-05-19  Ed Connell  <ed.connell@sas.com>
3171
3172         * sysdeps/unix/sysv/linux/i386/getcontext.S (getcontext): Retain
3173         floating point mask.
3174         * sysdeps/i386/fpu/fegetenv.c (fegetenv): Likewise.
3175
3176 2003-06-23  Ulrich Drepper  <drepper@redhat.com>
3177
3178         * sysdeps/pthread/aio_misc.h: Mark __aio_requests_mutex,
3179         __aio_enqueue_request, __aio_find_req, __aio_find_req_fd,
3180         __aio_free_request, __aio_notify, and __aio_sigqueue as hidden.
3181
3182         * sysdeps/pthread/aio_suspend.c (aio_suspend): Set errno to the result
3183         of pthread_cond_wait if there was an error.  Use pthread_cleanup_*
3184         instead of __libc_cleanup_region_*.
3185
3186 2003-06-20  Richard Henderson  <rth@redhat.com>
3187
3188         * sysdeps/unix/make-syscalls.sh: Implement ! prefix for strong aliases.
3189         * sysdeps/unix/sysv/linux/alpha/syscalls.list (open, open64): New.
3190
3191 2003-06-20  Richard Henderson  <rth@redhat.com>
3192
3193         * sysdeps/unix/alpha/sysdep.h (INLINE_SYSCALL1): Use __builtin_expect.
3194         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_ST_INO_64_BIT)
3195         Unset for alpha.
3196         (__ASSUME_TIMEVAL64): Set for alpha.
3197         * sysdeps/unix/sysv/linux/alpha/Makefile (sysdep_routines): Remove
3198         adjtimex, osf_sigprocmask, old_adjtimex.
3199         * sysdeps/unix/sysv/linux/alpha/adjtime.c: Use INLINE_SYSCALL,
3200         __ASSUME_TIMEVAL64.  Reorg tv64 functions to avoid uninit variable.
3201         * sysdeps/unix/sysv/linux/alpha/getitimer.S: Use __ASSUME_TIMEVAL64.
3202         * sysdeps/unix/sysv/linux/alpha/getrusage.S: Likewise.
3203         * sysdeps/unix/sysv/linux/alpha/gettimeofday.S: Likewise.
3204         * sysdeps/unix/sysv/linux/alpha/select.S: Likewise.
3205         * sysdeps/unix/sysv/linux/alpha/setitimer.S: Likewise.
3206         * sysdeps/unix/sysv/linux/alpha/settimeofday.S: Likewise.
3207         * sysdeps/unix/sysv/linux/alpha/utimes.S: Likewise.
3208         * sysdeps/unix/sysv/linux/alpha/wait4.S: Likewise.
3209         * sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S: Streamline
3210         PIC code sequence.
3211         * sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S: Likewise.
3212         * sysdeps/unix/sysv/linux/alpha/sigaction.c: New file.
3213         * sysdeps/unix/sysv/linux/alpha/sigprocmask.c: Use INLINE_SYSCALL.
3214         * sysdeps/unix/sysv/linux/alpha/ustat.c: Likewise.
3215         * sysdeps/unix/sysv/linux/alpha/xmknod.c: Likewise.
3216         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Remove osf_sigprocmask,
3217         sys_ustat, sys_mknod, adjtimex, old_adjtimex.
3218         * sysdeps/unix/sysv/linux/alpha/sysdep.h (INLINE_SYSCALL): Don't
3219         defer to __syscall_name; error for rt_sigaction.
3220         * sysdeps/unix/sysv/linux/alpha/xstatconv.c: Include kernel_stat.h.
3221
3222 2003-06-18  Ulrich Drepper  <drepper@redhat.com>
3223
3224         * malloc/malloc.c (public_mALLINFo): Initialize malloc if it
3225         hasn't happened yet.
3226
3227         * sysdeps/unix/sysv/linux/x86_64/register-dump.h (register_dump):
3228         Fix completely broken implementation.  The second parameter is of
3229         type struct ucontext*.
3230
3231         * sysdeps/x86_64/dl-machine.h (elf_machine_runtime_setup): Always
3232         inline.
3233
3234         * sysdeps/i386/i686/dl-hash.h: Don't inline _dl_elf_hash.
3235         * sysdeps/generic/dl-hash.h: Likewise.
3236
3237         * sysdeps/generic/memcmp.c: Remove inline from
3238         memcmp_common_alignment and memcmp_not_common_alignment definition.
3239
3240         * intl/localealias.c (read_alias_file): Determine whether line is
3241         read incompletely early, before we modify the line.
3242
3243 2003-06-17  Jakub Jelinek  <jakub@redhat.com>
3244
3245         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela)
3246         <case R_PPC64_DTPREL64>: Don't segfault on undefined symbols.
3247
3248 2003-06-17  Paul Mackerras  <paulus@samba.org>
3249
3250         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: New file.
3251         * sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S: New file.
3252         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: New file.
3253         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: New file.
3254         * sysdeps/unix/sysv/linux/powerpc/powerpc32/ucontext_i.h: New file.
3255         * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: Adjust.
3256
3257 2003-06-17  Jakub Jelinek  <jakub@redhat.com>
3258
3259         * posix/regcomp.c (build_word_op): Use alnum instead of alpha class.
3260
3261 2003-06-17  Ulrich Drepper  <drepper@redhat.com>
3262
3263         * sysdeps/unix/clock_nanosleep.c (clock_nanosleep): nanosleep
3264         takes care of enabling cancellation.
3265
3266         * sysdeps/pthread/aio_suspend.c (aio_suspend): Make aio_suspend
3267         cancelable.  It's not correct to disable cancellation.  Instead of
3268         a cleanup handler.
3269
3270         * sysdeps/unix/sysv/linux/sigtimedwait.c: If SIGCANCEL is defined
3271         and part of the incoming set, create a temporary set without this
3272         signal.
3273         * sysdeps/unix/sysv/linux/sigwait.c: Likewise.
3274         * sysdeps/unix/sysv/linux/sigwaitinfo.c: Likewise.
3275
3276         * sysdeps/unix/sysv/linux/sleep.c: Use CANCELLATION_P if defined before
3277         returning because seconds==0.  Add __builtin_expect.
3278
3279 2003-06-16  Ulrich Drepper  <drepper@redhat.com>
3280
3281         * sysdeps/unix/sysv/linux/i386/socket.S: Add unwind information.
3282
3283         * sysdeps/unix/sysv/linux/wait.c (__libc_wait): Fix type of result
3284         variable.
3285
3286 2003-06-16  Thorsten Kukuk  <kukuk@suse.de>
3287
3288         * include/libc-symbols.h: Add static_link_warning macro.
3289         * grp/initgroups.c: Print linker warning if this function
3290         is called in a static linked binary.
3291         * nss/getXXbyYY.c: Likewise.
3292         * nss/getXXbyYY_r.c: Likewise.
3293         * nss/getXXent.c: Likewise.
3294         * nss/getXXent_r.c: Likewise.
3295         * sysdeps/posix/getaddrinfo.c: Likewise.
3296
3297 2003-06-16  Bruno Haible  <bruno@clisp.org>
3298
3299         * iconvdata/gconv-modules (ISO-8859-15): Add aliases ISO_8859-15,
3300         LATIN-9.
3301         (ISO-8859-16): Add aliases ISO_8859-16:2001, ISO_8859-16.
3302         (IBM1047): Add alias IBM-1047.
3303         (GBK): Add aliases MS936, WINDOWS-936.
3304
3305 2003-06-16  Jakub Jelinek  <jakub@redhat.com>
3306
3307         * sysdeps/unix/sysv/linux/xstatconv.c (__xstat_conv): Define even if
3308         defined __ASSUME_STAT64_SYSCALL && defined XSTAT_IS_XSTAT64.
3309         (__xstat64_conv): Change xstat_conv to __xstat_conv.
3310
3311 2003-06-16  Ulrich Drepper  <drepper@redhat.com>
3312
3313         * locale/iso-639.def: Update from current official ISO 639.
3314
3315         * math/tgmath.h (__TGMATH_UNARY_IMAG_ONLY): Removed.
3316
3317 2003-06-15  Andreas Jaeger  <aj@suse.de>
3318
3319         * sysdeps/i386/fpu/feenablxcpt.c (feenableexcept): Correct setting
3320         of MXCSR.
3321         * sysdeps/i386/fpu/fedisblxcpt.c (fedisableexcept): Likewise.
3322         * sysdeps/i386/fpu/feholdexcpt.c (feholdexcept): Likewise.
3323         Reported by Arnaud Desitter <arnaud.desitter@geography.oxford.ac.uk>.
3324
3325         * math/tgmath.h (carg): Handle real arguments.
3326         (conj): Likewise.
3327         (cproj): Likewise.
3328         (cimag): Likewise.
3329         (creal): Likewise.
3330
3331         * math/Makefile (CFLAGS-test-tgmath-ret.c): New.
3332         (tests): Add test-tgmath-ret.
3333         * math/test-tgmath-ret.c: New file.
3334
3335         * math/tgmath.h (ilogb): Return always an int.
3336
3337 2003-06-16  Ulrich Drepper  <drepper@redhat.com>
3338
3339         * elf/rtld.c (dl_main): Use l_map_start not l_addr in Phdr
3340         computation so that prelinking works.
3341
3342 2003-06-15  Ulrich Drepper  <drepper@redhat.com>
3343
3344         * elf/dl-iteratephdr.c (__dl_iterate_phdr): Don't skip dynamic
3345         linker's map.
3346         * elf/rtld.c (dl_main): Initialize l_phdr and l_phnum of of the
3347         dynamic linker's map.
3348
3349         Fix cancellation point handling wrt exception based cleanup.
3350         * io/Makefile: Compile fcntl.c, poll.c, and lockf.c with exceptions.
3351         * misc/Makefile: Compile pselect.c, readv.c, writev.c, and usleep.c
3352         with exceptions.
3353         * posix/Makefile: Compile pread.c, pread64.c, pwrite.c, pwrite64.c,
3354         sleep.c, wait.c, waitid.c, and waitpid.c with exceptions.
3355         * rt/Makefile: Compile aio_suspend.c and clock_nanosleep.c with
3356         exceptions.
3357         * signal/Makefile: Compile sigpause.c, sigsuspend.c, sigtimedwait.c,
3358         sigwait.c, and sigwaitinfo.c with exceptions.
3359         * stdlib/Makefile: Compile system.c with exceptions.
3360         * sysvipc/Makefile: Compile msgrcv.c and msgsnd.c with exceptions.
3361         * termios/Makefile: Compile tcdrain.c with exceptions.
3362         * sysdeps/generic/lockf.c: Add comment explaining the cancellation
3363         situation.
3364         * sysdeps/generic/pselect.c: Likewise.
3365         * sysdeps/posix/sigpause.c: Likewise.
3366         * sysdeps/posix/system.c: Likewise.
3367         * sysdeps/posix/waitid.c: Likewise.
3368         * sysdeps/unix/sysv/linux/sleep.c: Likewise.
3369         * sysdeps/unix/sysv/linux/usleep.c: Likewise.
3370         * sysdeps/unix/sysv/linux/i386/sysdep.h: Major rewrite of
3371         INTERNAL_SYSCALL to not use push inside asm statement so that
3372         unwind info is correct around the syscall.
3373         * sysdeps/unix/clock_nanosleep.c: Add cancellation support.
3374         * sysdeps/unix/sysv/linux/clock_nanosleep.c: Likewise.
3375
3376 2003-06-15  Andreas Jaeger  <aj@suse.de>
3377
3378         * sysdeps/x86_64/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
3379         Add CFI directives.
3380
3381 2003-06-15  Guido Guenther  <agx@sigxcpu.org>
3382
3383         * sysdeps/unix/sysv/linux/mips/Makefile: Add missing endif and
3384         create $(objpfx).
3385
3386 2003-06-14  Ulrich Drepper  <drepper@redhat.com>
3387
3388         * sysdeps/unix/sysv/linux/check_pf.c (__check_pf): Use __close,
3389         not close.
3390
3391         * inet/inet6_option.c (inet6_option_alloc): Add libc_hidden_def.
3392         * include/netinet/in.h (inet6_option_alloc): Add libc_hidden_proto
3393         definition.
3394
3395         * inet/netinet/ip6.h (IP6OPT_PAD1, IP6OPT_PADN): Define.
3396         * inet/netinet/in.h: Add prototypes for inet6_option_* functions.
3397         * inet/Makefile (routines): Add inet6_option.
3398         * inet/inet6_option.c: New file.
3399         * inet/Versions [GLIBC_2.3.3] (libc): Add inet6_option_space,
3400         inet6_option_init, inet6_option_append, inet6_option_alloc,
3401         inet6_option_next, and inet6_option_find.
3402
3403 2003-06-13  Ulrich Drepper  <drepper@redhat.com>
3404
3405         * inet/netinet/ip6.h (struct ip6_ext): Define.
3406
3407         * sysdeps/unix/sysv/linux/sys/param.h (howmany): Optimize for gcc.
3408
3409         Fixing gcc 3.3 warnings, part II.
3410         * argp/argp-help.c (hol_entry_long_iterate): Always inline.
3411         * elf/dl-load.c (cache_rpath): Don't inline.
3412         * iconvdata/cns11642l2.h: Always inline all functions.
3413         * iconvdata/iso-ir-165.h: Likewise.
3414         * locale/Makefile (aux): Add coll-lookup.
3415         * locale/coll-lookup.c: New file.
3416         * locale/coll-lookup.h (collidx_table_lookup): Do not define here.
3417         (collseq_table_lookup): Likewise.
3418         * locale/weightwc.h: Adjust collidx_table_lookup calls for name change.
3419         * posix/fnmatch_loop.c: Adjust collseq_table_lookup calls for name
3420         change.
3421         * posix/regcomp.c: Likewise.
3422         * posix/regexec.c: Likewise.
3423         * locale/programs/3level.h (*_get): Always inline.
3424         * locale/programs/locfile.h: Move definition of handle_copy to...
3425         * locale/programs/locfile.c: ...here.
3426         * locale/programs/ld-collate.c (obstack_int32_grow): Always inline.
3427         (obstack_int32_grow_fast): Likewise.
3428         (utf8_encode): Likewise.
3429         (find_element): Avoid aliasing problems.
3430         (insert_value): Likewise.
3431         (collate_read): Likewise.
3432         * nss/getent.c (print_hosts): Don't inline
3433         (print_networks): Likewise.
3434         (print_shadow): Likewise.
3435         (build_doc): Likewise.
3436         * nss/nss_files/files-parse.c [ENTDATA] (parser_stclass): Don't
3437         inline.
3438         * posix/regcomp.c (re_set_fastmap): Always inline.
3439         (seek_collating_symbol_entry): Likewise.
3440         (lookup_collation_sequence_value): Likewise.
3441         (build_range_exp): Likewise.
3442         (build_collating_symbol): Likewise.
3443         * posix/regexec.c (acquire_init_state_context): Don't inline.
3444         (clean_state_log_if_need): Likewise.
3445         * resolv/res_send.c (eConsIovec): Rewrite to not return struct and
3446         adjust all callers.
3447         (evConsTime): Likewise.
3448         (evAddTime): Likewise.
3449         (evSubTime): Likewise.
3450         (evNowTime): Likewise.
3451         (evTimeSpec): Removed.
3452         (__libc_res_nsend): Avoid aliasing problem.
3453         * sysdeps/unix/sysv/linux/ifreq.h: Move old_siocgifconf definition to..
3454         * sysdeps/unix/sysv/linux/ifreq.c: ...here.
3455         * sysdeps/unix/sysv/linux/i386/dl-procinfo.h (_dl_string_hwcap):
3456         Always inline.
3457         (_dl_string_platform): Likewise.
3458         * wctype/wchar-lookup.h (wctype_table_lookup): Always inline.
3459         (wcwidth_table_lookup): Likewise.
3460         (wctrans_table_lookup): Likewise.
3461
3462         * sysdeps/unix/sysv/linux/sys/epoll.h: Include <stdint.h>.
3463
3464 2003-06-12  Ulrich Drepper  <drepper@redhat.com>
3465
3466         * wcsmbs/wchar.h: Define wint_t in std namespace, too [PR libc/5034].
3467
3468 2003-05-29  Jim Meyering  <jim@meyering.net>
3469
3470         * time/strftime.c (my_strftime) [!defined _NL_CURRENT
3471         && HAVE_STRFTIME]: Use underlying_strftime for %r.
3472         Suggested by Daniel Yacob <locales@geez.org>.
3473
3474 2003-06-12  Steven Munroe  <sjmunroe@us.ibm.com>
3475
3476         * sysdeps/powerpc/powerpc64/dl-machine.h (RTLD_START): Replace
3477         @got notation with @toc.
3478         * sysdeps/powerpc/powerpc64/sysdep.h (CALL_MCOUNT): Likewise.
3479         * sysdeps/unix/sysv/linux/powerpc/powerpc64/brk.S (__brk): Likewise.
3480
3481 2003-06-12  Ulrich Drepper  <drepper@redhat.com>
3482
3483         * sysdeps/posix/getaddrinfo.c (gaih_inet): Set no_inet6_date also
3484         if only PF_INET address is needed.
3485
3486         * nss/getXXbyYY_r.c: Make sure we always return a nonzero value in
3487         case of an error.
3488
3489         * scripts/config.guess: Update from upstream version.
3490         * scripts/config.sub: Likewise.
3491
3492 2003-06-12  Jakub Jelinek  <jakub@redhat.com>
3493
3494         * locale/programs/ld-time.c (time_output): Also copy the era format,
3495         not only the name.
3496
3497 2003-06-12  H.J. Lu  <hongjiu.lu@intel.com>
3498
3499         * posix/transbug.c (run_test): Return 1 for failure.
3500         (do_test): Compare only if run_test is successful.
3501
3502 2003-06-12  Simon Josefsson  <jas@extundo.com>
3503
3504         * argp/argp.h [!__THROW]: Define if undefined.
3505
3506 2003-06-12  Ulrich Drepper  <drepper@redhat.com>
3507
3508         * sysdeps/unix/sysv/linux/cris/sysdep.h: Fix handling of syscalls with
3509         more than four parameters.
3510         Patch by Uwe Reimann <libc-alpha@pulsar.homelinux.net>.
3511
3512 2003-06-12  Jakub Jelinek  <jakub@redhat.com>
3513
3514         * sysdeps/unix/sysv/linux/ia64/kernel_stat.h: New file.
3515         * sysdeps/unix/sysv/linux/s390/s390-64/kernel_stat.h: New file.
3516         * sysdeps/unix/sysv/linux/x86_64/kernel_stat.h: New file.
3517
3518         * stdio-common/printf-parsemb.c: Include stdlib.h and sys/param.h.
3519
3520 2003-06-12  Roland McGrath  <roland@redhat.com>
3521
3522         * Makerules ($(objpfx)stubs): Rewrite sed magic.
3523
3524 2003-02-28  Isamu Hasegawa  <isamu@yamato.ibm.com>
3525
3526         * posix/regcomp.c (parse_expression): Deliver translation to
3527         build_word_op, and build_charclass.
3528         (build_charclass): Apply translation for character classes too.
3529         (build_word_op): Deliver translation to build_charclass.
3530         * posix/transbug.c: New file.
3531         * posix/Makefile (tests): Add transbug.
3532
3533 2003-06-04  Paolo Bonzini  <bonzini@gnu.org>
3534
3535         * posix/regexec.c (group_nodes_into_DFAstates): Check for
3536         NEXT_ENDBUF_CONSTRAINT.  Move check for constraints which do a
3537         'continue' before the others.
3538
3539 2003-06-11  Ulrich Drepper  <drepper@redhat.com>
3540
3541         * dirent/scandir.c (SCANDIR): Reset errno after calling selector
3542         function [PR libc/5045].
3543
3544         * sysdeps/i386/bits/byteswap.h (__bswap_32): Use bswap instruction
3545         also for P4.
3546
3547         * time/tzfile.c: Add a couple of __builtin_expect.
3548
3549         Remove warnings gcc 3.3 shows.
3550         * argp/argp-help.c (hol_entry_short_iterate): Don't inline.
3551         * elf/dl-load.c (fillin_rpath): Likewise.
3552         (add_path): Likewise.
3553         * elf/dl-version.c (find_needed): Always inline.
3554         * elf/do-lookup.c (FCT): Don't inline.
3555         * iconv/Makefile: Extend vpath to intl subdir.
3556         (iconvconfig-modules): Add hash-string.
3557         * iconv/gconv_charset.h (strip): Don't inline.
3558         (upstr): Always inline.
3559         Move __gconv_compare_alias prototype to...
3560         * iconv/gconv_int.h: ...here.
3561         * iconv/gconv_db.c: Don't include gconv_charset.h.
3562         * iconv/gconv_conf.c (add_alias): Don't inline.
3563         (insert_module): Likewise.
3564         * iconv/gconv_simple.c (internal_ucs4_loop): Always inline.
3565         (internal_ucs4_loop_unaligned): Likewise.
3566         (internal_ucs4_loop_single): Likewise.
3567         (ucs4_internal_loop): Likewise.
3568         (ucs4_internal_loop_unaligned): Likewise.
3569         (ucs4_internal_loop_single): Likewise.
3570         (internal_ucs4le_loop): Always inline.
3571         (internal_ucs4le_loop_unaligned): Likewise.
3572         (internal_ucs4le_loop_single): Likewise.
3573         (ucs4le_internal_loop): Likewise.
3574         (ucs4le_internal_loop_unaligned): Likewise.
3575         (ucs4le_internal_loop_single): Likewise.
3576         * iconv/loop.c: Always inline the defined functions.
3577         * iconvdata/cns11642.h: Likewise.
3578         * iconvdata/cns11642l1.h: Likewise.
3579         * iconvdata/euc-kr.c: Likewise.
3580         * iconvdata/gb2312.h: Likewise.
3581         * iconvdata/jis0201.h: Likewise.
3582         * iconvdata/jis0208.h: Likewise.
3583         * iconvdata/jis0212.h: Likewise.
3584         * iconvdata/jisx0213.h: Likewise.
3585         * iconvdata/ksc5601.h: Likewise.
3586         * iconvdata/utf-7.c (base64): Don't inline.
3587         * include/libc-symbols.h (symbol_set_first_element): Add cast
3588         (symbol_set_end_p): Likewise.
3589         * include/set-hooks (RUN_HOOK): Likewise.
3590         * inet/Makefile (aux): Add ifreq.
3591         * intl/Makefile (aux): Add some entries from routines.  Add
3592         hash-string.
3593         * intl/hash-string.c: New file.
3594         * intl/hash-string.h: Remove hash_string definition.  Declare
3595         __hash_string.
3596         * iconv/gconv_cache.c (find_module_idx): Adjust hash_string caller.
3597         * iconv/iconvconfig.c (new_name): Likewise.
3598         * intl/dcigettext.c (_nl_find_msg): Likewise.
3599         * intl/loadmsgcat.c (_nl_load_domain): Likewise.
3600         * io/ftw.c (open_dir_stream): Always inline.
3601         (process_entry): Don't inline.
3602         * locale/findlocale.c: Include gconv_int.h.
3603         * locale/setlocale.c (new_composite_name): Don't inline.
3604         * locale/weight.h (findidx): Always inline.
3605         * locale/weightwc.h (findidx): Likewise.
3606         * locale/programs/linereader.c (lr_ignore_rest): Define here.
3607         * locale/programs/linereader.h (lr_ignore_rest): Don't define here,
3608         just declare it.
3609         (lr_getc): Always inline.
3610         (lr_ungetc): Likewise.
3611         * nss/nss_files/files-parse.c (parse_list): Likewise.
3612         * stdio-common/Makefile (aux): Add printf-parsemb and
3613         printf-parsewc.
3614         * stdio-common/_itoa.h (_itoa_word): Always inline.
3615         (_fitoa_word, _fitoa): Don't define here, only declare.
3616         * stdio-common/_itoa.c (_iftoa_word): Add here.
3617         (_fitoa): Likewise.
3618         * stdio-common/_itowa.h (_itowa_word): Always inline.
3619         * stdio-common/printf-parse.h (read_int): Don't inline.
3620         (find_spec): Don't define.
3621         Declare __find_specmb and __find_specwc.
3622         (parse_one_spec): Don't define.
3623         Declare __parse_one_specmb and __parse_one_specwc.
3624         * stdio-common/printf-parsemb.c: New file.
3625         * stdio-common/printf-parsewc.c: New file.
3626         * stdio-common/vfprintf.c: Update calls to find_spec and
3627         parse_one_spec for new names.
3628         * stdio-common/printf-prs.c: Likewise.  Define DONT_NEED_READ_INT.
3629         * stdlib/Makefile (aux): Add grouping and groupingwc.
3630         * stdlib/grouping.c: New file.
3631         * stdlib/groupingwc.c: New file.
3632         * stdlib/grouping.h (correctly_grouped_prefix): Don't define here.
3633         Just prototype.
3634         * stdlib/rpmatch.c (try): Don't inline.
3635         * stdlib/strtod.c (round_and_return): Don't line.
3636         (str_to_mpn): Likewise.
3637         (__mpn_lshift_1): Always inline.  Optimize only for constant count.
3638         Adjust for name change of correctly_grouped_prefix.
3639         * sysdeps/generic/strtol.c: Adjust for name change of
3640         correctly_grouped_prefix.
3641         * string/strxfrm.c (utf8_encode): Don't inline.
3642         * sysdeps/generic/dl-cache.c: Define _dl_cache_libcmp.
3643         * sysdeps/generic/dl-cache.h: Just declare _dl_cache_libcmp.
3644         * sysdeps/generic/ifreq.c: New file.
3645         * sysdeps/unix/sysv/linux/ifreq.c: New file.
3646         * sysdeps/generic/ifreq.h (__ifreq): Only declare here.
3647         * sysdeps/unix/sysv/linux/ifreq.h: Likewise.
3648         * sysdeps/generic/ldsodefs.h (_dl_name_match_p): Always inline.
3649         * sysdeps/generic/unwind-dw2-fde.c (start_fde_sort): Don't inline.
3650         (fde_split): Likewise.
3651         (fde_merge): Likewise.
3652         (end_fde_sort): Likewise.
3653         (init_object): Likewise.
3654         (binary_search_unencoded_fdes): Likewise.
3655         (binary_search_single_encoding_fdes): Likewise.
3656         (binary_search_mixed_encoding_fdes): Likewise.
3657         * sysdeps/generic/wordexp.c (w_addchar): Don't inline.
3658         * sysdeps/i386/dl-machine.c (elf_machine_runtime_setup): Always inline.
3659         * sysdeps/posix/sprofil.c (profil_count): Don't inline.
3660         * sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines):
3661         Add xstatconv.
3662         * sysdeps/unix/sysv/linux/xstatconv.h: New file.
3663         * sysdeps/unix/sysv/linux/xstatconv.c: Don't inline the function.
3664         Export them.  Prepend __ to name.
3665         * sysdeps/unix/sysv/linux/Dist: Add xstatconv.h.
3666         * sysdeps/unix/sysv/linux/fxstat.c: Adjust for name change of
3667         conversion functions.
3668         * sysdeps/unix/sysv/linux/fxstat64.c: Likewise.
3669         * sysdeps/unix/sysv/linux/lxstat.c: Likewise.
3670         * sysdeps/unix/sysv/linux/lxstat64.c: Likewise.
3671         * sysdeps/unix/sysv/linux/xstat.c: Likewise.
3672         * sysdeps/unix/sysv/linux/xstat64.c: Likewise.
3673         * sysdeps/unix/sysv/linux/i386/fxstat.c: Likewise.
3674         * sysdeps/unix/sysv/linux/i386/lxstat.c: Likewise.
3675         * sysdeps/unix/sysv/linux/i386/xstat.c: Likewise.
3676         * sysdeps/unix/sysv/linux/pathconf.c (__statfs_link_max,
3677         __statfs_filesize_max, __statfs_symlinks): Define here.  __ prepended
3678         to name.  Change callers.
3679         * sysdeps/unix/sysv/linux/pathconf.h (__statfs_link_max,
3680         __statfs_filesize_max, __statfs_symlinks): Don't define here, just
3681         declare.
3682         * sysdeps/unix/sysv/linux/fpathconf.c: Change all callers.
3683         * time/tzfile.c (decode): Always inline.
3684         * wcsmbs/wcsnrtombs.c: Change type of inbuf to unsigned char*.
3685         Remove cast in tomb function call.
3686         * wcsmbs/wcsrtombs.c Likewise.
3687         * wcsmbs/wcstob.c: Introduce new temp variable to take pointer in
3688         tomb function call.
3689
3690 2003-06-10  Ulrich Drepper  <drepper@redhat.com>
3691
3692         * po/zh_CN.po: Update from translation team.
3693
3694 2003-06-10  Jakub Jelinek  <jakub@redhat.com>
3695
3696         * sysdeps/unix/sysv/linux/bits/in.h (IPV6_V6ONLY, IPV6_JOIN_ANYCAST,
3697         IPV6_LEAVE_ANYCAST, IPV6_IPSEC_POLICY, IPV6_XFRM_POLICY): Define.
3698
3699 2003-06-10  Ulrich Drepper  <drepper@redhat.com>
3700
3701         * inet/Makefile (aux): Add check_pf.
3702         * include/ifaddrs.h: Add prototype for __check_pf.
3703         * sysdeps/generic/check_pf.c: New file.
3704         * sysdeps/unix/sysv/linux/check_pf.c: New file.
3705         * sysdeps/unix/sysv/linux/ifaddrs.h (__no_netlink_support): Renamed
3706         from no_netlink_support.  Export.
3707         * sysdeps/posix/getaddrinfo.c (getaddrinfo): Don't call getifaddrs,
3708         call __check_pf.
3709
3710         * sysdeps/generic/ifaddrs.h: Add libc_hidden_def.
3711
3712         * sysdeps/posix/getaddrinfo.c (getaddrinfo): Don't leak memory
3713         from getifaddr calls.
3714
3715 2003-06-09  Jakub Jelinek  <jakub@redhat.com>
3716
3717         * sysdeps/unix/sysv/linux/kernel-features.h
3718         (__ASSUME_SETRESGID_SYSCALL): Define.
3719         * sysdeps/unix/sysv/linux/setegid.c: Use __ASSUME_SETRESGID_SYSCALL
3720         instead of __ASSUME_SETRESUID_SYSCALL.
3721         (setegid): Only use setresgid32 inline syscall if __NR_setresgid32 is
3722         defined.
3723         * sysdeps/unix/sysv/linux/seteuid.c (seteuid): Only use setresgid32
3724         inline syscall if __NR_setresuid32 is defined.
3725         * sysdeps/unix/sysv/linux/i386/setegid.c (setegid): Use
3726         __ASSUME_SETRESGID_SYSCALL instead of __ASSUME_SETRESUID_SYSCALL.
3727         * sysdeps/unix/sysv/linux/i386/setregid.c: Backout last changes.
3728         * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise.
3729         * sysdeps/unix/sysv/linux/sparc/sparc32/setegid.c (setegid): Protect
3730         code handling non-existant setresgid32 syscall with
3731         #if __ASSUME_SETRESGID_SYSCALL == 0.
3732
3733 2003-06-09  Andreas Schwab  <schwab@suse.de>
3734
3735         * sunrpc/Makefile (generated): Remove rpc-proto.c, rpc-proto.d.
3736         ($(rpcsvc:%.x=$(objpfx)x%$o)): Don't depend on
3737         $(objpfx)rpc-proto.d.
3738         (rpcsvc-dt-files, rpcsvc-depfiles): Define.  Include
3739         $(rpcsvc-depfiles) instead of $(objpfx)rpc-proto.d.
3740         ($(objpfx)rpc-proto.d, $(objpfx)rpc-proto.c): Remove rules.
3741
3742 2003-06-08  Ulrich Drepper  <drepper@redhat.com>
3743
3744         * sysdeps/unix/sysv/linux/seteuid.c (seteuid): Use setresuid32
3745         syscall directly if possible.  If __ASSUME_SETRESUID_SYSCALL is
3746         defined drop compatibility code.
3747         * sysdeps/unix/sysv/linux/setegid.c (setegid): Use setresgid32
3748         syscall directly if possible.  If __ASSUME_SETRESUID_SYSCALL is
3749         defined drop compatibility code.
3750         * sysdeps/unix/sysv/linux/i386/seteuid.c (seteuid): Use
3751         setresuid32 syscall directly if possible.
3752         * sysdeps/unix/sysv/linux/i386/setegid.c (setegid): Use
3753         setresgid32 syscall directly if possible.
3754         * sysdeps/unix/sysv/linux/i386/setregid.c (__setregid): Make POSIX
3755         compliant.  Don't change sgid.
3756         * sysdeps/unix/sysv/linux/i386/setreuid.c (__setreuid): Make POSIX
3757         compliant.  Don't change suid.
3758
3759         * config.h.in: Add have-forced-unwind.
3760         * configure.in: Add AC_SUBST(libc_cv_forced_unwind).
3761
3762 2003-06-07  Ulrich Drepper  <drepper@redhat.com>
3763
3764         * test-skeleton.c (main): If EXPECTED_STATUS is defined check that
3765         returned status from child matches.
3766
3767         * Makeconfig (gnulib): Add -lgcc_eh once again.
3768
3769 2003-06-06  Ulrich Drepper  <drepper@redhat.com>
3770
3771         * test-skeleton.c (main): Use TEMP_FAILURE_RETRY with waitpid.
3772
3773         * sysdeps/unix/sysv/linux/i386/sysdep.h (ASMFMT_2): Only allow
3774         %edx for first parameter.  This means no pushl and therefore the
3775         unwind info isn't screwed up.
3776
3777 2003-06-04  Richard Henderson  <rth@redhat.com>
3778
3779         * sysdeps/alpha/dl-machine.h (RTLD_START): Fix top-of-stack backtrace.
3780         * sysdeps/unix/sysv/linux/alpha/clone.S: Likewise.
3781         * sysdeps/alpha/elf/start.S: Likewise.  Remove pointless allocation.
3782         * sysdeps/unix/sysv/linux/alpha/rt_sigaction.S: Use standard ldgp
3783         entry sequence and explicit relocs.  Add unwind info for sigreturn
3784         and rt_sigreturn.
3785         * configure.in (libc_cv_asm_cfi_directives): Test .cfi_remember_state.
3786
3787         * sysdeps/unix/sysv/linux/alpha/syscalls.list (semtimedop): New.
3788         Annotate some parameters.
3789         * sysdeps/unix/sysv/linux/alpha/sysdep.h (__NR_semtimedop): New.
3790
3791         * sysdeps/unix/sysv/linux/alpha/gettimeofday.S: Fix typo in conversion.
3792
3793         * include/libc-symbols.h (symbol_set_declare): Use arrays
3794         of unspecified size.
3795
3796 2003-06-04  Jakub Jelinek  <jakub@redhat.com>
3797
3798         * config.make.in (ASFLAGS-config): New.
3799         * Makeconfig (ASFLAGS): Append $(ASFLAGS-config).
3800         * configure.in (libc_cv_as_noexecstack): New check.
3801         (ASFLAGS_config): Substitute.
3802
3803 2003-06-04  Jakub Jelinek  <jakub@redhat.com>
3804
3805         * sysdeps/i386/fpu/bits/mathinline.h (log1p, asinh, acosh, atanh,
3806         hypot, logb): Protect with #ifdef __FAST_MATH__.
3807
3808 2003-06-04  Thorsten Kukuk  <kukuk@suse.de>
3809
3810         * sysdeps/i386/fpu/bits/mathinline.h (ldexpf, ldexpl): Protect with
3811         #ifdef __FAST_MATH__.
3812
3813 2003-06-03  Ulrich Drepper  <drepper@redhat.com>
3814
3815         * sysdeps/generic/glob.c [HAVE_D_TYPE] (glob_in_dir): Also allow
3816         DT_LNK entries if GLOB_ONLYDIR is set [PR libc/5043].
3817         * posix/globtest.sh: Adjust for this change.
3818
3819         * sysdeps/unix/sysv/linux/ifaddrs.c (netlink_open): Call getsockname
3820         to get the actual PID value used in the records passed up.
3821         (getifaddrs): Don't initialize nh.pid here.
3822
3823 2003-06-02  Ulrich Drepper  <drepper@redhat.com>
3824
3825         * sysdeps/unix/sysv/linux/ifaddrs.c (netlink_receive): Minor
3826         optimization.
3827
3828         * po/zh_CN.po: Update from translation team.
3829
3830         * posix/getconf.c (main): Also recognize names without the
3831         _POSIX_ prefix.
3832
3833         * elf/Makefile (CFLAGS-dl-lookup.c): Define.
3834
3835 2003-06-02  Bernd Schmidt  <bernds@redhat.com>
3836
3837         * sysdeps/i386/fpu/bits/mathinline.h (sqrt, __sqrtl, ldexp,
3838         ldexpf, ldexpl): Only define if __FAST_MATH__.
3839
3840 2003-06-02  Richard C. Bilson  <rcbilson@plg.uwaterloo.ca>
3841
3842         Replace hard-coded offsets into struct sigcontext with generated file.
3843         * sysdeps/unix/sysv/linux/ia64/sigcontext-offsets.sym: New file.
3844         * sysdeps/unix/sysv/linux/ia64/Makefile
3845         [$(subdir) = stdlib] (gen-as-const-headers): Add it.
3846         * sysdeps/unix/sysv/linux/ia64/ucontext_i.h: Include it instead of
3847         defining SC_* macros here.
3848
3849 2003-06-02  Jakub Jelinek  <jakub@redhat.com>
3850
3851         * sysdeps/unix/sysv/linux/bits/sched.h (CLONE_PID): Remove.
3852
3853 2003-06-01  Jakub Jelinek  <jakub@redhat.com>
3854
3855         * sysdeps/i386/dl-machine.h: Include <sysdep.h>.
3856
3857 2003-06-01  Ulrich Drepper  <drepper@redhat.com>
3858
3859         * test-skeleton.c (main): Request getopt to not reorder the
3860         command line.
3861
3862         * elf/Makefile (CFLAGS-dl-runtime.c): Define.
3863
3864         * wcsmbs/wcpncpy.c (__wcpncpy): Fix broken implementation to match
3865         stpncpy.
3866
3867 2003-05-31  Ulrich Drepper  <drepper@redhat.com>
3868
3869         * sysdeps/unix/sysv/linux/ia64/bits/sigaction.h (SA_NOCLDWAIT): Define.
3870
3871 2003-05-31  Jakub Jelinek  <jakub@redhat.com>
3872
3873         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_plt_conflict):
3874         New function.
3875         (elf_machine_rela) <case R_PPC64_JMP_SLOT>: Avoid
3876         RESOLVE_CONFLICT_FIND_MAP.  If RESOLVE_CONFLICT_FIND_MAP is defined,
3877         call elf_machine_plt_conflict instead of elf_machine_fixup_plt.
3878
3879 2003-05-31  Ulrich Drepper  <drepper@redhat.com>
3880
3881         * sysdeps/i386/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE): Add
3882         CFI directives.
3883
3884         * csu/Makefile: Fix Makefile warnings regarding Scrt1.o.
3885
3886         * libio/fileops.c (_IO_file_open): Don't mark as inline.
3887
3888         * sysdeps/ia64/elf/initfini.c (gmon_initializer): Mark with
3889         attribute used.
3890
3891 2003-05-30  Ulrich Drepper  <drepper@redhat.com>
3892
3893         * scripts/config.guess: Update from master copy.
3894         * scripts/config.sub: Likewise.
3895
3896 2003-05-30  Guido Guenther  <agx@sigxcpu.org>
3897
3898         * sysdeps/mips/mips64/bsd-_setjmp.S: Include <sys/asm.h> for
3899         SETUP_GP64 and friends.
3900         * sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h: Fix register
3901         names in internal_syscall{6,7}.
3902         * sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h: Likewise.
3903         * sysdeps/unix/sysv/linux/mips/pread.c [_MIPS_SIM == _ABI64]: Fix
3904         number of syscall arguments.
3905         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
3906         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
3907         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
3908
3909 2003-05-30  Andreas Jaeger  <aj@suse.de>
3910
3911         * sysdeps/x86_64/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
3912         Add CFI directives.
3913
3914         * sysdeps/unix/sysv/linux/x86_64/sigaction.c (RESTORE2): Add CFI
3915         directives.
3916
3917         * sysdeps/generic/sysdep.h: Add CFI_* macros for C files.
3918
3919         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
3920         Add CFI directives.
3921
3922 2003-05-30  Jakub Jelinek  <jakub@redhat.com>
3923
3924         * sysdeps/powerpc/powerpc32/elf/start.S: Make code compilable with
3925         SHARED.
3926
3927 2003-05-11  Andreas Schwab  <schwab@suse.de>
3928
3929         * Makerules: Always use -MP together with -MD.
3930         (sed-remove-dotot): Substitute $(..) also at start of line.
3931         ($(stdio_lim:h=st)): Use -MD instead of SUNPRO_DEPENDENCIES.
3932         Generated defines with a single compiler call.
3933         Use $(sed-remove-dotdot).
3934         * mach/Makefile ($(objpfx)mach-syscalls.mk): Use -MD instead
3935         of DEPENDENCIES_OUTPUT, and use $(sed-remove-objpfx).
3936         * sysdeps/unix/sysv/linux/Makefile ($(objpfx)syscall-%.h):
3937         Use -MD instead of SUNPRO_DEPENDENCIES, and use $(sed-remove-objpfx).
3938         * sysdeps/unix/sysv/linux/mips/Makefile
3939         ($(objpfx)syscall-%.h): Likewise.
3940
3941 2003-05-28  Roland McGrath  <roland@redhat.com>
3942
3943         * malloc/malloc.h [! __GNUC__] (__const): Define if undefined.
3944
3945 2003-05-26  Aldy Hernandez  <aldyh@redhat.com>
3946
3947         * soft-fp/soft-fp.h (FP_EX_UNDERFLOW): Define to 0.
3948
3949 2003-05-28  Roland McGrath  <roland@redhat.com>
3950
3951         * sysdeps/unix/sysv/linux/ia64/setcontext.S: Pass fourth argument to
3952         rt_sigprocmask system call.
3953         * sysdeps/unix/sysv/linux/ia64/ucontext_i.h (SC_MASK): Fix value.
3954         From Peter A. Buhr <pabuhr@plg2.math.uwaterloo.ca>.
3955
3956 2003-05-28  Ulrich Drepper  <drepper@redhat.com>
3957
3958         * include/libc-symbols.h: Define hidden attribute for real also if
3959         LIBC_NONSHARED is defined.  Patch by Jakub Jelinek.
3960
3961         * csu/Makefile: Add rules to build Scrt1.o.
3962         * sysdeps/i386/elf/start.S: Make code compilable with SHARED.
3963         * sysdeps/x86_64/elf/start.S: Likewise.
3964
3965 2003-05-27  Jakub Jelinek  <jakub@redhat.com>
3966
3967         * stdio-common/vfprintf.c (process_arg, process_string_arg): Use
3968         pa_int/pa_u_int instead of pa_short_int, pa_u_short_int and pa_char.
3969         * stdio-common/printf-parse.h (union printf_arg): Remove pa_char,
3970         pa_short_int, pa_u_short_int and pa_float.
3971
3972 2003-05-26  Jakub Jelinek  <jakub@redhat.com>
3973
3974         * libio/strops.c (_IO_str_init_static): Change into a wrapper around
3975         _IO_str_init_static_internal.
3976         (_IO_str_init_static_internal): Moved from _IO_str_init_static,
3977         change size argument to _IO_size_t, don't limit sprintf to 64M.
3978         (_IO_str_init_readonly): Call _IO_str_init_static_internal.
3979         * libio/wstrops.c (_IO_wstr_init_static): Change size argument to
3980         _IO_size_t, don't limit swprintf to 256M.
3981         (_IO_wstr_init_readonly): Remove.
3982         * libio/libioP.h (_IO_str_init_static_internal, _IO_wstr_init_static):
3983         Adjust prototypes.
3984         (_IO_wstr_init_readonly): Remove prototype.
3985         * libio/iovsprintf.c (_IO_vsprintf): Use
3986         _IO_str_init_static_internal instead of INTUSE(_IO_str_init_static).
3987         * libio/iovsscanf.c (_IO_vsscanf): Likewise.
3988         * libio/memstream.c (open_memstream): Likewise.
3989         * libio/obprintf.c (_IO_obstack_vfprintf): Likewise.
3990         * libio/vasprintf.c (_IO_vasprintf): Likewise.
3991         * libio/vsnprintf.c (_IO_vsnprintf): Likewise.
3992         * stdio-common/tst-sprintf.c (main): Add new test.
3993
3994 2003-05-26  Ulrich Drepper  <drepper@redhat.com>
3995
3996         * stdio-common/vfprintf.c (vfprintf): Be bug-compatible with some
3997         other implementation in respect of multiple uses of parameter with
3998         different types.
3999
4000 2003-05-25  Ulrich Drepper  <drepper@redhat.com>
4001
4002         * sysdeps/unix/sysv/linux/kernel-features.h: Define
4003         __ASSUME_FUTEX_REQUEUE for >= 2.5.70.
4004
4005 2003-05-22  Andreas Jaeger  <aj@suse.de>
4006
4007         * sysdeps/unix/sysv/linux/x86_64/gettimeofday.S: Add CFI
4008         directives.
4009         * sysdeps/unix/sysv/linux/x86_64/time.S: Likewise.
4010         * sysdeps/x86_64/strtok.S: Likewise.
4011
4012 2003-05-20  Guido Guenther  <agx@sigxcpu.org>
4013
4014         * sysdeps/unix/sysv/linux/mips/bits/siginfo.h: Change SI_ASYNCNL
4015         to -60 and define SI_TKILL.
4016
4017 2003-05-21  H.J. Lu  <hongjiu.lu@intel.com>
4018
4019         * math/test-fenv.c (feexcp_nomask_test): Fix comment.
4020         (feexcp_mask_test): Likewise.
4021
4022 2003-05-21  Ulrich Drepper  <drepper@redhat.com>
4023
4024         * locale/programs/locale.c (main): Fix typo in last patch.
4025
4026         * csu/elf-init.c: Mark __preinit_array_start, __preinit_array_end,
4027         __init_array_start, __init_array_end, __fini_array_start, and
4028         __fini_array_end as hidden.
4029
4030 2003-05-21  Petter Reinholdtsen  <pere@hungry.com>
4031
4032         * locale/programs/locale.c (main): Report an error if setlocale()
4033         fails [PR libc/2254].
4034
4035 2003-05-21  Jakub Jelinek  <jakub@redhat.com>
4036
4037         * sysdeps/unix/sysv/linux/s390/system.c: New file.
4038
4039 2003-05-21  Jakub Jelinek  <jakub@redhat.com>
4040
4041         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (LOADARGS_0,
4042         LOADARGS_1, LOADARGS_2, LOADARGS_3, LOADARGS_4, LOADARGS_5,
4043         LOADARGS_6): Don't error if syscall argument is a string literal.
4044         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h (LOADARGS_0,
4045         LOADARGS_1, LOADARGS_2, LOADARGS_3, LOADARGS_4, LOADARGS_5,
4046         LOADARGS_6): Likewise.
4047
4048 2003-05-21  Andreas Jaeger  <aj@suse.de>
4049
4050         * sysdeps/generic/sysdep.h (cfi_offset, cfi_startproc,
4051         cfi_endproc, cfi_def_cfa, cfi_def_ccfa_register,
4052         cfi_def_cfa_offset, cfi_adjust_cfa_offset, cfi_offset): Define.
4053
4054         * sysdeps/x86_64/sysdep.h (CALL_MCOUNT): Add cfi directives.
4055         (ENTRY): Likewise.
4056         (END): Likewise.
4057
4058         * configure.in: Test for asm cfi directives.
4059
4060         * config.h.in: Add HAVE_ASM_CFI_DIRECTIVES.
4061
4062 2003-05-17  Andreas Jaeger  <aj@suse.de>
4063
4064         * sysdeps/unix/sysv/linux/x86_64/syscall.S: Revert last patch.
4065
4066         * rt/tst-clock_nanosleep.c: Include <time.h> for clock_nanosleep.
4067
4068 2003-05-16  Ulrich Drepper  <drepper@redhat.com>
4069
4070         * rt/Makefile (tests): Add tst-clock_nanosleep.
4071         * rt/tst-clock_nanosleep.c: New file.
4072         * posix/Makefile (tests): Add tst-nanosleep.
4073         * posix/tst-nanosleep.c: New file.
4074
4075         * sysdeps/unix/clock_nanosleep.c (CPUCLOCK_P): Fix definition.
4076
4077         * include/features.h (__USE_XOPEN2K): Define also for
4078         _POSIX_C_SOURCE>=200112L.
4079
4080         * sysdeps/unix/sysv/linux/sigwaitinfo.c (do_sigwaitinfo): Fold
4081         SI_TKILL code into SI_USER.
4082         * sysdeps/unix/sysv/linux/sigtimedwait.c (do_sigtimedwait): Likewise.
4083
4084         * sysdeps/posix/sigpause.c (do_sigpause): Use sigdelset after all.
4085
4086 2003-05-15  Jakub Jelinek  <jakub@redhat.com>
4087
4088         * sysdeps/powerpc/powerpc32/dl-machine.c (_dl_reloc_overflow):
4089         Remove sym argument, always use refsym.
4090         (__process_machine_rela): Adjust callers.
4091         * sysdeps/powerpc/powerpc64/dl-machine.c (_dl_reloc_overflow):
4092         Likewise.
4093         * sysdeps/powerpc/powerpc32/dl-machine.h (_dl_reloc_overflow):
4094         Adjust prototype.
4095         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela): Likewise.
4096
4097 2003-05-15  Ulrich Drepper  <drepper@redhat.com>
4098
4099         * sysdeps/generic/dl-sysdep.c (_dl_show_auxv): Fix typo
4100         (DL_NEED_SYSINFO -> NEED_DL_SYSINFO).  If aux value is not known
4101         print numeric values.
4102
4103 2003-05-12  Thorsten Kukuk  <kukuk@suse.de>
4104
4105         * inet/netinet/igmp.h: Sync with Linux Kernel 2.5.69 and *BSD.
4106
4107 2003-05-14  Andreas Schwab  <schwab@suse.de>
4108
4109         * sysdeps/unix/sysv/linux/ia64/umount.c: New file.
4110
4111 2003-05-14  Jakub Jelinek  <jakub@redhat.com>
4112
4113         * elf/rtld.c (dl_main): For LD_TRACE_PRELINKING print search scope
4114         even if no DT_NEEDED is present.
4115
4116 2003-05-13  David Mosberger  <davidm@hpl.hp.com>
4117
4118         * sysdeps/unix/sysv/linux/ia64/setjmp.S: Fix the fix from
4119         2003-03-27: setjmp is NOT a leaf-routine (due to the call to
4120         __sigjmp_save) so we can't keep the saved unat value in a scratch
4121         register (r16).  Use loc2 instead.
4122
4123 2003-05-13  Ulrich Drepper  <drepper@redhat.com>
4124
4125         * csu/Makefile: Do compile elf-init with PIC flag since in dynamic
4126         binaries it has to be relocatable.
4127
4128         * sysdeps/unix/sysv/linux/waitpid.c: Use waitpid syscall is available.
4129
4130 2003-05-12  Steven Munroe  <sjmunroe@us.ibm.com>
4131
4132         * sysdeps/powerpc/bits/atomic.h
4133         (__arch_compare_and_exchange_bool_8_rel): Define.
4134         (__arch_compare_and_exchange_bool_16_rel): Define.
4135         (__ARCH_REL_INSTR): Define if not already defined.
4136         (__arch_atomic_exchange_and_add_32): Add "memory" to clobber list.
4137         (__arch_atomic_decrement_if_positive_32):
4138         Add "memory" to clobber list.
4139         (__arch_compare_and_exchange_val_32_acq): Remove release sync.
4140         (__arch_compare_and_exchange_val_32_rel): Define.
4141         (__arch_atomic_exchange_32): Remove.
4142         (__arch_atomic_exchange_32_acq): Define.
4143         (__arch_atomic_exchange_32_rel): Define.
4144         (atomic_compare_and_exchange_val_rel): Define.
4145         (atomic_exchange_acq): Use __arch_atomic_exchange_*_acq forms.
4146         (atomic_exchange_rel): Define.
4147         * sysdeps/powerpc/powerpc32/bits/atomic.h
4148         (__arch_compare_and_exchange_bool_32_acq): Remove release sync.
4149         (__arch_compare_and_exchange_bool_32_rel): Define.
4150         (__arch_compare_and_exchange_bool_64_rel): Define.
4151         (__arch_compare_and_exchange_val_64_rel): Define.
4152         (__arch_atomic_exchange_64): Remove.
4153         (__arch_atomic_exchange_64_acq): Define.
4154         (__arch_atomic_exchange_64_rel): Define.
4155         * sysdeps/powerpc/powerpc64/bits/atomic.h
4156         (__arch_compare_and_exchange_bool_32_rel): Define.
4157         (__arch_compare_and_exchange_bool_64_acq): Remove release sync.
4158         (__arch_compare_and_exchange_bool_64_rel): Define.
4159         (__arch_compare_and_exchange_val_64_acq): Remove release sync.
4160         (__arch_compare_and_exchange_val_64_rel): Define.
4161         (__arch_atomic_exchange_64): Remove.
4162         (__arch_atomic_exchange_64_acq): Define.
4163         (__arch_atomic_exchange_64_rel): Define.
4164         (__arch_atomic_exchange_and_add_64): Add "memory" to clobber list.
4165         (__arch_atomic_decrement_if_positive_64):
4166         Add "memory" to clobber list.
4167         [!UP](__ARCH_REL_INSTR): Define as lwsync.
4168
4169 2003-05-11  Andreas Schwab  <schwab@suse.de>
4170
4171         * io/Makefile ($(objpfx)ftwtest.out): Use absolute file names.
4172
4173 2003-05-11  Ulrich Drepper  <drepper@redhat.com>
4174
4175         * time/tst-strftime.c (do_test): Add tests for - flag.
4176
4177 2003-05-11  Jim Meyering  <jim@meyering.net>
4178
4179         * time/strftime.c (my_strftime): Let the `-' (no-pad) flag affect
4180         the space-padded-by-default conversion specifiers, %e, %k, %l.
4181
4182 2003-05-11  Andreas Schwab  <schwab@suse.de>
4183
4184         * sysdeps/generic/sched_setaffinity.c: Fix parameter name.
4185
4186 2003-05-10  Ulrich Drepper  <drepper@redhat.com>
4187
4188         * sysdeps/generic/bits/sched.h: Define cpu_set_t only if not
4189         already defined and when really needed.
4190         * sysdeps/unix/sysv/linux/bits/sched.h: Likewise.
4191
4192 2003-05-09  Thorsten Kukuk  <kukuk@suse.de>
4193
4194         * sysdeps/unix/sysv/linux/netinet/igmp.h: Don't include kernel
4195         headers, add defines from kernel header, move it from here...
4196         * inet/netinet/igmp.h: ... to here.
4197         * inet/Makefile (headers): Add netinet/igmp.h.
4198         * sysdeps/unix/sysv/linux/Makefile: Remove netinet/igmp.h.
4199         * sysdeps/unix/sysv/linux/Dist: Remove netinet/igmp.h.
4200
4201 2003-05-10  Ulrich Drepper  <drepper@redhat.com>
4202
4203         * sysdeps/pthread/lio_listio64.c (lio_listio64): If SIG == NULL,
4204         use dummy sigevent structure with SIGEV_NONE [PR libc/5015].
4205
4206 2003-05-09  Thorsten Kukuk <kukuk@suse.de>
4207
4208         * libio/bits/stdio.h: Sync prototypes with libio/stdio.h
4209         (remove __THROW from possible cancellation points).
4210
4211 2003-05-10  Ulrich Drepper  <drepper@redhat.com>
4212
4213         * posix/sched.h (CPU_SETSIZE): Define.
4214
4215 2003-05-09  Ulrich Drepper  <drepper@redhat.com>
4216
4217         * Makeconfig (gnulib): Remove -lgcc_eh again.
4218
4219         * posix/sched.h: Change prototypes of sched_getaffinity and
4220         sched_setaffinity.  Define CPU_SET, CPU_CLR, CPU_ISSET, and CPU_ZERO.
4221         * sysdeps/generic/sched_getaffinity.c: Adjust definition.
4222         * sysdeps/generic/sched_setaffinity.c: Likewise.
4223         * sysdeps/generic/bits/sched.h: Define __CPU_SETSIZE, __NCPUBITS,
4224         __CPUELT, __CPUMASK, cpu_set_t, __cpu_mask, __CPU_ZERO, __CPU_SET,
4225         __CPU_CLR, and __CPU_ISSET.
4226         * sysdeps/unix/sysv/linux/bits/sched.h: Likewise.
4227         * sysdeps/unix/sysv/linux/sched_getaffinity.c: New file.
4228         * sysdeps/unix/sysv/linux/sched_setaffinity.c: New file.
4229
4230         * include/atomic.h (atomic_exchange_acq): Renamed from atomic_exchange.
4231         (atomic_exchange_rel): New #define.
4232         * sysdeps/ia64/bits/atomic.h: Likewise.
4233         * sysdeps/i386/i486/bits/atomic.h (atomic_exchange_acq): Renamed from
4234         atomic_exchange.
4235         * sysdeps/m68k/m68020/bits/atomic.h: Likewise.
4236         * sysdeps/powerpc/bits/atomic.h: Likewise.
4237         * sysdeps/sparc/sparc32/sparcv9/bits/atomic.h: Likewise.
4238         * sysdeps/sparc/sparc64/bits/atomic.h: Likewise.
4239         * sysdeps/x86_64/bits/atomic.h: Likewise.
4240         * csu/tst-atomic.c: Use atomic_exchange_acq instead of atomic_exchange.
4241
4242         * sysdeps/unix/sysv/linux/x86_64/get_clockfreq.c: New file.
4243
4244 2003-05-08  Ulrich Drepper  <drepper@redhat.com>
4245
4246         * malloc/thread-m.h: Remove special handling of thread_atfork if
4247         HAVE_register_atfork_malloc is defined.
4248
4249 2003-05-07  Andreas Jaeger  <aj@suse.de>
4250
4251         * sysdeps/unix/sysv/linux/x86_64/syscall.S: Add DWARF2 unwind
4252         information.
4253
4254 2003-05-06  Ulrich Drepper  <drepper@redhat.com>
4255
4256         * libio/oldiofdopen.c (_IO_old_fdopen): Use _IO_old_init not _IO_init.
4257         * libio/oldiofopen.c (_IO_old_fopen): Likewise.
4258         * libio/libioP.h: Declare _IO_old_init.
4259         * libio/genops.c (_IO_no_init): Split in two.  New function
4260         _IO_old_init.
4261
4262 2003-05-05  Ulrich Drepper  <drepper@redhat.com>
4263
4264         * sysdeps/generic/enbl-secure.c (__libc_enable_secure_decided): New
4265         variable.
4266         (__libc_init_secure): Don't do anything if __libc_enable_secure_decided
4267         is nonzero.
4268         * include/unistd.h: Declare __libc_enable_secure_decided.
4269         * elf/dl-support.c (_dl_aux_init): Recognize AT_UID, AT_EUID, AT_GID,
4270         and AT_EGID.  If all found, set __libc_enable_secure and
4271         __libc_enable_secure_decided.
4272
4273         * sysdeps/generic/libc-start.c [!SHARED]: Call
4274         __libc_check_standard_fds after __libc_init_first.
4275
4276 2003-05-05  Roland McGrath  <roland@redhat.com>
4277
4278         * Makerules (common-before-compile): New variable.
4279         ($(common-objpfx)%.make): Depend on that instead of $(before-compile).
4280         ($(common-objpfx)%.h $(common-objpfx)%.h.d): Likewise.  Move this rule
4281         to after all setting of before-compile.
4282
4283 2003-05-05  Jakub Jelinek  <jakub@redhat.com>
4284
4285         * sysdeps/ia64/bits/atomic.h (__arch_compare_and_exchange_val_8_acq,
4286         __arch_compare_and_exchange_val_16_acq): Cast 0 to mem's type.
4287         * sysdeps/powerpc/powerpc32/bits/atomic.h
4288         (__arch_compare_and_exchange_val_64_acq): Likewise.
4289         * sysdeps/sparc/sparc32/sparcv9/bits/atomic.h
4290         (__arch_compare_and_exchange_val_8_acq,
4291         __arch_compare_and_exchange_val_16_acq,
4292         __arch_compare_and_exchange_val_64_acq): Likewise.
4293         * sysdeps/sparc/sparc64/bits/atomic.h
4294         (__arch_compare_and_exchange_val_8_acq,
4295         __arch_compare_and_exchange_val_16_acq): Likewise.
4296         * sysdeps/s390/bits/atomic.h (__arch_compare_and_exchange_val_8_acq,
4297         __arch_compare_and_exchange_val_16_acq,
4298         __arch_compare_and_exchange_val_64_acq): Likewise.
4299         * sysdeps/unix/sysv/linux/sh/bits/atomic.h
4300         (__arch_compare_and_exchange_val_64_acq): Likewise.
4301         * sysdeps/s390/s390-64/backtrace.c (__backtrace): Add cast to shut
4302         up warning.
4303         * sysdeps/s390/fpu/fegetenv.c (fegetenv): Likewise.
4304
4305         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h
4306         (INLINE_SYSCALL, INTERNAL_SYSCALL_DIRECT, INTERNAL_SYSCALL_SVC0):
4307         Return long instead of int.
4308         (INTERNAL_SYSCALL_ERROR_P): Cast val to unsigned long, replace
4309         0xfffff001u with -4095UL.
4310
4311 2003-05-05  Andreas Jaeger  <aj@suse.de>
4312
4313         * sysdeps/x86_64/fpu_control.h: New from i386.
4314
4315         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (__NR_semtimedop):
4316         Define if not defined.
4317
4318         * sunrpc/Makefile (generated-dirs): New variable.
4319         * resolv/Makefile (generated): New variable.
4320
4321 2003-05-04  Roland McGrath  <roland@redhat.com>
4322
4323         * csu/Makefile ($(csu-dummies) target rule): Don't use a temp C file.
4324         Depend on $(before-compile).
4325
4326         * csu/Makefile ($(objpfx)crt%.o): Replace implicit rule with a static
4327         pattern rule.  The implicit rule could be ruled out when $(objpfx)
4328         didn't exist at the time of its consideration (ugh!).
4329
4330         * Makerules (+make-deps): Fix target matching.
4331         Use $(sed-remove-dotdot).
4332
4333 2003-05-03  Ulrich Drepper  <drepper@redhat.com>
4334
4335         * nscd/nscd.c (main): Parse config file right after parsing
4336         parameters.  Then, if get_stats is true, call receive_print_stats.
4337         Drop parameter from nscd_init call.
4338         (get_stats): New variable.
4339         (parse_opt): Set get_stats, don't call receive_print_stats here.
4340         * nscd/nscd.h: Declare dbs, stat_user, and stat_uid.  Adjust nscd_init
4341         prototype.
4342         * nscd/connections.c (stat_user, stat_uid): New variables.
4343         (dbs): Make global.
4344         (nscd_init): Don't read configuration file here.  Drop parameter.
4345         (handle_request): Cleanup handling of non-database lookup requests.
4346         * nscd/nscd_conf.c (nscd_parse_file): Recognize stat-user entry.
4347         Get UID of the specified user.  Use xstrdup instead of strdup.
4348         * nscd/nscd_stat.c (receive_print_stats): Check UID.  If not zero,
4349         check stat_user.
4350         * nscd/Makefile (nscd-modules): Add xstrdup.
4351         * nscd/nscd.conf: Document stat-user entry.
4352
4353 2003-05-03  H.J. Lu  <hongjiu.lu@intel.com>
4354
4355         * sysdeps/unix/sysv/linux/ia64/sysdep.h (__NR_semtimedop): Define
4356         if not defined.
4357
4358 2003-04-22  Roland McGrath  <roland@redhat.com>
4359
4360         * elf/elf.h (AT_SYSINFO_EHDR): New macro, replaces AT_SYSINFO_EH_FRAME.
4361         * sysdeps/generic/ldsodefs.h (struct rtld_global): Remove
4362         dl_sysinfo_eh_frame member, add dl_sysinfo_dso member instead.
4363         * elf/dl-support.c: Update defn.
4364         * sysdeps/generic/libc-start.c: Don't call __register_frame_info_bases.
4365         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start) [NEED_DL_SYSINFO]:
4366         Set GL(dl_sysinfo_dso) from AT_SYSINFO_EHDR.
4367         (_dl_show_auxv): Grok AT_SYSINFO_EHDR, not AT_SYSINFO_EH_FRAME.
4368         * elf/rtld.c (dl_main) [NEED_DL_SYSINFO]: If GL(dl_sysinfo_dso) is
4369         set, set up a link_map for the preloaded, prelinked object.
4370
4371 2003-05-03  Roland McGrath  <roland@redhat.com>
4372
4373         * sysdeps/gnu/Makefile (generated): Append errlist-compat.c here, ...
4374         * stdio-common/Makefile: ... not here.
4375
4376         * csu/Makefile ($(objpfx)initfini.s): Depend on $(before-compile).
4377         * sysdeps/gnu/Makefile ($(objpfx)errlist-compat.c): Likewise.
4378
4379 2003-05-02  Ulrich Drepper  <drepper@redhat.com>
4380
4381         * sysdeps/unix/sysv/linux/s390/semtimedop.c: New file.
4382
4383         * sysdeps/unix/sysv/linux/alpha/ipc_priv.h (IPCOP_semtimedop): Define.
4384
4385         * sysdeps/generic/dl-fptr.c (_dl_make_fptr): Use 0 not NULL for
4386         comparing ftab elements.
4387         (_dl_unmap): Fix typo in test.
4388         (_dl_make_fptr): Fix typos introduced in last change.
4389
4390         * sysdeps/generic/dl-fptr.c: Put back one optimization from the
4391         original patch.  Use non-exported symbols.  Mark translatable
4392         strings.  Pretty printing.
4393
4394 2003-05-02  Roland McGrath  <roland@redhat.com>
4395
4396         * Makerules (do-stamp): Do $(make-target-directory).
4397
4398 2003-04-07  H.J. Lu  <hjl@gnu.org>
4399
4400         * sysdeps/generic/dl-fptr.c: Modify to remove the lock.
4401
4402 2003-04-03  H.J. Lu  <hjl@gnu.org>
4403
4404         * sysdeps/ia64/dl-fptr.c: Moved to ...
4405         * sysdeps/generic/dl-fptr.c: Here.
4406
4407         * sysdeps/generic/dl-fptr.h: New.
4408         * sysdeps/ia64/dl-fptr.h: New.
4409
4410         * sysdeps/ia64/dl-symaddr.c: Moved to ...
4411         * sysdeps/generic/dl-symaddr.c: here.
4412
4413         * sysdeps/ia64/dl-machine.h: Include <dl-fptr.h>.
4414         (IA64_BOOT_FPTR_TABLE_LEN): Removed.
4415         (ia64_fdesc): Likewise.
4416         (ia64_fdesc_table): Likewise.
4417         (__ia64_make_fptr): Likewise.
4418         (__ia64_init_bootstrap_fdesc_table): Replace __ia64_boot_fptr_table
4419         with _dl_boot_fptr_table.
4420         (elf_machine_runtime_setup): Replace `struct ia64_fdesc' with
4421         `struct fdesc'.
4422         (elf_machine_rela): Replace __ia64_make_fptr with _dl_make_fptr.
4423
4424 2003-05-01  Roland McGrath  <roland@redhat.com>
4425
4426         * sysdeps/generic/bp-thunks.h: Protect includes with [!__ASSEMBLER__].
4427         * sysdeps/unix/sysv/linux/i386/bp-thunks.h: Likewise.
4428
4429         * sysdeps/unix/sysv/linux/Makefile ($(objpfx)syscall-%.h):
4430         Use $(make-target-directory).
4431         * sysdeps/unix/Makefile ($(objpfx)stub-syscalls.c): Likewise.
4432
4433         * Makerules (compile-mkdep-flags): New variable, pass -MD -MF $@.d.
4434         (compile-command.S): Don't use ifndef.  Append $(compile-mkdep-flags).
4435         (compile-command.s, compile-command.c): Likewise.
4436         ($(objpfx)%.d): All such pattern rules removed.
4437         ($(+sysdir_pfx)sysd-rules): Don't generate them.
4438         ($(common-objpfx)dummy.d): Target removed.
4439         (make-dummy-dep): Variable removed.
4440         (generate-md5): Likewise.
4441         (%.d: %.dt): New pattern rule.
4442         (+depfiles): Use $(wildcard) function to get just existing *.d files
4443         and .d files for existing *.dt files.
4444         (common-clean): Remove all *.d and *.dt files.
4445         (before-compile): Add $(objpfx). when it doesn't exist,
4446         regardless of $(no_deps).
4447         * elf/rtld-Rules ($(objpfx)rtld-%.d): All such pattern rules removed.
4448         (rtld-depfiles): Use .os.d instead of .d names.
4449         Include existing *.d files and .d files for existing *.dt files.
4450
4451         * Makerules ($(common-objpfx)%.make): Protect with [! subdir].
4452         Use -MD, -MT and -MF flags instead of SUNPRO_DEPENDENCIES variable.
4453
4454         * sysdeps/unix/Makefile ($(common-objpfx)s-%.d): Remove compat.h hack.
4455         Do s-*.d includes only if we have some syscall routines in this subdir.
4456
4457         * include/libc-symbols.h (libc_freeres_ptr): Use %nobits instead of
4458         @nobits.  The former is accepted by gas on any ELF platform.
4459
4460 2003-05-01  Ulrich Drepper  <drepper@redhat.com>
4461
4462         * sysdeps/unix/sysv/linux/semtimedop.c: New file.
4463
4464         * malloc/malloc.c (mSTATs): Call ptmalloc_init if necessary.
4465
4466 2003-04-29  Andreas Schwab  <schwab@suse.de>
4467
4468         * string/test-strcat.c (do_one_test): Fix attribute name.
4469
4470 2003-04-30  Alexandre Oliva  <aoliva@redhat.com>
4471
4472         * sysdeps/unix/sysv/linux/mips/sys/ucontext.h (ucontext): Make
4473         uc_flags long for all ABIs.
4474
4475 2003-04-30  Andreas Jaeger  <aj@suse.de>
4476
4477         * sysdeps/unix/sysv/linux/x86_64/sys/debugreg.h
4478         (DR_CONTROL_RESERVED): Use correct value for 64-bit.
4479         Reported by Andrew Derrick Balsa <andrebalsa@mailingaddress.org>.
4480         Add bi-arch support.
4481
4482 2003-04-30  Ulrich Drepper  <drepper@redhat.com>
4483
4484         * malloc/malloc.c (mEMALIGn): Define alias __memalign_internal.
4485         (__posix_memalign): Use __memalign_internal instead of memalign.
4486
4487 2003-04-29  Roland McGrath  <roland@redhat.com>
4488
4489         * configure.in: Search for AUTOCONF unconditionally.
4490         Just don't complain about missing it under --without-cvs.
4491
4492         * include/libc-symbols.h (__symbol_set_attribute): New macro,
4493         give hidden for [SHARED] and weak for [! SHARED].
4494         (symbol_set_declare): Use that.  Never need weak_extern these days.
4495         * Makerules ($(common-objpfx)shlib.lds): Go back to using PROVIDE.
4496         Depend on $(..)Makerules.
4497
4498 2003-04-29  Ulrich Drepper  <drepper@redhat.com>
4499
4500         * sysdeps/unix/sysv/linux/ifaddrs.c (getifaddrs): Use __ protected
4501         variants of socket, bind, recvmsg, and sendto.
4502
4503         * sysdeps/i386/fpu/ftestexcept.c: Also check SSE status word.
4504
4505         * include/signal.h: Use libc_hidden_proto for sigaddset and sigdelset.
4506         * signal/sigaddset.c: Add libc_hidden_def.
4507         * signal/sigdelset.c: Likewise.
4508
4509 2003-04-29  Jakub Jelinek  <jakub@redhat.com>
4510
4511         * sysdeps/i386/i486/string-inlines.c (__memcpy_g, __strchr_g): Move
4512         to the end of the file.
4513
4514         * configure.in: Change __oline__ to $LINENO.
4515         (HAVE_BUILTIN_REDIRECTION): New check.
4516         * config.h.in (HAVE_BUILTIN_REDIRECTION): Add.
4517         * include/libc-symbols.h (libc_hidden_builtin_proto,
4518         libc_hidden_builtin_def, libc_hidden_builtin_weak,
4519         libc_hidden_builtin_ver): Define.
4520         * include/string.h (memchr, memcpy, memmove, memset, strcat, strchr,
4521         strcmp, strcpy, strcspn, strlen, strncmp, strncpy, strpbrk, strrchr,
4522         strspn, strstr): Add libc_hidden_builtin_proto.
4523         * intl/plural.y: Include string.h.
4524         * sysdeps/alpha/alphaev6/memchr.S (memchr): Add
4525         libc_hidden_builtin_def.
4526         * sysdeps/alpha/alphaev6/memcpy.S (memcpy): Likewise.
4527         * sysdeps/alpha/alphaev6/memset.S (memset): Likewise.
4528         * sysdeps/alpha/alphaev67/strcat.S (strcat): Likewise.
4529         * sysdeps/alpha/alphaev67/strchr.S (strchr): Likewise.
4530         * sysdeps/alpha/alphaev67/strlen.S (strlen): Likewise.
4531         * sysdeps/alpha/alphaev67/strrchr.S (strrchr): Likewise.
4532         * sysdeps/alpha/memchr.S (memchr): Likewise.
4533         * sysdeps/alpha/memset.S (memset): Likewise.
4534         * sysdeps/alpha/strcat.S (strcat): Likewise.
4535         * sysdeps/alpha/strchr.S (strchr): Likewise.
4536         * sysdeps/alpha/strcmp.S (strcmp): Likewise.
4537         * sysdeps/alpha/strcpy.S (strcpy): Likewise.
4538         * sysdeps/alpha/strlen.S (strlen): Likewise.
4539         * sysdeps/alpha/strncmp.S (strncmp): Likewise.
4540         * sysdeps/alpha/strncpy.S (strncpy): Likewise.
4541         * sysdeps/alpha/strrchr.S (strrchr): Likewise.
4542         * sysdeps/arm/memset.S (memset): Likewise.
4543         * sysdeps/arm/strlen.S (strlen): Likewise.
4544         * sysdeps/generic/memchr.c (memchr): Likewise.
4545         * sysdeps/generic/memcpy.c (memcpy): Likewise.
4546         * sysdeps/generic/memmove.c (memmove): Likewise.
4547         * sysdeps/generic/memset.c (memset): Likewise.
4548         * sysdeps/generic/strcat.c (strcat): Likewise.
4549         * sysdeps/generic/strchr.c (strchr): Likewise.
4550         * sysdeps/generic/strcmp.c (strcmp): Likewise.
4551         * sysdeps/generic/strcpy.c (strcpy): Likewise.
4552         * sysdeps/generic/strcspn.c (strcspn): Likewise.
4553         * sysdeps/generic/strlen.c (strlen): Likewise.
4554         * sysdeps/generic/strncmp.c (strncmp): Likewise.
4555         * sysdeps/generic/strncpy.c (strncpy): Likewise.
4556         * sysdeps/generic/strpbrk.c (strpbrk): Likewise.
4557         * sysdeps/generic/strrchr.c (strrchr): Likewise.
4558         * sysdeps/generic/strspn.c (strspn): Likewise.
4559         * sysdeps/generic/strstr.c (strstr): Likewise.
4560         * sysdeps/i386/i486/strcat.S (strcat): Likewise.
4561         * sysdeps/i386/i486/strlen.S (strlen): Likewise.
4562         * sysdeps/i386/i586/memcpy.S (memcpy): Likewise.
4563         * sysdeps/i386/i586/memset.S (memset): Likewise.
4564         * sysdeps/i386/i586/strchr.S (strchr): Likewise.
4565         * sysdeps/i386/i586/strcpy.S (strcpy): Likewise.
4566         * sysdeps/i386/i586/strlen.S (strlen): Likewise.
4567         * sysdeps/i386/i686/memcpy.S (memcpy): Likewise.
4568         * sysdeps/i386/i686/memmove.S (memmove): Likewise.
4569         * sysdeps/i386/i686/memset.S (memset): Likewise.
4570         * sysdeps/i386/i686/strcmp.S (strcmp): Likewise.
4571         * sysdeps/i386/memchr.S (memchr): Likewise.
4572         * sysdeps/i386/memset.c (memset): Likewise.
4573         * sysdeps/i386/strchr.S (strchr): Likewise.
4574         * sysdeps/i386/strcspn.S (strcspn): Likewise.
4575         * sysdeps/i386/strlen.c (strlen): Likewise.
4576         * sysdeps/i386/strpbrk.S (strpbrk): Likewise.
4577         * sysdeps/i386/strrchr.S (strrchr): Likewise.
4578         * sysdeps/i386/strspn.S (strspn): Likewise.
4579         * sysdeps/ia64/memchr.S (memchr): Likewise.
4580         * sysdeps/ia64/memcpy.S (memcpy): Likewise.
4581         * sysdeps/ia64/memmove.S (memmove): Likewise.
4582         * sysdeps/ia64/memset.S (memset): Likewise.
4583         * sysdeps/ia64/strcat.S (strcat): Likewise.
4584         * sysdeps/ia64/strchr.S (strchr): Likewise.
4585         * sysdeps/ia64/strcmp.S (strcmp): Likewise.
4586         * sysdeps/ia64/strcpy.S (strcpy): Likewise.
4587         * sysdeps/ia64/strlen.S (strlen): Likewise.
4588         * sysdeps/ia64/strncmp.S (strncmp): Likewise.
4589         * sysdeps/ia64/strncpy.S (strncpy): Likewise.
4590         * sysdeps/m68k/memchr.S (memchr): Likewise.
4591         * sysdeps/m68k/strchr.S (strchr): Likewise.
4592         * sysdeps/mips/mips64/memcpy.S (memcpy): Likewise.
4593         * sysdeps/mips/mips64/memset.S (memset): Likewise.
4594         * sysdeps/mips/memcpy.S (memcpy): Likewise.
4595         * sysdeps/mips/memset.S (memset): Likewise.
4596         * sysdeps/powerpc/powerpc32/memset.S (memset): Likewise.
4597         * sysdeps/powerpc/powerpc32/strchr.S (strchr): Likewise.
4598         * sysdeps/powerpc/powerpc32/strcmp.S (strcmp): Likewise.
4599         * sysdeps/powerpc/powerpc32/strcpy.S (strcpy): Likewise.
4600         * sysdeps/powerpc/powerpc32/strlen.S (strlen): Likewise.
4601         * sysdeps/powerpc/powerpc64/memcpy.S (memcpy): Likewise.
4602         * sysdeps/powerpc/powerpc64/memset.S (memset): Likewise.
4603         * sysdeps/powerpc/powerpc64/strchr.S (strchr): Likewise.
4604         * sysdeps/powerpc/powerpc64/strcmp.S (strcmp): Likewise.
4605         * sysdeps/powerpc/powerpc64/strcpy.S (strcpy): Likewise.
4606         * sysdeps/powerpc/powerpc64/strlen.S (strlen): Likewise.
4607         * sysdeps/powerpc/strcat.c (strcat): Likewise.
4608         * sysdeps/sparc/sparc32/memchr.S (memchr): Likewise.
4609         * sysdeps/sparc/sparc32/memcpy.S (memcpy): Likewise.
4610         * sysdeps/sparc/sparc32/memset.S (memset): Likewise.
4611         * sysdeps/sparc/sparc32/strcat.S (strcat): Likewise.
4612         * sysdeps/sparc/sparc32/strchr.S (strchr, strrchr): Likewise.
4613         * sysdeps/sparc/sparc32/strcmp.S (strcmp): Likewise.
4614         * sysdeps/sparc/sparc32/strcpy.S (strcpy): Likewise.
4615         * sysdeps/sparc/sparc32/strlen.S (strlen): Likewise.
4616         * sysdeps/sparc/sparc64/sparcv9b/memcpy.S (memcpy, memmove): Likewise.
4617         * sysdeps/sparc/sparc64/memchr.S (memchr): Likewise.
4618         * sysdeps/sparc/sparc64/memcpy.S (memcpy, memmove): Likewise.
4619         * sysdeps/sparc/sparc64/memset.S (memset): Likewise.
4620         * sysdeps/sparc/sparc64/strcat.S (strcat): Likewise.
4621         * sysdeps/sparc/sparc64/strchr.S (strchr, strrchr): Likewise.
4622         * sysdeps/sparc/sparc64/strcmp.S (strcmp): Likewise.
4623         * sysdeps/sparc/sparc64/strcpy.S (strcpy): Likewise.
4624         * sysdeps/sparc/sparc64/strcspn.S (strcspn): Likewise.
4625         * sysdeps/sparc/sparc64/strlen.S (strlen): Likewise.
4626         * sysdeps/sparc/sparc64/strncmp.S (strncmp): Likewise.
4627         * sysdeps/sparc/sparc64/strncpy.S (strncpy): Likewise.
4628         * sysdeps/sparc/sparc64/strpbrk.S (strpbrk): Likewise.
4629         * sysdeps/sparc/sparc64/strspn.S (strspn): Likewise.
4630         * sysdeps/sh/memcpy.S (memcpy): Likewise.
4631         * sysdeps/sh/memset.S (memset): Likewise.
4632         * sysdeps/sh/strlen.S (strlen): Likewise.
4633         * sysdeps/s390/s390-32/memchr.S (memchr): Likewise.
4634         * sysdeps/s390/s390-32/memcpy.S (memcpy): Likewise.
4635         * sysdeps/s390/s390-32/memset.S (memset): Likewise.
4636         * sysdeps/s390/s390-32/strcmp.S (strcmp): Likewise.
4637         * sysdeps/s390/s390-32/strcpy.S (strcpy): Likewise.
4638         * sysdeps/s390/s390-32/strncpy.S (strncpy): Likewise.
4639         * sysdeps/s390/s390-64/memchr.S (memchr): Likewise.
4640         * sysdeps/s390/s390-64/memcpy.S (memcpy): Likewise.
4641         * sysdeps/s390/s390-64/memset.S (memset): Likewise.
4642         * sysdeps/s390/s390-64/strcmp.S (strcmp): Likewise.
4643         * sysdeps/s390/s390-64/strcpy.S (strcpy): Likewise.
4644         * sysdeps/s390/s390-64/strncpy.S (strncpy): Likewise.
4645         * sysdeps/x86_64/memcpy.S (memcpy): Likewise.
4646         * sysdeps/x86_64/memset.S (memset): Likewise.
4647         * sysdeps/x86_64/strcat.S (strcat): Likewise.
4648         * sysdeps/x86_64/strchr.S (strchr): Likewise.
4649         * sysdeps/x86_64/strcmp.S (strcmp): Likewise.
4650         * sysdeps/x86_64/strcpy.S (strcpy): Likewise.
4651         * sysdeps/x86_64/strcspn.S (strcspn): Likewise.
4652         * sysdeps/x86_64/strlen.S (strlen): Likewise.
4653         * sysdeps/x86_64/strspn.S (strspn): Likewise.
4654         * string/string-inlines.c: Move...
4655         * sysdeps/generic/string-inlines.c: ...here.
4656         (__memcpy_g, __strchr_g): Remove.
4657         (__NO_INLINE__): Define before including <string.h>,
4658         undefine after.  Include bits/string.h and bits/string2.h.
4659         * sysdeps/i386/i486/string-inlines.c: New file.
4660         * sysdeps/i386/string-inlines.c: New file.
4661         * sysdeps/i386/i486/Versions: Remove.
4662         All GLIBC_2.1.1 symbols moved...
4663         * sysdeps/i386/Versions (libc): ...here.
4664
4665 2003-04-29  Ulrich Drepper  <drepper@redhat.com>
4666
4667         * sysdeps/i386/fpu/Makefile: New file.
4668         * sysdeps/i386/fpu/fedisblxcpt.c: Also set SSE control word.
4669         * sysdeps/i386/fpu/feenablxcpt.c: Likewise.
4670         * sysdeps/i386/fpu/feholdexcpt.c: Likewise.
4671         * sysdeps/i386/fpu/fesetround.c: Also set SSE rounding mode
4672         [PR libc/4987].
4673
4674 2003-04-28  Ulrich Drepper  <drepper@redhat.com>
4675
4676         * nscd/nscd_getgr_r.c: Compact code a bit.  Add some __builtin_expect.
4677         * nscd/nscd_getpw_r.c: Likewise.
4678         * nscd/nscd_gethst_r.c: Likewise.
4679
4680 2003-04-27  Ulrich Drepper  <drepper@redhat.com>
4681
4682         * nscd/pwdcache.c: Initialize .version element in result.
4683         * nscd/grpcache.c: Likewise.
4684         * nscd/pwdcache.c: Likewise.
4685
4686 2003-04-27  Andreas Schwab  <schwab@suse.de>
4687
4688         * Makeconfig ($(common-objpfx)sysd-sorted): Fix for running in
4689         subdirectory.
4690
4691 2003-04-27  Andreas Schwab  <schwab@suse.de>
4692
4693         * sysdeps/unix/sysv/linux/m68k/semtimedop.S: New file.
4694
4695 2003-04-27  Ulrich Drepper  <drepper@redhat.com>
4696
4697         * nscd/connections.c (client_queued): New variable.
4698         (nscd_run): Revamp the loop.  Don't call poll except for cleanup
4699         threads.  Keep track of the number of delays caused because of busy
4700         worker threads.
4701         * nscd/nscd.h: Declare client_queued.
4702         * nscd/nscd_stat.c: Transmit and print client_queued information.
4703
4704         * locale/programs/locale.c (show_info): Use '\177' instead of CHAR_MAX.
4705
4706         * Makerules ($(common-objpfx)shlib.lds): Don't use PROVIDE to
4707         define __start_libc_freeres_ptrs and __stop___libc_freeres_ptrs.
4708
4709 2003-04-26  Ulrich Drepper  <drepper@redhat.com>
4710
4711         * elf/dl-close.c [USE_TLS && TLS_TCB_AT_TP] (_dl_close): Reimplement
4712         tracking of freed memory in static TLS block.
4713         * elf/Makefile: Add rules to build and run tst-tls13.
4714         * elf/tst-tls13.c: New file.
4715         * elf/tst-tlsmod13.c: New file.
4716         * elf/tst-tlsmod13a.c: New file.
4717
4718         * elf/tst-tls8.c: Adjust types of variables to avoid warnings.
4719
4720         * elf/dl-reloc.c: Pretty printing.
4721
4722 2003-04-26  Roland McGrath  <roland@redhat.com>
4723
4724         * Makerules ($(common-objpfx)shlib.lds): New target.
4725         (common-generated): Add it.
4726         (build-shlib, build-module): Use that instead of generating every time.
4727         ($(common-objpfx)libc.so): Depend on it.
4728         (lib%.so rule): Likewise.
4729         (build-module-helper-objlist): Remove %.lds.
4730         (LDSEDCMD-c.so): Variable removed.
4731         * iconvdata/extra-module.mk ($(objpfx)$(mod).so):
4732         Depend on $(common-objpfx)shlib.lds.
4733         * dlfcn/Makefile ($(test-modules)): Likewise.
4734
4735 2003-04-26  Roland McGrath  <roland@frob.com>
4736
4737         * sysdeps/mach/hurd/tmpfile.c: Remove USE_IN_LIBIO conditionals.
4738
4739 2003-04-26  Andreas Schwab  <schwab@suse.de>
4740
4741         * elf/dl-close.c (remove_slotinfo): Fix missing parens.
4742
4743 2003-04-25  Ulrich Drepper  <drepper@redhat.com>
4744
4745         * nscd/cache.c (cache_search): Keep track of how many chain links
4746         we searched and update table statistics.
4747         (cache_add): Keep track of how many values are in the table.
4748         (prune_cache): Likewise.  Keep track of locking success.
4749         Print messages about removed entries in separate pass.
4750         * nscd/connections.c (handle_request): Don't print debug message here.
4751         The caller will do it.  Keep track of locking success.
4752         (nscd_run): Print debug message.  Also print PID of the client process.
4753         * nscd/nscd.c (start_time): New variable.
4754         (main): Remember start time.
4755         * nscd/nscd.h: Declare start_time.
4756         (struct database): Add more members for new statistics.
4757         * nscd/nscd_stat.c: Add support for sending, receiving, and printing
4758         of new statistics.
4759
4760         * sysdeps/posix/getaddrinfo.c: Include <stdbool.h>.
4761
4762 2003-04-22  Jakub Jelinek  <jakub@redhat.com>
4763
4764         * include/link.h (NO_TLS_OFFSET): Define to 0 if not defined.
4765         * elf/dl-close.c (_dl_close): Use NO_TLS_OFFSET.
4766         * elf/dl-object.c (_dl_new_object): Initialize l_tls_offset to
4767         NO_TLS_OFFSET.
4768         * elf/rtld.c (_dl_start_final, _dl_start): Likewise.
4769         * elf/dl-reloc.c (CHECK_STATIC_TLS): Use NO_TLS_OFFSET.
4770         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Likewise.
4771         * sysdeps/powerpc/dl-tls.h (TLS_TPREL_VALUE): Don't subtract
4772         TLS_TCB_SIZE.
4773
4774 2003-04-24  Ulrich Drepper  <drepper@redhat.com>
4775
4776         * nss/getent.c: Implement alternative host database lookup via
4777         getaddrinfo.
4778
4779         * include/ifaddrs.h: New file.
4780         * include/netdb.h: Move definitions of AI_V4MAPPED, AI_ALL, and
4781         AI_ADDRCONFIG...
4782         * resolv/netdb.h: ...here.
4783         * sysdeps/gnu/ifaddrs.c. Use libc_hidden_def where appropriate.
4784         * sysdeps/unix/sysv/linux/ifaddrs.c: Likewise.
4785         * sysdeps/posix/getaddrinfo.c: Implement AI_V4MAPPED, AI_ALL, and
4786         AI_ADDRCONFIG.
4787
4788 2003-04-24  Roland McGrath  <roland@redhat.com>
4789
4790         * elf/dl-reloc.c (_dl_allocate_static_tls): Add internal_function.
4791
4792 2003-04-24  Jakub Jelinek  <jakub@redhat.com>
4793
4794         * elf/dl-reloc.c (allocate_static_tls): Rename to...
4795         (_dl_allocate_static_tls): ... this function.  No longer static.
4796         (CHECK_STATIC_TLS): Adjust.
4797         * sysdeps/generic/ldsodefs.h (_dl_allocate_static_tls): New prototype.
4798         * sysdeps/powerpc/powerpc32/dl-machine.h (__process_machine_rela):
4799         Add SYM_MAP argument.
4800         (elf_machine_rela): Adjust caller.  Declare SYM_MAP unconditionally.
4801         Check if SYM_MAP != NULL for R_PPC_DTPREL32.  Only handle 32-bit
4802         TLS relocs here.  #ifdef out relocs which never appear in
4803         .gnu.conflict section from dl-conflict.c processing.
4804         * sysdeps/powerpc/powerpc32/dl-machine.c (__process_machine_rela):
4805         Add SYM_MAP argument.  Handle 16-bit TLS relocs here.
4806
4807         * sysdeps/s390/s390-32/dl-machine.h (elf_machine_rela): #ifdef
4808         out relocs which never appear in .gnu.conflict section from
4809         dl-conflict.c processing.
4810         * sysdeps/s390/s390-64/dl-machine.h (elf_machine_rela): Likewise.
4811         * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Likewise.
4812         * sysdeps/i386/dl-machine.h (elf_machine_rela): Likewise.
4813         Use r_type in RESOLVE macro.
4814
4815 2003-04-23  Ulrich Drepper  <drepper@redhat.com>
4816
4817         * nis/ypclnt.c (__yp_bind): Expect YPDB parameter to always be !=
4818         NULL.  Remove code made redundant by this assumption.
4819         (__yp_unbind): Add call to free.  Adjust all callers.
4820
4821         * nis/ypclnt.c (yp_all): Free the dom_binding object after
4822         unbinding it.
4823
4824         * grp/initgroups.c (getgrouplist): Don't copy too much into the
4825         user buffer if more groups are found than fit into it.
4826
4827         * nis/nss_nis/nis-initgroups.c (_nss_nis_initgroups_dyn): Use
4828         extend_alloca.
4829
4830 2003-04-23  Jakub Jelinek  <jakub@redhat.com>
4831
4832         * sysdeps/posix/getaddrinfo.c (gaih_inet): Check for rc == ERANGE,
4833         not rc == errno.  Use extend_alloca.
4834
4835         * elf/tst-tls12.c (main): Fix declaration.
4836         * elf/tst-tls10.c (dummy): Make hidden instead of static.
4837         * elf/tst-tlsmod7.c (dummy): Likewise.
4838         * elf/tst-tlsmod8.c (dummy): Likewise.
4839         * elf/tst-tlsmod9.c (dummy): Likewise.
4840
4841 2003-04-22  Roland McGrath  <roland@redhat.com>
4842
4843         * sysdeps/unix/sysv/linux/not-cancel.h: Put parens around macro args.
4844         (open_not_cancel): Make last argument non-optional.
4845         * sysdeps/generic/check_fds.c (check_one_fd): Update caller.
4846         * sysdeps/unix/sysv/linux/gethostid.c (gethostid): Likewise.
4847         * iconv/gconv_cache.c (__gconv_load_cache): Likewise.
4848
4849         * include/tls.h: Protect against multiple inclusion.
4850
4851 2003-04-22  Ulrich Drepper  <drepper@redhat.com>
4852
4853         * nscd/nscd-client.h: Add declaration for __nscd_open_socket.
4854         * nscd/nscd_gethst_r.c (__nscd_open_socket): Renamed from
4855         open_socket.  Not static anymore.
4856         (nscd_gethst_r): Use __nscd_open_socket.
4857         * nscd/nscd_getgr_r.c (open_socket): Removed.
4858         (nscd_getgr_r): Use __nscd_open_socket.
4859         * nscd/nscd_getpw_r.c (open_socket): Removed.
4860         (nscd_getpw_r): Use __nscd_open_socket.
4861
4862         * nscd/nscd.c (main): Change type of fdn to long int and use strtol.
4863         * nscd/connections.c (handle_request): Add cast to avoid warning.
4864
4865 2003-04-21  Ulrich Drepper  <drepper@redhat.com>
4866
4867         * signal/sigfillset.c: Moved to...
4868         * sysdeps/generic/sigfillset.c: ...here.  If SIGCANCEL is defined
4869         do not set the corresponding bit.
4870
4871         * sysdeps/unix/sysv/linux/sigprocmask.c: Prevent changing mask for
4872         SIGCANCEL.
4873         * sysdeps/unix/sysv/linux/alpha/bits/siginfo.h: Define SI_TKILL.
4874         * sysdeps/unix/sysv/linux/bits/siginfo.h: Define SI_TKILL.
4875         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Define SI_TKILL.
4876         * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Define SI_TKILL.
4877         * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Define SI_TKILL.
4878
4879 2003-04-20  Ulrich Drepper  <drepper@redhat.com>
4880
4881         * sysdeps/unix/sysv/linux/not-cancel.h (open_not_cancel): Cast
4882         first syscall parameter to const char*.
4883
4884 2003-04-19  Ulrich Drepper  <drepper@redhat.com>
4885
4886         * intl/Makefile ($(objpfx)msgs.h): Use C locale for sed run.
4887
4888         * configure.in: Add AC_PROG_CXX.
4889         * config.make.in (CXX): Define.
4890
4891         * sysdeps/i386/i686/hp-timing.h (HP_TIMING_PRINT): Change type of
4892         __len to size_t to avoid warnings.
4893
4894 2003-04-18  Jes Sorensen  <jes@wildopensource.com>
4895
4896         * libc/sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Sync with Linux
4897         2.5.67.
4898         * libc/sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Likewise.
4899
4900 2003-04-19  Ulrich Drepper  <drepper@redhat.com>
4901
4902         * stdlib/cxa_finalize.c (__cxa_finalize): Don't call
4903         UNREGISTER_ATFORK if d == NULL.
4904
4905         * catgets/nl_types.h: Remove __THROW marker from cancellation points.
4906         * dirent/dirent.h: Likewise.
4907         * dlfcn/dlfcn.h: Likewise.
4908         * grp/grp.h: Likewise.
4909         * iconv/iconv.h: Likewise.
4910         * io/fcntl.h: Likewise.
4911         * io/ftw.h: Likewise.
4912         * libio/stdio.h: Likewise.
4913         * misc/sys/mman.h: Likewise.
4914         * misc/sys/select.h: Likewise.
4915         * misc/sys/syslog.h: Likewise.
4916         * misc/sys/uio.h: Likewise.
4917         * posix/spawn.h: Likewise.
4918         * posix/unistd.h: Likewise.
4919         * posix/sys/wait.h: Likewise.
4920         * pwd/pwd.h: Likewise.
4921         * resolv/netdb.h: Likewise.
4922         * rt/aio.h: Likewise.
4923         * shadow/shadow.h: Likewise.
4924         * signal/signal.h: Likewise.
4925         * socket/sys/socket.h: Likewise.
4926         * stdlib/stdlib.h: Likewise.
4927         * streams/stropts.h: Likewise.
4928         * string/string.h: Likewise.
4929         * sysdeps/gnu/utmpx.h: Likewise.
4930         * sysvipc/sys/msg.h: Likewise.
4931         * termios/termios.h: Likewise.
4932         * time/time.h: Likewise.
4933         * wcsmbs/wchar.h: Likewise.
4934         * iconv/gconv_cache.c: Include <not-cancel.h> and use non-cancelable
4935         functions.
4936         * misc/daemon.c: Likewise.
4937         * sysdeps/generic/backtracesymsfd.c: Likewise.
4938         * sysdeps/generic/check_fds.c: Likewise.
4939         * sysdeps/unix/sysv/linux/gethostid.c: Likewise.
4940         * sysdeps/unix/sysv/linux/not-cancel.h: New file.
4941         * sysdeps/generic/not-cancel.h: New file.
4942         * csu/Makefile (distribute): Add not-cancel.h.
4943         * sysdeps/unix/sysv/linux/fatal-prepare.h: New file.
4944         * sysdeps/unix/sysv/linux/Makefile: Define FATAL_PREPARE_INCLUDE
4945         for assert.c and assert-perr.c to include <fatal-prepare.h>.
4946         * sysdeps/unix/sysv/linux/Dist: Add fatal-prepare.h.
4947
4948         * sysdeps/posix/remove.c (remove): Rewrite.  No need to restore
4949         errno and unlink first.
4950
4951         * io/ftw.c (ftw_dir): In all places assume fchdir is available.
4952
4953 2003-04-18  Ulrich Drepper  <drepper@redhat.com>
4954
4955         * sysdeps/unix/sysv/linux/libc_fatal.c (__libc_fatal): Use
4956         INTERNAL_SYSCALL instead of INLINE_SYSCALL.
4957
4958 2003-04-17  Ulrich Drepper  <drepper@redhat.com>
4959
4960         * sysdeps/unix/sysv/linux/Makefile: Remove db2 directory handling.
4961
4962         * malloc/Makefile (CFLAGS-malloc.c): Define DEFAULT_TOP_PAD to 128k.
4963         * sysdeps/unix/sysv/linux/Makefile (CFLAGS-malloc.c): Add to, not
4964         replace.
4965
4966         * signal/Makefile (tests): Add tst-sigsimple.
4967         * signal/tst-sigsimple.c: New file.
4968
4969 2003-04-16  Jakub Jelinek  <jakub@redhat.com>
4970
4971         * elf/Makefile (distribute): Add tst-tlsmod{[7-9],1[0-2]}.c and
4972         tst-tls10.h.
4973         (tests): Add tst-tls1[0-2].
4974         (modules-names): Add tst-tlsmod{[7-8],1[0-2]}.
4975         ($(objpfx)tst-tlsmod8.so): Depend on tst-tlsmod7.so.
4976         ($(objpfx)tst-tlsmod10.so): Depend on tst-tlsmod9.so.
4977         ($(objpfx)tst-tlsmod12.so): Depend on tst-tlsmod11.so.
4978         ($(objpfx)tst-tls10): Depend on tst-tlsmod8.so.
4979         ($(objpfx)tst-tls11): Depend on tst-tlsmod10.so.
4980         ($(objpfx)tst-tls12): Depend on tst-tlsmod12.so.
4981         * elf/tst-tls10.c: New test.
4982         * elf/tst-tls11.c: New test.
4983         * elf/tst-tls12.c: New test.
4984         * elf/tst-tls10.h: New file.
4985         * elf/tst-tlsmod7.c: New file.
4986         * elf/tst-tlsmod8.c: New file.
4987         * elf/tst-tlsmod9.c: New file.
4988         * elf/tst-tlsmod10.c: New file.
4989         * elf/tst-tlsmod11.c: New file.
4990         * elf/tst-tlsmod12.c: New file.
4991
4992 2003-04-15  Steven Munroe  <sjmunroe@us.ibm.com>
4993
4994         * sysdeps/powerpc/bits/atomic.h: Moved ppc32/64 specific code to ...
4995         * sysdeps/powerpc/powerpc32/bits/atomic.h: New file.
4996         * sysdeps/powerpc/powerpc64/bits/atomic.h: New file.
4997
4998 2003-04-17  Ulrich Drepper  <drepper@redhat.com>
4999
5000         * posix/regex.h: Include <sys/types.h>.
5001
5002         * signal/sigrelse.c (sigrelse): Use sigdelset and not __sigdelset.
5003         The signal number must be checked.
5004         * signal/sighold.c (sighold): Use sigaddset and not __sigaddset.
5005         The signal number must be checked [PR libc/5004].
5006
5007         * sysdeps/unix/sysv/linux/system.c: If compiled without threads
5008         don't do anything fancy.
5009
5010         * sysdeps/generic/bits/libc-lock.h: Define
5011         __rtld_lock_define_initialized_recursive.
5012
5013         * nss/getXXbyYY_r.c [USE_NSCD] (REENTRANT_NAME): Only retry
5014         contacting nscd if NOT_USENSCD_NAME > 0.
5015         * nss/nsswitch.c (__nss_disable_nscd): New function.
5016         * nss/nsswitch.h: Declare it.
5017         * nss/Versions [GLIBC_PRIVATE]: Export __nss_disable_nscd.
5018         * nscd/nscd.c (main): Call __nss_disable_nscd.
5019
5020 2003-04-16  Ulrich Drepper  <drepper@redhat.com>
5021
5022         * stdio-common/perror.c (perror): We don't need to set the offset
5023         to _IO_pos_bad, this is how streams are initialized.
5024
5025         * locale/programs/ld-time.c (TESTARR_ELEM): Make i unsigned.
5026         (time_output): If necessary, allocate new buffer for .name string if
5027         padding is required.
5028
5029         * sysdeps/unix/sysv/linux/ifaddrs.c (getifaddrs): Check lengths
5030         before copying.  This might leave holes in the list.  Adjust
5031         pointers if necessary.
5032         (netlink_receive): Allocate only one block.
5033         (free_netlink_handle): Adjust appropriately.
5034         (getifaddrs): Lots of cleanups.
5035
5036         * string/test-strncpy.c (do_one_test): Mark start and stop as
5037         possibly unused.
5038         * string/test-memchr.c: Likewise.
5039         * string/test-memcmp.c: Likewise.
5040         * string/test-memcpy.c: Likewise.
5041         * string/test-memmove.c: Likewise.
5042         * string/test-memset.c: Likewise.
5043         * string/test-strcat.c: Likewise.
5044         * string/test-strchr.c: Likewise.
5045         * string/test-strcmp.c: Likewise.
5046         * string/test-strcpy.c: Likewise.
5047         * string/test-strlen.c: Likewise.
5048         * string/test-strncmp.c: Likewise.
5049         * string/test-strpbrk.c: Likewise.
5050         * string/test-strrchr.c: Likewise.
5051         * string/test-strspn.c: Likewise.
5052
5053 2003-04-15  Roland McGrath  <roland@redhat.com>
5054
5055         * libio/fileops.c (_IO_file_close_it): Macro tweak to avoid warning.
5056
5057         * sysdeps/generic/libc-start.c [NEED_DL_SYSINFO]: Add decl for
5058         INTUSE(__register_frame_info_bases).
5059
5060 2003-04-15  Ulrich Drepper  <drepper@redhat.com>
5061
5062         * elf/elf.h: Define AT_SYSINFO_EH_FRAME.
5063         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Handle
5064         AT_SYSINFO_EH_FRAME.  Adjust string width.
5065         (_dl_show_auxv):Display AT_SYSINFO_EH_FRAME value.
5066         * sysdeps/generic/ldsodefs.h [NEED_DL_SYSINFO] (struct rtld_global):
5067         Add _dl_sysinfo_eh_frame field.
5068         * elf/dl-support.c [NEED_DL_SYSINFO]: Define _dl_sysinfo_eh_frame.
5069         * sysdeps/generic/libc-start.c [NEED_DL_SYSINFO] Define eh_obj
5070         variable.
5071         [NEED_DL_SYSINFO] (LIBC_START_MAIN): Call __register_frame_info_bases
5072         if _dl_sysinfo_eh_frame is non-NULL.
5073
5074         * Makeconfig (gnulib): Add -lgcc_eh.
5075
5076         * config.h.in: Define HAVE_FORCED_UNWIND.
5077
5078 2003-04-15  Steven Munroe  <sjmunroe@us.ibm.com>
5079
5080         * sysdeps/powerpc/powerpc64/strcmp.S: Convert to full 64-bit.
5081         * sysdeps/powerpc/powerpc64/strcpy.S: Likewise.
5082
5083 2003-04-15  Jakub Jelinek  <jakub@redhat.com>
5084
5085         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Avoid
5086         checking R_PPC_RELATIVE, R_PPC_NONE and whether relocation is
5087         against local symbol in conflict processing.
5088
5089 2003-04-15  Steven Munroe  <sjmunroe@us.ibm.com>
5090
5091         * sysdeps/powerpc/bits/atomic.h
5092         [__powerpc64] (__arch_compare_and_exchange_val_64_acq): Define.
5093         [! __powerpc64] (__arch_compare_and_exchange_val_64_acq): Defined
5094         as abort stub.
5095         (__arch_compare_and_exchange_val_32_acq): Define.
5096         (atomic_compare_and_exchange_val_acq): Define.
5097
5098 2003-04-15  Ulrich Drepper  <drepper@redhat.com>
5099
5100         * include/atomic.h: Pretty printing.
5101
5102 2003-04-14  Ulrich Drepper  <drepper@redhat.com>
5103
5104         * stdio-common/vfscanf.c: Add casts to avoid warnings.
5105
5106 2003-04-14  Jakub Jelinek  <jakub@redhat.com>
5107
5108         * sysdeps/i386/i486/bits/atomic.h: Rename LOCK to LOCK_PREFIX.
5109         * sysdeps/x86_64/bits/atomic.h: Likewise.
5110
5111 2003-04-14  Ulrich Drepper  <drepper@redhat.com>
5112
5113         * sysdeps/unix/sysv/linux/i386/sysdep.h: Change PUSHARGS_1 and
5114         POPARGS_1 to emit labels for the mov instructions.
5115
5116 2003-04-14  Jakub Jelinek  <jakub@redhat.com>
5117
5118         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h (ret_NOERRNO): Define.
5119
5120 2003-04-14  Roland McGrath  <roland@redhat.com>
5121
5122         * sysdeps/generic/unwind-dw2.c (_Unwind_GetCFA): Add a cast to silence
5123         compiler warning.
5124
5125         * sysdeps/generic/unwind-pe.h: Fix decl hacks broken in merge.
5126
5127 2003-04-14  Ulrich Drepper  <drepper@redhat.com>
5128
5129         * string/strxfrm.c (STRXFRM): Terminate rulearr at correct
5130         position.  Reported by jreiser@BitWagon.com.
5131
5132 2003-04-13  Ulrich Drepper  <drepper@redhat.com>
5133
5134         * sysdeps/generic/unwind-dw2-fde.c: Update from recent gcc version.
5135         * sysdeps/generic/unwind-dw2-fde.h: Likewise.
5136         * sysdeps/generic/unwind-dw2.c: Likewise.
5137         * sysdeps/generic/unwind-pe.h: Likewise.
5138
5139 2003-04-13  Alexandre Oliva  <aoliva@redhat.com>
5140
5141         * sysdeps/unix/sysv/linux/mips/profil-counter: New.
5142         * sysdeps/unix/sysv/linux/mips/sigcontextinfo.h: Port to n32/n64.
5143         * sysdeps/unix/sysv/linux/mips/bits/sigcontext.h: New.
5144         * sysdeps/unix/sysv/linux/mips/sys/ucontext.h: Port to n32/n64.
5145         (mcontext_t): Make it match the 32-bit mips kernel in o32.
5146         * sysdeps/unix/sysv/linux/mips/sys/user.h: Bring in constants from
5147         the mips and mips64 headers.
5148         (struct user): Port to n32/n64.
5149
5150 2003-04-12  Ulrich Drepper  <drepper@redhat.com>
5151
5152         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Add cast to
5153         avoid warning.
5154
5155         * sysdeps/unix/sysv/linux/i386/sigaction.c (__libc_sigaction): If
5156         __ASSUME_VSYSCALL is defined don't add restorer.
5157         * sysdeps/unix/sysv/linux/kernel-features.h: Define
5158         __ASSUME_VSYSCALL for 2.5.53.
5159
5160 2003-04-11  Ulrich Drepper  <drepper@redhat.com>
5161
5162         * sysdeps/generic/libc-start.c: Cleanup MAIN_AUXVEC_ARG handling.
5163         Remove HAVE_CANCELBUF code.  Replace with code using the new
5164         initializers for unwind-based cleanup handling.
5165         * sysdeps/generic/unwind.h: Update from latest gcc version.
5166         * sysdeps/unix/sysv/linux/i386/sysdep.h: Define labels in a few
5167         places to allow unwind data generation.
5168         * sysdeps/i386/bits/setjmp.h: Allow file to be included multiple times.
5169         * sysdeps/x86_64/bits/setjmp.h: Likewise.
5170         * sysdeps/sh/bits/setjmp.h: Likewise.
5171         * sysdeps/powerpc/bits/setjmp.h: Likewise.
5172         * sysdeps/unix/sysv/linux/ia64/bits/setjmp.h: Likewise.
5173         * sysdeps/alpha/bits/setjmp.h: Likewise.
5174
5175 2003-04-11  Roland McGrath  <roland@redhat.com>
5176
5177         * csu/tst-empty.c: New file.
5178         * csu/Makefile (tests, tests-static): Add it.
5179
5180 2003-04-11  Jakub Jelinek  <jakub@redhat.com>
5181
5182         * string/test-strcmp.c (do_random_tests): Test whether return value
5183         has been promoted to wordsize if the ABI requires caller to do so.
5184         * string/test-strncmp.c (do_random_tests): Likewise.
5185         * string/test-memcmp.c (do_random_tests): Likewise.
5186
5187         * sysdeps/powerpc/powerpc64/strcmp.S (strcmp): Sign extend rRTN
5188         before returning.
5189
5190         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c
5191         (__fe_nomask_env): Try prctl even if __ASSUME_NEW_PRCTL_SYSCALL
5192         is not defined, but the prctl constants are.
5193
5194         * string/tester.c (test_strcmp): Fix a typo.
5195
5196 2003-04-09  Ulrich Drepper  <drepper@redhat.com>
5197
5198         * sysdeps/alpha/fpu/bits/mathdef.h: Remove FLT_EVAL_METHOD definition.
5199         * sysdeps/powerpc/fpu/bits/mathdef.h: Likewise.
5200
5201 2003-04-08  Alexandre Oliva  <aoliva@redhat.com>
5202
5203         * sysdeps/mips/sys/regdef.h (t4,t5,t6,t7): Renamed to t0..t3 on
5204         NewABI.
5205         (ta0, ta1, ta2, ta3): Defined to t4..t7 on o32, and a4..a7 on
5206         NewABI.
5207         * sysdeps/mips/mips64/memcpy.S: Adjust register naming
5208         conventions.
5209         * sysdeps/mips/mips64/memset.S: Likewise.
5210         * sysdeps/unix/mips/sysdep.S (__syscall_error) [_LIBC_REENTRANT]:
5211         Use t0 instead of t4 as temporary.
5212
5213 2003-04-07  Ulrich Drepper  <drepper@redhat.com>
5214
5215         * elf/ldconfig.c (parse_conf): Ignore leading whitespace.  Use
5216         feof_unlocked instead of feof.
5217         (add_dir): Ignore trailing whitespace.
5218
5219 2003-04-07  Jakub Jelinek  <jakub@redhat.com>
5220
5221         * posix/bug-regex4.c (main): Cap RANGE and STOP arguments to
5222         sum of SIZE1 and SIZE2 arguments.
5223
5224 2003-04-06  Ulrich Drepper  <drepper@redhat.com>
5225
5226         * iconv/iconv_prog.c (process_block): Don't print message about
5227         invalid input if the -c option is used.
5228         (main): Correctly append IGNORE string for -c option.
5229
5230 2002-04-06  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
5231
5232         * sysdeps/sh/bits/atomic.h: Moved to ...
5233         * sysdeps/unix/sysv/linux/sh/bits/atomic.h: ... here.  Add comments.
5234         (__arch_compare_and_exchange_val_*_acq): Add parens around macro
5235         arguments.
5236         (atomic_bit_set, atomic_bit_test_set): Likewise.
5237         (atomic_exchange_and_add): Likewise.  Don't evaluate VALUE argument
5238         twice.
5239         (atomic_add, atomic_add_negative, atomic_add_zero): Likewise.
5240
5241 2003-04-06  Roland McGrath  <roland@redhat.com>
5242
5243         * sysdeps/unix/sysv/linux/i386/swapcontext.S: Rewrite register
5244         restoration as done for setcontext yesterday.
5245
5246 2003-04-06  Jakub Jelinek  <jakub@redhat.com>
5247
5248         * elf/rtld.c: Revert 2003-03-14 change.
5249         * elf/dl-conflict.c (_dl_resolve_conflicts): Move
5250         #if ! ELF_MACHINE_NO_RELA conditional into the routine.
5251
5252 2003-04-05  Ulrich Drepper  <drepper@redhat.com>
5253
5254         * sunrpc/xdr.c (xdr_string): Catch nodesize == 0 [PR libc/4999].
5255
5256         * sysdeps/ieee754/ldbl-96/e_gammal_r.c (__ieee754_gammal_r):
5257         Always initialize *signgamp before returning an error.
5258
5259 2003-04-05  Roland McGrath  <roland@redhat.com>
5260
5261         * sysdeps/unix/sysv/linux/i386/setcontext.S: Rewrite to avoid writing
5262         below the stack pointer even if switching to the same context we are
5263         running right now.
5264
5265 2003-04-05  Ulrich Drepper  <drepper@redhat.com>
5266
5267         * catgets/gencat.c (read_input_file): Make sure that \n is not
5268         alone on the line before testing for continuation.
5269
5270         * math/test-tgmath.c (compile_test): Initialize c.
5271
5272 2003-04-05  Alexandre Oliva  <aoliva@redhat.com>
5273
5274         * sysdeps/unix/sysv/linux/mips/mips64/n32/ftruncate64.c: New.
5275         * sysdeps/unix/sysv/linux/mips/mips64/n32/truncate64.c: New.
5276         * sysdeps/unix/sysv/linux/kernel-features.h: fcntl64 is available
5277         on mips n32.
5278         * sysdeps/unix/sysv/linux/mips/kernel_stat.h: Explain why
5279         XSTAT_IS_XSTAT64 must not be used for mips n64.  Use 64-bit data
5280         structure on n32 as well.
5281         * sysdeps/unix/sysv/linux/mips/bits/stat.h: Use POSIX-compliant
5282         data types on n32 and n64.
5283
5284 2003-04-05  Ulrich Drepper  <drepper@redhat.com>
5285
5286         * libio/fileops.c (_IO_new_file_fopen): Don't free step data right
5287         after getting them.
5288
5289         * malloc/thread-m.h [PTHREAD_MUTEX_INITIALIZER]: If
5290         HAVE_register_atfork_malloc is defined use __register_atfork_malloc
5291         instead of __register_atfork.
5292
5293 2003-04-05  Jakub Jelinek  <jakub@redhat.com>
5294
5295         * stdio-common/reg-printf.c (__register_printf_function): Calloc
5296         instead of malloc __printf_arginfo_table and __printf_function_table.
5297         Reported by John Reiser <jreiser@BitWagon.com>.
5298
5299 2003-04-04  Steven Munroe  <sjmunroe@us.ibm.com>
5300
5301         * sysdeps/powerpc/powerpc64/strchr.S: 64-bit optimizations.
5302         * sysdeps/powerpc/powerpc64/strlen.S: 64-bit optimizations.
5303
5304         * sysdeps/powerpc/fpu/bits/mathdef.h (FLT_EVAL_METHOD): Undef before
5305         defining.
5306
5307 2003-04-04  Alexandre Oliva  <aoliva@redhat.com>
5308
5309         * sysdeps/unix/sysv/linux/mips/bits/fcntl.h (struct flock): Adjust
5310         for n64 abi.
5311
5312 2003-04-03  Roland McGrath  <roland@redhat.com>
5313
5314         * configure.in: Fix up use of compilation flags to match the build:
5315         For .s files, $ASFLAGS;
5316         For .S files, $CPPFLAGS $ASFLAGS;
5317         For .c files, $CFLAGS $CPPFLAGS;
5318         when linking, add $LDFLAGS.
5319         * configure: Regenerated.
5320
5321 2003-04-03  Jakub Jelinek  <jakub@redhat.com>
5322
5323         * sysdeps/unix/sysv/linux/getsysstats.c (get_proc_path): Reverse test
5324         for atomic_compare_and_exchange_bool_acq failure.
5325
5326 2003-04-03  Ulrich Drepper  <drepper@redhat.com>
5327
5328         * posix/unistd.h: Define _POSIX_VERSION, _POSIX2_VERSION,
5329         _POSIX2_C_BIND, _POSIX2_C_DEV, _POSIX2_SW_DEV, and
5330         _POSXI2_LOCALEDEF to 200112L.  Remove _POSIX2_C_VERSION.
5331         Remove declaration of pthread_atfork.
5332
5333 2003-04-02  Ulrich Drepper  <drepper@redhat.com>
5334
5335         * locale/iso-639.def: Add many more languages from the current ISO 639.
5336
5337         * sysdeps/unix/sysv/linux/ipc_priv.h: Define IPCOP_semtimedop.
5338         * sysdeps/generic/semtimedop.c: New file.
5339         * sysdeps/unix/sysv/linux/i386/semtimedop.S: New file.
5340         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Add semtimedop.
5341         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
5342         * sysvipc/Makefile (routines): Add semtimedop.
5343         * sysvipc/Versions [GLIBC_2.3.3] (glibc): Add semtimedop.
5344         * sysvipc/sys/sem.h: Declare semtimedop.
5345
5346 2003-04-02  Daniel Jacobowitz  <drow@mvista.com>
5347
5348         * configure.in: Check for __register_frame_info in both
5349         -lgcc and -lgcc_eh.
5350         * configure: Regenerated.
5351
5352 2003-04-01  Roland McGrath  <roland@redhat.com>
5353
5354         * scripts/abilist.awk: Allow dots in soname suffix.
5355
5356         * scripts/abilist.awk (emit): Fix bailout condition.
5357
5358 2003-04-01  Jakub Jelinek  <jakub@redhat.com>
5359
5360         * sysdeps/unix/sysv/linux/sparc/sparc64/sigsuspend.c: Use the
5361         IA-64 version.
5362
5363         * elf/tls-macros.h [__ia64__] (TLS_IE, TLS_LD, TLS_GD): Add gp
5364         register as input to asm.
5365
5366 2003-04-01  Jakub Jelinek  <jakub@redhat.com>
5367
5368         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h (sigevent_t): Fix a typo.
5369
5370 2003-04-01  Andreas Jaeger  <aj@suse.de>
5371
5372         * configure.in: Output as/ld as name if version is too old.
5373
5374 2003-03-31  Daniel Jacobowitz  <drow@mvista.com>
5375
5376         * configure.in: Don't require an installed C library in the test
5377         for ".set" assembler support.
5378
5379 2003-03-31  Roland McGrath  <roland@redhat.com>
5380
5381         * signal/tst-sigset.c: New file.
5382         * signal/Makefile (tests): Add it.
5383
5384 2003-03-31  Ulrich Drepper  <drepper@redhat.com>
5385
5386         * sysdeps/unix/sysv/linux/alpha/bits/signum.h (_NSIG): Define to 65.
5387         * sysdeps/unix/sysv/linux/hppa/bits/signum.h (_NSIG): Likewise.
5388         * sysdeps/unix/sysv/linux/sparc/bits/signum.h (_NSIG): Likewise.
5389         * sysdeps/unix/sysv/linux/bits/signum.h (_NSIG): Likewise.
5390         (__SIGRTMAX): Adjust accordingly.
5391         * sysdeps/gnu/siglist.c: If OLD2_SIGLIST_SIZE is defined define
5392         second compatibility symbol set.
5393         * sysdeps/unix/sysv/linux/siglist.h (OLD2_SIGLIST_SIZE): Define.
5394
5395 2003-03-31  Andreas Schwab  <schwab@suse.de>
5396
5397         * sysdeps/m68k/m68020/bits/atomic.h (atomic_increment_and_test):
5398         Define.
5399         (atomic_decrement_and_test): Fix test.
5400
5401 2003-03-31  Jakub Jelinek  <jakub@redhat.com>
5402
5403         * sysdeps/sparc/sparc32/bits/atomic.h: New file.
5404         * sysdeps/sparc/sparc32/sparcv9/bits/atomic.h: New file.
5405         * sysdeps/sparc/sparc64/bits/atomic.h: New file.
5406         * sysdeps/sparc/sparc32/atomicity.h: Removed.
5407         * sysdeps/sparc/sparc32/sparcv9/atomicity.h: Removed.
5408         * sysdeps/sparc/sparc64/atomicity.h: Removed.
5409
5410 2003-03-30  Roland McGrath  <roland@redhat.com>
5411
5412         * scripts/abilist.awk: Grok .opd foo plus .text .foo as "foo F" alone.
5413
5414         * intl/po2test.sed: Anchor substitution regexps to fix last change.
5415
5416 2003-03-29  Paolo Bonzini  <bonzini@gnu.org>
5417
5418         * intl/po2test.sed: Unify the transformations for msgid and msgstr
5419         and remove a useless s/// command.
5420
5421 2003-03-27  David Mosberger  <davidm@hpl.hp.com>
5422
5423         * sysdeps/ia64/dl-machine.h (RTLD_START): Wrap ".save rp, r0"
5424         directive into empty .prologue region to ensure that call-chain
5425         is terminated even for the first instruction.
5426
5427         * sysdeps/ia64/elf/start.S (_start): Use ".save rp, r0" idiom
5428         to terminate call-chain right from the get-go.
5429
5430         * sysdeps/unix/sysv/linux/ia64/fork.S (fork): Remove unnecessary
5431         stop bit between compare & branch.
5432
5433 2003-03-29  Ulrich Drepper  <drepper@redhat.com>
5434
5435         * stdlib/strtod.c (INTERNAL): Recognize first digit after decimal
5436         point correctly [PR libc/4993].
5437
5438         * sysdeps/unix/sysv/linux/ifaddrs.c (getifaddrs): Avoid
5439         netlink_open calls if netlink is known to not be available.
5440
5441 2003-03-29  Alexandre Oliva  <aoliva@redhat.com>
5442
5443         * configure.in: Add mips64* support.
5444         * sysdeps/mips/bits/endian.h: Make it bi-endian.
5445         * sysdeps/mips/mipsel/bits/endian.h: Removed.
5446         * sysdeps/mips/mips64/n32/el/bits/endian.h: Removed.
5447         * sysdeps/mips/mips64/n64/el/bits/endian.h: Removed.
5448         * sysdeps/mips/mips32/Makefile (CC): Add -mabi=32.
5449         * sysdeps/mips/mips64/n32/Makefile (CC): Add -mabi=n32.
5450         * sysdeps/mips/mips64/n64/Makefile (CC): Add -mabi=64.
5451         * sysdeps/mips/Implies: Moved wordsize-32 to...
5452         * sysdeps/mips/mips32/Implies: New file.
5453         * sysdeps/unix/mips/sysdep.h (PSEUDO_NOERRNO, PSEUDO_END_NOERRNO,
5454         ret_NOERRNO): New.
5455         (ret, PSEUDO_END): Moved past END.
5456         (PSEUDO): Moved to...
5457         * sysdeps/unix/mips/mips32/sysdep.h: New file.
5458         * sysdeps/unix/mips/mips64/n32/sysdep.h: Removed #undef PSEUDO.
5459         * sysdeps/unix/mips/mips64/n64/sysdep.h: Likewise.
5460         * sysdeps/unix/sysv/linux/mips/sysdep.h: Move to...
5461         * sysdeps/unix/sysv/linux/mips/mips32/sysdep.h: New file.
5462         * sysdeps/unix/sysv/linux/mips/mips32/kern64/sysdep.h: New file.
5463
5464         * sysdeps/unix/sysv/linux/mips/clone.S (__thread_start):
5465         Re-introduce ENTRY.
5466
5467 2003-03-28  Thorsten Kukuk  <kukuk@suse.de>
5468
5469         * sysdeps/unix/sysv/linux/ifaddrs.c: New file.
5470         * inet/test-ifaddrs.c: Allow AF_PACKET.
5471         * sysdeps/unix/sysv/linux/kernel-features.h: Add
5472         __ASSUME_NETLINK_SUPPORT.
5473
5474 2003-03-28  Ulrich Drepper  <drepper@redhat.com>
5475
5476         * elf/vismain.c (do_test): Comment out tests which fail in the moment.
5477
5478 2003-03-26  H.J. Lu  <hjl@gnu.org>
5479
5480         * elf/vismod.h (getvarlocal1): Return const char **.
5481         (getvarinmod1): Likewise.
5482         (getvaritcpt1): Likewise.
5483         (getvarlocal2): Likewise.
5484         (getvarinmod2): Likewise.
5485         (getvaritcpt2): Likewise.
5486         (getvaritcpt3): Likewise.
5487         * elf/vismain.c (do_test): Adjusted.
5488         * elf/vismod1.c (getvarlocal1): Return address.
5489         (getvarinmod1): Likewise.
5490         (getvaritcpt1): Likewise.
5491         * elf/vismod2.c (getvarlocal2): Likewise.
5492         (getvarinmod2): Likewise.
5493         (getvaritcpt2): Likewise.
5494         * elf/vismod3.c (getvaritcpt3): Likewise.
5495
5496 2003-03-28  Roland McGrath  <roland@redhat.com>
5497
5498         * elf/vismain.c (do_test): Print both addresses when they don't match.
5499
5500         * scripts/abilist.awk: If given -v filename_regexp and/or -v
5501         libname_regexp when parsing names, then produce output only
5502         for those matching the given regexps.  In combine mode, save all
5503         stanzas for a final sorting by stanza header at the end.
5504         Emit a blank line between stanzas.
5505
5506         * scripts/abilist.awk: When given -v combine=1, do parse_names and
5507         emit a single output stream with lib name in stanza header lines.
5508
5509         * scripts/abilist.awk: Emit A for all *ABS* regardless of type.
5510
5511 2003-03-27  Roland McGrath  <roland@redhat.com>
5512
5513         * sysdeps/powerpc/bits/atomic.h [! __powerpc64__]
5514         (__arch_atomic_decrement_if_positive_64): Fix bogus definition.
5515
5516 2003-03-28  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
5517
5518         * sysdeps/sh/bits/atomic.h (__arch_compare_and_exchange_val_8_acq):
5519         Return old value. Make asm output reg constraint earlyclobber.
5520         Renamed from...
5521         (__arch_compare_and_exchange_8_acq): ... this.
5522         (__arch_compare_and_exchange_val_16_acq):
5523         Return old value. Make asm output reg constraint earlyclobber.
5524         Renamed from...
5525         (__arch_compare_and_exchange_16_acq): ... this.
5526         (__arch_compare_and_exchange_val_32_acq):
5527         Return old value. Make asm output reg constraint earlyclobber.
5528         Renamed from...
5529         (__arch_compare_and_exchange_32_acq): ... this.
5530         (__arch_compare_and_exchange_val_64_acq):
5531         Renamed from...
5532         (__arch_compare_and_exchange_64_acq): ... this.
5533         (atomic_exchange_and_add): Use local variables and
5534         __arch_compare_and_exchange_val_64_acq.
5535         (atomic_add): Likewise.
5536         (atomic_add_negative, atomic_add_zero): Use local variables.
5537
5538 2003-03-28  Alexandre Oliva  <aoliva@redhat.com>
5539
5540         * sysdeps/unix/mips/sysdep.S: Include sys/asm.h.
5541
5542 2003-03-27  Ulrich Drepper  <drepper@redhat.com>
5543
5544         * Makefile: Remove libmd5crypt goal.
5545
5546 2003-03-25  Jakub Jelinek  <jakub@redhat.com>
5547
5548         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Restore
5549         special handling of relocations against local symbols.
5550
5551 2003-03-27  Steven Munroe  <sjmunroe@us.ibm.com>
5552
5553         * sysdeps/powerpc/bits/atomic.h
5554         (__arch_compare_and_exchange_bool_32_acq): Move to [!__powerpc64__].
5555         [__powerpc64__] (__arch_compare_and_exchange_bool_32_acq):
5556         Define PPC64 specific version.
5557         [__powerpc64__] (__arch_compare_and_exchange_bool_64_acq):
5558         Change (mem) constraint to "b".
5559         [__powerpc64__] (__arch_atomic_exchange_and add_64):
5560         Replace addi with add. Change (value) contraint to "r".
5561         Change (mem) constraint to "b".
5562         [__powerpc64__] (__arch_atomic_decrement_if_positive_64): New macro.
5563         (__arch_atomic_exchange_32): Change (mem) constraint to "b".
5564         (__arch_atomic_exchange_and_add_32): Change (mem) constraint to "b".
5565         (__arch_atomic_decrement_if_positive_32): New macro.
5566         (atomic_decrement_if_positive): Use __arch* macros.
5567
5568 2003-03-27  Jakub Jelinek  <jakub@redhat.com>
5569
5570         * sysdeps/ia64/fpu/libm-test-ulps: Update.
5571
5572 2003-03-27  Roland McGrath  <roland@redhat.com>
5573
5574         * scripts/rpm2dynsym.sh: New file.
5575         * Makefile (distribute): Add it.
5576
5577 2003-03-27  David Mosberger  <davidm@hpl.hp.com>
5578
5579         * sysdeps/unix/sysv/linux/ia64/getcontext.S: Restore caller's
5580         ar.unat before returning.  Add missing .mem.offset directives
5581         to ensure file gets assembled without warnings.
5582         * sysdeps/unix/sysv/linux/ia64/setjmp.S: Likewise.
5583
5584 2003-03-27  Jakub Jelinek  <jakub@redhat.com>
5585
5586         * sysdeps/unix/sysv/linux/sysconf.c (__sysconf) <_SC_MONOTONIC_CLOCK>:
5587         Return -1 instead of 0 if clock_getres failed.
5588
5589 2003-03-27  Roland McGrath  <roland@redhat.com>
5590
5591         * scripts/abilist.awk: If variable `parse_names' is set, grok the file
5592         header lines and write out foo.symlist files for each foo.so.NN listed.
5593
5594         * libio/libioP.h (_IO_wfile_jumps): Remove attribute_hidden.
5595         This symbol is exported, and we don't want to hide it.
5596         Add libc_hidden_proto instead.
5597         (_IO_file_jumps): Add libc_hidden_proto.
5598         * libio/wfileops.c (_IO_wfile_jumps): Add libc_hidden_data_def.
5599         Remove INTVARDEF.
5600         * libio/fileops.c (_IO_file_jumps): Likewise.
5601         * libio/stdfiles.c: Don't use INTUSE on them.
5602         * libio/iofdopen.c (_IO_new_fdopen): Likewise.
5603         * libio/iofopen.c (__fopen_internal): Likewise.
5604         * libio/freopen.c (freopen): Likewise.
5605         * libio/freopen64.c (freopen64): Likewise.
5606         * libio/iovdprintf.c (_IO_vdprintf): Likewise.
5607
5608         * Makerules (check-abi) [$(enable-check-abi) = warn]:
5609         Ignore exit status from diff.
5610         * configure.in (enable_check_abi): Document possible value "warn".
5611         Change default to no for now.
5612         * configure: Regenerated.
5613
5614         * sysdeps/unix/Makefile ($(objpfx)stub-syscalls.c): Emit stub_warning
5615         macro calls and a #include <stub-tag.h> at the end.
5616         * Makerules ($(objpfx)stubs): Tweak sed commands.
5617
5618         * sysdeps/unix/sysv/linux/syscalls.list: Use - rather than EXTRA in
5619         caller column for *xattr syscalls, since they are in sysdeps/generic.
5620
5621         * sysdeps/unix/sysv/linux/i386/setfsuid.c: setfsgid -> setfsuid
5622         * sysdeps/unix/sysv/linux/i386/setfsgid.c: setfsuid -> setfsgid
5623
5624 2003-03-26  Roland McGrath  <roland@redhat.com>
5625
5626         * Makerules (check-abi-config): Use /thread instead of /tls when
5627         use-thread and not just use-tls is set.
5628
5629         * Makerules (update-abi): Put quotes around $(update-abi-config).
5630
5631         * elf/Makefile (check-abi): Depend on check-abi-ld.
5632         (update-abi): Depend on update-abi-ld.
5633
5634 2003-03-26  GOTO Masanori  <gotom@debian.or.jp>
5635
5636         * sysdeps/unix/sysv/linux/i386/setfsuid.c: Use INTERNAL_SYSCALL and
5637         do not check for errors (unless testing for 32bit variant).
5638         * sysdeps/unix/sysv/linux/i386/setfsgid.c: Likewise.
5639
5640 2003-03-27  Philip Blundell  <philb@gnu.org>
5641
5642         * sysdeps/unix/sysv/linux/arm/sysdep.h (PSEUDO_RET_NOERRNO): Use
5643         unconditional mov.  Remove nop.
5644
5645         * sysdeps/unix/sysv/linux/kernel-features.h
5646         (__ASSUME_VFORK_SYSCALL): Define for kernel 2.4 on arm.
5647         * sysdeps/unix/sysv/linux/arm/vfork.S: Elide compatibility code
5648         when __ASSUME_VFORK_SYSCALL is defined.
5649         * sysdeps/unix/sysv/linux/arm/mmap64.S: Likewise for
5650         __ASSUME_MMAP2_SYSCALL.
5651         * sysdeps/unix/sysv/linux/arm/sigaction.c: Likewise for
5652         __ASSUME_REALTIME_SIGNALS.
5653
5654 2003-03-26  Ulrich Drepper  <drepper@redhat.com>
5655
5656         * sysdeps/generic/ldsodefs.h (ELF_RTYPE_CLASS_COPY): Define to 2
5657         only if DL_NO_COPY_RELOCS is not defined.
5658         * sysdeps/ia64/dl-lookupcfg.h: Define DL_NO_COPY_RELOCS.
5659
5660 2003-03-26  Roland McGrath  <roland@redhat.com>
5661
5662         * sysdeps/unix/make-syscalls.sh: When an undefined syscall has
5663         SOURCE=-, append its symbol names to make variable unix-stub-syscalls.
5664         * sysdeps/unix/Makefile [$(subdir) = misc] [unix-stub-syscalls]
5665         (sysdep_routines): Add stub-syscalls.
5666         ($(objpfx)stub-syscalls.c): New target.
5667         (generated): Add stub-syscalls.c.
5668
5669         * tls.make.c: Also define use-tls according to USE_TLS macro.
5670
5671 2003-03-26  Ulrich Drepper  <drepper@redhat.com>
5672
5673         * sysdeps/unix/sysv/linux/alpha/bits/siginfo.h (struct siginfo): Avoid
5674         no-op padding element.
5675         * sysdeps/unix/sysv/linux/bits/siginfo.h: Likewise.
5676         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Likewise.
5677         * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Likewise.
5678         * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Likewise.
5679
5680 2003-03-26  GOTO Masanori  <gotom@debian.or.jp>
5681
5682         * sysdeps/unix/sysv/linux/i386/getgroups.c: Fix the error
5683         condition check for the return value of getgroups32.
5684
5685 2003-03-26  Jakub Jelinek  <jakub@redhat.com>
5686
5687         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (PSEUDO_NOERRNO):
5688         Fix a typo.
5689         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h (PSEUDO_NOERRNO,
5690         PSEUDO_END_NOERRNO): Define.
5691         * sysdeps/unix/sysdep.h (PSEUDO_END_NOERRNO): Fix a typo.
5692         Define to PSEUDO_END.
5693
5694 2003-03-26  Ulrich Drepper  <drepper@redhat.com>
5695
5696         * abilist/librt.abilist: Add new timer interfaces for 64-bit archs.
5697
5698 2003-03-25  Jiro SEKIBA  <jir@yamato.ibm.com>
5699
5700         * iconvdata/euc-tw.c (from_euc_tw): Fix return value of TO_LOOP.
5701         * iconvdata/bug-iconv4.c: New file.
5702         * iconvdata/Makefile (tests): Add bug-iconv4.
5703
5704 2003-03-25  H.J. Lu  <hjl@gnu.org>
5705
5706         * elf/dl-lookup.c (_dl_lookup_symbol): Avoid looking up protected
5707         symbols twice.
5708         (_dl_lookup_versioned_symbol): Likewise.
5709
5710 2003-03-26  Jakub Jelinek  <jakub@redhat.com>
5711
5712         * csu/tst-atomic.c (do_test): Add some new
5713         atomic_compare_and_exchange_val_acq, atomic_add_zero,
5714         atomic_compare_and_exchange_bool_acq and atomic_add_negative tests.
5715         * include/atomic.h (atomic_add_negative, atomic_add_zero):
5716         Prefix local variable so that it doesn't clash with the one
5717         in atomic_exchange_and_add.
5718         * sysdeps/ia64/bits/atomic.h (atomic_exchange): Fix for long/void *
5719         pointers.
5720         (atomic_exchange_and_add): Implement using __sync_fetch_and_add_?i.
5721         * sysdeps/powerpc/bits/atomic.h (atomic_exchange_and_add): Force
5722         value into register.
5723         * sysdeps/s390/bits/atomic.h (__arch_compare_and_exchange_val_64_acq):
5724         Cast newval to long.
5725         * sysdeps/x86_64/bits/atomic.h
5726         (__arch_compare_and_exchange_val_64_acq): Cast newval and oldval to
5727         long.
5728         (atomic_exchange): Cast newvalue to long if sizeof == 8.
5729         (atomic_exchange_and_add): Cast value to long if sizeof == 8.
5730         (atomic_add, atomic_add_negative, atomic_add_zero): Likewise.
5731         (atomic_bit_set): Shift 1L up in all cases to shut up warnings.
5732
5733 2003-03-21  Martin Schwidefsky  <schwidefskyde.ibm.com>
5734
5735         * sysdeps/s390/s390-32/backtrace.c (__backtrace): Remove high order
5736         bit from backtrace addresses.
5737
5738 2003-03-21  Andreas Schwab  <schwab@suse.de>
5739
5740         * sysdeps/unix/sysv/linux/i386/chown.c: Don't define any versioned
5741         __chown symbols.
5742
5743 2003-03-25  Roland McGrath  <roland@redhat.com>
5744
5745         * config.make.in (enable-check-abi): New variable from configure.
5746         * configure.in (enable_check_abi): New substituted variable,
5747         controlled by --{enable,disable}-check-abi (default yes).
5748         * configure: Regenerated.
5749         * Makerules [$(enable-check-abi) = yes] (tests): Put this condition
5750         on check-abi dependency.
5751
5752 2003-03-26  Andreas Schwab  <schwab@suse.de>
5753
5754         * sysdeps/m68k/m68020/bits/atomic.h: Fix typos.
5755         * include/atomic.h: Likewise.
5756
5757         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Define ret_NOERRNO.
5758
5759 2003-03-25  Roland McGrath  <roland@redhat.com>
5760
5761         * sysdeps/powerpc/bits/atomic.h (__arch_atomic_exchange_32): New macro.
5762         (__arch_atomic_exchange_64): New macro.
5763         (atomic_exchange): Use them.
5764         (__arch_atomic_exchange_and_add_32): New macro.
5765         (__arch_atomic_exchange_and_add_64): New macro.
5766         (atomic_exchange_and_add): Use them.
5767         Original patch from Steven Munroe <sjmunroe@us.ibm.com>.
5768
5769 2003-03-25  Alexandre Oliva  <aoliva@redhat.com>
5770
5771         * sysdeps/mips/sgidefs.h (_MIPS_ISA_MIPS32, _MIPS_ISA_MIPS64):
5772         Define.
5773         * sysdeps/mips/sys/asm.h: Test _MIPS_ISA against them on all
5774         ISA tests.
5775         (ALSZ, ALMASK, SZREG, REG_S, REG_L): Define based on ABI, not ISA.
5776         (PTR_ADD, etc): Test _MIPS_SZPTR instead of _MIPS_SZLONG.
5777         * sysdeps/unix/sysv/linux/mips/bits/sigaction.h: Use _MIPS_SZPTR
5778         to decide whether to add padding.
5779         * sysdeps/unix/sysv/linux/mips/bits/sigaction.h: Use _MIPS_SZPTR
5780         to decide whether to add padding.
5781         * sysdeps/unix/sysv/linux/mips/kernel_sigaction.h (struct
5782         old_kernel_sigaction): Likewise.
5783
5784 2003-03-25  Ulrich Drepper  <drepper@redhat.com>
5785
5786         * csu/tst-atomic.c: Adjust tests to what atomic_add_negative and
5787         atomic_add_zero were supposed to do.
5788         * include/atomic.h: Adjust atomic_add_negative and atomic_add_zero
5789         to x86 behavior.
5790
5791         * sysdeps/generic/bits/typesizes.h (__TIMER_T_TYPE): Define as void*.
5792         This matches the new timer implementation.
5793         * sysdeps/unix/sysv/linux/sparc/bits/typesizes.h (__TIMER_T_TYPE):
5794         Likewise.
5795         * sysdeps/unix/sysv/linux/alpha/bits/typesizes.h (__TIMER_T_TYPE):
5796         Likewise.
5797         * sysdeps/unix/sysv/linux/bits/siginfo.h (struct siginfo): Adjust
5798         timer info for what the kernel provides these days.
5799         (struct sigevent): Add _tid field.
5800         Define SIGEV_THREAD_ID.
5801         Remove struct __pthread_attr_s forward declaration.
5802         * sysdeps/unix/sysv/linux/alpha/bits/siginfo.h: Likewise.
5803         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Likewise.
5804         * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Likewise.
5805         * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Likewise.
5806
5807         * Versions.def (librt): Add GLIBC_2.3.3.
5808
5809         * abilist/libpthread.abilist: Update for nptl.
5810
5811 2003-03-24  Jon Grimm  <jgrimm@us.ibm.com>
5812
5813         * inet/netinet/in.h: Add IPPROTO_SCTP.
5814
5815 2003-03-24  Ulrich Drepper  <drepper@redhat.com>
5816
5817         * sysdeps/unix/sysv/linux/sys/epoll.h (EPOLLET): Define.
5818
5819 2003-03-24  Philip Blundell  <philb@gnu.org>
5820
5821         * sysdeps/unix/sysv/linux/arm/sysdep.h (INTERNAL_SYSCALL):
5822         Remove a1 from clobber list.
5823
5824 2003-03-24  Ulrich Drepper  <drepper@redhat.com>
5825
5826         * timezone/antarctica: Update from tzdata2003a.
5827         * timezone/asia: Likewise.
5828         * timezone/australasia: Likewise.
5829         * timezone/europe: Likewise.
5830         * timezone/iso3166.tab: Likewise.
5831         * timezone/northamerica: Likewise.
5832         * timezone/southamerica: Likewise.
5833         * timezone/zone.tab: Likewise.
5834
5835 2003-03-24  Steven Munroe  <sjmunroe@us.ibm.com>
5836
5837         * sysdeps/powerpc/powerpc64/sysdep.h (PSEUDO_END_NOERRNO): Fix typo.
5838
5839 2003-03-23  Ulrich Drepper  <drepper@redhat.com>
5840
5841         * sysdeps/unix/sysv/linux/ia64/sysdep.h (ret_NOERRNO): Avoid
5842         unwanted expansion by definining to ret.  Patch by Ian Wienand.
5843
5844         * sysdeps/unix/make-syscalls.sh: Recognize 'E' in first position of
5845         the parameter description to denote no error checking.  Generate
5846         appropriate pseudo asm code.
5847         * sysdeps/unix/syscalls.list: Mark getgid, getpid, getuid with 'E'.
5848         * sysdeps/unix/sysv/linux/syscalls.list: Mark getegid, geteuid,
5849         getpgrp, and getppid with 'E'.
5850         * sysdeps/powerpc/powerpc32/sysdep.h: Define PSEUDO_NOERRNO,
5851         PSEUDO_END_NOERRNO, and ret_NOERRNO.
5852         * sysdeps/powerpc/powerpc64/sysdep.h: Likewise.
5853         * sysdeps/unix/sysdep.h: Likewise.
5854         * sysdeps/unix/alpha/sysdep.h: Likewise.
5855         * sysdeps/unix/sparc/sysdep.h: Likewise.
5856         * sysdeps/unix/sysv/linux/arm/sysdep.h: Likewise.
5857         * sysdeps/unix/sysv/linux/cris/sysdep.h: Likewise.
5858         * sysdeps/unix/sysv/linux/hppa/sysdep.h: Likewise.
5859         * sysdeps/unix/sysv/linux/i386/sysdep.h: Likewise.
5860         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Likewise.
5861         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Likewise.
5862         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Likewise.
5863         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise.
5864         * sysdeps/unix/sysv/linux/sh/sysdep.h: Likewise.
5865         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Likewise.
5866         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
5867
5868 2003-03-23  Roland McGrath  <roland@redhat.com>
5869
5870         * Makeconfig (+includes): Don't use $(last-includes).
5871
5872 2003-03-22  Alexandre Oliva  <aoliva@redhat.com>
5873
5874         * sysdeps/unix/sysv/linux/configure.in: Update mips64 patterns.
5875         * sysdeps/unix/sysv/linux/configure: Rebuilt.
5876
5877 2003-03-23  Jakub Jelinek  <jakub@redhat.com>
5878
5879         * sysdeps/alpha/fpu/libm-test-ulps: Update.
5880         * sysdeps/arm/libm-test-ulps: Update.
5881         * sysdeps/hppa/fpu/libm-test-ulps: Update.
5882         * sysdeps/ia64/fpu/libm-test-ulps: Update.
5883         * sysdeps/mips/fpu/libm-test-ulps: Update.
5884         * sysdeps/powerpc/nofpu/libm-test-ulps: Update.
5885         * sysdeps/powerpc/fpu/libm-test-ulps: Update.
5886         * sysdeps/sparc/sparc32/fpu/libm-test-ulps: Update.
5887         * sysdeps/sparc/sparc64/fpu/libm-test-ulps: Update.
5888         * sysdeps/sh/sh4/fpu/libm-test-ulps: Update.
5889         * sysdeps/s390/fpu/libm-test-ulps: Update.
5890         * sysdeps/x86_64/fpu/libm-test-ulps: Update.
5891
5892 2003-03-22  Roland McGrath  <roland@redhat.com>
5893
5894         * include/atomic.h: Put parens around all macro arguments.
5895         (__atomic_val_bysize, __atomic_bool_bysize): New macros.
5896         (atomic_compare_and_exchange_val_acq): Use it.
5897         (atomic_compare_and_exchange_bool_acq): Likewise.
5898         (atomic_increment_and_test): Invert sense of test.
5899         (atomic_decrement_and_test): Likewise.
5900         * csu/tst-atomic.c: Update those tests to match.
5901
5902 2003-03-22  Jakub Jelinek  <jakub@redhat.com>
5903
5904         * include/atomic.h (atomic_compare_and_exchange_val_acq): Add comment.
5905         Don't define if __arch_compare_and_exchange_val_32_acq is not defined.
5906         (atomic_compare_and_exchange_bool_acq): Add comment.  Don't use
5907         __oldval variable in the macro, since it might be macro argument.
5908         (atomic_decrement_if_positive): Initialize __memp, remove setting
5909         of non-existent variable.
5910         (atomic_bit_test_set): Cast 1 to __typeof (*mem) before shifting.
5911         * sysdeps/ia64/bits/atomic.h (atomic_exchange_and_add): Implement
5912         using atomic_compare_and_exchange_val_acq.
5913         (atomic_decrement_if_positive, atomic_bit_test_set): Define.
5914         * sysdeps/s390/bits/atomic.h (__arch_compare_and_exchange_val_8_acq):
5915         Renamed from...
5916         (__arch_compare_and_exchange_bool_8_acq): ... this.
5917         (__arch_compare_and_exchange_val_16_acq): Renamed from...
5918         (__arch_compare_and_exchange_bool_16_acq): ... this.
5919         (__arch_compare_and_exchange_val_32_acq): Return old value.  Renamed
5920         from...
5921         (__arch_compare_and_exchange_bool_32_acq): ... this.
5922         (__arch_compare_and_exchange_val_64_acq): Return old value.  Renamed
5923         from...
5924         (__arch_compare_and_exchange_bool_64_acq): ... this.
5925         (__arch_compare_and_exchange_val_32_acq): Use __typeof for local
5926         variables types instead of assuming int.
5927         Change prefix of local variables to __arch.
5928         * sysdeps/generic/bits/atomic.h (arch_compare_and_exchange_acq):
5929         Remove.
5930         (atomic_compare_and_exchange_val_acq,
5931         atomic_compare_and_exchange_bool_acq): Define.
5932
5933         * csu/tst-atomic.c: New test.
5934         * csu/tst-atomic-long.c: New test.
5935         * csu/Makefile (tests): Add tst-atomic and tst-atomic-long.
5936
5937         * malloc/memusagestat.c (main): Kill warning if uint64_t is ulong.
5938
5939         * sysdeps/s390/Versions: Add trailing newline.
5940
5941         * sysdeps/unix/sysv/linux/sysconf.c (__sysconf): Kill warning
5942         if INTERNAL_SYSCALL_ERROR_P doesn't use its first argument.
5943
5944 2003-03-22  Andreas Schwab  <schwab@suse.de>
5945
5946         * sysdeps/m68k/fpu/libm-test-ulps: Update.
5947
5948         * sysdeps/m68k/m68020/bits/atomic.h: New file.
5949         * sysdeps/m68k/m68020/atomicity.h: Removed.
5950
5951 2003-03-22  Alexandre Oliva  <aoliva@redhat.com>
5952
5953         * sysdeps/mips/elf/ldsodefs.h: Add mips-specific elf64 relocation
5954         data structures and macros.  Protect from multiple inclusion.
5955
5956         * sysdeps/mips/dl-machine.h (ELF_MIPS_GNU_GOT1_MASK): Fix harmless
5957         typo in #if test.
5958
5959 2003-03-21  Andreas Jaeger  <aj@suse.de>
5960
5961         * sysdeps/i386/fpu/libm-test-ulps: Update.
5962
5963         * math/libm-test.inc (tgamma_test): Recompute some constants with
5964         36 digits precision.
5965         (lgamma_test): Likewise.
5966         (ccos_test): Likewise.
5967         (ccosh_test): Likewise.
5968         (clog10_test): Likewise.
5969         (csin_test): Likewise.
5970         (csinh_test): Likewise.
5971         (ctan_test): Likewise.
5972         (ctanh_test): Likewise.
5973
5974 2003-03-19  Jakub Jelinek  <jakub@redhat.com>
5975
5976         * sysdeps/sparc/sparc64/fpu/libm-test-ulps: Regenerated.
5977
5978 2003-03-21  Roland McGrath  <roland@redhat.com>
5979
5980         * sysdeps/i386/i486/bits/atomic.h (atomic_bit_set): Use "ir"
5981         constraint to permit non-constant BIT argument.
5982         (atomic_bit_test_set): Likewise.
5983         * sysdeps/x86_64/bits/atomic.h (atomic_bit_test_set): Likewise.
5984         (atomic_bit_set): Likewise.  Use 1UL in case that BIT might be >= 32.
5985         For quadword case, use "i" constraint if __builtin_constant_p and < 32
5986         or "r" constraint otherwise.
5987
5988         * configure.in: Move AC_PROG_CC and other program-finding before all
5989         the version checks.
5990         * configure: Regenerated.
5991
5992 2003-03-21  Alexandre Oliva  <aoliva@redhat.com>
5993
5994         * sysdeps/mips/mips64/memcpy.S: Fix porting bug that broke
5995         unaligned copying of 8-15 bytes.  From Chris Demetriou
5996         <cgd@broadcom.com>.  Fix label names.
5997         * sysdeps/mips/mips64/memset.S: Fix label names.  Make similar
5998         change as to memcpy.S.
5999         * sysdeps/mips/memcpy.S: Formatting changes.
6000         * sysdeps/mips/memset.S: Likewise.
6001
6002 2003-03-21  Roland McGrath  <roland@redhat.com>
6003
6004         * sysdeps/arm/sysdep.h (CALL_MCOUNT): Add trailing semicolon.
6005
6006 2003-03-21  Alexandre Oliva  <aoliva@redhat.com>
6007
6008         * sysdeps/mips/mips64/memcpy.S, sysdeps/mips/mips64/memset.S: New.
6009         * sysdeps/mips/memcpy.S, sysdeps/mips/memset.S: Update comments.
6010
6011 2003-03-21  Roland McGrath  <roland@redhat.com>
6012
6013         * sysdeps/i386/i486/bits/atomic.h
6014         (__arch_compare_and_exchange_val_64_acq): Rewrite abort-calling
6015         version of the macro to avoid compile-time warnings.
6016         [! __PIC__] (__arch_compare_and_exchange_64_acq): Rename to above.
6017         (atomic_exchange_and_add, atomic_add): Fix name and usage of it.
6018         (atomic_increment, atomic_decrement): Likewise.
6019
6020 2003-03-21  Ulrich Drepper  <drepper@redhat.com>
6021
6022         * sysdeps/x86_64/bits/atomic.h: Don't use matching memory constraints.
6023         * sysdeps/i386/i486/bits/atomic.h: Likewise.
6024
6025 2003-03-21  Roland McGrath  <roland@redhat.com>
6026
6027         * include/atomic.h (atomic_compare_and_exchange_bool_acq): Typo fix.
6028
6029 2003-03-20  Ulrich Drepper  <drepper@redhat.com>
6030
6031         * include/atomic.h: Define atomic_compare_and_exchange_val_acq,
6032         atomic_compare_and_exchange_val_rel,
6033         atomic_compare_and_exchange_bool_acq, and
6034         atomic_compare_and_exchange_bool_rel instead of
6035         atomic_compare_and_exchange_acq and atomic_compare_and_exchange_rel.
6036         * sysdeps/i386/i486/bits/atomic.h: Define
6037         __arch_compare_and_exchange_val_*_acq instead of
6038         __arch_compare_and_exchange_*_acq.
6039         * sysdeps/x86_64/bits/atomic.h: Likewise.
6040         * sysdeps/ia64/bits/atomic.h: Define
6041         __arch_compare_and_exchange_bool_*_acq instead of
6042         __arch_compare_and_exchange_*_acq.
6043         * sysdeps/powerpc/bits/atomic.h: Likewise.
6044         * sysdeps/s390/bits/atomic.h: Likewise.
6045         * gmon/mcount.c: Adjust for new form of compare&exchange macros.
6046         * malloc/set-freeres.c: Likewise.
6047         * nscd/cache.c: Likewise.
6048         * stdlib/cxa_finalize.c: Likewise.
6049         * sysdeps/unix/sysv/linux/getsysstats.c: Likewise.
6050
6051 2003-03-20  Alexandre Oliva  <aoliva@redhat.com>
6052
6053         * sysdeps/mips/bits/setjmp.h: n32 has only 6 call-saved fpregs.
6054         * sysdeps/mips/mips64/setjmp_aux.c (__sigsetjmp_aux): Adjust.
6055         * sysdeps/mips/mips64/__longjmp.c (__longjmp): Likewise.
6056
6057         * sysdeps/unix/sysv/linux/mips/pread.c: Don't break up offset
6058         into high and low halves on n64.
6059         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
6060         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
6061         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
6062
6063 2003-03-20  Ulrich Drepper  <drepper@redhat.com>
6064
6065         * include/atomic.h (atomic_decrement_if_positive): Adjust for the
6066         correct atomic_compare_and_exchange_acq semantics.
6067
6068 2003-03-20  Alexandre Oliva  <aoliva@redhat.com>
6069
6070         * sysdeps/mips/ieee754.h: Remove excess #endif.
6071
6072 2003-03-20  Roland McGrath  <roland@redhat.com>
6073
6074         * sysdeps/powerpc/bits/atomic.h (atomic_exchange): Remove unused
6075         variable.  Remove superfluous memory clobber.
6076
6077         * include/atomic.h: Syntax braino fix.
6078
6079         * posix/tst-nice.c (do_test): Use %m formats instead of printing errno
6080         in decimal.  Don't bail if niced at start.  Just check that nice call
6081         bumps the total at all.
6082
6083 2003-03-20  Alexandre Oliva  <aoliva@redhat.com>
6084
6085         * sysdeps/mips/bits/setjmp.h: Store all N32 and N64 registers,
6086         including pc, gp, sp and fp, as long long.
6087         * sysdeps/mips/mips64/setjmp.S: Pass gp to __sigsetjmp_aux.
6088         * sysdeps/mips/mips64/setjmp_aux.c: Adjust type of arguments.
6089         Add gp argument, and set gp in the jmpbuf to it.
6090         * sysdeps/mips/setjmp_aux.c: Revert to o32-only.
6091
6092 2003-03-20  Ulrich Drepper  <drepper@redhat.com>
6093
6094         * include/atomic.h: Define atomic_exchange and
6095         atomic_decrement_if_positive if not already defined.  Add some
6096         __builtin_expect.
6097         * sysdeps/i386/i486/bits/atomic.h: Define atomic_exchange.
6098         * sysdeps/x86_64/bits/atomic.h: Likewise.
6099         * sysdeps/ia64/bits/atomic.h: Pretty printing.  Define atomic_exchange.
6100         * sysdeps/powerpc/bits/atomic.h: Pretty printing.  Define
6101         atomic_exchange, atomic_exchange_and_add, and
6102         atomic_decrement_if_positive
6103
6104 2003-03-20  Alexandre Oliva  <aoliva@redhat.com>
6105
6106         * sysdeps/unix/sysv/linux/mips/mips64/n64/ioctl.S: Sign-extend
6107         with a single instruction.
6108
6109         * sysdeps/mips/dl-machine.h (ELF_MIPS_GNU_GOT1_MASK): Define
6110         properly for n64.
6111         (elf_machine_runtime_setup): Cast link_map pointer to Elf Addr
6112         type.
6113         (elf_machine_rel, elf_machine_rel_relative): Cast symidx to Elf
6114         Word before comparing with gotsym.  Take reloc_addr argument as
6115         void*.  Remove the code added for the compiler to drop any
6116         alignment assumptions.
6117
6118 2003-03-19  Ulrich Drepper  <drepper@redhat.com>
6119
6120         * Makefile (distribute): Add include/atomic.h and bits/atomic.h.
6121         * include/atomic.h: New file.
6122         * sysdeps/i386/i486/bits/atomic.h: New file.
6123         * sysdeps/x86_64/bits/atomic.h: New file.
6124         * sysdeps/s390/bits/atomic.h: New file.
6125         * sysdeps/sh/bits/atomic.h: New file.
6126         * sysdeps/ia64/bits/atomic.h: New file.
6127         * sysdeps/powerpc/bits/atomic.h: New file.
6128         * sysdeps/generic/bits/atomic.h: New file.
6129         * sysdeps/i386/i486/atomicity.h: Removed.
6130         * sysdeps/x86_64/atomicity.h: Removed.
6131         * sysdeps/s390/s390-32/atomicity.h: Removed.
6132         * sysdeps/s390/s390-64/atomicity.h: Removed.
6133         * sysdeps/ia64/atomicity.h: Removed.
6134         * sysdeps/powerpc/powerpc32/atomicity.h: Removed.
6135         * sysdeps/powerpc/powerpc64/atomicity.h: Removed.
6136         * elf/dl-profile.c: Use atomic.h instead of atomicity.h.  Adjust
6137         use of macros from atomicity.h to new names and semantics.
6138         * gmon_mcount.c: Likewise.
6139         * malloc/set-freeres.c: Likewise.
6140         * nscd/cache.c: Likewise.
6141         * stdlib/cxa_finalize.c: Likewise.
6142         * sysdeps/unix/sysv/linux/getsysstats.c: Likewise.
6143
6144 2003-03-19  Alexandre Oliva  <aoliva@redhat.com>
6145
6146         * sysdeps/mips/ieee754.h: New file, suitable to replace both
6147         ../ieee754/ieee754.h and ../ieee754/ldbl-128/ieee754.h, kept
6148         mips-specific for now.
6149
6150 2003-03-19  Ulrich Drepper  <drepper@redhat.com>
6151
6152         * stdlib/strtod.c (INTERNAL): While eating trailing zeros handle
6153         hexdigits correctly.  Reported by Fred Tydeman <tydeman@tybor.com>.
6154         * stdlib/tst-strtod.c: Add test for the bug.
6155
6156         * posix/tst-nice.c (do_test): Remove invalid of return value.
6157         Don't run test if initial level != 0.
6158
6159 2003-03-19  Amos Waterland  <apw@us.ibm.com>
6160
6161         * posix/tst-nice.c: New file.
6162         * posix/Makefile (tests): Add tst-nice.
6163
6164 2003-03-18  Roland McGrath  <roland@redhat.com>
6165
6166         * abilist: New directory of libfoo.abilist files maintained using
6167         scripts/merge-abilist.awk and "make update-abi" rules.
6168         * Makefile (distribute): Add abilist/*.abilist.
6169         * Makerules [$(build-shared) = yes] [$(subdir)] (tests):
6170         Depend on check-abi.
6171
6172         * configure.in: Move $critic_missing check after all AC_CHECK_PROG_VER.
6173         * configure: Regenerated.
6174
6175         * sysdeps/unix/sysv/linux/syscalls.list (posix_fadvise64): Fix name.
6176
6177 2003-03-18  Ulrich Drepper  <drepper@redhat.com>
6178
6179         * sysdeps/posix/sysconf.c (__sysconf): Handle _SC_MONOTONIC_CLOCK
6180         correctly.
6181
6182 2003-03-18  Steven Munroe  <sjmunroe@us.ibm.com>
6183
6184         * sysdeps/powerpc/powerpc64/memcpy.S: New file.
6185
6186 2003-03-18  Ulrich Drepper  <drepper@redhat.com>
6187
6188         * Versions.def: Add GLIBC_2.3.3 for libpthread.
6189
6190 2003-03-17  Ulrich Drepper  <drepper@redhat.com>
6191
6192         * sysdeps/generic/libc-start.c [!SHARED &&
6193         !LIBC_START_MAIN_AUXVEC_ARG]: Compute beginning of auxvec correctly.
6194
6195 2003-03-17  Roland McGrath  <roland@redhat.com>
6196
6197         * include/ctype.h: Revert last change.
6198
6199 2003-03-17  Ulrich Drepper  <drepper@redhat.com>
6200
6201         * argp/tst-argp1.c: Use test-skeleton.c.
6202         * locale/tst-C-locale.c: Likewise.
6203
6204 2003-03-17  Alexandre Oliva  <aoliva@redhat.com>
6205
6206         * sysdeps/mips/mips64/Implies: Move wordsize-64 to...
6207         * sysdeps/mips/mips64/n64/Implies: New file.
6208         * sysdeps/mips/mips64/n64/Makefile: New file.
6209         * sysdeps/mips/mips64/n64/el/bits/endian.h: New file.
6210         * sysdeps/mips/mips64/n32/Implies: New file.
6211         * sysdeps/mips/mips64/n32/Makefile: New file.
6212         * sysdeps/mips/mips64/n32/el/bits/endian.h: New file.
6213         * sysdeps/unix/mips/mips64/n32/sysdep.h: New file.
6214         * sysdeps/unix/mips/mips64/n64/sysdep.h: New file.
6215         * sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h: New file.
6216         * sysdeps/unix/sysv/linux/mips/mips64/n64/glob64.c: New file.
6217         * sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h: New file.
6218         * sysdeps/unix/sysv/linux/mips/mips64/ldconfig.h: New file.
6219         * sysdeps/unix/sysv/linux/mips/mips64/llseek.c: New file.
6220         * sysdeps/unix/sysv/linux/mips/mips64/recv.c: New file.
6221         * sysdeps/unix/sysv/linux/mips/mips64/send.c: New file.
6222         * sysdeps/unix/sysv/linux/mips/mips64/syscall.S: New file.
6223         * sysdeps/unix/sysv/linux/mips/mips64/syscalls.list: New file.
6224         * sysdeps/unix/sysv/linux/mips/mips64/umount.c: New file.
6225         * sysdeps/unix/sysv/linux/mips/mips64/n64/ioctl.S: New file.
6226
6227         * sysdeps/unix/sysv/linux/configure.in (libc_cv_slibdir): Use
6228         lib64 for mips64/n64 and lib32 for mips64/n32.
6229         (ldd_rewrite_script): Needed for all mips64 configurations.
6230         * sysdeps/unix/sysv/linux/configure: Rebuilt.
6231         * sysdeps/unix/sysv/linux/mips/mips64/ldd-rewrite.sed: New file.
6232         * sysdeps/unix/sysv/linux/mips/mips64/Dist: New file.
6233
6234         * sysdeps/mips/machine-gmon.h (MCOUNT): Define for N32 and N64 as
6235         well.
6236
6237         * sysdeps/unix/sysv/linux/mips/configure.in: New.  Pre-process
6238         asm/unistd.h into asm-unistd.h.
6239         * sysdeps/unix/sysv/linux/mips/configure: Generated.
6240         * sysdeps/unix/sysv/linux/mips/Makefile: Do custom processing
6241         of syscall list.
6242         * sysdeps/unix/sysv/linux/mips/sys/syscall.h: New file.
6243         * sysdeps/unix/sysv/linux/mips/clone.S: Don't include
6244         asm/unistd.h.
6245
6246         * sysdeps/unix/sysv/linux/mips/sys/ptrace.h: New file.
6247         * sysdeps/unix/sysv/linux/mips/ptrace.c: New file.  Use long
6248         long type for registers on n32.
6249
6250         * sysdeps/mips/bits/wordsize.h: New file, appropriate for all
6251         3 ABIs.
6252         * sysdeps/mips/mips64/gmp-mparam.h: New file.  Define
6253         BITS_PER_LONGINT to __WORDSIZE, to match all 3 ABIs.
6254         * sysdeps/mips/setjmp_aux.c (STRINGXP, REGS, PTRS): New macros.
6255         (__sigsetjmp_aux): Use them.  Adjust for all 3 ABIs.
6256         * sysdeps/mips/elf/start.S: Adjust for all 3 ABIs.
6257         * sysdeps/unix/mips/brk.S: Likewise.
6258         * sysdeps/unix/mips/sysdep.S: Likewise.
6259         * sysdeps/unix/sysv/linux/mips/clone.S: Likewise.
6260         * sysdeps/mips/bits/setjmp.h (__jmp_buf): Likewise.
6261         * sysdeps/mips/sys/ucontext.h: Likewise.
6262         * sysdeps/unix/sysv/linux/mips/sys/profcs.h: Likewise.
6263         * sysdeps/unix/sysv/linux/mips/sys/ucontext.h: Likewise.
6264         * sysdeps/unix/sysv/linux/mips/kernel_stat.h: Likewise.
6265         * sysdeps/mips/mips64/bsd-_setjmp.S: Likewise.
6266         * sysdeps/mips/mips64/bsd-setjmp.S: Likewise.
6267         * sysdeps/mips/mips64/setjmp.S: Likewise.
6268         * sysdeps/mips/mips64/bits/setjmp.h: Deleted, obsolete.
6269         * sysdeps/mips/mips64/soft-fp/sfp-machine.h: Use long long for
6270         64-bit types.
6271
6272 2003-03-16  Ulrich Drepper  <drepper@redhat.com>
6273
6274         * sysdeps/unix/clock_settime.c (HANDLE_REALTIME): Define tv here,
6275         not at function level.
6276         * sysdeps/unix/clock_gettime.c (HANDLE_REALTIME): Likewise.
6277
6278 2003-03-15  Roland McGrath  <roland@redhat.com>
6279
6280         * nis/nss_nis/nis-hosts.c (internal_gethostbyname2_r): int -> size_t
6281         * nis/nss_nis/nis-network.c (_nss_nis_getnetbyname_r): Likewise.
6282         * nis/nss_nis/nis-alias.c (_nss_nis_getaliasbyname_r): Likewise.
6283         * nis/nis_table.c (__create_ib_request): Likewise.
6284
6285         * posix/fnmatch_loop.c: Add casts for signedness.
6286         * nss/nss_files/files-hosts.c: Likewise.
6287         * nscd/nscd_getpw_r.c (nscd_getpw_r): Likewise.
6288         * gmon/gmon.c (write_call_graph): Use u_long for FROM_LEN.
6289         * nscd/nscd_getgr_r.c (nscd_getgr_r): Use nscd_ssize_t for CNT.
6290
6291         * configure.in (libc_cv_visibility_attribute): Use AC_TRY_COMMAND,
6292         get errors into the log file.
6293         (libc_cv_broken_visibility_attribute): Likewise.
6294         (libc_cv_broken_alias_attribute): Likewise.
6295         (libc_cv_asm_weak_directive): Likewise.
6296         (libc_cv_need_minus_P): Likewise.
6297         (libc_cv_dot_text): Likewise.
6298         (libc_cv_asm_global_directive): Likewise.
6299         (libc_cv_asm_type_prefix): Likewise.
6300         * configure: Regenerated.
6301
6302         * nscd/cache.c (cache_search): Give first arg type `request_type'.
6303         * nscd/nscd.h: Update decl.
6304
6305         * nscd/nscd_getpw_r.c (nscd_getpw_r): Add casts for signedness.
6306         * nscd/nscd_getgr_r.c (nscd_getgr_r): Likewise.
6307         * elf/dl-close.c (_dl_close): Likewise.
6308         * sysdeps/unix/sysv/linux/powerpc/chown.c (__chown): int -> size_t
6309         * io/fts.c (fts_build): Likewise.
6310         * elf/cache.c (add_to_cache): Likewise.
6311         * locale/programs/locarchive.c (show_archive_content): Likewise.
6312
6313         * posix/fnmatch.c (fnmatch): Tweak __builtin_expect use.
6314
6315         * include/ctype.h (__ctype_b_loc): Tweak type punning to make gcc 3.3
6316         happy.
6317         (__ctype_toupper_loc, __ctype_tolower_loc): Likewise.
6318
6319 2003-03-15  Ulrich Drepper  <drepper@redhat.com>
6320
6321         * sysdeps/unix/sysv/linux/ia64/system.c: Use the generic Linux
6322         code for most parts.
6323
6324 2003-03-15  Roland McGrath  <roland@redhat.com>
6325
6326         * sysdeps/unix/sysv/linux/i386/system.c: Moved to ...
6327         * sysdeps/unix/sysv/linux/system.c: ... here.
6328         (FORK): Don't #define if already #define'd.
6329         * sysdeps/unix/sysv/linux/s390/system.c: File removed.
6330         * sysdeps/unix/sysv/linux/kernel-features.h [__powerpc__]:
6331         (__ASSUME_CLONE_THREAD_FLAGS): Define for kernel >= 2.5.64.
6332
6333         * dlfcn/tst-dlinfo.c: New file.
6334         * dlfcn/Makefile (tests): Add tst-dlinfo.
6335         ($(objpfx)tst-dlinfo): New target.
6336
6337         * dlfcn/dlinfo.c: New file.
6338         * dlfcn/Makefile (libdl-routines): Add it.
6339         * dlfcn/Versions (libdl: GLIBC_2.3.3): Add dlinfo.
6340         * dlfcn/dlfcn.h [__USE_GNU]: Declare dlinfo.
6341         [__USE_GNU] (RTLD_DI_*): New enum constants.
6342         [__USE_GNU] (Dl_serpath, Dl_serinfo): New types.
6343         * elf/dl-load.c (cache_rpath): New inline function.
6344         (_dl_map_object): Use it.
6345         (_dl_rtld_di_serinfo): New function.
6346         * sysdeps/generic/ldsodefs.h: Declare it.
6347         * elf/Versions (ld: GLIBC_PRIVATE): Add it.
6348
6349         * sysdeps/powerpc/elf/libc-start.c (AUX_VECTOR_INIT): Define it.
6350         (LIBC_START_MAIN, LIBC_START_MAIN_AUXVEC_ARG, MAIN_AUXVEC_ARG)
6351         (INIT_MAIN_ARGS): Define, and #include <sysdeps/generic/libc-start.c>.
6352         (__libc_start_main): Just call the generic one for most of the work.
6353
6354         * sysdeps/generic/libc-start.c [LIBC_START_MAIN]: If defined, define a
6355         static function by that name instead of BP_SYM (__libc_start_main).
6356         [LIBC_START_MAIN_AUXVEC_ARG]: Take AUXVEC as argument.
6357         [MAIN_AUXVEC_ARG]: Pass 4th argument to MAIN.
6358         [INIT_MAIN_ARGS]: Give INIT the same args as MAIN.
6359
6360         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start) [DL_PLATFORM_AUXV]:
6361         Use this macro for extra AT_* cases.
6362         * sysdeps/unix/sysv/linux/powerpc/dl-sysdep.c (DL_PLATFORM_AUXV):
6363         New macro, guts from ...
6364         (__aux_init_cache): ... here, function removed.
6365         (DL_PLATFORM_INIT): Don't define this.
6366
6367         * sysdeps/powerpc/powerpc32/memset.S: Put __cache_line_size in bss.
6368         * sysdeps/powerpc/powerpc64/memset.S: Likewise.
6369
6370         * Versions.def (libthread_db): Add GLIBC_2.3.3 set.
6371
6372 2003-03-14  Roland McGrath  <roland@redhat.com>
6373
6374         * dlfcn/dlerror.c (dlerror): If objname is "", don't put ": " after it.
6375
6376 2003-03-14  Jakub Jelinek  <jakub@redhat.com>
6377
6378         * sysdeps/unix/sysv/linux/Makefile (syscall-%.h): Fix a typo.
6379
6380         * sysdeps/unix/sysv/linux/sparc/sparc64/pause.c: Include
6381         sysdeps/posix/pause.c instead of sysdeps/unix/common/pause.c.
6382
6383 2003-03-14  Alexandre Oliva  <aoliva@redhat.com>
6384
6385         * sysdeps/mips/fpu/bits/mathdef.h: New.
6386         (__NO_LONG_DOUBLE_MATH): Define for o32.
6387
6388         * sysdeps/mips/sys/asm.h: Formatting changes.
6389         (PTR, PTRSIZE, PTRLOG): Adjust for all 3 ABIs.
6390         (CPADD): Define for all of them.
6391         (SETUP_GP, SETUP_GPX, SETUP_GPX_L, SAVE_GP, SETUP_GP64,
6392         SETUP_GPX64, SETUP_GPX64_L, RESTORE_GP64, USE_ALT_CP,
6393         NARGSAVE): Define per ABI spec.
6394         (END): Don't redefine.
6395         (LONG_SLL, LONG_SLLV, LONG_SRL, LONG_SRLV, LONG_SRA,
6396         LONG_SRAV): Remove duplicate definitions.
6397         (PTR_ADD, PTR_ADDI, PTR_ADDU, PTR_ADDIU, PTR_SUB, PTR_SUBI,
6398         PTR_SUBU, PTR_SUBIU, PTR_L, PTR_S, PTR_SLL, PTR_SLLV, PTR_SRL,
6399         PTR_SRLV, PTR_SRA, PTR_SRAV, PTR_SCALESHIFT): Define for n32.
6400         (PTR_LA): Define for all 3 ABIs.
6401
6402         * sysdeps/mips/dl-machine.h: Include sys/asm.h.
6403         (elf_machine_matches_host): Prevent linking of o32 and n32
6404         together.
6405         (elf_machine_dynamic): Document assumption on $gp.
6406         (STRINGXP, STRINGXV, STRINGV_): New macros.
6407         (elf_machine_load_address): Use them to stringize PTR_LA and
6408         PTR_SUBU.
6409         (ELF_DL_FRAME_SIZE, ELF_DL_SAVE_ARG_REGS,
6410         ELF_DL_RESTORE_ARG_REGS, IFABIO32): New macros used in...
6411         (_dl_runtime_resolve): Adjust it for all 3 ABIs.
6412         (__dl_runtime_resolve): Cast the symtab initializer to the
6413         right type.
6414         (RTLD_START): Use it.  Adjust it for all 3 ABIs.
6415         (elf_machine_rel): Mark as always_inline in RTLD_BOOTSTRAP.
6416         Handle 64-bit R_MIPS_REL composite relocation and accept
6417         R_MIPS_64 relocations to shift addend size to 64 bits.
6418         Document assumption regarding local GOT entries.  Document
6419         backward-compatibility departing from the ABI behavior in
6420         applying relocations that reference section symbols, no longer
6421         used.  Support relocations to mis-aligned offsets.
6422         * sysdeps/mips/mips64/dl-machine.h: Deleted, obsolete.
6423
6424         * sysdeps/unix/sysv/linux/mips/readelflib.c: New file.
6425
6426         * sysdeps/unix/sysv/linux/mips/kernel_sigaction.h
6427         (_KERNEL_NSIG_BPW): Define in terms of _MIPS_SZLONG.
6428         * sysdeps/unix/sysv/linux/mips/sigaction.c: Define restore and
6429         restore_rt functions.  Use them.
6430
6431         * sysdeps/unix/sysv/linux/mips/sys/tas.h (_test_and_set): Don't
6432         .set mips2 on new abis.
6433
6434 2003-03-13  Ulrich Drepper  <drepper@redhat.com>
6435
6436         * posix/getconf.c: Recognize POSIX2_SYMLINKS.
6437         * sysdeps/generic/bits/confname.h: Define _PC_2_SYMLINKS.
6438         * sysdeps/posix/fpathconf.c: Handle _PC_2_SYMLINKS.
6439         * sysdeps/posix/pathconf.c: Likewise.
6440         * sysdeps/unix/sysv/linux/fpathconf.c: Likewise.
6441         * sysdeps/unix/sysv/linux/pathconf.c: Likewise.
6442         * sysdeps/unix/sysv/linux/pathconf.h: Define statfs_symlinks.
6443
6444         * sysdeps/unix/sysv/linux/linux_fsinfo.h: Define some more magic
6445         words.
6446
6447 2003-03-14  Alexandre Oliva  <aoliva@redhat.com>
6448
6449         * include/gmp.h: Include/gmp-mparam.h.
6450         * stdlib/strtod.c: Include gmp-mparam.h before gmp.h and
6451         gmp-impl.h.
6452
6453         * elf/dl-conflict.c: Don't compile _dl_resolve_conflicts if
6454         ELF_MACHINE_NO_RELA is set.
6455         * elf/rtld.c (dl_main): No prelink support for REL-only.
6456
6457         * sysdeps/generic/ldconfig.h (FLAG_MIPS64_LIBN32,
6458         FLAG_MIPS64_LIBN64): Define.
6459         * elf/cache.c (print_entry): Handle mips64 n32 and n64.
6460
6461         * sysdeps/mips/memcpy.S: Map t0-3 to a4-7 on new abis.
6462         * sysdeps/mips/memset.S: Likewise.
6463         * sysdeps/mips/sys/regdef.h: Alias a4-7 or t0-3 to $8-11
6464         depending on the ABI.
6465
6466         * sysdeps/mips/atomicity.h (exchange_and_add, atomic_add):
6467         Don't .set mips2 on new abi.
6468         (compare_and_swap): Likewise.  Support 64-bit longs on n64.
6469
6470         * stdlib/fpioconst.h: Include gmp.h with angle brackets.
6471
6472 2003-03-13  Roland McGrath  <roland@redhat.com>
6473
6474         * elf/dl-load.c (_dl_map_object_from_fd): Bail if no PT_LOAD phdrs
6475         found.  Reported by Alexandre Oliva <aoliva@redhat.com>.
6476
6477 2003-03-13  Alexandre Oliva  <aoliva@redhat.com>
6478
6479         * stdio-common/_itoa.c (_itoa_base_table): Make 64-bit
6480         literals long long.
6481         * stdlib/fpioconst.c: Likewise.
6482         * stdlib/strtod.c: Likewise.
6483
6484         * sysdeps/mips/add_n.S: Use L macro for local labels.
6485         * sysdeps/mips/addmul_1.S: Likewise.
6486         * sysdeps/mips/lshift.S: Likewise.
6487         * sysdeps/mips/memcpy.S: Likewise.
6488         * sysdeps/mips/memset.S: Likewise.
6489         * sysdeps/mips/mul_1.S: Likewise.
6490         * sysdeps/mips/rshift.S: Likewise.
6491         * sysdeps/mips/sub_n.S: Likewise.
6492         * sysdeps/mips/submul_1.S: Likewise.
6493         * sysdeps/mips/mips64/add_n.S: Likewise.
6494         * sysdeps/mips/mips64/addmul_1.S: Likewise.
6495         * sysdeps/mips/mips64/lshift.S: Likewise.
6496         * sysdeps/mips/mips64/mul_1.S: Likewise.
6497         * sysdeps/mips/mips64/rshift.S: Likewise.
6498         * sysdeps/mips/mips64/sub_n.S: Likewise.
6499         * sysdeps/mips/mips64/submul_1.S: Likewise.
6500         * sysdeps/unix/mips/sysdep.h: Define L() according to ABI
6501         conventions.  Define END as in sys/asm.h.
6502         * sysdeps/unix/mips/sysdep.S: Likewise.
6503         * sysdeps/unix/mips/wait.S: Likewise.
6504         * sysdeps/unix/sysv/linux/mips/clone.S: Likewise.
6505
6506         * sysdeps/ieee754/dbl-64/dbl2mpn.c (__mpn_extract_double):
6507         Cast shifted values that may be too narrow to mp_limb_t.
6508         * sysdeps/ieee754/dbl-64/mpn2dbl.c (__mpn_construct_double):
6509         Likewise.
6510         * sysdeps/ieee754/flt-32/mpn2flt.c (__mpn_construct_float):
6511         Likewise.
6512         * sysdeps/ieee754/ldbl-128/ldbl2mpn.c
6513         (__mpn_extract_long_double): Likewise.
6514         * sysdeps/ieee754/ldbl-128/mpn2ldbl.c
6515         (__mpn_construct_long_double): Likewise.
6516         * sysdeps/ieee754/ldbl-96/ldbl2mpn.c
6517         (__mpn_extract_long_double): Likewise.
6518         * sysdeps/ieee754/ldbl-96/mpn2ldbl.c
6519         (__mpn_construct_long_double): Likewise.
6520
6521 2003-03-13  Roland McGrath  <roland@redhat.com>
6522
6523         * elf/Makefile ($(objpfx)librtld.mk): Tweak regexp so that one-line
6524         entries in the map file match too.
6525
6526 2003-03-13  Guido Guenther  <agx@sigxcpu.org>
6527
6528         * sysdeps/unix/sysv/linux/mips/clone.S: introduce and use local
6529         label .Lthread_start since current binutils don't allow branches
6530         to globally visible symbols.
6531
6532 2003-03-13  Jakub Jelinek  <jakub@redhat.com>
6533
6534         * sysdeps/unix/sysv/linux/ia64/sysdep.h (BREAK_INSN_1, BREAK_INSN,
6535         ASM_OUTARGS_0, ASM_OUTARGS_1, ASM_OUTARGS_2, ASM_OUTARGS_3,
6536         ASM_OUTARGS_4, ASM_OUTARGS_5, ASM_OUTARGS_6): Define.
6537         (INTERNAL_SYSCALL, INLINE_SYSCALL): Use it.  Make syscall arguments
6538         clobbered by the syscall.
6539         (ASM_ARGS_1, ASM_ARGS_2, ASM_ARGS_3, ASM_ARGS_4, ASM_ARGS_5,
6540         ASM_ARGS_6): Change constraints from r to index of corresponding
6541         output register.
6542         * sysdeps/unix/sysv/linux/ia64/clone2.S (__clone2): Swap
6543         ptid and ctid to match kernel.
6544         * sysdeps/unix/sysv/linux/ia64/system.c (FORK): Likewise.
6545
6546 2003-03-12  Steven Munroe  <sjmunroe@us.ibm.com>
6547
6548         * sysdeps/powerpc/powerpc64/elf/configure.in: Remove
6549         AC_DEFINE(PI_STATIC_AND_HIDDEN).  Not supported for PowerPC64.
6550         * sysdeps/powerpc/powerpc64/elf/configure: Regenerated.
6551
6552 2003-03-11  Roland McGrath  <roland@redhat.com>
6553
6554         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela):
6555         Check SYM_MAP rather than SYM as definedness check.
6556         Handle R_PPC64_ADDR32, R_PPC64_ADDR30, and R_PPC64_REL64 relocs.
6557         Don't handle R_PPC64_REL24 reloc.
6558         Mostly from Steven Munroe <sjmunroe@us.ibm.com>.
6559
6560         * sysdeps/powerpc/powerpc64/dl-machine.h
6561         [USE_TLS] (elf_machine_type_class): Match all the TLS relocs in a
6562         block, so we cover all the TPREL16* flavors without 6 ||s.
6563         [USE_TLS] (elf_machine_tprel): New function.
6564         (elf_machine_rela) [USE_TLS]: Use elf_machine_tprel for TPREL64 reloc,
6565         and handle TPREL16 relocs too.  Return rather than break for DTPREL64.
6566         Mostly from Steven Munroe <sjmunroe@us.ibm.com>.
6567
6568 2003-03-11  Ralf Baechle  <ralf@linux-mips.org>
6569
6570         * sysdeps/unix/sysv/linux/mips/clone.S (__thread_start): Use jal
6571         instead of jalr to invoke subroutine so restoring the $gp register
6572         will work properly.
6573
6574 2003-03-11  Martin Schwidefsky  <schwidefsky@de.ibm.com>
6575
6576         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (__NR_pread64): Define
6577         to __NR_pread if not defined.
6578         (__NR_pwrite64): Define to __NR_pwrite if not defined.
6579
6580 2003-03-11  Jakub Jelinek  <jakub@redhat.com>
6581
6582         * sysdeps/unix/sysv/linux/ia64/system.c: New file.
6583         * sysdeps/unix/sysv/linux/kernel-features.h
6584         (__ASSUME_CLONE_THREAD_FLAGS): Define for IA-64 and s390* with
6585         kernel >= 2.5.64.
6586
6587 2003-03-11  Jakub Jelinek  <jakub@redhat.com>
6588
6589         * sysdeps/generic/dl-sysdep.c (_dl_important_hwcaps): If CNT == 1,
6590         allocate space even for the trailing '/'.
6591         Reported by John Reiser <jreiser@BitWagon.com>.
6592
6593         * sysdeps/unix/sysv/linux/ia64/sysdep.h (LOAD_ARGS_6, ASM_ARGS_6,
6594         ASM_CLOBBERS_6): Define.
6595         (ASM_CLOBBERS_5): Use ASM_CLOBBERS_6.
6596         * sysdeps/unix/sysv/linux/ia64/clone2.S (__clone2): Reorder arguments
6597         to match IA-32 order.
6598         * sysdeps/unix/sysv/linux/i386/clone.S: Fix comment.
6599
6600 2003-03-10  Steven Munroe  <sjmunroe@us.ibm.com>
6601
6602         * sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S: Don't clobber R7.
6603         Copy extra params for NPTL to registers used in clone syscall.
6604
6605 2003-03-10  Martin Schwidefsky  <schwidefsky@de.ibm.com>
6606
6607         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Correct system
6608         call names for pread and pwrite.
6609
6610 2003-03-10  Roland McGrath  <roland@redhat.com>
6611
6612         * dlfcn/Makefile (libdl-routines): Add dladdr1.
6613         * dlfcn/dladdr1.c: New file.
6614         * dlfcn/dlfcn.h [__USE_GNU]: Declare dladdr1.
6615         [__USE_GNU] (RTLD_DL_SYMENT, RTLD_DL_LINKMAP): New enum constants.
6616         * elf/dl-addr.c (_dl_addr): Take new args, a struct link_map ** and
6617         a const ElfNN_Sym ** to fill in.
6618         * include/dlfcn.h: Update decl.  Include <link.h>.
6619         * dlfcn/dladdr.c (dladdr): Update caller.
6620         * malloc/mtrace.c (tr_where): Likewise.
6621         * sysdeps/generic/elf/backtracesyms.c: Likewise.
6622         * sysdeps/generic/elf/backtracesymsfd.c: Likewise.
6623         * dlfcn/Versions (libdl: GLIBC_2.3.3): New set, add dladdr1.
6624         * Versions.def (libdl): Define GLIBC_2.3.3 set.
6625
6626         * sysdeps/unix/make-syscalls.sh: Generate $(compile-syscall) for
6627         assembler command.
6628         * sysdeps/unix/Makefile (compile-syscall): New variable.
6629         Pass -g0 to compiler for assembling syscall stubs from stdin.
6630
6631         * sysdeps/i386/sysdep.h [HAVE_CPP_ASM_DEBUGINFO]
6632         (STABS_CURRENT_FILE, STABS_CURRENT_FILE1, STABS_FUN, STABS_FUN_END):
6633         Define these to do nothing.
6634
6635         * configure.in: New check for -g on .S files.
6636         * configure: Regenerated.
6637         * config.make.in (have-cpp-asm-debuginfo): New variable.
6638         * config.h.in (HAVE_CPP_ASM_DEBUGINFO): New #undef.
6639         * Makeconfig (ASFLAGS): New variable, if undefined and
6640         $(have-cpp-asm-debuginfo), take options matching -g% from $(CFLAGS).
6641         * Makerules (compile.S, COMPILE.S): Use $(ASFLAGS).
6642
6643 2003-03-09  Roland McGrath  <roland@redhat.com>
6644
6645         * sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S: Take 3 new args
6646         used by NPTL on new kernels.  From Paul Mackerras <paulus@samba.org>.
6647
6648 2003-03-09  Ulrich Drepper  <drepper@redhat.com>
6649
6650         * po/fi.po: Update from translation team.
6651         * po/ca.po: Likewise.
6652         * po/da.po: Likewise.
6653
6654 2003-03-08  Ulrich Drepper  <drepper@redhat.com>
6655
6656         * rt/tst-aio7.c (do_test): Change BYTES into a #define.
6657
6658 2003-03-07  Ulrich Drepper  <drepper@redhat.com>
6659
6660         * rt/tst-aio7.c (do_test): Give BUFF permanent extent, too.
6661
6662         * sysdeps/powerpc/fpu/w_sqrt.c: Fix comment.
6663
6664 2003-03-07  Roland McGrath  <roland@redhat.com>
6665
6666         * sysdeps/s390/s390-32/sysdep.h (L): Use .Lfoo instead of foo.
6667         * sysdeps/s390/s390-64/sysdep.h (L): Likewise.
6668
6669 2003-03-04  Guido Guenther  <agx@sigxcpu.org>
6670
6671         * sysdeps/unix/sysv/linux/mips/syscalls.list: Remove unneeded
6672         stubs, we have INLINE_SYSCALL.
6673         * sysdeps/unix/sysv/linux/mips/bits/mman.h: Define MAP_POPULATE,
6674         MAP_NONBLOCK.
6675
6676 2003-03-06  Roland McGrath  <roland@redhat.com>
6677
6678         * rt/tst-aio7.c (do_test): Revert last change.  Instead, give CB1
6679         permanent extent and add a comment about testing its implicit teardown.
6680
6681 2003-03-06  Martin Schwidefsky  <schwidefsky@de.ibm.com>
6682
6683         * rt/tst-aio7.c (do_test): Cancel i/o on CB1 before it's out of scope.
6684
6685 2003-03-05  Ulrich Drepper  <drepper@redhat.com>
6686
6687         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage): Fix
6688         reversed __builtin_expect expectation.
6689
6690 2003-03-05  Roland McGrath  <roland@redhat.com>
6691
6692         * stdio-common/sscanf.c: Use prototype defn with ... syntax.
6693         * libio/swscanf.c: Likewise.
6694         * libio/swprintf.c: Likewise.
6695
6696 2003-03-04  Roland McGrath  <roland@redhat.com>
6697
6698         * sysdeps/powerpc/powerpc64/dl-machine.h: Include <dl-tls.h>.
6699         (elf_machine_rela): Always use RESOLVE_MAP, needed for
6700         R_PPC64_JMP_SLOT as well as TLS cases.
6701         (BIT_INSERT): Move parenthesis where it ought to have been.
6702         Reported by Steven Munroe <sjmunroe@us.ibm.com>.
6703
6704         * posix/confstr.c (confstr): Correct STRING_LEN values for
6705         _CS_GNU_LIBC_VERSION and _CS_GNU_LIBPTHREAD_VERSION, add missing
6706         break.  Reported by Alexandre Julliard <julliard@winehq.com>.
6707
6708 2003-03-04  Jakub Jelinek  <jakub@redhat.com>
6709
6710         * sysdeps/ia64/fpu/libm-test-ulps: Regenerated.
6711
6712 2003-03-04  Ulrich Drepper  <drepper@redhat.com>
6713
6714         * sysdeps/unix/sysv/linux/x86_64/clone.S: Add support for the new
6715         clone parameters.
6716
6717         * po/sv.po: Update from translation team.
6718
6719 2003-03-04  Andreas Jaeger  <aj@suse.de>
6720             Ulrich Drepper  <drepper@redhat.com>
6721
6722         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Fix comments.
6723
6724 2003-03-03  Ulrich Drepper  <drepper@redhat.com>
6725
6726         * sysdeps/generic/dl-sysdep.h: Add double include protection.
6727
6728         * po/tr.po: Update from translation team.
6729
6730         * elf/dl-load.c (_dl_map_object_from_fd): Determine whether there
6731         are holes between the segments.  Only call mprotect to set
6732         proection to PROT_NONE if there are some.
6733
6734         * elf/dl-load.c (struct filebuf): Actually use FILEBUF_SIZE.
6735         Update comment.
6736
6737         * include/sched.h (__clone2): Use ... instead of adding all the
6738         new parameters.
6739
6740 2003-03-03  Roland McGrath  <roland@redhat.com>
6741
6742         * elf/dl-load.c (struct filebuf): Fix typo in last change.
6743
6744         * sysdeps/powerpc/powerpc32/elf/configure.in: Don't define
6745         PI_STATIC_AND_HIDDEN.
6746
6747 2003-03-03  Ian Wienand  <ianw@gelato.unsw.edu.au>
6748
6749         * sysdeps/unix/sysv/linux/ia64/clone2.S: Update to take extra clone
6750         flags.
6751         * include/sched.h: Update clone2 prototype.
6752
6753 2003-03-03  Andreas Jaeger  <aj@suse.de>
6754
6755         * math/tgmath.h (__TGMATH_UNARY_REAL_RET_ONLY): New definition.
6756         (llrint): Use it to correct return type.
6757         (lrint): Likewise.
6758         (lround): Likewise.
6759         (llround): Likewise.
6760
6761 2003-03-03  Ulrich Drepper  <drepper@redhat.com>
6762
6763         * elf/dl-load.c (struct filebuf): For 64-bit platforms use 640
6764         byte filebuf size.
6765
6766         * libio/fileops.c (_IO_new_file_fopen): Close stillborn descriptor
6767         if ccs parameter isn't valid.  Reported by Andreas Schwab.
6768
6769 2003-03-03  Martin Schwidefsky  <schwidefsky@de.ibm.com>
6770
6771         * sysdeps/unix/sysv/linux/s390/s390-32/syscall.S (syscall): Add support
6772         for system call numbers > 255.
6773         * sysdeps/unix/sysv/linux/s390/s390-32/syscall.h (DO_CALL,
6774         INLINE_SYSCALL, INTERNAL_SYSCALL_DIRECT, INTERNAL_SYSCALL_SVC0,
6775         INTERNAL_SYSCALL): Likewise.
6776         * sysdeps/unix/sysv/linux/s390/s390-64/syscall.S (syscall): Likewise.
6777         * sysdeps/unix/sysv/linux/s390/s390-64/syscall.h (DO_CALL,
6778         INLINE_SYSCALL, INTERNAL_SYSCALL_DIRECT, INTERNAL_SYSCALL_SVC0,
6779         INTERNAL_SYSCALL): Likewise.
6780
6781 2003-03-03  Martin Schwidefsky  <schwidefsky@de.ibm.com>
6782
6783         * sysdeps/generic/dl-tls.c (_dl_deallocate_tls): Don't free the dtv
6784         array if it is the initial dtv.
6785
6786 2003-03-03  Ulrich Drepper  <drepper@redhat.com>
6787
6788         * po/es.po: Update from translation team.
6789         * po/fr.po: Likewise.
6790         * po/gl.po: Likewise.
6791         * po/sk.po: Likewise.
6792         * po/sv.po: Likewise.
6793
6794         * sysdeps/unix/sysv/linux/syscalls.list: Add remap_file_pages entry.
6795         * misc/sys/mman.h: Add prototype for remap_file_pages.
6796         * sysdeps/generic/remap_file_pages.c: New file.
6797         * misc/Makefile (routines): Add remap_file_pages.
6798         * misc/Versions [libc:GLIBC_2.3.3]: Add remap_file_pages.
6799
6800         * sysdeps/unix/sysv/linux/x86_64/bits/mman.h: Define MAP_POPULATE
6801         and MAP_NONBLOCK.
6802         * sysdeps/unix/sysv/linux/s390/bits/mman.h: Likewise.
6803         * sysdeps/unix/sysv/linux/powerpc/bits/mman.h: Likewise
6804         * sysdeps/unix/sysv/linux/m68k/bits/mman.h: Likewise.
6805         * sysdeps/unix/sysv/linux/arm/bits/mman.h: Likewise.
6806         * sysdeps/unix/sysv/linux/ia64/bits/mman.h: Likewise.
6807         * sysdeps/unix/sysv/linux/hppa/bits/mman.h: Likewise.
6808         * sysdeps/unix/sysv/linux/alpha/bits/mman.h: Likewise.
6809         * sysdeps/unix/sysv/linux/i386/bits/mman.h: Likewise.
6810
6811 2003-03-03  Roland McGrath  <roland@redhat.com>
6812
6813         * sysdeps/ia64/dl-fptr.c (__ia64_make_fptr): Revert last change.
6814         * sysdeps/ia64/dl-machine.h: Likewise.
6815         * sysdeps/ia64/dl-symaddr.c (_dl_symbol_address): Remove const from
6816         argument type.
6817         * sysdeps/ia64/dl-lookupcfg.h: Update decl.
6818
6819         * sysdeps/wordsize-64/strtol_l.c (strtoll_l): Define as weak alias.
6820         * sysdeps/wordsize-64/strtoul_l.c (strtoull_l): Define as weak alias.
6821         * locale/Versions (libc: GLIBC_2.3): Move those to ...
6822         * sysdeps/wordsize-32/Versions (libc: GLIBC_2.3): ... here, new file.
6823         * sysdeps/wordsize-64/Versions (libc: GLIBC_2.3.3) Likewise.
6824         * Versions.def (libc): Add GLIBC_2.3.3 set.
6825
6826         * sysdeps/ia64/dl-fptr.c (__ia64_make_fptr): Add const to MAP arg.
6827         * sysdeps/ia64/dl-machine.h: Update decl.
6828
6829 2003-03-03  Andreas Jaeger  <aj@suse.de>
6830
6831         * sysdeps/unix/clock_settime.c (HANDLE_REALTIME): Add missing brace.
6832
6833 2003-03-02  Roland McGrath  <roland@redhat.com>
6834
6835         * scripts/abilist.awk: Reject data items with apparent 0 size.
6836
6837         * scripts/merge-abilist.awk: Restore hack to elide pattern foo.*/bar
6838         after foo.* as if it were a duplicate.
6839
6840         * sysdeps/unix/sysv/linux/ia64/brk.S: Add .type and .size for __curbrk.
6841
6842 2003-03-02  Ulrich Drepper  <drepper@redhat.com>
6843
6844         * elf/dl-load.c (struct filebuf): Reduce buf array to 512 bytes.
6845
6846         * sysdeps/generic/bits/time.h: Define CLOCK_MONOTONIC.
6847         * sysdeps/posix/clock_getres.c: Define code for CLOCK_REALTIME only
6848         if not already defined.  Use SYSDEP_GETRES to allow other files to
6849         provide alternative implementations.
6850         * sysdeps/unix/sysv/linux/clock_getres.c: New file
6851         * sysdeps/unix/clock_gettime.c: Define code for CLOCK_REALTIME only
6852         if not already defined.  Use SYSDEP_GETTIME to allow other files to
6853         provide alternative implementations.
6854         * sysdeps/unix/sysv/linux/clock_gettime.c: New file.
6855         * sysdeps/unix/clock_settime.c: Define code for CLOCK_REALTIME only
6856         if not already defined.  Use SYSDEP_GETTIME to allow other files to
6857         provide alternative implementations.
6858         * sysdeps/unix/sysv/linux/clock_settime.c: New file.
6859         * sysdeps/unix/clock_nanosleep.c: Use SYSDEP_NANOSLEEP to allow
6860         other files to provide alternative implementations.  Rearrange
6861         tests for invalid parameters.
6862         * sysdeps/unix/sysv/linux/clock_nanosleep.c: New file.
6863         * sysdeps/unix/sysv/linux/sysconf.c: New file.
6864         * sysdeps/unix/sysv/linux/kernel-features.h: Define
6865         __ASSUME_POSIX_TIMERS for Linux 2.5.63 and up.
6866         * sysdeps/unix/sysv/linux/bits/posix_opt.h: Define
6867         _POSIX_MONOTONIC_CLOCK.
6868
6869 2003-03-02  Roland McGrath  <roland@redhat.com>
6870
6871         * scripts/merge-abilist.awk: More checks for bogus input.
6872         Uniquify duplicate config names.
6873
6874         * scripts/abilist.awk: Don't distinguish weak symbols in normal output.
6875
6876         * sysdeps/powerpc/powerpc32/dl-machine.c (_dl_reloc_overflow): Renamed
6877         from dl_reloc_overflow, make global.
6878         (__process_machine_rela): Update callers.
6879         * sysdeps/powerpc/powerpc32/dl-machine.h: Declare _dl_reloc_overflow.
6880         Add attribute_hidden to __process_machine_rela decl.
6881         (elf_machine_type_class, elf_machine_rela): Handle 16-bit TLS relocs.
6882
6883         * sysdeps/generic/libc-start.c (__libc_start_main): Don't assign const
6884         variable.
6885
6886         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_fixup_plt):
6887         Don't use weak_extern for dl_rtld_map.  Instead check only if [SHARED].
6888         (elf_machine_rela): Clean up.
6889
6890         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Clean up.
6891
6892         PowerPC TLS support contributed by Paul Mackerras <paulus@samba.org>.
6893         * sysdeps/powerpc/powerpc32/elf/configure.in: New file.
6894         * sysdeps/powerpc/powerpc32/elf/configure: New generated file.
6895         * elf/tls-macros.h [__powerpc__ && !__powerpc64__]
6896         (TLS_LE, TLS_IE, TLS_LD, TLS_GD): Define them.
6897         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Support
6898         new relocs for TLS.
6899
6900         * sysdeps/powerpc/dl-tls.h (TLS_TP_OFFSET, TLS_DTV_OFFSET): Move these
6901         macros out of [SHARED].
6902         (TLS_TPREL_VALUE, TLS_DTPREL_VALUE): New macros.
6903
6904         * elf/elf.h: Define R_PPC_* relocs for TLS support.
6905         Clean up R_PPC64_* macro definition comments.
6906
6907         * configure.in: In "running configure fragment for" message,
6908         omit $srcdir from the name if we prepended it.
6909         * configure: Regenerated.
6910
6911         * elf/dl-reloc.c (allocate_static_tls): Fix calculations.
6912         From Jakub Jelinek <jakub@redhat.com>.
6913
6914         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Revert last change,
6915         which duplicated the O_DIRECT defn.
6916
6917 2003-03-01  GOTO Masanori  <gotom@debian.or.jp>
6918
6919         * stdlib/stdlib.h: Add missing __USE_BSD enclosure for BSD derived
6920         random functions.
6921
6922 2003-03-01  Andreas Schwab  <schwab@suse.de>
6923
6924         * resolv/Makefile (tests): Don't depend on
6925         $(objpfx)mtrace-tst-leaks when cross compiling.
6926
6927         * sysdeps/m68k/dl-machine.h (_dl_start_user): Access
6928         __libc_stack_end through GOT since it is a global symbol.
6929
6930 2003-03-01  GOTO Masanori  <gotom@debian.or.jp>
6931
6932         * argp/argp.h: Fix a typo.
6933         Reported by H.S.Teoh <hsteoh@quickfur.ath.cx>.
6934
6935         * manual/terminal.texi: Fix cfmakeraw() definition from int to void.
6936
6937 2003-02-27  Pat Rankin  <rankin@pactechdata.com>
6938
6939         * posix/regexec.c (proceed_next_node): Cast re_string_get_buffer to
6940         char *.
6941         (get_subexp): Likewise.
6942
6943 2003-03-01  GOTO Masanori  <gotom@debian.or.jp>
6944
6945         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (O_DIRECT): Define.
6946
6947 2003-02-26  Steven Munroe  <sjmunroe@us.ibm.com>
6948
6949         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h (O_DIRECT): Define.
6950
6951 2003-02-27  Roland McGrath  <roland@redhat.com>
6952
6953         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela): Remove
6954         special case for dl_rtld_map in R_PPC64_RELATIVE; it's harmless to
6955         repeat it and avoids the test for the common case.
6956         Clean up and fix calculations for TLS relocs.
6957
6958         * sysdeps/powerpc/powerpc64/dl-tls.h: Moved to ...
6959         * sysdeps/powerpc/dl-tls.h: ... here.
6960         (TLS_TP_OFFSET): New macro.
6961
6962         * sunrpc/svc_udp.c (svcudp_recv): Add a cast to last change.
6963
6964 2003-02-27  Ulrich Drepper  <drepper@redhat.com>
6965
6966         * sysdeps/i386/fpu/libm-test-ulps: Increase ULPs for yn due to
6967         code generation changes in recent gcc.
6968
6969 2003-02-26  Steven Munroe  <sjmunroe@us.ibm.com>
6970
6971         * sysdeps/powerpc/fpu/fpu_control.h (_FPU_GETCW, _FPU_SETCW):
6972         Rename argument to avoid symbol conflict.
6973
6974         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h
6975         [__USE_GNU] (O_DIRECT): New macro.
6976
6977 2003-02-24  David Mosberger  <davidm@hpl.hp.com>
6978
6979         * sysdeps/unix/sysv/linux/ia64/sysdep.S (__syscall_error): Fix
6980         unwind info.
6981
6982 2003-02-27  Ulrich Drepper  <drepper@redhat.com>
6983
6984         * resolv/res_libc.c [USE___THREAD] (_res): Don't need the
6985         initializer anymore now that res_thread_freeres is more careful.
6986
6987         * sunrpc/svc_udp.c (svcudp_recv): Remove all control messages
6988         except the PKTINFO.  Reset interface in PKTINFO.
6989         Patch by Neil Brown <neilb@cse.unsw.edu.au> [PR libc/4973].
6990
6991 2003-02-25  Steven Munroe  <sjmunroe@us.ibm.com>
6992
6993         * elf/elf.h: Add new R_PPC64_* relocs for TLS.
6994         * elf/tls-macros.h [__powerpc64__] (TLS_LE, TLS_IE, TLS_LD, TLS_GD):
6995         Define.
6996         * sysdeps/powerpc/powerpc64/elf/configure.in: New file.
6997         * sysdeps/powerpc/powerpc64/elf/configure: New file (generated).
6998         * sysdeps/powerpc/powerpc64/dl-machine.h: Support new TLS relocs.
6999         * sysdeps/powerpc/powerpc64/dl-tls.h: New file.
7000
7001         * sysdeps/powerpc/elf/libc-start.c (__libc_start_main):
7002         Do DL_SYSDEP_OSCHECK here, matching 2002-12-01 change to generic file.
7003
7004 2003-02-25  Andreas Jaeger  <aj@suse.de>
7005
7006         * manual/memory.texi (Malloc Tunable Parameters): Clarify
7007         behaviour of M_MMAP_THRESHOLD.
7008
7009 2003-02-25  Roland McGrath  <roland@redhat.com>
7010
7011         * resolv/res_init.c (res_thread_freeres): Bail out if _res.nscount is
7012         zero, inidicating _res was not initialized yet.
7013
7014 2003-02-24  Ulrich Drepper  <drepper@redhat.com>
7015
7016         * sysdeps/unix/sysv/linux/ttyname_r.c (__ttyname_r): Remove EACCES
7017         test.
7018
7019 2003-02-24  Roland McGrath  <roland@redhat.com>
7020
7021         * sysdeps/posix/pause.c: Add LIBC_CANCEL_HANDLED.
7022
7023 2003-02-23  Roland McGrath  <roland@redhat.com>
7024
7025         * sysdeps/posix/pause.c: New file.
7026         * sysdeps/unix/common/pause.c: File removed.
7027
7028 2003-02-23  Ulrich Drepper  <drepper@redhat.com>
7029
7030         * sysdeps/generic/bits/confname.h: Remove #ifs.
7031
7032         * posix/Makefile (CFLAGS-regex.c): Remove RE_ENABLE_I18N definition.
7033         * posix/regex_internal.h (RE_ENABLE_I18N): Pretty printing.
7034
7035         * resolv/res_libc.c [USE___THREAD] (_res): Initialize _vcsock
7036         element to -1.
7037
7038 2003-02-22  Ulrich Drepper  <drepper@redhat.com>
7039
7040         * sysdeps/generic/dl-sysdep.c: Avoid warning.
7041
7042 2003-02-22  Roland McGrath  <roland@redhat.com>
7043
7044         * resolv/tst-leaks.c: New file by Daniel Jacobowitz <drow@mvista.com>.
7045         * resolv/Makefile (tests): Add tst-leaks.
7046         ($(objpfx)tst-leaks): Depend on $(objpfx)libresolv.so.
7047         (tst-leaks-ENV): New variable.
7048         ($(objpfx)mtrace-tst-leaks): New target.
7049         (tests): Depend on it.
7050
7051         * include/libc-internal.h: Declare __libc_thread_freeres.
7052
7053         * Makerules: Fix last change to use $($(subdir)-version) when set.
7054
7055         * Makerules (install-lib-nosubdir): Depend on installed
7056         libfoo-X.Y.Z.so and libfoo.so.NN files so they are installed
7057         regardless of the libfoo.so target's dependencies.
7058
7059         * MakeTAGS (sub-make-vars): New variable, includes generating=t.
7060         Use that in $(MAKE) calls.
7061
7062 2003-02-22  Ulrich Drepper  <drepper@redhat.com>
7063
7064         * catgets/gencat.c (read_input_file): Collision between
7065         auto-assigned numbers and user-defined nubmers is not fatal.
7066         Handle it.
7067         Patch by Michael M. Lampkin <michael.lampkin@ieee.org>.
7068         * catgets/Makefile: Add rules to run test2.msg test.
7069         * catgets/test2.msg: New file.
7070
7071         * catgets/gencat.c (main): Return 1 if messages have been printed.
7072
7073         * iconv/iconv_prog.c (main): Unify messages.
7074
7075         * stdlib/strtod.c (INTERNAL): Remove bogus clearing of second word
7076         when shifting retval.
7077         * stdlib/tst-strtod.c (main): Add strtold test case.
7078         Reported by Fred J. Tydeman <tydeman@tybor.com>.
7079
7080 2003-02-21  Roland McGrath  <roland@redhat.com>
7081
7082         * malloc/thread-freeres.c: Conditionalize on _LIBC_REENTRANT.
7083         * sunrpc/rpc_thread.c: Likewise for text_set_element use.
7084         (__rpc_thread_destroy): Add it to __libc_subfreeres too.
7085
7086         * include/resolv.h: Add libc_hidden_proto for __res_nclose.
7087         * resolv/res_init.c (__res_nclose): Add libc_hidden_def.
7088         (res_thread_freeres): New function, on __libc_thread_subfreeres and
7089         __libc_subfreeres.
7090
7091         * malloc/Versions (libc: GLIBC_PRIVATE): Add __libc_thread_freeres.
7092         * malloc/thread-freeres.c: New file.
7093         * malloc/Makefile (aux): Add it.
7094         * sunrpc/Versions (libc: GLIBC_PRIVATE): Removed.
7095         * sunrpc/rpc_thread.c (__rpc_thread_destroy): Put in special section
7096         "__libc_thread_freeres_fn" and add to __libc_thread_subfreeres set.
7097
7098         * sysdeps/unix/sysv/linux/i386/geteuid.c (__geteuid): Typo fix.
7099         * sysdeps/unix/sysv/linux/i386/getgid.c (__getgid): Typo fix.
7100
7101 2003-02-21  Roland McGrath  <roland@frob.com>
7102
7103         * sysdeps/mach/hurd/opendir.c (__opendir): Use O_NONBLOCK in open.
7104
7105         * iconvdata/Makefile (tests): Add bug-iconv3 only if
7106         [$(have-thread-library) = yes].
7107
7108 2003-02-21  Ulrich Drepper  <drepper@redhat.com>
7109
7110         * sysdeps/unix/sysv/linux/bits/signum.h (__SIGRTMAX): Define as _NSIG.
7111
7112         * sysdeps/unix/sysv/linux/i386/getuid.c: Use INTERNAL_SYSCALL and do
7113         not chechk for errors (unless testing for 32bit variant).
7114         * sysdeps/unix/sysv/linux/i386/getgid.c: Likewise.
7115         * sysdeps/unix/sysv/linux/i386/geteuid.c: Likewise.
7116         * sysdeps/unix/sysv/linux/i386/getegid.c: Likewise.
7117
7118 2003-02-21  Jakub Jelinek  <jakub@redhat.com>
7119
7120         * sysdeps/x86_64/dl-machine.h (elf_machine_rela) <R_X86_64_PC32>:
7121         Check for signed overflow, not unsigned.
7122
7123         * sysdeps/sparc/sparc64/elf/configure.in: New file.
7124         * sysdeps/unix/sysv/linux/sparc/sparc64/Makefile (sysdep-CFLAGS):
7125         Use -fcall-used-g6, not -fcall-used-g7.
7126
7127 2003-02-21  Andreas Jaeger  <aj@suse.de>
7128
7129         * sysdeps/x86_64/fpu/fesetenv.c (fesetenv): Fix setting of default
7130         mode.
7131
7132         * sysdeps/x86_64/fpu/fsetexcptflg.c (fesetexceptflag): Do not
7133         clear whole mxcsr but only exceptions.
7134
7135 2003-02-21  Roland McGrath  <roland@redhat.com>
7136
7137         * Makerules: Filter $(install-lib-ldscripts) out of list of targets
7138         for libfoo.so that need $(make-link) rules.
7139
7140 2003-02-21  Roland McGrath  <roland@frob.com>
7141
7142         * sysdeps/mach/hurd/bits/typesizes.h (__DEV_T_TYPE): Use __U32_TYPE
7143         to match existing struct stat layout in mig protocols.
7144
7145 2003-02-20  Ulrich Drepper  <drepper@redhat.com>
7146
7147         * version.h (VERSION): Bump to 2.3.2.
7148
7149         * elf/Makefile (distribute): Add reldep9.c, tst-array1.exp,
7150         tst-array2.exp, tst-array4.exp, tst-array2dep.c, check-textrel.c,
7151         and dl-sysdep.h.
7152         * sysdeps/generic/Dist: Add sysdep-cancel.h.
7153         * sysdeps/powerpc/nofpu/Dist: Add soft-supp.h.
7154         * sysdeps/unix/Dist: Add s-proto-bp.S and s-proto-cancel.S.
7155         * sysdeps/unix/sysv/linux/Dist: Add pathconf.h.
7156         * sysdeps/unix/sysv/linux/i386/Dist: Add bp-thunk.h.
7157         * sysdeps/unix/sysv/linux/powerpc/powerpc64/Dist: Add fe_nomask.c and
7158         ucontext_i.h.
7159         * Makefile (distribute): Add include/stubs-prologue.h,
7160         include/gnu/stubs.h, scripts/merge-abilist.awk, and
7161         scripts/extract-abilist.awk.
7162
7163 2003-02-20  Roland McGrath  <roland@redhat.com>
7164
7165         * math/Makefile (distribute): Don't add generated files.
7166
7167 2003-02-20  Ulrich Drepper  <drepper@redhat.com>
7168
7169         * math/Makefile: Rearrange variable definitions slightly to get
7170         definition in the right order.
7171
7172 2003-02-20  Roland McGrath  <roland@redhat.com>
7173
7174         * Makerules: Clean up conditional around include of tls.make.
7175         * Make-dist: Export generating=t to prevent using that.
7176         (+distinfo): Likewise for $(shell $(MAKE) ...) runs.
7177
7178 2003-02-20  Ulrich Drepper  <drepper@redhat.com>
7179
7180         * inet/rcmd.c (rresvport_af): Avoid using invliad values.  Wrap
7181         around in search if port IPPORT_RESERVED/2 has been test.
7182
7183 2002-02-20  Paolo Bonzini  <bonzini@gnu.org>
7184
7185         * posix/regcomp.c: Remove inclusions.
7186         * posix/regexec.c: Likewise.
7187         * posix/regex_internal.c: Likewise.
7188         * posix/regex_internal.h: Add inclusions here.
7189         * posix/regex.c: Only include sys/types.h before regex.h.  Include
7190         regex_internal.h here.  Include regex_internal.c before regcomp.c
7191         and regexec.c (might expose more opportunities to the C compiler).
7192
7193         * posix/regcomp.c (parse_expression): Fix construct rejected by SGI CC.
7194
7195         * posix/regex_internal.h [!_LIBC] (__mempcpy): Fix typo.
7196         [!_LIBC] (__wcrtomb): New definition.
7197         [!_LIBC]: Conditionalize enabling of I18N on HAVE_WCSCOLL and
7198         HAVE_LOCALE_H as well.
7199
7200 2003-02-20  Ulrich Drepper  <drepper@redhat.com>
7201
7202         * sysdeps/unix/sysv/linux/tcsetattr.c (tcsetattr): Remove obsolete
7203         patch to check for system call errors.
7204
7205 2002-07-24  Philip Blundell  <philb@gnu.org>
7206
7207         * sysdeps/unix/sysv/linux/arm/ioperm.c (init_iosys): Yield ENODEV
7208         on unknown systems.
7209
7210 2003-02-20  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
7211
7212         * sysdeps/powerpc/powerpc32/atomicity.h: Remove compiler workaround.
7213         * sysdeps/unix/sysv/linux/kernel-features.h
7214         (__ASSUME_NEW_PRCTL_SYSCALL): Defined for ppc32 too.
7215         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fe_nomask.c: Use prctl
7216         if possible.
7217         * sysdeps/unix/sysv/linux/powerpc/powerpc32/vfork.S: Avoid short
7218         interprocedure branches.
7219         * sysdeps/powerpc/soft-fp/Dist (sim-full.c, fenv_const.c): Move to...
7220         * sysdeps/powerpc/nofpu/Dist: ...here.
7221         * sysdeps/unix/sysv/linux/powerpc/Dist (fe_nomask.c): Move to...
7222         * sysdeps/unix/sysv/linux/powerpc/powerpc32/Dist: ...here.
7223         * sysdeps/unix/sysv/linux/s390/s390-64/Dist (kernel_stat.h): Delete.
7224         * sysdeps/unix/sysv/linux/sparc/Dist (bits/utmpx.h): Delete.
7225         * sysdeps/unix/sysv/linux/x86_64/Dist (bits/utmpx.h): Delete.
7226
7227 2003-02-18  Alan Modra  <amodra@bigpond.net.au>
7228
7229         * sysdeps/powerpc/powerpc32/sysdep.h (HIDDEN_JUMPTARGET): Redefine.
7230
7231 2003-02-20  Philip Blundell  <philb@gnu.org>
7232
7233         * sysdeps/unix/sysv/linux/arm/sysdep.h (INLINE_SYSCALL): Add
7234         missing arguments to INTERNAL_SYSCALL_ERROR_P and
7235         INTERNAL_SYSCALL_ERRNO.
7236
7237 2003-02-20  Martin Schwidefsky  <schwidefsky@de.ibm.com>
7238
7239         * sysdeps/unix/sysv/linux/s390/s390-32/chown.c (__real_chown): Test
7240         for __ASSUME_32BITUIDS.
7241
7242 2003-02-20  Andreas Schwab  <schwab@suse.de>
7243
7244         * sysdeps/unix/sysv/linux/m68k/bits/mman.h: Add MADV_* and
7245         POSIX_MADV_* constants.
7246
7247 2003-02-20  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
7248
7249         * sysdeps/unix/sysv/linux/sh/pread.c: New file.
7250         * sysdeps/unix/sysv/linux/sh/pread64.c: New file.
7251         * sysdeps/unix/sysv/linux/sh/pwrite.c: New file.
7252         * sysdeps/unix/sysv/linux/sh/pwrite64.c: New file.
7253
7254 2003-02-19  Jiro Sekiba  <jir@yamato.ibm.com>
7255
7256         * iconvdata/utf-16.c (gconv_end): Fix range of low surrogate.
7257
7258 2003-02-16  Roland McGrath  <roland@redhat.com>
7259
7260         * signal/signal.h: Include <sys/ucontext.h>, not <ucontext.h>.
7261
7262 2003-02-19  Ulrich Drepper  <drepper@redhat.com>
7263
7264         * stdlib/strtod.c (INTERNAL): Up the safety margin for cutting off
7265         decimal input digits.
7266         * stdlib/tst-strtod.c (main): Add test for strtof bug.
7267
7268 2003-02-18  Ulrich Drepper  <drepper@redhat.com>
7269
7270         * sysdeps/unix/sysv/linux/ttyname_r.c (__ttyname_r): Recognize
7271         invalid file descriptors and missing access permissions.
7272
7273 2003-02-17  Ulrich Drepper  <drepper@redhat.com>
7274
7275         * nss/getXXbyYY_r.c (REENTRANT_NAME): Return 0 if no entry has
7276         been found.
7277
7278         * sysdeps/posix/sysconf.c (__sysconf): Test for LOGIN_NAME_MAX and
7279         TTY_NAME_MAX and not the _POSIX_* minimal value macros.
7280         * sysdeps/unix/sysv/linux/bits/local_lim.h: Define TTY_NAME_MAX
7281         and LOGIN_NAME_MAX.
7282
7283 2003-02-17  Kevin B. Hendricks  <kevin.hendricks@sympatico.ca>
7284             Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
7285
7286         * sysdeps/powerpc/elf/libc-start.c: Handle NONTLS_INIT_TP.
7287         * sysdeps/powerpc/powerpc32/__longjmp.S: Remove R2 handling.
7288         * sysdeps/powerpc/powerpc32/setjmp.S: Likewise.
7289         * sysdeps/powerpc/powerpc32/fpu/__longjmp.S: Likewise.
7290         * sysdeps/powerpc/powerpc32/fpu/setjmp.S: Likewise.
7291
7292 2003-02-17  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
7293
7294         * sysdeps/unix/sysv/linux/powerpc/ftruncate64.c: Delete.
7295         * sysdeps/unix/sysv/linux/powerpc/truncate64.c: Delete.
7296         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Delete.
7297         * sysdeps/unix/sysv/linux/powerpc/pread.c: Delete.
7298         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Delete.
7299         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Delete.
7300
7301         * sysdeps/unix/sysv/linux/powerpc/fe_nomask.c: Move file...
7302         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fe_nomask.c: ...here.
7303         * sysdeps/unix/sysv/linux/powerpc/glob64.c: Move file...
7304         * sysdeps/unix/sysv/linux/powerpc/powerpc32/glob64.c: ...here.
7305
7306         * sysdeps/unix/sysv/linux/tcgetattr.c: Use INLINE_SYSCALL.
7307         * sysdeps/unix/sysv/linux/tcsetattr.c: Likewise.
7308         * sysdeps/unix/sysv/linux/powerpc/tcgetattr.c: Delete.
7309         * sysdeps/unix/sysv/linux/powerpc/tcsetattr.c: Delete.
7310
7311 2003-02-14  Thorsten Kukuk  <kukuk@suse.de>
7312
7313         * nss/getent.c (print_hosts): Print all IP addresses of one host.
7314
7315 2003-02-15  Roland McGrath  <roland@frob.com>
7316
7317         * sysdeps/mach/hurd/tls.h: New file.
7318         * sysdeps/mach/hurd/i386/tls.h: New file.
7319
7320         * mach/errsystems.awk: Include <errno.h> in generated output.
7321
7322         * sysdeps/mach/Makefile (mach-before-compile rule): Pass generating=t,
7323         use target mach-before-compile instead of generated.
7324         (mach-before-compile): New target.
7325         * Makerules: Disable use of tls.make if $(generating) is set.
7326         * mach/Makefile: Include mach-syscalls.mk even if no_deps=t.
7327         * sysdeps/mach/hurd/Makefile: Make generated hurd headers depend on
7328         mach-shortcuts.h so mach/ generation happens before hurd/.
7329
7330 2003-02-14  Ulrich Drepper  <drepper@redhat.com>
7331
7332         * sysdeps/i386/fpu/s_nextafterl.c: Decrement high word of mantissa
7333         of demorm correctly if low word is zero.
7334         Reported by Fred J. Tydeman <tydeman@tybor.com>.
7335         * math/libm-test.inc (nextafter_test): New test, but disabled due
7336         to gcc bug.
7337
7338         * sysdeps/generic/libc-start.c [HAVE_PTR_NTHREADS]: Decrement thread
7339         counter and only call __exit_thread if this is not the last thread.
7340
7341 2003-02-13  Jakub Jelinek  <jakub@redhat.com>
7342
7343         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Add instead of
7344         subtracting map->l_tls_offset.
7345
7346 2003-02-12  Ulrich Drepper  <drepper@redhat.com>
7347
7348         * sysdeps/generic/bits/confname.h: Define _CS_GNU_LIBC_VERSION and
7349         _CS_GNU_LIBPTHREAD_VERSION.
7350         * posix/conststr.c: Handle these new values.
7351         * posix/getconf.c: Likewise.
7352
7353         * sysdeps/mips/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE): Fix
7354         masking of version index.
7355         Patch by Lance Larsh <Lance.Larsh@oracle.com>.
7356
7357 2003-02-11  Ulrich Drepper  <drepper@redhat.com>
7358
7359         * nss/nss_files/files-hosts.c (HOST_DB_LOOKUP): Compute alignment
7360         correctly.  Reported by Thorsten Kukuk.
7361
7362 2003-02-10  Ulrich Drepper  <drepper@redhat.com>
7363
7364         * elf/Makefile (check-textrel-CFLAGS): Pass _XOPEN_SOURCE and
7365         _BSD_SOURCE to compiler.
7366         * elf/check-textrel.c (SWAP): Add parenthesis to avoid warnings.
7367         Patches by Alan Modra.
7368
7369 2003-02-08  Ulrich Drepper  <drepper@redhat.com>
7370
7371         * io/ftwtest.c: Get current working directory before and after the
7372         nftw call and make sure they match.
7373
7374 2003-02-08  Jim Meyering  <jim@meyering.net>
7375
7376         * io/ftw.c (ftw_startup): When using FTW_CHDIR, always remember
7377         the current directory, not just when DIR contains a slash.
7378         Reported by Manoj Srivastava.
7379
7380 2003-02-07  Jim Meyering  <jim@meyering.net>
7381
7382         * io/ftw.c: Add autoconf-recommended block of alloca-related code.
7383         Include autoconf-recommended block of dirent/NAMELEN-related
7384         definitions and includes.  Use NAMELEN throughout, rather than
7385         _D_EXACT_NAMLEN.
7386         [_LIBC]: Define NAMELEN to _D_EXACT_NAMLEN.
7387         [!_LIBC] (__getcwd): Define to xgetcwd and declare xgetcwd.
7388         (stpcpy): Declare, if necessary.
7389         (mempcpy): Define, if necessary.
7390         [!_LIBC] (__stpcpy, __mempcpy): Define.
7391         [!_LIBC] (LXSTAT, XSTAT): Define.
7392         (lstat) [!LIBC && !LSTAT_FOLLOWS_SLASHED_SYMLINK]: Define to rpl_lstat.
7393         (find_object): Don't use c99-style struct initializer.
7394         Tweak wording in a couple comments.
7395
7396 2003-02-07  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
7397
7398         * elf/tls-macros.h: Add non-PIC TLS macros and fix clobber list
7399         for SH.
7400         * sysdeps/unix/sysv/linux/sh/brk.c: Add SYSCALL_INST_PAD
7401         after the trapa instruction.
7402         * sysdeps/unix/sysv/linux/sh/clone.S (__clone): Add additional
7403         parameters.
7404         * sysdeps/unix/sysv/linux/sh/sh4/sysdep.h: New file.
7405         (NEED_SYSCALL_INST_PAD): Define.
7406         * sysdeps/unix/sysv/linux/sh/sys/user.h (start_thread): Undef to
7407         avoid to use definition for the kernel.
7408         * sysdeps/unix/sysv/linux/sh/sysdep.h (SYSCALL_ERROR_HANDLER):
7409         Save and restore the frame pointer.
7410         (SYSCALL_INST_PAD): Define.
7411         (INLINE_SYSCALL): Make use of INTERNAL_SYSCALL.
7412         (INTERNAL_SYSCALL): Make use of ERR parameter. Add SYSCALL_INST_PAD
7413         after trapa instruction.
7414         (INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
7415         INTERNAL_SYSCALL_ERROR_P): Adjust accordingly.
7416
7417 2003-02-07  Jakub Jelinek  <jakub@redhat.com>
7418
7419         * resolv/res_libc.c (_res): Ensure _res is not common symbol,
7420         so that it can have aliases.
7421         * inet/herrno.c (h_errno): Put it into .bss not .data section.
7422
7423 2003-02-07  Ulrich Drepper  <drepper@redhat.com>
7424
7425         * elf/dl-runtime.c (fixup): Correct typo in version index computation.
7426         (profile_fixup): Likewise.
7427         Patch by Lance Larsh <Lance.Larsh@oracle.com>.
7428
7429 2002-11-24  Robert Love  <rml@tech9.net>
7430
7431         * posix/sched.h: Second parameter of sched_setaffinity and
7432         sched_getaffinity is `unsigned int', not `unsigned long'.
7433         * sysdeps/generic/sched_setaffinity.c: Likewise.
7434         * sysdeps/generic/sched_getaffinity.c: Likewise.
7435
7436 2003-02-05  Ulrich Drepper  <drepper@redhat.com>
7437
7438         * debug/catchsegv.sh: Fix typo in error messsage.
7439         Reported by John Levon <levon@movementarian.org>.
7440
7441         * sysdeps/unix/sysv/linux/posix_fadvise.c: New file.
7442         * sysdeps/unix/sysv/linux/syscalls.list: Add posix_fadvise64 syscall.
7443         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Likewise.
7444         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
7445         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Likewise.
7446         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
7447         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
7448
7449         * libio/putwc_u.c: Use _IO_putwc_unlocked, not _IO_putc_unlocked.
7450         Patch by Moritz Schulte <moritz@duesseldorf.ccc.de>.
7451
7452 2003-02-05  Jim Meyering  <jim@meyering.net>
7453
7454         Fix a heap-corrupting bug.
7455         * io/ftw.c: Include <limits.h>.
7456         (PATH_MAX) [!defined PATH_MAX]: Define to 1024.
7457         (process_entry): Allocate enough space to hold the resulting
7458         file name.  Don't presume that 2*dirbufsize is enough.
7459         (ftw_startup): Always use PATH_MAX to compute buffer size, now that
7460         it is guaranteed to be defined.
7461
7462 2003-02-04  Ulrich Drepper  <drepper@redhat.com>
7463
7464         * iconvdata/Makefile: Add rules to build and run bug-iconv3.
7465         * iconvdata/bug-iconv3.c: New file.
7466
7467 2003-02-04  Martin Schwidefsky  <schwidefsky@de.ibm.com>
7468
7469         * sysdeps/unix/sysv/linux/s390/system.c: New file.
7470
7471 2003-02-03  Jakub Jelinek  <jakub@redhat.com>
7472
7473         * sysdeps/sparc/sparc32/elf/configure.in (BROKEN_SPARC_WDISP22): New
7474         check.
7475         * config.h.in (BROKEN_SPARC_WDISP22): Add.
7476
7477 2003-02-03  Ulrich Drepper  <drepper@redhat.com>
7478
7479         * sysdeps/i386/i686/memmove.S: New file.
7480
7481 2003-01-31  Steven Munroe  <sjmunroe@us.ibm.com>
7482
7483         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c:
7484         Include kernel-features.h
7485         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: Likewise.
7486         * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S: Likewise.
7487         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: Likewise.
7488         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Likewise.
7489
7490 2003-02-02  Jakub Jelinek  <jakub@redhat.com>
7491
7492         * elf/tls-macros.h [sparc] (TLS_LD, TLS_GD): Add "cc" clobbers.
7493
7494 2003-01-25  Jim Meyering  <jim@meyering.net>
7495
7496         * io/ftw.c (object_compare): Compare inode numbers before device
7497         numbers, since the former are much more likely to differ.
7498
7499 2003-02-01  Ulrich Drepper  <drepper@redhat.com>
7500
7501         * time/tzfile.c (__tzfile_compute): Change return value type to
7502         void.  Adjust return statements.
7503         * include/time.h (__tzfile_compute): Adjust prototype.
7504
7505 2003-02-01  Jim Meyering  <jim@meyering.net>
7506
7507         * time/tzset.c (__tz_convert): Remove dead code; __tzfile_compute
7508         always returns 1.
7509
7510 2003-01-31  Steven Munroe  <sjmunroe@us.ibm.com>
7511
7512         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c
7513         [!__ASSUME_NEW_PRCTL_SYSCALL]: Noop prctl syscall and set ENOSYS.
7514
7515 2003-01-31  Steven Munroe  <sjmunroe@us.ibm.com>
7516
7517         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S
7518         [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Generate ENOSYS stub.
7519         * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S
7520         [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Likewise.
7521         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S
7522         [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Likewise.
7523         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S
7524         [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Likewise.
7525
7526 2003-01-31  Steven Munroe  <sjmunroe@us.ibm.com>
7527
7528         * sysdeps/unix/sysv/linux/configure.in: Change arch_minimum_kernel
7529         back to 2.4.19 for powerpc64.
7530         * sysdeps/unix/sysv/linux/kernel-features.h
7531         (__ASSUME_NEW_PRCTL_SYSCALL): Define for powerpc64.
7532         (__ASSUME_NEW_RT_SIGRETURN_SYSCALL): Define for powerpc64.
7533
7534 2003-02-01  Ulrich Drepper  <drepper@redhat.com>
7535
7536         * wcsmbs/wcscpy.c (wcscpy): Add alternative implementation for
7537         platforms with strange alignment requirements on wchar_t.
7538
7539 2003-01-31  Andreas Schwab  <schwab@suse.de>
7540
7541         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Remove __GI_*
7542         aliases, already added by make-syscalls.sh.
7543         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
7544         * sysdeps/unix/sysv/linux/hppa/syscalls.list: Likewise.
7545         * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise.
7546         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
7547         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
7548         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
7549         * sysdeps/unix/sysv/linux/syscalls.list: Likewise.
7550         * sysdeps/unix/inet/syscalls.list: Likewise.
7551         * sysdeps/unix/syscalls.list: Likewise.
7552
7553 2003-01-31  Andreas Schwab  <schwab@suse.de>
7554
7555         * sysdeps/m68k/Makefile (sysdep-CFLAGS): Don't define, not needed
7556         any more.
7557
7558 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
7559
7560         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S (__clone): Use lg,
7561         not l to load tls from stack.
7562
7563 2003-01-30  Roland McGrath  <roland@redhat.com>
7564
7565         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Move check for
7566         null argument before all else.
7567         Reported by Martin Schwidefsky <schwidefsky@de.ibm.com>.
7568
7569 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
7570
7571         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_lazy_rel):
7572         Move to RESOLVE protected part of the header.
7573         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_lazy_rel):
7574         Likewise.
7575
7576 2003-01-30  Ulrich Drepper  <drepper@redhat.com>
7577
7578         * stdio-common/Makefile (tests): Add bug15.
7579         (bug15-ENV): Define.
7580         * stdio-common/bug15.c: New file.
7581
7582 2002-10-07  Wolfram Gloger  <wg@malloc.de>
7583
7584         * malloc/malloc.c (sYSMALLOc): Only check for breakage due
7585         to foreign sbrk()'s if arena is contiguous.  Bug report from
7586         Bruno Haible <bruno@clisp.org>.
7587
7588 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
7589
7590         * sysdeps/s390/libc-tls.c: Include stdlib.h.
7591
7592 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
7593
7594         * stdio-common/vfprintf.c (vfprintf): Only subtract lowest 3 bits of
7595         ps.__count.
7596
7597 2003-01-30  Ulrich Drepper  <drepper@redhat.com>
7598
7599         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S: Fix storing and
7600         restoring of %r6.
7601         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S: Likewise.  Use
7602         64-bit load.
7603         Patch by Martin Schwidefsky  <schwidefsky@de.ibm.com>.
7604
7605 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
7606
7607         * elf/dl-reloc.c (CHECK_STATIC_TLS): Move _dl_signal_error...
7608         (allocate_static_tls): ...here.  Add __attribute_noinline__.
7609         Don't return on failure.
7610         (_dl_reloc_bad_type): Add __attribute_noinline__.
7611         * elf/do-rel.h (elf_dynamic_do_rel): Add
7612         __attribute__((always_inline)).
7613         * elf/dynamic-link.h (elf_machine_rel, elf_machine_rela,
7614         elf_machine_rel_relative, elf_machine_rela_relative,
7615         elf_machine_lazy_rel): Add prototypes with
7616         __attribute__((always_inline)).
7617
7618 2003-01-29  David Mosberger  <davidm@hpl.hp.com>
7619
7620         * elf/dl-support.c (_dl_aux_init): Handle AT_SYSINFO.
7621
7622 2003-01-29  Roland McGrath  <roland@redhat.com>
7623
7624         * configure.in: Barf if configured in $srcdir.
7625
7626 2003-01-28  Steven Munroe  <sjmunroe@us.ibm.com>
7627
7628         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c
7629         (__fe_nomask_env): Change __prctl call to INTERNAL_SYSCALL.
7630
7631 2003-01-28  Martin Schwidefsky  <schwidefsky@de.ibm.com>
7632
7633         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S: Reorder additional
7634         clone parameters to match the order used on ia32.
7635         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S: Likewise.
7636
7637 2003-01-27  Martin Schwidefsky  <schwidefsky@de.ibm.com>
7638
7639         * elf/elf.h: Add new s390 relocs.
7640         * elf/tls-macros.h: Add s390 versions.
7641         * sysdeps/s390/Versions [GLIBC_2.3] (ld): Export __tls_get_offset.
7642         * sysdeps/s390/dl-tls.h: New file.
7643         * sysdeps/s390/libc-tls.c: New file.
7644         * sysdeps/s390/s390-32/dl-machine.h (elf_machine_type_class): Add TLS
7645         relocs for class PLT.
7646         (elf_machine_rela): Handle TLS relocs.
7647         * sysdeps/s390/s390-64/dl-machine.h: Likewise.
7648         * sysdeps/s390/s390-32/elf/configure.in: Add TLS check.
7649         * sysdeps/s390/s390-64/elf/configure.in: Likewise.
7650         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S: Add support for
7651         CLONE_CHILD_*TID flags.
7652         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S: Likewise.
7653         * sysdeps/unix/sysv/linux/s390/s390-64/mmap.S: Use branch with 32
7654         bit offset.
7655         * sysdeps/unix/sysv/linux/s390/s390-64/socket.S: Likewise.
7656         * sysdeps/unix/sysv/linux/s390/s390-64/syscall.S: Likewise.
7657         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S (__syscall_error):
7658         Support USE___THREAD. Define RTLD_PRIVATE_ERRNO variant.
7659         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S (__syscall_error):
7660         Likewise.
7661         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h:
7662         (SYSCALL_ERROR_LABEL): Move define next to SYSCALL_ERROR_HANDLER.
7663         (SYSCALL_ERROR_HANDLER): Add USE___THREAD and RTLD_PRIVATE_ERRNO
7664         variants.
7665         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h:
7666         (SYSCALL_ERROR_LABEL): Move define next to SYSCALL_ERROR_HANDLER. Use
7667         direct branch to syscall_error for !PIC and PIC && !_LIBC_REENTRANT.
7668         (SYSCALL_ERROR_HANDLER): Add USE___THREAD and RTLD_PRIVATE_ERRNO
7669         variants.
7670
7671 2003-01-28  Ulrich Drepper  <drepper@redhat.com>
7672
7673         * sysdeps/unix/common/pause.c (do_pause): New function.  Split
7674         from __libc_pause.  Implement using sigsuspend.
7675         (__libc_pause): Call do_pause to do the real work.
7676
7677         * sysdeps/posix/sigpause.c (do_sigpause): Check range of
7678         sig_or_mask parameter is is_sig != 0.
7679
7680 2003-01-21  Philip Blundell  <philb@gnu.org>
7681
7682         * sysdeps/unix/sysv/linux/bits/ioctls.h (SIOCSIFNAME): Define.
7683
7684 2003-01-27  Steven Munroe  <sjmunroe@us.ibm.com>
7685
7686         * stdio-common/Makefile: Add bug14-ENV to set LOCPATH for make check.
7687
7688 2003-01-27  Ulrich Drepper  <drepper@redhat.com>
7689
7690         * stdio-common/bug14.c: Use official name for the locale.
7691
7692         * stdio-common/vfprintf.c [USE_IN_LIBIO]: Use _IO_cleanup_region_start
7693         instead of __libc_cleanup_region_start and _IO_cleanup_region_end
7694         instead of __libc_cleanup_region_end.
7695
7696         * sysdeps/unix/sysv/linux/i386/system.c (CLEANUP_HANDLER): Pass 1
7697         as first parameter to __libc_cleanup_region_start.
7698
7699         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c
7700         (__fe_nomask_env): Use __prctl not prctl.
7701         * sysdeps/unix/sysv/linux/syscalls.list: Add __prctl alias for
7702         prctl syscall.
7703
7704         * elf/dl-reloc.c (CHECK_STATIC_TLS): Improve error message.
7705
7706         * elf/dl-open.c (_dl_tls_static_size): Bump to 2048.
7707
7708         * elf/dl-reloc.c (allocate_static_tls): Avoid arithmetic
7709         wrap-around in test.
7710
7711 2003-01-26  Andreas Schwab  <schwab@suse.de>
7712
7713         * sysdeps/wordsize-32/divdi3.c: Export the functions only as
7714         compatibility symbols.  Remove INTDEF for __divdi3.
7715         * sysdeps/wordsize-32/lldiv.c: Don't use __divdi3_internal.
7716         * sysdeps/powerpc/powerpc32/divdi3.c: Remove.
7717         * sysdeps/powerpc/powerpc32/Makefile (CPPFLAGS-divdi3.c): Don't
7718         define.
7719         * sysdeps/powerpc/powerpc32/Dist: Remove divdi3.c.
7720
7721 2003-01-24  Jakub Jelinek  <jakub@redhat.com>
7722
7723         * elf/tls-macros.h: Add SPARC 32-bit definitions.
7724         * sysdeps/sparc/sparc32/elf/configure.in: Add TLS check.
7725         * sysdeps/sparc/sparc32/dl-machine.h: Add dl_machine_h guards
7726         for the first half of the header.  Include tls.h.
7727         (elf_machine_type_class): Return ELF_RTYPE_CLASS_PLT for TLS
7728         relocs too.
7729         (elf_machine_rela): Handle TLS relocs.
7730         * sysdeps/sparc/dl-tls.h: New file.
7731
7732         * sysdeps/unix/sysv/linux/sparc/sparc32/socket.S: Add cancellation
7733         support.
7734
7735         * sysdeps/sparc/sparc32/sparcv9/hp-timing.h: Use %g6 instead of %g7.
7736         * sysdeps/sparc/sparc32/memchr.S: Likewise.
7737         * sysdeps/sparc/sparc32/memcpy.S: Likewise.
7738         * sysdeps/sparc/sparc32/strcat.S: Likewise.
7739         * sysdeps/sparc/sparc32/strchr.S: Likewise.
7740         * sysdeps/sparc/sparc32/strcmp.S: Likewise.
7741         * sysdeps/sparc/sparc32/strcpy.S: Likewise.
7742         * sysdeps/sparc/sparc64/sparcv9b/memcpy.S: Likewise.
7743         * sysdeps/sparc/sparc64/hp-timing.h: Likewise.
7744         * sysdeps/sparc/sparc64/memcpy.S: Likewise.
7745         * sysdeps/sparc/sparc64/stpcpy.S: Likewise.
7746         * sysdeps/sparc/sparc64/stpncpy.S: Likewise.
7747         * sysdeps/sparc/sparc64/strcat.S: Likewise.
7748         * sysdeps/sparc/sparc64/strchr.S: Likewise.
7749         * sysdeps/sparc/sparc64/strcmp.S: Likewise.
7750         * sysdeps/sparc/sparc64/strcpy.S: Likewise.
7751         * sysdeps/sparc/sparc64/strncmp.S: Likewise.
7752         * sysdeps/sparc/sparc64/strncpy.S: Likewise.
7753         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Likewise.
7754         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h: Likewise.
7755
7756 2003-01-24  Andreas Schwab  <schwab@suse.de>
7757
7758         * elf/dl-close.c (_dl_close): Don't relocate DT_FINI_ARRAY
7759         elements, and process them backwards.
7760         * elf/Makefile ($(objpfx)tst-array4): New target.
7761         ($(objpfx)tst-array4.out): Likewise.
7762         (tests) [$(have-initfini-array) = yes]: Add tst-array4.
7763         * elf/tst-array4.c: New file.
7764         * elf/tst-array4.exp: Likewise.
7765
7766 2003-01-24  Steven Munroe  <sjmunroe@us.ibm.com>
7767
7768         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c: New file.
7769
7770 2003-01-27  Guido Guenther  <agx@sigxcpu.org>
7771
7772         * sysdeps/unix/sysv/linux/mips/sysdep.h (SYSCALL_ERROR_LABEL): Define.
7773         * sysdeps/unix/sysv/linux/mips/pread.c: Add support for
7774         cancellation handling and handle both __NR_pread64 and __NR_pread.
7775         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
7776         * sysdeps/unix/sysv/linux/mips/pwrite.c: Add support for
7777         cancellation handling and handle both __NR_pwrite64 and __NR_pwrite.
7778         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
7779         * sysdeps/unix/mips/sysdep.S: Don't set errno in the _LIBC_REENTRANT
7780         case, use register names consistently.
7781
7782 2003-01-27  Wolfram Gloger  <wg@malloc.de>
7783
7784         * malloc/hooks.c (mem2chunk_check): Check alignment of mem
7785         pointer, not of the computed chunk.  Bug report from Carlos
7786         O'Donell <carlos@baldric.uwo.ca>.
7787
7788 2003-01-25  Andreas Schwab  <schwab@suse.de>
7789
7790         * sysdeps/m68k/dl-machine.h (_dl_start_user): Use pc-relative
7791         addressing to save GOT entries.
7792
7793 2003-01-21  Jakub Jelinek  <jakub@redhat.com>
7794
7795         * sysdeps/unix/alpha/sysdep.h (inline_syscall0,
7796         inline_syscall1, inline_syscall2, inline_syscall3,
7797         inline_syscall4, inline_syscall5, inline_syscall6): Add __volatile__.
7798         * sysdeps/unix/sysv/linux/alpha/sysdep.h (INTERNAL_SYSCALL): Add
7799         __attribute__((unused)) to ChEcK.
7800
7801 2003-01-20  Martin Schwidefsky  <schwidefsky@de.ibm.com>
7802
7803         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (INTERNAL_SYSCALL):
7804         Fix inline assembler constraints.
7805         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (INTERNAL_SYSCALL):
7806         Likewise.
7807
7808         * sysdeps/s390/s390-64/Makefile (pic-ccflag): Use -fpic instead of
7809         -fPIC.
7810
7811 2003-01-20  Segher Boessenkool  <segher@koffie.nl>
7812
7813         * sysdeps/ieee754/dbl-64/sincos32.c (__mpcos): Really
7814         compute the cosine, not the sine, even if x > 0.8.
7815
7816 2003-01-19  Ulrich Drepper  <drepper@redhat.com>
7817
7818         * nis/nss_nis/nis-spwd.c: Make _nss_nis_endspent an alias of
7819         _nss_nis_setspent.  Work around the different prototypes.
7820         * nis/nss_nis/nis-rpc.c (internal_nis_setrpcent): Use
7821         internal_nis_endrpcent.
7822         (internal_nis_endrpcent): Change return type to void.  Change callers.
7823         * nis/nss_nis/nis-pwd.c: Make _nss_nis_endpwent an alias of
7824         _nss_nis_setpwent.  Work around the different prototypes.
7825         * nis/nss_nis/nis-proto.c (_nss_nis_endprotoent): Split out body
7826         of the function to...
7827         (internal_nis_endprotoent): ... here.  New function.
7828         (internal_nis_setprotoent): Use internal_nis_endprotoent.
7829         * nis/nss_nis/nis-network.c: Make _nss_nis_endnetent an alias of
7830         _nss_nis_setnetent.  Work around the different prototypes.
7831         * nis/nss_nis/nis-netgrp.c (_nss_nis_endnetgrent): Split out body
7832         of the function to...
7833         (internal_nis_endnetgrent): ... here.  New function.
7834         (_nss_nis_setnetgrent): Use internal_nis_endnetgrent.
7835
7836 2003-01-19  Jim Meyering  <jim@meyering.net>
7837
7838         * time/strftime.c: (widen): Merge nearly-identical definitions.
7839         (nl_get_alt_digit) [! defined my_strftime]: Define.
7840         (my_strftime) [_NL_CURRENT]: Merge nearly-identical uses of
7841         _nl_get_alt_digit and _nl_get_walt_digit.
7842
7843 2003-01-19  Ulrich Drepper  <drepper@redhat.com>
7844
7845         * time/strftime.c (my_strftime): Handle very large width
7846         specifications for numeric values correctly.  Improve checks for
7847         overflow.
7848         * time/Makefile (tests): Add tst-strftime.
7849         * time/tst-strftime.c: New file.
7850
7851 2003-01-18  Ulrich Drepper  <drepper@redhat.com>
7852
7853         * nis/nss_nis/nis-hosts.c: Make _nss_nis_endhostent an alias of
7854         _nss_nis_sethostent.  Work around the different prototypes.
7855         * nis/nss_nis/nis-grp.c: Make _nss_nis_endgrent an alias of
7856         _nss_nis_setgrent.  Work around the different prototypes.
7857         * nis/nss_nis/nis-ethers.c (internal_nis_endetherent): New
7858         function.  Split out from _nss_nis_endetherent.
7859         (internal_nis_setetherent): Use internal_nis_endetherent instead of
7860         duplicating the code.
7861         * nis/nss_nis/nis-alias.c: Make _nss_nss_nis_endaliasent an alias
7862         of _nss_nis_setaliasent.
7863         * nis/nss_nis/nis-service.c (internal_nis_setservent): Reuse
7864         internal_nis_endservent code, don't duplicate it.
7865
7866         * inet/rexec.c (rexec_af): Protect socket operations with
7867         TEMP_FAILURE_RETRY.  Use writev instead of multiple write.
7868         * inet/rcmd.c (rcmd_af): Likewise.
7869
7870 2003-01-17  Roland McGrath  <roland@redhat.com>
7871
7872         * math/libm-test.inc (sin_test, cos_test, sincos_test) [TEST_DOUBLE]:
7873         Add test of value 0.80190127184058835.
7874
7875         * elf/dl-open.c: Fix typo ifdef -> ifndef on _dl_tls_static_size defn.
7876
7877 2003-01-17  Richard Henderson  <rth@redhat.com>
7878
7879         * sysdeps/alpha/dl-machine.h (elf_machine_type_class): Add TLS
7880         relocs for class PLT.
7881         * sysdeps/alpha/libc-tls.c: New file.
7882         * sysdeps/unix/alpha/sysdep.S (EPILOGUE, GPSAVEREG): New.
7883         (LOADGP) [!PIC]: Rewrite to preserve caller's gp.
7884
7885 2003-01-17  Jakub Jelinek  <jakub@redhat.com>
7886
7887         * sysdeps/unix/sysv/linux/ia64/dl-static.c (_dl_static_init): Use
7888         __libc_lock_{,un}lock_recursive instead of __libc_lock_{,un}lock
7889         on _dl_static_lock.
7890
7891 2003-01-17  Andreas Jaeger  <aj@suse.de>
7892
7893         * stdio-common/bug14.c: Include stdlib.h for exit prototype.
7894
7895 2003-01-16  Steven Munroe  <sjmunroe@us.ibm.com>
7896
7897         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: New file.
7898         * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S: New file.
7899         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: New file.
7900         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: New file.
7901         * sysdeps/unix/sysv/linux/powerpc/powerpc64/ucontext_i.h: New file.
7902         * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: New file.
7903         * sysdeps/unix/sysv/linux/configure.in: Minimum kernel for PPC64
7904         is 2.4.21.
7905
7906 2003-01-16  Ulrich Drepper  <drepper@redhat.com>
7907
7908         * sysdeps/generic/glob.c (glob): Assume sysconf() always returns
7909         values != -1 for _LIBC.  Use extend_alloca to reallocate alloca'ed
7910         buffers.
7911
7912         * sysdeps/generic/sysconf.c: Unconditionally implement
7913         _SC_GETPW_R_SIZE_MAX and _SC_GETGR_R_SIZE_MAX.
7914         * sysdeps/posix/sysconf.c: Likewise.
7915
7916 2003-01-16  Jakub Jelinek  <jakub@redhat.com>
7917
7918         * posix/regcomp.c (parse_bracket_exp): If build_charclass fails,
7919         set *err to the returned error, not to REG_ESPACE unconditionally.
7920         (build_word_op): Likewise.
7921         * posix/Makefile (tests): Add bug-regex16.
7922         * posix/bug-regex16.c: New test.
7923
7924 2003-01-16  Jakub Jelinek  <jakub@redhat.com>
7925
7926         * elf/dl-load.c (_dl_map_object_from_fd): Use
7927         GL(dl_tls_dtv_slotinfo_list) != NULL to check whether TLS has
7928         been already initialized.
7929
7930 2003-01-15  Dmitry V. Levin  <ldv@altlinux.org>
7931
7932         * sysdeps/unix/sysv/linux/ptsname.c: Fix typo in comment.
7933
7934 2003-01-16  Jakub Jelinek  <jakub@redhat.com>
7935
7936         * posix/regcomp.c (re_compile_internal): If clearing buffer, clear
7937         allocated too.  Reported by Al Viro <aviro@redhat.com>.
7938
7939 2003-01-16  Roland McGrath  <roland@redhat.com>
7940
7941         Tweak merged .abilist file format to merge duplicate symbols in
7942         different sets into multi-version stanzas with new "| SET regexp..."
7943         header continuation lines.
7944         * scripts/merge-abilist.awk: Rewritten for new format.
7945         * scripts/extract-abilist.awk: Likewise.
7946
7947 2003-01-15  Ulrich Drepper  <drepper@redhat.com>
7948
7949         * nscd/connections.c (nscd_run): Remove bogus return which isn't
7950         necessary with gcc 3.2+.
7951         (nscd_init): Don't use error() to print message, use dbg_log.
7952
7953         * iconv/gconv_simple.c (STORE_REST): Explicitly store the total
7954         expected size into state.
7955         (UNPACK_BYTES): Do the reverse.
7956         * iconv/loop.c: Use CLEAR_STATE if defined to clear __state element.
7957         * wcsmbs/tst-mbrtowc.c (utf8_test_1): Add test for the bug.
7958         Reported by Al Viro <aviro@redhat.com>.
7959
7960         * stdio-common/Makefile (tests): Add bug14.
7961         * stdio-common/bug14.c: New file.
7962
7963         * stdio-common/vfscanf.c: When recognizing multibyte characters in
7964         string reset the byte counter after mbrtowc reported it is not a
7965         partial character.  Reported by Al Viro <aviro@redhat.com>.
7966
7967 2003-01-15  Steven Munroe  <sjmunroe@us.ibm.com>
7968
7969         * sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S: Include
7970         sysdep-cancel.h, not sysdep.h.
7971
7972 2003-01-15  Ulrich Drepper  <drepper@redhat.com>
7973
7974         * nscd/connections.c (nscd_run): Protect accept call with
7975         TEMP_FAILURE_RETRY.
7976
7977 2003-01-15  Andreas Schwab  <schwab@suse.de>
7978
7979         * sysdeps/unix/Makefile: Include $(common-objpfx)s-proto-bp.d.
7980         (common-generated): Add s-proto-bp.d.
7981         * sysdeps/unix/make-syscalls.sh: Use s-proto-bp.d for dependencies
7982         of bp thunks.
7983         * sysdeps/unix/s-proto-bp.S: New file.
7984         * sysdeps/generic/bp-thunks.h: Don't include <sys/vm86.h> here.
7985         Use <io/sys/sendfile.h> instead of <sys/sendfile.h>.
7986         * sysdeps/unix/sysv/linux/i386/bp-thunks.h: New file.
7987
7988 2003-01-15  Roland McGrath  <roland@redhat.com>
7989
7990         * Makerules: Use -include for tls.make, suppresses warning.
7991         Move gen-as-const-headers rules up so before-compile is set in time.
7992         (sed-remove-dotdot): Fix to work right for subdirs or top dir.
7993
7994 2003-01-15  Ulrich Drepper  <drepper@redhat.com>
7995
7996         * nscd/nscd.c (main): Make code to close all file descriptors
7997         faster and more robust.
7998
7999         * nscd/nscd_getpw_r.c (nscd_getpw_r): Consolidate writing of the
8000         request with one writev call.  Protect all read calls with
8001         TEMP_FAILURE_RETRY.
8002         * nscd/nscd_getgr_r.c (nscd_getgr_r): Likewise.
8003         * nscd/nscd_gethst_r.c (nscd_gethst_r): Likewise.
8004
8005         * nscd/hstcache.c: Use extend_alloca to reallocate alloca'd buffer.
8006         Protect writev calls with TEMP_FAILURE_RETRY.
8007         * nscd/grpcache.c: Likewise.
8008         * nscd/pwdcache.c: Likewise.
8009
8010         * nscd/hstcache.c (addhstbynamev6): Don't interpret hostname as
8011         IPv6 address in debug output.
8012
8013 2003-01-14  Roland McGrath  <roland@redhat.com>
8014
8015         * Makerules (check-abi-%): Use two rules for $(common-objpfx) and
8016         $(objpfx) directories, and get rid of vpath directives.  The previous
8017         arrangement resulted in files being written to the source directories
8018         when run in a clean build.  Find all .abilist files in $(..)abilist/.
8019         (update-abi-%): Likewise.
8020         (generated): Don't add .symlist files, they'll be intermediates.
8021
8022         * sysdeps/generic/init-first.c: Add a comment.
8023
8024         * elf/Makefile ($(objpfx)ld.so): Pass -z defs in link.
8025
8026         * scripts/gen-as-const.awk: Grok lone "--" as a separator between
8027         #includes and expressions.
8028
8029         * scripts/merge-abilist.awk: Omit cpu-.*-os.*/modifier from merged
8030         config list when it already contains cpu-.*-os.* without / part.
8031
8032         * Makerules (sed-remove-dotdot): New variable.
8033         ($(common-objpfx)%.make): Use it.  Depend on $(before-compile).
8034         ($(common-objpfx)%.h $(common-objpfx)%.h.d): Likewise.
8035         (check-abi-config): New variable, append /tls or /notls to the tuple.
8036         (check-abi-%): Use that for -v config value.
8037         Find .abilist files in abilist/libfoo.abilist, not in subdir.
8038         * Rules: Move bits/stdio_lim.h generation rules to Makerules.
8039
8040 2003-01-14  Ulrich Drepper  <drepper@redhat.com>
8041
8042         * manual/install.texi: Correct description of header preparation for
8043         Linux build.  Patch by mhwood@Ameritech.Net [PR libc/4941].
8044
8045 2003-01-14  Guido Guenther  <agx@sigxcpu.org>
8046
8047         * sysdeps/unix/sysv/linux/mips/sysdep.h (INTERNAL_SYSCALL,
8048         INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
8049         INTERNAL_SYSCALL_ERROR_P, INLINE_SYSCALL): Define.
8050
8051 2003-01-14  Steven Munroe  <sjmunroe@us.ibm.com>
8052
8053         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h
8054         (INTERNAL_SYSCALL): Make use of ERR parameter.
8055         (INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
8056         INTERNAL_SYSCALL_ERROR_P): Adjust accordingly.
8057         (INLINE_SYSCALL): Make use of INTERNAL_SYSCALL.
8058         * sysdeps/unix/sysv/linux/powerpc/powerpc64/vfork.S: New file.
8059
8060 2003-01-14  Ulrich Drepper  <drepper@redhat.com>
8061
8062         * sunrpc/pm_getport.c (pmap_getport): Open TCP socket if protocol
8063         == IPPROTO_TCP.
8064         Patch by James Strandboge <jamie@tpptraining.com> [PR libc/4943].
8065
8066         * sysdeps/unix/sysv/linux/i386/dl-procinfo.c (_dl_x86_cap_flags):
8067         Fix entry for bit 31.
8068
8069         * iconvdata/Makefile: Add rules to build IBM866NAV.
8070         * iconvdata/ibm866nav.c: New file.
8071         * iconvdata/tst-tables.sh: Add IBM866NAV.
8072         * iconvdata/gconv-modules: Add entries for IBM866NAV.
8073
8074 2003-01-13  Ulrich Drepper  <drepper@redhat.com>
8075
8076         * string/tester.c (test_strcpy): Use the previously #if 0'ed code
8077         to test void* parameters.
8078
8079         * sysdeps/i386/i486/bits/string.h (__STRING_SMALLL_GET16): Cast
8080         source pointer before dereferencing.
8081         (__STRING_SMALLL_GET32): Likewise.
8082         (__memset_gc): Add missing parenthesis around macro arguments.
8083         Patch by Denis Zaitsev <zzz@cd-club.ru>.
8084
8085         * sysdeps/i386/i486/bits/string.h (__strspn_cg): Tell the compiler
8086         that %eax is modified.  Reported by Denis Zaitsev <zzz@cd-club.ru>.
8087
8088 2003-01-14  Jakub Jelinek  <jakub@redhat.com>
8089
8090         * sysdeps/unix/alpha/sysdep.h (INLINE_SYSCALL): Undefined before
8091         defining.
8092
8093 2003-01-13  Martin Schwidefsky  <schwidefsky@de.ibm.com>
8094
8095         * sysdeps/s390/s390-64/initfini.c: Avoid unterminated string literals.
8096         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (L): Don't define it
8097         here.
8098         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (L): Likewise.
8099
8100 2003-01-13  Martin Schwidefsky  <schwidefsky@de.ibm.com>
8101
8102         * sysdeps/s390/s390-32/sysdep.h (JUMPTARGET): Move branch instructions
8103         from here...
8104         (PSEUDO): ... to here.
8105         * sysdeps/s390/s390-64/sysdep.h (JUMPTARGET): Move branch instruction
8106         from here...
8107         (PSEUDO): ... to here.
8108
8109 2003-01-13  Ulrich Drepper  <drepper@redhat.com>
8110
8111         * locale/programs/charmap-dir.c (charmap_readdir): Use struct
8112         dirent64 instead of struct dirent for dirent.  Call readdir64
8113         instead of readdir.
8114
8115         * locale/programs/locfile.c (siblings_uncached): Use struct
8116         dirent64 instead of struct dirent for other_dentry.  Call
8117         readdir64 instead of readdir.
8118
8119         * elf/ldconfig.c (direntry): Change type to struct dirent64.
8120         (search_dir): Use readdir64 instead of readdir.
8121         Patch by Zhangfan Xing <xing@pacific.jpl.nasa.gov>.
8122
8123 2003-01-12  Roland McGrath  <roland@redhat.com>
8124
8125         * hurd/lookup-retry.c (__hurd_file_name_lookup_retry): Use strtoul,
8126         not strtol.  The former is usable in ld.so, the latter not.
8127
8128         * include/fcntl.h: Declare __libc_creat.
8129
8130         * sysdeps/mach/hurd/Makefile (libmachuser-link.so-no-z-defs,
8131         libhurduser-link.so-no-z-defs): New variables.
8132
8133         * malloc/malloc.c: Revert last change.
8134         * malloc/malloc.h (_int_*): Move these decls to ...
8135         * include/malloc.h: ... here.  Add attribute_hidden.
8136         (_int_valloc): Declare it too.
8137
8138 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
8139
8140         * elf/dl-close.c (_dl_close): Fix typo, must be == not = in
8141         search for removed searchlist.  Reported by Roland McGrath.
8142
8143         * io/ftwtest-sh: Add test for case of symlink to nonexisting file
8144         given as start file.
8145
8146         * io/ftw.c (ftw_startup): Use correct name in check for symlink
8147         without existing target.  Patch by Jim Meyering.
8148
8149         * Makerules (build-shlib-helper): Don't use -z defs linker option
8150         if no-z-defs is defined either.
8151
8152 2003-01-10  Martin Schwidefsky  <schwidefsky@de.ibm.com>
8153
8154         * sysdeps/unix/sysv/linux/s390/s390-64/kernel_stat.h: Remove unused
8155         file.
8156
8157 2003-01-10  Martin Schwidefsky  <schwidefsky@de.ibm.com>
8158
8159         * sysdeps/unix/sysv/linux/s390/s390-32/syscalls.list: Add vfork.
8160         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
8161
8162 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
8163
8164         * io/ftwtest-sh: Add test case for relative path with /. at the end.
8165
8166 2003-01-12  Jim Meyering  <jim@meyering.net>
8167
8168         * io/ftw.c (ftw_startup): When trying to stat the starting directory,
8169         use the basename if we've already chdir'd into its parent directory.
8170
8171 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
8172
8173         * io/ftw.c (process_entry): Use relative path when using chdir()
8174         to change directory after call to ftw_dir.
8175         * io/ftwtest-sh: Add test for relative path argument to nftw()
8176         with FTW_CHDIR option.
8177
8178 2002-01-12  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
8179
8180         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_VFORK_SYSCALL):
8181         Define for powerpc.
8182         * sysdeps/unix/sysv/linux/powerpc/syscall.S: Take register alignment
8183         into account.
8184         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h
8185         (INTERNAL_SYSCALL): Make use of ERR parameter.
8186         (INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
8187         INTERNAL_SYSCALL_ERROR_P): Adjust accordingly.
8188         (INLINE_SYSCALL): Make use of INTERNAL_SYSCALL.
8189         * sysdeps/unix/sysv/linux/powerpc/powerpc32/vfork.S: New file.
8190
8191 2002-01-09  Richard Henderson  <rth@redhat.com>
8192
8193         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Compute
8194         DTPREL64 and TPREL64 without loadbase applied.
8195
8196 2002-01-09  Richard Henderson  <rth@redhat.com>
8197
8198         * sysdeps/unix/alpha/sysdep.S: Use correct definition of errno
8199         for NOT_IN_libc.
8200
8201         * sysdeps/unix/sysv/linux/alpha/sysdep.h: Move inline syscall bits...
8202         * sysdeps/unix/alpha/sysdep.h: ... here.
8203         (PSEUDO_LOADGP): Remove.
8204         (PSEUDO_PROLOGUE): Load GP in non-pic case.
8205         (SYSCALL_ERROR_LABEL): New.
8206         (PSEUDO): Use it in error branch.
8207         (PSEUDO_END): Add $syscall_error label.
8208
8209 2003-01-12  Andreas Jaeger  <aj@suse.de>
8210
8211         * math/bits/mathcalls.h: Round is a const function.
8212
8213 2003-01-11  Jim Meyering  <jim@meyering.net>
8214
8215         * io/ftw.c [HAVE_CONFIG_H]: Include <config.h>.
8216         [HAVE_SYS_PARAM_H || _LIBC]: Guard inclusion of <sys/param.h>.
8217         Include <sys/stat.h>, not <include/sys/stat.h>, if !_LIBC.
8218         [!_LIBC] (__chdir, __closedir, __fchdir, __getcwd, __opendir): Define.
8219         [!_LIBC] (__readdir64, __tdestroy, __tfind, __tsearch): Define.
8220         [!_LIBC] (internal_function, dirent64, MAX): Define.
8221         (__set_errno): Define if not already defined.
8222         (open_dir_stream): When FTW_CHDIR is enabled, invoke opendir on
8223         the basename, not the entire file name.
8224         (process_entry): When FTW_CHDIR is enabled, invoke XSTAT or LXSTAT on
8225         the basename, not the entire file name.
8226
8227 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
8228
8229         * string/tester.c (test_strcpy): Disable last added strcpy until
8230         it is fixed.
8231
8232 2003-01-11  Philip Blundell  <philb@gnu.org>
8233
8234         * sysdeps/unix/sysv/linux/arm/socket.S: Add cancellation support.
8235
8236 2003-01-11  Andreas Schwab  <schwab@suse.de>
8237
8238         * Makerules: Add vpath for %.dynsym and %.so so that the
8239         implicit rule chaining for check-abi works.
8240
8241 2003-01-11  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
8242
8243         * sysdeps/unix/sysv/linux/sh/sysdep.h (SYSCALL_ERROR_HANDLER):
8244         Add non-PIC case.
8245
8246 2003-01-11  Jakub Jelinek  <jakub@redhat.com>
8247
8248         * elf/tls-macros.h [__ia64__] (__TLS_CALL_CLOBBERS): Define.
8249         [__ia64__] (TLS_LE, TLS_IE): Fix typos.  Add ;; at start of asm if
8250         gp is used early.
8251         [__ia64__] (TLS_LD, TLS_GD): Likewise.  Use __TLS_CALL_CLOBBERS.
8252         * elf/Makefile ($(objpfx)tst-tlsmod5.so, $(objpfx)tst-tlsmod6.so):
8253         Ensure libc.so in DT_NEEDED.
8254         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Move
8255         CHECK_STATIC_TLS before l_tls_offset use.
8256         * sysdeps/i386/dl-machine.h (elf_machine_rel, elf_machine_rela):
8257         Likewise.
8258         * sysdeps/sh/dl-machine.h (elf_machine_rela): Likewise.
8259         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage) [TLS_DTV_AT_TP]:
8260         Allocate TLS_PRE_TCB_SIZE bytes below result.
8261         (_dl_deallocate_tls) [TLS_DTV_AT_TP]: Adjust before freeing.
8262         * sysdeps/generic/libc-tls.c (__libc_setup_tls): If
8263         TLS_INIT_TP_EXPENSIVE is not defined, allocate even if no PT_TLS
8264         segment has been found.  If TLS_DTV_AT_TP, allocate TLS_PRE_TCB_SIZE
8265         bytes below result and add tcb_offset to memsz.
8266         * sysdeps/ia64/dl-tls.h (__tls_get_addr): New prototype.
8267         * sysdeps/ia64/dl-machine.h: Include tls.h.
8268         (elf_machine_type_class): Return ELF_RTYPE_CLASS_PLT for TLS relocs
8269         too.
8270         (elf_machine_rela): Assume if sym_map != NULL sym is non-NULL too.
8271         Handle R_IA64_DTPMOD*, R_IA64_DTPREL* and R_IA64_TPREL* relocations.
8272         * sysdeps/ia64/libc-tls.c: New file.
8273
8274 2003-01-10  Steven Munroe  <sjmunroe@us.ibm.com>
8275
8276         * sysdeps/powerpc/powerpc64/sysdep.h (PSEUDO_RET): Add branch hit.
8277         * sysdeps/unix/sysv/linux/powerpc/bits/stat.h (STAT_VER_LINUX):
8278         Fix type.  Move definition out of #if.
8279         * sysdeps/unix/sysv/linux/powerpc/powerpc64/ftruncate64.c: New file.
8280         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pread.c: New file.
8281         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pread64.c: New file.
8282         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pwrite.c: New file.
8283         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pwrite64.c: New file.
8284         * sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S: Add cancellation
8285         support.
8286         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Remove
8287         ftruncate64, pread64, pwrite64, truncate64 entries.
8288         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h
8289         (INLINE_SYSCALL): New version that supports function call like
8290         syscalls.  Add __builtin_expect.
8291         (LOADARGS_n): Add argument size safety checks.
8292         (INTERNAL_SYSCALL): New Macro.
8293         * sysdeps/unix/sysv/linux/powerpc/powerpc64/truncate64.c: New file.
8294         * sysdeps/unix/sysv/linux/powerpc/sys/procfs.h [__PPC_ELF_H]: Avoid
8295         redefinition of elf_fpreg_t and elf_fpregset_t.
8296
8297 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
8298
8299         * elf/dl-close.c (_dl_close): Add several asserts.  Correct and
8300         simplify test for unloading.  If loader of a DSO is unloaded do not
8301         use its scope anymore.  Fall back to own scope and adjust opencounts.
8302         Fix several comments.
8303         * elf/dl-deps.c (_dl_map_object_deps): Always allocate memory for
8304         the l_searchlist, not only for l_initfini.
8305
8306         * elf/dl-lookup.c (add_dependencies): Avoid creating relocation
8307         dependencies if objects cannot be removed.  Remove object with the
8308         definition as not unloadable if necessary.
8309
8310         * elf/reldep6.c: Create relocation dependency before closing the first
8311         module.
8312
8313 2003-01-10  Guido Günther  <agx@sigxcpu.org>
8314
8315         * sysdeps/unix/mips/fork.S: Add PSEUDO_END.
8316         * sysdeps/unix/mips/brk.S: Likewise.
8317         * sysdeps/unix/mips/pipe.S: Likewise.
8318
8319 2003-01-10  Andreas Schwab  <schwab@suse.de>
8320
8321         * sysdeps/unix/sysv/linux/m68k/getsysstats.c: New file.
8322
8323         * sysdeps/unix/sysv/linux/m68k/vfork.S: Optimize for kernels which
8324         are known to have the vfork syscall.
8325
8326         * sysdeps/m68k/sysdep.h (JUMPTARGET): Undefine before defining it.
8327
8328         * sysdeps/unix/sysv/linux/kernel-features.h
8329         (__ASSUME_MMAP2_SYSCALL, __ASSUME_TRUNCATE64_SYSCALL)
8330         (__ASSUME_STAT64_SYSCALL, __ASSUME_FCNTL64)
8331         (__ASSUME_VFORK_SYSCALL): Define for m68k kernels >= 2.4.12.
8332
8333 2003-01-09  Jakub Jelinek  <jakub@redhat.com>
8334
8335         * elf/Makefile: Add rules to build and run reldep9 test.
8336         * elf/reldep9.c: New file.
8337         * elf/reldep9mod1.c: New file.
8338         * elf/reldep9mod2.c: New file.
8339         * elf/reldep9mod3.c: New file.
8340
8341 2003-01-09  Jakub Jelinek  <jakub@redhat.com>
8342
8343         * elf/Makefile: Add rules to build and run nodelete2 test.
8344         * elf/nodelete2.c: New file.
8345         * elf/nodel2mod1.c: New file.
8346         * elf/nodel2mod2.c: New file.
8347         * elf/nodel2mod3.c: New file.
8348
8349 2003-01-09  Jakub Jelinek  <jakub@redhat.com>
8350
8351         * posix/test-vfork.c (noop): Add __attribute_noinline__.
8352         * sysdeps/generic/sysdep.h (JUMPTARGET): Define if not defined.
8353         * sysdeps/i386/sysdep.h (JUMPTARGET): Undefine JUMPTARGET before
8354         defining it.
8355         * sysdeps/powerpc/powerpc32/sysdep.h (JUMPTARGET): Likewise.
8356         * sysdeps/powerpc/powerpc64/sysdep.h (JUMPTARGET): Likewise.
8357         * sysdeps/s390/s390-32/sysdep.h (JUMPTARGET): Likewise.
8358         * sysdeps/s390/s390-64/sysdep.h (JUMPTARGET): Likewise.
8359         * sysdeps/x86_64/sysdep.h (JUMPTARGET): Likewise.
8360
8361 2003-01-09  Andreas Schwab  <schwab@suse.de>
8362
8363         * sysdeps/m68k/fpu/libm-test-ulps: Regenerated.
8364
8365 2003-01-08  Ulrich Drepper  <drepper@redhat.com>
8366
8367         * sysdeps/unix/sysv/linux/arm/sysdep.h (INTERNAL_SYSCALL,
8368         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Add err
8369         argument.
8370         (INTERNAL_SYSCALL_DECL): Define.
8371
8372 2003-01-06  Jakub Jelinek  <jakub@redhat.com>
8373
8374         * sysdeps/unix/sysv/linux/ia64/sysdep.h (INTERNAL_SYSCALL,
8375         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Add err
8376         argument.
8377         (INTERNAL_SYSCALL_DECL): Define.
8378         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h: Likewise.
8379         * sysdeps/unix/sysv/linux/sparc/sysdep.h: Likewise.
8380         * sysdeps/unix/sysv/linux/i386/sysdep.h: Likewise.
8381         (INLINE_SYSCALL): Adjust.
8382         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Likewise.
8383         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise.
8384         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Likewise.
8385         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
8386         * elf/dl-misc.c (_dl_debug_vdprintf): Add INTERNAL_SYSCALL_DECL,
8387         add err argument to INTERNAL_SYSCALL* macros.
8388         * sysdeps/unix/sysv/linux/i386/brk.c (__brk): Likewise.
8389         * sysdeps/unix/sysv/linux/i386/system.c (cancel_handler): Likewise.
8390         * sysdeps/unix/sysv/linux/m68k/brk.c (__brk): Likewise.
8391         * sysdeps/unix/sysv/linux/m68k/getpagesize.c  (__getpagesize):
8392         Likewise.
8393         * sysdeps/unix/sysv/linux/sigwait.c (do_sigwait): Likewise.
8394         * sysdeps/unix/sysv/linux/i386/sigaction.c (__libc_sigaction): Use
8395         INLINE_SYSCALL instead of INTERNAL_SYSCALL and setting errno.
8396
8397 2003-01-07  Ulrich Drepper  <drepper@redhat.com>
8398
8399         Unify symbols in user namespace exported by libc.so and libc.a.
8400         * argp/argp-fmtstream.c: Don't define argp_make_fmtstream,
8401         argp_fmtstream_free, and argp_fmtstream_printf.
8402         * argp/argp-fs-xinl.c: Don't define argp_fmtstream_putc,
8403         argp_fmtstream_puts, argp_fmtstream_write, argp_fmtstream_set_lmargin,
8404         argp_fmtstream_set_rmargin, argp_fmtstream_set_wmargin, and
8405         argp_fmtstream_point.
8406         * gmon/gmon.c: Don't define write_profiling.
8407         * libio/genops.c: Don't define _cleanup.
8408
8409         * intl/explodename.c (_nl_find_language.c): Mark as static.
8410         * intl/loadinfo.h: Remove _nl_find_language prototype.
8411
8412         * libio/fileops.c (_IO_file_seekoff_maybe_mmap): Mark as static.
8413         * libio/libioP.h: Remove declaration.
8414
8415         * libio/iopopen.c (_IO_proc_jumps): Mark as static.
8416         * libio/libioP.h: Remove declaration.
8417
8418         * sysdeps/generic/unwind-dw2.c: Mark __frame_state_for with STATIC.
8419         * sysdeps/generic/framestate.c: Define STATIC before including
8420         unwind-dw2.c.
8421
8422         * time/Versions [GLIBC_2.3.2] (libc): Export strptime_l.
8423
8424 2003-01-06  Philip Blundell  <philb@gnu.org>
8425
8426         * sysdeps/unix/arm/sysdep.S (syscall_error): Optimise a little.
8427         [__LIBC_REENTRANT]: Unify PIC and non-PIC cases.
8428
8429         * sysdeps/unix/sysv/linux/arm/sysdep.h (PSEUDO): Remove .type
8430         directive.
8431         (PSEUDO_RET): Use SYSCALL_ERROR in place of __syscall_error.
8432         (SYSCALL_ERROR): New.
8433         (SYSCALL_ERROR_HANDLER) [NOT_IN_libc]: Provide local copy of error
8434         handling code.
8435         (INTERNAL_SYSCALL): Define.
8436         (INLINE_SYSCALL): Use it.
8437         (INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Define.
8438         * sysdeps/unix/sysv/linux/arm/socket.S (__socket): Use
8439         SYSCALL_ERROR in place of __syscall_error.
8440
8441 2003-01-07  Jakub Jelinek  <jakub@redhat.com>
8442
8443         * sysdeps/ia64/bits/byteswap.h [__GNUC__ >= 2] (__bswap_16,
8444         __bswap_32, __bswap_64): Put x into temporary variable
8445         to avoid warnings.
8446         [!__GNUC__] (__bswap_16, __bswap_32, __bswap_64): Change into static
8447         (inline) functions.
8448         * sysdeps/s390/bits/byteswap.h [__GNUC__ >= 2] (__bswap_16,
8449         __bswap_32, __bswap_64): Put x into temporary variable
8450         to avoid warnings.
8451         [!__GNUC__] (__bswap_16, __bswap_32, __bswap_64): Change into static
8452         (inline) functions.
8453         * sysdeps/i386/bits/byteswap.h [!__GNUC__] (__bswap_16, __bswap_32):
8454         Likewise.
8455
8456 2003-01-07  Jakub Jelinek  <jakub@redhat.com>
8457
8458         * sysdeps/unix/sysv/linux/alpha/adjtime.c (ntp_adjtime): New weak
8459         alias.
8460
8461 2003-01-07  Jakub Jelinek  <jakub@redhat.com>
8462
8463         * elf/rtld.c (_rtld_global): Remove _dl_dynamic_weak initializer.
8464         * elf/dl-support.c (_dl_dynamic_weak): Initialize to 0.
8465
8466 2003-01-07  Ulrich Drepper  <drepper@redhat.com>
8467
8468         * math/libm-test.inc (significand_test): New function.
8469         (main): Call it.
8470
8471 2003-01-06  Roland McGrath  <roland@redhat.com>
8472
8473         * sysdeps/i386/i486/bits/string.h (memset): Add parens around macro
8474         arguments.
8475         (memcpy, memrchr, strcpy, __stpcpy, strncpy, strcat): Likewise.
8476         (strcmp, strncat, strncmp, strchr, __strchrnul, strchrnul): Likewise.
8477         (index, strrchr, rindex, strcspn, strspn, strpbrk, strstr): Likewise.
8478
8479         * string/tester.c (test_strcpy): Add test with `void *' arguments.
8480
8481 2003-01-06  Ulrich Drepper  <drepper@redhat.com>
8482
8483         * sysdeps/i386/fpu/s_significandl.c (__significandl): Really
8484         return significand and not the exponent.
8485         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
8486
8487         * elf/dl-misc.c (_dl_debug_vdprintf): Help PPC port by explicitly
8488         taking address of iov in INTERNAL_SYSCALL call.  Patch by Franz Sirl.
8489
8490         * malloc/malloc.c: Mark all _int_* functions as static.
8491
8492 2003-01-06  Jakub Jelinek  <jakub@redhat.com>
8493
8494         * sysdeps/unix/alpha/sysdep.h (PSEUDO): Use PSEUDO_PREPARE_ARGS.
8495         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S: Add cancellation
8496         handling.
8497         * sysdeps/unix/sysv/linux/alpha/select.S: Likewise.
8498
8499 2003-01-06  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
8500
8501         * sysdeps/powerpc/powerpc32/sysdep.h (PSEUDO_RET): Add branch hint.
8502         * sysdeps/unix/sysv/linux/powerpc/powerpc32/socket.S: Add cancellation
8503         support.
8504         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Remove
8505         ftruncate64, truncate64, pread64 and pwrite64 entries.
8506         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h
8507         (INLINE_SYSCALL): Add __builtin_expect.
8508         (LOADARGS_n): Add argument size safety checks.
8509         * sysdeps/unix/sysv/linux/powerpc/powerpc32/ftruncate64.c: New file.
8510         * sysdeps/unix/sysv/linux/powerpc/powerpc32/truncate64.c: New file.
8511         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pread.c: New file.
8512         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pread64.c: New file.
8513         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pwrite.c: New file.
8514         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pwrite64.c: New file.
8515
8516 2003-01-06  Jakub Jelinek  <jakub@redhat.com>
8517
8518         * sysdeps/generic/sysdep-cancel.h (LIBC_CANCEL_HANDLED): Define.
8519         * sysdeps/generic/creat.c: Include sysdep-cancel.h.
8520         (LIBC_CANCEL_HANDLED): Add.
8521
8522         * sysdeps/unix/sysv/linux/alpha/sysdep.h
8523         (inline_syscall_r0_constraint): Rename to...
8524         (inline_syscall_r0_out_constraint): ... this.  Add =.
8525         (inline_syscall[0-6]): Use inline_syscall_r0_out_constraint.
8526
8527 2003-01-06  Andreas Schwab  <schwab@suse.de>
8528
8529         * sysdeps/m68k/dl-machine.h (elf_machine_runtime_setup): Make
8530         sure this is always inlined.
8531         (elf_machine_rela): Likewise.
8532
8533         * sysdeps/m68k/Makefile (sysdep-CFLAGS): Increase inline limit.
8534
8535 2003-01-04  Roland McGrath  <roland@redhat.com>
8536
8537         * Makeconfig (+mkdep): Add -MP flag.
8538         Suggested by Art Haas <ahaas@airmail.net>.
8539
8540 2003-01-05  Andreas Schwab  <schwab@suse.de>
8541
8542         * sysdeps/m68k/Makefile (CFLAGS-.oS): Append -fPIC.
8543
8544 2003-01-05  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
8545
8546         * sysdeps/unix/sysv/linux/sh/clone.S (__clone): Use
8547         SYSCALL_ERROR_HANDLER.
8548         * sysdeps/unix/sysv/linux/sh/pipe.S (__libc_pipe): Likewise.
8549         * sysdeps/unix/sysv/linux/sh/socket.S (__socket): Likewise.
8550         Add support for cancellation handling.
8551         * sysdeps/unix/sysv/linux/sh/syscall.S (__syscall): Use
8552         SYSCALL_ERROR_HANDLER.
8553         * sysdeps/unix/sysv/linux/sh/vfork.S (__vfork): Likewise.
8554         * sysdeps/unix/sysv/linux/sh/sysdep.h (PSEUDO): Likewise.
8555         Add support for cancellation handling.
8556         (SYSCALL_ERROR_HANDLER): Define PIC variants.
8557
8558 2003-01-04  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
8559
8560         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Mark
8561         __syscall_pread64 and __syscall_pwrite64 cancelable.
8562         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h
8563         (INTERNAL_SYSCALL): New macro.
8564         (LOADARGS_0, LOADARGS_1): Fix.
8565
8566 2003-01-05  Ulrich Drepper  <drepper@redhat.com>
8567
8568         * Makerules (build-shlip-helper): Unless told otherwise, add
8569         -Wl,-z,defs to linker command line.
8570         * rt/Makefile (librt.so): Link with ld.so.
8571         * dlfcn/Makefile (libdl.so): Likewise.
8572
8573 2003-01-05  Jakub Jelinek  <jakub@redhat.com>
8574
8575         * sysdeps/unix/sysv/linux/s390/s390-32/socket.S: Add support for
8576         cancellation handling.
8577         * sysdeps/unix/sysv/linux/s390/s390-64/socket.S: Likewise.
8578         * sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c: Likewise.
8579
8580 2003-01-04  Ulrich Drepper  <drepper@redhat.com>
8581
8582         * sysdeps/unix/sysv/linux/i386/system.c (cancel_handler): Correct
8583         order of parameters passed to kill.
8584
8585 2003-01-04  Andreas Schwab  <schwab@suse.de>
8586
8587         * sysdeps/unix/sysv/linux/m68k/bits/stat.h: Add nanosecond fields.
8588
8589 2002-01-03  Paul Eggert  <eggert@twinsun.com>
8590
8591         * malloc/obstack.h (__INT_TO_PTR) [__STDC__]: Cast result to
8592         (void *) to avoid diagnostic with native c89 on SGI IRIX 6.5
8593         when compiling Bison 1.875's `bitset bset = obstack_alloc
8594         (bobstack, bytes);'.  Problem reported by Nelson H. F. Beebe.
8595
8596 2003-01-04  Ulrich Drepper  <drepper@redhat.com>
8597
8598         * sysdeps/posix/system.c (do_system): Minor optimizations.  Remove
8599         unnecessary code.
8600         Correct reference counter in case SIGQUIT handler installation failed.
8601
8602 2003-01-03  Ulrich Drepper  <drepper@redhat.com>
8603
8604         * include/libc-symbols.h [HAVE_WEAK_SYMBOLS] (_weak_extern):
8605         Define using _Pragma(weak ...).
8606
8607 2003-01-03  Andreas Jaeger  <aj@suse.de>, Jakub Jelinek <jakub@redhat.com>
8608
8609         * resolv/res_libc.c: Provide declaration for __res_init_weak and
8610         reorder declarations.
8611
8612 2003-01-03  Art Haas  <ahaas@airmail.net>
8613
8614         * localedata/tests-mbwc/dat_iswalnum.c: Convert GCC extension
8615         initializer syntax to C99.
8616         * localedata/tests-mbwc/dat_iswalpha.c: Likewise.
8617         * localedata/tests-mbwc/dat_iswcntrl.c: Likewise.
8618         * localedata/tests-mbwc/dat_iswctype.c: Likewise.
8619         * localedata/tests-mbwc/dat_iswdigit.c: Likewise.
8620         * localedata/tests-mbwc/dat_iswgraph.c: Likewise.
8621         * localedata/tests-mbwc/dat_iswlower.c: Likewise.
8622         * localedata/tests-mbwc/dat_iswprint.c: Likewise.
8623         * localedata/tests-mbwc/dat_iswpunct.c: Likewise.
8624         * localedata/tests-mbwc/dat_iswspace.c: Likewise.
8625         * localedata/tests-mbwc/dat_iswupper.c: Likewise.
8626         * localedata/tests-mbwc/dat_iswxdigit.c: Likewise.
8627         * localedata/tests-mbwc/dat_mblen.c: Likewise.
8628         * localedata/tests-mbwc/dat_mbrlen.c: Likewise.
8629         * localedata/tests-mbwc/dat_mbrtowc.c: Likewise.
8630         * localedata/tests-mbwc/dat_mbsrtowcs.c: Likewise.
8631         * localedata/tests-mbwc/dat_mbstowcs.c: Likewise.
8632         * localedata/tests-mbwc/dat_mbtowc.c: Likewise.
8633         * localedata/tests-mbwc/dat_strcoll.c: Likewise.
8634         * localedata/tests-mbwc/dat_strfmon.c: Likewise.
8635         * localedata/tests-mbwc/dat_strxfrm.c: Likewise.
8636         * localedata/tests-mbwc/dat_swscanf.c: Likewise.
8637         * localedata/tests-mbwc/dat_towctrans.c: Likewise.
8638         * localedata/tests-mbwc/dat_towlower.c: Likewise.
8639         * localedata/tests-mbwc/dat_towupper.c: Likewise.
8640         * localedata/tests-mbwc/dat_wcrtomb.c: Likewise.
8641         * localedata/tests-mbwc/dat_wcscat.c: Likewise.
8642         * localedata/tests-mbwc/dat_wcschr.c: Likewise.
8643         * localedata/tests-mbwc/dat_wcscmp.c: Likewise.
8644         * localedata/tests-mbwc/dat_wcscoll.c: Likewise.
8645         * localedata/tests-mbwc/dat_wcscpy.c: Likewise.
8646         * localedata/tests-mbwc/dat_wcscspn.c: Likewise.
8647         * localedata/tests-mbwc/dat_wcslen.c: Likewise.
8648         * localedata/tests-mbwc/dat_wcsncat.c: Likewise.
8649         * localedata/tests-mbwc/dat_wcsncmp.c: Likewise.
8650         * localedata/tests-mbwc/dat_wcsncpy.c: Likewise.
8651         * localedata/tests-mbwc/dat_wcspbrk.c: Likewise.
8652         * localedata/tests-mbwc/dat_wcsrtombs.c: Likewise.
8653         * localedata/tests-mbwc/dat_wcsspn.c: Likewise.
8654         * localedata/tests-mbwc/dat_wcsstr.c: Likewise.
8655         * localedata/tests-mbwc/dat_wcstod.c: Likewise.
8656         * localedata/tests-mbwc/dat_wcstok.c: Likewise.
8657         * localedata/tests-mbwc/dat_wcstombs.c: Likewise.
8658         * localedata/tests-mbwc/dat_wcswidth.c: Likewise.
8659         * localedata/tests-mbwc/dat_wcsxfrm.c: Likewise.
8660         * localedata/tests-mbwc/dat_wctob.c: Likewise.
8661         * localedata/tests-mbwc/dat_wctomb.c: Likewise.
8662         * localedata/tests-mbwc/dat_wctrans.c: Likewise.
8663         * localedata/tests-mbwc/dat_wctype.c: Likewise.
8664         * localedata/tests-mbwc/dat_wcwidth.c: Likewise.
8665
8666 2003-01-03  Richard Henderson  <rth@redhat.com>
8667
8668         * sysdeps/unix/sysv/linux/alpha/sysdep.h (inline_syscall_r0_asm): New.
8669         (inline_syscall_r0_constraint): New.
8670         (inline_syscall[0-6]): Use them.
8671
8672 2003-01-03  Jakub Jelinek  <jakub@redhat.com>
8673
8674         * sysdeps/generic/ldsodefs.h (_dl_allocate_tls, _dl_deallocate_tls):
8675         Add rtld_hidden_proto.
8676         * sysdeps/generic/dl-tls.c (_dl_deallocate_tls): Add rtld_hidden_def.
8677         (_dl_allocate_tls): Likewise.  Remove INTDEF.
8678
8679 2002-07-05  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
8680
8681         * sysdeps/sh/memcpy.S: Optimize.  Based on a patch by Toshiyasu
8682         Morita <toshiyasu.morita@hsa.hitachi.com>.
8683         * sysdeps/sh/memcpy.S: Likewise.
8684
8685 2003-01-02  Ulrich Drepper  <drepper@redhat.com>
8686
8687         * sysdeps/pthread/aio_suspend.c (aio_suspend): Don't quite remove
8688         any, but unify the test.
8689
8690 2003-01-02  Jakub Jelinek  <jakub@redhat.com>
8691
8692         * sysdeps/unix/sysv/linux/arm/sigaction.c (__sigaction,
8693         sigaction): Protect weak_alias and libc_hidden_weak with
8694         #ifndef LIBC_SIGACTION.
8695         * sysdeps/unix/sysv/linux/ia64/sigaction.c (__sigaction,
8696         sigaction): Likewise.
8697         * sysdeps/unix/sysv/linux/mips/sigaction.c (__sigaction,
8698         sigaction): Likewise.
8699         * sysdeps/unix/sysv/linux/s390/s390-64/sigaction.c (__sigaction,
8700         sigaction): Likewise.
8701         * sysdeps/unix/sysv/linux/sparc/sparc32/sigaction.c (__sigaction,
8702         sigaction): Likewise.
8703         * sysdeps/unix/sysv/linux/sparc/sparc64/sigaction.c (__sigaction,
8704         sigaction): Likewise.
8705         * sysdeps/unix/sysv/linux/x86_64/sigaction.c (__sigaction,
8706         sigaction): Likewise.
8707         * sysdeps/unix/sysv/linux/i386/sigaction.c (__sigaction,
8708         sigaction): Likewise.  Remove SIGCANCEL handling here.
8709         * sysdeps/unix/sysv/linux/sigaction.c (__sigaction, sigaction):
8710         Likewise.
8711
8712 2003-01-02  Art Haas  <ahaas@airmail.net>
8713
8714         * login/tst-utmp.c: Convert GCC extension initializer syntax to C99.
8715
8716 2003-01-02  Ulrich Drepper  <drepper@redhat.com>
8717
8718         * posix/getconf.c: Update copyright year.
8719         * nss/getent.c: Likewise.
8720         * nscd/nscd_nischeck.c: Likewise.
8721         * iconv/iconvconfig.c: Likewise.
8722         * iconv/iconv_prog.c: Likewise.
8723         * elf/ldconfig.c: Likewise.
8724         * catgets/gencat.c: Likewise.
8725         * csu/version.c: Likewise.
8726         * elf/ldd.bash.in: Likewise.
8727         * elf/sprof.c (print_version): Likewise.
8728         * locale/programs/locale.c: Likewise.
8729         * locale/programs/localedef.c: Likewise.
8730         * nscd/nscd.c (print_version): Likewise.
8731         * debug/xtrace.sh: Likewise.
8732         * malloc/memusage.sh: Likewise.
8733         * malloc/mtrace.pl: Likewise.
8734
8735 2003-01-01  Jakub Jelinek  <jakub@redhat.com>
8736
8737         * io/sys/stat.h: Include time.h with __need_timespec even if
8738         __USE_MISC is defined but __USE_XOPEN is not.
8739
8740 2003-01-01  Andreas Jaeger  <aj@suse.de>
8741
8742         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Use union
8743         type to avoid strict aliasing problem.
8744         (_nss_dns_gethostbyname2_r): Likewise.
8745         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyaddr_r): Likewise.
8746         (_nss_dns_getnetbyname_r): Likewise.
8747         * resolv/gethnamaddr.c (_gethtent): Likewise.
8748         (gethostbyname2): Likewise.
8749
8750 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
8751
8752         * string/string-inlines.c: Define __memcpy_g and __strchr_g macros
8753         to avoid using the exported symbols.  Define aliases with the
8754         original names separately.
8755
8756         * include/time.h: Add libc_hidden_proto for __strftime_l.
8757         * include/wchar.h: Add libc_hidden_proto for __wcsftime_l.
8758         * time/strftime.c: Always use libc_hidden_def if _LIBC.
8759
8760         * libio/libioP.h: Add libc_hidden_proto for _IO_file_open.
8761         * libio/fileops.c: Add libc_hidden_def for _IO_file_open.
8762
8763         * malloc/mtrace.c: Add libc_hidden_proto and libc_hidden_def for
8764         tr_break.
8765
8766         * csu/Makefile (routines): Add dso_handle.
8767         * csu/dso_handle.c: New file.
8768
8769 2002-12-31  Roland McGrath  <roland@redhat.com>
8770
8771         * Makerules (compile.S, COMPILE.S): Remove -DASSEMBLER here.
8772         Use $(S-CPPFLAGS) in place of $(asm-CPPFLAGS).
8773         (S-CPPFLAGS): Add -DASSEMBLER here instead.
8774         (generate-md5, +make-deps): Fix magic to get $(S-CPPFLAGS).
8775
8776 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
8777
8778         * malloc/thread-m.h [SHARED] (thread_atfork): Assume __dso_handle
8779         is available.
8780
8781 2002-12-31  Andreas Jaeger  <aj@suse.de>
8782
8783         * sysdeps/unix/sysv/linux/powerpc/powerpc32/kernel_stat.h: Sync
8784         with Linux kernel.
8785         * sysdeps/unix/sysv/linux/sparc/sparc32/kernel_stat.h: Likewise.
8786         * sysdeps/unix/sysv/linux/s390/s390-64/kernel_stat.h: Likewise.
8787         * sysdeps/unix/sysv/linux/hppa/kernel_stat.h: Likewise.
8788
8789         * sysdeps/unix/sysv/linux/kernel_stat.h
8790         (_HAVE_STAT_NSEC,_HAVE_STAT_NSEC64): New.
8791
8792         * sysdeps/unix/sysv/linux/xstatconv.c (xstat_conv): Re-add
8793         __unused[1-3] since they're needed by some platforms.  Handle
8794         _HAVE_STAT_NSEC and _HAVE_STAT_NSEC64.
8795
8796         * sysdeps/unix/sysv/linux/x86_64/bits/stat.h: Add nsec resolution
8797         for structs stat and stat64.
8798         * sysdeps/unix/sysv/linux/ia64/bits/stat.h: Likewise.
8799         * sysdeps/unix/sysv/linux/powerpc/bits/stat.h: Likewise.
8800         * sysdeps/unix/sysv/linux/sparc/bits/stat.h: Likewise.
8801         * sysdeps/unix/sysv/linux/s390/bits/stat.h: Likewise.
8802
8803         * io/sys/stat.h [__USE_MISC]: Define __need_timespec for struct stat.
8804
8805         * sysdeps/unix/sysv/linux/xstatconv.c (xstat_conv): Adjust for
8806         nsec resolution changes.
8807         (xstat64_conv): Likewise.
8808         (xstat32_conv): Likewise.
8809
8810         * sysdeps/unix/sysv/linux/kernel_stat.h: Add nsec resolution for
8811         struct kernel_stat.
8812
8813         * sysdeps/unix/sysv/linux/bits/stat.h: Add nsec resolution for
8814         structs stat and stat64.
8815
8816         * time/time.h (__timespec_defined): Define for __USE_MISC.
8817
8818 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
8819
8820         * include/signal.h: Add libc_hidden_proto for __libc_current_sigrtmin
8821         and __libc_current_sigrtmax.
8822
8823 2002-12-31  Jakub Jelinek  <jakub@redhat.com>
8824
8825         * include/errno.h (__errno_location): Add prototype.
8826         Use libc_hidden_proto unconditionally.
8827         * include/netdb.h (__h_errno_location): Use libc_hidden_proto
8828         unconditionally.
8829         * include/resolv.h (__res_state): Likewise.
8830
8831         * hurd/errno-loc.c (__errno_location): Add libc_hidden_def.
8832         * include/sys/socket.h (accept): Add libc_hidden_proto.
8833         * include/errno.h (__errno_location): Likewise.
8834         * include/netdb.h (__h_errno_location): Likewise.
8835         * include/resolv.h (__res_state): Likewise.
8836         * include/unistd.h (__lseek): Likewise.
8837         * sysdeps/generic/errno-loc.c (__errno_location): Add libc_hidden_def.
8838         * sysdeps/generic/herrno-loc.c (__h_errno_location): Likewise.
8839         * sysdeps/generic/res-state.c (__res_state): Likewise.
8840         * sysdeps/generic/accept.c (accept): Likewise.
8841         * sysdeps/generic/lseek.c (__lseek): Likewise.
8842         * sysdeps/generic/allocrtsig.c (__libc_current_sigrtmin,
8843         __libc_current_sigrtmax): Likewise.
8844         * sysdeps/mach/hurd/accept.c (accept): Likewise.
8845         * sysdeps/mach/hurd/lseek.c (__lseek): Likewise.
8846         * sysdeps/unix/sysv/aix/accept.c (accept): Likewise.
8847         * sysdeps/unix/sysv/aix/lseek.c (__lseek): Likewise.
8848         * sysdeps/unix/sysv/linux/accept.S (accept): Likewise.
8849         * sysdeps/unix/inet/syscalls.list (__GI_accept): New alias to accept.
8850         * sysdeps/unix/sysv/linux/alpha/syscalls.list (__GI_accept): Likewise.
8851         * sysdeps/unix/sysv/linux/hppa/syscalls.list (__GI_accept): Likewise.
8852         * sysdeps/unix/sysv/linux/ia64/syscalls.list (__GI___lseek): New
8853         alias to llseek.
8854         (__GI_accept): New alias to accept.
8855         * sysdeps/unix/sysv/linux/mips/syscalls.list (__GI_accept): Likewise.
8856         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (__GI___lseek):
8857         New alias to llseek.
8858         (__GI_accept): New alias to accept.
8859         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list (__GI_accept):
8860         Likewise.
8861         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (__GI_accept):
8862         Likewise.
8863         * sysdeps/unix/syscalls.list (__GI___lseek): New alias to lseek.
8864
8865         * sysdeps/alpha/setjmp.S : Use libc_hidden_def(name) instead of
8866         strong_alias (name, __GI_name).
8867         * sysdeps/arm/bsd-_setjmp.S : Likewise.
8868         * sysdeps/hppa/bsd-_setjmp.S : Likewise.
8869         * sysdeps/i386/bsd-_setjmp.S : Likewise.
8870         * sysdeps/mips/mips64/bsd-_setjmp.S : Likewise.
8871         * sysdeps/mips/bsd-_setjmp.S : Likewise.
8872         * sysdeps/powerpc/powerpc32/bsd-_setjmp.S : Likewise.
8873         * sysdeps/powerpc/powerpc64/setjmp.S : Likewise.
8874         * sysdeps/s390/s390-32/elf/setjmp.S : Likewise.
8875         * sysdeps/s390/s390-32/bsd-_setjmp.S : Likewise.
8876         * sysdeps/s390/s390-64/elf/setjmp.S : Likewise.
8877         * sysdeps/s390/s390-64/bsd-_setjmp.S : Likewise.
8878         * sysdeps/sh/bsd-_setjmp.S : Likewise.
8879         * sysdeps/sparc/sparc32/setjmp.S : Likewise.
8880         * sysdeps/unix/arm/fork.S : Likewise.
8881         * sysdeps/unix/bsd/hp/m68k/vfork.S : Likewise.
8882         * sysdeps/unix/bsd/i386/vfork.S : Likewise.
8883         * sysdeps/unix/bsd/osf/alpha/fork.S : Likewise.
8884         * sysdeps/unix/bsd/sun/m68k/vfork.S : Likewise.
8885         * sysdeps/unix/bsd/ultrix4/mips/vfork.S : Likewise.
8886         * sysdeps/unix/bsd/vax/vfork.S : Likewise.
8887         * sysdeps/unix/i386/fork.S : Likewise.
8888         * sysdeps/unix/mips/fork.S : Likewise.
8889         * sysdeps/unix/sparc/fork.S : Likewise.
8890         * sysdeps/unix/sparc/vfork.S : Likewise.
8891         * sysdeps/unix/sysv/linux/arm/vfork.S : Likewise.
8892         * sysdeps/unix/sysv/linux/cris/vfork.S : Likewise.
8893         * sysdeps/unix/sysv/linux/i386/vfork.S : Likewise.
8894         * sysdeps/unix/sysv/linux/ia64/fork.S : Likewise.
8895         * sysdeps/unix/sysv/linux/ia64/setjmp.S : Likewise.
8896         * sysdeps/unix/sysv/linux/ia64/vfork.S : Likewise.
8897         * sysdeps/unix/sysv/linux/m68k/vfork.S : Likewise.
8898         * sysdeps/unix/sysv/linux/sh/vfork.S : Likewise.
8899         * sysdeps/unix/sysv/linux/sparc/sparc64/longjmp.S : Likewise.
8900         * sysdeps/unix/sysv/linux/sparc/sparc64/setjmp.S : Likewise.
8901         * sysdeps/unix/sysv/linux/sparc/fork.S : Likewise.
8902         * sysdeps/unix/sysv/linux/sparc/vfork.S : Likewise.
8903         * sysdeps/unix/sysv/linux/x86_64/vfork.S : Likewise.
8904         * sysdeps/unix/fork.S : Likewise.
8905         * sysdeps/vax/bsd-_setjmp.S : Likewise.
8906         * sysdeps/x86_64/bsd-_setjmp.S : Likewise.
8907
8908         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Guard against multiple
8909         inclusion.
8910
8911 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
8912
8913         * include/unistd.h: Add libc_hidden_proto for __fork and __vfork.
8914         * sysdeps/generic/fork.c: Add libc_hidden_def for __fork.
8915         * sysdeps/mach/hurd/fork.c: Likewise.
8916         * sysdeps/unix/sysv/aix/fork.c: Likewise.
8917         * sysdeps/unix/fork.S: Add __GI___fork alias.
8918         * sysdeps/unix/arm/fork.S: Likewise.
8919         * sysdeps/unix/bsd/osf/alpha/fork.S: Likewise.
8920         * sysdeps/unix/i386/fork.S: Likewise.
8921         * sysdeps/unix/mips/fork.S: Likewise.
8922         * sysdeps/unix/sparc/fork.S: Likewise.
8923         * sysdeps/unix/sysv/linux/ia64/fork.S: Likewise.
8924         * sysdeps/unix/sysv/linux/sparc/fork.S: Likewise.
8925         * sysdeps/unix/sysv/linux/syscalls.list: Likewise.
8926         * sysdeps/generic/vfork.c: Add libc_hidden_def for __vfork.
8927         * sysdeps/unix/bsd/hp/m68k/vfork.S: Add __GI___vfork alias.
8928         * sysdeps/unix/bsd/i386/vfork.S: Likewise.
8929         * sysdeps/unix/bsd/sun/m68k/vfork.S: Likewise.
8930         * sysdeps/unix/bsd/ultrix4/mips/vfork.S: Likewise.
8931         * sysdeps/unix/bsd/vax/vfork.S: Likewise.
8932         * sysdeps/unix/sparc/vfork.S: Likewise.
8933         * sysdeps/unix/sysv/linux/arm/vfork.S: Likewise.
8934         * sysdeps/unix/sysv/linux/cris/vfork.S: Likewise.
8935         * sysdeps/unix/sysv/linux/i386/vfork.S: Likewise.
8936         * sysdeps/unix/sysv/linux/ia64/vfork.S: Likewise.
8937         * sysdeps/unix/sysv/linux/m68k/vfork.S: Likewise.
8938         * sysdeps/unix/sysv/linux/sh/vfork.S: Likewise.
8939         * sysdeps/unix/sysv/linux/sparc/vfork.S: Likewise.
8940         * sysdeps/unix/sysv/linux/x86_64/vfork.S: Likewise.
8941
8942         * include/time.h: Add libc_hidden_proto for __nanosleep.
8943         * sysdeps/generic/nanosleep.c: Add libc_hidden_def for __nanosleep.
8944         * sysdeps/mach/nanosleep.c: Likewise.
8945         * sysdeps/unix/sysv/aix/nanosleep.c: Likewise.
8946         * sysdeps/unix/sysv/linux/syscalls.list: Add __GI___nanosleep alias.
8947
8948         * libio/libioP.h: Add libc_hidden_proto for _IO_list_lock,
8949         _IO_list_unlock, and _IO_list_resetlock.
8950         * libio/genops.c: Add libc_hidden_def for _IO_list_lock,
8951         _IO_list_unlock, and _IO_list_resetlock.
8952
8953         * libio/libioP.h: Add libc_hidden_proto for _IO_iter_begin,
8954         _IO_iter_end, _IO_iter_next, and _IO_iter_file.
8955         * libio/genops.c: Add libc_hidden_def for _IO_iter_begin,
8956         _IO_iter_end, _IO_iter_next, and _IO_iter_file.
8957
8958         * include/setjmp.h: Add libc_hidden_proto for __libc_longjmp.
8959         * sysdeps/generic/longjmp.c: Add libc_hidden_def for __longjmp.
8960         * sysdeps/unix/sysv/linux/sparc/sparc64/longjmp.S: Add
8961         __GI___longjmp alias.
8962
8963         * include/setjmp.h: Add libc_hidden_proto for _setjmp.
8964         * sysdeps/alpha/setjmp.S: Add __GI__setjmp alias.
8965         * sysdeps/arm/bsd-_setjmp.S: Likewise.
8966         * sysdeps/generic/bsd-_setjmp.c: Likewise.
8967         * sysdeps/hppa/bsd-_setjmp.S: Likewise.
8968         * sysdeps/i386/bsd-_setjmp.S: Likewise.
8969         * sysdeps/m68k/bsd-_setjmp.c: Likewise.
8970         * sysdeps/mips/bsd-_setjmp.S: Likewise.
8971         * sysdeps/mips/mips64/bsd-_setjmp.S: Likewise.
8972         * sysdeps/powerpc/powerpc32/bsd-_setjmp.S: Likewise.
8973         * sysdeps/powerpc/powerpc64/setjmp.S: Likewise.
8974         * sysdeps/s390/s390-32/bsd-_setjmp.S: Likewise.
8975         * sysdeps/s390/s390-32/elf/setjmp.S: Likewise.
8976         * sysdeps/s390/s390-64/bsd-_setjmp.S: Likewise.
8977         * sysdeps/s390/s390-64/elf/setjmp.S: Likewise.
8978         * sysdeps/sh/bsd-_setjmp.S: Likewise.
8979         * sysdeps/sparc/sparc32/setjmp.S: Likewise.
8980         * sysdeps/unix/sysv/linux/ia64/setjmp.S: Likewise.
8981         * sysdeps/unix/sysv/linux/sparc/sparc64/setjmp.S: Likewise.
8982         * sysdeps/vax/bsd-_setjmp.S: Likewise.
8983         * sysdeps/x86_64/bsd-_setjmp.S: Likewise.
8984
8985 2002-12-30  Ulrich Drepper  <drepper@redhat.com>
8986
8987         * malloc/thread-m.h (thread_atfork): Define using __register_atfork.
8988
8989 2002-12-30  Roland McGrath  <roland@redhat.com>
8990
8991         * Rules (generated): Target removed.
8992         * mach/Makefile (generated): Define it here instead.
8993
8994         * math/Makefile (generated): Add m_*l and m_*f variants too.
8995
8996 2002-12-30  Ulrich Drepper  <drepper@redhat.com>
8997
8998         * elf/dl-close.c (_dl_close): Handle relocation dependencies among
8999         the to-be-deleted objects right away instead of later separately.
9000         The latter fails because the scope data structures of the DSO
9001         might already be gone.
9002
9003         * elf/Makefile: Add rules to build and run reldep8 test.
9004         * elf/reldep8.c: New file.
9005         * elf/reldep8mod1.c: New file.
9006         * elf/reldep8mod2.c: New file.
9007         * elf/reldep8mod3.c: New file.
9008         Contributed by Jakub Jelinek.
9009
9010 2002-12-24  GOTO Masanori  <gotom@debian.or.jp>
9011
9012         * sysdeps/unix/sysv/linux/getdents.c (__GETDENTS): Fix condition
9013         checking of return value ENOSYS from getdents64.
9014
9015 2002-12-28  Andreas Schwab  <schwab@suse.de>
9016
9017         * sysdeps/unix/Makefile: Include $(common-objpfx)s-proto-cancel.d.
9018         ($(common-objpfx)s-%.d): Generalized from
9019         $(common-objpfx)s-proto.d rule.
9020         (common-generated): Add s-proto-cancel.d.
9021         * sysdeps/unix/make-syscalls.sh: Use s-proto-cancel.d for
9022         cancellable syscalls.
9023         * sysdeps/unix/s-proto-cancel.S: New file.
9024
9025 2002-12-29  Roland McGrath  <roland@redhat.com>
9026
9027         * resolv/res_libc.c: Move _res defn magic after res_init defn
9028         so _res macro is in effect for that code.
9029
9030         * Makerules ($(common-objpfx)%.h $(common-objpfx)%.h.d): Fix sed
9031         pattern for prepending $(..) so it doesn't affect $(foo).
9032
9033         * math/Makefile (generated): Add $(addsuffix .c .S,$(calls:s_%=m_%)).
9034
9035 2002-12-29  Jakub Jelinek  <jakub@redhat.com>
9036
9037         * elf/cache.c (add_to_cache): Don't loop forever with 1ULL << 63 set
9038         in hwcap.
9039
9040 2002-12-28  Ulrich Drepper  <drepper@redhat.com>
9041
9042         * misc/sys/cdefs.h (__attribute_deprecated__): New #define.
9043
9044 2002-12-28  Andreas Jaeger  <aj@suse.de>
9045
9046         * sysdeps/generic/readelflib.c (process_elf_file): Cast value to
9047         avoid warning.
9048         * sysdeps/generic/dl-cache.c (_dl_load_cache_lookup): Likewise.
9049
9050 2002-12-27  Jakub Jelinek  <jakub@redhat.com>
9051
9052         * inet/herrno.c (__h_errno_location): Remove.
9053         * inet/Makefile (routines): Add herrno-loc.
9054         * resolv/res_libc.c (__res_state): Remove.
9055         * resolv/Makefile (routines): Add res-state.
9056         * sysdeps/generic/herrno-loc.c: New file.
9057         * sysdeps/generic/res-state.c: New file.
9058
9059 2002-12-27  Jakub Jelinek  <jakub@redhat.com>
9060
9061         * sysdeps/unix/sysv/linux/i386/sysdep.h (I386_USE_SYSENTER):
9062         Only define if USE_DL_SYSINFO is defined.
9063
9064 2002-12-22  Jakub Jelinek  <jakub@redhat.com>
9065
9066         * sysdeps/unix/sysv/linux/ia64/sysdep.h (INLINE_SYSCALL,
9067         INTERNAL_SYSCALL, INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERROR):
9068         Define. Patch by Richard Henderson and Jes Sorensen.
9069         (PSEUDO): Remove unnecessary ;;.
9070         * elf/rtld.c (dl_main): Initialize TLS even if no PT_TLS segments
9071         are found unless TLS_INIT_TP_EXPENSIVE.  Use NONTLS_INIT_TP.
9072         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Use NONTLS_INIT_TP
9073         if not initializing thread pointer.
9074         [!USE_TLS && NONTLS_INIT_TP] (__pthread_initialize_minimal): New.
9075         * sysdeps/generic/libc-start.c (__pthread_initialize_minimal): Don't
9076         make it weak also if NONTLS_INIT_TP.
9077         * sysdeps/unix/common/pause.c: Handle cancellation.
9078         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h [DONT_LOAD_G1]
9079         (LOADSYSCALL): Remove.
9080         (SYSCALL_ERROR_HANDLER_ENTRY): Define.
9081         (SYSCALL_ERROR_HANDLER): Use it.
9082         (PSEUDO): Don't jump around error handler.
9083         * sysdeps/unix/sysv/linux/sparc/sparc32/pipe.S (__libc_pipe): Don't
9084         jump around error handler.
9085         * sysdeps/unix/sysv/linux/sparc/sparc32/syscall.S (syscall): Likewise.
9086         * sysdeps/unix/sysv/linux/sparc/sparc32/socket.S (__socket): Branch
9087         to __syscall_error_handler on failure.
9088         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h [DONT_LOAD_G1]
9089         (LOADSYSCALL): Remove.
9090         (SYSCALL_ERROR_HANDLER_ENTRY): Define.
9091         (SYSCALL_ERROR_HANDLER): Use it.
9092         (PSEUDO): Don't jump around error handler.
9093         * sysdeps/unix/sysv/linux/sparc/sparc64/pipe.S (__libc_pipe): Don't
9094         jump around error handler.
9095         * sysdeps/unix/sysv/linux/sparc/sparc64/syscall.S (syscall): Likewise.
9096         * sysdeps/unix/sysv/linux/sparc/sparc64/socket.S (__socket): Branch
9097         to __syscall_error_handler on failure.
9098
9099 2002-12-27  Roland McGrath  <roland@redhat.com>
9100
9101         * scripts/gen-as-const.awk: New file.
9102         * Makefile (distribute): Add it.
9103         * Makerules ($(common-objpfx)%.h %.h.d: %.sym): New pattern rule.
9104         (before-compile): Add $(gen-as-const-headers:%.sym=$(common-objpfx)%.h)
9105         to the list.
9106         (+depfiles): Add $(addprefix $(common-objpfx),$(gen-as-const-headers)).
9107
9108 2002-12-27  Andreas Schwab  <schwab@suse.de>
9109
9110         * sysdeps/unix/sysv/linux/m68k/socket.S: Add cancellation support.
9111
9112 2002-12-27  Jakub Jelinek  <jakub@redhat.com>
9113
9114         * malloc/arena.c (ptmalloc_init): Don't call next_env_entry if
9115         _environ is NULL.
9116
9117 2002-12-27  Andreas Schwab  <schwab@suse.de>
9118
9119         * Makerules ($(common-objpfx)%.make): Filter through
9120         $(sed-remove-objpfx).
9121
9122 2002-12-23  Roland McGrath  <roland@redhat.com>
9123
9124         * scripts/abilist.awk: Produce a more compact format, divided into
9125         stanzas for each version set, the set name listed only once.
9126         * scripts/extract-abilist.awk: New file.
9127         * scripts/merge-abilist.awk: New file.
9128         * Makerules (check-abi-%, update-abi-%): New pattern rules.
9129         (update-abi, check-abi): New targets.
9130         * Makefile (+subdir_targets): Add subdir_{check,update}-abi.
9131
9132 2002-12-19  Roland McGrath  <roland@redhat.com>
9133
9134         * Makerules (%.symlist): Use LC_ALL=C when running awk script.
9135
9136         * sysdeps/unix/sysv/linux/i386/brk.c (__brk): Cast result of
9137         INTERNAL_SYSCALL.
9138
9139 2002-12-21  Andreas Schwab  <schwab@suse.de>
9140
9141         * elf/check-textrel.c (handle_file): Swap p_type.
9142
9143 2002-12-21  Andreas Schwab  <schwab@suse.de>
9144
9145         * sysdeps/unix/sysv/linux/m68k/sysdep.h (INTERNAL_SYSCALL): Define.
9146         (INLINE_SYSCALL): Use it.
9147         (INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Define.
9148         (SYSCALL_ERROR_HANDLER): Define RTLD_PRIVATE_ERRNO variant.
9149
9150         * sysdeps/unix/sysv/linux/m68k/getpagesize.c: Use INTERNAL_SYSCALL.
9151         * sysdeps/unix/sysv/linux/m68k/brk.c: Likewise.
9152
9153 2002-12-20  Art Haas  <ahaas@airmail.net>
9154
9155         * sysdeps/gnu/siglist.c: Convert GCC extension initializer
9156         syntax to C99.
9157
9158 2002-12-21  Philip Blundell  <philb@gnu.org>
9159
9160         * sysdeps/arm/elf/start.S (_start): Optimise a little.  Push stack
9161         top as seventh arg to __libc_start_main.
9162         Reported by paulnash@wildseed.com.
9163
9164         * sysdeps/unix/sysv/linux/arm/clone.S: Small optimisation.
9165
9166         * sysdeps/unix/sysv/linux/arm/sigcontextinfo.h: Elide
9167         compatibility cruft when new enough kernel is assumed.
9168
9169 2002-12-20  Jakub Jelinek  <jakub@redhat.com>
9170
9171         * sysdeps/unix/sysv/linux/i386/brk.c (__brk): Use INTERNAL_SYSCALL
9172         instead of INLINE_SYSCALL.
9173
9174 2002-12-20  Ulrich Drepper  <drepper@redhat.com>
9175
9176         * sysdeps/unix/sysv/linux/i386/sigaction.c (__libc_sigaction): Fix
9177         typo.
9178
9179         * sysdeps/unix/sysv/linux/alpha/bits/shm.h: Define SHM_HUGETLB.
9180         * sysdeps/unix/sysv/linux/bits/shm.h: Likewise.
9181         * sysdeps/unix/sysv/linux/hppa/bits/shm.h: Likewise.
9182         * sysdeps/unix/sysv/linux/ia64/bits/shm.h: Likewise.
9183         * sysdeps/unix/sysv/linux/mips/bits/shm.h: Likewise.
9184         * sysdeps/unix/sysv/linux/powerpc/bits/shm.h: Likewise.
9185         * sysdeps/unix/sysv/linux/s390/bits/shm.h: Likewise.
9186         * sysdeps/unix/sysv/linux/sparc/bits/shm.h: Likewise.
9187         * sysdeps/unix/sysv/linux/x86_64/bits/shm.h: Likewise.
9188         Patch by William Lee Irwin <wli@holomorphy.com>.
9189
9190 2002-12-20  Andreas Schwab  <schwab@suse.de>
9191
9192         * locale/programs/ld-measurement.c (measurement_output): Fix
9193         index calculation.
9194
9195 2002-12-20  Ulrich Drepper  <drepper@redhat.com>
9196
9197         * include/libio.h [_IO_MTSAFE_IO && _IO_lock_inexpensive]:
9198         Redefine _IO_flockifle and _IO_funlockfile as inlines.
9199
9200         * sysdeps/generic/dl-sysdep.c (_dl_important_hwcaps): For TLS
9201         builds add "tls" in the search path.
9202         * elf/ldconfig.c (is_hwcap_platform): Also recognize "tls".
9203         (path_hwcap): Recognize "tls".
9204
9205 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
9206
9207         * sysdeps/unix/sysv/linux/i386/system.c (cancel_handler): Use
9208         __waitpid instead of waitpid.
9209
9210         * sysdeps/unix/sysv/linux/i386/_exit.S: Use ENTER_KERNEL instead of
9211         int $0x80.
9212         * sysdeps/unix/sysv/linux/i386/getcontext.S: Likewise.
9213         * sysdeps/unix/sysv/linux/i386/setcontext.S: Likewise.
9214         * sysdeps/unix/sysv/linux/i386/swapcontext.S: Likewise.
9215
9216         * sysdeps/unix/sysv/linux/i386/sysdep.h: Add support to use AT_SYSINFO
9217         information for system calls.
9218
9219         * sysdeps/generic/dl-sysdep.h: Define RTLD_PRIVATE_ERRNO to 1 only
9220         for ld.so.
9221
9222         * elf/rtld.c (_dl_start) [USE___THREAD]: Define initdtv.
9223
9224 2002-12-19  Roland McGrath  <roland@redhat.com>
9225
9226         * iconvdata/ibm856.h: Convert GCC extension initializer syntax to C99.
9227         * iconvdata/ibm922.h: Likewise.
9228         * iconvdata/ibm930.h: Likewise.
9229         * iconvdata/ibm932.h: Likewise.
9230         * iconvdata/ibm933.h: Likewise.
9231         * iconvdata/ibm935.h: Likewise.
9232         * iconvdata/ibm937.h: Likewise.
9233         * iconvdata/ibm939.h: Likewise.
9234         * iconvdata/ibm943.h: Likewise.
9235         * iconvdata/isiri-3342.h: Likewise.
9236
9237 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
9238
9239         * test-skeleton.c (main): Make sure correct value is seen as
9240         argv[0] after adjustment of argv, and argc.
9241
9242         * elf/rtld.c: Don't initialize _dl_dynamic_weak to 1 if
9243         RTLD_CORRECT_DYNAMIC_WEAK is defined.
9244
9245 2002-12-19  Jakub Jelinek  <jakub@redhat.com>
9246
9247         * nscd/connections.c (nscd_run): Shut up warning.
9248         * tst-ungetc.c (assert): Undefined before redefining.
9249
9250 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
9251
9252         * posix/regex.c: Use __builtin_expect even outside glibc if gcc 3
9253         is used.
9254
9255 2002-12-17  Art Haas  <ahaas@airmail.net>
9256
9257         * iconvdata/cp737.h: Convert GCC extension initializer syntax to C99.
9258         * iconvdata/cp775.h: Likewise.
9259         * iconvdata/ibm1046.h: Likewise.
9260         * iconvdata/ibm1124.h: Likewise.
9261         * iconvdata/ibm1129.h: Likewise.
9262         * iconvdata/ibm1132.h: Likewise.
9263         * iconvdata/ibm1133.h: Likewise.
9264         * iconvdata/ibm1160.h: Likewise.
9265         * iconvdata/ibm1161.h: Likewise.
9266         * iconvdata/ibm1162.h: Likewise.
9267         * iconvdata/ibm1163.h: Likewise.
9268         * iconvdata/ibm1164.h: Likewise.
9269
9270 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
9271
9272         * sysdeps/unix/sysv/linux/i386/system.c: Define FORK only if
9273         __ASSUME_CLONE_THREAD_FLAGS is defined.
9274         * sysdeps/unix/sysv/linux/kernel-features.h
9275         (__ASSUME_CLONE_THREAD_FLAGS): Define for x86 and kernel >= 2.5.50.
9276
9277 2002-12-18  Ulrich Drepper  <drepper@redhat.com>
9278
9279         * sysdeps/unix/sysv/linux/i386/brk.c: Use INTERNAL_SYSCALL instead
9280         of asm.
9281         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
9282
9283         * elf/dl-support.c [NEED_DL_SYSINFO]: Define and initialize
9284         _dl_sysinfo.
9285         [DL_SYSINFO_IMPLEMENTATION]: If defined use it to generate the needed
9286         code.
9287         * elf/rtld.c [DL_NEED_SYSINFO]: Initialize _dl_sysinfo element of
9288         _rtld_global.
9289         [DL_SYSINFO_IMPLEMENTATION]: If defined use it to generate the needed
9290         code.
9291         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start) [NEED_DL_SYSINFO]:
9292         Check for AT_SYSINFO and set _dl_sysinfo appropriately.
9293         * sysdeps/generic/ldsodefs.h (struct rtld_global) [NEED_DL_SYSINFO]:
9294         Add _dl_sysinfo.
9295
9296 2002-12-18  Jakub Jelinek  <jakub@redhat.com>
9297
9298         * misc/Versions [libc: GLIBC_2.3.1]: Move __libc_readv and
9299         __libc_writev to...
9300         [libc: GLIBC_PRIVATE]: ...here.
9301         * sysvipc/Versions [libc: GLIBC_2.3.1]: Move __libc_msgrcv and
9302         __libc_msgsnd to...
9303         [libc: GLIBC_PRIVATE]: ...here.
9304
9305 2002-12-18  Ulrich Drepper  <drepper@redhat.com>
9306
9307         * sysdeps/unix/sysv/linux/i386/sysdep.h: Define ENTER_KERNEL macro.
9308         Use it instead of directly int $0x80.
9309         * sysdeps/unix/sysv/linux/i386/brk.c: Use ENTER_KERNEL.
9310         * sysdeps/unix/sysv/linux/i386/mmap64.S: Likewise.
9311         * sysdeps/unix/sysv/linux/i386/mmap.S: Likewise.
9312         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
9313         * sysdeps/unix/sysv/linux/i386/socket.S: Likewise.
9314         * sysdeps/unix/sysv/linux/i386/syscall.S: Likewise.
9315
9316 2002-12-17  Ulrich Drepper  <drepper@redhat.com>
9317
9318         * malloc/malloc.c (mALLOPt): Make sure malloc is initialized.
9319
9320         * elf/elf.h (AT_SYSINFO): New define.
9321         * sysdeps/generic/dl-sysdep.c (_dl_show_auxv): Add support for
9322         AT_SYSINFO.
9323
9324 2002-12-17  Jakub Jelinek  <jakub@redhat.com>
9325
9326         * sysdeps/unix/sysv/linux/alpha/syscalls.list (msgrcv, msgsnd):
9327         Make cancelable.
9328         * sysdeps/unix/sysv/linux/hppa/syscalls.list (msgrcv, msgsnd):
9329         Likewise.
9330         * sysdeps/unix/sysv/linux/ia64/syscalls.list (msgrcv, msgsnd):
9331         Likewise.
9332         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (msgrcv, msgsnd):
9333         Likewise.
9334         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (msgrcv, msgsnd):
9335         Likewise.
9336         * sysdeps/unix/sysv/linux/ia64/sigsuspend.c (__sigsuspend): Likewise.
9337
9338         * malloc/thread-m.h (mutex_init, mutex_lock, mutex_trylock,
9339         mutex_unlock): If not building NPTL, use __libc_maybe_call2 if
9340         available, otherwise __libc_maybe_call.
9341         * sysdeps/unix/sysv/linux/x86_64/recv.c: Add support for
9342         cancellation handling.
9343         * sysdeps/unix/sysv/linux/x86_64/send.c: Likewise.
9344
9345 2002-12-17  Isamu Hasegawa  <isamu@yamato.ibm.com>
9346
9347         * posix/regcomp.c (free_workarea_compile): Free the new member
9348         ORG_INDICES.
9349         (analyze): Initialize ORG_INDICES.
9350         (duplicate_node_closure): Search for a existing node, which is
9351         duplicated from the node ORG_DEST and satisfies the constraint
9352         CONSTRAINT.  And use it to avoid inifimite loop.
9353         (search_duplicated_node): New function.
9354         (duplicate_node): Store the index of the original node.
9355         * posix/regex_internal.c (re_dfa_add_node): Realloc ORG_INDICES
9356         if needed.
9357         * posix/regex_internal.h (re_dfa_t): Add new members.
9358
9359 2002-12-17  Ulrich Drepper  <drepper@redhat.com>
9360
9361         * stdio-common/tst-fdopen.c: Undefine assert before redefining it.
9362
9363 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
9364
9365         * sysdeps/posix/system.c (do_system): Add support for installation
9366         of cancellation handlers.
9367         * sysdeps/unix/sysv/linux/i386/system.c: New file.
9368
9369         * stdlib/Makefile (tests): Add tst-system.
9370         * stdlib/tst-system.c: New file.
9371
9372         * sysdeps/unix/sysv/linux/i386/socket.S [NEED_CANCELLATION &&
9373         CENABLE]: Don't lose content of %ebx.
9374
9375 2002-12-17  Jakub Jelinek  <jakub@redhat.com>
9376
9377         * sysdeps/unix/sysv/linux/i386/socket.S: Use SINGLE_THREAD_P
9378         macro instead of comparing %gs:MULTIPLE_THREADS_OFFSET directly.
9379
9380 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
9381
9382         * sysdeps/posix/getaddrinfo.c (gaih_inet): If __nss_lookup_function
9383         fails to return a function pointer don't use it.
9384
9385 2002-12-16  Art Haas  <ahaas@airmail.net>
9386
9387         * io/ftw.c: Convert GCC extension initializer syntax to C99.
9388         * iconvdata/iso-ir-165.c: Likewise.
9389         * iconvdata/jis0208.c: Likewise.
9390         * iconvdata/jis0212.c: Likewise.
9391
9392 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
9393
9394         * sysdeps/unix/sysv/linux/syscalls.list: Add epoll_create,
9395         epoll_ctl, and epoll_wait.
9396         * sysdeps/unix/sysv/linux/Versions [libc: GLIBC_2.3.2]: Add
9397         epoll_create, epoll_ctl, and epoll_wait.
9398         * sysdeps/unix/sysv/linux/sys/epoll.h: New file.  Written by
9399         Davide Libenzi <davidel@xmailserver.org>.
9400         * sysdeps/unix/sysv/linux/Dist: Add sys/epoll.h.
9401         * sysdeps/unix/sysv/linux/Makefile [subdir=misc] (sysdep_headers):
9402         Add sys/epoll.h.
9403
9404 2002-12-16  Art Haas  <ahaas@airmail.net>
9405
9406         * sysdeps/generic/bp-semctl.h: Convert GCC extension initializer
9407         syntax to C99
9408         * sysdeps/unix/sysv/aix/settimer.c: Likewise.
9409         * sysdeps/unix/sysv/aix/sleep.c: Likewise.
9410         * sysdeps/unix/sysv/aix/usleep.c: Likewise.
9411
9412 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
9413
9414         * stdio-common/Makefile (routines): Remove lockfile.  Add
9415         flockfile, ftrylockfile, and funlockfile.
9416         * sysdeps/generic/lockfile.c: Removed.  Each function has its own file.
9417         * sysdeps/generic/flockfile.c: New file.
9418         * sysdeps/generic/ftrylockfile.c: New file.
9419         * sysdeps/generic/funlockfile.c: New file.
9420
9421 2002-12-16  Jakub Jelinek  <jakub@redhat.com>
9422
9423         * sysdeps/unix/sysv/linux/i386/socket.S: Use CENABLE and CDISABLE
9424         macros instead of doing the calls directly.
9425         * sysdeps/unix/make-syscalls.sh: Add ptw-*.$o target name to rules.
9426         * Makerules ($(+sysdir_pfx)sysd-rules): Emit rules for ptw-%
9427         targets.
9428
9429 2002-12-16  Jakub Jelinek  <jakub@redhat.com>
9430
9431         * sysdeps/i386/fpu/bits/mathinline.h: Backout last change.
9432         * sysdeps/ieee754/bits/nan.h: Likewise.
9433
9434         * sysdeps/unix/sysv/linux/ia64/syscalls.list (__syscall_open,
9435         __syscall_wait4, __syscall_ioctl, __syscall_write): Add.
9436
9437 2002-12-16  Roland McGrath  <roland@redhat.com>
9438
9439         * sunrpc/xdr_mem.c (xdrmem_inline): Fix argument type.
9440         * sunrpc/xdr_rec.c (xdrrec_inline): Likewise.
9441         * sunrpc/xdr_stdio.c (xdrstdio_inline): Likewise.
9442
9443         * sysdeps/unix/sysv/linux/syscalls.list: Add getpmsg, putpmsg.
9444         * sysdeps/unix/sysv/linux/mips/syscalls.list: Remove s_getpmsg,
9445         s_putpmsg.
9446         * sysdeps/unix/sysv/linux/i386/getpmsg.c: File removed.
9447         * sysdeps/unix/sysv/linux/i386/putpmsg.c: File removed.
9448         * sysdeps/unix/sysv/linux/m68k/getpmsg.c: File removed.
9449         * sysdeps/unix/sysv/linux/m68k/putpmsg.c: File removed.
9450         * sysdeps/unix/sysv/linux/mips/getpmsg.c: File removed.
9451         * sysdeps/unix/sysv/linux/mips/putpmsg.c: File removed.
9452         * sysdeps/unix/sysv/linux/powerpc/getpmsg.c: File removed.
9453         * sysdeps/unix/sysv/linux/powerpc/putpmsg.c: File removed.
9454
9455 2002-12-13  Paul Eggert  <eggert@twinsun.com>
9456
9457         * sunrpc/rpc/xdr.h (struct XDR.xdr_ops.x_inline): 2nd arg
9458         is now u_int, not int.
9459         (struct XDR.x_handy): Now u_int, not int.
9460         * sunrpc/xdr_mem.c: Include <limits.h>.
9461         (xdrmem_getlong, xdrmem_putlong, xdrmem_getbytes, xdrmem_putbytes,
9462         xdrmem_inline, xdrmem_getint32, xdrmem_putint32):
9463         x_handy is now unsigned, not signed.
9464         Do not decrement x_handy if no change is made.
9465         (xdrmem_setpos): Check for int overflow.
9466         * sunrpc/xdr_sizeof.c (x_inline): 2nd arg is now unsigned.
9467         (xdr_sizeof): Remove cast that is now unnecessary, now that
9468         x_handy is unsigned.
9469
9470 2002-12-15  Art Haas  <ahaas@airmail.net>
9471
9472         * iconv/gconv_conf.c: Convert GCC extension initializer syntax to C99.
9473         * iconvdata/gap.awk: Likewise.
9474         * iconvdata/gen-8bit-gap-1.sh: Likewise.
9475         * iconvdata/gen-8bit-gap.sh: Likewise.
9476         * locale/C-address.c: Likewise.
9477         * locale/C-collate.c: Likewise.
9478         * locale/C-ctype.c: Likewise.
9479         * locale/C-identification.c: Likewise.
9480         * locale/C-measurement.c: Likewise.
9481         * locale/C-messages.c: Likewise.
9482         * locale/C-monetary.c: Likewise.
9483         * locale/C-name.c: Likewise.
9484         * locale/C-numeric.c: Likewise.
9485         * locale/C-paper.c: Likewise.
9486         * locale/C-telephone.c: Likewise.
9487         * locale/C-time.c: Likewise.
9488         * nscd/connections.c: Likewise.
9489         * nscd/grpcache.c: Likewise.
9490         * nscd/hstcache.c: Likewise.
9491         * nscd/pwdcache.c: Likewise.
9492         * stdio-common/vfprintf.c: Likewise.
9493         * stdlib/random.c: Likewise.
9494         * sysdeps/generic/siglist.c: Likewise.
9495         * sysdeps/i386/fpu/bits/mathinline.h: Likewise.
9496         * sysdeps/ieee754/bits/nan.h: Likewise.
9497         * sysdeps/posix/sprofil.c: Likewise.
9498         * sysdeps/unix/sysv/linux/sleep.c: Likewise.
9499         * sysdeps/unix/sysv/linux/sysctl.c: Likewise.
9500         * sysdeps/unix/sysv/linux/usleep.c: Likewise.
9501
9502 2002-12-15  Roland McGrath  <roland@redhat.com>
9503
9504         * sysdeps/unix/sysv/linux/readv.c (do_readv): Use prototype defn.
9505
9506         * sysdeps/unix/sysv/linux/wait.c: Don't include <nptl/pthreadP.h> or
9507         <tls.h> here, no need for it.
9508         * sysdeps/unix/sysv/linux/waitpid.c: Likewise.
9509
9510         * sysdeps/unix/sysv/linux/i386/fcntl.c (do_fcntl): Take ARG as void *
9511         parameter, not varargs parameter.
9512
9513         * sysdeps/generic/sysdep-cancel.h (LIBC_CANCEL_RESET): Evaluate the
9514         argument so it's not an unused variable.
9515
9516         * resolv/resolv.h (__p_key_syms, __p_cert_syms, __p_class_syms,
9517         __p_type_syms, __p_rcode_syms): Remove decls, never really intended
9518         for users.
9519
9520         * resolv/Versions (libresolv: GLIBC_2.3.2): New set, add __p_rcode.
9521
9522 2002-12-15  Ulrich Drepper  <drepper@redhat.com>
9523
9524         * sysdeps/unix/sysv/linux/i386/fcntl.c (do_fcntl): This is the
9525         original __libc_fcntl code.  Just renamed.
9526
9527 2002-12-15  Andreas Schwab  <schwab@suse.de>
9528
9529         * sysdeps/unix/sysv/linux/m68k/clone.S: Make inline syscall to _exit.
9530
9531 2002-12-14  Olaf Hering  <olh@suse.de>
9532
9533         * sysdeps/powerpc/bits/setjmp.h: Include <bits/wordsize.h>.
9534         * sysdeps/powerpc/powerpc64/setjmp.S: Fix typo in r18 load.
9535
9536 2002-12-15  Ulrich Drepper  <drepper@redhat.com>
9537
9538         * sysdeps/unix/sysv/linux/libc_fatal.c: New file.
9539
9540         * sysdeps/generic/sysdep-cancel.h: Add dummy definitions for
9541         SINGLE_THREAD_P, LIBC_CANCEL_ASYNC, and LIBC_CANCEL_RESET.
9542
9543         * sysdeps/unix/sysv/linux/open64.c: New file.
9544
9545         * sysdeps/generic/pselect.c: Add support for cancellation handling.
9546         * sysdeps/posix/open64.c: Likewise.
9547         * sysdeps/posix/sigpause.c: Likewise.
9548         * sysdeps/posix/sigwait.c: Likewise.
9549         * sysdeps/posix/system.c: Likewise.
9550         * sysdeps/posix/waitid.c: Likewise.
9551         * sysdeps/unix/sysv/linux/accept.S: Likewise.
9552         * sysdeps/unix/sysv/linux/connect.S: Likewise.
9553         * sysdeps/unix/sysv/linux/llseek.c: Likewise.
9554         * sysdeps/unix/sysv/linux/msgrcv.c: Likewise.
9555         * sysdeps/unix/sysv/linux/msgsnd.c: Likewise.
9556         * sysdeps/unix/sysv/linux/poll.c: Likewise.
9557         * sysdeps/unix/sysv/linux/pread.c: Likewise.
9558         * sysdeps/unix/sysv/linux/pread64.c: Likewise.
9559         * sysdeps/unix/sysv/linux/pwrite.c: Likewise.
9560         * sysdeps/unix/sysv/linux/pwrite64.c: Likewise.
9561         * sysdeps/unix/sysv/linux/readv.c: Likewise.
9562         * sysdeps/unix/sysv/linux/recv.S: Likewise.
9563         * sysdeps/unix/sysv/linux/recvfrom.S: Likewise.
9564         * sysdeps/unix/sysv/linux/recvmsg.S: Likewise.
9565         * sysdeps/unix/sysv/linux/send.S: Likewise.
9566         * sysdeps/unix/sysv/linux/sendmsg.S: Likewise.
9567         * sysdeps/unix/sysv/linux/sendto.S: Likewise.
9568         * sysdeps/unix/sysv/linux/sigsuspend.c: Likewise.
9569         * sysdeps/unix/sysv/linux/sigtimedwait.c: Likewise.
9570         * sysdeps/unix/sysv/linux/sigwait.c: Likewise.
9571         * sysdeps/unix/sysv/linux/sigwaitinfo.c: Likewise.
9572         * sysdeps/unix/sysv/linux/tcdrain.c: Likewise.
9573         * sysdeps/unix/sysv/linux/wait.c: Likewise.
9574         * sysdeps/unix/sysv/linux/waitpid.c: Likewise.
9575         * sysdeps/unix/sysv/linux/writev.c: Likewise.
9576         * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.
9577         * sysdeps/unix/sysv/linux/i386/socket.S: Likewise.
9578
9579 2002-12-14  Jakub Jelinek  <jakub@redhat.com>
9580
9581         * sysdeps/generic/sysdep-cancel.h: New file.
9582         * sysdeps/unix/make-syscalls.sh: Handle C at start of args as
9583         cancelable syscall.
9584         * sysdeps/unix/inet/syscalls.list (accept, connect, recv, recvfrom,
9585         recvmsg, send, sendmsg, sendto): Make cancelable.
9586         * sysdeps/unix/mman/syscalls.list (msync): Likewise.
9587         * sysdeps/unix/sysv/linux/alpha/syscalls.list (llseek, pread,
9588         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
9589         sendto, osf_select): Likewise.
9590         * sysdeps/unix/sysv/linux/hppa/syscalls.list (accept, connect, recv,
9591         recvfrom, recvmsg, send, sendmsg, sendto): Likewise.
9592         * sysdeps/unix/sysv/linux/ia64/syscalls.list (llseek, pread,
9593         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
9594         sendto): Likewise.
9595         * sysdeps/unix/sysv/linux/mips/syscalls.list (accept, connect, recv,
9596         recvfrom, recvmsg, send, sendmsg, sendto): Likewise.
9597         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (llseek, pread,
9598         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
9599         sendto): Likewise.
9600         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list (llseek, pread,
9601         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
9602         sendto, select): Likewise.
9603         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (llseek, pread,
9604         pwrite, accept, connect, recvfrom, recvmsg, sendmsg, sendto):
9605         Likewise.
9606         * sysdeps/unix/sysv/linux/syscalls.list (creat, nanosleep, pause,
9607         select, fcntl): Likewise.
9608         * sysdeps/unix/sysv/syscalls.list (pause, poll): Likewise.
9609         * sysdeps/unix/syscalls.list (close, fcntl, fsync, lseek, open,
9610         read, readv, select, sigsuspend, write, writev): Likewise.
9611
9612 2002-12-14  Jakub Jelinek  <jakub@redhat.com>
9613
9614         * dirent/bug-readdir1.c: Include unistd.h.
9615
9616 2002-12-13  Jakub Jelinek  <jakub@redhat.com>
9617
9618         * locale/programs/locale.c: Include locarchive.h.
9619         (ARCHIVE_NAME): Define.
9620         (write_archive_locales): New function.
9621         (write_locales): Use it.  Ensure the same locale is not printed
9622         multiple times in verbose mode.
9623         Mode LC_IDENTIFICATION and LC_CTYPE printing into...
9624         (print_LC_IDENTIFICATION, print_LC_CTYPE): ... these helper
9625         functions.
9626         (struct nameent): New type.
9627         (nameentcmp): New function.
9628
9629 2002-12-14  Jakub Jelinek  <jakub@redhat.com>
9630
9631         * posix/regex_internal.c (re_string_context_at): Guard wide char
9632         code with #ifdef RE_ENABLE_I18N.
9633
9634 2002-11-22  Paolo Bonzini  <bonzini@gnu.org>
9635
9636         * posix/regcomp.c (regcomp): __re_compile_fastmap -> re_compile_fastmap
9637
9638 2002-12-13  Roland McGrath  <roland@redhat.com>
9639
9640         * posix/bug-regex15.c: New file.
9641         * posix/Makefile (tests): Add it.
9642
9643         * test-skeleton.c (TEST_DATA_LIMIT): New macro, default to 64MB.
9644         (main): Set RLIMIT_DATA limit to TEST_DATA_LIMIT (or lower if need be).
9645
9646 2002-12-13  Ulrich Drepper  <drepper@redhat.com>
9647
9648         * elf/dl-misc.c (_dl_debug_vdprintf): Don't depend on 5-digit PIDs.
9649
9650         * misc/syslog.c (log_cleanup): Don't use parameter in
9651         __libc_lock_unlock call, use syslog_lock directly.  Adjust callers to
9652         pass NULL instead of a pointer to syslog_lock.
9653
9654 2002-12-12  Ulrich Drepper  <drepper@redhat.com>
9655
9656         * iconvdata/Makefile: iconv-rules: Add definition to use gconv.map
9657         linker map for all iconv modules.
9658         (distribute): Add gconv.map.
9659         * iconvdata/gconv.map: New file.
9660
9661         * elf/Makefile: Also check all iconv modules for text relocations.
9662
9663         * stdlib/Makefile: Remove code to automatically import GMP.
9664
9665         * elf/Makefile (tests): Add rules to build and run check-textrel.
9666         * elf/check-textrel.c: New file.
9667
9668         * sysdeps/unix/sysv/linux/i386/sysdep.h (SETUP_PIC_REG): Add .size
9669         directive.
9670
9671 2002-12-11  Jakub Jelinek  <jakub@redhat.com>
9672
9673         * io/test-utime (main): If stnow.st[am]time is wrong, print it and
9674         not st.st[am]time.
9675
9676 2002-04-30  Bruno Haible  <bruno@clisp.org>
9677
9678         * intl/loadmsgcat.c (_nl_init_domain_conv): Don't append //TRANSLIT to
9679         the encoding if it already has slashes.
9680         Reported by Perry Rapp <prapp@erols.com>.
9681
9682 2002-12-11  Roland McGrath  <roland@redhat.com>
9683
9684         * csu/Makefile ($(objpfx)elf-init.oS): Remove target, braino.
9685         (CPPFLAGS-elf-init.oS, CFLAGS-elf-init.oS): New variables.
9686         Turn off PIC for compiling this file.
9687
9688 2002-12-11  Ulrich Drepper  <drepper@redhat.com>
9689
9690         * malloc/thread-m.h: Remove thread_id type and MUTEX_INITIALIZER
9691         definitions.  Not needed.
9692         [_LIBC]: Use definitions from libc-lock.h instead of referencing
9693         pthread routines directly.
9694         * malloc/arena.c (ptmalloc_unlock_all2): Don't add (void) to
9695         mutex_init calls.
9696         (arena_get2): Don't look at return value of mutex_lock.
9697
9698 2002-12-11  Roland McGrath  <roland@redhat.com>
9699
9700         * csu/Makefile ($(objpfx)elf-init.oS): New target, just clone
9701         elf-init.o instead of compiling a PIC version.
9702
9703 2002-12-11  Bruno Haible  <bruno@clisp.org>
9704
9705         * intl/gettext.h: Renamed to ...
9706         * intl/gmo.h: ... here.
9707         * intl/Makefile (distribute): Add gmo.h, remove gettext.h.
9708         * intl/gettextP.h: Update.
9709         * intl/loadmsgcat.c: Update.
9710
9711         * intl/gettextP.h (PARAMS): Make more portable.
9712         (attribute_hidden): Define as empty macro if not already defined.
9713         * intl/hash-string.h (PARAMS): Make more portable.
9714         * intl/loadinfo.h (PARAMS): Likewise.
9715         * intl/plural-exp.h (PARAMS): Likewise.
9716         (attribute_hidden): Move definition near the definition of
9717         internal_function.
9718
9719         * intl/gettextP.h (_nl_locale_name) [!_LIBC]: New declaration.
9720         * intl/plural-exp.h (plural_eval) [!_LIBC]: New declaration.
9721
9722 2002-07-13  Bruno Haible  <bruno@clisp.org>
9723
9724         * intl/dcigettext.c (freea): New macro.
9725         (FREE_BLOCKS): Free also the registered blocks.
9726         (DCIGETTEXT): Free the 'search' variable.
9727         Reported by Andreas Fischer <a.fischer@asentics.de>.
9728
9729 2002-04-27  Bruno Haible  <bruno@clisp.org>
9730
9731         * intl/gettextP.h [! _LIBC]: Use prefix libintl_ instead of suffix __.
9732         * intl/dcigettext.c: Likewise.
9733         * intl/dcgettext.c: Likewise.
9734         * intl/dgettext.c: Likewise.
9735         * intl/gettext.c: Likewise.
9736         * intl/dcngettext.c: Likewise.
9737         * intl/dngettext.c: Likewise.
9738         * intl/ngettext.c: Likewise.
9739         * intl/textdomain.c: Likewise.
9740         * intl/bindtextdom.c: Likewise.
9741         * intl/plural-exp.h: Likewise.
9742
9743 2002-01-02  Bruno Haible  <bruno@clisp.org>
9744
9745         * intl/loadmsgcat.c (_nl_init_domain_conv): Use PARAMS in extern decl.
9746
9747 2001-04-30  Bruno Haible  <bruno@clisp.org>
9748
9749         * intl/dcigettext.c (getuid, getgid, geteuid, getegid): Provide
9750         default macro definitions.  Needed for mingw32.
9751
9752 2002-12-10  Ulrich Drepper  <drepper@redhat.com>
9753
9754         * sysdeps/i386/bits/byteswap.h (__bswap_64): Apply
9755         __builtin_constant_p to macro parameter.
9756
9757         * sysdeps/generic/sigpause.c: Define all functions as weak.
9758         * sysdeps/posix/sigpause.c: Likewise.
9759
9760         * elf/tst-tls7.c (do_test): Adjustments for l_tls_modid being of
9761         type size_t.
9762
9763 2002-12-10  Jakub Jelinek  <jakub@redhat.com>
9764
9765         * elf/tst-array1.c (preinit_array, init_array, fini_array):
9766         Explicitly align the array to sizeof (void *).
9767         * elf/tst-array2dep.c (init_array, fini_array): Likewise.
9768
9769         * include/libc-symbols.h: Fix a comment typo.
9770
9771         * sysdeps/unix/sysv/linux/alpha/select.S (__libc_select): New alias.
9772         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S (__libc_sigsuspend):
9773         Likewise.
9774         * sysdeps/unix/sysv/linux/ia64/sigsuspend.c (__libc_sigsuspend):
9775         Likewise.
9776         * sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c
9777         (__libc_sigsuspend): Likewise.
9778         * sysdeps/unix/sysv/linux/sparc/sparc64/sigsuspend.c
9779         (__libc_sigsuspend): Likewise.
9780         * sysdeps/generic/creat.c (__libc_creat): Renamed from creat.
9781         (creat): New weak alias.
9782
9783 2002-12-10  Roland McGrath  <roland@redhat.com>
9784
9785         * manual/libc-texinfo.sh: Emit @set ADD-ON for each ADD-ON that
9786         contributes a manual chapter.
9787         * manual/signal.texi (Process Signal Mask): Use @ifset linuxthreads
9788         around xref to it.
9789
9790         * sysdeps/unix/sysv/linux/dl-librecon.h (EXTRA_LD_ENVVARS): Refer to
9791         and move contents to ...
9792         (EXTRA_LD_ENVVARS_LINUX): ... this new macro.  Add break for nonmatch.
9793         * sysdeps/unix/sysv/linux/i386/dl-librecon.h (EXTRA_LD_ENVVARS): Use
9794         it instead of duplicating its contents.
9795         (EXTRA_LD_ENVVARS): Likewise.  Add break for nonmatch.
9796
9797 2002-12-09  Jakub Jelinek  <jakub@redhat.com>
9798
9799         * elf/dl-support.c (_dl_non_dynamic_init): Add DL_OSVERSION_INIT if
9800         defined.
9801         * sysdeps/unix/sysv/linux/dl-librecon.h (_dl_osversion_init): New
9802         function.
9803         (EXTRA_LD_ENVVARS): Use it.
9804         (DL_OSVERSION_INIT): Define.
9805         * sysdeps/unix/sysv/linux/i386/dl-librecon.h: Include linux
9806         dl-librecon.h.
9807         (EXTRA_LD_ENVVARS): Undef before defining.  Use _dl_osversion_init.
9808
9809 2002-12-10  Ulrich Drepper  <drepper@redhat.com>
9810
9811         * Versions.def: No new symbols in 2.3.1, but some new ones in 2.3.2.
9812
9813         * sysdeps/unix/closedir.c (__closedir): Remove __libc_lock_lock
9814         call.  It is not allowed to destroy pthread mutexes which are
9815         still in use even though it is safe for our implementations.  If
9816         somebody still uses the descriptor it is a bug.
9817
9818 2002-12-09  Richard Henderson  <rth@redhat.com>
9819
9820         * csu/abi-note.S: Use .p2align, not .align.
9821
9822 2002-12-09  Ulrich Drepper  <drepper@redhat.com>
9823
9824         * sysdeps/unix/sysv/linux/syscalls.list: Add __libc_creat and
9825         __libc_select aliases.
9826
9827         * sysdeps/unix/sysv/linux/sigwaitinfo.c: Define __libc_sigwaitinfo
9828         alias.
9829
9830         * sysdeps/unix/sysv/linux/sigwait.c: Define __libc_sigwait alias.
9831
9832         * sysdeps/unix/sysv/linux/sigsuspend.c: Define __libc_sigsuspend alias.
9833
9834         * sysdeps/unix/sysv/linux/poll.c: Define __libc_poll alias.
9835
9836         * sysdeps/unix/syscalls.list: Define __libc_select alias.
9837
9838         * sysdeps/posix/waitid.c: Define __libc_waitid alias.
9839
9840         * sysdeps/posix/sigpause.c: Define __libc_sigpause and
9841         __libc___xpg_sigpause aliases.
9842
9843         * sysdeps/generic/pselect.c: Define __libc_pselect alias.
9844
9845         * misc/error.c: Remove use of USE_IN_LIBIO.
9846
9847 2002-12-08  Roland McGrath  <roland@redhat.com>
9848
9849         * elf/Makefile (tests): Uncomment tst-array[123].
9850         * Makeconfig (CPPFLAGS-.oS): Add -DLIBC_NONSHARED=1.
9851         * csu/elf-init.c: New file.
9852         * csu/Makefile (routines, static-only-routines): Add elf-init.
9853         * sysdeps/alpha/elf/start.S: Use __libc_csu_init in place of _init
9854         and __libc_csu_fini in place of _fini.
9855         * sysdeps/arm/elf/start.S: Likewise.
9856         * sysdeps/cris/elf/start.S: Likewise.
9857         * sysdeps/hppa/elf/start.S: Likewise.
9858         * sysdeps/i386/elf/start.S: Likewise.
9859         * sysdeps/ia64/elf/start.S: Likewise.
9860         * sysdeps/m68k/elf/start.S: Likewise.
9861         * sysdeps/mach/hurd/powerpc/static-start.S: Likewise.
9862         * sysdeps/mips/elf/start.S: Likewise.
9863         * sysdeps/powerpc/powerpc32/elf/start.S: Likewise.
9864         * sysdeps/powerpc/powerpc64/elf/start.S: Likewise.
9865         * sysdeps/s390/s390-32/elf/start.S: Likewise.
9866         * sysdeps/s390/s390-64/elf/start.S: Likewise.
9867         * sysdeps/sh/elf/start.S: Likewise.
9868         * sysdeps/sparc/sparc32/elf/start.S: Likewise.
9869         * sysdeps/sparc/sparc64/elf/start.S: Likewise.
9870         * sysdeps/x86_64/elf/start.S: Likewise.
9871
9872         * sysdeps/pthread/aio_notify.c (notify_func_wrapper): Take a malloc'd
9873         struct containing function ptr and value, free it.
9874         (__aio_notify_only): Allocate that and copy values from SIGEV into it.
9875         It's not safe to let the new thread use the SIGEV pointer.
9876
9877 2001-10-20  Paul Eggert  <eggert@twinsun.com>
9878
9879         * misc/error.c (strerror_r): Do not declare unless [!_LIBC].
9880         Do not check for HAVE_DECL_STRERROR_R missing unless STRERROR_R_CHAR_P.
9881         Use strerror_r that is only a macro, even if it is not a function.
9882         (strerror): Check for HAVE_DECL_STRERROR before declaring.
9883         (private_strerror): Use prototypes, not old-style function definition.
9884         (print_errno_message): New function.
9885         Support the POSIX 'int'-flavored strerror_r, as well as the traditional
9886         char*-flavored one.
9887         (error_tail, error, error_at_line): Use it.
9888
9889 2002-12-07  Carlos O'Donell  <carlos@baldric.uwo.ca>
9890
9891         * sysdeps/unix/sysv/linux/hppa/bits/shm.h: Added SHMLBA #define.
9892
9893 2002-12-08  Ulrich Drepper  <drepper@redhat.com>
9894
9895         * scripts/output-format.sed: Fix bug in one of the s expressions
9896         which used / for one too many things.
9897
9898         * include/unistd.h: Declare __libc_close.
9899
9900 2002-12-07  Ulrich Drepper  <drepper@redhat.com>
9901
9902         * sysdeps/generic/bits/stdio-lock.h (_IO_lock_trylock): New define.
9903
9904 2002-12-07  Roland McGrath  <roland@redhat.com>
9905
9906         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Reintroduce changes
9907         from 2002-12-06, but remove unnecessary memset call without removing
9908         necessary copy of initialization image.
9909
9910         * Makerules ($(common-objpfx)format.lds): New target.
9911         (common-generated): Add it.
9912         ($(inst_libdir)/libc.so): Depend on that, and cat it into the result.
9913         * scripts/output-format.sed: New file.
9914         * Makefile (distribute): Add it.
9915
9916 2002-12-07  Ulrich Drepper  <drepper@redhat.com>
9917
9918         * sysdeps/generic/libc-tls.c: Include <sys/param.h>.
9919         Reported by Art Haas <ahaas@airmail.net>.
9920
9921 2002-12-07  Kenneth W. Chen  <kenneth.w.chen@intel.com>
9922
9923         * sysdeps/ia64/strncpy.S (strncpy): Clear ar.ec.  Fix .recovery4.
9924
9925 2002-12-07  Jakub Jelinek  <jakub@redhat.com>
9926
9927         * string/test-strncpy.c (do_random_tests): Improve test coverage.
9928
9929 2002-12-06  Ulrich Drepper  <drepper@redhat.com>
9930
9931         * test-skeleton.c (timeout_handler): Allow expected signal to be
9932         SIGALRM.
9933
9934         * wctype/wcfuncs.c: Add libc_hidden_def for iswalnum.
9935
9936         * sysdeps/posix/raise.c: Add libc_hidden_def for raise.
9937
9938 2002-12-07  Jakub Jelinek  <jakub@redhat.com>
9939
9940         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h [RTLD_PRIVATE_ERRNO]
9941         (SYSCALL_ERROR_HANDLER): Fix a pasto.
9942         Reported by Jeff Bailey <jbailey@nisa.net>.
9943
9944 2002-12-06  Ulrich Drepper  <drepper@redhat.com>
9945
9946         * sysdeps/generic/libc-tls.c: Undo last patch.
9947
9948         * include/wctype.h: Define iswalnum with libc_hidden_proto.
9949
9950         * include/signal.h: Define raise with libc_hidden_proto.
9951
9952         * sysdeps/unix/sysv/linux/fexecve.c (fexecve): Use __snprintf and
9953         __execve instead of snprintf and execve.
9954
9955         * sysdeps/x86_64/fpu/libm-test-ulps: Relax errors for float and double
9956         again a bit.
9957
9958 2002-12-06  Jakub Jelinek  <jakub@redhat.com>
9959
9960         * posix/Makefile (annexc.out): Add -I../dir for all sorted-dirs.
9961         * posix/annexc.c (fmt, testfmt): Remove -D_LIBC.
9962
9963 2002-12-06  Ulrich Drepper  <drepper@redhat.com>
9964
9965         * misc/syslog.c (log_cleanup): New function.
9966         (openlog): Use log_cleanup instead of __libc_mutex_unlock.
9967         (closelog): Likewise.
9968
9969         * elf/dl-close.c: Use __rtld_lock_* macros instead of __libc_lock_*.
9970         * elf/dl-iteratephdr.c: Likewise.
9971         * elf/dl-lookup.c: Likewise.
9972         * elf/dl-misc.c: Likewise.
9973         * elf/dl-open.c: Likewise.
9974         * elf/dl-support.c: Likewise.
9975         * elf/rtld.c: Likewise.
9976         * sysdeps/generic/ldsodefs.h: Likewise.
9977         * sysdeps/generic/bits/libc-lock.h: Define __rtld_lock_* macros.
9978         * sysdeps/mach/bits/libc-lock.h: Likewise.
9979         * sysdeps/mach/hurd/bits/libc-lock.h: Likewise.
9980
9981 2002-12-06  Roland McGrath  <roland@redhat.com>
9982
9983         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Cope with zero ALIGN.
9984
9985         * malloc/hooks.c [_LIBC && (USE___THREAD || (USE_TLS && !SHARED))]
9986         (malloc_starter, memalign_starter, free_starter): Don't define these.
9987         * malloc/malloc.c [_LIBC && (USE___THREAD || (USE_TLS && !SHARED))]:
9988         Don't declare them either.
9989         * malloc/arena.c (ptmalloc_init) [_LIBC && USE_TLS]: Don't call
9990         __pthread_initialize, so no need to set hooks to *_starter.
9991         (ptmalloc_init_minimal): New function, broken out of ptmalloc_init.
9992         [_LIBC && SHARED && USE_TLS && !USE___THREAD]
9993         (__libc_malloc_pthread_startup): New function.
9994         * malloc/Versions (libc: GLIBC_PRIVATE): New set, add that function.
9995
9996         * malloc/hooks.c (memalign_starter): New function.
9997         * malloc/malloc.c: Declare it.
9998         * malloc/arena.c (save_memalign_hook): New variable.
9999         (ptmalloc_init): Set __memalign_hook to memalign_starter.
10000
10001         * elf/dl-minimal.c (free): Clear the memory.
10002         (calloc): Just call malloc, knowing all memory it returns is cleared.
10003
10004         * sysdeps/generic/dl-tls.c (allocate_dtv): Use calloc instead of
10005         malloc and memset; calloc can avoid the zeroing when redundant.
10006         (_dl_tls_setup): Likewise.
10007         * elf/dl-load.c (decompose_rpath): Likewise.
10008         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Comment out memset
10009         call, since memory from sbrk at startup is already zero.
10010
10011         * elf/rtld.c (_dl_start, dl_main): TLS_INIT_TP macro now returns an
10012         error string for failure, null for success.  Update callers.
10013         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Likewise.
10014         * elf/dl-load.c (_dl_map_object_from_fd): Likewise.
10015
10016 2002-12-05  Jakub Jelinek  <jakub@redhat.com>
10017
10018         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (sendfile): Change
10019         args to i:iipi.
10020         (readahead): Change args to i:iii.
10021         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list (readahead):
10022         Change args to i:iii.
10023         * sysdeps/unix/sysv/linux/mips/syscalls.list (readahead): Change
10024         args to i:iiii.
10025
10026 2002-12-05  Roland McGrath  <roland@redhat.com>
10027
10028         * stdlib/cxa_finalize.c (__cxa_finalize): When given a null argument,
10029         call all functions rather than none.
10030         Reported by Mark P. Mitchell <mark@codesourcery.com>.
10031
10032 2002-12-04  Roland McGrath  <roland@redhat.com>
10033
10034         * locale/localeinfo.h [NL_CURRENT_INDIRECT]: Use attribute_tls_model_ie
10035         on _nl_current_LC_* variables.
10036
10037 2002-12-05  Ulrich Drepper  <drepper@redhat.com>
10038
10039         * dirent/bug-readdir1.c (main): Don't call closedir, just close
10040         the file descriptor.  This is testing what the bug report was about.
10041
10042 2002-12-04  Ulrich Drepper  <drepper@redhat.com>
10043
10044         * po/be.po: New file.
10045
10046         * argp/Makefile (tests): Add tst-argp1.
10047
10048         * sysdeps/unix/sysv/linux/alpha/bits/siginfo.h: (struct sigevent):
10049         Change type of _attribute to void*.
10050         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Likewise.
10051         * sysdeps/unix/sysv/linux/bits/siginfo.h: Likewise.
10052         * sysdeps/unix/sysv/linux/mips/bits/siginfo.h: Likewise.
10053         * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Likewise.
10054         * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Likewise.
10055
10056 2002-12-04  Roland McGrath  <roland@redhat.com>
10057
10058         * sysdeps/generic/ldsodefs.h (struct rtld_global): Move all [USE_TLS]
10059         members to the end, so a libpthread compiled with !USE_TLS will still
10060         find other members properly.
10061
10062         * sysdeps/i386/i486/bits/string.h (__strcpy_g): Add dummy output
10063         operand for DEST memory.  Fix dummy input operand to use SRC.
10064         Reported by Davin McCall <davmac@ozonline.com.au>.
10065
10066         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Account for TCB
10067         alignment when initializing the DTV entry.
10068
10069         * elf/dl-load.c (_dl_map_object_from_fd): If we hit a TLS segment
10070         when TLS has not been set up, try to set it up if we can.
10071         * elf/tst-tls4.c: Revert last change.
10072         * elf/tst-tls5.c: Likewise.
10073         * elf/tst-tls6.c: Likewise.
10074         * elf/tst-tls7.c: Likewise.
10075         * elf/tst-tls8.c: Likewise.
10076         * elf/tst-tls9.c: Likewise.
10077
10078         * sysdeps/generic/dl-tls.c [SHARED] (_dl_tls_setup): New function.
10079         * sysdeps/generic/ldsodefs.h: Declare it.
10080         * elf/Versions (ld: GLIBC_PRIVATE): Add it.
10081         * sysdeps/generic/libc-tls.c (init_slotinfo): New static inline
10082         function, broken out of __libc_setup_tls.
10083         (init_static_tls): Likewise.
10084         (__libc_setup_tls): Call them.
10085         (_dl_tls_setup): New function, uses new subroutines.
10086
10087         * elf/dl-close.c (free_slotinfo): Make argument pointer to pointer.
10088         Clear the pointer when returning true.
10089         (libc_freeres_fn) [SHARED]: If GL(dl_initial_dtv) is null, free the
10090         first element of the slotinfo list too.
10091
10092         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Define only if
10093         [SHARED].
10094
10095         * sysdeps/generic/ldsodefs.h (_dl_next_tls_modid): Declare as hidden.
10096         (_dl_determine_tlsoffset): Likewise.
10097
10098         * elf/rtld.c (_dl_initial_error_catch_tsd): Renamed from
10099         startup_error_tsd, made global.
10100         (dl_main): Update initialization.
10101         * elf/dl-tsd.c: Likewise.
10102         * sysdeps/generic/ldsodefs.h: Declare it.
10103
10104 2002-12-03  Ulrich Drepper  <drepper@redhat.com>
10105
10106         * manual/texinfo.tex: Update from latest upstream version.
10107
10108 2002-12-03  Roland McGrath  <roland@redhat.com>
10109
10110         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Include static TLS
10111         area surplus in calculation for sbrk call.
10112
10113         * iconvdata/cp1125.c: New file.
10114         * iconvdata/Makefile (distribute): Add it.
10115         (modules): Add CP1125.
10116         (gen-8bit-gap-modules): Add cp1125.
10117         * iconvdata/gconv-modules: Add CP1125, alias RUSCII.
10118         * iconvdata/tst-tables.sh: Add CP1125 to the list to test.
10119
10120 2002-12-03  Andreas Jaeger  <aj@suse.de>
10121
10122         * sysdeps/x86_64/fpu/libm-test-ulps: Regenerated.
10123
10124 2002-12-03  Ulrich Drepper  <drepper@redhat.com>
10125
10126         * sysdeps/posix/system.c (do_system): Make signal handler
10127         installation thread safe.
10128
10129 2002-12-02  Roland McGrath  <roland@redhat.com>
10130
10131         * sysdeps/unix/sysv/linux/alpha/syscalls.list (readahead): Change
10132         caller from EXTRA to -.
10133         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
10134         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
10135         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
10136
10137 2002-12-02  Carlos O'Donell  <carlos@baldric.uwo.ca>
10138
10139         * sysdeps/hppa/fpu/fesetround.c (fesetround): Use ~FE_DOWNWARD so both
10140         bits of RM are cleared.
10141
10142 2002-12-02  Roland McGrath  <roland@redhat.com>
10143
10144         * elf/tst-tls4.c: Define an unused TLS variable here, so that no lazy
10145         TLS setup is required.
10146         * elf/tst-tls5.c: Likewise.
10147         * elf/tst-tls6.c: Likewise.
10148         * elf/tst-tls7.c: Likewise.
10149         * elf/tst-tls8.c: Likewise.
10150         * elf/tst-tls9.c: Likewise.
10151
10152         * elf/rtld.c (dl_main): Remove [! SHARED] conditional from
10153         `if (GL(dl_tls_max_dtv_idx) > 0)' tests for doing TLS setup.
10154         * elf/dl-close.c (libc_freeres_fn): Check GL(dl_tls_dtv_slotinfo_list)
10155         for being null before calling free_slotinfo.
10156         * elf/dl-load.c (_dl_map_object_from_fd) [SHARED]: For PT_TLS in
10157         dynamic loading, bail with error if GL(dl_tls_max_dtv_idx) is zero.
10158
10159 2002-11-30  Bruno Haible  <bruno@clisp.org>
10160
10161         * iconv/gconv.h (__gconv_btowc_fct): New typedef.
10162         (struct __gconv_step): New field __btowc_fct.
10163         * wcsmbs/btowc.c (__btowc): Use the __btowc_fct shortcut if possible.
10164         * iconv/gconv_int.h (__BUILTIN_TRANSFORM): Renamed from
10165         __BUILTIN_TRANS.
10166         (__gconv_btwoc_ascii): New declaration.
10167         * iconv/gconv_simple.c (BUILTIN_TRANSFORMATION): Add BtowcFct argument.
10168         (__gconv_btwoc_ascii): New function.
10169         * iconv/gconv_builtin.h: Add BtowcFct argument to all
10170         BUILTIN_TRANSFORMATION invocations.
10171         * iconv/gconv_conf.c (BUILTIN_TRANSFORMATION): Add BtowcFct argument.
10172         * iconv/iconvconfig.c (BUILTIN_TRANSFORMATION): Likewise.
10173         * iconv/gconv_builtin.c (map): New field btowc_fct.
10174         (BUILTIN_TRANSFORMATION): Add BtowcFct argument. Use it to initialize
10175         btowc_fct field.
10176         (__gconv_get_builtin_trans): Initialize __btowc_fct field.
10177         * iconv/gconv_cache.c (find_module): Initialize __btowc_fct field.
10178         * iconv/gconv_db.c (gen_steps, increment_counter): Likewise.
10179         * wcsmbs/wcsmbsload.c (to_wc, to_mb): Likewise.
10180         * iconv/skeleton.c: Document STORE_REST and FROM_ONEBYTE.
10181         (gconv_init): Initialize __btowc_fct field.
10182         Undefine EXTRA_LOOP_ARGS and FROM_ONEBYTE at the end.
10183         * iconv/loop.c: Document ONEBYTE_BODY.
10184         (gconv_btowc, FROM_ONEBYTE): Define if ONEBYTE_BODY is defined.
10185         Undefine ONEBYTE_BODY at the end.
10186         * iconvdata/8bit-generic.c (ONEBYTE_BODY): New macro.
10187         * iconvdata/8bit-gap.c (NONNUL): New macro.
10188         (BODY for FROM_LOOP): Use it.
10189         (ONEBYTE_BODY): New macro.
10190         * iconvdata/isiri-3342.c (HAS_HOLES): Set to 1.
10191         (NONNUL): New macro.
10192         * iconvdata/ansi_x3.110.c (ONEBYTE_BODY): New macro.
10193         * iconvdata/armscii-8.c (ONEBYTE_BODY): New macro.
10194         * iconvdata/cp1255.c (ONEBYTE_BODY): New macro.
10195         * iconvdata/cp1258.c (ONEBYTE_BODY): New macro.
10196         * iconvdata/tcvn5712-1.c (ONEBYTE_BODY): New macro.
10197         * iconvdata/big5.c (ONEBYTE_BODY): New macro.
10198         * iconvdata/big5hkscs.c (ONEBYTE_BODY): New macro.
10199         * iconvdata/euc-cn.c (ONEBYTE_BODY): New macro.
10200         * iconvdata/euc-jp.c (ONEBYTE_BODY): New macro.
10201         * iconvdata/euc-jisx0213.c (ONEBYTE_BODY): New macro.
10202         * iconvdata/euc-kr.c (ONEBYTE_BODY): New macro.
10203         * iconvdata/euc-tw.c (ONEBYTE_BODY): New macro.
10204         * iconvdata/gbk.c (ONEBYTE_BODY): New macro.
10205         * iconvdata/gb18030.c (ONEBYTE_BODY): New macro.
10206         * iconvdata/ibm932.c: Include <stdbool.h>.
10207         (TRUE, FALSE): Remove macros.
10208         (BODY for FROM_LOOP): Remove unused variable rp1.
10209         (ONEBYTE_BODY): New macro.
10210         (BODY for TO_LOOP): Use bool.
10211         * iconvdata/ibm932.h (__ibm932sb_to_ucs4_idx): Remove array.
10212         * iconvdata/ibm943.c: Include <stdbool.h>.
10213         (TRUE, FALSE): Remove macros.
10214         (BODY for FROM_LOOP): Remove unused variable rp1.
10215         (ONEBYTE_BODY): New macro.
10216         (BODY for TO_LOOP): Use bool.
10217         * iconvdata/ibm943.h (__ibm943sb_to_ucs4_idx): Remove array.
10218         * iconvdata/iso8859-1.c (ONEBYTE_BODY): New macro.
10219         * iconvdata/iso_6937-2.c (ONEBYTE_BODY): New macro.
10220         * iconvdata/iso_6937.c (ONEBYTE_BODY): New macro.
10221         * iconvdata/johab.c (ONEBYTE_BODY): New macro.
10222         * iconvdata/sjis.c (ONEBYTE_BODY): New macro.
10223         * iconvdata/shift_jisx0213.c (ONEBYTE_BODY): New macro.
10224         * iconvdata/t.61.c (ONEBYTE_BODY): New macro.
10225         * iconvdata/uhc.c (ONEBYTE_BODY): New macro.
10226         * iconvdata/gbbig5.c: Tweak comment.
10227
10228 2002-12-02  Ulrich Drepper  <drepper@redhat.com>
10229
10230         * po/fi.po: Update from translation team.
10231
10232 2002-12-01  Roland McGrath  <roland@redhat.com>
10233
10234         * sysdeps/unix/sysv/linux/getdents.c (__GETDENTS): Fix condition
10235         testing getdents64 return value.
10236
10237         * scripts/versions.awk: Don't pass -n flag to sort command.
10238
10239         * posix/bug-regex13.c: Include <string.h>.
10240
10241         * sysdeps/generic/libc-start.c (__libc_start_main): Do
10242         DL_SYSDEP_OSCHECK here.
10243         * sysdeps/unix/sysv/linux/init-first.c (init): Not here.
10244         * sysdeps/unix/sysv/linux/dl-osinfo.h: Include <fcntl.h>.
10245
10246         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Bail if
10247         argument TCBSIZE <= TLS_INIT_TCB_SIZE, not just if it's zero.
10248
10249         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Check l_tls_offset
10250         instead of l_type to decide whether to use TLS_DTV_UNALLOCATED.
10251
10252         * include/link.h: Comment typo fix.
10253
10254 2002-12-01  Roland McGrath  <roland@frob.com>
10255
10256         * sysdeps/mach/hurd/bits/posix_opt.h (_POSIX_FSYNC): Set to 200112L.
10257         (_POSIX_SPAWN, _POSIX_MAPPED_FILES, _POSIX_MEMLOCK_RANGE,
10258         _POSIX_MEMORY_PROTECTION): Likewise.
10259         (_POSIX_POLL, _POSIX_SELECT): Removed.
10260
10261 2002-11-28  Ulrich Drepper  <drepper@redhat.com>
10262
10263         * sysdeps/unix/sysv/linux/bits/posix_opt.h: Define macros which
10264         require it to 200112L.  Remove _POSIX_POLL and _POSIX_SELECT.
10265
10266 2002-11-28  Jakub Jelinek  <jakub@redhat.com>
10267
10268         * sysdeps/unix/alpha/sysdep.S: Change defined(USE___THREAD) to
10269         USE___THREAD.
10270         * sysdeps/unix/sysv/linux/alpha/sysdep.h (inline_syscall*): Avoid
10271         "=v" constraints.
10272
10273 2002-11-28  Ulrich Drepper  <drepper@redhat.com>
10274
10275         * sysdeps/unix/sysv/linux/x86_64/vfork.S: Don't trash the CPU's
10276         branch prediction buffers by using unpaired call/ret.
10277
10278 2002-11-27  Ulrich Drepper  <drepper@redhat.com>
10279
10280         * sysdeps/unix/sysv/linux/i386/sysdep.h (ASMFMT_2): Fix typo in
10281         first parameters constraint string.
10282         (ASMFMT_3): Likewise.  Patch by stefan.lauterbach@mincom.de.
10283
10284 2002-11-27  Isamu Hasegawa  <isamu@yamato.ibm.com>
10285
10286         * posix/regcomp.c (parse_expression): Set the bit since the back
10287         reference is used in the regular expression.
10288         * posix/regex_internal.c (re_node_set_init_1): Make it clean in case
10289         of malloc failure.
10290         (re_node_set_init_copy): Likewise.
10291         * posix/regex_internal.h (state_array_t): New structure.
10292         (re_sub_match_last_t): Likewise.
10293         (re_sub_match_top_t): Likewise.
10294         (re_match_context_t): Add new members.
10295         (re_dfa_t): Likewise.
10296         * posix/regexec.c (re_search_internal): Invoke prune_impossible_nodes
10297         to check the matching is really correct, and retry if failed.
10298         Move the routin pruning the impossible nodes from here, ...
10299         (prune_impossible_nodes): To this function.
10300         (check_matching): Invoke check_subexp_matching_top, and replace
10301         redundant checking with transit_state_bkref invocation.
10302         (proceed_next_node): Replace strncmp with memcmp.  Reported by
10303         Paolo Bonzini  <bonzini@gnu.org>.
10304         (update_cur_sifted_state): Remove search_subexp invocation.
10305         (search_subexp): Remove this function.
10306         (check_dst_limits_calc_pos): Use search_cur_bkref_entry for
10307         optimization.
10308         (sift_states_bkref): Use search_cur_bkref_entry for optimization.
10309         Remove unused invocation of match_ctx_add_entry.
10310         (transit_state): Invoke check_subexp_matching_top.
10311         (check_subexp_matching_top): New function.
10312         (transit_state_bkref): Remove unused array.
10313         Merge transit_state_bkref_loop.
10314         (transit_state_bkref_loop): Use get_subexp instead of
10315         sift_states_backward.  Use search_cur_bkref_entry for optimization.
10316         Merge this function to transit_state_bkref.
10317         (get_subexp): New function.
10318         (get_subexp_sub): Likewise.
10319         (find_subexp_node): Likewise.
10320         (check_arrival): Likewise.
10321         (check_arrival_expand_ecl): Likewise.
10322         (check_arrival_expand_ecl_sub): Likewise.
10323         (expand_bkref_cache): Likewise.
10324         (match_ctx_init): Initialize new members.
10325         (match_ctx_clean): New function.
10326         (match_ctx_free): Release new members.
10327         (match_ctx_free_subtops): New function.
10328         (match_ctx_add_entry): Fix indent.
10329         (search_cur_bkref_entry): New function.
10330         (match_ctx_add_subtop): Likewise.
10331         (match_ctx_add_sublast): Likewise.
10332
10333 2002-11-25  Ulrich Drepper  <drepper@redhat.com>
10334
10335         * iconv/Makefile (tests): Remove tst-iconv4.c
10336         * iconv/tst-iconv4.c: Moved to...
10337         * iconvdata/tst-iconv4.c: ...here.  New file.
10338         * iconvdata/Makefile (tests): Add tst-iconv4.  Add dependencies.
10339
10340 2002-11-25  Roland McGrath  <roland@redhat.com>
10341
10342         * inet/test-ifaddrs.c (main: addr_string): Handle null SA.
10343         Grok AF_LINK if defined.
10344         From Momchil Velikov <velco@fadata.bg>.
10345
10346         * sysdeps/gnu/ifaddrs.c (getifaddrs): If ioctl fails for netmask,
10347         brdaddr, or dstaddr, just set those pointers to null and don't fail.
10348         Reported by Momchil Velikov <velco@fadata.bg>.
10349
10350         * sysdeps/generic/ifreq.h (__if_nextreq) [_HAVE_SA_LEN]: If sa_len
10351         is > sizeof IFR->ifa_addr, advance past the whole longer length.
10352         (__ifreq): Count up NIFS that way too.
10353         Reported by Momchil Velikov <velco@fadata.bg>.
10354
10355         * sysdeps/mach/hurd/lchmod.c: Include <fcntl.h>.
10356
10357         * sysdeps/mach/hurd/i386/init-first.c: Include <ldsodefs.h>
10358         and <fpu_control.h>.
10359
10360 2002-11-24  Ulrich Drepper  <drepper@redhat.com>
10361
10362         * elf/elf.h (EM_ST19): Fix typo.
10363
10364 2002-11-25  Jakub Jelinek  <jakub@redhat.com>
10365
10366         * include/errno.h (__set_errno): Define as errno = val
10367         unconditionally.
10368
10369 2002-11-24  Roland McGrath  <roland@redhat.com>
10370
10371         * sysdeps/posix/readv.c: Include <errno.h>, use __set_errno macro.
10372         * sysdeps/posix/writev.c: Likewise.
10373         From Momchil Velikov <velco@fadata.bg>.
10374
10375         * elf/dl-error.c [! _LIBC_REENTRANT]: Use a static variable instead of
10376         calling *GL(dl_error_catch_tsd) for a thread-local location.
10377         * elf/rtld.c (startup_error_tsd): Conditionalize on [_LIBC_REENTRANT].
10378         (dl_main): Same for GL(dl_error_catch_tsd) initialization.
10379         * elf/dl-tsd.c: Conditionalize contents on [_LIBC_REENTRANT].
10380
10381         * libio/iofflush.c: Add libc_hidden_def.
10382         * libio/iofwrite.c: Likewise.
10383         * sysdeps/generic/sigtimedwait.c: Likewise.
10384         * sysdeps/generic/sigwaitinfo.c: Likewise.
10385         * sysdeps/posix/sigwait.c: Likewise.
10386         Reported by Momchil Velikov <velco@fadata.bg>.
10387
10388         * inet/inet_lnaof.c (inet_lnaof): Change return type to in_addr_t
10389         to match <arpa/inet.h> declaration.
10390         * inet/inet_netof.c (inet_netof): Likewise.
10391         * inet/inet_mkadr.c (inet_makeaddr): Likewise for argument types.
10392         Reported by Momchil Velikov <velco@fadata.bg>.
10393
10394         * configure.in: Skip AUTOCONF check under --without-cvs.
10395         * configure: Regenerated.
10396
10397         * posix/Makefile (headers): Add bits/pthreadtypes.h.
10398         * sysdeps/unix/sysv/linux/Makefile (sysdep_heaers): Don't add it here.
10399         * sysdeps/unix/sysv/linux/Dist: Remove it from the list.
10400
10401 2002-11-24  Andreas Schwab  <schwab@suse.de>
10402
10403         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Support inline syscall
10404         with six arguments.
10405
10406 2002-11-19  Jim Meyering  <jim@meyering.net>
10407
10408         * time/mktime.c (__mon_yday, __mktime_internal) [!_LIBC]: Declare
10409         as `static'.
10410         * time/strptime.c (__mon_yday) [!_LIBC]: Declare as `static'.
10411
10412 2002-11-23  Roland McGrath  <roland@redhat.com>
10413
10414         * scripts/abilist.awk: Avoid strtonum function, not there in mawk.
10415         Just produce hex output for datum sizes.
10416
10417         * elf/Makefile ($(objpfx)librtld.mk): Tighten up regexp.
10418         Reported by Luca Barbieri <ldb@ldb.ods.org>.
10419
10420 2002-11-20  Steven Munroe  <sjmunroe@us.ibm.com>
10421
10422         * sysdeps/unix/sysv/linux/powerpc/bits/msq.h (msqid_ds)
10423         [__WORDSIZE == 32]: Only PPC32 requires __unused1, __unused2,
10424         and __unused3 fields.
10425         * sysdeps/unix/sysv/linux/powerpc/bits/sem.h (semid_ds)
10426         [__WORDSIZE == 32]: Only PPC32 requires __unused1
10427         and __unused2 fields.
10428         * sysdeps/unix/sysv/linux/powerpc/bits/shm.h (shmid_ds)
10429         [__WORDSIZE == 32]: Only PPC32 requires __unused1, __unused2,
10430         __unused3, and __unused4 fields.
10431
10432         * csu/gmon-start.c (__gmon_start__): Always use TEXT_START macro to
10433         obtain lowest address for profiling in __monstartup call.
10434
10435 2002-11-21  Roland McGrath  <roland@redhat.com>
10436
10437         * sysdeps/ia64/fpu/Makefile (libm-sysdep_routines): Remove redunant
10438         $(calls) $(calls:=f) $(long-c-$(long-double-fcts)).
10439
10440         * locale/localeinfo.h (struct locale_data): Revert last change.
10441
10442         * sysdeps/unix/sysv/linux/ia64/syscalls.list (s_exit_group): Add it.
10443         From Ian Wienand <ianw@gelato.unsw.edu.au>.
10444
10445         * sysdeps/unix/sysv/linux/ia64/sysdep.h (__NR_pread): Define to
10446         __NR_pread64 if not defined.
10447         (__NR_pwrite): Define to __NR_pwrite64 if not defined.
10448         From Ian Wienand <ianw@gelato.unsw.edu.au>.
10449
10450 2002-11-21  Roland McGrath  <roland@frob.com>
10451
10452         * sysdeps/mach/hurd/i386/init-first.c (posixland_init): Set
10453         __libc_multiple_libcs here.  Call __setfpucw.
10454
10455 2002-11-21  Ulrich Drepper  <drepper@redhat.com>
10456
10457         * elf/Makefile (tests): Don't run test-arrayX tests for now.
10458
10459         * sysdeps/unix/sysv/linux/bits/sched.h: Add new CLONE_* flags.
10460         * sysdeps/unix/sysv/linux/i386/clone.S: Add support for
10461         CLONE_CHILD_*TID flags.
10462
10463 2002-11-20  Andreas Jaeger  <aj@suse.de>
10464
10465         * sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h (SIGCONTEXT):
10466         We pass struct ucontext on x86-64.
10467         (GET_PC): Adjust.
10468         (GET_FRAME): Adjust.
10469         (GET_STACK): Adjust.
10470
10471 2002-11-20  Roland McGrath  <roland@redhat.com>
10472
10473         * sysdeps/powerpc/powerpc32/dl-machine.c [! SHARED]: Further
10474         conditionalize [! DO_VERSIONING] #error.
10475
10476         * scripts/abilist.awk: Grok function descriptor symbols.
10477
10478         * intl/tst-gettext.c (main): Check return values from setlocale.
10479         Add necessary unsetenv's to make LANG=existing-locale check work.
10480
10481         * intl/tst-gettext.sh: Use mkdir -p.  Copy test files unconditionally,
10482         so aborted prior runs don't confuse things.
10483
10484         * locale/localeinfo.h (struct locale_data: union locale_data_value):
10485         Use uintptr_t instead of unsigned int for `word' member.
10486         (_NL_CURRENT_WORD): Cast to uint32_t.
10487
10488         * posix/bug-regex5.c (main): Use union to extract _NL_COLLATE_NRULES
10489         value.
10490
10491 2002-11-20  Ulrich Drepper  <drepper@redhat.com>
10492
10493         * elf/tls-macros.h: Add IA-64 definitions.
10494         Patch by Ian Wienand <ianw@gelato.unsw.edu.au>.
10495
10496         * iconv/Makefile (tests): Add tst-iconv4.
10497         * iconv/tst-iconv4.c: New file.
10498
10499         * iconv/gconv_simple.c (internal_ucs4le_loop_unaligned): Return
10500         __GCONV_EMPTY_INPUT only if input is really empty.  Otherwise
10501         __GCONV_INCOMPLETE_INPUT.
10502         (ucs4le_internal_loop): Likewise.
10503         (ucs4le_internal_loop_unaligned): Likewise.
10504         * iconvdata/unicode.c (PREPARE_LOOP): Likewise.
10505         * iconvdata/utf-16.c (PREPARE_LOOP): Likewise.
10506         * iconvdata/utf-32.c (PREPARE_LOOP): Likewise.
10507
10508         * iconv/loop.c (LOOPFCT): First test for empty input then for full
10509         output buffer.
10510
10511         * inet/getnameinfo.c: Use extend_alloca where appropriate.
10512         * sysdeps/posix/getaddrinfo.c: Likewise.
10513
10514         * include/alloca.h (extend_alloca): New define.  Based on stack
10515         direction it'll try to append to the previouls allocated buffer.
10516
10517 2002-11-07  Thorsten Kukuk  <kukuk@suse.de>
10518
10519         * sysdeps/posix/getaddrinfo.c (gaih_inet): If AF_UNSPEC is set,
10520         use the same service for AF_INET and AF_INET6.
10521
10522 2002-11-19  Ulrich Drepper  <drepper@redhat.com>
10523
10524         * intl/localealias.c (read_alias_file): Use only about 400 bytes
10525         of stack space instead of 16k.
10526
10527 2002-11-18  Wolfram Gloger  <wg@malloc.de>
10528
10529         * malloc/arena.c
10530         (ptmalloc_lock_all, ptmalloc_unlock_all, ptmalloc_unlock_all2): Do
10531         nothing if not initialized.  Bug report from Marcus Brinkmann
10532         <Marcus.Brinkmann@ruhr-uni-bochum.de>.
10533
10534 2002-11-19  Roland McGrath  <roland@redhat.com>
10535
10536         * posix/Versions (libc: GLIBC_2.3.2): Add sched_getaffinity and
10537         sched_setaffinity.
10538
10539         * configure.in (libc_cv_gcc_dwarf2_unwind_info check): Use libraries
10540         `-lgcc -lgcc_eh -lgcc', not just `-lgcc -lgcc_eh' in link commands for
10541         test leading to libc_cv_gcc_dwarf2_unwind_info=no_registry_needed.
10542         * configure: Regenerated.
10543
10544 2002-11-19  Ulrich Drepper  <drepper@redhat.com>
10545
10546         * include/dlfcn.h: __libc_dlopen is now a macro calling
10547         __libc_dlopen_mode with the extra parameter RTLD_LAZY.
10548         (__libc_dlopen_mode): New prototype.
10549         * elf/dl-libc.c (__libc_dlopen_mode): Renamed from __libc_dlopen.  Add
10550         new parameter.  Store new parameter in mode field of structure passed
10551         to do_dlopen.
10552         (struct do_dlopen_args): Add new field mode.
10553         (do_dlopen): Pass mode from parameter structure to _dl_open.
10554
10555 2002-11-11  Randolf Chung  <tausq@debian.org>
10556
10557         * sysdeps/unix/sysv/linux/hppa/bits/fcntl.h [__USE_FILE_OFFSET64]
10558         (F_GETLK, F_SETLK, F_SETLKW): Define to F_*64 versions.
10559         * sysdeps/unix/sysv/linux/hppa/fcntl.c: New file.
10560
10561         * sysdeps/hppa/fpu/libm-test-ulps: New file (generated).
10562
10563         * sysdeps/hppa/Makefile (CFLAGS-rtld.c): New variable.
10564         Set -mdisable-fpregs for this file.
10565
10566 2002-11-11  Carlos O'Donell  <carlos@baldric.uwo.ca>
10567
10568         * sysdeps/unix/sysv/linux/configure.in:
10569         Make 2.4.19 minimum linux kernel for hppa, and add unwind symbols
10570         from gcc-3.0 era for backwards compatibility.
10571         * sysdeps/unix/sysv/linux/configure: Regenerate.
10572
10573         * sysdeps/unix/sysv/linux/hppa/sys/ucontext.h:
10574         Define mcontext_t as a sigcontext.
10575
10576 2002-11-18  Roland McGrath  <roland@redhat.com>
10577
10578         * dlfcn/dlerror.c (fini): New function, __attribute__ ((destructor)).
10579         Free memory in `last_result' if it was used.
10580
10581         * resolv/nss_dns/dns-network.c (getanswer_r): In BYNAME case, search
10582         all aliases for one that matches the "<dotted-quad>.IN-ADDR.ARPA" form.
10583         Do the parsing inline instead of copying strings and calling
10584         inet_network, and properly skip all alias names not matching the form.
10585
10586         * manual/pattern.texi (Variable Substitution): Fix # and ## examples.
10587
10588 2002-11-17  Ulrich Drepper  <drepper@redhat.com>
10589
10590         * manual/pattern.texi (Wordexp Example): Fix sample code.
10591
10592         * sysdeps/unix/sysv/linux/i386/clone.S: Initialize word in the
10593         childs stack which will be loaded into the %esi register.
10594
10595 2002-11-14  Paul Eggert  <eggert@twinsun.com>
10596
10597         * resolv/nss_dns/dns-network.c (getanswer_r): Check for buffer
10598         overflow when skipping the question part and when unpacking aliases.
10599
10600 2002-11-15  Roland McGrath  <roland@redhat.com>
10601
10602         * math/Makefile (libm-calls): Remove s_copysign, s_isinf, s_isnan,
10603         s_finite, s_modf, s_scalbn, s_frexp, m_ldexp, s_signbit.
10604         Instead add $(calls:s_%=m_%) to get m_* versions of them all.
10605
10606 2002-11-15  Jakub Jelinek  <jakub@redhat.com>
10607
10608         * sysdeps/i386/dl-machine.h (elf_machine_rela): Handle R_386_COPY.
10609         * sysdeps/arm/dl-machine.h (elf_machine_rela): Handle R_ARM_COPY.
10610
10611 2002-11-15  Roland McGrath  <roland@redhat.com>
10612
10613         * math/Makefile (libm-calls): Change s_ldexp to m_ldexp.
10614         * Makerules ($(+sysdir_pfx)sysd-rules): Emit pattern rules for m_%.[Sc]
10615         from sysdeps/.../s_%.[Sc] with commands $(+make-include-of-dep).
10616         (+make-include-of-dep): New canned sequence.
10617
10618         * stdlib/canonicalize.c (__realpath): Check for malloc failure.
10619         From Dmitry V. Levin <ldv@altlinux.org>.
10620
10621 2002-11-14  Roland McGrath  <roland@redhat.com>
10622
10623         * sysdeps/generic/errno.c (__libc_errno): Remove alias.
10624         * inet/herrno.c (__libc_h_errno): Likewise.
10625         * resolv/res_libc.c (__libc_res): Likewise.
10626         [USE___THREAD]: Use this in place of [USE_TLS && HAVE___THREAD].
10627         (__res_state) [! USE___THREAD]: Don't define as weak.
10628         * csu/Versions: Revert last change.
10629         * resolv/Versions: Revert last change.
10630
10631         * Makerules ($(common-objpfx)%.make): New pattern rule.
10632         * tls.make.c: New file.
10633         * Makefile (distribute): Add it.
10634
10635         * sysdeps/generic/errno.c [! USE___THREAD]
10636         [HAVE_ELF && SHARED && DO_VERSIONING] (errno, _errno): Declare these
10637         with compat_symbol so they are not link-time visible.
10638         [! USE___THREAD] (__libc_errno): New alias for errno.
10639         * csu/Versions [!(USE_TLS && HAVE___THREAD)] (libc: GLIBC_PRIVATE):
10640         Add __libc_errno here.
10641         * inet/herrno.c [USE___THREAD]: Use this conditional
10642         in place of [USE_TLS && HAVE___THREAD].
10643         [! USE___THREAD] [HAVE_ELF && SHARED && DO_VERSIONING]
10644         (h_errno, _h_errno): Declare these with compat_symbol so they are not
10645         link-time visible.
10646         [! USE___THREAD] (__libc_h_errno): New alias for h_errno.
10647         * resolv/res_libc.c [! USE___THREAD]
10648         [HAVE_ELF && SHARED && DO_VERSIONING] (_res): Likewise.
10649         (_res): Use __attribute__ ((section (".bss"))) so we can have an alias.
10650         (__libc_res): Define as alias for _res.
10651         * resolv/Versions [!(USE_TLS && HAVE___THREAD)] (libc: GLIBC_PRIVATE):
10652         Add __libc_h_errno and __libc_res here.
10653
10654 2002-11-14  Jakub Jelinek  <jakub@redhat.com>
10655
10656         * csu/Versions (errno): Move STT_TLS symbol to GLIBC_PRIVATE for now.
10657         * resolv/Versions (h_errno, _res): Likewise.
10658
10659 2002-11-14  Roland McGrath  <roland@redhat.com>
10660
10661         * Makerules (%.dynsym): Remove $(objpfx) from target and dep.
10662         (%.symlist): Likewise.
10663
10664 2002-11-13  Roland McGrath  <roland@redhat.com>
10665
10666         * scripts/abilist.awk: New file.
10667         * Makefile (distribute): Add it.
10668         * Makerules ($(objpfx)%.dynsym, $(objpfx)%.symlist): New rules.
10669         (tests): Depend on .symlist file for each $(install-lib.so-versioned).
10670         [$(subdir) = elf] (tests): Depend on libc.symlist.
10671         (generated, common-generated): Add those files.
10672
10673         * aclocal.m4 (LIBC_PROG_BINUTILS): Check for objdump, set OBJDUMP.
10674         * configure: Regenerated.
10675         * config.make.in (OBJDUMP): New variable, substituted by configure.
10676
10677         * malloc/mcheck.c (struct hdr): New members `block' and `magic2'.
10678         (mallochook, reallochook): Set them up.
10679         (checkhdr): Check HDR->magic2 value.
10680         (freehook): Reset HDR->magic2.
10681         (memalignhook): New static function.
10682         (old_memalign_hook): New static variable.
10683         (mcheck, reallochook): Set __memalign_hook to memalignhook.
10684
10685         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage): Zero the space
10686         for the new TCB.
10687
10688 2002-11-13  Andreas Jaeger  <aj@suse.de>
10689
10690         * sysdeps/unix/sysv/linux/x86_64/sigaction.c: Check for visibility
10691         attribute.
10692         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
10693
10694 2002-11-11  Paul Eggert  <eggert@twinsun.com>
10695
10696         * manual/crypt.texi (Cryptographic Functions): Mention that
10697         the MD5 one-way algorithm is compatible with BSD's.
10698
10699 2002-11-11  Isamu Hasegawa  <isamu@yamato.ibm.com>
10700
10701         * posix/regex_internal.c (re_string_skip_chars): Also return the last
10702         wide character.
10703         (re_string_reconstruct): Calculate the context by itself when the
10704         offset points out of the valid range.
10705         (re_string_context_at): Use wide character when MB_CUR_MAX > 1.
10706         * posix/regex_internal.h (WIDE_NEWLINE_CHAR): New macro.
10707         (IS_WIDE_WORD_CHAR): New macro.
10708         (IS_WIDE_NEWLINE): New macro.
10709
10710 2002-11-12  Andreas Jaeger  <aj@suse.de>
10711
10712         * sysdeps/x86_64/strchr.S: Don't use one register for two
10713         purposes, this fixes a bug noticed by test-strchr.c.
10714
10715         * sysdeps/x86_64/strcat.S: Fix algorithm to align source pointer
10716         correctly.
10717
10718 2002-11-12  Roland McGrath  <roland@redhat.com>
10719
10720         * libio/libioP.h [_LIBC && !SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_1)]
10721         (_G_IO_NO_BACKWARD_COMPAT): Define it.
10722
10723         * sysdeps/ia64/dl-fptr.c [_LIBC_REENTRANT]: Include <ia64intrin.h>
10724         instead of <pt-machine.h>.
10725         [_LIBC_REENTRANT] (lock, unlock): Use __sync_lock_* macros instead of
10726         testandset.
10727         From Ian Wienand <ianw@gelato.unsw.edu.au>.
10728
10729 2002-11-10  Roland McGrath  <roland@redhat.com>
10730
10731         * libio/bug-wfflush.c (do_test): Call rewind instead of fsetpos.
10732         Call fputs instead of fwprintf (simpler to follow in debugger).
10733
10734         * crypt/md5-crypt.c: Doc fix.
10735
10736         * sysdeps/unix/make-syscalls.sh: Insert $(make-target-directory) at
10737         the beginning of generated target commands.
10738
10739         * csu/Makefile ($(objpfx)crti.o, $(objpfx)crtn.o): Add explicit
10740         dependencies for these in case implicit rule search skipped the
10741         nonexistent source directory.
10742         * sysdeps/gnu/Makefile ($(objpfx)errlist.d): Give this rule all the
10743         files with $(object-suffixes) as targets too.
10744         * Makerules [no_deps && objpfx] (before-compile): Add $(objpfx).
10745         and a target for it using $(make-target-directory).
10746
10747         * Rules (before-compile): Add $(common-objpfx)bits/stdio-lim.h.
10748
10749 2002-11-10  Roland McGrath  <roland@frob.com>
10750
10751         * sysdeps/unix/sysv/linux/bits/pthreadtypes.h: Moved to ...
10752         * sysdeps/generic/bits/pthreadtypes.h: ... here.
10753
10754         * sysdeps/mach/hurd/fcntl.c (__libc_fcntl): Treat a struct flock with
10755         l_start == 0 and l_len == 1 as we do l_len == 0.
10756
10757 2002-11-10  Ulrich Drepper  <drepper@redhat.com>
10758
10759         * po/da.po: Update from translation team.
10760
10761 2002-11-10  Roland McGrath  <roland@redhat.com>
10762
10763         * config.make.in (includedir): New variable, substituted by configure.
10764         Reported missing by Jocelyn Fournier <joc@presence-pc.com>.
10765         * Makeconfig (includedir): Use $(prefix), not $(exec_prefix).
10766
10767 2002-11-10  Andreas Jaeger  <aj@suse.de>
10768
10769         * sysdeps/unix/sysv/linux/x86_64/sys/ucontext.h (enum): Add
10770         REG_OLDMASK and REG_CR2 to synch with kernel header.
10771         (NGREG): Increase.
10772
10773         * nss/getXXent.c (GETFUNC_NAME): Use union type to avoid strict
10774         aliasing problem.
10775         * nss/getXXbyYY_r.c (INTERNAL): Likewise.
10776         * nss/getnssent_r.c (__nss_getent_r): Likewise.
10777         (__nss_setent): Likewise.
10778         (__nss_getent_r): Likewise.
10779         * inet/getnetgrent_r.c (innetgr): Likewise.
10780         (__internal_setnetgrent_reuse): Likewise.
10781         (internal_getnetgrent_r): Likewise.
10782         * inet/ether_hton.c (ether_hostton): Likewise.
10783         * inet/ether_ntoh.c (ether_ntohost): Likewise.
10784         * sunrpc/netname.c (netname2user): Likewise.
10785         * sunrpc/publickey.c (getpublickey): Likewise.
10786         (getsecretkey): Likewise.
10787
10788 2002-11-09  Marcus Brinkmann  <marcus@gnu.org>
10789
10790         * sysdeps/mach/hurd/i386/ioperm.c (ioperm): Correct off by one
10791         error in range calculation.
10792
10793 2002-10-09  Jakub Jelinek  <jakub@redhat.com>
10794
10795         * string/test-strspn.c (do_test): Ensure zero termination.
10796         * string/test-strpbrk.c (do_test): Likewise.
10797         * string/test-strncmp.c (stupid_strncmp): Use strnlen, not strlen.
10798         * string/test-strncpy.c (stupid_strncpy): Likewise.
10799         * string/test-stpncpy.c (stupid_stpncpy): Likewise.
10800
10801 2002-10-08  Roland McGrath  <roland@redhat.com>
10802
10803         * string/test-string.h (test_init): Fill BUF1 and BUF2 with
10804         nonzero characters.
10805
10806 2002-09-22  H.J. Lu  <hjl@gnu.org>
10807
10808         * sysdeps/unix/sysv/linux/mmap64.c (MMAP2_PAGE_SHIFT): Renamed
10809         from PAGE_SHIFT.  Define if not defined.  Check MMAP2_PAGE_SHIFT
10810         only if __NR_mmap2 is defined.
10811
10812         * sysdeps/unix/sysv/linux/powerpc/mmap64.c: Moved to ...
10813         * sysdeps/unix/sysv/linux/mmap64.c: ... here.
10814         * sysdeps/unix/sysv/linux/hppa/mmap64.c: File removed.
10815         * sysdeps/unix/sysv/linux/sparc/sparc32/mmap64.c: FIle removed,
10816
10817 2002-11-08  Jakub Jelinek  <jakub@redhat.com>
10818
10819         * posix/bug-regex13.c (tests): Add new test.
10820
10821         * string/test-strchr.c (stupid_strchr): New function.
10822         (do_random_tests): Make sure the string is zero terminated.
10823         * string/test-strpbrk.c (stupid_strpbrk): New function.
10824         (do_random_tests): Make sure the string is zero terminated.
10825         * string/test-strcmp.c (stupid_strcmp): New function.
10826         (do_random_tests): Make sure the strings are zero terminated.
10827         * string/test-strspn.c (stupid_strspn): New function.
10828         (simple_strspn): Rename rej argument to acc.
10829         (do_random_tests): Make sure the string is zero terminated.
10830         * string/test-strcspn.c (stupid_strcspn): New function.
10831         * string/test-strncpy.c (stupid_strncpy): New function.
10832         * string/test-stpncpy.c (stupid_stpncpy): New function.
10833         * string/test-strncmp.c (stupid_strncmp): New function.
10834         (do_random_tests): Make sure the strings are zero terminated.
10835         * string/test-string.h (impl_t): Change test into long.
10836         (IMPL): Add __attribute__((aligned (sizeof (void *)))).
10837
10838 2002-11-08  Roland McGrath  <roland@redhat.com>
10839
10840         * sysdeps/ia64/elf/configure.in: Add TLS check.
10841         From Ian Wienand <ianw@cse.unsw.edu.au>.
10842         * sysdeps/ia64/elf/configure: Regenerated.
10843
10844 2002-11-07  Roland McGrath  <roland@redhat.com>
10845
10846         * libio/fileops.c (_IO_new_file_overflow): Use INTUSE(_IO_do_write) in
10847         place of _IO_new_do_write.
10848         [_LIBC] (_IO_do_write): Define as macro for _IO_new_do_write and
10849         #undef before versioned_symbol use.
10850
10851 2002-11-07  Richard Henderson  <rth@redhat.com>
10852
10853         * configure.in (ASM_ALPHA_NG_SYMBOL_PREFIX): Remove test.
10854         * configure: Regenerated.
10855         * config.h.in (ASM_ALPHA_NG_SYMBOL_PREFIX): Remove #undef.
10856         * sysdeps/alpha/dl-machine.h (TRAMPOLINE_TEMPLATE): Use !samegp.
10857         (RTLD_START): Likewise.  Access _dl_skip_args, _rtld_local, and
10858         _dl_fini via gp-relative relocations.
10859         * sysdeps/alpha/fpu/e_sqrt.c: Use !samegp.
10860
10861         * elf/tls-macros.h: Add alpha versions.
10862         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Handle TLS relocs.
10863         * sysdeps/unix/alpha/sysdep.S: Support USE___THREAD.
10864         * sysdeps/unix/alpha/sysdep.h: Likewise.  Add SYSCALL_ERROR_HANDLER.
10865         * sysdeps/unix/sysv/linux/alpha/brk.S: Use it.
10866         * sysdeps/unix/sysv/linux/alpha/clone.S: Likewise.
10867         * sysdeps/unix/sysv/linux/alpha/getitimer.S: Likewise.
10868         * sysdeps/unix/sysv/linux/alpha/getrusage.S: Likewise.
10869         * sysdeps/unix/sysv/linux/alpha/gettimeofday.S: Likewise.
10870         * sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S: Likewise.
10871         * sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S: Likewise.
10872         * sysdeps/unix/sysv/linux/alpha/rt_sigaction.S: Likewise.
10873         * sysdeps/unix/sysv/linux/alpha/select.S: Likewise.
10874         * sysdeps/unix/sysv/linux/alpha/setitimer.S: Likewise.
10875         * sysdeps/unix/sysv/linux/alpha/settimeofday.S: Likewise.
10876         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S: Likewise.
10877         * sysdeps/unix/sysv/linux/alpha/syscall.S: Likewise.
10878         * sysdeps/unix/sysv/linux/alpha/utimes.S: Likewise.
10879         * sysdeps/unix/sysv/linux/alpha/wait4.S: Likewise.
10880
10881         * sysdeps/unix/sysv/linux/alpha/sysdep.h: Re-include protect.
10882         Kill argument registers across the inline syscall.
10883
10884         * sysdeps/unix/sysv/linux/alpha/clone.S: Add user_tid and tls args.
10885
10886         * linuxthreads/sysdeps/alpha/tls.h: New file.
10887         * sysdeps/alpha/dl-tls.h: New file.
10888
10889 2002-10-29  David Mosberger  <davidm@hpl.hp.com>
10890
10891         * sysdeps/ia64/elf/initfini.c [HAVE_INITFINI_ARRAY]
10892         (gmon_initializer): New function.
10893         (.init prologue): If HAVE_INITFINI_ARRAY is true, don't call
10894         __gmon_start__ here.  Call it from gmon_initializer() instead.
10895
10896 2002-03-12  H.J. Lu  <hjl@gnu.org>
10897
10898         * elf/Makefile [$(have-initfini-array) = yes] (tests): Add tst-array1,
10899         tst-array2, and tst-array3.
10900         [$(have-initfini-array) = yes] (tests-static): Add tst-array3.
10901         [$(have-initfini-array) = yes] (modules-names): Add tst-array2dep.
10902         ($(objpfx)tst-array1.out): New target.
10903         ($(objpfx)tst-array2): Likewise.
10904         ($(objpfx)tst-array2.out): Likewise.
10905         ($(objpfx)tst-array3.out): Likewise.
10906         * elf/tst-array1.c: New file.
10907         * elf/tst-array1.exp: Likewise.
10908         * elf/tst-array2.c: Likewise.
10909         * elf/tst-array2dep.c: Likewise.
10910         * elf/tst-array2.exp: Likewise.
10911         * elf/tst-array3.c: Likewise.
10912
10913 2002-10-28  David Mosberger  <davidm@hpl.hp.com>
10914
10915         * elf/dl-fini.c (_dl_fini): Invoke fini_array in _reverse_ order.
10916         Don't add L->l_addr to array entry values.
10917
10918 2002-11-07  Jakub Jelinek  <jakub@redhat.com>
10919
10920         * string/test-string.h: New file.
10921         * string/test-strlen.c: New file.
10922         * string/test-string.h: New file.
10923         * string/test-strcmp.c: New file.
10924         * string/test-strchr.c: New file.
10925         * string/test-strrchr.c: New file.
10926         * string/test-strcpy.c: New file.
10927         * string/test-stpcpy.c: New file.
10928         * string/test-strncpy.c: New file.
10929         * string/test-stpncpy.c: New file.
10930         * string/test-strpbrk.c: New file.
10931         * string/test-strcspn.c: New file.
10932         * string/test-strspn.c: New file.
10933         * string/test-strcat.c: New file.
10934         * string/test-strncmp.c: New file.
10935         * string/test-memchr.c: New file.
10936         * string/test-memcmp.c: New file.
10937         * string/test-memset.c: New file.
10938         * string/test-memcpy.c: New file.
10939         * string/test-mempcpy.c: New file.
10940         * string/test-memmove.c: New file.
10941         * string/Makefile (strop-tests): New variable.
10942         (tests): Add strop-tests.
10943         (distribute): Add test-string.h.
10944
10945 2002-11-06  Ulrich Drepper  <drepper@redhat.com>
10946
10947         * posix/regcomp.c: Use tabs instead of spaces.
10948         * posix/regexec.c: Likewise.
10949         * posix/regex_internal.h: Likewise.
10950
10951         * posix/regcomp.c (re_compile_fastmap_iter): Use __wcrtomb not wctomb.
10952
10953 2002-11-06  Jakub Jelinek  <jakub@redhat.com>
10954
10955         * posix/regcomp.c (re_compile_pattern): Don't set regs_allocated
10956         here.
10957         (regcomp): Don't set can_be_null here.
10958         (re_comp): Clear whole re_comp_buf with the exception of fastmap.
10959         (re_compile_internal): Clear can_be_null, set regs_allocated.
10960
10961         * posix/regcomp.c (re_set_fastmap): New function.
10962         (re_compile_fastmap_iter): Use it.  Remove redundant type ==
10963         COMPLEX_BRACKET check.
10964         * posix/regexec.c (re_search_internal): Optimize searching with
10965         fastmap.  Call re_string_reconstruct even if match_first is
10966         smaller than raw_mbs_idx.
10967
10968 2002-11-06  Isamu Hasegawa  <isamu@yamato.ibm.com>
10969
10970         * posix/regcomp (free_dfa_content): Use free_state.
10971         * posix/regex_internal.c (re_string_realloc_buffers): Don't edit
10972         pointers in case that realloc failed.
10973         (re_node_set_merge): Likewise.
10974         (register_state): Likewise.
10975         (create_newstate_common): Invoke memory release functions in case of
10976         error conditions.
10977         (create_ci_newstate): Likewise.
10978         (create_cd_newstate): Likewise.
10979         (free_state): New function.
10980         * posix/regexec.c (re_search_internal): Invoke memory release
10981         functions in case of error conditions.
10982         (sift_states_backward): Likewise.
10983         (merge_state_array): Likewise.
10984         (add_epsilon_src_nodes): Likewise.
10985         (sub_epsilon_src_nodes): Likewise.
10986         (search_subexp): Likewise.
10987         (sift_states_bkref): Likewise.
10988         (transit_state_sb): Likewise.
10989         (transit_state_mb): Likewise.
10990         (transit_state_bkref_loop): Likewise.
10991         (group_nodes_into_DFAstates): Likewise.
10992         (push_fail_stack): Don't edit pointers in case that realloc failed.
10993         (extend_buffers): Likewise.
10994         (match_ctx_add_entry): Likewise.
10995
10996 2002-11-06  Roland McGrath  <roland@redhat.com>
10997
10998         * sysdeps/unix/sysv/linux/mips/configure.in: File removed.
10999         * sysdeps/unix/sysv/linux/mips/configure: Likewise.
11000
11001         * configure.in: Add checks on as and ld for binutils 2.13 or later.
11002         * configure: Regenerated.
11003
11004 2002-11-06  Ulrich Drepper  <drepper@redhat.com>
11005
11006         * posix/regcomp.c (regcomp): __re_compile_fastmap can never fail.
11007         If re_compile_internal failed free fastmap buffer.
11008         (free_dfa_content): Broken out of regfree function.  Frees all dfa
11009         related data.
11010         (regfree): Add free_dfa_content.
11011         (re_compile_internal): If any of the called functions fails free
11012         all dfa related memory.
11013
11014 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
11015
11016         * sysdeps/unix/sysv/linux/sys/sysctl.h: Add ugly hacks to prevent
11017         warnings from the kernel headers.
11018
11019 2002-11-05  Roland McGrath  <roland@redhat.com>
11020
11021         * sysdeps/unix/mips/sysdep.h [! __PIC__] (PSEUDO): Add nop after jump.
11022         From Johannes Stezenbach <js@convergence.de>.
11023
11024         * sysdeps/unix/sysv/linux/mips/Versions (libc: GLIBC_2.0): Change
11025         #errlist-compat magic comment to give 123 as size.
11026         (libc: GLIBC_2.1): Remove this set, moving #errlist-compat magic to ...
11027         (libc: GLIBC_2.2): ... here.
11028         (libc: GLIBC_2.3): Likewise.
11029
11030 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
11031
11032         * elf/dl-fini.c (_dl_fini): Correct the increment of l_opencount
11033         which happens at the beginning so that we can unload modules in
11034         __libc_freeres.
11035
11036 2002-11-06  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
11037
11038         * sysdeps/sh/bits/setjmp.h (JB_SIZE): Define only
11039         under [__USE_MISC || _ASM].
11040
11041         * elf/elf.h: Remove the obsolete SH TLS relocations.
11042
11043 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
11044
11045         * posix/regcomp.c (regcomp): Initialize preg->can_be_null to zero.
11046
11047 2002-11-05  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
11048
11049         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h: Handle
11050         __NR_pread64 and __NR_pwrite64.
11051         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h: Likewise.
11052         * sysdeps/unix/sysv/linux/powerpc/pread.c: Remove __NR_pread64
11053         and __NR_pwrite64.
11054         Revert change to use INLINE_SYSCALL.
11055         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Likewise.
11056         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Likewise.
11057         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Likewise.
11058         * sysdeps/unix/sysv/linux/powerpc/ftruncate64.c: Revert change to use
11059         INLINE_SYSCALL.
11060         * sysdeps/unix/sysv/linux/powerpc/truncate64.c: Likewise.
11061
11062         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (INLINE_SYSCALL):
11063         Update clobber list and add a comment about the syscall ABI.
11064
11065         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list (s_pread64,
11066         s_pwrite64, s_ftruncate, s_truncate): Re-add.
11067
11068 2002-11-05  Jakub Jelinek  <jakub@redhat.com>
11069
11070         * iconv/gconv_dl.c (free_mem): Clear loaded.
11071         * locale/loadarchive.c (_nl_archive_subfreeres): Call locale_data's
11072         cleanup if any.
11073
11074 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
11075
11076         * sysdeps/unix/sysv/linux/fexecve.c: Include <stdio.h>.
11077
11078         * libio/ioseekoff.c: Remove INTDEF.  Define _IO_seekoff_unlocked.  Same
11079         as old code without locking.  _IO_seekoff calls this function after
11080         locking the stream.
11081         * libio/ioseekpos.c: Likewise for _IO_seekpos.
11082         * libio/libioP.h: Replace _IO_seekoff_internal and _IO_seekpos_internal
11083         prototypes with _IO_seekoff_unlocked and _IO_seekpos_unlocked
11084         prototypes.
11085         * libio/iolibio.h (_IO_fseek): Call _IO_seekoff_unlocked instead
11086         of _IO_seekoff_internal.
11087         (_IO_rewind): Likewise.
11088         * libio/ioftell.c: Likewise.
11089         * libio/ftello.c: Likewise.
11090         * libio/ftello64.c: Likewise.
11091         * libio/iofgetpos.c: Likewise.
11092         * libio/iofgetpos64.c: Likewise.
11093         * libio/oldiofgetpos.c: Likewise.
11094         * libio/oldiofgetpos64.c: Likewise.
11095         * libio/iofsetpos.c: Call _IO_seekpos_unlocked instead of
11096         _IO_seekpos_internal.
11097         * libio/iofsetpos64.c: Likewise.
11098         * libio/oldiofsetpos.c: Likewise.
11099         * libio/oldiofsetpos64.c: Likewise.
11100
11101 2002-11-04  Roland McGrath  <roland@redhat.com>
11102
11103         * sysdeps/unix/sysv/linux/powerpc/chown.c: Use INLINE_SYSCALL macro.
11104         * sysdeps/unix/sysv/linux/powerpc/ftruncate64.c: Likewise.
11105         * sysdeps/unix/sysv/linux/powerpc/ioctl.c: Likewise.
11106         * sysdeps/unix/sysv/linux/powerpc/pread.c: Likewise.
11107         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Likewise.
11108         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Likewise.
11109         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Likewise.
11110         * sysdeps/unix/sysv/linux/powerpc/tcgetattr.c: Likewise.
11111         * sysdeps/unix/sysv/linux/powerpc/tcsetattr.c: Likewise.
11112         * sysdeps/unix/sysv/linux/powerpc/truncate64.c: Likewise.
11113         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list (s_ioctl,
11114         s_chown, s_ftruncate64, s_mmap2, s_pread64, s_pwrite64, s_truncate64,
11115         sys_fstat, sys_lstat, sys_mknod, sys_readv, sys_stat, sys_writev):
11116         Remove these, no longer used.
11117
11118 2002-11-04  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
11119
11120         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list (s_ipc,
11121         s_llseek, s_readahead, s_execve, s_fcntl, s_fcntl64, s_fstat64,
11122         s_getcwd, s_getdents, s_getdents64, s_getpmsg, s_getpriority,
11123         s_getrlimit, s_lstat64, s_poll, s_ptrace, s_putpmsg, s_reboot,
11124         s_setrlimit, s_sigaction, s_sigpending, s_sigprocmask, s_sigsuspend,
11125         s_stat64, s_sysctl, s_ugetrlimit, s_ustat, s_vfork): Remove now unused
11126         syscall stubs.
11127
11128         * sysdeps/unix/sysv/linux/pwrite.c: Fix typo.
11129         * sysdeps/unix/sysv/linux/pwrite64.c: Likewise.
11130         * sysdeps/unix/sysv/linux/powerpc/pread.c: Handle both __NR_pread64
11131         and __NR_pread.
11132         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Likewise.
11133         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Handle both __NR_pwrite64
11134         and __NR_pwrite.
11135         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Likewise.
11136
11137 2002-11-03  Roland McGrath  <roland@redhat.com>
11138
11139         * sysdeps/generic/ldsodefs.h (struct rtld_global): New member
11140         `_dl_tls_static_used'.
11141         * sysdeps/generic/libc-tls.c (_dl_tls_static_used): New variable.
11142         (__libc_setup_tls): Initialize it.  Let the initial value of
11143         _dl_tls_static_size indicate some surplus space in the computed value.
11144         * elf/dl-open.c (_dl_tls_static_size): New variable.
11145         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Initialize
11146         _dl_tls_static_used.  Add some surplus space into _dl_tls_static_size.
11147         * elf/dl-reloc.c [USE_TLS] (allocate_static_tls): New function.
11148         (CHECK_STATIC_TLS): Use it.
11149         * elf/dl-close.c (_dl_close): Adjust _dl_tls_static_used when the
11150         closed objects occupied a trailing contiguous chunk of static TLS area.
11151
11152 2002-10-18  Bruno Haible  <bruno@clisp.org>
11153
11154         * charmaps/ISO_5428: Use Greek characters introduced in Unicode 3.0.
11155
11156 2002-11-04  Ulrich Drepper  <drepper@redhat.com>
11157
11158         * libio/wfileops.c (_IO_wfile_seekoff): Don't modify _offset and
11159         _wide_data->_IO_read_end if adjustment can be made in the current
11160         buffer.
11161
11162         * sysdeps/unix/sysv/linux/fexecve.c: New file.
11163
11164         * libio/bug-wfflush.c (do_test): Using fseek is not allowed when
11165         wide oriented streams are used.
11166
11167         * nss/getXXent_r.c (ENDFUNC_NAME): Don't do anything if the
11168         service hasn't been used [PR libc/4744].
11169
11170         * include/features.h: Use __STDC_VERSION__ not __STDC_VERSION.
11171         Reported by Miloslav Trmac <mitr@volny.cz> [PR libc/4766].
11172
11173         * manual/examples/dir.c: Don't include <stddef.h>.
11174         * manual/examples/select.c: Include <errno.h> for TEMP_FAILURE_RETRY.
11175         Reported by Frédéric Delanoy <delanoy_f@yahoo.com>.
11176
11177 2002-11-02  H.J. Lu  <hjl@gnu.org>
11178
11179         * stdio-common/reg-printf.c: Include <stddef.h>.
11180
11181 2002-11-03  Ulrich Drepper  <drepper@redhat.com>
11182
11183         * sysdeps/generic/libc-tls.c: Define _dl_tls_static_used.
11184
11185         * po/ca.po: Update from translation team.
11186         * po/es.po: Likewise.
11187
11188         * sysdeps/generic/segfault.c (catch_segfault): If HAVE_PROC_SELF
11189         is defined write out memory map.
11190         * sysdeps/unix/sysv/linux/segfault.c: New file.
11191
11192 2002-11-02  Roland McGrath  <roland@redhat.com>
11193
11194         * sysdeps/unix/sysv/linux/getdents.c (__GETDENTS): Use union type for
11195         pointers that can alias.
11196         Reported by Daniel Jacobowitz <drow@mvista.com>.
11197
11198         * sysdeps/unix/bsd/bsd4.4/freebsd/bits/typesizes.h: New file.
11199
11200 2002-11-02  Roland McGrath  <roland@redhat.com>
11201
11202         * manual/filesys.texi (Reading/Closing Directory): Rewrite readdir_r
11203         description to be clearer and to say that *RESULT is set to ENTRY.
11204
11205 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
11206
11207         * posix/regexec.c (build_trtable): Alloca or malloc dests_node and
11208         dests_ch arrays together.  Alloca or malloc dest_states,
11209         dest_states_word and dest_states_nl arrays together.  Free memory on
11210         error exit.
11211
11212 2002-10-29  Daniel Jacobowitz  <drow@mvista.com>
11213
11214         * crypt/crypt_util.c (__init_des_r): Initialize current_salt
11215         and current_saltbits.
11216
11217 2002-11-02  Roland McGrath  <roland@redhat.com>
11218
11219         * stdio-common/reg-printf.c: Include <stdlib.h>.
11220
11221 2002-11-02  H.J. Lu  <hjl@gnu.org>
11222
11223         * sysdeps/unix/sysv/linux/mips/syscalls.list (s_execve): Set
11224         caller to EXTRA instead of execve.
11225
11226 2002-11-01  Roland McGrath  <roland@redhat.com>
11227
11228         * sysdeps/generic/errno-loc.c [! USE___THREAD]: Use this conditional
11229         in place of [!(USE_TLS && HAVE___THREAD)].
11230         (__errno_location) [! USE___THREAD]: Define as strong, not weak.
11231
11232 2002-10-31  Roger Sayle  <roger@eyesopen.com>
11233
11234         * sysdeps/i386/soft-fp/sfp-machine.h (_FP_NANFRAC_Q, _FP_NANSIGN_Q):
11235         New macros.
11236         * sysdeps/x86_64/soft-fp/sfp-machine.h: Likewise.
11237
11238         * soft-fp/soft-fp.h: Allow sfp-machine.h to define FP_RND_NEAREST
11239         without defining FP_ROUNDMODE.
11240
11241 2002-10-29  Jakub Jelinek  <jakub@redhat.com>
11242
11243         * sysdeps/gnu/siglist.c (PTR_SIZE_STR): Remove.
11244         (__old_sys_siglist, __old_sys_sigabbrev): Use strong_alias and
11245         declare_symbol.
11246         * sysdeps/mach/hurd/siglist.h (OLD_SIGLIST_SIZE_STR): Remove.
11247         (OLD_SIGLIST_SIZE): Define.
11248         * sysdeps/unix/sysv/linux/siglist.h (OLD_SIGLIST_SIZE_STR): Remove.
11249         (OLD_SIGLIST_SIZE): Define.
11250         * sysdeps/unix/sysv/linux/arm/siglist.c: Remove.
11251
11252 2002-11-01  Jakub Jelinek  <jakub@redhat.com>
11253
11254         * sysdeps/ia64/strncpy.S: Fix recovery code.
11255
11256 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
11257
11258         * include/libc-symbols.h (__libc_freeres_fn_section, libc_freeres_fn):
11259         New macros.
11260         * elf/dl-close.c (free_mem): Use libc_freeres_fn macro, remove
11261         text_set_element.
11262         * elf/dl-libc.c (free_mem): Likewise.
11263         * iconv/gconv_conf.c (free_mem): Likewise.
11264         * iconv/gconv_db.c (free_mem): Likewise.
11265         * iconv/gconv_dl.c (free_mem): Likewise.
11266         * iconv/gconv_cache.c (free_mem): Likewise.
11267         * intl/finddomain.c (free_mem): Likewise.
11268         * intl/dcigettext.c (free_mem): Likewise.
11269         * locale/setlocale.c (free_mem): Likewise.
11270         * misc/fstab.c (fstab_free): Likewise.
11271         * nss/nsswitch.c (free_mem): Likewise.
11272         * posix/regcomp.c (free_mem): Likewise.
11273         * resolv/gai_misc.c (free_res): Likewise.
11274         * stdlib/fmtmsg.c (free_mem): Likewise.
11275         * sunrpc/clnt_perr.c (free_mem): Likewise.
11276         * sysdeps/generic/setenv.c (free_mem): Likewise.
11277         * sysdeps/unix/sysv/linux/shm_open.c (freeit): Likewise.
11278         * sysdeps/pthread/aio_misc.c (free_res): Likewise.
11279         * time/tzset.c (free_mem): Likewise.
11280         * malloc/mtrace.c (release_libc_mem): Add __libc_freeres_fn_section.
11281         * locale/loadarchive.c (_nl_archive_subfreeres): Likewise.
11282         * malloc/set-freeres.c (__libc_freeres): Likewise.
11283
11284         * login/getutent.c: Include stdlib.h instead of stddef.h.
11285         (buffer): Change into pointer to utmp, add libc_freeres_ptr.
11286         (__getutent): Allocate buffer the first time it is run.
11287         * login/getutid.c: Include stdlib.h instead of stddef.h.
11288         (buffer): Change into pointer to utmp, add libc_freeres_ptr.
11289         (__getutid): Allocate buffer the first time it is run.
11290         * login/getutline.c: Include stdlib.h instead of stddef.h.
11291         (buffer): Change into pointer to utmp, add libc_freeres_ptr.
11292         (__getutline): Allocate buffer the first time it is run.
11293         * malloc/mtrace.c (malloc_trace_buffer): Change into char *.
11294         (mtrace): Allocate malloc_trace_buffer.
11295         * resolv/nsap_addr.c (inet_nsap_ntoa): Decrease size of tmpbuf.
11296         * resolv/ns_print.c (ns_sprintrrf): Decrease size of t.
11297         * string/strerror.c: Include libintl.h and errno.h.
11298         (buf): New variable.
11299         (strerror): Only allocate buffer if actually needed (unknown error).
11300         * time/tzfile.c (transitions): Add libc_freeres_ptr.
11301         (freeres): Remove.
11302
11303 2002-10-25  Jakub Jelinek  <jakub@redhat.com>
11304
11305         * include/libc-symbols.h (libc_freeres_ptr): New macro.
11306         * malloc/set-freeres.c (__libc_freeres_ptrs): Define using
11307         symbol_set_define.
11308         (__libc_freeres): Free all pointers in that section.
11309         * Makerules (build-shlib): Add $(LDSEDCMD-$(@F:lib%.so=%).so) to sed
11310         commands when creating .lds script.
11311         (LDSEDCMD-c.so): New variable.
11312         * inet/rcmd.c (ahostbuf): Change into char *.  Add libc_freeres_ptr.
11313         (rcmd_af): Use strdup to allocate ahostbuf.
11314         * inet/rexec.c (ahostbuf): Change into char *.  Add libc_freeres_ptr.
11315         (rexec_af): Use strdup to allocate ahostbuf.
11316         * stdio-common/reg-printf.c (printf_funcs): Remove.
11317         (__printf_arginfo_table): Change into printf_arginfo_function **.
11318         Add libc_freeres_ptr.
11319         (__register_printf_function): Allocate __printf_arginfo_table
11320         and __printf_function_table the first time it is called.
11321         * stdio-common/printf-parse.h (__printf_arginfo_table): Change into
11322         printf_arginfo_function **.
11323         (parse_one_spec): Add __builtin_expect.
11324         * grp/fgetgrent.c (buffer): Add libc_freeres_ptr.
11325         (free_mem): Remove.
11326         * inet/getnetgrent.c (buffer): Add libc_freeres_ptr.
11327         (free_mem): Remove.
11328         * intl/localealias.c (libc_freeres_ptr): Define if !_LIBC.
11329         (string_space, map): Add libc_freeres_ptr.
11330         (free_mem): Remove.
11331         * misc/efgcvt.c (FCVT_BUFPTR): Add libc_freeres_ptr.
11332         (free_mem): Remove.
11333         * misc/mntent.c (getmntent_buffer): Add libc_freeres_ptr.
11334         (free_mem): Remove.
11335         * crypt/md5-crypt.c (libc_freeres_ptr): Define if !_LIBC.
11336         (buffer): Add libc_freeres_ptr.
11337         (free_mem): Remove for _LIBC.
11338         * nss/getXXbyYY.c (buffer): Add libc_freeres_ptr.
11339         (free_mem): Remove.
11340         * nss/getXXent.c (buffer): Add libc_freeres_ptr.
11341         (free_mem): Remove.
11342         * pwd/fgetpwent.c (buffer): Add libc_freeres_ptr.
11343         (free_mem): Remove.
11344         * resolv/res_hconf.c (ifaddrs): Add libc_freeres_ptr.
11345         (free_mem): Remove.
11346         * shadow/fgetspent.c (buffer): Add libc_freeres_ptr.
11347         (free_mem): Remove.
11348         * sysdeps/posix/ttyname.c (getttyname_name): Add libc_freeres_ptr.
11349         (free_mem): Remove.
11350         * sysdeps/unix/sysv/linux/getsysstats.c (mount_proc): Add
11351         libc_freeres_ptr.
11352         (free_mem): Remove.
11353         * sysdeps/unix/sysv/linux/ttyname.c (getttyname_name, ttyname_buf): Add
11354         libc_freeres_ptr.
11355         (free_mem): Remove.
11356
11357 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
11358
11359         * malloc/obstack.c [_LIBC] (obstack_free): Change into strong_alias
11360         instead of duplicating the whole function in libc.
11361
11362 2002-10-31  Roland McGrath  <roland@redhat.com>
11363
11364         * sysdeps/i386/bits/byteswap.h [__GNUC__ < 2] (__bswap_32):
11365         Renamed from __bswap_16 (typo fix).  Reported by <dens@stl.sarov.ru>.
11366
11367 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
11368
11369         * sysdeps/unix/sysv/linux/Makefile (syscall-%.h): Add -D for each
11370         32bit-predefine when creating .new32 list and -U for each
11371         32bit-predefine when creating .new64 list.
11372         * sysdeps/unix/sysv/linux/x86_64/Makefile (32bit-predefine): New.
11373
11374 2002-10-29  Andreas Schwab  <schwab@suse.de>
11375
11376         * sysdeps/generic/allocrtsig.c: Include <testrtsig.h>, not
11377         "testrtsig.h".  Reported by Daniel Jacobowitz <dan@debian.org>.
11378
11379 2002-10-25  Roland McGrath  <roland@redhat.com>
11380
11381         * sysdeps/unix/sysv/linux/configure.in: Fix typo in last change.
11382         * sysdeps/unix/sysv/linux/configure: Regenerated.
11383
11384         * sysdeps/generic/ldsodefs.h: Remove [! SHARED] conditional from
11385         _dl_starting_up decl.
11386
11387 2002-10-20  H.J. Lu  <hjl@gnu.org>
11388
11389         * sysdeps/unix/sysv/linux/configure.in: Don't check
11390         /lib/modules/`uname -r`/build/include for kernel headers if
11391         cross compiling.
11392         * sysdeps/unix/sysv/linux/configure: Regenerated.
11393
11394 2002-10-25  Roland McGrath  <roland@redhat.com>
11395
11396         * math/math.h (M_LOG2El): Correct the value.
11397         From Stephen L Moshier <steve@moshier.net>.
11398
11399         * sysdeps/unix/sysv/linux/init-first.c (init): Remove [! SHARED]
11400         conditional from __libc_multiple_libcs access.  Remove kludge for weak
11401         symbol access with old compilers we no longer support.
11402         * sysdeps/unix/sysv/aix/init-first.c (init): Likewise.
11403         * sysdeps/generic/libc-start.c (__libc_start_main): Likewise.
11404
11405 2002-10-25  Roland McGrath  <roland@redhat.com>
11406
11407         * sysdeps/posix/sigvec.c [SA_RESETHAND]: Disable wrapper hacks and
11408         implement SV_RESETHAND by translating it to SA_RESETHAND.
11409
11410 2002-10-23  Alexandre Oliva  <aoliva@redhat.com>
11411
11412         * elf/dl-reloc.c (_dl_reloc_bad_use): Print the full 32-bit relocation
11413         type on ELF64 platforms.
11414
11415 2002-10-24  Ulrich Drepper  <drepper@redhat.com>
11416
11417         * elf/elf.h (R_X86_64_GOTTPOFF): Renamed from r_x86_64_GOTTPOFF.
11418
11419         * elf/elf.h: Define ELF_NOTE_OS_FREEBSD and NT_TASKSTRUCT.
11420
11421 2002-10-24  Jakub Jelinek  <jakub@redhat.com>
11422
11423         * elf/dl-misc.c: Include <sysdep.h>.
11424         (_dl_debug_vdprintf): Only take dl_load_lock if not _dl_starting_up.
11425
11426         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (INTERNAL_SYSCALL,
11427         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
11428         (INLINE_SYSCALL): Use that.
11429         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (INTERNAL_SYSCALL,
11430         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
11431         (INLINE_SYSCALL): Use that.
11432         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (INTERNAL_SYSCALL,
11433         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
11434         (INLINE_SYSCALL): Use that.
11435         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Include
11436         dl-sysdep.h.
11437         (SYSCALL_ERROR_HANDLER): Define RTLD_PRIVATE_ERRNO variant.
11438         (__INTERNAL_SYSCALL_STRING): Define.
11439         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h: Include
11440         dl-sysdep.h.
11441         (SYSCALL_ERROR_HANDLER): Define RTLD_PRIVATE_ERRNO variant.
11442         (__INTERNAL_SYSCALL_STRING): Define.
11443         * sysdeps/unix/sysv/linux/sparc/sysdep.h (INLINE_SYSCALL): Pass
11444         __SYSCALL_STRING to inline_syscall*.
11445         (INTERNAL_SYSCALL, INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO):
11446         New macros.
11447         (inline_syscall0, inline_syscall1, inline_syscall2, inline_syscall3,
11448         inline_syscall4, inline_syscall5, inline_syscall6): Add string
11449         argument.
11450
11451 2002-10-24  Roland McGrath  <roland@redhat.com>
11452
11453         * sysdeps/generic/ldsodefs.h (_dl_starting_up): Declare it here.
11454         * sysdeps/unix/sysv/linux/init-first.c: Not here.
11455         * sysdeps/powerpc/elf/libc-start.c: Or here.
11456         * sysdeps/unix/sysv/aix/libc-start.c: Or here.
11457         * sysdeps/unix/sysv/aix/start-libc.c: Or here.
11458         * sysdeps/unix/sysv/aix/init-first.c: Or here.
11459         * sysdeps/generic/libc-start.c: Or here.
11460         * sysdeps/unix/sysv/linux/init-first.c (init): Protect _dl_starting_up
11461         access with [! SHARED].
11462         * sysdeps/unix/sysv/aix/init-first.c (init): Likewise.
11463
11464         * libio/bug-wfflush.c: New file.
11465         * libio/Makefile (tests): Add bug-wfflush.
11466
11467 2002-10-23  Roland McGrath  <roland@redhat.com>
11468
11469         * stdio-common/tst-fphex.c: New file.
11470         * stdio-common/Makefile (tests): Add tst-fphex.
11471         * sysdeps/generic/printf_fphex.c (__printf_fphex): Fix initialization
11472         of WNUMEND.  Fix counting of decimal point in WIDTH.  Print '0' pad
11473         chars always before the value digits.
11474         Reported by James Antill <james.antill@redhat.com>.
11475
11476 2002-10-24  Jakub Jelinek  <jakub@redhat.com>
11477
11478         * posix/regcomp.c (re_comp): Call __regfree on re_comp_buf.
11479         (free_mem): New function.
11480         * posix/Makefile (tests): Add bug-regex14.  Add bug-regex14-mem
11481         if not cross compiling.
11482         (generated): Add bug-regex14-mem and bug-regex14.mtrace.
11483         (bug-regex14-ENV): Set.
11484         (bug-regex14-mem): New target.
11485         * posix/bug-regex14.c: New file.
11486
11487 2002-10-23  Roland McGrath  <roland@redhat.com>
11488
11489         * elf/Makefile ($(objpfx)librtld.map): Use temporary file for output
11490         target, so we don't touch it when the link fails.
11491
11492         * libio/ftello.c (ftello): Use _IO_off64_t for type of POS.
11493         Check for the result overflowing off_t and fail with EOVERFLOW.
11494         * libio/ioftell.c (_IO_ftell): Likewise.
11495         * libio/iofgetpos.c (_IO_new_fgetpos): Likewise.
11496
11497         * login/logwtmp.c (logwtmp): If sizeof ut_tv != sizeof struct timeval,
11498         use a temporary timeval on the stack for gettimeofday and copy it.
11499         * login/logout.c (logout): Likewise.
11500         Reported by Steven Munroe <sjmunroe@us.ibm.com>.
11501
11502         * sysdeps/unix/sysv/linux/bits/statfs.h (struct statfs):
11503         Use __SWORD_TYPE instead of int for member types.
11504         (struct statfs64): Likewise.
11505         * sysdeps/unix/sysv/linux/alpha/bits/statfs.h: New file.
11506         * sysdeps/unix/sysv/linux/s390/bits/statfs.h: New file.
11507         * sysdeps/unix/sysv/linux/ia64/bits/statfs.h: File removed.
11508         * sysdeps/unix/sysv/linux/sparc/bits/statfs.h: File removed.
11509         * sysdeps/unix/sysv/linux/x86_64/bits/statfs.h: File removed.
11510
11511         * sysdeps/unix/sysv/linux/sparc/bits/statvfs.h: Moved to ...
11512         * sysdeps/unix/sysv/linux/bits/statvfs.h: ... here.
11513         (ST_NODIRATIME): Restore fixed value of 2048.
11514         * sysdeps/unix/sysv/linux/alpha/bits/statvfs.h: File removed.
11515         * sysdeps/unix/sysv/linux/ia64/bits/statvfs.h: File removed.
11516
11517         Rearranged <bits/types.h> definitions to reduce duplication.
11518         * sysdeps/generic/bits/types.h: Rewritten, using macros from
11519         <bits/wordsize.h> and new header <bits/typesizes.h>.
11520         * posix/Makefile (headers): Add bits/typesizes.h here.
11521         * sysdeps/generic/bits/typesizes.h: New file.
11522         * sysdeps/unix/sysv/linux/alpha/bits/typesizes.h: New file.
11523         * sysdeps/unix/sysv/linux/sparc/bits/typesizes.h: New file.
11524         * sysdeps/mach/hurd/bits/typesizes.h: New file.
11525         * sysdeps/unix/sysv/linux/alpha/bits/types.h: File removed.
11526         * sysdeps/unix/sysv/linux/bits/types.h: File removed.
11527         * sysdeps/unix/sysv/linux/ia64/bits/types.h: File removed.
11528         * sysdeps/unix/sysv/linux/mips/bits/types.h: File removed.
11529         * sysdeps/unix/sysv/linux/s390/bits/types.h: File removed.
11530         * sysdeps/unix/sysv/linux/sparc/bits/types.h: File removed.
11531         * sysdeps/unix/sysv/linux/x86_64/bits/types.h: File removed.
11532         * posix/sys/types.h [__USE_POSIX199506 || __USE_UNIX98]: Include
11533         <bits/pthreadtypes.h> here, not in <bits/types.h>.
11534         * signal/signal.h: Likewise.
11535
11536         * streams/stropts.h: Include <bits/xtitypes.h>.
11537         * streams/Makefile (headers): Add bits/xtitypes.h here.
11538         * sysdeps/generic/bits/xtitypes.h: New file.
11539         * sysdeps/s390/bits/xtitypes.h: New file.
11540         * sysdeps/ia64/bits/xtitypes.h: New file.
11541         * sysdeps/x86_64/bits/xtitypes.h: New file.
11542
11543         * sysvipc/Makefile (headers): Add bits/ipctypes.h here.
11544         * sysdeps/generic/bits/ipctypes.h: New file.
11545         * sysdeps/mips/bits/ipctypes.h: New file.
11546         * sysdeps/gnu/bits/shm.h: Include <bits/ipctypes.h>.
11547         * sysdeps/gnu/bits/msq.h: Likewise.
11548         * sysvipc/sys/ipc.h: Likewise.
11549
11550 2002-10-22  Ulrich Drepper  <drepper@redhat.com>
11551
11552         * elf/dl-load.c (struct filebuf): For buf element to have the
11553         alignment of ElfXX_Ehdr since this is what will be stored in it.
11554
11555 2002-10-22  Jakub Jelinek  <jakub@redhat.com>
11556
11557         * locale/programs/locarchive.c (add_alias): Change locrec_offset arg
11558         into pointer to locrec_offset.
11559         (add_locale_to_archive): Adjust callers.  Free normalized_name right
11560         before returning, not immediately after add_locale, pass it to
11561         add_alias if not NULL instead of name.  Rename second normalized_name
11562         occurence to nnormalized_codeset_name.
11563
11564         * locale/programs/locarchive.c (enlarge_archive): Make sure
11565         string_size is always a multiple of 4.
11566         Reported by Andreas Schwab <schwab@suse.de>.
11567
11568 2002-10-21  Andreas Schwab  <schwab@suse.de>
11569
11570         * sysdeps/unix/sysv/linux/ia64/syscalls.list (s_execve): Set
11571         caller to EXTRA instead of execve, since the latter has a
11572         higher-priority implementation in linuxthreads.
11573
11574 2002-10-21  Roland McGrath  <roland@redhat.com>
11575
11576         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Initialize the static
11577         slotinfo list's len member to the proper size, not just 1.
11578         Initialize static_map.l_tls_initimage.
11579
11580         * elf/dl-open.c (dl_open_worker): Fix loop searching for
11581         dtv_slotinfo_list element containing new modules' l_tls_modid.
11582
11583         * elf/tst-tls9.c, elf/tst-tls9-static.c: New files.
11584         * elf/tst-tlsmod5.c, elf/tst-tlsmod6.c: New files.
11585         * elf/Makefile (tests): Add tst-tls9.
11586         (tests-static): Add tst-tls9-static.
11587         (tst-tls9-static-ENV): New variable.
11588         ($(objpfx)tst-tls9-static, $(objpfx)tst-tls9-static.out): New targets.
11589
11590         * elf/dl-close.c (remove_slotinfo): Remove an assert; the number of
11591         modids used by partially loaded modules being closed can't be known.
11592
11593 2002-10-21  Isamu Hasegawa  <isamu@yamato.ibm.com>
11594
11595         * posix/Makefile: Add a test case for the bug reported by Aharon
11596         Robbins <arnold@skeeve.com>.
11597         * posix/bug-regex13.c: New file.
11598         * posix/regcomp.c (peek_token_bracket): Skip the byte already read.
11599
11600 2002-10-21  Ulrich Drepper  <drepper@redhat.com>
11601
11602         * csu/gmon-start.c: Pretty printing.
11603
11604 2002-10-19  Art Haas  <ahaas@neosoft.com>
11605
11606         * configure.in: Replace AC_CONFIG_HEADER with AC_CONFIG_HEADERS,
11607         add AC_HELP_STRING to all AC_ARG_WITH and AC_ARG_ENABLE macros,
11608         add autoconf quotes to the AC_CONFIG_AUX_DIR macro.
11609         * configure: Regenerated.
11610
11611 2002-10-19  Roland McGrath  <roland@redhat.com>
11612
11613         * configure.in: Call AC_CONFIG_SUBDIRS with empty argument
11614         and then set $subdirs directly, because the new Autoconf breaks
11615         compatibility in every way imaginable and insists on whining
11616         about usage that worked since the dawn of time.
11617         * configure: Regenerated.
11618
11619         * configure: Regenerated (using Autoconf 2.54).
11620         * sysdeps/alpha/elf/configure: Likewise.
11621         * sysdeps/generic/configure: Likewise.
11622         * sysdeps/i386/elf/configure: Likewise.
11623         * sysdeps/ia64/elf/configure: Likewise.
11624         * sysdeps/mach/hurd/configure: Likewise.
11625         * sysdeps/mach/configure: Likewise.
11626         * sysdeps/unix/configure: Likewise.
11627         * sysdeps/unix/common/configure: Likewise.
11628         * sysdeps/unix/sysv/aix/configure: Likewise.
11629         * sysdeps/unix/sysv/linux/configure: Likewise.
11630         * sysdeps/unix/sysv/linux/mips/configure: Likewise.
11631         * sysdeps/x86_64/elf/configure: Likewise.
11632
11633         * config.make.in: Nix completely-soft nonsense.
11634         * configure.in: Likewise.  Under --without-fp, use nofpu subdirectory
11635         of machine directories instead of fpu subdirectory.
11636         * sysdeps/powerpc/soft-fp/Makefile: Remove cruft added in last change.
11637         * sysdeps/powerpc/nofpu/Makefile: Put it in this new file instead.
11638         * sysdeps/powerpc/soft-fp/sim-full.c: Moved to ...
11639         * sysdeps/powerpc/nofpu/sim-full.c: ... here.
11640         * sysdeps/powerpc/soft-fp/fraiseexcpt.c: Moved to ...
11641         * sysdeps/powerpc/nofpu/fraiseexcpt.c: ... here.
11642         * sysdeps/powerpc/soft-fp/fegetexcept.c: Moved to ...
11643         * sysdeps/powerpc/nofpu/fegetexcept.c: ... here.
11644         * sysdeps/powerpc/soft-fp/fclrexcpt.c: Moved to ...
11645         * sysdeps/powerpc/nofpu/fclrexcpt.c: ... here.
11646         * sysdeps/powerpc/soft-fp/ftestexcept.c: Moved to ...
11647         * sysdeps/powerpc/nofpu/ftestexcept.c: ... here.
11648         * sysdeps/powerpc/soft-fp/fgetexcptflg.c: Moved to ...
11649         * sysdeps/powerpc/nofpu/fgetexcptflg.c: ... here.
11650         * sysdeps/powerpc/soft-fp/fsetexcptflg.c: Moved to ...
11651         * sysdeps/powerpc/nofpu/fsetexcptflg.c: ... here.
11652         * sysdeps/powerpc/soft-fp/fedisblxcpt.c: Moved to ...
11653         * sysdeps/powerpc/nofpu/fedisblxcpt.c: ... here.
11654         * sysdeps/powerpc/soft-fp/feenablxcpt.c: Moved to ...
11655         * sysdeps/powerpc/nofpu/feenablxcpt.c: ... here.
11656         * sysdeps/powerpc/soft-fp/fegetenv.c: Moved to ...
11657         * sysdeps/powerpc/nofpu/fegetenv.c: ... here.
11658         * sysdeps/powerpc/soft-fp/fesetenv.c: Moved to ...
11659         * sysdeps/powerpc/nofpu/fesetenv.c: ... here.
11660         * sysdeps/powerpc/soft-fp/fegetround.c: Moved to ...
11661         * sysdeps/powerpc/nofpu/fegetround.c: ... here.
11662         * sysdeps/powerpc/soft-fp/fesetround.c: Moved to ...
11663         * sysdeps/powerpc/nofpu/fesetround.c: ... here.
11664         * sysdeps/powerpc/soft-fp/feupdateenv.c: Moved to ...
11665         * sysdeps/powerpc/nofpu/feupdateenv.c: ... here.
11666         * sysdeps/powerpc/soft-fp/feholdexcpt.c: Moved to ...
11667         * sysdeps/powerpc/nofpu/feholdexcpt.c: ... here.
11668         * sysdeps/powerpc/soft-fp/fenv_const.c: Moved to ...
11669         * sysdeps/powerpc/nofpu/fenv_const.c: ... here.
11670         * sysdeps/powerpc/soft-fp/libm-test-ulps: Moved to ...
11671         * sysdeps/powerpc/nofpu/libm-test-ulps: ... here.
11672         * sysdeps/powerpc/soft-fp/soft-supp.h: Moved to ...
11673         * sysdeps/powerpc/nofpu/soft-supp.h: ... here.
11674         * sysdeps/powerpc/soft-fp/Versions (libc: GLIBC_2.3.2): Moved to ...
11675         * sysdeps/powerpc/nofpu/Versions: ... here, new file.
11676
11677 2002-10-19  Bruno Haible  <bruno@clisp.org>
11678
11679         * sysdeps/unix/bsd/bsd4.4/freebsd/sys/sysmacros.h: New file.
11680
11681 2002-10-18  Roland McGrath  <roland@redhat.com>
11682
11683         * io/Makefile (routines): Add lchmod.
11684         * io/sys/stat.h [__USE_BSD] (lchmod): Declare it.
11685         * sysdeps/generic/lchmod.c: New file.
11686         * sysdeps/mach/hurd/lchmod.c: New file.
11687         * io/Versions (libc: GLIBC_2.3.2): New set, add lchmod.
11688
11689 2002-10-18  Art Haas  <ahaas@neosoft.com>
11690
11691         * configure.in: Remove remaining AC_FD_CC macros, and replace
11692         AC_FD_MSG with AS_MESSAGE_FD.
11693
11694 2002-10-18  Roland McGrath  <roland@redhat.com>
11695
11696         * sysdeps/powerpc/powerpc32/dl-machine.c (__process_machine_rela): Fix
11697         typos: VALUE -> FINALADDR.
11698
11699         * sysdeps/unix/alpha/sysdep.h (INLINE_SYSCALL, INLINE_SYSCALL1)
11700         (inline_syscall_clobbers, inline_syscall0, inline_syscall1)
11701         (inline_syscall2, inline_syscall3, inline_syscall4, inline_syscall5)
11702         (inline_syscall6): Move these macros ...
11703         * sysdeps/unix/sysv/linux/alpha/sysdep.h: ... to here.
11704
11705         * configure.in (libc_link_dests, libc_link_sources): Remove these
11706         variables and the AC_LINK_FILES call.
11707
11708         * sysdeps/powerpc/soft-fp/Versions (libc: GLIBC_2.3.2): Fix last
11709         change to put new symbols here instead of in GLIBC_2.2.
11710         * sysdeps/powerpc/Subdirs: Move this file ...
11711         * sysdeps/powerpc/soft-fp/Subdirs: ... here.
11712
11713 2002-10-07  Roland McGrath  <roland@redhat.com>
11714
11715         * sysdeps/generic/bits/time.h: Replaced with contents of the
11716         sysdeps/unix/sysv/linux/i386/bits/time.h file.  All the following
11717         files were identical except for the absence of CLOCK_THREAD_CPUTIME_ID
11718         and CLOCK_PROCESS_CPUTIME_ID in .../linux/bits/time.h; adding these
11719         macros is ok even for architectures that don't now implement them.
11720         * sysdeps/mach/hurd/bits/time.h: File removed.
11721         * sysdeps/unix/sysv/linux/bits/time.h: File removed.
11722         * sysdeps/unix/sysv/linux/i386/bits/time.h: File removed.
11723         * sysdeps/unix/sysv/linux/ia64/bits/time.h: File removed.
11724         * sysdeps/unix/sysv/linux/sparc/bits/time.h: File removed.
11725         * sysdeps/unix/sysv/linux/x86_64/bits/time.h: File removed.
11726
11727 2002-10-18  Jeff Bailey  <jbailey@gnu.org>
11728
11729         * configure.in: Replace obsolete AC_OUTPUT syntax with
11730         AC_CONFIG_FILES, AC_CONFIG_COMMANDS, and new-type AC_OUTPUT trio.
11731
11732         * aclocal.m4 (GLIBC_PROVIDES): Add AC_PROVIDEs for
11733         _AS_PATH_SEPARATOR_PREPARE and _AS_TEST_PREPARE.
11734
11735         * configure.in: Replace AC_FD_CC with AS_MESSAGE_LOG_FD.
11736         * sysdeps/alpha/elf/configure.in: Likewise.
11737         * sysdeps/i386/elf/configure.in: Likewise.
11738         * sysdeps/mach/hurd/configure.in: Likewise.
11739         * sysdeps/x86_64/elf/configure.in: Likewise.
11740
11741         * configure.in: Use AC_CONFIG_SRCDIR and new AC_INIT syntax.
11742
11743         * sysdeps/alpha/elf/configure.in: Remove unneeded sinclude statement.
11744         * sysdeps/generic/configure.in: Likewise.
11745         * sysdeps/i386/elf/configure.in: Likewise.
11746         * sysdeps/ia64/elf/configure.in: Likewise.
11747         * sysdeps/mach/configure.in: Likewise.
11748         * sysdeps/mach/hurd/configure.in: Likewise.
11749         * sysdeps/unix/configure.in: Likewise.
11750         * sysdeps/unix/common/configure.in: Likewise.
11751         * sysdeps/unix/sysv/aix/configure.in: Likewise.
11752         * sysdeps/unix/sysv/linux/configure.in: Likewise.
11753         * sysdeps/unix/sysv/linux/mips/configure.in: Likewise.
11754         * sysdeps/x86_64/elf/configure.in: Likewise.
11755
11756         * aclocal.m4: Use just the bits from AS_INIT that are needed for the
11757         GLIBC_PROVIDES.  Use plain comment instead of HEADER-COMMENT so
11758         that it's obvious when extra autoconf machinery is being dragged in.
11759
11760 2002-10-18  Roland McGrath  <roland@redhat.com>
11761
11762         * configure.in: Remove bogus echo included in
11763         2002-10-08  Aldy Hernandez  <aldyh@redhat.com> change.
11764         * configure: Regenerated.
11765
11766 2002-10-18  Jakub Jelinek  <jakub@redhat.com>
11767
11768         * sysdeps/unix/sysv/linux/pathconf.h (statfs_link_max): Add inline.
11769         (statfs_filesize_max): New function.
11770         * sysdeps/unix/sysv/linux/linux_fsinfo.h (JFFS_SUPER_MAGIC,
11771         JFFS2_SUPER_MAGIC, JFS_SUPER_MAGIC, NTFS_SUPER_MAGIC,
11772         ROMFS_SUPER_MAGIC, UDF_SUPER_MAGIC): Define.
11773         * sysdeps/unix/sysv/linux/fpathconf.c (__fpathconf): Use
11774         statfs_filesize_max.
11775         * sysdeps/unix/sysv/linux/pathconf.c (__pathconf): Likewise.
11776         * sysdeps/unix/sysv/linux/alpha/fpathconf.c: Removed.
11777         * sysdeps/unix/sysv/linux/alpha/pathconf.c: Removed.
11778
11779 2002-10-17  Roland McGrath  <roland@redhat.com>
11780
11781         * configure.in (MIG): Just AC_SUBST it here.
11782         * configure: Regenerated.
11783         * sysdeps/mach/configure.in (MIG): Do the AC_CHECK_TOOL here.
11784         Adding final - argument to all AC_CHECK_HEADER uses for .defs files.
11785         * sysdeps/mach/configure: Regenerated.
11786
11787         * aclocal.m4 (GLIBC_PROVIDES): Add AC_PROVIDE([_AS_TR_SH_PREPARE])
11788         and AC_PROVIDE([_AS_CR_PREPARE]).
11789
11790         * aclocal.m4 (GLIBC_PROVIDES): Add AC_PROVIDE([_AS_ECHO_N_PREPARE]).
11791         Remove AC_LANG(C) call, instead just define([_AC_LANG], [C]).
11792
11793         * elf/dl-support.c: Move _dl_tls_* variables to ...
11794         * sysdeps/generic/libc-tls.c: ... here.
11795
11796         * elf/dl-close.c (remove_slotinfo): Take new argument.  If false,
11797         allow IDX to be one past the current last slotinfo entry.
11798         (_dl_close): Pass IMAP->l_init_called for that parameter.
11799
11800 2002-10-07  Andreas Schwab  <schwab@suse.de>
11801
11802         * aclocal.m4: Fix for autoconf 2.53.
11803         * configure.in: Likewise.  Require autoconf 2.53.
11804
11805 2002-10-08  Richard Henderson  <rth@redhat.com>
11806
11807         * soft-fp/op-4.h: Handle carry correctly in
11808         __FP_FRAC_ADD_3, __FP_FRAC_ADD_4, __FP_FRAC_SUB_3,
11809         __FP_FRAC_SUB_4, __FP_FRAC_DEC_3, __FP_FRAC_DEC_4.
11810         * soft-fp/op-common.h: New macros _FP_DIV_MEAT_N_loop.
11811
11812 2002-10-08  Aldy Hernandez  <aldyh@redhat.com>
11813
11814         * configure.in: Compute completely-soft.
11815         * config.make.in: Make completely-soft available to sub-makes.
11816         * sysdeps/powerpc/soft-fp/Makefile: Add gcc-single-routines and
11817         gcc-double-routines.  Add sim-full.c.  Add fenv_const and
11818         fe_nomask to libm-support.
11819         * sysdeps/powerpc/soft-fp/sim-full.c: New file.
11820         * sysdeps/powerpc/soft-fp/fraiseexcpt.c: New file.
11821         * sysdeps/powerpc/soft-fp/fegetexcept.c: New file.
11822         * sysdeps/powerpc/soft-fp/fclrexcpt.c: New file.
11823         * sysdeps/powerpc/soft-fp/ftestexcept.c: New file.
11824         * sysdeps/powerpc/soft-fp/fgetexcptflg.c: New file.
11825         * sysdeps/powerpc/soft-fp/fsetexcptflg.c: New file.
11826         * sysdeps/powerpc/soft-fp/fedisblxcpt.c: New file.
11827         * sysdeps/powerpc/soft-fp/feenablxcpt.c: New file.
11828         * sysdeps/powerpc/soft-fp/fegetenv.c: New file.
11829         * sysdeps/powerpc/soft-fp/fesetenv.c: New file.
11830         * sysdeps/powerpc/soft-fp/fegetround.c: New file.
11831         * sysdeps/powerpc/soft-fp/fesetround.c: New file.
11832         * sysdeps/powerpc/soft-fp/feupdateenv.c: New file.
11833         * sysdeps/powerpc/soft-fp/feholdexcpt.c: New file.
11834         * sysdeps/powerpc/soft-fp/fenv_const.c: New file.
11835         * sysdeps/powerpc/soft-fp/libm-test-ulps: New file.
11836         * sysdeps/powerpc/soft-fp/soft-supp.h: New file.
11837         * sysdeps/powerpc/soft-fp/Versions: Add libgcc soft-float
11838         symbols.  Add __sim_disabled_exceptions, __sim_exceptions,
11839         __sim_round_mode.
11840         * sysdeps/powerpc/soft-float/Dist: Add sim-full.c, fenv_const.c.
11841         * sysdeps/powerpc/soft-float/sfp-machine.h: Define
11842         FP_HANDLE_EXCEPTIONS.
11843         Define FP_ROUNDMODE.
11844         Redefine FP_* macros to correspond to the FE_* bit positions.
11845         Define FP_DIV_MEAT_S to _FP_DIV_MEAT_1_loop.
11846         Define externs for __sim_exceptions, __sim_disabled_exceptions,
11847         __sim_round_mode, __simulate_exceptions.
11848         * sysdeps/powerpc/fpu/bits/fenv.h: Move file from here...
11849         * sysdeps/powerpc/bits/fenv.h: ...to here.
11850
11851 2002-10-06  Jakub Jelinek  <jakub@redhat.com>
11852
11853         * sysdeps/powerpc/powerpc32/dl-machine.c (__process_machine_rela):
11854         Store R_PPC_UADDR32 and R_PPC_UADDR16 one byte at a time.
11855         Use __builtin_expect for R_PPC_ADDR24 overflow check.  Fix
11856         R_PPC_ADDR16, R_PPC_UADDR16 and R_PPC_ADDR14* overflow check, use
11857         __builtin_expect.
11858
11859 2002-10-15  Jakub Jelinek  <jakub@redhat.com>
11860
11861         * include/resolv.h (__libc_res_nquery, __libc_res_nsearch,
11862         __libc_res_nsend): New prototypes.
11863         * resolv/res_query.c (QUERYSIZE): Define.
11864         (__libc_res_nquery): Renamed from res_nquery.  Added answerp
11865         argument.  Allocate only QUERYSIZE bytes first, if res_nmkquery
11866         fails use MAXPACKET buffer.  Call __libc_res_nsend instead of
11867         res_nsend, pass answerp.
11868         (res_nquery): Changed into wrapper around __libc_res_nquery.
11869         (__libc_res_nsearch): Renamed from res_nsearch.  Added answerp
11870         argument.  Call __libc_res_nquerydomain and __libc_res_nquery
11871         instead of the non-__libc_ variants, pass them answerp.
11872         (res_nsearch): Changed into wrapper around __libc_res_nsearch.
11873         (__libc_res_nquerydomain): Renamed from res_nquerydomain.
11874         Added answerp argument.  Call __libc_res_nquery instead of
11875         res_nquery, pass answerp.
11876         (res_nquerydomain): Changed into wrapper around
11877         __libc_res_nquerydomain.
11878         * resolv/res_send.c: Include sys/ioctl.h.
11879         (MAXPACKET): Define.
11880         (send_vc): Change arguments.  Reallocate answer buffer if it is
11881         too small.
11882         (send_dg): Likewise.
11883         (__libc_res_nsend): Renamed from res_nsend.  Added ansp argument.
11884         Reallocate answer buffer if it is too small and hooks are in use.
11885         Adjust calls to send_vc and send_dg.
11886         (res_nsend): Changed into wrapper around __libc_res_nsend.
11887         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyname2_r): Allocate
11888         just 1K answer buffer on the stack, use __libc_res_nsearch instead
11889         of res_nsearch.
11890         (_nss_dns_gethostbyaddr_r): Similarly with __libc_res_nquery.
11891         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyaddr_r): Likewise.
11892         (_nss_dns_getnetbyname_r): Similarly with __libc_res_nsearch.
11893         * resolv/gethnamaddr.c (gethostbyname2): Likewise.
11894         (gethostbyaddr): Similarly with __libc_res_nquery.
11895         * resolv/Versions (libresolv): Export __libc_res_nquery and
11896         __libc_res_nsearch at GLIBC_PRIVATE.
11897
11898 2002-10-17  Roland McGrath  <roland@redhat.com>
11899
11900         * configure.in: Grok --without-__thread and disable HAVE___THREAD.
11901         * configure: Regenerated.
11902
11903         * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Do CHECK_STATIC_TLS
11904         before performing the reloc, not after.
11905         * sysdeps/i386/dl-machine.h (elf_machine_rel): Likewise.
11906
11907 2002-10-17  Ulrich Drepper  <drepper@redhat.com>
11908
11909         * locale/programs/locale.c (write_locales): Use 'm' flag in fopen call.
11910         * locale/programs/linereader.c (lr_open): Likewise.
11911         * locale/programs/charmap-dir.c (charmap_open): Likewise.
11912         * locale/programs/locarchive.c (add_locale_to_archive): Likewise.
11913
11914 2002-10-17  Isamu Hasegawa  <isamu@yamato.ibm.com>
11915
11916         * posix/bug-regex11.c: Add a test case for the bug reported by
11917         Paolo Bonzini <bonzini@gnu.org>.
11918         * posix/regexec.c (sift_states_bkref): Use correct destination of
11919         the back reference.
11920
11921 2002-10-17  Roland McGrath  <roland@redhat.com>
11922
11923         * elf/dl-load.c (_dl_map_object_from_fd): Don't check DF_STATIC_TLS.
11924         * elf/dl-reloc.c (_dl_relocate_object: CHECK_STATIC_TLS): New macro
11925         to signal error if an IE-model TLS reloc resolved to a dlopen'd module.
11926         * sysdeps/i386/dl-machine.h (elf_machine_rel, elf_machine_rela):
11927         Call it after performing TPOFF relocs.
11928         * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Likewise.
11929         * sysdeps/sh/dl-machine.h (elf_machine_rela): Likewise.
11930         * elf/dl-conflict.c (CHECK_STATIC_TLS): New macro (no-op).
11931
11932         * elf/dl-close.c (remove_slotinfo): Change asserts so as not to crash
11933         when closing a partially-initialized object.
11934
11935         * elf/dl-load.c (_dl_map_object_from_fd) [! USE_TLS]: Call lose
11936         instead of _dl_fatal_printf when we see PT_TLS.
11937
11938         * Makeconfig (CPPFLAGS): Fix last change to use $(libof-$(<F))
11939         instead of $(libof-$<).
11940
11941 2002-10-16  Roland McGrath  <roland@redhat.com>
11942
11943         * cppflags-iterator.mk (CPPFLAGS-$(cpp-src)): Variable removed.
11944         instead of += to append, to be sure $(lib) gets expanded at defn time.
11945         (libof-$(cpp-src)): New variable, define this instead.
11946         * extra-lib.mk (cpp-srcs-left): Reduce duplication in include setup.
11947         (lib): Don't use override.
11948         (CPPFLAGS-$(lib)): New variable, put -D's here.
11949         * Makeconfig (CPPFLAGS): Use basename fn for CPPFLAGS-basename.
11950         Also add $(CPPFLAGS-LIB) before the file-specific flags, for each
11951         LIB found by $(libof-*) for basename, target, or source.
11952         * Makerules (CPPFLAGS-nonlib): New variable.
11953         * nscd/Makefile (lib): Set to nonlib when using cppflags-iterator.mk.
11954         * locale/Makefile (lib): Likewise.
11955         * sunrpc/Makefile (lib): Likewise.
11956
11957         * sysdeps/unix/sysv/linux/fpathconf.c (LINUX_LINK_MAX): Move macro ...
11958         * sysdeps/unix/sysv/linux/linux_fsinfo.h (LINUX_LINK_MAX): ... here.
11959         * sysdeps/unix/sysv/linux/pathconf.h: New file.
11960         (statfs_link_max): New function, guts from fpathconf.c.
11961         * sysdeps/unix/sysv/linux/fpathconf.c: Rewritten using that.
11962         * sysdeps/unix/sysv/linux/pathconf.c (__pathconf): Likewise.
11963         * sysdeps/unix/sysv/linux/alpha/pathconf.c (__pathconf): Rewritten
11964         to use the linux/pathconf.c code by #include rather than duplication.
11965         * sysdeps/unix/sysv/linux/alpha/fpathconf.c (__pathconf): Likewise.
11966
11967 2002-10-16  Jakub Jelinek  <jakub@redhat.com>
11968
11969         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
11970         Use __libc_errno only for libc itself.
11971
11972 2002-10-16  Andreas Jaeger  <aj@suse.de>
11973
11974         * sysdeps/x86_64/_mcount.S: Fix off-by-1 error in argument access.
11975
11976 2002-10-16  Ulrich Drepper  <drepper@redhat.com>
11977
11978         * sysdeps/unix/sysv/linux/i386/sysdep.h (SYSCALL_ERROR_HANDLER):
11979         Use __libc_errno only for libc itself.
11980
11981 2002-10-15  Roland McGrath  <roland@redhat.com>
11982             Jakub Jelinek  <jakub@redhat.com>
11983
11984         * sysdeps/unix/sysv/linux/Makefile
11985         ($(objpfx)syscall-%.h $(objpfx)syscall-%.d): Take code from
11986         sparc/Makefile to produce a bi-arch file as needed.
11987         That's now parameterized by the variable $(64bit-predefine).
11988         Use LC_ALL=C for `comm' commands in that rule.
11989         No longer conditional on [$(no_syscall_list_h)].
11990         * sysdeps/unix/sysv/linux/sparc/Makefile: Remove replacement rules.
11991         (64bit-predefine): New variable.
11992         * sysdeps/unix/sysv/linux/x86_64/Makefile: Likewise.
11993         * sysdeps/unix/sysv/linux/s390/Makefile: New file.
11994         * sysdeps/unix/sysv/linux/powerpc/Makefile
11995         (64bit-predefine): New variable.
11996
11997 2002-10-15  Roland McGrath  <roland@redhat.com>
11998
11999         * sysdeps/unix/sysv/linux/Makefile
12000         ($(objpfx)syscall-%.h $(objpfx)syscall-%.d)
12001
12002         * login/utmp-private.h: Declare __libc_utmp_lock.
12003         * sysdeps/unix/getlogin_r.c (getlogin_r): Take __libc_utmp_lock once
12004         and call __libc_utmp_jump_table functions directly, instead of using
12005         __setutent et al.
12006
12007         * sysdeps/unix/sysv/linux/configure.in: Use case instead of if.
12008         * sysdeps/unix/sysv/linux/configure: Regenerated.
12009
12010         * sysdeps/gnu/bits/utmp.h: Include <bits/wordsize.h>.
12011         (struct lastlog) [__WORDSIZE == 64 && __WORDSIZE_COMPAT32]:
12012         Use int32_t for ll_time.
12013         (struct utmp) [__WORDSIZE == 64 && __WORDSIZE_COMPAT32]:
12014         Use int32_t instead of long int for ut_session.
12015         Use an anonymous struct with 32-bit fields for ut_tv.
12016         * sysdeps/gnu/bits/utmpx.h: Include <bits/wordsize.h>.
12017         (struct utmpx) [__WORDSIZE == 64 && __WORDSIZE_COMPAT32]: Do the same
12018         here as in utmp.h for `struct utmp'.
12019         * sysdeps/unix/sysv/linux/powerpc/bits/utmp.h: File removed.
12020         * sysdeps/unix/sysv/linux/powerpc/bits/utmpx.h: File removed.
12021         * sysdeps/unix/sysv/linux/sparc/bits/utmp.h: File removed.
12022         * sysdeps/unix/sysv/linux/sparc/bits/utmpx.h: File removed.
12023         * sysdeps/unix/sysv/linux/x86_64/bits/utmp.h: File removed.
12024         * sysdeps/unix/sysv/linux/x86_64/bits/utmpx.h: File removed.
12025
12026         * sysdeps/unix/sysv/linux/bits/resource.h: Replaced with the contents
12027         of the sysdeps/unix/sysv/linux/i386/bits/resource.h file.
12028         All the following files were identical or equivalent to it.
12029         * sysdeps/unix/sysv/linux/i386/bits/resource.h: File removed.
12030         * sysdeps/unix/sysv/linux/arm/bits/resource.h: File removed.
12031         * sysdeps/unix/sysv/linux/cris/bits/resource.h: File removed.
12032         * sysdeps/unix/sysv/linux/hppa/bits/resource.h: File removed.
12033         * sysdeps/unix/sysv/linux/ia64/bits/resource.h: File removed.
12034         * sysdeps/unix/sysv/linux/m68k/bits/resource.h: File removed.
12035         * sysdeps/unix/sysv/linux/powerpc/bits/resource.h: File removed.
12036         * sysdeps/unix/sysv/linux/s390/bits/resource.h: File removed.
12037         * sysdeps/unix/sysv/linux/sh/bits/resource.h: File removed.
12038         * sysdeps/unix/sysv/linux/x86_64/bits/resource.h: File removed.
12039
12040         * sysdeps/unix/sysv/linux/bits/socket.h (struct msghdr): Use size_t
12041         instead of int for msg_iovlen, instead of socklen_t for msg_controllen.
12042         Other than the previously incorrect sign of msg_iovlen, this is a
12043         no-op on 32-bit platforms.  On 64-bit platforms it makes this header
12044         match their layouts as well, so the following are now identical to it.
12045         * sysdeps/unix/sysv/linux/s390/bits/socket.h: File removed.
12046         * sysdeps/unix/sysv/linux/sparc/bits/socket.h: File removed.
12047         * sysdeps/unix/sysv/linux/x86_64/bits/socket.h: File removed.
12048         * sysdeps/unix/sysv/linux/ia64/bits/socket.h: File removed.
12049         * sysdeps/unix/sysv/linux/alpha/bits/socket.h: File removed.
12050
12051 2002-10-15  Ulrich Drepper  <drepper@redhat.com>
12052
12053         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_VFORK_SYSCALL):
12054         Define for 2.4+ kernels.
12055
12056         * sysdeps/unix/sysv/linux/i386/vfork.S: Optimize for kernels which
12057         are known to have the vfork syscall.  Don't confuse the CPUs
12058         branch prediction unit by jumping to the return address.
12059
12060         * sysdeps/unix/sysv/linux/alpha/fpathconf.c (__fpathconf): Add
12061         support for reiserfs and xfs.
12062
12063         * sysdeps/unix/sysv/linux/fpathconf.c (__fpathconf): Add case for
12064         XFS link count.
12065         * sysdeps/unix/sysv/linux/linux_fsinfo.h: Define XFS_SUPER_MAGIC
12066         and XFS_LINK_MAX.
12067         Patch by Eric Sandeen <sandeen@sgi.com> [PR libc/4706].
12068
12069 2002-10-16  Jakub Jelinek  <jakub@redhat.com>
12070
12071         * include/libc-symbols.h (attribute_tls_model_ie): Define.
12072         * include/errno.h (errno): Define to __libc_errno in libc.so.
12073         Add attribute_tls_model_ie.
12074         * include/netdb.h (h_errno): Define to __libc_h_errno in libc.so.
12075         Add attribute_tls_model_ie.
12076         * include/resolv.h (_res): Define to __libc_res in libc.so.  Add
12077         attribute_tls_model_ie.
12078         * inet/herrno.c (__libc_h_errno): Add hidden alias to h_errno.
12079         (h_errno): Define.
12080         * resolv/res_libc.c (__libc_res): Add hidden alias to _res.
12081         (_res): Define.
12082         * sysdeps/generic/bits/libc-tsd.h (__libc_tsd_define): Add
12083         attribute_tls_model_ie.
12084         * sysdeps/generic/errno-loc.c (errno): Only undefine if not using
12085         __thread.
12086         * sysdeps/generic/errno.c (__libc_errno): Add hidden alias to errno.
12087         * sysdeps/unix/sysv/linux/i386/sysdep.h (SYSCALL_ERROR_HANDLER): Use
12088         __libc_errno in USE___THREAD case.
12089         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
12090         Likewise.
12091         * configure.in (HAVE_TLS_MODEL_ATTRIBUTE): Check for
12092         __attribute__((tls_model (""))).
12093         * configure: Rebuilt.
12094         * config.h.in (HAVE_TLS_MODEL_ATTRIBUTE): Add.
12095
12096 2002-10-15  Ulrich Drepper  <drepper@redhat.com>
12097
12098         * timezone/asia: Update from tzdata2002d.
12099         * timezone/australasia: Likewise.
12100         * timezone/iso3166.tab: Likewise.
12101         * timezone/southamerica: Likewise.
12102         * timezone/zone-tab: Likewise.
12103
12104 2002-10-15  Roland McGrath  <roland@redhat.com>
12105
12106         * sysdeps/generic/dl-tls.c (_dl_deallocate_tls) [TLS_TCB_AT_TP]:
12107         Adjust TCB pointer before calling free, so we get the whole block.
12108
12109 2002-10-14  Roland McGrath  <roland@redhat.com>
12110
12111         * sysdeps/unix/sysv/linux/x86_64/sigaction.c
12112         [HAVE_HIDDEN && !HAVE_BROKEN_VISIBILITY_ATTRIBUTE]: Declare restore_rt
12113         extern using attribute_hidden instead of static, avoids warning.
12114
12115 2002-10-09  Jakub Jelinek  <jakub@redhat.com>
12116
12117         * sysdeps/unix/sysv/linux/configure.in: Use */lib64 for s390x too.
12118         * sysdeps/unix/sysv/linux/configure: Rebuilt.
12119
12120 2002-10-14  Ulrich Drepper  <drepper@redhat.com>
12121
12122         * po/sv.po: Update from translation team.
12123
12124 2002-10-12  H.J. Lu  <hjl@gnu.org>
12125
12126         * sunrpc/thrsvc.c (PROCQUIT): New.
12127         (struct rpc_arg): New.
12128         (dispatch): Call exit (0) if request->rq_proc == PROCQUIT.
12129         (test_one_call): Take struct rpc_arg * instead of CLIENT *c.
12130         (thread_wrapper): Modified for struct rpc_arg * and call PROCQUIT.
12131         (main): Modified for struct rpc_arg *.
12132
12133 2002-10-14  Ulrich Drepper  <drepper@redhat.com>
12134
12135         * dirent/scandir.c: Rearrange code a bit to reduce binary size.
12136
12137 2002-10-14  Jakub Jelinek  <jakub@redhat.com>
12138
12139         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Include tls.h.
12140         (SYSCALL_ERROR_HANDLER): Use RTLD_PRIVATE_ERRNO sequence
12141         in ld.so even if __thread is supported.
12142
12143 2002-10-13  Jakub Jelinek  <jakub@redhat.com>
12144
12145         * sysdeps/unix/sysv/linux/arm/profil-counter.h (profil_counter):
12146         Add hack to prevent the compiler from clobbering the signal context.
12147         * sysdeps/unix/sysv/linux/sh/profil-counter.h (profil_counter):
12148         Likewise.
12149         * sysdeps/unix/sysv/linux/x86_64/profil-counter.h (profil_counter):
12150         Likewise.
12151
12152 2002-10-14  Andreas Jaeger  <aj@suse.de>
12153
12154         * sysdeps/mips/fpu/libm-test-ulps: Regenerated by
12155         Guido Guenther <agx@sigxcpu.org>.
12156
12157 2002-10-14  Ulrich Drepper  <drepper@redhat.com>
12158
12159         * po/sk.po: Update from translation team.
12160
12161 2002-09-26  Roland McGrath  <roland@redhat.com>
12162
12163         * elf/dl-load.c (_dl_dst_count, _dl_dst_substitute): Handle $LIB
12164         dynamic string tag.
12165         * elf/Makefile ($(objpfx)trusted-dirs.st): Make the output define
12166         DL_DST_LIB based on $(slibdir).
12167
12168 2002-10-13  Roland McGrath  <roland@frob.com>
12169
12170         * elf/rtld-Rules ($(objpfx)rtld-libc.a): Use $(verbose) in ar command.
12171
12172         * sysdeps/mach/hurd/getresuid.c: New file.
12173         * sysdeps/mach/hurd/getresgid.c: New file.
12174         * sysdeps/mach/hurd/setresuid.c: New file.
12175         * sysdeps/mach/hurd/setresgid.c: New file.
12176
12177         * posix/unistd.h [__USE_GNU] (getresuid, getresgid, setresuid,
12178         setresgid): Declare them.
12179         * NEWS: Mention it.
12180         * include/unistd.h
12181         (__getresuid, __getresgid, __setresuid, __setresgid): Declare them,
12182         add libc_hidden_proto.
12183         * posix/Versions (libc: GLIBC_2.3.2): New set.  Add
12184         getresuid, getresgid, setresuid, setresgid here.
12185         * Versions.def (libc): Define GLIBC_2.3.2 set.
12186         * sysdeps/generic/getresuid.c (__getresuid): Fix argument types.
12187         Add libc_hidden_def.
12188         * sysdeps/generic/getresgid.c (__getresgid): Likewise.
12189         * sysdeps/generic/setresgid.c: New file.
12190         * sysdeps/generic/setresuid.c: New file.
12191         * sysdeps/unix/sysv/linux/Makefile [$(subdir) = misc]
12192         (sysdep_routines): Don't add getresuid and getresgid here.
12193         * sysdeps/unix/sysv/linux/arm/Makefile [$(subdir) = misc]
12194         (sysdep_routines): Don't add setresuid and setresgid here.
12195         * sysdeps/unix/sysv/linux/cris/Makefile: Likewise.
12196         * sysdeps/unix/sysv/linux/sh/Makefile: Likewise.
12197         * sysdeps/unix/sysv/linux/s390/s390-32/Makefile: Likewise.
12198         * sysdeps/unix/sysv/linux/s390/s390-64/Makefile: Likewise.
12199         * sysdeps/unix/sysv/linux/i386/Makefile: Likewise.
12200         * sysdeps/unix/sysv/linux/m68k/Makefile: Likewise.
12201         * posix/Makefile (routines): Add them all here instead.
12202         * sysdeps/unix/sysv/linux/i386/getresuid.c (getresuid): Renamed to
12203         __getresuid.  Add libc_hidden_def for that, and weak alias to old name.
12204         * sysdeps/unix/sysv/linux/i386/getresgid.c (getresgid): Renamed to
12205         __getresgid.  Add libc_hidden_def for that, and weak alias to old name.
12206         * sysdeps/unix/sysv/linux/i386/setresuid.c: Add libc_hidden_def.
12207         [! __NR_setresuid]: Include generic file.
12208         * sysdeps/unix/sysv/linux/i386/setresgid.c (setresgid): Renamed to
12209         __setresgid.  Add libc_hidden_def for that, and weak alias to old name.
12210         [! __NR_setresuid]: Include generic file.
12211         * sysdeps/unix/sysv/linux/syscalls.list (setresuid, setresgid):
12212         Caller is - now, not EXTRA.
12213         * sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list
12214         (setresuid, setresgid, getresuid, getresgid): Likewise.
12215         * sysdeps/unix/sysv/linux/syscalls.list (getresuid, getresgid):
12216         Add these calls here.
12217         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Remove them here.
12218         * sysdeps/unix/sysv/linux/hppa/syscalls.list: Likewise.
12219         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
12220         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
12221         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
12222         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Likewise.
12223         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Likewise.
12224         * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise.
12225         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
12226
12227         * sysdeps/unix/sysv/linux/Makefile [$(subdir) = misc]
12228         (sysdep_routines): Add setfsuid and setfsgid here.
12229         * sysdeps/unix/sysv/linux/arm/Makefile: Not here.
12230         * sysdeps/unix/sysv/linux/sparc/sparc32/Makefile: Likewise.
12231         * sysdeps/unix/sysv/linux/cris/Makefile: Likewise.
12232         * sysdeps/unix/sysv/linux/sh/Makefile: Likewise.
12233         * sysdeps/unix/sysv/linux/s390/s390-32/Makefile: Likewise.
12234         * sysdeps/unix/sysv/linux/s390/s390-64/Makefile: Likewise.
12235         * sysdeps/unix/sysv/linux/i386/Makefile: Likewise.
12236         * sysdeps/unix/sysv/linux/m68k/Makefile: Likewise.
12237
12238         * hurd/errno.c: Renamed to ...
12239         * hurd/errno-loc.c: ... this.
12240         * hurd/Makefile (routines): errno -> errno-loc
12241
12242 2002-10-13  Ulrich Drepper  <drepper@redhat.com>
12243
12244         * po/de.po: Update from translation team.
12245
12246         * MakeTAGS: Add -E flag to xgettext runs.
12247
12248 2002-10-12  Ulrich Drepper  <drepper@redhat.com>
12249
12250         * po/fr.po: Update from translation team.
12251
12252         * sysdeps/posix/system.c: Remove support for old and buggy SCO systems.
12253         Optimize a bit for use in glibc.
12254
12255 2002-10-12  Roland McGrath  <roland@redhat.com>
12256
12257         * stdio-common/tst-rndseek.c (TIMEOUT): Increase to 10 seconds.
12258         Some machines are slow.  Guido Guenther <agx@sigxcpu.org> has one.
12259
12260 2002-10-12  Ulrich Drepper  <drepper@redhat.com>
12261
12262         * po/sv.po: Update from translation team.
12263
12264 2002-10-11  Isamu Hasegawa  <isamu@yamato.ibm.com>
12265
12266         * posix/regcomp.c (re_compile_fastmap_iter): Remove the handling
12267         OP_CONTEXT_NODE.
12268         (regfree): Likewise.
12269         (create_initial_state): Likewise.
12270         (analyze): Remove the substitutions which became useless.
12271         (calc_first): Likewise.
12272         (calc_epsdest): Use edests of OP_BACK_REF in case that it has
12273         epsilon destination.
12274         (duplicate_node_closure): New function.
12275         (duplicate_node): Remove the handling OP_CONTEXT_NODE.
12276         (calc_inveclosure): Likewise.
12277         (calc_eclosure): Likewise.
12278         (calc_eclosure_iter): Invoke duplicate_node_closure instead of
12279         direct invocation of duplicate_node.
12280         (parse): Don't use comma operator in the return to avoid compiler
12281         warning.
12282         (parse_reg_exp): Likewise.
12283         (parse_branch): Likewise.
12284         (parse_expression): Likewise.
12285         (parse_sub_exp): Likewise.
12286         (parse_dup_op): Likewise.
12287         * posix/regex_internal.c (re_dfa_add_node): Remove the substitutions
12288         which became useless.
12289         (create_ci_newstate): Remove the handling OP_CONTEXT_NODE.
12290         (create_cd_newstate): Likewise.
12291         * posix/regex_internal.h (re_token_type_t): Remove the obsolete type.
12292         (re_token_t): Likewise.
12293         (re_dfa_t): Likewise.
12294         (re_node_set_remove): New macro.
12295         * posix/regexec.c (check_matching): Remove the handling
12296         OP_CONTEXT_NODE.
12297         (check_halt_node_context): Likewise.
12298         (proceed_next_node): Likewise.
12299         (pop_fail_stack): Fix the memory leak.
12300         (set_regs): Likewise.
12301         (free_fail_stack_return): New function.
12302         (sift_states_backward): Fix the memory leak.  Remove the handling
12303         OP_CONTEXT_NODE.
12304         (update_cur_sifted_state): Append some if clause to avoid redundant
12305         call.
12306         (sub_epsilon_src_nodes): Use IS_EPSILON_NODE since it might be a
12307         back reference.
12308         (check_dst_limits): Remove the handling OP_CONTEXT_NODE.
12309         (check_subexp_limits): Likewise.
12310         (search_subexp): Likewise.
12311         (sift_states_bkref): Likewise.
12312         (transit_state_mb): Likewise.
12313         (transit_state_bkref_loop): Likewise.
12314         (transit_state_bkref_loop): Likewise.
12315         (group_nodes_into_DFAstates): Likewise.
12316         (check_node_accept): Likewise.
12317         (sift_ctx_init): Add initializing.
12318
12319 2002-10-12  Ulrich Drepper  <drepper@redhat.com>
12320
12321         * sysdeps/unix/sysv/linux/i386/sysdep.h (INLINE_SYSCALL): Use
12322         __builtin_expect.
12323
12324 2002-10-11  Ulrich Drepper  <drepper@redhat.com>
12325
12326         * elf/dl-load.c (_dl_map_object_from_fd): Remove unnecessarily
12327         duplicated variable c.
12328
12329         * sysdeps/unix/sysv/linux/sigwait.c (__sigwait): Use INTERNAL_SYSCALL
12330         if possible.
12331
12332         * sysdeps/unix/sysv/linux/i386/sysdep.h
12333         (INTERNAL_SYSCALL_ERROR_P): New define.
12334         (INTERNAL_SYSCALL_ERRNO): Likewise.
12335
12336         * sysdeps/unix/sysv/linux/i386/profil-counter.h (profil_counter):
12337         Add hack to prevent the compiler from clobbering the signal context.
12338
12339 2002-10-11  Roland McGrath  <roland@redhat.com>
12340
12341         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
12342         Fix typos.
12343
12344         * sysdeps/generic/dl-lookupcfg.h: Include <tls.h>.
12345         * sysdeps/sh/dl-lookupcfg.h: File removed.
12346         * sysdeps/i386/dl-lookupcfg.h: File removed.
12347
12348         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER): Add
12349         missing labels and ; from last change.
12350
12351         * stdio-common/tst-sscanf.c (val_double): Append .0 to large whole
12352         number literals, so they are doubles instead of ints.
12353
12354 2002-10-09  Roland McGrath  <roland@redhat.com>
12355
12356         * sysdeps/generic/bits/libc-tsd.h [USE___THREAD]: Conditional
12357         changed from [USE_TLS && HAVE___THREAD].
12358
12359         * sysdeps/i386/dl-machine.h (elf_machine_type_class, elf_machine_rel):
12360         Disable TLS relocs if [RTLD_BOOTSTRAP && !USE___THREAD].
12361         * sysdeps/x86_64/dl-machine.h
12362         (elf_machine_type_class, elf_machine_rela): Likewise.
12363         * sysdeps/sh/dl-machine.h (elf_machine_type_class, elf_machine_rela):
12364         Likewise.
12365
12366         * include/link.h (struct link_map): Remove member l_tls_tp_initialized.
12367         * elf/rtld.c (_dl_start_final, dl_main): Don't use it.
12368         (_dl_start): Conditionalize PT_TLS check on [USE___THREAD].
12369
12370         * sysdeps/i386/dl-tls.h (__TLS_GET_ADDR): Use ___tls_get_addr_internal
12371         instead of ___tls_get_addr.
12372         (___tls_get_addr_internal): Add attribute_hidden to decl.
12373
12374         * sysdeps/generic/ldsodefs.h (struct rtld_global): New variable
12375         _dl_error_catch_tsd.
12376         * elf/rtld.c (startup_error_tsd): New function.
12377         (dl_main): Point _dl_error_catch_tsd at that.
12378         * elf/dl-error.c: Don't use libc-tsd.h for DL_ERROR,
12379         use new function pointer instead.
12380         * elf/dl-tsd.c: New file.
12381         * elf/Makefile (routines): Add it.
12382
12383 2002-10-07  Roland McGrath  <roland@redhat.com>
12384
12385         * elf/dl-misc.c (_dl_debug_vdprintf): Use INTERNAL_SYSCALL macro for
12386         writev if it's available.  Otherwise if [RTLD_PRIVATE_ERRNO] then
12387         take _dl_load_lock around calling __writev.
12388
12389         * sysdeps/unix/sysv/linux/i386/sysdep.h (INTERNAL_SYSCALL): New macro.
12390         (INLINE_SYSCALL): Use that.
12391
12392         * sysdeps/generic/dl-sysdep.h: New file.
12393         * sysdeps/mach/hurd/dl-sysdep.h: New file.
12394         * sysdeps/generic/ldsodefs.h: Include <dl-sysdep.h>.
12395         * include/errno.h [IS_IN_rtld]: Include <dl-sysdep.h> to define ...
12396         [RTLD_PRIVATE_ERRNO]: Use a hidden global variable for errno and
12397         access it directly.
12398         * elf/dl-minimal.c (__errno_location): Removed.
12399         * sysdeps/unix/i386/sysdep.S (__syscall_errno) [RTLD_PRIVATE_ERRNO]:
12400         Use GOTOFF access for errno.
12401         * sysdeps/unix/sysv/linux/i386/sysdep.h
12402         [RTLD_PRIVATE_ERRNO] (SYSCALL_ERROR_HANDLER): Likewise.
12403
12404         * sysdeps/unix/x86_64/sysdep.S (__syscall_errno) [RTLD_PRIVATE_ERRNO]:
12405         Use PC-relative access for errno.
12406         * sysdeps/unix/sysv/linux/x86_64/sysdep.h
12407         [RTLD_PRIVATE_ERRNO] (SYSCALL_ERROR_HANDLER): Likewise.
12408
12409         * include/tls.h: New file.
12410         (USE___THREAD): New macro.
12411         Define to 1 under [USE_TLS && HAVE___THREAD] and only when compiling
12412         libc or libpthread.
12413         * sysdeps/unix/sysv/linux/i386/sysdep.h [USE___THREAD]: Conditional
12414         changed from [USE_TLS && HAVE___THREAD].
12415         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
12416         * sysdeps/unix/i386/sysdep.S: Likewise.
12417         * sysdeps/unix/x86_64/sysdep.S: Likewise.
12418         * include/errno.h: Likewise.
12419         * include/netdb.h: Likewise.
12420         * include/resolv.h: Likewise.
12421
12422         * sysdeps/generic/errno.c: New file.
12423         * csu/Makefile (aux): New variable, list errno.
12424         * sysdeps/unix/sysv/linux/i386/sysdep.S (errno, _errno): Remove defns.
12425         * sysdeps/unix/sysv/linux/m68k/sysdep.S: Likewise.
12426         * sysdeps/unix/sysv/linux/x86_64/sysdep.S: Likewise.
12427         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S: Likewise.
12428         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S: Likewise.
12429         * sysdeps/unix/sysv/linux/arm/sysdep.S: Likewise.
12430         * sysdeps/unix/sysv/linux/cris/sysdep.S: Likewise.
12431         * sysdeps/unix/sysv/linux/hppa/sysdep.c: Likewise.
12432         * sysdeps/unix/sysv/linux/ia64/sysdep.S: Likewise.
12433         * sysdeps/unix/sysv/linux/powerpc/sysdep.c: Likewise.
12434         * sysdeps/unix/sysv/linux/sparc/sysdep.S: Likewise.
12435         * sysdeps/unix/sysv/linux/sh/sysdep.S: Likewise.
12436         * sysdeps/unix/alpha/sysdep.S: Likewise.
12437         * sysdeps/generic/start.c: Likewise.
12438         * sysdeps/unix/start.c: Likewise.
12439         * sysdeps/unix/arm/start.c: Likewise.
12440         * sysdeps/unix/bsd/ultrix4/mips/start.S: Likewise.
12441         * sysdeps/unix/sparc/start.c: Likewise.
12442         * sysdeps/unix/sysv/irix4/start.c: Likewise.
12443         * sysdeps/unix/sysv/linux/mips/sysdep.S: File removed.
12444
12445         * manual/search.texi (Tree Search Function, Hash Search Function):
12446         Mention search.h clearly.
12447
12448 2002-10-05  Roland McGrath  <roland@redhat.com>
12449
12450         * elf/dl-fxstat64.c: File removed.
12451         * elf/dl-xstat64.c: File removed.
12452         * elf/Makefile (rtld-routines): Remove them.
12453         * sysdeps/unix/sysv/linux/xstat64.c: Remove RTLD_STAT64 conditionals.
12454         Instead, use strong_alias instead of versioned_symbol in the
12455         !SHLIB_COMPAT case.
12456         * sysdeps/unix/sysv/linux/fxstat64.c: Likewise.
12457         * sysdeps/unix/sysv/linux/lxstat64.c: Likewise.
12458
12459         * include/shlib-compat.h
12460         (SHLIB_COMPAT): Require that IS_IN_##lib be defined nonzero.
12461         [! NOT_IN_libc] (IS_IN_libc): Define it.
12462         * cppflags-iterator.mk (CPPFLAGS-$(cpp-src)): Use -Dx=1 not just -Dx.
12463         * elf/Makefile (CPPFLAGS-.os): Likewise.
12464
12465         * sunrpc/rpc_main.c (main): Don't declare with noreturn attribute.
12466         Return the status instead of calling exit.
12467
12468         * Makeconfig (CFLAGS): Prepend -std=gnu99.
12469         * Makerules (+make-deps): Use $(CFLAGS) only for .c sources.
12470         Remove superfluous rm command, whose @ plus make bugs hid
12471         all these commands from the make output.
12472
12473         * include/stubs-prologue.h: New file.  Give #error under #ifdef _LIBC.
12474         * Makefile ($(inst_includedir)/gnu/stubs.h): Depend on it.
12475         Use that file's contents instead of literal echo's for the prologue.
12476         * include/features.h: Include <gnu/stubs.h> unconditionally.
12477         * include/gnu/stubs.h: New file.
12478
12479 2002-09-30  Roland McGrath  <roland@redhat.com>
12480
12481         * elf/rtld-Rules: New file.
12482         * elf/Makefile ($(objpfx)librtld.map, $(objpfx)librtld.mk,
12483         $(objpfx)rtld-libc.a): New targets.
12484         (generated): Add them.
12485         (reloc-link): Remove -o $@ from the variable.
12486         ($(objpfx)dl-allobjs.os): Add -o $@ after $(reloc-link).
12487         (distribute): Add rtld-Rules.
12488         (CPPFLAGS-.os): Define this instead of CFLAGS-.os.
12489         * Makerules ($(+sysdir_pfx)sysd-rules): Emit rules for rtld-% targets.
12490         (common-mostlyclean, common-clean): Clean up rtld-* files.
12491         * sysdeps/unix/make-syscalls.sh: Add rtld-*.os target name to rules.
12492
12493 2003-05-20  Jakub Jelinek  <jakub@redhat.com>
12494
12495         * elf/dynamic-link.h (elf_get_dynamic_info): Add temp argument.
12496         If temp != NULL, copy dynamic entries which need relocation to temp
12497         array before relocating.
12498         (DL_RO_DYN_TEMP_CNT): Define.
12499         * elf/dl-load.c (_dl_map_object_from_fd): Adjust caller.
12500         * elf/rtld.c (_dl_start): Likewise.
12501         (dl_main): Likewise.  Add dyn_temp static variable.
12502
12503 2002-10-11  Roland McGrath  <roland@redhat.com>
12504
12505         * sysdeps/generic/dl-tls.c (__tls_get_addr): After freeing block in
12506         now-unused dtv slot, reset the slot to TLS_DTV_UNALLOCATED.
12507
12508         * elf/tls-macros.h [__x86_64__] (TLS_GD): Fix the sequence with the
12509         proper set of no-op insn prefixes.
12510
12511         * elf/tst-tls8.c (do_test): Use %zd format for l_tls_modid members.
12512
12513 2002-10-11  Ulrich Drepper  <drepper@redhat.com>
12514
12515         * sysdeps/unix/sysv/linux/execve.c: Don't try calling
12516         __pthread_kill_other_threads_np.
12517
12518         * sysdeps/generic/pselect.c: Avoid unnecessary sigprocmask calls.
12519
12520 2002-10-08  Roland McGrath  <roland@redhat.com>
12521
12522         * locale/newlocale.c (__newlocale): If setting all categories to "C",
12523         just return &_nl_C_locobj instead of copying it.
12524         * locale/freelocale.c (__freelocale): Check for &_nl_C_locobj.
12525         * locale/duplocale.c (__duplocale): Likewise.
12526
12527 2002-10-07  Roland McGrath  <roland@frob.com>
12528
12529         * config.h.in (HAVE_I386_SET_GDT): New #undef.
12530         * sysdeps/mach/configure.in: Define it with new check for i386_set_gdt.
12531         * sysdeps/mach/configure: Regenerated.
12532
12533 2002-10-06  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
12534
12535         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (INLINE_SYSCALL):
12536         Add all necessary register outputs for syscall-clobbered registers.
12537
12538 2002-10-02  David Mosberger  <davidm@hpl.hp.com>
12539
12540         * sysdeps/ia64/bzero.S: Rewritten by Sverre Jarp to tune for
12541         Itanium 2 (and Itanium).
12542         Fix unwind directives and make it fit in 80 columns.
12543         * sysdeps/ia64/memset.S: Likewise.
12544         * sysdeps/ia64/memcpy.S: Likewise.
12545         Move jump table to .rodata section.
12546
12547 2002-10-03  Roland McGrath  <roland@frob.com>
12548
12549         * sysdeps/mach/hurd/i386/init-first.c (_hurd_stack_setup): Add
12550         clobbers to asm.
12551
12552 2002-10-10  Andreas Jaeger  <aj@suse.de>
12553
12554         * sysdeps/x86_64/_mcount.S: Restore correct registers.
12555
12556 2002-10-10  Ulrich Drepper  <drepper@redhat.com>
12557
12558         * posix/Versions (libc) [GLIBC_PRIVATE]: Add __pselect.
12559
12560 2002-10-09  Ulrich Drepper  <drepper@redhat.com>
12561
12562         * sysdeps/generic/ldsodefs.h: Remove attribute_hidden from
12563         _dl_allocate_tls_init.  Add rtld_hidden_proto.
12564         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Add
12565         rtld_hidden_def.
12566         * elf/Versions (ld) [GLIBC_PRIVATE]: Add _dl_allocate_tls_init.
12567
12568         * version.h (VERSION): Bump to 2.3.1.
12569
12570         * Make-dist: Add back one of the tar invocations removed before.
12571
12572         * stdlib/Makefile (distribute): Add allocalim.h.
12573
12574         * sysdeps/generic/bits/libc-tsd.h [!(USE_TLS && HAVE___THREAD)]
12575         (__libc_tsd_address): Use correct variable name.
12576         Patch by Stefan Jones <stefan.jones@multigig.com>.
12577
12578         * sysdeps/unix/sysv/linux/ia64/getcontext.S: Add missing ;;.
12579         Reported by edwardsg@sgi.com [PR libc/4678].
12580
12581         * Versions.def (libc): Add GLIBC_2.3.1.
12582         (libpthread): Add GLIBC_2.3.1.
12583
12584         * include/signal.h: Add libc_hidden_proto for __sigwait, __sigwaitinfo,
12585         and __sigtimedwait.
12586         * signal/Versions: Add __sigtimedwait, __sigwait, and __sigwaitinfo.
12587         * sysdeps/unix/sysv/linux/sigtimedwait.c (__sigtimedwait): Add
12588         libc_hidden_def.
12589         * sysdeps/unix/sysv/linux/sigwait.c (__sigwait): Likewise.
12590         * sysdeps/unix/sysv/linux/sigwaitinfo.c (__sigwaitinfo): Likewise.
12591
12592         * include/sys/msg.h: Declare __libc_msgrcv and __libc_msgsnd.
12593         * sysdeps/unix/sysv/linux/msgrcv.c (__msgrcv): Rename to __libc_msgrcv
12594         and make old name an alias.
12595         * sysdeps/unix/sysv/linux/msgsnd.c (__msgsnd): Rename to __libc_msgsnd
12596         and make old name an alias.
12597         * sysvipc/Versions (libc) [GLIBC_PRIVATE]: Add __libc_msgrcv and
12598         __libc_msgsnd.
12599
12600         * include/sys/uio.h: Declare __libc_readv and __libc_writev.
12601         * misc/Versions (libc) [GLIBC_PRIVATE]: Add __libc_readv and
12602         __libc_writev.
12603         * sysdeps/generic/readv.c (__readv): Rename to __libc_readv and make
12604         old name an alias.
12605         * sysdeps/posix/readv.c: Likewise
12606         * sysdeps/unix/sysv/aix/readv.c: Likewise.
12607         * sysdeps/unix/sysv/linux/readv.c: Likewise.
12608         * sysdeps/generic/writev.c (__writev): Rename to __libc_writev and make
12609         old name an alias.
12610         * sysdeps/posix/writev.c: Likewise
12611         * sysdeps/unix/sysv/aix/writev.c: Likewise.
12612         * sysdeps/unix/sysv/linux/writev.c: Likewise.
12613
12614         * include/sys/wait.h: Declare __waitid.
12615         * posix/Versions (libc) [GLIBC_PRIVATE]: Add __waitid.
12616         * sysdeps/generic/waitid.c (waitid): Rename to __waitid and make old
12617         name an alias.
12618         * sysdeps/posix/waitid.c: Likewise.
12619         * sysdeps/unix/sysv/aix/waitid.c: Likewise.
12620
12621         * sysdeps/unix/sysv/linux/syscalls.list: Add creat syscall.
12622
12623 2002-10-07  Jakub Jelinek  <jakub@redhat.com>
12624
12625         * include/alloca.h (__libc_use_alloca, __libc_alloca_cutoff): New
12626         prototypes.
12627         (__MAX_ALLOCA_CUTOFF): Define.
12628         Include allocalim.h.
12629         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyname2_r,
12630         _nss_dns_gethostbyaddr_r): Use alloca or malloc to allocate
12631         host_buffer depending on __libc_use_alloca.
12632         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyname_r,
12633         _nss_dns_getnetbyaddr_r): Use alloca or malloc to allocate
12634         net_buffer depending on __libc_use_alloca.
12635         * resolv/res_query.c (res_nquery): Use alloca or malloc to allocate
12636         buf depending on __libc_use_alloca.
12637         * resolv/gethnamaddr.c (gethostbyname2, gethostbyaddr): Likewise.
12638         * stdio-common/vfprintf.c (vfprintf): Use __libc_use_alloca
12639         instead of hardcoded constants.
12640         Pass proper size argument to alloca and compute end for wide char
12641         version.
12642         * stdio-common/printf_fp.c (__printf_fp): Use __libc_use_alloca
12643         instead of hardcoded constants.
12644         * string/strcoll.c (strcoll): Likewise.
12645         * string/strxfrm.c (strxfrm): Likewise.
12646         * sysdeps/posix/readv.c (__readv): Likewise.
12647         * sysdeps/posix/writev.c (__writev): Likewise.
12648         * sysdeps/generic/allocalim.h: New file.
12649
12650 2002-10-08  Roland McGrath  <roland@redhat.com>
12651
12652         * configure.in (aux_missing warning): Change "too old" to
12653         "incompatible versions", since for autoconf it's "too new" right now.
12654         * configure: Regenerated.
12655
12656         * configure.in (AUTOCONF): New check to set it.  Set to "no" if the
12657         one found doesn't work on our configure.in.
12658         * configure: Regenerated.
12659         * config.make.in (AUTOCONF): New substituted variable.
12660         * Makefile (autoconf-it-cvs): New canned sequence, broken out of ...
12661         (autoconf-it): ... here, use that instead of defining conditionally.
12662         Use $(AUTOCONF) instead of literal autoconf.
12663         [$(AUTOCONF) != no] (configure, %/configure): Protect these rules
12664         with this condition.
12665         * Make-dist (autoconf-it, configure, %/configure): Copy those changes.
12666
12667 2002-10-08  Ulrich Drepper  <drepper@redhat.com>
12668
12669         * Make-dist (dist): Cleanup a bit.  We are not interested in the
12670         14 char filename limit anymore.  Remove intermediate files and
12671         symlinks.
12672
12673 2002-10-05  Ulrich Drepper  <drepper@redhat.com>
12674
12675         * po/sk.po: Update from translation team.
12676         * po/tr.po: Likewise.
12677         * po/gl.po: Likewise.
12678
12679 2002-10-05  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
12680
12681         * elf/tls-macros.h: Fix SH version of macros so as to match ABI syntax.
12682
12683 2002-10-03  Ulrich Drepper  <drepper@redhat.com>
12684
12685         * version.h (RELEASE): Change to stable.
12686
12687 2002-10-03  Jakub Jelinek  <jakub@redhat.com>
12688
12689         * sysdeps/unix/sysv/linux/_exit.c (__syscall_exit,
12690         __syscall_exit_group): New prototypes.
12691
12692 2002-10-03  Ulrich Drepper  <drepper@redhat.com>
12693
12694         * glibc 2.3 released.
12695
12696
12697 See ChangeLog.13 for earlier changes.