Update.
[glibc.git] / ChangeLog
blob832487ad704b46f286cf37768168bda52c13a6f7
1 2004-02-07  Andreas Jaeger  <aj@suse.de>
3         * iconv/gconv_simple.c (ucs4le_internal_loop): Remove cast used as
4         lvalue.
5         (internal_ucs4le_loop_single): Likewise.
6         (ucs4_internal_loop): Likewise.
7         (BODY): Likewise.
8         (internal_ucs4_loop_single): Likewise.
9         * iconvdata/iso8859-1.c (BODY): Likewise.
10         * iconvdata/cp1255.c (EMIT_SHIFT_TO_INIT): Likewise.
11         * iconvdata/cp1258.c (EMIT_SHIFT_TO_INIT): Likewise.
12         * iconvdata/gb18030.c (BODY): Likewise.
13         * iconvdata/armscii-8.c (BODY): Likewise.
14         * stdlib/msort.c (msort_with_tmp): Likewise.
16         * iconv/gconv_open.c (__gconv_open): Remove conditional expression
17         as lvalue.
19 2004-02-06  Steven Munroe  <sjmunroe@us.ibm.com>
21         * sysdeps/powerpc/powerpc32/dl-machine.c: Declare __cache_line_size as
22         weak extern.
23         (__elf_machine_runtime_setup): Invalidate the instruction cache over
24         the whole range of the PLT.
26 2004-02-06  Andreas Schwab  <schwab@suse.de>
28         * posix/regcomp.c (build_range_exp): Fix off-by-one.
29         (parse_bracket_exp): Likewise.
31 2004-02-05  Ulrich Drepper  <drepper@redhat.com>
33         * sysdeps/unix/sysv/linux/powerpc/powerpc32/kernel_stat.h: Define
34         _HAVE_STAT_NSEC and _HAVE_STAT64_NSEC.  Patch by Anton Blanchard.
36 2004-02-02  Paolo Bonzini  <bonzini@gnu.org>
38         * posix/regexec.c (check_matching): Add P_MATCH_FIRST parameter.
39         (re_search_internal): Pass new parameter to check_matching.
40         (check_matching): Unless a parenthesized group is found at the
41         beginning of the regexp, advance P_MATCH_FIRST until we entered
42         a state different from the initial state.
44 2004-02-01  Ulrich Drepper  <drepper@redhat.com>
46         * math/libm-test.inc (lround_test): Add new test.
47         (llround_test): Likewise.
48         (lrint_test): Likewise.
49         (llrint_test): Likewise.
50         * sysdeps/ieee754/dbl-64/s_lround.c (__lround): Fix special case
51         with result taking up 20 bits.
52         * sysdeps/ieee754/dbl-64/s_lrint.c (__lrint): Likewise.
53         * sysdeps/ieee754/dbl-64/s_llrint.c (__llrint): Likewise..
54         * sysdeps/ieee754/ldbl-96/s_lroundl.c (__lroundl): Fix special
55         case with result taking up 31 bits.
56         * sysdeps/ieee754/ldbl-96/s_lrintl.c (__lrintl): Likewise.
58         * po/nl.po: Update from translation team.
60 2004-01-30  Andreas Schwab  <schwab@suse.de>
62         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h (ILL_BREAK,
63         FPE_DECOVF, FPE_DECDIV, FPE_DECERR, FPE_INVASC, FPE_INVDEC,
64         SEGV_PSTKOVF): Remove underscore prefix from definition.
66 2004-01-28  Paolo Bonzini  <bonzini@gnu.org>
68         Merge regex changes in gawk.
69         * posix/regcomp.c (build_range_exp) [!_LIBC]: Check validity
70         of collation elements.
71         * posix/regex.c: Include limits.h.
72         * posix/regex.h: Document REG_ECOLLATE correctly.
73         * posix/regex_internal.h [!_LIBC && !ENABLE_NLS]: Disable NLS.
75 2004-01-24  Andreas Jaeger  <aj@suse.de>
77         * malloc/obstack.h: Import gnulib version.
78         * malloc/obstack.c: Likewise.
80 2004-01-26  David Mosberger  <davidm@hpl.hp.com>
82         * elf/link.h (struct dl_phdr_info): Fix typo in comment.
83         * elf/rtld.c (dl_main): After incrementing dl_nloaded, also
84         increment dl_load_adds.
85         * elf/dl-iteratephdr.c (__dl_iterate_phdr): Replace GL(dl_load_subs)
86         with equivalent GL(dl_load_adds - GL(dl_nloaded).
87         (dl_iterate_phdr): Likewise.
88         * elf/dl-close.c (_dl_close): Delete increment of GL(dl_load_subs).
89         * elf/dl-support.c: Remove global variable _dl_load_subs.
90         * sysdeps/generic/ldsodefs.h (struct rtld_global): Remove
91         _dl_load_subs member.
93 2004-01-27  Jakub Jelinek  <jakub@redhat.com>
95         * elf/rtld.c (_dl_start_final): Don't set l_relro_* here.
96         (_dl_start): And neither here.
97         (dl_main): Set GL(dl_loaded)->l_relro_* and
98         GL(dl_rtld_map)->l_relro_*.
100 2004-01-23  David Mosberger  <davidm@hpl.hp.com>
102         * sysdeps/generic/ldsodefs.h (struct rtld_global): Add members
103         _dl_load_adds and _dl_load_subs.
104         * elf/dl-support.c (_dl_load_adds): New variable.
105         (_dl_load_subs): Likewise.
106         * elf/dl-object.c (_dl_new_object): Increment dl_load_adds.
107         * elf/dl-close.c (_dl_close): Increment dl_load_subs.
108         * elf/link.h (struct dl_phdr_info): Add members dlpi_adds and
109         dlpi_subs.
110         * include/link.h: Likewise.
111         * elf/dl-iteratephdr.c (__dl_iterate_phdr): Initialize dlpi_adds
112         and dlpi_subs members.
113         (dl_iterate_phdr): Likewise.
114         * elf/tst-dlmodcount.c: New file.
115         * elf/Makefile (distribute): Mention tst-dlmodcount.c.
116         (tests): If build-shared, mention tst-dlmodcount.
117         ($(objpfx)tst-dlmodcount): If build-shared, build and
118         run tst-dlmodcount.
120 2004-01-22  Jakub Jelinek  <jakub@redhat.com>
122         * elf/dl-reloc.c (_dl_relocate_object): Move PT_GNU_RELRO protection
123         into...
124         (_dl_protect_relro): New routine.
125         * sysdeps/generic/ldsodefs.h (_dl_protect_relro): New prototype.
126         * elf/rtld.c (_dl_start_final): Copy l_relro_addr and l_relro_size
127         from bootstrap_map.
128         (_dl_main): Don't set GL(_dl_loaded)->l_relro_{addr,size} here.
129         Call _dl_protect_relro for libraries if prelinking.
131 2004-01-23  Richard Henderson  <rth@redhat.com>
133         * Versions.def (libm): Replace GLIBC_2.3.3 with GLIBC_2.3.4.
134         * sysdeps/alpha/fpu/Versions (libm): Likewise.
135         * sysdeps/alpha/fpu/cfloat-compat.h (cfloat_versions): Likewise.
136         * sysdeps/alpha/fpu/s_clog10f.c (clog10f): Likewise.
138 2004-01-22  Andreas Jaeger  <aj@suse.de>
140         * sysdeps/ieee754/dbl-64/e_pow.c (log2): Rename to my_log2 to
141         avoid warnings for builtin function log2.
143         * sysdeps/unix/sysv/linux/x86_64/setcontext.S: Add proper unwind
144         information.
146 2004-01-20  Ulrich Drepper  <drepper@redhat.com>
148         * sysdeps/unix/sysv/linux/sys/epoll.h: Add EPOLLONESHOT.
149         * sysdeps/unix/sysv/linux/x86_64/sys/epoll.h: Likewise.
150         Patch by Davide Libenzi.
152         * sysdeps/unix/sysv/linux/kernel-features.h: Define
153         __ASSUME_NO_CLONE_DETACHED for 2.6.2+ kernels.
155         * catgets/Makefile ($(objpfx)de.msg): Run sed in C locale.
157         * sysdeps/unix/sysv/linux/readahead.c (__readahead): Use off64_t
158         instead of loff_t.  Include <fcntl.h>.
159         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Add readahead prototype.
160         * sysdeps/unix/sysv/linux/arm/bits/fcntl.h: Likewise.
161         * sysdeps/unix/sysv/linux/cris/bits/fcntl.h: Likewise.
162         * sysdeps/unix/sysv/linux/hppa/bits/fcntl.h: Likewise.
163         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise.
164         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
165         * sysdeps/unix/sysv/linux/m68k/bits/fcntl.h: Likewise.
166         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
167         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
168         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
169         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise.
170         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
172         * elf/dl-load.c: Don't add attribute_relro to max_dirnamelen.
174         * sysdeps/generic/inttypes.h: Fix PRI*FAST{16,32} macros.
176 2003-12-31  Bruno Haible  <bruno@clisp.org>
178         * iconvdata/iso_6937-2.c (to_ucs4): Map 0x7E to U+007E, not U+203E.
179         Map 0xA6 to U+0023. Map 0xA8 to U+00A4.
180         (to_ucs4_comb): Map 0xC5 0x20 to U+00AF.
181         (from_ucs4): Map U+00ED to 0xC2 0x69, not 0xC2 0xE9.
182         (BODY for TO_LOOP): Don't map U+02DC. Map U+02DD to 0xCD 0x20, not
183         0x00 0x20. Don't map U+2500..U+25E3.
185 2004-01-19  Jakub Jelinek  <jakub@redhat.com>
187         * posix/regexec.c (get_subexp): Remove bkref_str variable.
188         Extend buffers if needed before comparisons.
189         (get_subexp_sub): Handle clean_state_log_if_needed failure.
191 2004-01-17  Ulrich Drepper  <drepper@redhat.com>
193         * sysdeps/i386/i486/bits/atomic.h (atomic_add): Fix test for using
194         atomic_decrement.  Patch by Davin McCall.
196 2004-01-13  Daniel Jacobowitz  <drow@mvista.com>
198         * sysdeps/powerpc/nofpu/sim-full.c (__sim_exceptions)
199         (__sim_disabled_exceptions, __sim_round_mode): Declare with
200         hidden data and nocommon.
201         * sysdeps/powerpc/nofpu/soft-supp.h (__sim_exceptions)
202         (__sim_disabled_exceptions, __sim_round_mode): Use
203         libc_hidden_proto.
204         * sysdeps/powerpc/soft-fp/sfp-machine.h (__sim_exceptions)
205         (__sim_disabled_exceptions, __sim_round_mode): Likewise.
207 2004-01-16  Ulrich Drepper  <drepper@redhat.com>
209         * elf/elf.h: Define PT_IA_64_HP_OPT_ANOT, PT_IA_64_HP_HSL_ANOT, and
210         PT_IA_64_HP_STACK.
212 2004-01-16  Richard Henderson  <rth@redhat.com>
214         * include/unistd.h (__libc_enable_secure): Mark attribute_relro.
215         (__libc_enable_secure_internal): Likewise.
217         * elf/dl-load.c: Don't declare __libc_stack_end.
218         * sysdeps/generic/libc-start.c: Likewise.
219         * sysdeps/unix/sysv/linux/dl-execstack.c: Likewise.
220         * sysdeps/generic/segfault.c: Likewise.  Include ldsodefs.h.
221         * sysdeps/generic/backtrace.c: Likewise.
223 2004-01-15  Ulrich Drepper  <drepper@redhat.com>
225         * Versions.def: Add GLIBC_2.3.4.
227 2004-01-15  Richard Henderson  <rth@redhat.com>
229         * sysdeps/unix/alpha/sysdep.h: Revert last change.
231 2004-01-15  Richard Henderson  <rth@redhat.com>
233         * sysdeps/alpha/dl-machine.h (RTLD_START): Use _dl_argv_internal.
235         * sysdeps/unix/alpha/sysdep.h [PIC] (SYSCALL_ERROR_HANDLER): Use
236         !samegp relocation.
238 2004-01-15  Richard Henderson  <rth@redhat.com>
240         * sysdeps/unix/sysv/linux/alpha/Makefile [stdlib]: Process
241         ucontext-offsets.sym.
242         * sysdeps/unix/sysv/linux/alpha/getcontext.S: New file.
243         * sysdeps/unix/sysv/linux/alpha/makecontext.S: New file.
244         * sysdeps/unix/sysv/linux/alpha/setcontext.S: New file.
245         * sysdeps/unix/sysv/linux/alpha/swapcontext.S: New file.
246         * sysdeps/unix/sysv/linux/alpha/ucontext-offsets.sym: New file.
248 2004-01-15  Richard Henderson  <rth@redhat.com>
250         * sysdeps/unix/sysv/linux/alpha/rt_sigaction.S: Prefix stubs with
251         __syscall_, move nop inside, adjust users by +4.
253 2004-01-14  Steven Munroe  <sjmunroe@us.ibm.com>
255         * include/libc-symbols.h [HAVE_ASM_GLOBAL_DOT_NAME]
256         (_symbol_version): Use C_SYMBOL_DOT_NAME to create '.'ed symbols.
257         (_default_symbol_version): Use C_SYMBOL_DOT_NAME to create '.'ed
258         symbols.
259         * sysdeps/powerpc/Makefile: Add rtld-global-offsets.sym to
260         gen-as-const-headers.
261         * sysdeps/powerpc/elf/rtld-global-offsets.sym: New file.
262         * sysdeps/powerpc/sysdep.h: Define v# symbols for vector registers.
263         Define PPC_FEATURE_* masks for Aux Vector AT_HWCAP.
264         * sysdeps/unix/sysv/linux/kernel-features.h
265         (__ASSUME_SWAPCONTEXT_SYSCALL): Define for PPC and 2.6.0 kernels.
266         * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h [!__WORDSIZE == 32]:
267         Declare mcontext_t inline and include altivec state for 64-bit.
268         * sysdeps/unix/sysv/linux/powerpc/powerpc64/Versions: Add GLIBC_2.3.4
269         versions for setcontext, getcontext, and swapcontext.
271         * sysdeps/unix/sysv/linux/powerpc/powerpc64/Versions: Add GLIBC_2.3.4
272         versions for setcontext, getcontext, swapcontext, and makecontext.
273         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S
274         (__getcontext):  Upgrade to save Altivec regs and version GLIBC_2_3_4.
275         [SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)] (__novec_getcontext):
276         Compatible with GLIBC_2.3.3 release.
277         * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S
278         (__makecontext): Use parm save area instead of compiler_dw to hold
279         context pointer.
280         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S
281         (__setcontext):  Upgrade to restore Altivec regs and version
282         GLIBC_2_3_4.
283         [SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)] (__novec_setcontext):
284         Compatible with GLIBC_2.3.3 release.
285         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S
286         (__swapcontext): Upgrade to swap Altivec regs and version GLIBC_2_3_4.
287         [SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)] (__novec_swapcontext):
288         Compatible with GLIBC_2.3.3 release.
289         * sysdeps/unix/sysv/linux/powerpc/powerpc64/ucontext_i.h
290         (SIGCONTEXT_V_REGS_PTR, SIGCONTEXT_V_RESERVE): Defined.
292 2004-01-12  Steven Munroe  <sjmunroe@us.ibm.com>
294         * sysdeps/unix/sysv/linux/powerpc/powerpc32/Versions: Add GLIBC_2.3.4
295         versions for setcontext, getcontext, swapcontext, and makecontext.
296         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S
297         (__getcontext):  Upgrade to save Altivec regs and version GLIBC_2_3_4.
298         [SHLIB_COMPAT (libc, GLIBC_2_3_3, GLIBC_2_3_4)] (__novec_getcontext):
299         Compatible with GLIBC_2.3.3 release.
300         * sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S
301         (__makecontext): Upgrade to align for Altivec regs and version
302         GLIBC_2_3_4.
303         [SHLIB_COMPAT (libc, GLIBC_2_3_3, GLIBC_2_3_4)] (__novec_makecontext):
304         Compatible with GLIBC_2.3.3 release.
305         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S
306         (__setcontext):  Upgrade to restore Altivec regs and version
307         GLIBC_2_3_4.
308         [SHLIB_COMPAT (libc, GLIBC_2_3_3, GLIBC_2_3_4)] (__novec_setcontext):
309         Compatible with GLIBC_2.3.3 release.
310         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S
311         (__swapcontext): Upgrade to swap Altivec regs and version GLIBC_2_3_4.
312         [SHLIB_COMPAT (libc, GLIBC_2_3_3, GLIBC_2_3_4)]
313         (__novec_swapcontext): Compatible with GLIBC_2.3.3 release.
314         * sysdeps/unix/sysv/linux/powerpc/powerpc32/ucontext_i.h:
315         (_UC_VSCR, _UC_VRSAVE): Define.
316         (_FRAME_BACKCHAIN, _FRAME_LR_SAVE,_FRAME_PARM_SAVE1,_FRAME_PARM_SAVE2,
317         _FRAME_PARM_SAVE3, _FRAME_PARM_SAVE4): Defined.
319 2004-01-15  Ulrich Drepper  <drepper@redhat.com>
321         * elf/rtld.c: Handle platforms with HP_TIMING_NONAVAIL defined.
323 2004-01-16  Alfred M. Szmidt  <ams@kemisten.nu>
325         * sysdeps/generic/dl-execstack.c (_dl_make_stack_executable): Adjust
326         parameter type.
328 2004-01-15  Ulrich Drepper  <drepper@redhat.com>
330         * elf/elf.h: Fix typo in comment.
332         * sysdeps/generic/dl-sysdep.c: Initialize __libc_stack_end.
333         * elf/rtld.c: Initialize _dl_argv to allow aliasing.
335         * resolv/resolv.h: Add RES_USEBSTRING.
336         * resolv/res_debug.c (p_option): Add handling for RES_USE_INET6,
337         RES_ROTATE, RES_NOCHECKNAME, and RES_USEBSTRING.
338         * resolv/res_init.c (res_setioptions): Recognize ip6-bytestring.
339         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Only perform
340         bytestring IPv6 lookup with RES_USEBSTRING option is selected.
341         Otherwise use the two nibble formats.
343 2004-01-14  Ulrich Drepper  <drepper@redhat.com>
345         * configure.in: Define HAVE_Z_RELRO if the linker supports -z relro.
346         * config.h.in: Add entry for HAVE_Z_RELRO.
347         * include/libc-symbols.h: Define attribute_relro.
348         * elf/dl-load.c: Add attribute_relro to env_path_list, capstr, ncapstr,
349         max_capstrlen, and max_dirnamelen definitions.
350         * elf/rtld.c: Add attribute_relro to _dl_argc, _dl_argv, _dl_skip_args,
351         load_time, start_time, library_path, preloadlist, version_info,
352         any_debug.
353         Remove rtld_total_time.  Make it a local variable.  Pass pointer to
354         it to print_statistics.  Change print_statistics accordingly.
355         * sysdeps/generic/dl-sysdep.c: Add attribute_relro to _dl_auxv.  Use
356         attribute_relro instead of explicitly assigning variable to the
357         .data.rel.ro section for __libc_enable_secure and __libc_stack_end.
358         * sysdeps/generic/ldsodefs.h: Declare __libc_stack_end, _dl_argc,
359         _dl_argv, _dl_argv_internal with attribute_relro.
361 2004-01-13  Segher Boessenkool  <boessen@de.ibm.com>
363         * Makerules (gen-as-const): Don't silently continue on failure.
365 2004-01-14  Steven Munroe  <sjmunroe@us.ibm.com>
367         * sysdeps/generic/dl-sysdep.c: Define __libc_stack_end with
368         rtld_hidden_data_def.
370 2004-01-14  Ulrich Drepper  <drepper@redhat.com>
372         * libio/libio.h: Add const to function tables types.
373         * libio/libioP.h: Likewise.
374         * login/utmp-private.h: Likewise.
375         * libio/fileops.c: Add const to jump table variable definition.
376         * libio/genops.c: Likewise.
377         * libio/iofopncook.c: Likewise.
378         * libio/iopopen.c: Likewise.
379         * libio/memstream.c: Likewise.
380         * libio/obprintf.c: Likewise.
381         * libio/oldfileops.c: Likewise.
382         * libio/oldiopopen.c: Likewise.
383         * libio/strops.c: Likewise.
384         * libio/vsnprintf.c: Likewise.
385         * libio/vswprintf.c: Likewise.
386         * libio/wfileops.c: Likewise.
387         * libio/wstrops.c: Likewise.
388         * login/getutent_r.c: Likewise.
389         * login/getutid_r.c Likewise.
390         * login/getutline_r.c: Likewise.
391         * sysdeps/generic/utmp_file.c: Likewise.
393 2004-01-09  Bruno Haible  <bruno@clisp.org>
395         * intl/gmo.h (MO_REVISION_NUMBER_WITH_SYSDEP_I): New definition.
396         * intl/loadmsgcat.c (get_sysdep_segment_value): Handle "I".
397         (_nl_load_domain): Treat major revision 1 like major revision 0.
399 2004-01-11  Bruno Haible  <bruno@clisp.org>
401         * stdio-common/vfprintf.c (vfprintf): Disallow the 'I' flag after
402         width or precision has been seen.
404 2004-01-08  Bruno Haible  <bruno@clisp.org>
406         * intl/loadmsgcat.c (_nl_load_domain): When a string pair uses a system
407         dependent segment not known to this version of the library, ignore
408         the string pair instead of crashing.
410 2004-01-13  Ulrich Drepper  <drepper@redhat.com>
412         * configure.in: Rewrite test to give gcc to clean up after itself.
413         Patch by Greg Schafer.
415         * posix/regex.c: Support crappy compilers and platforms which have
416         problems with alloca.
417         * posix/regex_internal.h: Likewise.
418         Patch by Paolo Bonzini.
420 2004-01-12  Paolo Bonzini  <bonzini@gnu.org>
422         * posix/regcomp.c [_LIBC && !RE_ENABLE_I18N]:
423         Drop code to support this, it is never true.
424         (build_range_exp) [!_LIBC]: Do not create a range
425         in MBCSET for a single-byte character set.
426         (build_range_exp) [_LIBC]: Do not create a range
427         in MBCSET for a single-byte character set without
428         collation elements.
429         (init_dfa): Do not conditionalize on _LIBC, it
430         just makes the code less clear.
431         (parse_bracket_exp): Use NON_MATCH variable in
432         addition to "mbcset->non_match", not as an
433         alternative.
434         (build_charclass_op): rename NOT parameter to
435         NON_MATCH, use it instead of declaring a variable.
436         (parse_bracket_exp) [!_LIBC]: Pass NULL for MBCSET
437         if the character set is single-byte.
439 2004-01-14  Jakub Jelinek  <jakub@redhat.com>
441         * posix/regcomp.c (peek_token_bracket): Check remaining
442         string length before re_string_peek_byte (x, 1).
443         (parse_bracket_symbol): Likewise.
444         * posix/regex_internal.h (re_string_is_single_byte_char): Return
445         true at last byte in the string.
446         * posix/bug-regex22.c (main): Add new test.
448 2004-01-13  Ulrich Drepper  <drepper@redhat.com>
450         * sysdeps/generic/dl-sysdep.c: Move __libc_enable_secure into
451         .data.rel.ro.
453         * sysdeps/x86_64/dl-machine.h: Include <tls.h>.
455         * elf/rtld.c (_dl_start_final): Initialze __libc_stack_end here.
456         * sysdeps/generic/dl-sysdep.c: Define __libc_stack_end with
457         rtld_hidden_def and move into .data.rel.ro section.
458         * sysdeps/generic/ldsodefs.h: Declare __libc_stack_end with
459         rtld_hidden_proto.
460         * sysdeps/generic/libc-start.c: Only initialize __libc_stack_end here
461         if !SHARED.
463 2004-01-13  Richard Henderson  <rth@redhat.com>
465         * sysdeps/unix/sysv/linux/alpha/rt_sigaction.S: Fix typo.
467 2004-01-13  Ulrich Drepper  <drepper@redhat.com>
469         * sysdeps/unix/sysv/linux/dl-execstack.c
470         (_dl_make_stack_executable): Move common code in front.  Use
471         __builtin_expect.
473         * sysdeps/unix/sysv/linux/dl-execstack.c: Change interface.  Add
474         challenge for caller.
475         * sysdeps/generic/ldsodefs.h: Change declaration and type of hook
476         member in rtld_global appropriately.
477         * elf/dl-support.c: Likewise.
478         * elf/dl-load.c (_dl_map_object_from_fd): Take additional paramter.
479         Pass it on to the changed function.
480         (_dl_map_object): Pass new parameter to _dl_map_object_from_fd.
482 2004-01-13  Richard Henderson  <rth@redhat.com>
484         * sysdeps/alpha/bits/atomic.h (__arch_compare_and_exchange_xxx_8_int):
485         Cast old up to uint64_t before back down to inner width.
486         (__arch_compare_and_exchange_xxx_16_int): Likewise.
487         (__arch_compare_and_exchange_xxx_32_int): Likewise.
488         (__arch_compare_and_exchange_xxx_64_int): Likewise.
489         (__arch_compare_and_exchange_val_8_int): Cast result to
490         the type of the memory.
491         (__arch_compare_and_exchange_val_16_int): Likewise.
492         (__arch_compare_and_exchange_val_32_int): Likewise.
493         (__arch_compare_and_exchange_val_64_int): Likewise.
494         (atomic_compare_and_exchange_bool_acq): Use __atomic_bool_bysize.
495         (atomic_compare_and_exchange_bool_rel): Likewise.
497         * sysdeps/unix/alpha/sysdep.h: Select inline_syscall_r0_asm
498         based on HAVE___THREAD instead of USE_TLS.
500         * sysdeps/unix/sysv/linux/alpha/adjtime.c (ADJTIMEX32): New.
501         (__adjtimex_tv64): Use it.
503         * sysdeps/unix/sysv/linux/alpha/semctl.c (__new_semctl): Cast
504         to void* rather than directly to the compatibility structure type.
505         * sysdeps/unix/sysv/linux/alpha/shmctl.c (__new_shmctl): Likewise.
507         * sysdeps/unix/sysv/linux/alpha/sigaction.c (struct kernel_sigaction):
508         Forward declare.
510 2004-01-13  Richard Henderson  <rth@redhat.com>
512         * Versions.def (libm): Add GLIBC_2.3.3.
513         * sysdeps/alpha/fpu/Versions: Add __c1_c*f and c*f to GLIBC_2.3.3.
514         * sysdeps/alpha/fpu/cabsf.c, sysdeps/alpha/fpu/cargf.c,
515         sysdeps/alpha/fpu/cfloat-compat.h, sysdeps/alpha/fpu/cimagf.c,
516         sysdeps/alpha/fpu/conjf.c, sysdeps/alpha/fpu/crealf.c,
517         sysdeps/alpha/fpu/s_cacosf.c, sysdeps/alpha/fpu/s_cacoshf.c,
518         sysdeps/alpha/fpu/s_casinf.c, sysdeps/alpha/fpu/s_casinhf.c,
519         sysdeps/alpha/fpu/s_catanf.c, sysdeps/alpha/fpu/s_catanhf.c,
520         sysdeps/alpha/fpu/s_ccosf.c, sysdeps/alpha/fpu/s_ccoshf.c,
521         sysdeps/alpha/fpu/s_cexpf.c, sysdeps/alpha/fpu/s_clog10f.c,
522         sysdeps/alpha/fpu/s_clogf.c, sysdeps/alpha/fpu/s_cpowf.c,
523         sysdeps/alpha/fpu/s_cprojf.c, sysdeps/alpha/fpu/s_csinf.c,
524         sysdeps/alpha/fpu/s_csinhf.c, sysdeps/alpha/fpu/s_csqrtf.c,
525         sysdeps/alpha/fpu/s_ctanf.c, sysdeps/alpha/fpu/s_ctanhf.c: New files.
526         * sysdeps/alpha/fpu/bits/mathdef.h: Rename complex float
527         functions for gcc 3.3.
529         * sysdeps/generic/s_cacosf.c, sysdeps/generic/s_cacoshf.c,
530         sysdeps/generic/s_casinf.c, sysdeps/generic/s_casinhf.c,
531         sysdeps/generic/s_catanf.c, sysdeps/generic/s_catanhf.c,
532         sysdeps/generic/s_ccosf.c, sysdeps/generic/s_ccoshf.c,
533         sysdeps/generic/s_cexpf.c, sysdeps/generic/s_clog10f.c,
534         sysdeps/generic/s_clogf.c, sysdeps/generic/s_cpowf.c,
535         sysdeps/generic/s_cprojf.c, sysdeps/generic/s_csinf.c,
536         sysdeps/generic/s_csinhf.c, sysdeps/generic/s_csqrtf.c,
537         sysdeps/generic/s_ctanf.c, sysdeps/generic/s_ctanhf.c: Don't
538         weak_alias if the function name has been #defined.
540         * math/cabsf.c: Move ...
541         * sysdeps/generic/cabsf.c: ... here.
542         * math/cargf.c: Move ...
543         * sysdeps/generic/cargf.c: ... here.
544         * math/cimagf.c: Move ...
545         * sysdeps/generic/cimagf.c: ... here.
546         * math/conjf.c: Move ...
547         * sysdeps/generic/conjf.c: ... here.
548         * math/crealf.c: Move ...
549         * sysdeps/generic/crealf.c: ... here.
551 2004-01-13  Ulrich Drepper  <drepper@redhat.com>
553         * Makeconfig: Define relro-LDFLAGS if have-z-relro==yes.  Add it to
554         LDFLAGS.so and LDFLAGS-rtld.
555         (+link): Add relro-LDFLAGS.
556         * Makeconfig (shlib.lds): Place __libc_subfreeres, __libc_atexit, and
557         __libc_thread_subfreeres sections after .jcr section.
558         * config.make.in: Add have-z-relro.
559         * configure.in: Add check for -z relro option.
560         * include/link.h (struct link_map): Add relro_addr and relro_size
561         members.
562         * elf/dl-load.c (_dl_map_object_from_fd): Recognize PT_GNU_RELRO.
563         * elf/dl-reloc.c (_dl_relocate_object): At the end, make relro
564         part of loaded segments read-only.
565         * elf/elf.h: Define PT_GNU_RELRO.
566         * elf/rtld.c (_dl_start): Recognize PT_GNU_RELRO of ld.so.
567         (dl_main): Recognize PT_GNU_RELRO of the application.  Call
568         _dl_debug_initialize and initialize l_info[DT_DEBUG] before
569         relocations.
571 2004-01-12  Jakub Jelinek  <jakub@redhat.com>
573         * sysdeps/x86_64/strcspn.S: Fix typo in last patch.
575 2004-01-11  Andreas Jaeger  <aj@suse.de>
577         * sysdeps/x86_64/__longjmp.S: Add cfi directives.
579 2004-01-10  Andreas Jaeger  <aj@suse.de>
581         * sysdeps/unix/sysv/linux/x86_64/__start_context.S: Add cfi directives.
582         * sysdeps/unix/x86_64/sysdep.S (__syscall_error): Likewise.
583         * sysdeps/unix/sysv/linux/x86_64/vfork.S: Likewise.
584         * sysdeps/x86_64/strcspn.S: Likewise.
585         * sysdeps/x86_64/strspn.S: Likewise.
587 2004-01-08  Jakub Jelinek  <jakub@redhat.com>
589         * sysdeps/unix/sysv/linux/x86_64/clone.S (__clone): Add cfi_endproc
590         right before syscall and cfi_startproc before PSEUDO_END.
591         Clear %rbp in thread_start.
593 2004-01-05  Jakub Jelinek  <jakub@redhat.com>
595         * posix/regcomp.c (regcomp): Fix comment typo.
596         (regfree): Free preg->translate, clear buffer, allocated, fastmap
597         and translate fields.
599         * posix/regcomp.c (build_charclass, buld_charclass_op): Change first
600         argument to unsigned RE_TRANSLATE_TYPE.
601         * posix/regex_internal.h (re_string_t): Change trans type to
602         unsigned RE_TRANSLATE_TYPE.
603         * posix/regex_internal.c (re_string_construct_common): Cast
604         trans to unsigned RE_TRANSLATE_TYPE.
605         (re_string_peek_byte_case, re_string_fetch_byte_case): Avoid fast
606         path if pstr->trans.  Never translate the character through
607         pstr->trans.
608         * posix/Makefile (tests): Add bug-regex22.
609         (bug-regex22-ENV): Set.
610         * posix/bug-regex22.c: New test.
612 2004-01-02  Paolo Bonzini  <bonzini@gnu.org>
614         * posix/regex_internal.c (re_node_set_add_intersect,
615         re_node_set_merge): Rewritten.
616         (re_node_set_insert, re_node_set_remove_at):
617         Avoid memmove, we know what direction we should copy and that we
618         are copying 32-bit words.
619         (re_node_set_compare): Iterate backwards.
621 2003-12-30  Paul Eggert  <eggert@twinsun.com>
623         * time/mktime.c (verify): New macro.
624         (time_t_is_integer, twos_complement_arithmetic,
625         right_shift_propagates_sign, base_year_is_a_multiple_of_100,
626         C99_integer_division): Document these longstanding assumptions in the
627         code, and verify them at compile-time.
629 2004-01-02  Jakub Jelinek  <jakub@redhat.com>
631         * posix/regex_internal.h (re_match_context_t): Add dfa member.
632         * posix/regexec.c (match_ctx_free_subtops, search_cur_bkref_entry,
633         match_ctx_add_sublast, sift_ctx_init, acquire_init_state_context,
634         prune_impossible_nodes, check_halt_state_context, proceed_next_node,
635         sift_states_backward, update_cur_sifted_state, check_dst_limits,
636         check_dst_limits_calc_pos, sift_states_bkref, transit_state,
637         check_subexp_matching_top, transit_state_sb, transit_state_mb,
638         transit_state_bkref, get_subexp, get_subexp_sub, check_arrival,
639         check_arrival_add_next_nodes, expand_bkref_cache, check_node_accept):
640         Remove dfa parameter.  Get dfa from mctx.  Adjust callers.
641         (re_search_internal): Initialize mctx.dfa.
643         * posix/regex_internal.c (re_node_set_insert): Remove unused variables.
645         * posix/regex_internal.h (re_dfa_t): Add syntax field.
646         * posix/regcomp.c (parse): Initialize dfa->syntax.
647         * posix/regexec.c (acquire_init_state_context,
648         prune_impossible_nodes, check_matching, check_halt_state_context,
649         proceed_next_node, sift_states_iter_mb, sift_states_backward,
650         update_cur_sifted_state, sift_states_bkref, transit_state,
651         transit_state_sb, transit_state_mb, transit_state_bkref,
652         get_subexp, get_subexp_sub, check_arrival, expand_bkref_cache,
653         build_trtable): Remove preg argument, add dfa argument instead
654         and remove dfa = preg->buffer initialization in the body.
655         Adjust all callers.
656         (check_node_accept_bytes, group_nodes_into_DFAstates,
657         check_node_accept): Likewise.  Use dfa->syntax instead of
658         preg->syntax.
659         (check_arrival_add_next_nodes): Remove preg argument.
661         * posix/regex_internal.h (re_match_context_t): Make input
662         re_string_t instead of a pointer to it.
663         * posix/regex_internal.c (re_string_construct_common): Don't clear
664         pstr here...
665         (re_string_construct): ... but only here.
666         * posix/regexec.c (match_ctx_init): Remove input argument.  Don't
667         initialize fields to zero.
668         (re_search_internal): Move input into mctx.input.
669         (acquire_init_state_context, check_matching,
670         check_halt_state_context, proceed_next_node,
671         clean_state_log_if_needed, sift_states_bkref, sift_states_iter_mb,
672         transit_state, transit_state_sb, transit_state_mb,
673         transit_state_bkref, get_subexp, check_arrival,
674         check_arrival_add_next_nodes, check_node_accept, extend_buffers):
675         Change mctx->input into &mctx->input and mctx->input->field into
676         mctx->input.field.
678 2004-01-02  Jakub Jelinek  <jakub@redhat.com>
679             Paolo Bonzini  <bonzini@gnu.org>
681         * posix/regex_internal.h (re_const_bitset_ptr_t): New type.
682         (re_string_t): Add newline_anchor, word_char and word_ops_used fields.
683         (re_dfa_t): Change word_char type to bitset.  Add word_ops_used field.
684         (re_string_context_at, re_string_reconstruct): Remove last argument.
685         * posix/regex_internal.c (re_string_allocate): Initialize
686         pstr->word_char and pstr->word_ops_used.
687         (re_string_context_at): Remove newline_anchor argument.
688         Use input->newline_anchor instead, swap && conditions.
689         Only use IS_WIDE_WORD_CHAR if input->word_ops_used != 0.
690         Use input->word_char bitmap instead of IS_WORD_CHAR.
691         (re_string_reconstruct): Likewise.
692         Adjust re_string_context_at caller.
693         * posix/regexec.c (acquire_init_state_context,
694         check_halt_state_context, transit_state, transit_state_sb,
695         transit_state_mb, transit_state_bkref, check_arrival,
696         check_node_accept): Adjust re_string_context_at and
697         re_string_reconstruct callers.
698         (re_search_internal): Likewise.  Set input.newline_anchor.
699         (build_trtable): Use dfa->word_char bitmap instead of IS_WORD_CHAR.
700         * posix/regcomp.c (init_word_char): Change return type to void.
701         Set dfa->word_ops_used.
702         (free_dfa_content): Don't free dfa->word_char.
703         (parse_expression): Remove error handling for init_word_char.
705 2004-01-01  Paolo Bonzini  <bonzini@gnu.org>
707         * posix/regex_internal.h (re_dfastate_t): Fix size of the CONTEXT
708         bitfield.
710         * posix/regex_internal.c (re_node_set_insert):  Rewrite.
712 2004-01-01  Ulrich Drepper  <drepper@redhat.com>
714         * posix/getconf.c: Update copyright year.
715         * nss/getent.c: Likewise.
716         * nscd/nscd_nischeck.c: Likewise.
717         * iconv/iconvconfig.c: Likewise.
718         * iconv/iconv_prog.c: Likewise.
719         * elf/ldconfig.c: Likewise.
720         * catgets/gencat.c: Likewise.
721         * csu/version.c: Likewise.
722         * elf/ldd.bash.in: Likewise.
723         * elf/sprof.c (print_version): Likewise.
724         * locale/programs/locale.c: Likewise.
725         * locale/programs/localedef.c: Likewise.
726         * nscd/nscd.c (print_version): Likewise.
727         * debug/xtrace.sh: Likewise.
728         * malloc/memusage.sh: Likewise.
729         * malloc/mtrace.pl: Likewise.
731 2004-01-01  Petter Reinholdtsen  <pere@hungry.com>
733         * stdlib/strfmon.c: Make formatting of left-justified currency
734         values match the the POSIX standard.  When using format string
735         "[%-14#5.4n]" to print -123.45, the result should be
736         "[-$   123.4500 ]", not "[-$123.4500    ]".
738 2004-01-01  Andreas Jaeger  <aj@suse.de>
740         * resolv/Makefile (generated): New.
742 2003-12-31  Joseph S. Myers  <jsm@polyomino.org.uk>
744         * CONFORMANCE: Update.
746 2003-12-30  Paul Eggert  <eggert@twinsun.com>
748         * time/mktime.c: (my_mktime_localtime_r):
749         Remove.  All uses changed to __localtime_r.
750         (__localtime_r) [!defined _LIBC]: New macro.  Include "time_r.h" to
751         get its implementation.
752         Fix compile-command to allow for TIME_R_POSIX.
754         * time/strftime.c (my_strftime_gmtime_r, my_strftime_localtime_r):
755         Remove.  All uses changed to __localtime_r and __gmtime_r.
756         (__gmtime_r, __localtime_r) [!HAVE_TM_GMTOFF]: New macros.
757         Include "time_r.h" to get their implementations.
759         * time/timegm.c: Allow use in GNU applications outside glibc.
760         [defined HAVE_CONFIG_H]: Include <config.h>.
761         [!defined _LIBC]: Include "timegm.h", <time_r.h>.
762         Define __gmtime_r, and declare __mktime_internal.
763         (timegm): Define via a prototype, since we can safely assume C89 now.
765         * time/mktime.c (check_result): Use less-confusing report format.
766         "long" -> "long int", as per usual GNU style.
767         (main): Likewise.
768         Don't loop if the iteration overflows time_t.
769         Allow a negative step in the iteration.
771         * time/mktime.c: Assume freestanding C89 or better.
772         (HAVE_LIMITS_H, STDC_HEADERS) [defined _LIBC]: Remove;
773         assume they're 1.
774         (__P): Remove; not used.
775         (CHAR_BIT, INT_MIN, INT_MAX): Remove; <limits.h> defines them.
776         (mktime, not_equal_tm, print_tm, check_result, main): Use prototypes.
777         Prototypes use const * where appropriate.
778         (main) [DEBUG]: Fix typo in testing code uncovered by above changes,
779         which caused the testing code to dump core on some hosts.
781 2003-12-31  Ulrich Drepper  <drepper@redhat.com>
783         * locale/setlocale.c (setlocale): Avoid duplicating locale names
784         if we can reuse old strings.
786         * inet/rcmd.c: Provide better error message in case of unknown
787         host.  Remove USE_IN_LIBIO.
789         * nscd/nscd.init: Updated version, more conforming with current
790         init file standards.
792         * nscd/nscd-client.h (_PATH_NSCDPID): Move the file into
793         /var/run/nscd directory.
794         (_PATH_NSCDSOCKET): Likewise.
796         * test-skeleton.c (timeout_handler): Fix error message.
798         * elf/dl-dst.h (DL_DST_REQUIRED): Avoid the complex operations if
799         CNT == 0.
801 2003-12-30  Jakub Jelinek  <jakub@redhat.com>
803         * posix/regexec.c (get_subexp): Only set bkref_str after the first
804         loop, use buf + bkref_str_off in the loop instead.
805         * posix/bug-regex11.c (tests): Add 3 new tests.
807         * posix/regexec.c (clean_state_log_if_need): Rename to...
808         (clean_state_log_if_needed): ...this.
809         (transit_state_mb, get_subexp_sub): Adjust callers.
811         * sunrpc/pmap_clnt.c (pmap_set): Do CLNT_DESTROY even if CLNT_CALL
812         failed.  Reported by Steve Grubb.
814 2003-12-29  Ulrich Drepper  <drepper@redhat.com>
816         * elf/elf.h: Add a few definitions from Solaris 9.
818 2003-12-29  Andreas Schwab  <schwab@suse.de>
820         * stdio-common/Makefile (CFLAGS-errlist.c, CFLAGS-siglist.c): Add
821         $(fno_unit_at_a_time) to avoid reordering assembler output.
823 2003-12-29  Jakub Jelinek  <jakub@redhat.com>
825         * posix/regexec.c (re_copy_regs): Revert comment change.
826         Avoid memory leak if realloc fails.
827         (proceed_next_node): Return -2 if re_node_set_insert fails.
828         Return -2 if push_fail_stack fails.
829         (push_fail_stack): Change fs->alloc only after successful realloc.
830         (pop_fail_stack): Formatting.
831         (set_regs): If proceed_next_node returns -2, free eps_via_nodes and fs.
832         (check_arrival_add_next_nodes): Merge identical statements
833         from if branches.
835         * signal/Makefile (tests): Add tst-raise.
836         * signal/tst-raise.c: New test.
838 2003-12-28  Ulrich Drepper  <drepper@redhat.com>
840         * posix/regcomp.c (mark_opt_subexp_iter): Declare IDX as int.
842         * posix/regexec.c (re_copy_regs): Fix testing for failed allocation.
843         (push_fail_stack): Add missing check for failed memory allocation.
845         * libio/libio.h: Use __builtin_expect in _IO_getc_unlocked,
846         _IO_peekc_unlocked, _IO_putc_unlocked, _IO_getwc_unlocked, and
847         _IO_putwc_unlocked.
849 2003-12-28  Andreas Jaeger  <aj@suse.de>
851         * sysdeps/ieee754/dbl-64/e_j0.c (__ieee754_y0): Raise only
852         overflow for 0 as argument. Raise Invalid exception for negative args.
853         * sysdeps/ieee754/dbl-64/e_jn.c (__ieee754_yn): Likewise.
854         * sysdeps/ieee754/dbl-64/e_j1.c (__ieee754_y0): Likewise.
855         * sysdeps/ieee754/ldb-128/e_jnl.c (__ieee754_ynl): Likewise.
856         * sysdeps/ieee754/ldb-128/e_j0l.c (__ieee754_y0l): Likewise.
857         * sysdeps/ieee754/ldb-128/e_j1l.c (__ieee754_y1l): Likewise.
858         * sysdeps/ieee754/ldb-96/e_jnl.c (__ieee754_ynl): Likewise.
859         * sysdeps/ieee754/ldb-96/e_j0l.c (__ieee754_y0l): Likewise.
860         * sysdeps/ieee754/ldb-96/e_j1l.c (__ieee754_y1l): Likewise.
861         * sysdeps/ieee754/flt-32/e_jnf.c (__ieee754_ynf): Likewise.
862         * sysdeps/ieee754/flt-32/e_j0f.c (__ieee754_y0f): Likewise.
863         * sysdeps/ieee754/flt-32/e_j1f.c (__ieee754_y1f): Likewise.
865         * math/libm-test.inc (yn_test): Expect invalid exception for
866         negative arguments.
867         (y0_test): Likewise.
868         (y1_test): Likewise.
870         * sysdeps/ieee754/dbl-64/e_exp.c (__ieee754_exp): Do not raise
871         execptions for exp(NaN).
873 2003-12-23  Paolo Bonzini  <bonzini@gnu.org>
875         * posix/regex_internal.c (re_dfa_add_node): Initialize opt_subexp.
876         * posix/regex_internal.h (re_token_type_t): Put OP_DUP_PLUS
877         among the tokens, rather than among the epsilon-transiting nodes.
878         (re_token_t): Add the opt_subexp flag.
879         * posix/regcomp.c (optimize_utf8, calc_first,
880         calc_next, calc_epsdest): Don't consider OP_DUP_PLUS.
881         (mark_opt_subexp, mark_opt_subexp_iter): New functions.
882         (parse_dup_op): Mostly rewritten, lowering OP_DUP_PLUS to
883         OP_DUP_ASTERISK and marking optional subexpressions
884         as such using mark_opt_subexp.
885         * posix/regexec.c (set_regs): Initialize PREV_INDEX_MATCH
886         and pass it to update_regs.
887         (update_regs): Use the PREV_INDEX_MATCH parameter, together
888         with the opt_subexp flag, in order to discard a final empty
889         match of a repeated subexpression.
890         * posix/BOOST.tests: Adjust test vectors.
891         * posix/PCRE.tests: Likewise.
892         * posix/rxspencer/tests: Likewise.
894 2000-05-22  Jakub Jelinek  <jakub@redhat.com>
896         * sysdeps/i386/fpu/bits/mathinline.h (__expm1_code): Avoid using ?:
897         with omitted middle operand.
899 2003-12-22  Jakub Jelinek  <jakub@redhat.com>
901         * posix/regcomp.c: Remove C99-ism.
902         * posix/tst-rxspencer.c: Likewise.
903         Based on a patch by Alex Davis <alex14641@yahoo.com>.
905 2003-12-17  Paolo Bonzini  <bonzini@gnu.org>
907         * posix/regex_internal.h [!_LIBC] (internal_function): Define.
908         (re_string_allocate, re_string_construct, re_string_reconstruct,
909         re_string_realloc_buffers, build_wcs_buffer,
910         build_wcs_upper_buffer, build_upper_buffer,
911         re_string_translate_buffer, re_string_destruct,
912         re_string_elem_size_at, re_string_char_size_at,
913         re_string_wchar_at, re_string_context_at,
914         re_node_set_alloc, re_node_set_init_1
915         re_node_set_init_2, re_node_set_init_copy,
916         re_node_set_add_intersect, re_node_set_init_union,
917         re_node_set_merge, re_node_set_insert
918         re_node_set_compare, re_node_set_contains
919         re_node_set_remove_at, re_dfa_add_node,
920         re_acquire_state, re_acquire_state_context,
921         free_state): Add internal_function to declaration.
923         * posix/regexec.c (match_ctx_init, match_ctx_clean,
924         match_ctx_free, match_ctx_free_subtops,
925         match_ctx_add_entry, search_cur_bkref_entry,
926         match_ctx_clear_flag, match_ctx_add_subtop,
927         match_ctx_add_sublast, sift_ctx_init,
928         re_search_internal, re_search_2_stub, re_search_stub,
929         re_copy_regs, acquire_init_state_context,
930         prune_impossible_nodes, check_matching,
931         check_halt_node_context, check_halt_state_context
932         update_regs, proceed_next_node, push_fail_stack,
933         pop_fail_stack, set_regs, free_fail_stack_return,
934         sift_states_iter_mb, sift_states_backward
935         update_cur_sifted_state, add_epsilon_src_nodes,
936         sub_epsilon_src_nodes, check_dst_limits,
937         check_dst_limits_calc_pos, check_subexp_limits,
938         sift_states_bkref, clean_state_log_if_need,
939         merge_state_array, transit_state,
940         check_subexp_matching_top, transit_state_sb,
941         transit_state_mb, transit_state_bkref,
942         get_subexp, get_subexp_sub, find_subexp_node,
943         check_arrival, check_arrival_add_next_nodes,
944         find_collation_sequence_value, check_arrival_expand_ecl,
945         check_arrival_expand_ecl_sub, expand_bkref_cache,
946         build_trtable, check_node_accept_bytes, extend_buffers,
947         group_nodes_into_DFAstates, check_node_accept): Likewise.
949         * posix/regex_internal.c (re_string_construct_common,
950         re_string_skip_chars, create_newstate_common,
951         register_state, create_ci_newstate, create_cd_newstate,
952         calc_state_hash): Likewise.
953         (re_string_peek_byte_case, re_fetch_byte_case): Change
954         declaration from ANSI to K&R.
956 2003-12-16  Paolo Bonzini  <bonzini@gnu.org>
958         * posix/regexec.c (build_trtable): Don't allocate the trtable
959         until state->word_trtable is known.  Don't hardcode UINT_BITS
960         iterations on each bitset item.
962 2003-12-22  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>
964         * sysdeps/unix/sysv/linux/ia64/dl-static.c (_dl_static_init):
965         Initialize REF before passing it to _dl_lookup_symbol.
967 2003-12-21  Roland McGrath  <roland@frob.com>
969         * sysdeps/mach/hurd/dl-sysdep.c (_exit): Define with attribute_hidden.
971 2003-12-21  Jakub Jelinek  <jakub@redhat.com>
973         * posix/regcomp.c (duplicate_node, duplicate_node_closure): Revert
974         2003-11-24 changes.
975         * posix/regexec.c (group_nodes_into_DFAstates): For CHARACTER with
976         NEXT_{,NOT}WORD_CONSTRAINT check word_char bit.
977         * posix/bug-regex19.c (tests): Add new tests.
979         * posix/regexec.c (check_dst_limits_calc_pos): Fix formatting.
981         * posix/regcomp.c (parse_dup_op): Return NULL if dup_elem is NULL,
982         after checking syntax.  Optimize.
983         (calc_first): Fix comment.
984         * posix/bug-regex13.c (tests): Add new tests.
986 2003-12-21  Roland McGrath  <roland@redhat.com>
988         * manual/arith.texi (Parsing of Integers): Typo fix.
990 2003-12-20  Roland McGrath  <roland@frob.com>
992         * sysdeps/generic/ifreq.c (__ifreq) [_HAVE_SA_LEN]: Fix typo:
993         add missing dereference of IFREQS before counting loop.
995 2003-12-21  Andreas Schwab  <schwab@suse.de>
997         * sysdeps/m68k/m68020/bits/atomic.h: Avoid matching memory
998         constraints.
1000 2003-12-20  Ulrich Drepper  <drepper@redhat.com>
1002         * elf/rtld.c (dl_main): Optimize order of subexpressions in if().
1004 2003-12-18  Ulrich Drepper  <drepper@redhat.com>
1006         * stdio-common/printf_fp.c: Add support to use alternative decimal
1007         digits.
1008         * stdio-common/vfprintf.c (vfprintf): Pass use_outdigits flags to
1009         __printf_fp.  Patch by Hamed Malek <hamed@bamdad.org>.
1011 2003-12-18  Carlos O'Donell  <carlos@baldric.uwo.ca>
1013         * sysdeps/unix/sysv/linux/hppa/clone.S (__clone) [PIC]: Save PIC,
1014         reload PIC if we need to call __syscall_error, cleanup asm.
1016 2003-12-17  Carlos O'Donell  <carlos@baldric.uwo.ca>
1018         * sysdeps/hppa/fpu/fclrexcpt.c (feclearexcept): Right shift
1019         FE_ALL_EXCEPT before complimenting.
1020         * sysdeps/hppa/fpu/fegetenv.c (fegetenv): Use asm 'ma,' completer,
1021         and gcc '+r' constraint.
1022         * sysdeps/hppa/fpu/feholdexcpt.c (feholdexcept): Likewise.
1023         * sysdeps/hppa/fpu/fesetenv.c (fesetenv): Likewise.
1024         * sysdeps/hppa/fpu/feupdateenv.c (feupdateenv): Read raised
1025         exception bits, OR with envp, pass to fesetenv.
1026         * sysdeps/hppa/fpu/fraiseexcpt.c (feraiseexcept): Add delayed
1027         exception flushing, FE_UNDERFLOW is DBL_MIN/3.0, FE_INEXACT is
1028         triggered by M_PI/69.69 converted to single precision.
1029         * sysdeps/hppa/fpu/fsetexcptflg.c (fesetexceptflag): Set enable
1030         bits not raised exception bits.
1032         * sysdeps/hppa/Makefile: Add dl-symaddr and dl-fptr to the
1033         correct build strings.
1034         * sysdeps/hppa/dl-fptr.h: New file.
1035         * sysdeps/hppa/dl-fptr.c: Removed.
1036         * sysdeps/hppa/dl-symaddr.c (_dl_symbol_address): Use _dl_make_ftpr,
1037         remove const qualifier for map.
1038         (_dl_function_address): Removed.
1039         * sysdeps/hppa/dl-lookupcfg.h: DL_LOOKUP_ADDRESS must clear
1040         PLABEL32 bits, define DL_AUTO_FUNCTION_ADDRESS and
1041         DL_STATIC_FUNCTION_ADDRESS, DL_DT_INIT_ADDRESS and
1042         DL_DT_FINI_ADDRESS use the previous two macros.
1044 2003-12-17  Jakub Jelinek  <jakub@redhat.com>
1046         * malloc/mtrace.c (tr_old_memalign_hook): New variable.
1047         (tr_memalignhook): New function.
1048         (mtrace): Register tr_memalignhook.
1049         (muntrace): Deregister tr_memalignhook.
1050         * malloc/malloc.c (__posix_memalign): If __memalign_hook != NULL,
1051         call it directly instead of memalign_internal.
1053 2003-12-17  Ulrich Drepper  <drepper@redhat.com>
1055         * misc/mntent_r.c: Change encoding to match recently changed decoder.
1056         Patch by Alexander Achenbach <xela@slit.de>.
1058 2003-12-16  Steven Munroe  <sjmunroe@us.ibm.com>
1060         * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: Correct definition of
1061         vrregset_t.
1063 2003-12-16  Steven Munroe  <sjmunroe@us.ibm.com>
1065         * sysdeps/unix/sysv/linux/powerpc/sys/procfs.h [!__PPC64_ELF_H]: Extend
1066         conditional to include typedef elf_vrreg_t.
1068 2003-12-17  Paolo Bonzini  <bonzini@gnu.org>
1070         * posix/regexec.c (re_search_internal): Limit search to the
1071         beginning of the buffer if the initial states are empty for
1072         contexts that do not include CONTEXT_BEGBUF or, if
1073         !preg->newline_anchor, that do not include any one of
1074         CONTEXT_BEGBUF and CONTEXT_NEWLINE.
1076 2003-12-17  Andreas Jaeger  <aj@suse.de>
1078         * sysdeps/generic/system.c (__libc_system): Fix typo, reported by
1079         Kevin Pedretti <pedretti@ieee.org>.
1081 2003-12-17  Ulrich Drepper  <drepper@redhat.com>
1083         * elf/rtld.c: Don't use strong_alias to define _rtld_local.  This
1084         removes the visibility attributes which might be defined earlier
1085         for some gcc versions.  Instead spell out what strong_alias does
1086         plus the visibility.
1088 2003-12-16  Petter Reinholdtsen  <pere@hungry.com>
1090         * posix/regex_internal.h: Make sure the regex code compile
1091         with non-GCC compilers by hiding attributes.
1093 2003-12-16  Jakub Jelinek  <jakub@redhat.com>
1094             Paolo Bonzini  <bonzini@gnu.org>
1096         * posix/regexec.c (group_nodes_into_DFAstates): Never produce
1097         dests_ch items that are empty.
1099 2003-12-14  Paolo Bonzini  <bonzini@gnu.org>
1101         * posix/regexec.c (check_arrival): Remove duplicate test.
1103 2003-12-15  Ulrich Drepper  <drepper@redhat.com>
1105         * posix/regcomp.c: Make !RE_ENABLE_I18N work again.
1106         * posix/regex_internal.c: Likewise.
1107         * posix/regexec.c: Likewise.
1108         Patch by Paolo Bonzini.
1110 2003-12-14  Paolo Bonzini  <bonzini@gnu.org>
1112         * posix/regex_internal.c (re_acquire_state_context):
1113         Compare the node sets after all the other comparisons.
1115 2003-12-13  Paolo Bonzini  <bonzini@gnu.org>
1117         * posix/regexec.c (find_subexp_node, check_arrival,
1118         check_arrival_add_next_nodes, check_arrival_expand_ecl,
1119         check_arrival_expand_ecl_sub, expand_bkref_cache):
1120         Rename the FL_OPEN parameter to TYPE, which is either
1121         OP_OPEN_SUBEXP or OP_CLOSE_SUBEXP.  Callers adjusted.
1123 2003-12-12  Andreas Jaeger  <aj@suse.de>
1125         * sysdeps/unix/sysv/linux/x86_64/syscall.S: Pass also 6th argument
1126         to syscall.
1128 2003-12-11  Ulrich Drepper  <drepper@redhat.com>
1130         * sysdeps/unix/sysv/linux/kernel-features.h: Remove __ASSUME_VSYSCALL.
1131         There might always be processes which have no vDSO.
1132         * sysdeps/generic/dl-sysdep.c: Remove __ASSUME_VSYSCALL uses.
1133         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
1135 2003-12-11  Carlos O'Donell  <carlos@baldric.uwo.ca>
1137         * sysdeps/generic/dl-fptr.c (COMPARE_AND_SWAP): Pass new and old
1138         in the right order.
1140 2003-12-01  Jes Sorensen  <jes@wildopensource.com>
1142         * rt/tst-clock.c (do_test): Print message when skipping
1143         CLOCK_PROCESS_CPUTIME_ID test.
1145         * sysdeps/unix/sysv/linux/ia64/clock_getcpuclockid.c: New file.
1146         Provide CLOCK_PROCESS_CPUTIME_ID only if /proc/sal/itc_drift is 0.
1148 2003-12-02  David Mosberger  <davidm@hpl.hp.com>
1150         * sysdeps/ia64/elf/initfini.c: Add unwind info.
1152         * sysdeps/ia64/dl-machine.h (elf_machine_matches_host): Mark with
1153         attribute "unused".
1154         (elf_machine_dynamic): Mark with attributes "unused" and "const".
1155         (elf_machine_runtime_setup): Likewise.
1157         * sysdeps/generic/dl-fptr.c (make_fptr_table): Mark with
1158         attribute "always_inline".
1159         * sysdeps/ia64/dl-machine.h (__ia64_init_bootstrap_fdesc_table):
1160         Likewise.
1162         * configure.in: Check whether compiler has libunwind support.
1163         * config.make.in (have-cc-with-libunwind): New variable.
1164         * config.h.in (HAVE_CC_WITH_LIBUNWIND): New macro.
1165         * Makeconfig (gnulib): If have-cc-with-libunwind is "yes", also
1166         mention -lunwind.
1168 2003-11-12  David Mosberger  <davidm@hpl.hp.com>
1170         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Define DO_CALL_VIA_BREAK.
1171         Redefine DO_CALL to use vdso if supported, otherwise DO_CALL_VIA_BREAK.
1172         Likewise for DO_INLINE_SYSCALL.  Make INTERNAL_SYSCALL use
1173         DO_INLINE_SYSCALL.
1175         * sysdeps/unix/sysv/linux/ia64/vfork.S: Use DO_CALL_VIA_BREAK()
1176         instead of DO_CALL().
1178         * sysdeps/unix/sysv/linux/ia64/clone2.S: Use break directly instead
1179         of DO_CALL().
1181         * sysdeps/unix/sysv/linux/ia64/brk.S (__curbrk): Restructure it
1182         to take advantage of DO_CALL() macro.
1183         * sysdeps/unix/sysv/linux/ia64/setcontext.S: Likewise.
1184         * sysdeps/unix/sysv/linux/ia64/getcontext.S: Likewise.
1186         * elf/rtld.c (dl_main): Restrict dl_sysinfo_dso check to first
1187         program header.  On ia64, the check failed previously because
1188         there are two program headers.
1190 2003-12-10  Andreas Jaeger  <aj@suse.de>
1191             Ruediger Oertel  <ro@suse.de>
1193         * sysdeps/alpha/fpu/e_sqrt.c: Mark sqrt_data as used.
1195 2003-12-07  Ulrich Drepper  <drepper@redhat.com>
1197         * sysdeps/i386/fpu/s_nexttowardf.c: Construct overflow value correctly.
1198         * sysdeps/i386/fpu/s_nexttoward.c: Likewise.
1199         * sysdeps/ieee754/ldbl-128/s_nexttoward.c: Likewise.
1200         * sysdeps/ieee754/ldbl-96/s_nexttoward.c: Likewise.
1201         * sysdeps/generic/s_nexttowardf.c: Likewise.
1202         * math/Makefile (tests): Add bug-nexttoward.
1203         * math/bug-nexttoward.c: New file.
1205         * sysdeps/generic/s_nextafter.c: Make sure overflow exception is set.
1206         * sysdeps/ieee754/flt-32/s_nextafterf.c: Likewise.
1207         * math/bug-nextafter.c (main): Add tests for overflow and negative
1208         values.
1210 2003-12-06  Ulrich Drepper  <drepper@redhat.com>
1212         * math/Makefile (tests): Add bug-nextafter.
1213         * math/bug-nextafter.c: New file.
1214         * sysdeps/generic/s_nextafter.c: Construct overflow value correctly.
1215         * sysdeps/ieee754/flt-32/s_nextafterf.c: Likewise.
1216         * math/libm-test.inc (nextafter_test): Add test for overflow after
1217         +/-FLT_MAX etc.
1219 2003-12-04  Steven Munroe  <sjmunroe@us.ibm.com>
1221         * sysdeps/powerpc/fpu/fgetexcptflg.c (__fegetexceptflag): Add masking
1222         of fenv.
1223         * sysdeps/powerpc/nofpu/fgetexcptflg.c (__fegetexceptflag): Likewise.
1225 2003-12-05  Martin Schwidefsky  <schwidefsky@de.ibm.com>
1227         * sysdeps/s390/s390-32/elf/setjmp.S (setjmp, __setjmp): Add END
1228         statements.
1229         * sysdeps/s390/s390-64/elf/setjmp.S (setjmp, __setjmp): Likewise.
1230         * sysdeps/s390/s390-32/sysdep.h (ENTRY): Add cfi_startproc directive.
1231         (END): Add cfi_endproc directive.
1232         * sysdeps/s390/s390-64/sysdep.h (ENTRY, END): Likewise.
1233         * sysdeps/unix/sysv/linux/s390/s390-32/socket.S (__socket): Remove
1234         cfi_startproc and cfi_endproc directive.
1235         * sysdeps/unix/sysv/linux/s390/s390-64/socket.S (__socket): Likewise.
1236         * sysdeps/s390/s390-32/addmul_1.S (__mpn_addmul_1): Add CFI directives.
1237         * sysdeps/s390/s390-32/add_n.S (__mpn_add_n): Likewise.
1238         * sysdeps/s390/s390-64/add_n.S (__mpn_add_n): Likewise.
1239         * sysdeps/s390/s390-32/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
1240         Likewise.
1241         * sysdeps/s390/s390-64/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
1242         Likewise.
1243         * sysdeps/s390/s390-32/mul_1.S (__mpn_mul_1): Likewise.
1244         * sysdeps/s390/s390-32/sub_n.S (__mpn_sub_n): Likewise.
1245         * sysdeps/s390/s390-64/sub_n.S (__mpn_sub_n): Likewise.
1246         * sysdeps/unix/sysv/linux/s390/s390-32/mmap64.S (__mmap64): Likewise.
1247         * sysdeps/unix/sysv/linux/s390/s390-32/mmap.S (__mmap): Likewise.
1248         * sysdeps/unix/sysv/linux/s390/s390-64/mmap.S (__mmap): Likewise.
1249         * sysdeps/unix/sysv/linux/s390/s390-32/syscall.S (syscall): Likewise.
1250         * sysdeps/unix/sysv/linux/s390/s390-64/syscall.S (syscall): Likewise.
1251         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S (__syscall_error):
1252         Likewise.
1253         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S (__syscall_error):
1254         Likewise.
1255         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S (__clone): Add CFI
1256         directives. Move thread_start out of ENTRY/PSEUDO_END block to
1257         make backchain terminate.
1258         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S (__clone): Likewise.
1260         * sysdeps/s390/s390-32/backtrace.c (trace_arg): New structure.
1261         (unwind_backtrace, unwind_getip): New variables.
1262         (init, __backchain_backtrace, backtrace_helper): New functions.
1263         (__backtrace): Use unwind info for backtrace instead of backchain
1264         walking if the unwind functions can be found.
1265         * sysdeps/s390/s390-64/backtrace.c: Likewise.
1267         * sysdeps/unix/sysv/linux/s390/s390-32/posix_fadvise64.c: New file.
1269         * sysdeps/unix/sysv/linux/s390/sys/procfs.h (ELF_NGREG32): New #define.
1270         (elf_greg_t32, elf_gregset_t32, elf_fpregset_t32): New types.
1271         (elf_prstatus32, elf_prpsinfo32): New structures.
1272         (prgregset32_t, prfpregset32_t, prstatus32_t, prpsinfo32_t): New types.
1274         * scripts/data/c++-types-s390-linux-gnu.data: New file.
1275         * scripts/data/c++-types-s390x-linux-gnu.data: New file.
1277 2003-11-30  Petter Reinholdtsen  <pere@hungry.com>
1279         * stdlib/strfmon.c: Correct formatting of international currency
1280         values.  The international currency formatting should prefer the
1281         int_* values if they are set for a locale, and use the domestic
1282         values if the int_* values are unset.
1284 2003-12-03  Jakub Jelinek  <jakub@redhat.com>
1286         * posix/Makefile (distribute): Add BOOST.tests.
1287         (tests): Add tst-boost, depend on tst-boost-mem.
1288         (generated): Add tst-boost-mem and tst-boost.mtrace.
1289         (tst-boost-ARGS, tst-boost-ENV): Set.
1290         ($(objpfx)tst-boost-mem): New.
1291         * posix/tst-boost.c: New test.
1292         * posix/BOOST.tests: New file.
1294         * posix/Makefile (distribute): Add PCRE.tests.
1295         (tests): Add tst-pcre, depend on tst-pcre-mem.
1296         (generated): Add tst-pcre-mem and tst-pcre.mtrace.
1297         (tst-pcre-ARGS, tst-pcre-ENV): Set.
1298         ($(objpfx)tst-pcre-mem): New.
1299         * posix/tst-pcre.c: New test.
1300         * posix/PCRE.tests: New file.
1302 2003-12-02  Jakub Jelinek  <jakub@redhat.com>
1304         * intl/locale.alias: Use nb_NO instead of no_NO for bokm.l.
1306         * sysdeps/powerpc/fpu/libm-test-ulps: Regenerated.
1307         * sysdeps/s390/fpu/libm-test-ulps: Regenerated.
1309 2003-12-03  Ulrich Drepper  <drepper@redhat.com>
1311         * locale/programs/locarchive.c (enlarge_archive): Print size info
1312         only in verbose mode.
1314         * locale/iso-3166.def: Three letter code of Romania changed.
1316 2003-12-02  Roland McGrath  <roland@redhat.com>
1318         * scripts/config.sub: Update from master, timestamp='2003-10-20'.
1319         * scripts/config.guess: Update from master, timestamp='2003-10-20'.
1321 2003-11-30  Andreas Jaeger  <aj@suse.de>
1323         * config.make.in (fno-unit-at-a-time): Define.
1325         * configure.in: Add test for -fno-unit-at-a-time.
1326         Fix text for -fpie.
1328         * csu/Makefile (CFLAGS-initfini.s): Add $(fno_unit_at_a_time).
1329         * locale/Makefile (CFLAGS-loadlocale.c): Likewise.
1331 2003-12-01  Automatic
1333         * version.h (VERSION): Bump to 2.3.3.
1335 2003-11-30  Andreas Jaeger  <aj@suse.de>
1337         * stdio-common/vfprintf.c: Do not inline buffered_vfprintf to
1338         decrease stack usage.
1340 2003-11-30  Andreas Schwab  <schwab@suse.de>
1342         * sysdeps/unix/sysv/linux/m68k/sysdep.h (PSEUDO_ERRVAL)
1343         (PSEUDO_END_ERRVAL, ret_ERRVAL): Define.
1345 2003-11-29  Ulrich Drepper  <drepper@redhat.com>
1347         * misc/mntent_r.c (decode_name): Be compatible with util-linux and
1348         recognize \134 as well.
1350 2003-10-09  H.J. Lu  <hongjiu.lu@intel.com>
1352         * sysdeps/ia64/fpu/fraiseexcpt.c: Don't include <asm/fpu.h>.
1354 2003-10-08  H.J. Lu  <hongjiu.lu@intel.com>
1356         * sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h: Don't include
1357         <asm/fpu.h>.
1358         (struct ia64_fpreg): New definition.
1360         * sysdeps/unix/sysv/linux/ia64/sys/procfs.h: Don't include
1361         <asm/elf.h>.
1362         (ELF_NGREG): New #define.
1363         (ELF_NFPREG): Likewise.
1364         (elf_greg_t): New type.
1365         (elf_gregset_t): Likewise.
1366         (elf_fpreg_t): Likewise.
1367         (elf_fpregset_t): Likewise.
1369 2003-10-08  H.J. Lu  <hongjiu.lu@intel.com>
1371         * sysdeps/unix/sysv/linux/ia64/sys/ptrace.h: Include
1372         <sys/ucontext.h>.
1373         (__ptrace_request): Add PTRACE_GETREGS and PTRACE_SETREGS.
1374         (pt_all_user_regs): New type.
1376 2003-10-10  Simon Josefsson  <jas@extundo.com>
1378         * argp/argp-namefrob.h [!_LIBC]: Include mempcpy.h, strcase.h,
1379         strchrnul.h, strndup.h (from gnulib).
1380         * argp/argp-parse.c: Add alloca.h include snippet verbatim from
1381         Autoconf manual.
1382         * argp/argp-help.c: Replace alloca.h include snipper with verbatim
1383         Autoconf manual version.
1384         * argp/argp.h: Map __restrict to restrict or empty string when
1385         necessary, copied verbatim from posix/regex.h.
1387 2003-10-09  Steven Munroe  <sjmunroe@us.ibm.com>
1389         * Makefile: Allow for c++-types-$(config-machine)-$(config-os).data in
1390         addition to c++-types-$(base-machine)-$(config-os).data.
1391         * scripts/data/c++-types-powerpc-linux-gnu.data: New file.
1392         * scripts/data/c++-types-powerpc64-linux-gnu.data: New file.
1394 2003-11-28  Ulrich Drepper  <drepper@redhat.com>
1396         * misc/mntent_r.c (decode_name): Fix decoding of tab, add decoding
1397         of newline.
1398         * manual/sysinfo.texi (mtab): Adjust description accordingly.
1399         Reported by Andries.Brouwer@cwi.nl.
1401         * sysdeps/x86_64/fpu/libm-test-ulps: Add some more minor changes
1402         to compensate other setup.
1404 2003-11-27  Andreas Jaeger  <aj@suse.de>
1406         * sysdeps/x86_64/fpu/libm-test-ulps: Add ulps for new atan2 test.
1408         * math/libm-test.inc (atan2_test): Add test that run infinitly.
1409         Reported by "Willus" <etc231etc231@willus.com>.
1411 2003-11-27  Michael Matz  <matz@suse.de>
1413         * sysdeps/ieee754/dbl-64/mpsqrt.c (fastiroot): Fix 64-bit problem
1414         with wrong types.
1416 2003-11-28  Jakub Jelinek  <jakub@redhat.com>
1418         * posix/regexec.c (acquire_init_state_context): Make inline.
1419         Add always_inline attribute.
1420         (check_matching): Add BE macro.  Move if (cur_state->has_backref)
1421         into if (dfa->nbackref).
1422         (sift_states_backward): Fix comment.
1423         (transit_state): Add BE macro.  Move if (next_state->has_backref)
1424         into if (dfa->nbackref && next_state).  Don't check for next_state
1425         != NULL twice.
1426         * posix/regcomp.c (peek_token): Use opr.ctx_type instead of opr.idx
1427         for ANCHOR.
1428         (parse_expression): Only call init_word_char if word context will be
1429         needed.
1431         * posix/bug-regex11.c (tests): Add new tests.
1433         * posix/tst-regex.c: Include getopt.h.
1434         (timing): New variable.
1435         (main): Set timing to 1 if --timing argument is present.
1436         Add 2 new tests.
1437         (run_test, run_test_backwards): Handle timing.
1439 2003-11-27  Jakub Jelinek  <jakub@redhat.com>
1441         * posix/regex_internal.h (re_string_t): Remove mbs_case field.
1442         Add offsets, valid_raw_len, raw_len, raw_stop, mbs_allocated and
1443         offsets_needed fields.  Change icase, is_utf8 and map_notascii
1444         type from int bitfield to unsigned char.
1445         (MBS_ALLOCATED, MBS_CASE_ALLOCATED): Remove.
1446         (build_wcs_upper_buffer): Change prototype to return int.
1447         (re_string_peek_byte_case, re_string_fetch_byte_case): Remove
1448         defines, add prototypes.
1449         * posix/regex_internal.c (re_string_allocate): Don't initialize
1450         stop here.  Don't initialize mbs_case.  Set valid_raw_len.
1451         Use mbs_allocated instead of MBS_* macros.
1452         (re_string_construct): Don't initialize stop and valid_len here.
1453         Don't initialize mbs_case.  Use mbs_allocated instead of MBS_*
1454         macros.  Reallocate buffers if build_wcs_upper_buffer converted
1455         too few bytes.  Set valid_len to bufs_len only for single byte
1456         no translation and set in that case valid_raw_len as well.
1457         (re_string_realloc_buffers): Reallocate offsets if not NULL.
1458         Use mbs_allocated instead of MBS_ALLOCATED.  Don't reallocate
1459         mbs_case.
1460         (re_string_construct_common): Initialize raw_len, mbs_allocated,
1461         stop and raw_stop.
1462         (build_wcs_buffer): Apply pstr->trans before mbrtowc instead of
1463         after it.  Set valid_raw_len.  Don't set mbs_case.
1464         (build_wcs_upper_buffer): Return REG_NOERROR or REG_ESPACE.
1465         Only use the fast path if !pstr->offsets_needed.  Apply pstr->trans
1466         before mbrtowc instead of after it.  If upper case character
1467         uses different number of bytes than lower case, goto to the
1468         slow path.  Don't call towupper unnecessarily twice.  Set
1469         valid_raw_len as well.  Handle in the slow path the case if
1470         lower and upper case use different number of characters.
1471         Don't set mbs_case.
1472         (re_string_skip_chars): Use valid_raw_len instead of valid_len.
1473         (build_upper_buffer): Don't set mbs_case.  Add BE macro.  Set
1474         valid_raw_len.
1475         (re_string_translate_buffer): Set mbs instead of mbs_case.  Set
1476         valid_raw_len.
1477         (re_string_reconstruct): Use raw_len/raw_stop to initialize
1478         len/stop.  Clear valid_raw_len and offsets_needed when clearing
1479         valid_len.  Use mbs_allocated instead of MBS_* macros.
1480         Check original offset against valid_raw_len instead of valid_len.
1481         Remove mbs_case handling.  Adjust valid_raw_len together with
1482         valid_len.  If is_utf8 and looking for tip context, apply
1483         pstr->trans first.  If buffers start with partial multi-byte
1484         character, initialize mbs array as well if mbs_allocated.
1485         Check return value of build_wcs_upper_buffer.
1486         (re_string_peek_byte_case): New function.
1487         (re_string_fetch_byte_case): New function.
1488         (re_string_destruct): Use mbs_allocated instead of MBS_ALLOCATED.
1489         Don't free mbs_case.  Free offsets.
1490         * posix/regcomp.c (init_dfa): Only check if charset name is UTF-8
1491         if mb_cur_max == 6.
1492         * posix/regexec.c (re_search_internal): Initialize input.raw_stop
1493         as well.  Use valid_raw_len instead of valid_len when looking
1494         through fastmap.  Adjust registers through input.offsets.
1495         (extend_buffers): Allow build_wcs_upper_buffer to fail.
1496         * posix/bug-regex18.c (tests): Enable #ifdefed out tests.  Add new
1497         tests.
1499 2003-11-26  Jakub Jelinek  <jakub@redhat.com>
1501         * posix/regexec.c (check_subexp_limits): Only check close
1502         subexpression limitation if one is found.  Formatting.
1503         (sift_states_backward, check_arrival, check_arrival_add_next_nodes):
1504         Formatting.
1505         * posix/bug-regex11.c (tests): Enable most #ifdefed out tests.
1506         Add new test.
1508 2003-11-26  Ulrich Drepper  <drepper@redhat.com>
1510         * sysdeps/unix/sysv/linux/kernel-features.h
1511         (__ASSUME_PROT_GROWSUPDOWN): Define for 2.6.1 and up.
1512         * sysdeps/unix/sysv/linux/dl-execstack.c: Omit compatibility code
1513         if __ASSUME_PROT_GROWSUPDOWN is defined.
1515 2003-11-26  Andreas Jaeger  <aj@suse.de>
1517         * sysdeps/unix/sysv/linux/dl-execstack.c
1518         (_dl_make_stack_executable): Set dl_stack_flags always for
1519         success.
1521 2003-06-22  Petter Reinholdtsen  <pere@hungry.com>
1523         * locale/program/ld-monetary.c: Only check the first three
1524         characters in int_curr_symbol against ISO-4217, to make the
1525         separator character used by a locale independent of the content
1526         in iso-4217.def.
1527         * locale/iso-4217.def: Remove the space character from all
1528         currency values to get the new test code in ld-monetary.c working.
1530 2003-11-21  David Mosberger  <davidm@hpl.hp.com>
1532         * elf/soinit.c (_fini): Put _fini() in .init_array section if
1533         HAVE_INITFINI_ARRAY is defined.
1535 2003-11-25  Ulrich Drepper  <drepper@redhat.com>
1537         * sysdeps/i386/fpu/bits/mathinline.h: Introduce __libc_sqrtl symbol.
1538         Define it appropriately after last change.  Use it where __sqrtl
1539         was used.
1541 2003-11-25  H.J. Lu  <hongjiu.lu@intel.com>
1543         * sysdeps/i386/fpu/bits/mathinline.h (sqrt): Don't inline
1544         sqrt for gcc 3.3 and above.
1546 2003-11-25  Ulrich Drepper  <drepper@redhat.com>
1548         * posix/runptests.c (main): Make errors fatal.
1549         * posix/PTESTS: One test in GA135 and GA136 check functionality
1550         which seems not guaranteed.
1552 2003-11-25  Jakub Jelinek  <jakub@redhat.com>
1554         * posix/regexec.c (re_search_internal): If prune_impossible_nodes
1555         returned REG_NOMATCH, set match_last to -1.  Don't initialize
1556         pmatch[0] needlessly.  Fix comment.
1557         (prune_impossible_nodes): Don't segfault on NULL state_log entry.
1558         (set_regs): Fix comment.
1559         * posix/regcomp.c (parse_bracket_exp): Only set has_plural_match
1560         if adding both SIMPLE_BRACKET and COMPLEX_BRACKET.
1561         (build_charclass_op): Set has_plural_match if adding both
1562         SIMPLE_BRACKET and COMPLEX_BRACKET.
1563         * posix/bug-regex11.c (tests): Fix register values for one commented
1564         out test.  Add new tests.
1566         * posix/regex_internal.c (re_string_allocate): Make sure init_len
1567         is at least dfa->mb_cur_max.
1568         (re_string_reconstruct): If is_utf8, don't fall back into
1569         re_string_skip_chars just because idx points into a middle of
1570         valid UTF-8 character.  Instead, set the wcs bytes which correspond
1571         to the partial character bytes to WEOF.
1572         * posix/regexec.c (re_search_internal): Allocate input.bufs_len + 1
1573         instead of dfa->nodes_len + 1 state_log entries initially.
1574         * posix/bug-regex20.c (main): Uncomment backwards case insensitive
1575         tests.
1577 2003-11-24  Jakub Jelinek  <jakub@redhat.com>
1579         * posix/regex_internal.h (re_token_t): Add word_char bit.  Add
1580         comment.
1581         (re_dfa_t): Add sb_char field.
1582         (bitset_mask): New function.
1583         * posix/regcomp.c (free_dfa_content): Free sb_char.
1584         (init_dfa): Don't initialize word_char unnecessarily.
1585         Initialize sb_char.
1586         (duplicate_node): Don't duplicate !word_char CHARACTERs with
1587         NEXT_WORD_CONSTRAINT constraint or word_char CHARACTERs with
1588         NEXT_NOTWORD_CONSTRAINT.  Return -1 in *new_idx instead.
1589         (duplicate_node_closure): Handle clone_dest == -1 from
1590         duplicate_node.
1591         (peek_token): Initialize word_char bit.
1592         (parse_expression, parse_dup_op): Add comments.
1593         (parse_bracket_exp): Don't set bitmask bits for multi-byte char
1594         starting bytes here at the beginning.  Mask off the bits right
1595         before creating SIMPLE_BRACKET.
1596         (build_charclass_op): Likewise.
1597         * posix/regexec.c (group_nodes_into_DFAstates) <case OP_PERIOD>: Only
1598         set accept bits for single-byte characters.
1599         (group_nodes_into_DFAstates): Don't rely on characters 0 .. 127
1600         being single byte encoded and the rest multi-byte.
1601         * posix/bug-regex19.c (tests): Add new tests.
1602         (do_mb_tests): Initialize t to *test.
1603         (main): Fail even on do_mb_tests errors.
1605 2003-11-23  Ulrich Drepper  <drepper@redhat.com>
1607         * posix/regexec.c: Correct several memory allocation problems.
1608         Add more BE.
1609         * posix/regex_internal.c: Likewise.
1610         * posix/regcomp.c: Likewise.
1612         * posix/regexec.c: Add const in a number of places.
1613         * posix/regex_internal.h: Make EPSILON_BIT a macro to help
1614         debugging.  Its value isn't important.
1616 2003-11-22  Ulrich Drepper  <drepper@redhat.com>
1618         * posix/PTESTS: Fix first test of GA143.
1620 2003-11-21  Ulrich Drepper  <drepper@redhat.com>
1622         * posix/regex_internal.c (re_dfa_add_node): Add BE, reallocation
1623         isn't likely.
1625         * locale/programs/charmap.c (charmap_read): If encoding is found
1626         not ASCII compatible, set enc_not_ascii_compatible.
1627         * locale/programs/charmap.h: Declare enc_not_ascii_compatible.
1628         * locale/programs/ld-ctype.c (ctype_startup): If
1629         enc_not_ascii_compatible is set, initialize to_nonascii to 1.
1631 2003-11-22  Jakub Jelinek  <jakub@redhat.com>
1633         * elf/rtld.c (process_envvars): Only honor LD_USE_LOAD_BIAS
1634         if !__libc_enable_secure.
1636         * sysdeps/generic/ldsodefs.h (_dl_use_load_bias): New _rtld_global
1637         field.
1638         * elf/rtld.c (_rtld_global): Initialize _dl_use_load_bias field.
1639         (dl_main): Set GL(dl_use_load_bias) default.
1640         (process_envvars): Set GL(dl_use_load_bias) from LD_USE_LOAD_BIAS.
1641         Add EXTRA_LD_ENVVARS_13.
1642         * elf/dl-support.c (_dl_use_load_bias): New variable.
1643         * elf/dl-load.c (_dl_map_object_from_fd): Mask c->mapstart
1644         with GL(dl_use_load_bias).
1645         * sysdeps/generic/unsecvars.h (UNSECURE_ENVVARS): Add
1646         LD_USE_LOAD_BIAS.
1647         * sysdeps/unix/sysv/linux/dl-librecon.h (EXTRA_LD_ENVVARS): Remove.
1648         (EXTRA_LD_ENVVARS_LINUX): Renamed to...
1649         (EXTRA_LD_ENVVARS_13): ... this.  Remove case at the beginning.
1650         * sysdeps/unix/sysv/linux/i386/dl-librecon.h (EXTRA_LD_ENVVARS):
1651         Don't undefine first.  Remove EXTRA_LD_ENVVARS_LINUX.
1653 2003-11-21  Ulrich Drepper  <drepper@redhat.com>
1655         * posix/regcomp.c (duplicate_node): Remove unnecessary local variable.
1657         * posix/regcomp.c (re_dfa_add_tree_node): Make fourth parameter a
1658         pointer.  Adjust callers.
1660         * posix/regcomp.c (fetch_token): Change interface to match
1661         peek_token.  This avoids some copying and reduces code size.
1663 2003-11-21  Jakub Jelinek  <jakub@redhat.com>
1665         * posix/bug-regex19.c (tests): Add more tests.
1667         * posix/bug-regex11.c: And one more commented out test.
1669         * posix/tst-rxspencer.c (mb_tests): Don't run identical multi-byte
1670         tests multiple times unnecessarily.
1672         * posix/bug-regex19.c (BRE, ERE): Define.
1673         (tests): Add many new tests, remove UTF-8 ones.
1674         (do_one_test, do_mb_tests): New functions.
1675         (main): Rewritten using do_one_test and do_mb_tests.
1677 2003-11-20  Ulrich Drepper  <drepper@redhat.com>
1679         * posix/PTESTS: Fix first test in GA143.
1681 2003-11-20  Jakub Jelinek  <jakub@redhat.com>
1683         * posix/regex_internal.h (re_dfastate_t): Remove trtable_search.
1684         Add word_trtable.
1685         * posix/regex_internal.c (create_newstate_common, free_state):
1686         Don't free trtable_search.
1687         * posix/regexec.c (check_matching): Remove fl_search argument.
1688         (transit_state_sb): Likewise.  #ifdef out as unused.
1689         (build_trtable): Remove fl_search argument.  Set state->word_trtable
1690         and state->trtable.  Build separate word and non-word tables if
1691         multi-byte and they differ for some character.
1692         (transit_state): Remove fl_search argument.  Don't update
1693         state->trtable here.  Handle state->word_trtable.
1694         #ifdef out unused call to transit_state_sb.
1695         (re_search_internal): Update check_matching caller.
1696         (group_nodes_into_DFAstates): Don't clear non-ascii chars in accepts
1697         bitmask for multi-byte locales.
1698         * posix/bug-regex19.c (tests): Enable some commented out tests, add
1699         2 new tests.
1700         * posix/tst-rxspencer.c (mb_tests): Don't test [[=b=]] for now as
1701         multi-byte.  Don't run identical multi-byte tests multiple times
1702         unnecessarily.
1703         (main): Check setlocale return value.
1704         * posix/Makefile (tst-rxspencer-ARGS): Add --utf8 argument.
1705         (tst-rxspencer-ENV): Remove MALLOC_TRACE, add LOCPATH.
1706         ($(objpfx)tst-rxspencer-mem): Run another tst-rxspencer test
1707         here, without --utf8 argument but with MALLOC_TRACE.
1709 2003-11-19  Jakub Jelinek  <jakub@redhat.com>
1711         * posix/regexec.c (extend_buffers): Don't allocate
1712         twice as big state_log as needed.  Don't modify pstr->valid_len
1713         for mb_cur_max == 1 !icase !trans.
1715         * posix/regcomp.c (free_bin_tree): Removed.
1716         (create_tree): Add dfa argument.  Don't call re_malloc for
1717         each tree, instead allocate from str_tree_storage.
1718         (re_dfa_add_tree_node): New function.
1719         (free_dfa_content): Handle freeing if dfa->nodes == NULL
1720         or dfa->state_table == NULL.
1721         (re_compile_internal): Call free_dfa_content if init_dfa
1722         fails.  Call free_workarea_compile, re_string_destruct
1723         and free_dfa_content for most of the other failure paths.
1724         (init_dfa): Initialize str_tree_storage_idx.
1725         Don't clear any fields on allocation failure.
1726         (free_workarea_compile): Free str_tree_storage chunks
1727         instead of free_bin_tree (dfa->str_tree).
1728         (parse): Call re_dfa_add_tree_node instead of re_dfa_add_node
1729         followed by create_tree.  Add dfa argument to remaining
1730         create_tree calls.  Remove new_idx variable.  Remove calls
1731         to free_bin_tree.
1732         (parse_reg_exp, parse_branch, parse_expression, parse_sub_exp,
1733         parse_dup_op, parse_bracket_exp, build_charclass_op): Likewise.
1734         (duplicate_tree): Remove calls to free_bin_tree, add dfa
1735         argument to create_tree.
1736         * posix/regex_internal.h (BIN_TREE_STORAGE_SIZE): Define.
1737         (bin_tree_storage_t): New type.
1738         (re_dfa_t): Add str_tree_storage and str_tree_storage_idx
1739         fields.
1740         * posix/Makefile (tests): Add bug-regex21.
1741         (generated): Add bug-regex21-mem, bug-regex21.mtrace,
1742         tst-rxspencer-mem and tst-rxspencer.mtrace.
1743         (tests): Depend on $(objpfx)bug-regex21-mem
1744         and $(objpfx)tst-rxspencer-mem.
1745         (bug-regex21-ENV, tst-rxspencer-ENV): Set.
1746         ($(objpfx)bug-regex21-mem, $(objpfx)tst-rxspencer-mem): New.
1747         * posix/tst-rxspencer.c (main): Add call to mtrace.
1748         Free line at the end.
1749         * posix/bug-regex21.c: New test.
1751 2003-11-19  Ulrich Drepper  <drepper@redhat.com>
1753         * posix/bug-regex20.c: Correct invalid UTF-8 sequences.
1755         * posix/regex_internal.c (build_wcs_upper_buffer): If mbrtowc
1756         fails, just use the byte, do no fancy conversions.
1758         * posix/regex_internal.h (re_string_first_byte): Use ->valid_len
1759         not ->len.
1760         (re_string_is_single_byte_char): Likewise.
1762 2003-11-18  Ulrich Drepper  <drepper@redhat.com>
1764         * posix/regexec.c (get_subexp): After calling get_subexp_sub
1765         reload buf and bkref_str.  Little optimization by avoiding memcmp.
1767 2003-11-14  David Mosberger   <davidm@hpl.hp.com>
1769         * sysdeps/unix/sysv/linux/ia64/sysdep.h
1770         (GAS_ALIGN_BREAKS_UNWIND_INFO): Define this macro to indicate
1771         that all existing GAS versions have a problem with .align inside
1772         a function.
1773         * sysdeps/ia64/memccpy.S: Work around GAS_ALIGN_BREAKS_UNWIND_INFO bug.
1774         * sysdeps/ia64/memcpy.S: Likewise.
1775         * sysdeps/ia64/memset.S: Likewise.
1776         * sysdeps/ia64/memmove.S: Likewise.  Also move the jump-table to
1777         out of .text into .rodata, where it belongs.
1779         * sysdeps/unix/sysv/linux/ia64/pipe.S: There is no need to
1780         save/restore input-arguments, because they're necessarily
1781         preserved by the kernel to support syscall-restart.
1783 2003-11-18  Jakub Jelinek  <jakub@redhat.com>
1785         * posix/regex_internal.h (re_token_type_t): Remove unused ALT,
1786         END_OF_RE_TOKEN_T and SUBEXP.  Reorder values.  Add OP_UTF8_PERIOD
1787         and EPSILON_BIT.
1788         (IS_EPSILON_NODE): Just test if EPSILON_BIT is set.
1789         (ACCEPT_MB_NODE): Return 1 for OP_UTF8_PERIOD as well.
1790         * posix/regex_internal.c (create_ci_newstate, create_cd_newstate):
1791         Handle OP_UTF8_PERIOD.
1792         (re_string_reconstruct): Set valid_len for single byte char searching
1793         with no translation and case sensitivity.
1794         * posix/regcomp.c (re_compile_fastmap_iter, calc_first): Handle
1795         OP_UTF8_PERIOD.
1796         (re_compile_internal): Don't call optimize_utf8 if preg->translate
1797         != NULL.
1798         (optimize_utf8): Remove BACK_SLASH case.
1799         Transform OP_PERIOD into OP_UTF8_PERIOD if the searching can be
1800         optimized.
1801         (parse_bracket_exp): Don't create SIMPLE_BRACKET if it doesn't have
1802         any bits set and COMPLEX_BRACKET is used.
1803         * posix/regexec.c (transit_state_mb): Fix comment typo.
1804         (group_nodes_into_DFAstates, check_node_accept): Handle
1805         OP_UTF8_PERIOD.
1806         (check_node_accept_bytes): Likewise.  Reorder slightly so that
1807         re_string_char_size_at and re_string_elem_size_at are called
1808         only when needed.
1809         * posix/bug-regex20.c (BRE, ERE): Define.
1810         (tests): Use them to make lines shorter.  Expect . to be
1811         optimized.  Add lots of new tests.
1812         (main): Run (ATM just case sensitive) test with backwards searching
1813         as well.
1815 2003-11-18  Jakub Jelinek  <jakub@redhat.com>
1817         * io/bug-ftw4.c: Include string.h.
1818         * posix/fnmatch.c (mbsinit): Remove define.
1820 2003-11-17  Jakub Jelinek  <jakub@redhat.com>
1822         * posix/regcomp.c (optimize_utf8): Optimize multi-byte chars as
1823         well.
1824         * posix/bug-regex20.c (tests): Add new tests.  Multi-byte char
1825         followed by dup operator is expected to be optimized.
1827         * posix/regexec.c (check_node_accept_bytes): Move nrules and j
1828         variables to the block where they are only used, initialize
1829         nrules only immediately before using it.
1831 2003-11-15  Andreas Jaeger  <aj@suse.de>
1833         * sysdeps/x86_64/fpu/s_scalbnl.S: New file.
1834         * sysdeps/x86_64/fpu/s_truncl.S: New file.
1835         * sysdeps/x86_64/fpu/s_nearbyintl.S: New file.
1836         * sysdeps/x86_64/fpu/s_floorl.S: New file.
1837         * sysdeps/x86_64/fpu/s_ilogbl.S: New file.
1838         * sysdeps/x86_64/fpu/e_remainderl.S: New file.
1840         * math/libm-test.inc (floor_test): Test also Â±0.25.
1841         (ceil_test): Test -0.25.
1843 2003-11-17  Ulrich Drepper  <drepper@redhat.com>
1845         * sysdeps/posix/getaddrinfo.c: Add support for destination address
1846         selection according to RFC 3484.
1848 2003-11-15  Ulrich Drepper  <drepper@redhat.com>
1850         * posix/regex_internal.h: Add forward declaration of re_dfa_t.
1851         Replace last two parameters of re_string_allocate and
1852         re_string_construct with pointer to DFA.
1853         (re_dfa_t): Add map_notascii field.
1854         * posix/regcomp.c (re_compile_internal): Add call of
1855         re_string_construct.
1856         (init_dfa): Initialize map_notascii.
1857         * posix/regex_internal.c: Adjust definitions of re_string_allocate
1858         and re_string_construct.
1859         Pass DFA to re_string_construct.  Adjust definition.  Initialize
1860         map_notascii field.
1861         (build_wcs_upper_buffer): If map_notascii is zero use simplified
1862         method to map ASCII values to upper case.
1863         * posix/regex.c: Include localeinfo.h.
1864         * posix/regexec.c: Adjust call of re_string_allocate.
1866         * locale/langinfo.h: Add _NL_CTYPE_MAP_TO_NONASCII.
1867         * locale/localeinfo.h (LIMAGIC): Change value.
1868         * locale/categories.def. Add entry for _NL_CTYPE_MAP_TO_NONASCII.
1869         * locale/C-ctype.h: Likewise.
1870         * locale/programs/ld-ctype.c: Compute whether any mapping maps from
1871         ASCII to non-ASCII value.  Write out that value.
1873         * wcsmbs/mbsinit.c: Undef mbsinit and __mbsinit.
1874         * include/wchar.h: Provide inline versions of mbsinit and __mbsinit.
1876 2003-11-14  Jakub Jelinek  <jakub@redhat.com>
1878         * posix/tst-rxspencer.c (check_match): @ without any following
1879         characters must match only end of string.
1880         (main): Fix filename in error message.
1882 2003-11-12  David Mosberger  <davidm@hpl.hp.com>
1884         * sysdeps/ia64/dl-machine.h: Force inlining of
1885         elf_machine_runtime_setup().
1887 2003-11-13  Andreas Jaeger  <aj@suse.de>
1889         * math/Makefile (CFLAGS-test-float.c): Add -fno-builtin.
1890         (CFLAGS-test-double.c): Likewise.
1891         (CFLAGS-test-ldouble.c): Likewise.
1892         (CPPFLAGS-test-ifloat.c): Likewise.
1893         (CPPFLAGS-test-idouble.c): Likewise.
1894         (CPPFLAGS-test-ildoubl.c): Likewise.
1896         * math/libm-test.inc (ceil_test): Test ceil (0.25).
1898 2003-11-04  Ulrich Drepper  <drepper@redhat.com>
1900         * sysdeps/unix/sysv/linux/ifaddrs.c: Make sure it's the kernel who
1901         sends the netlink data.
1902         * sysdeps/unix/sysv/linux/check_pf.c: Likewise.
1904 2003-11-13  Jakub Jelinek  <jakub@redhat.com>
1906         * posix/regcomp.c (optimize_utf8): Optimize even if SIMPLE_BRACKET
1907         with no bits set for >= 0x80 chars is seen.
1908         * posix/bug-regex20.c (tests): Add new tests.  Expect [ABC] to be
1909         optimized.
1910         (main): Run all tests with RE_ICASE as well.
1912 2003-11-13  Ulrich Drepper  <drepper@redhat.com>
1914         * posix/Makefile: Add rules to build and run tst-rxspencer.
1915         (distribute): Add rxspencer/tests and rxspencer/COPYRIGHT.
1916         * posix/tst-rxspencer.c: New file.
1917         * posix/rxspencer/tests: New file.
1918         * posix/rxspencer/COPYRIGHT: New file.
1919         Patch mostly by Jakub Jelinek.
1921         * posix/regcomp.c (parse_bracket_exp): Don't check for range if
1922         this is no option given the first token.
1924         * posix/regcomp.c (parse_bracket_exp): Fix test for EOS after
1925         hyphen in range expression.  Return EBRACK in this case.
1927         * posix/regcomp.c (parse_bracket_element): Reject hyphens unless
1928         we expect them or it's the last element in the bracket expression.
1929         Indicated by new parameter.  Adjust all callers.
1931         * posix/runtests.c (run_a_test): If regcomp failed, reset last_pattern.
1932         Prettier error messages.
1934         * posix/regcomp.c (parse_dup_op): Fail with REG_BADBR is first
1935         number in {,} expression is larger.
1937 2003-11-13  Andreas Jaeger  <aj@suse.de>
1939         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_TGKILL):
1940         Define appropriately for x86_64.
1941         (__ASSUME_UTIMES): Likewise.
1942         (__ASSUME_CLONE_THREAD_FLAGS): Likewise.
1944         * sysdeps/x86_64/fpu/s_ceill.S: New file.
1946 2003-11-13  Ulrich Drepper  <drepper@redhat.com>
1948         * posix/regcomp.c (parse_expression): In BRE consecutive
1949         duplications are not allowed.
1951 2003-11-12  Ulrich Drepper  <drepper@redhat.com>
1953         * posix/regcomp.c (parse_bracket_exp): If end of expression is
1954         seen, return EBRACK error, not BADPAT.
1956         * posix/regcomp.c (parse_expression): If token is OP_OPEN_DUP_NUM
1957         and RE_CONTEXT_INVALID_DUP syntax flag is set, fail.
1958         * posix/regex.h (RE_CONTEXT_INVALUD_OPS): New macro.
1959         (RE_SYNTAX_POSIX_BASIC): Use RE_CONTEXT_INVALUD_OPS.
1961         * posix/regcomp.c (parse_sub_exp): In case of not-matching ( )
1962         return REG_EPAREN.
1964         * posix/PTESTS: Cleanup.  Fix typoes.  Correct bugs in 2003.2.
1965         * posix/runptests.c (main): Handle comments.
1966         * posix/PTESTS2C.sed: Handle comments.
1968 2003-11-12  Jakub Jelinek  <jakub@redhat.com>
1970         * posix/regcomp.c (optimize_utf8): New function.
1971         (re_compile_fastmap_iter): Use dfa->mb_cur_max > 1 instead
1972         of !icase.
1973         (re_compile_internal): Call optimize_utf8 if not case insensitive
1974         and in UTF-8 locale.
1975         * posix/regex_internal.h: Ifdef out some prototypes if
1976         RE_NO_INTERNAL_PROTOTYPES is defined to shut up warnings.
1977         * posix/Makefile (tests): Add bug-regex20.
1978         (bug-regex20-ENV): Add LOCPATH.
1979         * posix/bug-regex20.c: New test.
1981 2003-11-12  Jakub Jelinek  <jakub@redhat.com>
1983         * io/ftw.c (NFTW_NEW_NAME, NFTW_OLD_NAME): Add prototypes.
1985 2003-11-12  Jakub Jelinek  <jakub@redhat.com>
1987         * posix/tst-regex.c (umemlen): New variable.
1988         (test_expr): Add expectedicase argument.  Test case insensitive
1989         searches as well as backwards searches (case sensitive and
1990         insensitive) too.
1991         (run_test): Add icase argument.  Use it to compute regcomp flags.
1992         (run_test_backwards): New function.
1993         (main): Cast read to size_t to avoid warning.  Set umemlen.
1994         Add expectedicase arguments to test_expr.
1995         * posix/regex_internal.c (re_string_reconstruct): If is_utf8,
1996         find previous character by walking back instead of converting
1997         all chars from beginning.
1999 2003-11-12  Jakub Jelinek  <jakub@redhat.com>
2001         * posix/regex_internal.h (struct re_string_t): Add is_utf8
2002         and mb_cur_max fields.
2003         (struct re_dfa_t): Likewise.  Reorder fields to make structure
2004         smaller on 64-bit arches.
2005         (re_string_allocate, re_string_construct): Add mb_cur_max and
2006         is_utf8 arguments.
2007         (re_string_char_size_at, re_string_wchar_at): Use pstr->mb_cur_max
2008         instead of MB_CUR_MAX.
2009         * posix/regcomp.c (re_compile_fastmap_iter): Use dfa->mb_cur_max
2010         instead of MB_CUR_MAX.
2011         (re_compile_internal): Pass new arguments to re_string_construct.
2012         (init_dfa): Initialize mb_cur_max and is_utf8 fields.
2013         (peek_token, peek_token_bracket): Use input->mb_cur_max instead
2014         of MB_CUR_MAX.
2015         (parse_expression, parse_bracket_exp, parse_charclass_op): Use
2016         dfa->mb_cur_max instead of MB_CUR_MAX.
2017         * posix/regex_internal.c (re_string_construct_common): Add
2018         mb_cur_max and is_utf8 arguments.  Initialize fields with them.
2019         (re_string_allocate, re_string_construct): Add mb_cur_max and
2020         is_utf8 arguments, pass them to re_string_construct_common.
2021         Use mb_cur_max instead of MB_CUR_MAX.
2022         (re_string_realloc_buffers): Use pstr->mb_cur_max instead of
2023         MB_CUR_MAX.
2024         (re_string_reconstruct): Likewise.
2025         (re_string_context_at): Use input->mb_cur_max instead of
2026         MB_CUR_MAX.
2027         (create_ci_newstate, create_cd_newstate): Use dfa->mb_cur_max
2028         instead of MB_CUR_MAX.
2029         * posix/regexec.c (re_search_internal): Likewise.
2030         Pass new arguments to re_string_allocate.
2031         (check_matching, transit_state_sb): Use dfa->mb_cur_max instead of
2032         MB_CUR_MAX.
2033         (extend_buffers): Use pstr->mb_cur_max instead of MB_CUR_MAX.
2035 2003-11-12  Jakub Jelinek  <jakub@redhat.com>
2037         * posix/Makefile (tests): Add bug-regex19.
2038         (bug-regex19-ENV): Add LOCPATH.
2039         * posix/bug-regex19.c: New test.
2041 2003-11-11  Jakub Jelinek  <jakub@redhat.com>
2043         * posix/regcomp.c (re_compile_fastmap_iter): Handle RE_ICASE
2044         with MB_CUR_MAX > 1 locales in the fastmap.
2046 2003-11-11  Jakub Jelinek  <jakub@redhat.com>
2048         * posix/regex_internal.c (build_wcs_buffer): Fix comment typo.
2049         (build_wcs_upper_buffer): Likewise.  Use towupper for wchar_t instead
2050         of toupper.
2051         * posix/Makefile (tests): Add bug-regex17 and bug-regex18.
2052         (bug-regex17-ENV, bug-regex18-ENV): Add LOCPATH.
2053         * posix/bug-regex17.c: New file
2054         * posix/bug-regex18.c: New file.
2056 2003-10-08  Thorsten Kukuk  <kukuk@suse.de>
2058         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h (pread, pwrite):
2059         Define __NR_pread/__NR_pwrite if not done in kernel headers
2061 2003-11-11  Roland McGrath  <roland@redhat.com>
2063         * manual/xtract-typefun.awk: Swallow [(){}*] from function names.
2065         * manual/Makefile (info): Don't depend on dir-add.info.
2066         (libc.dvi libc.pdf libc.info): Depend on dir-add.texi.
2067         (dir-add.info): Target removed, replaced with ...
2068         (dir-add.texi): New target.
2069         (distribute): Add it.
2070         (install): Remove variant with --section arguments.
2071         Let the @dircategory directives do their work.
2072         (mostlyclean): Don't remove dir-add.info here.
2073         (realclean): Remove dir-add.texi here.
2074         * manual/libc.texinfo: @include dir-add.texi
2075         * configure.in: Remove check for old Debian install-info.
2076         * configure: Regenerated.
2077         * config.make.in (OLD_DEBIAN_INSTALL_INFO): Variable removed.
2079 2003-11-08  Andreas Schwab  <schwab@suse.de>
2081         * scripts/data/c++-types-ia64-linux-gnu.data: New file.
2083 2003-11-10  Carlos O'Donell  <carlos@baldric.uwo.ca>
2085         * io/ftwtest-sh: Fix nested sed commands.
2087 2003-11-10  Jakub Jelinek  <jakub@redhat.com>
2089         * posix/regex_internal.h (re_string_char_size_at): Don't look beyond
2090         valid_len wide chars.
2092 2003-11-09  Roland McGrath  <roland@redhat.com>
2094         * manual/examples/dir2.c (one): Add const to argument type.
2095         Reported by J de Haan <j.de.haan@home.nl>.
2097 2003-11-07  Ulrich Drepper  <drepper@redhat.com>
2099         * po/pl.po: Update from translation team.
2101 2003-11-07  Jakub Jelinek  <jakub@redhat.com>
2103         * io/ftw.c (NFTW_OLD_NAME, NFTW_NEW_NAME): Define.
2104         (ftw_dir, ftw_startup): Add __attribute ((noinline)).
2105         (NFTW_OLD_NAME, NFTW_NEW_NAME): New functions.
2106         (NFTW_NAME): Only define if !_LIBC, add versioned_symbol
2107         and compat_symbol.
2108         * io/ftw64.c (NFTW_OLD_NAME, NFTW_NEW_NAME): Define.
2109         * io/Versions (libc): Export nftw@@GLIBC_2.3.3
2110         and nftw64@@GLIBC_2.3.3.
2112         * io/ftw.h (FTW_ACTIONRETVAL): New flag.
2113         (FTW_CONTINUE, FTW_STOP, FTW_SKIP_SUBTREE, FTW_SKIP_SIBLINGS): New.
2114         * io/ftw.c (ftw_dir): Add old_dir argument.
2115         Clear result if it was FTW_SKIP_SIBLINGS after processing all
2116         dir entries.  Change cwd back if old_dir != NULL.
2117         (process_entry): Adjust caller.  Don't change cwd back here.
2118         Change FTW_SKIP_SUBTREE result to 0.
2119         (ftw_startup): Adjust ftw_dir caller.
2120         Clear result if it was FTW_SKIP_SUBTREE or FTW_SKIP_SIBLINGS.
2121         * io/ftwtest.c (skip_subtree, skip_siblings): New variables.
2122         (options, main): Add --skip-subtree and --skip-siblings options.
2123         (cb): Use return FTW_CONTINUE instead of return 0.
2124         Handle --skip-subtree and --skip-siblings.
2125         * io/ftwtest-sh: Add tests for FTW_ACTIONRETVAL.
2126         * manual/filesys.texi: Document FTW_ACTIONRETVAL.
2128 2003-11-04  Jakub Jelinek  <jakub@redhat.com>
2130         * io/ftw.c (ftw_dir): Close dir if callback with FTW_D type returns
2131         non-zero.
2132         * io/Makefile (tests): Add bug-ftw4.
2133         * io/bug-ftw4.c: New test.
2135 2003-10-27  Daniel Jacobowitz  <drow@mvista.com>
2137         * libio/libioP.h [_IO_USE_OLD_IO_FILE]
2138         (struct _IO_FILE_complete_plus): New type.
2139         * libio/oldiofopen.c (_IO_old_fopen): Use _IO_FILE_complete_plus.
2140         * libio/oldiofdopen.c (_IO_old_fdopen): Likewise.
2141         * libio/oldiopopen.c (struct _IO_proc_file, _IO_old_popen): Likewise.
2142         Call _IO_old_init instead of _IO_init.
2144 2003-11-03  Ulrich Drepper  <drepper@redhat.com>
2146         * intl/locale.alias: nb_NO is now the correct name, not no_NO.
2148         * locale/iso-639.def: Add Blin.
2149         Patch by Daniel Yacob <locales@geez.org>.
2151 2003-10-31  Steven Munroe  <sjmunroe@us.ibm.com>
2153         * sysdeps/powerpc/powerpc32/strncmp.S: New File.
2154         * sysdeps/powerpc/powerpc64/strncmp.S: New File.
2156 2003-11-01  Randolph Chung  <tausq@debian.org>
2158         * sysdeps/unix/sysv/linux/hppa/sysdep.h (LOAD_ARGS_0, LOAD_ARGS_1,
2159         LOAD_ARGS_2, LOAD_ARGS_3, LOAD_ARGS_4, LOAD_ARGS_5, LOAD_ARGS_6):
2160         Add missing parentheses.
2162 2003-11-01  Roland McGrath  <roland@redhat.com>
2164         * libio/bug-ftell.c (do_test): Add a cast.
2166 2003-09-26  Daniel Jacobowitz  <drow@mvista.com>
2168         * Makerules (shlib.lds): Make sure that ld doesn't try to link
2169         anything while generating the linker script.
2171 2003-10-31  Roland McGrath  <roland@redhat.com>
2173         * locale/lc-ctype.c (_nl_postload_ctype): Update _nl_global_locale's
2174         special members.
2176 2003-10-29  Ulrich Drepper  <drepper@redhat.com>
2178         * po/be.po: Update from translation team.
2180 2003-10-27  Ulrich Drepper  <drepper@redhat.com>
2182         * elf/rtld.c (map_doit): Pass __RTLD_OPENEXEC in last parameter to
2183         _dl_map_object.
2185         * elf/sprof.c (load_shobj): Use l_map_start not l_addr to locate
2186         ELF header.
2188         * inet/rcmd.c (__validuser2_sa): Remove unnecessary code to skip
2189         rest of line.  We use getline which means this cannot happen.
2191 2003-10-26  Ulrich Drepper  <drepper@redhat.com>
2193         * sysdeps/unix/sysv/linux/internal_statvfs.c (__internal_statvfs):
2194         Avoid infinite loops in case the mounts file is hosed.
2195         * io/Makefile: Add rules to build and run tst-statvfs.
2196         * io/tst-statvfs.c: New file.
2198         * include/dlfcn.h (__RTLD_OPENEXEC): Define.
2199         * elf/dl-load.c (_dl_map_object_from_fd): Don't allow loading
2200         executables unless __RTLD_OPENEXEC flag is present.
2201         * elf/rtld.c (dl_main): Pass __RTLD_OPENEXEC flag to
2202         _dl_map_object when loading the executable.
2204         * sysdeps/generic/glob.c (glob): Handle GLOB_BRACE and escaping
2205         correctly.
2206         * posix/globtest.sh: Add tests for GLOB_BRACE and escaping.
2208         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Default
2209         reverse lookup format for IPv6 addresses is using bitstring and
2210         .ip6.arpa suffix.
2211         * resolv/ns_name.c: Implement encoding and decoding bitstring in
2212         hex format.
2214 2003-10-23  Jakub Jelinek  <jakub@redhat.com>
2216         * locale/programs/locale.c (show_info): Fix printing word values on
2217         64-bit big-endian architectures.
2219 2003-10-19  Bruno Haible  <bruno@clisp.org>
2221         * intl/hash-string.c (hash_string): Zero-extend each char from the
2222         string; the old code did a sign-extend on some platforms.
2224 2003-10-22  Steven Munroe  <sjmunroe@us.ibm.com>
2226         * sysdeps/powerpc/powerpc32/Makefile (+cflags, asm-CPPFLAGS): Don't
2227         append options to these.
2228         * sysdeps/powerpc/powerpc64/Makefile (+cflags, asm-CPPFLAGS): Likewise.
2230 2003-10-18  Carlos O'Donell  <carlos@baldric.uwo.ca>
2232         * sysdeps/unix/sysv/linux/hppa/sysdep.h: Fix merge error.
2234 2003-10-15  Roland McGrath  <roland@redhat.com>
2236         * elf/dl-iteratephdr.c [! SHARED] (dl_iterate_phdr): New function.
2237         Fake an entry for the main executable and then call __dl_iterate_phdr.
2238         * elf/Makefile (routines): Remove dl-iteratephdr-static.
2239         (elide-routines.os): Likewise.
2240         (CFLAGS-dl-iterate-phdr-static.c): Variable removed.
2241         * sysdeps/generic/dl-iteratephdr-static.c: File removed.
2242         * sysdeps/unix/sysv/linux/ia64/dl-iteratephdr-static.c: File removed.
2244 2003-10-15  Jakub Jelinek  <jakub@redhat.com>
2246         * elf/rtld.c (print_statistics): Print also number of relative
2247         relocations.
2249 2003-10-12  Carlos O'Donell  <carlos@baldric.uwo.ca>
2251         * sysdeps/hppa/sysdep.h: Undef JUMPTARGET before use.
2252         * sysdeps/unix/sysv/linux/hppa/sysdep.h: Define PSEUDO_ERRVAL,
2253         SYSCALL_ERROR_LABEL under all conditions, INTERNAL_SYSCALL_DECL,
2254         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO, INTERNAL_SYSCALL,
2255         and undef JUMPTARGET before use.
2256         [PIC]: Save pic register around syscall.
2257         * sysdeps/unix/sysv/linux/hppa/sysdep.c (syscall):
2258         Cleanup asm statment.
2260 2003-10-13  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
2262         * sysdeps/unix/sysv/linux/sh/sysdep.h (DO_CALL): Add SYSCALL_INST_PAD
2263         after trapa instruction.
2265 2003-10-09  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
2267         * sysdeps/unix/sysv/linux/sh/syscalls.list: Add waitpid.
2269 2003-10-10  Carlos O'Donell  <carlos@baldric.uwo.ca>
2271         * sysdeps/hppa/Makefile (CFLAGS-malloc.c): Variable removed.
2273 2003-10-09  Roland McGrath  <roland@redhat.com>
2275         * elf/rtld.c (dl_main): Don't set l_name for sysinfo DSO, since there
2276         is no file to name.
2278 2003-10-08  Jakub Jelinek  <jakub@redhat.com>
2280         * sysdeps/generic/dl-sysdep.c (_dl_important_hwcaps): Don't generate
2281         two identical copies of strings.
2283 2003-10-06  Ulrich Drepper  <drepper@redhat.com>
2285         * posix/bug-regex11.c: Add some more tests which fail so far.
2286         Disable them.  Patch by Paolo Bonzini <bonzini@gnu.org>.
2288 2003-10-05  Paolo Bonzini  <bonzini@gnu.org>
2290         * posix/bug-regex11.c: Add more backreference-related test cases.
2291         (main): Show the failing regex in the error messages.
2292         * posix/regexec.c (check_dst_limits_calc_pos):
2293         Simplify some nested conditionals.  Replace if's with a switch
2294         statement.
2295         (check_dst_limits_calc_pos <TYPE_BKREF>): Rename parameter NODE to
2296         FROM_NODE, it shadows a local variable; don't recurse if FROM_NODE
2297         does not change in the recursive invocation, fixing an infinite loop
2298         in the ()\1*\1* regex.
2299         (sift_states_backward): Fix function comment.
2300         * posix/regcomp.c (calc_epsdest): Add an assertion.
2302 2003-10-06  Ulrich Drepper  <drepper@redhat.com>
2304         * manual/examples/testopt.c: Fix warnings.  Better error message
2305         for missing -c argument.
2306         Patch mostly by Gitonga Marete <bgmarete@comcast.net>.
2308         * timezone/asia: Update from tzdata2003d.
2309         * timezone/australasia: Likewise.
2310         * timezone/backward: Likewise.
2311         * timezone/europe: Likewise.
2312         * timezone/iso3166.tab: Likewise.
2313         * timezone/northamerica: Likewise.
2314         * timezone/southamerica: Likewise.
2315         * timezone/zone.tab: Likewise.
2317 2003-10-05  Jakub Jelinek  <jakub@redhat.com>
2319         * sysdeps/ia64/backtrace.c: New file.
2320         * sysdeps/x86_64/backtrace.c: New file.
2321         * sysdeps/generic/unwind.h (_Unwind_Trace_Fn): New type.
2322         (_Unwind_Backtrace): New prototype.
2324 2003-10-03  Ulrich Drepper  <drepper@redhat.com>
2326         * sysdeps/i386/elf/bsd-setjmp.S: Use linkonce section for PIC stub.
2327         * sysdeps/i386/elf/setjmp.S: Likewise.
2329 2003-10-02  Roland McGrath  <roland@redhat.com>
2331         * argp/argp-help.c (__argp_short_program_name): Move inside [! _LIBC].
2332         * argp/argp-namefrob.h
2333         [_LIBC || HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME]
2334         (__argp_short_program_name): Don't declare fn, define it as a macro.
2336 2003-08-22  Simon Josefsson  <jas@extundo.com>
2338         * argp/argp-fmtstream.h [!__attribute__]: Define to nothing.
2340         * argp/argp-help.c: Don't include malloc.h, some platforms
2341         complain and it doesn't appear to be used.
2342         [!_LIBC && HAVE_STRERROR_R && !HAVE_DECL_STRERROR_R]: Declare
2343         strerror_r.
2344         [!_LIBC && !HAVE_STRERROR_R && !HAVE_DECL_STRERROR]: Declare
2345         strerror.
2346         (hol_entry_long_iterate): Change __attribute to __attribute__.
2347         (_help, __argp_error, __argp_failure) [!_LIBC && (HAVE_FLOCKFILE
2348         && HAVE_FUNLOCKFILE)]: Protect call to flockfile and funlockfile.
2349         (__argp_basename) [!_LIBC]: New. Taken from LSH, by Niels Möller,
2350         modified after comments from Ulrich Drepper.
2351         (__argp_short_program_name): Ditto.
2352         (__argp_state_help, __argp_error, __argp_failure): Use it.
2353         (__argp_failure): Use strerror when necessary.
2355         * argp/argp-namefrob.h (__flockfile, __funlockfile, __mempcpy)
2356         (__strchrnul, __strerror_r, __strndup) [!_LIBC]: Remove __-prefix.
2357         (clearerr_unlocked, feof_unlocked, ferror_unlocked)
2358         (fflush_unlocked, fgets_unlocked, fputc_unlocked, fputs_unlocked)
2359         (fread_unlocked, fwrite_unlocked, getc_unlocked, getchar_unlocked)
2360         (putc_unlocked, putchar_unlocked) [!_LIBC && !HAVE_DECL_*]: Map to
2361         non-unlocked functions.
2362         [!_LIBC]: Add prototypes for __argp_basename and
2363         __argp_short_program_name.
2365         * argp/argp-parse.c (argp_default_parser): Only use
2366         program_invocation{_short,}_name if declared.
2367         (parser_init): Use __argp_short_program_name.
2369         * argp/argp-xinl.c [_LIBC || HAVE_FEATURES_H]: Add CPP check for
2370         '#include features.h'.
2372         * argp/argp.h [!__attribute__]: Define to nothing.
2374 2003-09-26  Paolo Bonzini  <bonzini@gnu.org>
2376         * posix/regcomp.c (parse_sub_exp): Pass RE_CARET_ANCHORS_HERE
2377         for the first token in a subexpression as well.
2379 2003-10-02  Jakub Jelinek  <jakub@redhat.com>
2381         * posix/regcomp.c (peek_token): Add 2003-09-20 changes for anchor
2382         handling again.
2383         (parse_reg_exp): Likewise.
2384         * posix/regex.h (RE_CARET_ANCHORS_HERE): Define.
2386         * posix/bug-regex11.c (tests): Add new tests.
2387         * posix/bug-regex12.c (tests): Add new test.
2389 2003-10-01  Thorsten Kukuk  <kukuk@suse.de>
2391         * elf/dl-reloc.c (_dl_allocate_static_tls): Move definition of
2392         variables only used if TLS_DTV_AT_TP is defined into the #if branch.
2394 2003-10-02  Jeroen Dekkers  <jeroen@dekkers.cx>
2396         * sysdeps/mach/hurd/malloc-machine.h: Copy the tsd code from
2397         the old thread-m.h header too.
2399 2003-10-02  Ulrich Drepper  <drepper@redhat.com>
2401         * sysdeps/unix/sysv/linux/ia64/bits/sigstack.h (MINSIGSTKSZ): Go
2402         back to 131027 since this is what the kernel enforces.
2404         * inet/getnameinfo.c: Move domain out of nrl_domainname scope and
2405         define it with libc_freeres_ptr.
2407 2003-10-01  Roland McGrath  <roland@redhat.com>
2409         * elf/rtld.c (dl_main): Add cast in last change.
2411 2003-09-10  Chris Demetriou  <cgd@broadcom.com>
2413         * sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h: Remove
2414         "#if 0" surrounding most of contents.
2415         (SYSCALL_ERROR_LABEL): Define.
2416         (__SYSCALL_CLOBBERS): Add $10.
2417         (internal_syscall7): Remove.
2418         * sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h: Likewise.
2420 2003-09-30  Ulrich Drepper  <drepper@redhat.com>
2422         * elf/rtld.c (dl_main): Also set l_map_start.
2424 2003-09-30  Daniel Jacobowitz  <drow@mvista.com>
2426         * elf/rtld.c (dl_main): Set l_libname and l_name for the sysinfo DSO
2427         to work around kernel problem.
2429 2003-09-27  Wolfram Gloger  <wg@malloc.de>
2431         * malloc/malloc.c: Include <malloc-machine.h> earlier instead of
2432         "thread-m.h", so that default parameters can be overridden in a
2433         system-specific malloc-machine.h.  Remove extra ; from extern "C"
2434         closing brace.
2435         * sysdeps/generic/malloc-machine.h: New file.
2436         * sysdeps/mach/hurd/malloc-machine.h: New file.
2437         * malloc/thread-m.h: Removed.
2438         * malloc/Makefile: Remove CFLAGS-malloc.c parameter addition, it
2439         is in sysdeps/generic/malloc-machine.h now.
2441 2003-09-29  Ulrich Drepper  <drepper@redhat.com>
2443         * elf/dl-reloc.c (_dl_allocate_static_tls): Move definition of
2444         variables only used if TLS_TCB_AT_TP is defined into the #if
2445         branch.
2447         * sysdeps/unix/sysv/linux/sys/sysmacros.h: Add __extension__ as
2448         well to cover using long long in C90.
2450 2003-09-28  Alfred M. Szmidt  <ams@kemisten.nu>
2452         * sysdeps/mach/hurd/bits/libc-lock.h (__libc_cleanup_pop):
2453         Redefine and use __libc_cleanup_region_end instead.
2455 2003-09-29  Thorsten Kukuk  <kukuk@suse.de>
2457         * sysdeps/unix/sysv/linux/sys/sysmacros.h: Use __inline and
2458         fix prototypes for picky C++ compilers.
2460 2003-09-27  Ulrich Drepper  <drepper@redhat.com>
2462         * sysdeps/unix/sysv/linux/ustat.c (ustat): Set errno to EINVAL if
2463         the device ID is invalid and return -1.
2464         * sysdeps/unix/sysv/linux/xmknod.c (__xmknod): Likewise.
2466 2003-09-26  Andreas Schwab  <schwab@suse.de>
2468         * sysdeps/unix/sysv/linux/ia64/getcontext.S: Pass fourth argument to
2469         rt_sigprocmask system call.
2471 2003-09-25  Roland McGrath  <roland@redhat.com>
2473         * sysdeps/unix/sysv/linux/dl-execstack.c (_dl_make_stack_executable):
2474         Don't check for zero __libc_stack_end, it should be initialized.
2475         [_STACK_GROWS_DOWN] [PROT_GROWSDOWN]: Try using PROT_GROWSDOWN flag
2476         and fall back if it fails with EINVAL.
2477         [_STACK_GROWS_UP] [PROT_GROWSUP]: Likewise for PROT_GROWSUP.
2479 2003-09-25  Jakub Jelinek  <jakub@redhat.com>
2481         * sysdeps/unix/sysv/linux/x86_64/dl-procinfo.c: Include
2482         sysdeps/i386/dl-procinfo.c instead of
2483         sysdeps/unix/sysv/linux/i386/dl-procinfo.c.
2484         * sysdeps/unix/sysv/linux/i386/dl-procinfo.h: Avoid using
2485         #include_next.
2487 2003-09-25  Ulrich Drepper  <drepper@redhat.com>
2489         * posix/regcomp.c (peek_token): Remove recent changes for anchor
2490         handling again.
2491         (parse_reg_exp): Likewise.
2492         * posix/regex.h: Remove RE_CARET_ANCHORS_HERE.
2494         * csu/Makefile ($(objpfx)version-info.h): Fix sed script to handle
2495         banners.
2497         * nis/nis_table.c (nis_list): Always strdup string used with
2498         ibreq->ibr_name.  Add several NULL pointer checks.
2500         * nis/nss_nisplus/nisplus-alias.c: Add check for NULL return value
2501         of nis_list.
2502         * nis/nss_nisplus/nisplus-ethers.c: Likewise.
2503         * nis/nss_nisplus/nisplus-grp.c: Likewise.
2504         * nis/nss_nisplus/nisplus-hosts.c: Likewise.
2505         * nis/nss_nisplus/nisplus-netgrp.c: Likewise.
2506         * nis/nss_nisplus/nisplus-network.c: Likewise.
2507         * nis/nss_nisplus/nisplus-proto.c: Likewise.
2508         * nis/nss_nisplus/nisplus-publickey.c: Likewise.
2509         * nis/nss_nisplus/nisplus-pwd.c: Likewise.
2510         * nis/nss_nisplus/nisplus-rpc.c: Likewise.
2511         * nis/nss_nisplus/nisplus-service.c: Likewise.
2512         * nis/nss_nisplus/nisplus-spwd.c: Likewise.
2514         * sysdeps/unix/sysv/linux/alpha/bits/mman.h: Define PROT_GROWSDOWN
2515         and PROT_GROWSUP.
2516         * sysdeps/unix/sysv/linux/arm/bits/mman.h: Likewise.
2517         * sysdeps/unix/sysv/linux/cris/bits/mman.h: Likewise.
2518         * sysdeps/unix/sysv/linux/hppa/bits/mman.h: Likewise.
2519         * sysdeps/unix/sysv/linux/i386/bits/mman.h: Likewise.
2520         * sysdeps/unix/sysv/linux/ia64/bits/mman.h: Likewise.
2521         * sysdeps/unix/sysv/linux/m68k/bits/mman.h: Likewise.
2522         * sysdeps/unix/sysv/linux/powerpc/bits/mman.h: Likewise.
2523         * sysdeps/unix/sysv/linux/s390/bits/mman.h: Likewise.
2524         * sysdeps/unix/sysv/linux/sh/bits/mman.h: Likewise.
2525         * sysdeps/unix/sysv/linux/sparc/bits/mman.h: Likewise.
2526         * sysdeps/unix/sysv/linux/x86_64/bits/mman.h: Likewise.
2528 2003-09-25  Jakub Jelinek  <jakub@redhat.com>
2530         * misc/syslog.c: Include locale.h.
2531         (vsyslog): Add date always in C locale %h %e %T format.
2533 2003-09-24  Paul Eggert  <eggert@twinsun.com>
2535         * argp/argp-fmtstream.c (__argp_fmtstream_ensure): Check for
2536         size_t overflow when reallocating storage.
2537         * argp/argp-help.c (make_hol, hol_append): Likewise.
2538         (SIZE_MAX): New macro.
2540 2003-08-07  Alfred M. Szmidt  <ams@kemisten.nu>
2542         * sysdeps/mach/hurd/bits/libc-lock.h
2543         (__libc_cleanup_push, __libc_cleanup_pop): New macros.
2545 2003-08-01  Alfred M. Szmidt  <ams@kemisten.nu>
2547         * sysdeps/i386/dl-procinfo.h: New file, contents taken from ...
2548         * sysdeps/unix/sysv/linux/i386/dl-procinfo.h: ... here.
2549         #include_next dl-procinfo.h to get them.
2550         (_DL_HWCAP_COUNT): Moved to sysdeps/i386/dl-procinfo.h.
2551         (_DL_PLATFORMS_COUNT): Likewise.
2552         (_DL_FIRST_PLATFORM): Likewise.
2553         (_DL_HWCAP_PLATFORM): Likewise.
2554         (HWCAP_I386_FPU, HWCAP_I386_VME, HWCAP_I386_DE, HWCAP_I386_PSE,
2555         HWCAP_I386_TSC, HWCAP_I386_MSR, HWCAP_I386_PAE, HWCAP_I386_MCE,
2556         HWCAP_I386_CX8, HWCAP_I386_APIC, HWCAP_I386_SEP, HWCAP_I386_MTRR,
2557         HWCAP_I386_PGE, HWCAP_I386_MCA, HWCAP_I386_CMOV,
2558         HWCAP_I386_FCMOV, HWCAP_I386_MMX, HWCAP_I386_OSFXSR,
2559         HWCAP_I386_XMM, HWCAP_I386_XMM2, HWCAP_I386_AMD3D,
2560         HWCAP_IMPORTANT): Likewise.
2561         (_DL_PROCINFO_H_): Likewise.
2562         (_dl_hwcap_string, _dl_platform_string, _dl_string_hwcap): Likewise.
2563         (_dl_string_platform): Likewise.
2564         * sysdeps/unix/sysv/linux/i386/dl-procinfo.c: Moved to ...
2565         * sysdeps/i386/dl-procinfo.c: ... here, new file.
2567 2003-09-24  Ulrich Drepper  <drepper@redhat.com>
2569         * sysdeps/unix/sysv/linux/dl-execstack.c
2570         (_dl_make_stack_executable): Remember that we changed the permission.
2572         * sysdeps/ia64/dl-machine.h (RTLD_START): Remove setting of
2573         __libc_stack_end.  Patch by David Mosberger.
2575 2003-09-24  Jakub Jelinek  <jakub@redhat.com>
2577         * elf/Versions (ld): Export __libc_stack_end@GLIBC_2.1 instead of
2578         __libc_stack_end@GLIBC_PRIVATE.
2580         * sysdeps/generic/dl-sysdep.c (DL_STACK_END): Define if not defined.
2581         (_dl_sysdep_start): Set __libc_stack_end here.
2582         * sysdeps/alpha/dl-machine.h (RTLD_START): Remove setting of
2583         __libc_stack_end.
2584         * sysdeps/arm/dl-machine.h (RTLD_START): Likewise.
2585         * sysdeps/cris/dl-machine.h (RTLD_START): Likewise.
2586         * sysdeps/i386/dl-machine.h (RTLD_START): Likewise.
2587         * sysdeps/m68k/dl-machine.h (RTLD_START): Likewise.
2588         * sysdeps/s390/s390-32/dl-machine.h (RTLD_START): Likewise.
2589         * sysdeps/s390/s390-64/dl-machine.h (RTLD_START): Likewise.
2590         * sysdeps/sh/dl-machine.h (RTLD_START): Likewise.
2591         * sysdeps/x86_64/dl-machine.h (RTLD_START): Likewise.
2592         * sysdeps/ia64/dl-machine.h (DL_STACK_END): Define.
2593         * sysdeps/sparc/sparc32/dl-machine.h (DL_STACK_END): Define.
2594         (RTLD_START): Remove setting of __libc_stack_end.
2595         * sysdeps/sparc/sparc64/dl-machine.h (DL_STACK_END): Define.
2596         (RTLD_START): Remove setting of __libc_stack_end.
2598 2003-09-24  Ulrich Drepper  <drepper@redhat.com>
2600         * sysdeps/unix/sysv/linux/sys/sysmacros.h: Add gnu_dev_ prefix to
2601         function definitions.  Adjust macro expansions accordingly.
2602         * sysdeps/unix/sysv/linux/Versions: Add gnu_dev_ prefix to major,
2603         minor, makedev name.
2604         * sysdeps/unix/sysv/linux/makedev.c: Likewise.
2606 2003-09-24  Jakub Jelinek  <jakub@redhat.com>
2608         * sysdeps/unix/sysv/linux/sys/sysmacros.h (major, minor, makedev):
2609         Add __THROW.
2611 2003-09-24  Jakub Jelinek  <jakub@redhat.com>
2613         * nscd/Makefile (others): Add nscd before including ../Rules.
2615 2003-09-24  Ulrich Drepper  <drepper@redhat.com>
2617         * nscd/Makefile: Add rules to build nscd as a PIE.
2618         * configure.in: Check for -fpie and -pie compiler options.
2619         * config.make.in (have-fpie): Define.
2621 2003-09-23  Ulrich Drepper  <drepper@redhat.com>
2623         * sysdeps/unix/sysv/linux/sys/sysmacros.h: Adjust for larger
2624         kernel dev_t size.
2625         * sysdeps/unix/sysv/linux/alpha/sys/sysmacros.h: Removed.
2626         * sysdeps/unix/sysv/linux/sparc/sys/sysmacros.h: Removed.
2627         * sysdeps/unix/sysv/linux/makedev.c: New file.
2628         * sysdeps/unix/sysv/linux/Dist: Add makedev.c.
2629         * sysdeps/unix/sysv/linux/Makefile [subdir=misc]
2630         (sysdep_routines): Add makedev.
2631         * sysdeps/unix/sysv/linux/Versions [libc] (GLIBC_2.3.3): Add
2632         major, minor, makedev.
2633         * sysdeps/unix/sysv/linux/ustat.c (ustat): Adjust for 32-bit
2634         kernel dev_t.
2635         * sysdeps/unix/sysv/linux/alpha/ustat.c: Removed.
2636         * sysdeps/unix/sysv/linux/xmknod.c (__xmknod): Likewise.
2637         * sysdeps/unix/sysv/linux/alpha/xmknod.c: Removed.
2638         Code by Alexander Viro <aviro@redhat.com>.
2640 2003-09-23  Ulrich Drepper  <drepper@redhat.com>
2642         * sysdeps/unix/sysv/linux/powerpc/powerpc32/Versions [libc]
2643         (GLIBC_2.3.3): Add setcontext, getcontext, swapcontext, and
2644         makecontext.
2645         * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: Correct change
2646         for include Altivec support for PPC32.  It was not compatible.
2647         * sysdeps/unix/sysv/linux/powerpc/powerpc32/ucontext_i.h: Adjust
2648         offsets for ucontext_t change.
2649         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Adjust
2650         for ucontext_t change.  Add compatibility code.
2651         * sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S: Likewise.
2652         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Likewise.
2653         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Likewise.
2654         Patch by Paul Mackerras <paulus@samba.org>.
2656 2003-02-25  Randolph Chung  <tausq@debian.org>
2658         * sysdeps/hppa/Makefile: Include compat code in build.
2659         * sysdeps/hppa/libgcc-compat.c: New file.
2660         * sysdeps/hppa/Dist: Add libgcc-compat.c.
2661         * sysdeps/hppa/Versions [GLIBC_2.2]: Add __clz_tab.
2663 2003-09-23  Roland McGrath  <roland@redhat.com>
2665         * elf/rtld.c (dl_main): In rtld_is_main case, reinitialize
2666         GL(dl_stack_flags) according to rtld's own PT_GNU_STACK.
2667         Move GL(dl_make_stack_executable_hook) initialization up.
2668         * elf/tst-execstack-prog.c: New file.
2669         * elf/Makefile (tests-execstack-yes): Add it.
2670         (LDFLAGS-tst-execstack-prog): New variable.
2672 2003-09-23  Jakub Jelinek  <jakub@redhat.com>
2674         * sysdeps/x86_64/dl-machine.h (RTLD_START): Set __libc_stack_end
2675         before calling _dl_start, using %rip relative access.
2676         Use %rip relative access to _dl_skip_args, _rtld_local._dl_loaded
2677         and _dl_fini.
2679 2003-09-23  Roland McGrath  <roland@redhat.com>
2681         * sysdeps/i386/dl-machine.h (RTLD_START): Set __libc_stack_end before
2682         calling _dl_start, using GOTOFF access.
2684         * configure.in (libc_cv_z_execstack): New check.
2685         * configure: Regenerated.
2686         * config.make.in (have-z-execstack): New variable set by it.
2687         * elf/tst-execstack.c: New file.
2688         * elf/tst-execstack-mod.c: New file.
2689         * elf/tst-execstack-needed.c: New file.
2690         * elf/Makefile (tests-execstack-yes, modules-execstack-yes): New
2691         variables.
2692         (tests, modules-names): Conditionally include them.
2693         (distribute): Add tst-execstack-mod.c here.
2694         ($(objpfx)tst-execstack, $(objpfx)tst-execstack.out): New targets.
2695         (LDFLAGS-tst-execstack, LDFLAGS-tst-execstack-mod): New variables.
2696         ($(objpfx)tst-execstack-needed): New target.
2697         (LDFLAGS-tst-execstack-needed): New variable.
2699         * sysdeps/generic/ldsodefs.h (struct rtld_global): Add _dl_stack_flags
2700         and _dl_make_stack_executable_hook.  Declare _dl_make_stack_executable.
2701         * elf/rtld.c (_rtld_global): Add initializer for _dl_stack_flags.
2702         (dl_main): Reset _dl_stack_flags according to PT_GNU_STACK phdr.
2703         Initialize _dl_make_stack_executable_hook.
2704         * elf/dl-support.c: Define those new variables.
2705         (_dl_non_dynamic_init): Scan phdrs for PT_GNU_STACK.
2706         (_dl_phdr): Fix type.
2707         * elf/dl-load.c (_dl_map_object_from_fd): Grok PT_GNU_STACK phdr and
2708         enable execute permission for the stack if necessary.
2709         * sysdeps/generic/dl-execstack.c: New file.
2710         * elf/Makefile (dl-routines): Add it.
2711         * elf/Versions (ld: GLIBC_PRIVATE): Add _dl_make_stack_executable.
2712         * sysdeps/unix/sysv/linux/dl-execstack.c: New file.
2714 2003-09-23  Ulrich Drepper  <drepper@redhat.com>
2716         * sysdeps/posix/sprofil.c (pc_to_index): Remove inline marker.
2718 2003-09-20  Alfred M. Szmidt  <ams@kemisten.nu>
2720         * sysdeps/generic/utmp_file.c (setutent_file, LOCK_FILE,
2721         UNLOCK_FILE, setutent_file): Use fcntl_not_cancel instead of
2722         __fcntl_nocancel.
2724 2003-09-22  Ulrich Drepper  <drepper@redhat.com>
2726         * malloc/malloc.c: Include <stdint.h>.
2728 2003-09-20  Paolo Bonzini  <bonzini@gnu.org>
2730         * posix/regcomp.c (build_word_op): Rename like...
2731         (build_charclass_op): ...this.  Accept two extra parameters,
2732         CLASS_NAME and EXTRA.  Add EXTRA to the result, not only _.
2733         (peek_token): Accept \s and \S as OP_SPACE and OP_NOTSPACE.
2734         (parse_expression): Replace build_word_op with
2735         build_charclass_op, add new arguments, accept OP_SPACE
2736         and OP_NOTSPACE.
2737         * posix/regex_internal.h (re_token_type_t): Add OP_SPACE
2738         and OP_NOTSPACE.
2740         * posix/regcomp.c (peek_token): Don't look back for ( or |
2741         to check whether to treat a caret as special.  It fails
2742         for the (extended) regex \(^.
2743         (parse, parse_reg_exp): Pass RE_CARET_ANCHORS_HERE to fetch_token.
2744         * posix/regex.h: Define RE_CARET_ANCHORS_HERE.
2746         * posix/regexec.c: Check out of bounds value before shifting.
2748         * posix/regex_internal.h: Define __attribute for non-gcc.
2750 2003-09-22  Jakub Jelinek  <jakub@redhat.com>
2752         * include/atomic.h (atomic_compare_and_exchange_val_rel,
2753         atomic_compare_and_exchange_bool_rel): Swap oldval/newval arguments
2754         to avoid confusion.
2756         * sysdeps/unix/opendir.c: Include string.h.
2758 2003-09-22  Ulrich Drepper  <drepper@redhat.com>
2760         * timezone/zdump.c: Update from tzcode2003c.
2761         * timezone/zic.c: Likewise.
2762         * timezone/leapseconds: Update from tzdata2003c.
2764 2003-09-19  Ulrich Drepper  <drepper@redhat.com>
2766         * elf/Makefile ($(objpfx)librtld.os): Create link map also for
2767         final build to ease quality control.
2769         * sysdeps/unix/sysv/linux/getcwd.c (__getcwd): If compiled for
2770         ld.so, don't include NULL buffer pointer handling.
2772 2003-09-19  Jakub Jelinek  <jakub@redhat.com>
2774         * dlfcn/dlopen.c (dlopen): Add static_link_warning.
2776 2003-09-18  Jakub Jelinek  <jakub@redhat.com>
2778         * libio/memstream.c (open_memstream): Use _IO_init instead of
2779         _IO_old_init.
2781 2003-09-17  Ulrich Drepper  <drepper@redhat.com>
2783         * sysdeps/generic/wordexp.c (eval_expr_val): Use strtol since we
2784         have to recognize octal and hexadecimal numbers as well.  Simplify
2785         function, signs are handled in strtol.
2786         * posix/wordexp-test.c: Add tests for octal and hexadecimal
2787         numbers in arithmetic expressions.
2789 2003-09-17  Jakub Jelinek  <jakub@redhat.com>
2791         * elf/Makefile (distribute): Add tst-alignmod.c.
2792         (tests): Add tst-align.
2793         (modules-names): Add tst-alignmod.
2794         (CFLAGS-tst-align.c, CFLAGS-tst-alignmod.c): Add
2795         $(stack-align-test-flags).
2796         ($(objpfx)tst-align): Depend on libdl.
2797         ($(objpfx)tst-align.out): Depend on tst-alignmod.so.
2798         * elf/tst-align.c: New file.
2799         * elf/tst-alignmod.c: New file.
2800         * misc/Makefile (CFLAGS-tst-tsearch.c): Add $(stack-align-test-flags).
2801         * misc/tst-tsearch.c: Include tst-stack-align.h.
2802         (stack_align_check): New array.
2803         (cmp_fn, walk_action): Use TEST_STACK_ALIGN ().
2804         (main): Report error if stack was not enough aligned
2805         in cmp_fn or walk_action.
2806         * stdlib/Makefile (CFLAGS-tst-qsort.c): Add $(stack-align-test-flags).
2807         * stdlib/tst-qsort.c: Include tst-stack-align.h.
2808         (align_check): New var.
2809         (compare): Use TEST_STACK_ALIGN () macro.
2810         (main): Report error if stack was not enough aligned in compare.
2811         * sysdeps/i386/i686/Makefile (stack-align-test-flags): Remove
2812         unneeded -mpreferred-stack-boundary=4.
2813         * sysdeps/x86_64/tst-stack-align.h: New file.
2815         * libio/memstream.c (_IO_wmem_jumps): Remove unused structure.
2816         (_IO_wmem_sync, _IO_wmem_finish): Remove unused functions.
2818 2003-09-17  Philip Blundell  <philb@gnu.org>
2820         * sysdeps/arm/dl-machine.h (CALL_ROUTINE): Deleted.
2821         (BX): Define.
2822         (ELF_MACHINE_RUNTIME_TRAMPOLINE): Optimise a little.
2824         * sysdeps/arm/sysdep.h (DO_RET): New.
2826         * sysdeps/unix/sysv/linux/arm/vfork.S: Add #error if __NR_vfork
2827         required but not defined.  Improve test of error code.
2829 2003-09-17  Jakub Jelinek  <jakub@redhat.com>
2831         * sysdeps/i386/Makefile (stack-align-test-flags): Add
2832         -malign-double -mpreferred-stack-boundary=4.
2834 2003-09-17  Ulrich Drepper  <drepper@redhat.com>
2836         * sysdeps/posix/utimes.c (__utimes): Truncate instead of round.
2837         * sysdeps/unix/sysv/linux/utimes.c (__utimes): Likewise.
2839 2003-09-15  Jakub Jelinek  <jakub@redhat.com>
2841         * sysdeps/i386/Makefile (sysdep-CFLAGS): If not in math or csu
2842         subdir, add -mpreferred-stack-boundary=4, with few exceptions.
2844 2003-09-17  Jakub Jelinek  <jakub@redhat.com>
2846         * Makeconfig (stack-align-test-flags): Set.
2847         * stdlib/Makefile (CFLAGS-tst-bsearch.c): Add
2848         $(stack-align-test-flags).
2849         * stdlib/tst-bsearch.c: Include tst-stack-align.h.
2850         (align_check): New var.
2851         (comp): Use TEST_STACK_ALIGN macro.
2852         (do_test): Fail if align_check != 1.
2853         * sysdeps/generic/tst-stack-align.h: New file.
2854         * sysdeps/i386/i686/Makefile (stack-align-test-flags): Add -msse.
2855         * sysdeps/i386/i686/tst-stack-align.h: New file.
2857 2003-09-17  Ulrich Drepper  <drepper@redhat.com>
2859         * sysdeps/unix/sysv/linux/i386/clone.S: Make sure child gets a
2860         stack which is aligned (mod 16).
2862 2003-09-17  Uwe Reimann  <Uwe_Reimann@gmx.net>
2863             Hans-Peter Nilsson  <hp@axis.com>
2865         * sysdeps/cris/dl-machine.h (elf_machine_type_class): Classify
2866         R_CRIS_GLOB_DAT as ELF_RTYPE_CLASS_PLT.  Clarify comment.
2868 2003-09-17  Jakub Jelinek  <jakub@redhat.com>
2870         * dirent/scandir.c: Include bits/libc-lock.h.
2871         (struct scandir_cancel_struct): New type.
2872         (cancel_handler): New function.
2873         (SCANDIR): Add __libc_cleanup_{push,pop}, save state into
2874         scandir_cancel_struct.
2876 2003-09-16  Ulrich Drepper  <drepper@redhat.com>
2878         * sysdeps/unix/sysv/linux/Dist: Remove internal_statvfs.c.
2879         * sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines):
2880         Add internal_statvfs.
2881         * sysdeps/unix/sysv/linux/fstatvfs.c: Call __internal_statvfs
2882         instead of including "internal_statvfs.c".
2883         * sysdeps/unix/sysv/linux/statvfs.c: Likewise.
2884         * sysdeps/unix/sysv/linux/internal_statvfs.c: Make it a real function.
2885         Add code to avoid the stat calls on all the reported mount points
2886         when we can determine mismatch in advance.
2887         * sysdeps/unix/sysv/linux/linux_fsinfo.h: Add AUTOFS_SUPER_MAGIC and
2888         USBDEVFS_SUPER_MAGIC.
2890 2003-09-16  Jakub Jelinek  <jakub@redhat.com>
2892         * posix/Versions (sched_getaffinity, sched_setaffinity): Change
2893         from GLIBC_2.3.2 to GLIBC_2.3.3 symbol version.
2895 2003-09-16  Bruno Haible  <bruno@clisp.org>
2897         * intl/tst-gettext2.sh: Set GCONV_PATH and LOCPATH only after
2898         invoking msgfmt, not before.
2900 2003-09-15  Jakub Jelinek  <jakub@redhat.com>
2902         * argp/argp.h (argp_parse, __argp_parse): Remove __THROW.
2903         * argp/Makefile (CFLAGS-argp-help.c, CFLAGS-argp-parse.c): Add
2904         $(uses-callbacks).
2905         * dirent/Makefile (CFLAGS-scandir.c, CFLAGS-scandir64.c): Likewise.
2906         * elf/Makefile (CFLAGS-dl-iterate-phdr.c,
2907         CFLAGS-dl-iterate-phdr-static.c): Add $(uses-callbacks).
2908         * elf/dl-iteratephdr.c (cancel_handler): New function.
2909         (__dl_iterate_phdr): Add __libc_cleanup_{push,pop}.
2910         * elf/link.h (dl_iterate_phdr): Remove __THROW.
2911         * io/Makefile (CFLAGS-fts.c): Merge into one assignment.
2912         Add $(uses-callbacks).
2913         (CFLAGS-ftw.c, CFLAGS-ftw64.c): Add $(uses-callbacks).
2914         * misc/Makefile (CFLAGS-tsearch.c, CFLAGS-lsearch.c): Change
2915         $(exceptions) to $(uses-callbacks).
2916         * Makeconfig (uses-callbacks): Set to $(exceptions).
2917         * posix/Makefile (CFLAGS-glob.c, CFLAGS-glob64.c): Add
2918         $(uses-callbacks).
2919         * stdlib/Makefile (CFLAGS-bsearch.c, CFLAGS-msort.c, CFLAGS-qsort.c):
2920         Likewise.
2922 2003-09-15  Andreas Schwab  <schwab@suse.de>
2924         * sysdeps/m68k/setjmp.c: Add hidden_def.
2926 2003-09-14  Ulrich Drepper  <drepper@redhat.com>
2928         * libio/memstream.c (open_memstream): Don't allow wide char operations.
2930         * dirent/dirent.h: Remove __THROW from scandir.
2932 2003-09-14  Philip Blundell  <philb@gnu.org>
2934         * sysdeps/unix/sysv/linux/arm/mmap.S: Use sys_mmap2 if it's known
2935         to be available.
2937         * sysdeps/unix/sysv/linux/arm/mmap64.S: Optimise code a little.
2939         * sysdeps/arm/memset.S: Rewrite.
2941 2003-09-12  Jakub Jelinek  <jakub@redhat.com>
2943         * sysdeps/unix/sysv/linux/s390/bits/typesizes.h: New.
2944         (__SSIZE_T_TYPE): Define to __SWORD_TYPE for gcc 2.95.x and
2945         __SLONGWORD_TYPE otherwise.
2947 2003-09-14  Ulrich Drepper  <drepper@redhat.com>
2949         * io/Makefile (CFLAGS-ftw.c): Add -fexceptions.
2950         (CFLAGS-ftw64.c): Likewise.
2952 2003-09-13  Ulrich Drepper  <drepper@redhat.com>
2954         * nscd/Makefile (CFLAGS-nscd_getpw_r.c): Add -fexceptions.
2955         (CFLAGS-nscd_getgr_r.c): Likewise.
2956         (CFLAGS-nscd_gethst_r.c): Likewise.
2958 2003-09-12  Ulrich Drepper  <drepper@redhat.com>
2960         * sysdeps/unix/sysv/linux/if_index.c: Use only non-cancelable
2961         interfaces.
2963         * grp/Makefile (CFLAGS-getgrgid_r.c, CFLAGS-getgrnam_r.c,
2964         CFLAGS-fgetgrent.c, CFLAGS-fgetgrent_r.c, CFLAGS-putgrent.c,
2965         CFLAGS-initgroups.c, CFLAGS-getgrgid.c): Add -fexceptions.
2966         * inet/Makefile (CFLAGS-either_ntoh.c, CFLAGS-either_hton.c,
2967         CFLAGS-getnetgrent.c, CFLAGS-getnetgrent_r.c): Likewise.
2968         * io/Makefile (CFLAGS-posix_fallocate.c, CFLAGS-posix_fallocate64.c):
2969         Likewise.
2970         * misc/Makefile (CFLAGS-err.c): Likewise.
2971         * posix/Makefile (CFLAGS-getaddrinfo.c, CFLAGS-spawn.c,
2972         CFLAGS-spawnp.c, CFLAGS-spawni.c, CFLAGS-pause.c, CFLAGS-glob.c,
2973         CFLAGS-glob64.c): Likewise.
2974         * pwd/Makefile (CFLAGS-getpw.c): Likewise.
2975         * shadow/Makefile (CFLAGS-fgetspent.c, CFLAGS-fgetspent_r.c,
2976         CFLAGS-putspent.c, CFLAGS-getspnam.c, CFLAGS-getspnam_r.c): Likewise.
2977         * stdio-common/Makefile (CFLAGS-cuserid.c): Likewise.
2978         * sunrpc/Makefile (CFLAGS-openchild.c): Likewise.
2980         * stdlib/Makefile (CFLAGS-mkstemp.c): Remove definition.
2982         * libio/stdio.h: Remove __THROW from cuserid prototype.
2984         * locale/loadarchive.c: Use only non-cancelable interfaces.
2985         * resolv/herror.c (herror): Likewise.
2987         * malloc/hooks.c: Before using IO stream mark stream so it uses
2988         only non-cancelable interfaces.
2989         * malloc/malloc.c: Likewise.
2990         * posix/getopt.c: Likewise.
2993 2003-09-11  Jakub Jelinek  <jakub@redhat.com>
2995         * Makerules (LDFLAGS-c.so): Remove -u __register_frame.
2997 2003-09-12  Ulrich Drepper  <drepper@redhat.com>
2999         * stdio-common/stdio_ext.h: Mark most functions with __THROW.
3001         * misc/err.h: Remove __THROW from all prototypes.
3003         * posix/getopt.h (__THROW): Define if not already defined.  Add
3004         __THROW to the getopt functions.
3006 2003-09-11  Ulrich Drepper  <drepper@redhat.com>
3008         * io/Makefile (CFLAGS-lockf.c): Add -fexceptions.
3009         (CFLAGS-fts.c): Likewise.
3010         * io/fcntl.h: Remove __THROW from lockf prototypes.
3011         * io/fts.h: Remove most __THROW.
3013 2003-09-11  H.J. Lu  <hongjiu.lu@intel.com>
3015         * elf/tls-macros.h (TLS_IE): Add a stop bit for ia64.
3016         (TLS_LD): Likewise.
3017         (TLS_GD): Likewise.
3019 2003-09-11  Jakub Jelinek  <jakub@redhat.com>
3021         * libio/fileops.c (_IO_new_file_overflow): Add INTUSE to
3022         _IO_free_backup_area call.
3024 2003-09-10  Chris Demetriou  <cgd@broadcom.com>
3026         * sysdeps/unix/sysv/linux/mips/pread64.c (__libc_pread64): Fix
3027         syscall invocation.
3028         * sysdeps/unix/sysv/linux/mips/pwrite64.c (__libc_pwrite64): Likewise.
3029         * sysdeps/unix/sysv/linux/mips/pread.c (__libc_pread): Likewise.
3030         Also, only assert off_t size is 4 for N32 and O32, and clean up
3031         white space.
3032         * sysdeps/unix/sysv/linux/mips/pwrite.c (__libc_pwrite): Likewise.
3034 2003-09-10  Roland McGrath  <roland@redhat.com>
3036         * sysdeps/unix/sysv/linux/tcgetattr.c (__tcgetattr):
3037         Don't use c_ispeed under [! _HAVE_STRUCT_TERMIOS_C_ISPEED].
3038         Don't use c_ospeed under [! _HAVE_STRUCT_TERMIOS_C_OSPEED].
3039         * sysdeps/unix/sysv/linux/tcsetattr.c (tcsetattr): Likewise.
3040         Reported by Daniel Jacobowitz  <drow@mvista.com>.
3042 2003-09-10  Jakub Jelinek  <jakub@redhat.com>
3044         * string/Makefile (strop-tests): Add memccpy.
3045         * string/test-memccpy.c: New test.
3047 2003-09-09  Jakub Jelinek  <jakub@redhat.com>
3049         * sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h (SIGCONTEXT): Add
3050         siginfo_t * argument before, change into struct ucontext *.
3051         (SIGCONTEXT_EXTRA_ARGS): Define to _si,.
3052         (GET_PC, GET_FRAME, GET_STACK): Adjust for ctx being a pointer
3053         instead of structure.
3054         * sysdeps/unix/sysv/linux/x86_64/register-dump.h (REGISTER_DUMP):
3055         Likewise.
3057 2003-09-09  Ulrich Drepper  <drepper@redhat.com>
3059         * string/stratcliff.c (main): Check memccpy.
3061 2003-04-11  Jes Sorensen  <jes@wildopensource.com>
3063         * sysdeps/ia64/memccpy.S: When recovering for src_aligned and the
3064         character is found during recovery, use correct register when
3065         determining the position of the found character.
3067 2003-04-01  Jes Sorensen  <jes@wildopensource.com>
3069         * sysdeps/ia64/memccpy.S: Use speculatively loads for readahead to
3070         avoid segfaults when reading from unmapped pages. For aligned
3071         reload and continue, for misaligned, roll back and use byte copy.
3072         Save ar.ec on entry and restore on exit.
3074 2003-09-09  Chris Demetriou  <cgd@broadcom.com>
3076         * sysdeps/unix/mips/sysdep.h (PSEUDO_END): Undef before defining.
3078 2003-09-08  Chris Demetriou  <cgd@broadcom.com>
3080         * sysdeps/mips/mips64/n32/Implies: Move ieee754/ldbl-128 to
3081         the top of the list.
3082         * sysdeps/mips/mips64/n64/Implies: Likewise.
3084 2003-09-08  Roland McGrath  <roland@frob.com>
3086         * sysdeps/unix/sysv/linux/speed.c
3087         (cfsetospeed): Only set c_ospeed under [_HAVE_STRUCT_TERMIOS_C_OSPEED].
3088         (cfsetispeed): Only set c_ispeed under [_HAVE_STRUCT_TERMIOS_C_ISPEED].
3089         * sysdeps/unix/sysv/linux/bits/termios.h
3090         (_HAVE_STRUCT_TERMIOS_C_ISPEED, _HAVE_STRUCT_TERMIOS_C_OSPEED): Define.
3091         * sysdeps/unix/sysv/linux/alpha/bits/termios.h: Likewise.
3092         * sysdeps/unix/sysv/linux/powerpc/bits/termios.h: Likewise.
3094 2003-09-08  Ulrich Drepper  <drepper@redhat.com>
3096         * sysdeps/unix/sysv/linux/x86_64/register-dump.h: Undo last change.
3097         * sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h: Likewise.
3099 2003-09-08  Jakub Jelinek  <jakub@redhat.com>
3101         * sysdeps/generic/bits/types.h (__quad_t): Make long int if 64-bit.
3102         (__u_quad_t): Make unsigned long int if 64-bit.
3103         (__SQUAD_TYPE): Make long int if 64-bit.
3104         (__UQUAD_TYPE): Make unsigned long int if 64-bit.
3105         * sysdeps/unix/sysv/linux/s390/bits/typesizes.h: Remove.
3107 2003-09-08  Ulrich Drepper  <drepper@redhat.com>
3109         * Makefile (tests): Run check-c++-types.sh if possible.
3110         * scripts/check-c++-types.h: New file.
3111         * scripts/data/c++-types-i386-linux-gnu.data: New file.
3113 2003-09-08  Andreas Jaeger  <aj@suse.de>
3115         * sysdeps/unix/sysv/linux/x86_64/register-dump.h (register_dump):
3116         Use struct sigcontext.
3118         * sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h (SIGCONTEXT):
3119         Use struct sigcontext.
3120         (GET_PC): Adopt.
3121         (GET_FRAME): Likewise.
3122         (GET_STACK): Likewise.
3124 2003-09-08  Wolfram Gloger  <wg@malloc.de>
3126         * malloc/malloc.c (sYSMALLOc): Move foreign sbrk accounting into
3127         contiguous case.  Bug report from Prem Gopalan <prem@mazunetworks.com>.
3128         (mALLOPt): Avoid requirement of C99.
3130 2003-09-08  Ulrich Drepper  <drepper@redhat.com>
3132         * libio/bug-ftell.c: Include <sys/types.h>.
3133         (main): Mark cp as const.
3135 2003-09-07  Jakub Jelinek  <jakub@redhat.com>
3137         * sysdeps/unix/sysv/linux/syscalls.list (fcntl): Remove.
3138         * sysdeps/unix/sysv/linux/x86_64/fcntl.c: Remove.
3140 2003-09-05  Roland McGrath  <roland@redhat.com>
3142         * sysdeps/unix/sysv/linux/tcgetattr.c (__tcgetattr): Fill in c_ispeed
3143         and c_ospeed fields.
3144         * sysdeps/unix/sysv/linux/speed.c (cfsetospeed): Set c_ospeed field.
3145         (cfsetispeed): Set c_ispeed field.
3146         * sysdeps/unix/sysv/linux/tcsetattr.c (IBAUD0): Define unconditionally
3147         to match corresponding speed.c code.
3149 2003-09-06  Ulrich Drepper  <drepper@redhat.com>
3151         * libio/wfileops.c (_IO_wfile_underflow): Mark beginning of the
3152         narrow character buffer.
3153         * libio/Makefile: Add rules to build and run bug-ftell.
3154         * libio/bug-ftell.c: New file.
3156         * stdio-common/vfprintf.c: Don't use the first grouping number twice.
3158         * stdio-common/vfscanf.c (vfscanf): Fix recognition of characters
3159         matching the decimal point and possibly leading the thousands
3160         separator.  This caused the recognition of thousands separators to
3161         always fail.
3163 2003-09-05  Ulrich Drepper  <drepper@redhat.com>
3165         * libio/fileops.c (_IO_new_file_overflow): Handle switching to
3166         write mode from read in backup buffer.
3167         * libio/Makefile (tests): Add bug-ungetc2.
3168         * libio/bug-ungetc2.c: New file.
3170 2003-09-05  Roland McGrath  <roland@redhat.com>
3172         * nss/getXXbyYY.c (FUNCTION_NAME): Remove unused variable.
3174 2003-09-04  Roland McGrath  <roland@frob.com>
3176         * sysdeps/mach/hurd/mmap.c (__mmap): If io_map fails with MIG_BAD_ID,
3177         EOPNOTSUPP, or ENOSYS, change it to ENODEV.
3179 2003-09-04  H.J. Lu  <hongjiu.lu@intel.com>
3181         * sysdeps/unix/sysv/linux/ia64/bits/sigstack.h (MINSIGSTKSZ):
3182         Fix a typo.
3184 2003-09-05  Andreas Jaeger  <aj@suse.de>
3186         * sysdeps/i386/bits/string.h (__memrchr): Do addition in assembler
3187         to make it conforming C.
3188         * sysdeps/i386/i486/bits/string.h (__memrchr): Likewise.
3190         * sysdeps/unix/sysv/linux/i386/fcntl.c (__fcntl_nocancel): Change
3191         prototype to use variable argument lists and get the possible one
3192         argument via va_arg.
3193         * sysdeps/unix/sysv/linux/fcntl.c (__fcntl_nocancel): Likewise.
3194         * sysdeps/unix/sysv/linux/x86_64/fcntl.c: New.
3196 2003-09-04  Ulrich Drepper  <drepper@redhat.com>
3198         * posix/unistd.h: Add back __THROW to sysconf, pathconf, fpathconf.
3200         * sysdeps/unix/sysv/linux/pathconf.c (__statfs_filesize_max):
3201         Report correct value for vxfs.
3202         * sysdeps/unix/sysv/linux/linux_fsinfo.h: Define VXFS_SUPER_MAGIC.
3204         * gmon/gmon.c: Use only not-cancelable syscalls to write profiling
3205         data.
3207         * sysdeps/generic/utmp_file.c: Use not-cancelable syscalls all
3208         over the place.  It would be allowed to have these functions as
3209         cancellation points but the cleanup would be ugly and a lot of
3210         work.
3212         * sysdeps/generic/not-cancel.h (fcntl_not_cancel): Define.
3213         * sysdeps/unix/sysv/linux/not-cancel.h (fcntl_not_cancel): Define.
3215         * include/fcntl.h (__fcntl_nocancel): Declare.
3216         * sysdeps/unix/sysv/linux/fcntl.c: New file.
3217         * sysdeps/unix/sysv/linux/i386/fcntl.c (__libc_fcntl): Only enable
3218         cancellation if absolutely needed.
3219         (__fcntl_nocancel): Define.
3221         * posix/unistd.h (gethostid): Remove __THROW.  Clarify comment.
3222         * sysdeps/unix/sysv/linux/Makefile (CFLAGS-gethostid.c): Add
3223         -fexceptions.
3224         * sysdeps/unix/sysv/linux/gethostid.c (gethostid): Use
3225         extend_alloca.
3227         * resolv/res_init.c (__res_nclose): Use close_not_cancel_no_status
3228         instead of __close.
3230         * nss/getXXbyYY.c (FUNCTION_NAME): Add a few casts.  Remove
3231         unnecessary errno handling.
3233         * nss/getXXbyYY_r.c (INTERNAL): Use better variable name.
3234         Initialize it in all cases.  Change it to be a bit more like the
3235         code we had before.
3237 2003-09-04  Jakub Jelinek  <jakub@redhat.com>
3239         * libio/fileops.c (_IO_file_read, _IO_new_file_write): Add
3240         __builtin_expect.
3241         (_IO_file_open): Likewise.  Use close_not_cancel.
3243 2003-09-04  Ulrich Drepper  <drepper@redhat.com>
3245         * libio/libio.h: Define _IO_FLAGS2_NOTCANCEL.
3246         * libio/fileops.c [_LIBC]: Remove close macro.
3247         (_IO_file_open): If _IO_FLAGS2_NOTCANCEL is set, use open_not_cancel.
3248         (_IO_new_file_open): Recognize 'c' flag in mode string.
3249         (_IO_file_read): If _IO_FLAGS2_NOTCANCEL is set use read_not_cancel.
3250         (_IO_new_file_write): If _IO_FLAGS2_NOTCANCEL is set use
3251         write_not_cancel.
3252         * iconv/gconv_conf.c: Use fopen with 'c' mode flag.
3253         * inet/rcmd.c: Likewise.
3254         * inet/ruserpass.c: Likewise.
3255         * intl/localealias.c: Likewise.
3256         * malloc/mtrace.c: Likewise.
3257         * misc/getpass.c: Likewise.
3258         * misc/getttyent.c: Likewise.
3259         * misc/mntent_r.c: Likewise.
3260         * misc/getusershell.c: Likewise.
3261         * nss/nsswitch.c: Likewise.
3262         * resolv/res_hconf.c: Likewise.
3263         * resolv/res_init.c: Likewise.
3264         * sysdeps/unix/sysv/linux/getsysstats.c: Likewise.
3265         * time/getdate.c: Likewise.
3266         * time/tzfile.c: Likewise.
3267         * misc/fstab.h: Undo last change.
3268         * misc/mntent.h: Likewise.
3269         * misc/Makefile: Remove CFLAGS-mntent_r.c, CFLAGS-mntent.c, and
3270         CFLAGS-fstab.c definition.
3272 2003-09-04  Jakub Jelinek  <jakub@redhat.com>
3274         * sysdeps/generic/unwind.h (_Unwind_GetBSP): Add prototype.
3276 2003-09-03  Ulrich Drepper  <drepper@redhat.com>
3278         * nss/getXXbyYY_r.c (INTERNAL): Explicitly set errno and avoid
3279         returning ERANGE if this wasn't intended.
3281 2003-09-03  Jakub Jelinek  <jakub@redhat.com>
3283         * intl/loadmsgcat.c (open, close, read, mmap, munmap): Define as
3284         function-like macros.
3286 2003-09-03  Ulrich Drepper  <drepper@redhat.com>
3288         * grp/Makefile (CFLAGS-getgrent_r.c): Add -fexceptions.
3289         (CFLAGS-getgrent.c): Likewise.
3290         * pwd/Makefile (CFLAGS-getpwent_r.c): Add -fexceptions.
3291         (CFLAGS-getpwent.c): Likewise.
3292         * shadow/Makefile (CFLAGS-getspent_r.c): Add -fexceptions.
3293         (CFLAGS-getspent.c): Likewise.
3295         * inet/Makefile: Add -fexceptions to CFLAGS for the various
3296         getXXent and getXXbyYY functions.
3298         * locale/loadlocale.c: Use not-cancelable variants of open, close,
3299         and read.
3301 2003-09-02  Jakub Jelinek  <jakub@redhat.com>
3303         * sysdeps/unix/sysv/linux/alpha/Makefile (sysdep_routines): Remove
3304         rt_sigsuspend, rt_sigprocmask, rt_sigtimedwait, rt_sigqueueinfo and
3305         rt_sigpending.
3306         * sysdeps/unix/sysv/linux/alpha/sigaction.c (__syscall_rt_sigaction):
3307         New prototype.
3308         * sysdeps/unix/sysv/linux/arm/syscalls.list (__syscall_*): Remove
3309         unused __syscall_ stubs.
3310         * sysdeps/unix/sysv/linux/arm/Makefile (sysdep_routines): Remove
3311         rt_*.
3312         * sysdeps/unix/sysv/linux/cris/Makefile: Removed.
3313         * sysdeps/unix/sysv/linux/mips/mips64/syscalls.list
3314         (__syscall_recvfrom, __syscall_sendto): Remove unused aliases.
3315         * sysdeps/unix/sysv/linux/mips/syscalls.list (__syscall_*): Remove
3316         unused __syscall_ stubs.
3317         * sysdeps/unix/sysv/linux/mips/Makefile (sysdep_routines): Remove rt_*.
3318         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list
3319         (__syscall_*): Remove unused __syscall_ stubs.
3320         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list
3321         (__syscall_*): Likewise.
3322         * sysdeps/unix/sysv/linux/powerpc/Makefile (sysdep_routines): Remove
3323         rt_*.
3324         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (__syscall_*):
3325         Remove unused __syscall_ stubs.
3326         * sysdeps/unix/sysv/linux/sh/Makefile (sysdep_routines): Remove rt_*.
3327         * sysdeps/unix/sysv/linux/rt_sigaction.c: Removed.
3328         * sysdeps/unix/sysv/linux/rt_sigpending.c: Removed.
3329         * sysdeps/unix/sysv/linux/rt_sigprocmask.c: Removed.
3330         * sysdeps/unix/sysv/linux/rt_sigqueueinfo.c: Removed.
3331         * sysdeps/unix/sysv/linux/rt_sigreturn.c: Removed.
3332         * sysdeps/unix/sysv/linux/rt_sigsuspend.c: Removed.
3333         * sysdeps/unix/sysv/linux/rt_sigtimedwait.c: Removed.
3334         * sysdeps/unix/sysv/linux/s_pread64.c: Removed.
3335         * sysdeps/unix/sysv/linux/s_pwrite64.c: Removed.
3336         * sysdeps/unix/sysv/linux/alpha/gethostname.c: Remove unused
3337         __syscall_* prototypes.
3338         * sysdeps/unix/sysv/linux/alpha/ipc_priv.h: Likewise.
3339         * sysdeps/unix/sysv/linux/alpha/msgctl.c: Likewise.
3340         * sysdeps/unix/sysv/linux/alpha/semctl.c: Likewise.
3341         * sysdeps/unix/sysv/linux/alpha/shmctl.c: Likewise.
3342         * sysdeps/unix/sysv/linux/arm/sigaction.c: Likewise.
3343         * sysdeps/unix/sysv/linux/i386/chown.c: Likewise.
3344         * sysdeps/unix/sysv/linux/i386/fchown.c: Likewise.
3345         * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.
3346         * sysdeps/unix/sysv/linux/i386/fxstat.c: Likewise.
3347         * sysdeps/unix/sysv/linux/i386/getegid.c: Likewise.
3348         * sysdeps/unix/sysv/linux/i386/geteuid.c: Likewise.
3349         * sysdeps/unix/sysv/linux/i386/setuid.c: Likewise.
3350         * sysdeps/unix/sysv/linux/i386/getgid.c: Likewise.
3351         * sysdeps/unix/sysv/linux/i386/getgroups.c: Likewise.
3352         * sysdeps/unix/sysv/linux/i386/getmsg.c: Likewise.
3353         * sysdeps/unix/sysv/linux/i386/xstat.c: Likewise.
3354         * sysdeps/unix/sysv/linux/i386/getresgid.c: Likewise.
3355         * sysdeps/unix/sysv/linux/i386/getresuid.c: Likewise.
3356         * sysdeps/unix/sysv/linux/i386/getrlimit.c: Likewise.
3357         * sysdeps/unix/sysv/linux/i386/getuid.c: Likewise.
3358         * sysdeps/unix/sysv/linux/i386/lchown.c: Likewise.
3359         * sysdeps/unix/sysv/linux/i386/lockf64.c: Likewise.
3360         * sysdeps/unix/sysv/linux/i386/lxstat.c: Likewise.
3361         * sysdeps/unix/sysv/linux/i386/putmsg.c: Likewise.
3362         * sysdeps/unix/sysv/linux/i386/setfsgid.c: Likewise.
3363         * sysdeps/unix/sysv/linux/i386/setfsuid.c: Likewise.
3364         * sysdeps/unix/sysv/linux/i386/setgid.c: Likewise.
3365         * sysdeps/unix/sysv/linux/i386/setgroups.c: Likewise.
3366         * sysdeps/unix/sysv/linux/i386/setregid.c: Likewise.
3367         * sysdeps/unix/sysv/linux/i386/setresgid.c: Likewise.
3368         * sysdeps/unix/sysv/linux/i386/setresuid.c: Likewise.
3369         * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise.
3370         * sysdeps/unix/sysv/linux/i386/setrlimit.c: Likewise.
3371         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
3372         * sysdeps/unix/sysv/linux/ia64/fxstat.c: Likewise.
3373         * sysdeps/unix/sysv/linux/ia64/lxstat.c: Likewise.
3374         * sysdeps/unix/sysv/linux/ia64/sigaction.c: Likewise.
3375         * sysdeps/unix/sysv/linux/ia64/sigpending.c: Likewise.
3376         * sysdeps/unix/sysv/linux/ia64/sigprocmask.c: Likewise.
3377         * sysdeps/unix/sysv/linux/ia64/sigsuspend.c: Likewise.
3378         * sysdeps/unix/sysv/linux/ia64/xstat.c: Likewise.
3379         * sysdeps/unix/sysv/linux/m68k/chown.c: Likewise.
3380         * sysdeps/unix/sysv/linux/mips/ftruncate64.c: Likewise.
3381         * sysdeps/unix/sysv/linux/mips/pread.c: Likewise.
3382         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
3383         * sysdeps/unix/sysv/linux/mips/ptrace.c: Likewise.
3384         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
3385         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
3386         * sysdeps/unix/sysv/linux/mips/sigaction.c: Likewise.
3387         * sysdeps/unix/sysv/linux/mips/truncate64.c: Likewise.
3388         * sysdeps/unix/sysv/linux/mips/ustat.c: Likewise.
3389         * sysdeps/unix/sysv/linux/mips/xmknod.c: Likewise.
3390         * sysdeps/unix/sysv/linux/powerpc/chown.c: Likewise.
3391         * sysdeps/unix/sysv/linux/powerpc/ioctl.c: Likewise.
3392         * sysdeps/unix/sysv/linux/s390/s390-32/chown.c: Likewise.
3393         * sysdeps/unix/sysv/linux/s390/s390-32/lchown.c: Likewise.
3394         * sysdeps/unix/sysv/linux/s390/s390-64/xstat.c: Likewise.
3395         * sysdeps/unix/sysv/linux/s390/s390-64/fxstat.c: Likewise.
3396         * sysdeps/unix/sysv/linux/s390/s390-64/lxstat.c: Likewise.
3397         * sysdeps/unix/sysv/linux/s390/s390-64/sigaction.c: Likewise.
3398         * sysdeps/unix/sysv/linux/s390/s390-64/sigpending.c: Likewise.
3399         * sysdeps/unix/sysv/linux/s390/s390-64/sigprocmask.c: Likewise.
3400         * sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c: Likewise.
3401         * sysdeps/unix/sysv/linux/sparc/sparc64/sigpending.c: Likewise.
3402         * sysdeps/unix/sysv/linux/sparc/sparc64/sigprocmask.c: Likewise.
3403         * sysdeps/unix/sysv/linux/x86_64/sigaction.c: Likewise.
3404         * sysdeps/unix/sysv/linux/pwrite.c: Likewise.
3405         * sysdeps/unix/sysv/linux/execve.c: Likewise.
3406         * sysdeps/unix/sysv/linux/aio_sigqueue.c: Likewise.
3407         * sysdeps/unix/sysv/linux/reboot.c: Likewise.
3408         * sysdeps/unix/sysv/linux/_exit.c: Likewise.
3409         * sysdeps/unix/sysv/linux/ftruncate64.c: Likewise.
3410         * sysdeps/unix/sysv/linux/pwrite64.c: Likewise.
3411         * sysdeps/unix/sysv/linux/fxstat64.c: Likewise.
3412         * sysdeps/unix/sysv/linux/gai_sigqueue.c: Likewise.
3413         * sysdeps/unix/sysv/linux/readahead.c: Likewise.
3414         * sysdeps/unix/sysv/linux/getcwd.c: Likewise.
3415         * sysdeps/unix/sysv/linux/sigwait.c: Likewise.
3416         * sysdeps/unix/sysv/linux/getdents.c: Likewise.
3417         * sysdeps/unix/sysv/linux/readv.c: Likewise.
3418         * sysdeps/unix/sysv/linux/getpriority.c: Likewise.
3419         * sysdeps/unix/sysv/linux/sigaction.c: Likewise.
3420         * sysdeps/unix/sysv/linux/ipc_priv.h: Likewise.
3421         * sysdeps/unix/sysv/linux/llseek.c: Likewise.
3422         * sysdeps/unix/sysv/linux/sysctl.c: Likewise.
3423         * sysdeps/unix/sysv/linux/lxstat64.c: Likewise.
3424         * sysdeps/unix/sysv/linux/mmap64.c: Likewise.
3425         * sysdeps/unix/sysv/linux/ustat.c: Likewise.
3426         * sysdeps/unix/sysv/linux/poll.c: Likewise.
3427         * sysdeps/unix/sysv/linux/pread64.c: Likewise.
3428         * sysdeps/unix/sysv/linux/writev.c: Likewise.
3429         * sysdeps/unix/sysv/linux/pread.c: Likewise.
3430         * sysdeps/unix/sysv/linux/ptrace.c: Likewise.
3431         * sysdeps/unix/sysv/linux/sigpending.c: Likewise.
3432         * sysdeps/unix/sysv/linux/sigprocmask.c: Likewise.
3433         * sysdeps/unix/sysv/linux/sigqueue.c: Likewise.
3434         * sysdeps/unix/sysv/linux/sigsuspend.c: Likewise.
3435         * sysdeps/unix/sysv/linux/sigtimedwait.c: Likewise.
3436         * sysdeps/unix/sysv/linux/sigwaitinfo.c: Likewise.
3437         * sysdeps/unix/sysv/linux/truncate64.c: Likewise.
3438         * sysdeps/unix/sysv/linux/xmknod.c: Likewise.
3439         * sysdeps/unix/sysv/linux/xstat64.c: Likewise.
3441 2003-09-02  Jakub Jelinek  <jakub@redhat.com>
3443         * sysdeps/unix/sysv/linux/i386/sysdep.h (PSEUDO): Revert last change.
3444         * sysdeps/unix/sysv/linux/powerpc/syscalls.list: New file.
3445         * sysdeps/unix/sysv/linux/sparc/syscalls.list: New file.
3447 2003-09-02  Ulrich Drepper  <drepper@redhat.com>
3449         * stdio-common/Makefile (CFLAGS-vprintf.c): Add -fexceptions.
3451         * intl/loadmsgcat.c: For _LIBC, call not cancelable versions of
3452         open, close, and read.
3454         * sysdeps/unix/sysv/linux/i386/sysdep.h (PSEUDO): Also define
3455         *_nocancel name.
3457         * sysdeps/unix/sysv/linux/i386/syscalls.list: Add waitpid.
3459         * libio/Makefile (CFLAGS-oldtmpfile.c): Add -fexceptions.
3460         * sysdeps/generic/tmpfile.c (tmpfile): Use __unlink instead of remove.
3461         * libio/oldtmpfile.c (__old_tmpfile): Likewise.
3463         * misc/Makefile (CFLAGS-getusershell.c): Add -fexceptions.
3465         * io/Makefile (CFLAGS-statfs.c): Add -fexceptions.
3466         (CFLAGS-fstatfs.c): Likewise.
3467         (CFLAGS-statvfs.c): Likewise.
3468         (CFLAGS-fstatvfs.c): Likewise.
3470 2003-09-01  Ulrich Drepper  <drepper@redhat.com>
3472         * misc/Makefile (CFLAGS-getsysstats.c): Add -fexceptions.
3473         * posix/unistd.h: Remove __THROW from pathconf, fpathconf,
3474         sysconf.
3475         * posix/Makefile (CFLAGS-sysconf.c): Add -fexceptions.
3476         (CFLAGS-pathconf.c): Likewise.
3477         (CFLAGS-fpathconf.c): Likewise.
3479         * misc/Makefile (CFLAGS-fstab.c): Add -fexceptions.
3480         * misc/fstab.h: Remove all __THROW.
3481         * misc/Makefile (CFLAGS-mntent.c): Add -fexceptions.
3482         (CFLAGS-mntent_r.c): Likewise.
3483         * misc/mntent.h: Remove most __THROW.
3485         * misc/Makefile (CFLAGS-mkstemp.c): Add -fexceptions.
3486         (CFLAGS-mkstemp64.c): Likewise.
3488         * sysdeps/generic/wordexp.c (parse_comm): Disable cancellation
3489         around call to exec_comm.
3490         * posix/wordexp.h: Remove __THROW from wordexp.
3491         * posix/Makefile (CFLAGS-wordexp.c): Add -fexceptions.
3493         * sysdeps/unix/sysv/linux/getloadavg.c (getloadavg): Use
3494         not-cancelable functions.
3496         * libio/Makefile (CFLAGS-oldiofopen.c): Add -fexceptions.
3497         (CFLAGS-iofopen.c): Likewise.
3498         (CFLAGS-iofopen64.c): Likewise.
3500         * stdlib/fmtmsg.c (fmtmsg): Disable cancellation around output
3501         functions.
3502         * stdlib/Makefile (CFLAGS-fmtmsg.c): Add -fexceptions.
3503         * stdlib/fmtmsg.h: Remove __THROW from fmtmsg.
3505         * stdlib/stdlib.h: Remove __THROW from posix_openpt and getpt.
3506         * login/Makefile (CFLAGS-getpt.c): Add -fexceptions.
3508 2003-09-01  Thorsten Kukuk  <kukuk@suse.de>
3510         * nis/nss_compat/compat-spwd.c (getspnam_plususer): Return
3511         NSS_STATUS_SUCCESS if entry was found.
3512         (getspent_next_file): Store user in blacklist after entry
3513         was found, use innetgr.
3515 2003-09-01  Jakub Jelinek  <jakub@redhat.com>
3517         * sysdeps/unix/sysv/linux/powerpc/powerpc32/posix_fadvise.c: New.
3518         * sysdeps/unix/sysv/linux/powerpc/powerpc32/posix_fadvise64.c: New.
3520         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Fix tls offset
3521         computation for TCB_AT_TP.  Support l_firstbyte_offset != 0 for
3522         DTV_AT_TP, optimize.
3524 2003-08-31  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
3526         * sysdeps/unix/sysv/linux/sh/Versions: Add posix_fadvise64 and
3527         posix_fallocate64 at GLIBC_2.3.3.
3528         * sysdeps/unix/sysv/linux/sh/sysdep.h (PSEUDO_ERRVAL): Define.
3529         (PSEUDO_END_ERRVAL, ret_ERRVAL): Likewise.
3531 2003-08-08  H.J. Lu  <hongjiu.lu@intel.com>
3533         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Remove __syscall_
3534         functions.
3536 2003-08-31  Ulrich Drepper  <drepper@redhat.com>
3538         * libio/libioP.h (_IO_acquire_lock_fct): Define as inline function.
3539         Code by Richard Henderson.
3541 2003-08-31  Philip Blundell  <philb@gnu.org>
3543         * sysdeps/unix/sysv/linux/arm/Versions: Add posix_fadvise64 and
3544         posix_fallocate64 at GLIBC_2.3.3.
3546 2003-08-31  Ulrich Drepper  <drepper@redhat.com>
3548         * sysdeps/x86_64/bsd-_setjmp.S: Use HIDDEN_JUMPTARGET.
3549         * include/setjmp.h: Add libc_hidden_proto for __sigsetjmp.
3551 2003-08-30  Jakub Jelinek  <jakub@redhat.com>
3553         * sysdeps/generic/sysdep.h (cfi_window_save, CFI_WINDOW_SAVE): Define.
3554         * sysdeps/unix/sysv/linux/sparc/bits/setjmp.h: Allow file to be
3555         included multiple times.
3556         * sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__clone): Pass
3557         ptid, tls, ctid arguments to the kernel.
3558         * sysdeps/unix/sysv/linux/sparc/sparc32/getpagesize.c (__getpagesize):
3559         Use INTERNAL_SYSCALL instead of __syscall_getpagesize.
3560         * sysdeps/unix/sysv/linux/sparc/sparc32/sigaction.c
3561         (__libc_sigaction): Use INLINE_SYSCALL instead of
3562         __syscall_rt_sigaction.
3563         * sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list
3564         (__syscall_getgroups, __syscall_getpagesize, __syscall__llseek,
3565         __syscall_setfsgid, __syscall_setfsuid, __syscall_setgid,
3566         __syscall_setgroups, __syscall_setregid, __syscall_setreuid,
3567         __syscall_ipc, __syscall_setuid, __syscall_rt_sigaction,
3568         __syscall_rt_sigpending, __syscall_rt_sigprocmask,
3569         __syscall_rt_sigqueueinfo, __syscall_rt_sigsuspend,
3570         __syscall_rt_sigtimedwait): Remove unneeded syscall stubs.
3571         * sysdeps/unix/sysv/linux/sparc/sparc32/Makefile (sysdep_routines):
3572         Remove rt_sigsuspend, rt_sigprocmask, rt_sigtimedwait,
3573         rt_sigqueueinfo, rt_sigaction and rt_sigpending.
3574         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h
3575         (__CLONE_SYSCALL_STRING): Define.
3576         * sysdeps/unix/sysv/linux/sparc/sparc32/socket.S (__socket): Add
3577         CFI directives.
3578         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h
3579         (__CLONE_SYSCALL_STRING): Define.
3580         * sysdeps/unix/sysv/linux/sparc/sysdep.h (INLINE_CLONE_SYSCALL):
3581         Define.
3582         * sysdeps/unix/sysv/linux/sparc/system.c: New file.
3584 2003-08-30  Ulrich Drepper  <drepper@redhat.com>
3586         * sunrpc/rpc/clnt.h: Remove a few __THROW.
3587         * sunrpc/Makefile (CFLAGS-auth_unix.c): Add -fexceptions.
3588         (CFLAGS-key_call.c): Likewise.
3589         (CFLAGS-pmap_rmt.c): Likewise.
3590         (CFLAGS-clnt_perr.c): Likewise.
3591         * sunrpc/rpc/auth.h: Remove serveral __THROW.
3593         * inet/Makefile (CFLAGS-gethstbyad_r.c): Add -fexceptions.
3594         (CFLAGS-gethstbynm_r.c): Likewise.
3595         (CFLAGS-gethstbynm2_r.c): Likewise.
3596         (CFLAGS-rcmd.c): Likewise.
3597         * resolv/Makefile (CFLAGS-res_hconf.c): Add -fexceptions.
3599         * argp/Makefile (CFLAGS-argp-help.c): Add -fexceptions.
3600         (CFLAGS-argp-fmtstream.c): Likewise.
3601         * argp/argp.h: Remove a number of __THROW.
3603         * misc/sys/syslog.h (vsyslog): Remove __THROW.
3605         * misc/Makefile (CFLAGS-getpass.c): Add -fexceptions.
3606         * misc/getpass.c (getpass): Add cleanup handler to ensure the
3607         stream is closed even if the thread is canceled.
3608         (call_fclose): New function.
3609         * posix/unistd.h: Remove __THROW from getpass prototype.
3611         * posix/Makefile (CFLAGS-getopt.c): Add -fexceptions.
3613         * signal/signal.h (psignal): Remove __THROW.
3614         * stdio-common/Makefile (CFLAGS-psignal.c): Add -fexceptions.
3616         * misc/Makefile (CFLAGS-error.c): Define.
3617         * misc/error.c (error): Disable cancellation handling around the
3618         actual output.  The message should in any case be printed.
3619         (error_at_line): Likewise.
3621         * misc/error.h: Protect parameter names with leading __.
3623 2003-08-28  Carlos O'Donell  <carlos@baldric.uwo.ca>
3625         * sysdeps/unix/sysv/linux/hppa/syscalls.list: Add semtimedop.
3627 2003-08-29  Jakub Jelinek  <jakub@redhat.com>
3629         * libio/iofgetpos64.c (_IO_new_fgetpos64): Move lock release to the
3630         end.
3632 2003-08-29  Ulrich Drepper  <drepper@redhat.com>
3634         * libio/stdio.h: Remove a few more __THROW.
3636 2003-08-29  Jakub Jelinek  <jakub@redhat.com>
3638         * libio/Makefile: Compile fputc.c, fputwc.c, freopen64.c, freopen.c,
3639         fseek.c, fseeko64.c, fseeko.c, ftello64.c, ftello.c, fwide.c, getc.c,
3640         getchar.c, getwc.c, getwchar.c, iofclose.c, iofflush.c, iofgetpos64.c,
3641         iofgetpos.c, iofgets.c, iofgetws.c, iofputs.c, iofputws.c, iofread.c,
3642         iofsetpos64.c, iofsetpos.c, ioftell.c, iofwrite.c, iogetdelim.c,
3643         iogetline.c, iogets.c, iogetwline.c, ioputs.c, ioseekoff.c,
3644         ioseekpos.c, iosetbuffer.c, iosetvbuf.c, ioungetc.c, ioungetwc.c,
3645         oldfileops.c, oldiofclose.c, oldiofgetpos64.c, oldiofgetpos.c,
3646         oldiofsetpos64.c, oldiofsetpos.c, peekc.c, putc.c, putchar.c, putwc.c,
3647         putwchar.c and rewind.c with exceptions.
3648         * sysdeps/generic/bits/stdio-lock.h (_IO_acquire_lock,
3649         _IO_release_lock): Define.
3650         * libio/fileops.c (_IO_new_file_underflow): Use it.
3651         * libio/fputc.c (fputc): Likewise.
3652         * libio/fputwc.c (fputwc): Likewise.
3653         * libio/freopen64.c (freopen64):
3654         * libio/freopen.c (freopen): Likewise.
3655         * libio/fseek.c (fseek): Likewise.
3656         * libio/fseeko64.c (fseeko64): Likewise.
3657         * libio/fseeko.c (fseeko): Likewise.
3658         * libio/ftello64.c (ftello64): Likewise.
3659         * libio/ftello.c (ftello): Likewise.
3660         * libio/fwide.c (fwide): Likewise.
3661         * libio/getc.c (_IO_getc): Likewise.
3662         * libio/getchar.c (getchar): Likewise.
3663         * libio/getwc.c (_IO_getwc): Likewise.
3664         * libio/getwchar.c (getwchar): Likewise.
3665         * libio/iofclose.c (_IO_new_fclose):
3666         * libio/iofflush.c (_IO_fflush): Likewise.
3667         * libio/iofgetpos64.c (_IO_new_fgetpos64): Likewise.
3668         * libio/iofgetpos.c (_IO_new_fgetpos): Likewise.
3669         * libio/iofgets.c (_IO_fgets): Likewise.
3670         * libio/iofgetws.c (fgetws): Likewise.
3671         * libio/iofputs.c (_IO_fputs): Likewise.
3672         * libio/iofputws.c (fputws): Likewise.
3673         * libio/iofread.c (_IO_fread): Likewise.
3674         * libio/iofsetpos64.c (_IO_new_fsetpos64): Likewise.
3675         * libio/iofsetpos.c (_IO_new_fsetpos): Likewise.
3676         * libio/ioftell.c (_IO_ftell): Likewise.
3677         * libio/iofwrite.c (_IO_fwrite): Likewise.
3678         * libio/iogetdelim.c (_IO_getdelim): Likewise.
3679         * libio/iogets.c (_IO_gets): Likewise.
3680         * libio/ioputs.c (_IO_puts): Likewise.
3681         * libio/ioseekoff.c (_IO_seekoff): Likewise.
3682         * libio/ioseekpos.c (_IO_seekpos): Likewise.
3683         * libio/iosetbuffer.c (_IO_setbuffer): Likewise.
3684         * libio/iosetvbuf.c (_IO_setvbuf): Likewise.
3685         * libio/ioungetc.c (_IO_ungetc): Likewise.
3686         * libio/ioungetwc.c (ungetwc): Likewise.
3687         * libio/oldiofclose.c (_IO_old_fclose): Likewise.
3688         * libio/oldiofgetpos64.c (_IO_old_fgetpos64): Likewise.
3689         * libio/oldiofgetpos.c (_IO_old_fgetpos): Likewise.
3690         * libio/oldiofsetpos64.c (_IO_old_fsetpos64): Likewise.
3691         * libio/oldiofsetpos.c (_IO_old_fsetpos): Likewise.
3692         * libio/peekc.c (_IO_peekc_locked): Likewise.
3693         * libio/putc.c (_IO_putc): Likewise.
3694         * libio/putchar.c (putchar): Likewise.
3695         * libio/putwc.c (putwc): Likewise.
3696         * libio/putwchar.c (putwchar): Likewise.
3697         * libio/rewind.c (rewind): Likewise.
3698         * libio/wfileops.c (_IO_wfile_underflow): Likewise.
3700 2003-08-29  Ulrich Drepper  <drepper@redhat.com>
3702         * signal/signal.h: sighold, sigrelse, sigignore, sigset were
3703         available in XPG4.2.
3705 2003-08-27  Phil Knirsch  <pknirsch@redhat.com>
3706             Jakub Jelinek  <jakub@redhat.com>
3708         * sunrpc/svc.c (svc_getreqset): Fix fds_bits reading on 64-bit
3709         big endian arches.  Don't read beyond end of fds_bits array.
3711 2003-04-27  Bruno Haible  <bruno@clisp.org>
3713         * manual/message.texi (Advanced gettext functions): Add information
3714         about Korean, Portuguese, Latvian. Gaeilge is also known as Irish.
3715         Add section about Lithuanian, reported by Ricardas Cepas
3716         <rch@richard.eu.org>.
3717         Add information about Croatian.
3718         Ukrainian is like Russian, reported by Andy Rysin <arysin@yahoo.com>.
3719         Remove remark about continuation lines that is not true for PO files.
3720         Fix formula for Slovenian, reported by Roman Maurer
3721         <roman.maurer@amis.net>.
3723 2003-08-27  Ulrich Drepper  <drepper@redhat.com>
3725         * math/math_private.h: Declare __copysignf.
3726         * sysdeps/ieee754/flt-32/s_scalbnf.c: Use __copysignf instead of
3727         copysignf.
3729         * sysdeps/x86_64/fpu/bits/mathinline.h: Define __signbitf,
3730         __signbit, and __signbitl inline functions.
3732         * sysdeps/unix/sysv/linux/x86_64/__start_context.S: Use
3733         HIDDEN_JUMPTARGET instead of JUMPTARGET to call exit().
3735         * sysdeps/x86_64/bsd-_setjmp.S [PIC]: Jump to __GI___sigsetjmp.
3736         * sysdeps/x86_64/setjmp.S: Add libc_hidden_def for __sigsetjmp.
3738 2003-08-27  Jakub Jelinek  <jakub@redhat.com>
3740         * inet/inet_mkadr.c (inet_makeaddr): Optimize.
3742 2003-08-27  Ulrich Drepper  <drepper@redhat.com>
3744         * include/stdio.h: Add declarations for __builtin_fwrite and
3745         __builtin_fwrite_unlocked.
3747 2003-08-27  Jakub Jelinek  <jakub@redhat.com>
3749         * sysdeps/unix/opendir.c (__opendir): Make sure even struct dirent64
3750         fits into allocation.  Add padding on 32-bit arches so that
3751         dirp->data is enough aligned for struct dirent64.
3752         Avoid clearing of the buffer, just clear DIR structure.
3754 2003-08-26  Ulrich Drepper  <drepper@redhat.com>
3756         * nss/nsswitch.c: Add libc_hidden_def for __nss_lookup_function.
3757         * nss/nsswitch.h: Add libc_hidden_proto for __nss_lookup_function.
3759 2003-08-26  Steven Munroe  <sjmunroe@us.ibm.com>
3761         * sysdeps/powerpc/powerpc64/elf/Makefile: New file.
3763 2003-08-26  Jakub Jelinek  <jakub@redhat.com>
3765         * login/programs/utmpdump.c (print_entry): Cast tv_usec to long
3766         to match format string.
3767         * sysdeps/unix/sysv/linux/sparc/sparc32/semctl.c (union semun): Add
3768         __old_buf.
3769         (__new_semctl): Shut up warning.
3770         * sysdeps/unix/sysv/linux/sparc/sparc32/dl-procinfo.h
3771         (_dl_string_hwcap): Add __attribute__ ((always_inline)).
3773 2003-08-26  Jakub Jelinek  <jakub@redhat.com>
3775         * elf/ldconfig.c (search_dir): When checking for GNU-style .so
3776         link file use the real file name, not the resolved name we got by
3777         following the symlinks.
3779 2003-08-25  Ulrich Drepper  <drepper@redhat.com>
3781         * libio/oldfileops.c (_IO_old_file_init): Initialize _mode field
3782         if the object size is large enough.
3784 2003-08-25  Jakub Jelinek  <jakub@redhat.com>
3786         * elf/ldconfig.c (search_dir): Treat symlink as regular file
3787         if it won't point to itself unless it is .so symlink for the linker.
3789 2003-08-25  Ulrich Drepper  <drepper@redhat.com>
3791         * libio/libio.h (_IO_fwide): In the mode==0 optimization, don't
3792         use _mode if _IO_fwide_maybe_incompatible.
3793         * libio/iofwide.c (_IO_fwide): Move the test for mode == 0 after
3794         the compatibility test.
3796 2003-08-25  Jakub Jelinek  <jakub@redhat.com>
3798         * elf/cache.c (save_cache): Don't write beyond end of file_entries
3799         buffer.
3800         Duplicate last old cache entry if the count would be odd.
3802 2003-08-25  Andreas Jaeger  <aj@suse.de>
3804         * sysdeps/unix/sysv/linux/posix_fadvise64.c: Cast arguments of
3805         __LONG_LONG_PAIR to long.
3807 2003-08-25  Philip Blundell  <philb@gnu.org>
3809         * sysdeps/unix/sysv/linux/arm/sysdep.h (PSEUDO_ERRVAL): Define.
3810         (PSEUDO_END_ERRVAL, ret_ERRVAL): Likewise.
3812 2003-08-18  Alfred M. Szmidt  <ams@kemisten.nu>
3814         * sysdeps/generic/bits/libc-lock.h (__libc_cleanup_pop): Redefine
3815         and use __libc_cleanup_region_end instead.
3817 2003-08-25  Ulrich Drepper  <drepper@redhat.com>
3819         * elf/ldconfig.c (search_dir): Revert patch of 2003-7-21.
3821 2003-08-22  Ulrich Drepper  <drepper@redhat.com>
3823         * io/fcntl.h (posix_fallocate): Change type of third parameter to
3824         off_t.
3825         (posix_fallocate64): Change type of third parameter to off64_t.
3826         * sysdeps/generic/posix_fallocate.c: Adjust for type change.
3827         * sysdeps/posix/posix_fallocate.c: Likewise.
3828         * sysdeps/generic/posix_fallocate64.c: Likewise.
3829         * sysdeps/posix/posix_fallocate64.c: Likewise.  Add compatibility
3830         code for 32-bit platforms.
3831         * sysdeps/unix/sysv/linux/i386/Versions: Add new version for
3832         posix_fallocate64.
3833         * sysdeps/unix/sysv/linux/powerpc/powerpc32/Versions: Likewise.
3834         * sysdeps/unix/sysv/linux/s390/s390-32/Versions: Likewise.
3835         * sysdeps/unix/sysv/linux/sparc/sparc32/Versions: Likewise.
3837 2003-08-19  Ulrich Drepper  <drepper@redhat.com>
3839         * string/bits/string2.h (__STRING2_COPY_TYPE): Add attribute to
3840         the type, not to name.
3842         * stdio-common/test-vfprintf.c (main): Don't write temporary file
3843         into source directory.
3845         * malloc/malloc.c (_int_free): Add cheap test for some invalid
3846         block sizes.
3848         * sysdeps/unix/sysv/linux/i386/posix_fadvise64.S: Fix typo in
3849         syscall name.
3851 2003-08-18  Ulrich Drepper  <drepper@redhat.com>
3853         * sysdeps/unix/sysv/linux/shm_open.c (shm_open): Fold EISDIR error
3854         into EINVAL.
3856 2003-08-18  H.J. Lu  <hongjiu.lu@intel.com>
3858         * sysdeps/ia64/dl-machine.h (elf_machine_rela): Use _dl_reloc_bad_type.
3859         (elf_machine_lazy_rel): Likewise.
3861 2003-08-18  Art Haas  <ahaas@airmail.net>
3863         * malloc/malloc.h: Remove unneeded ';' where closing the C++
3864         extern block.
3866 2003-08-18  Ulrich Drepper  <drepper@redhat.com>
3868         * sysdeps/ia64/dl-fptr.h (ELF_MACHINE_LOAD_ADDRESS): Support
3869         loading big binaries where @gprel(sym) cannot be handled in 'add'
3870         but instead has to be used with 'movl'.
3872 2003-08-17  Juergen Kreileder <jk@blackdown.de>
3873             Andreas Jaeger  <aj@suse.de>
3875         * sysdeps/x86_64/bits/byteswap.h: New file.
3877 2003-08-17  Andreas Jaeger  <aj@suse.de>
3879         * sysdeps/unix/sysv/linux/i386/posix_fadvise64.S: Fix typo.
3881 2003-08-16  Jakub Jelinek  <jakub@redhat.com>
3883         * sysdeps/powerpc/powerpc32/sysdep.h (PSEUDO_ERRVAL,
3884         PSEUDO_RET_ERRVAL, ret_ERRVAL, PSEUDO_END_ERRVAL): Define.
3885         * sysdeps/powerpc/powerpc64/sysdep.h (PSEUDO_ERRVAL,
3886         PSEUDO_RET_ERRVAL, ret_ERRVAL, PSEUDO_END_ERRVAL): Define.
3887         * sysdeps/unix/alpha/sysdep.h (PSEUDO_ERRVAL,
3888         ret_ERRVAL, PSEUDO_END_ERRVAL): Define.
3889         * sysdeps/unix/mips/sysdep.h (PSEUDO_ERRVAL,
3890         ret_ERRVAL, PSEUDO_END_ERRVAL): Define.
3891         * sysdeps/unix/sparc/sysdep.h (PSEUDO_ERRVAL,
3892         ret_ERRVAL): Define.
3893         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (PSEUDO_ERRVAL,
3894         PSEUDO_END_ERRVAL, ret_ERRVAL): Define.
3895         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (PSEUDO_ERRVAL,
3896         PSEUDO_END_ERRVAL, ret_ERRVAL): Define.
3897         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h (PSEUDO_ERRVAL):
3898         Define.
3899         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h (PSEUDO_ERRVAL,
3900         PSEUDO_END_ERRVAL, ret_ERRVAL): Define.
3901         * sysdeps/unix/sysdep.h (PSEUDO_END_ERRVAL): Define.
3903         * sysdeps/unix/sysv/linux/syscalls.list (posix_fadvise64,
3904         posix_fadvise64_64): Remove.
3905         * sysdeps/unix/sysv/linux/alpha/syscalls.list (posix_fadvise64): Add
3906         V flag.
3907         * sysdeps/unix/sysv/linux/ia64/syscalls.list (posix_fadvise64):
3908         Likewise.
3909         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list
3910         (posix_fadvise64): Likewise.
3911         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list
3912         (posix_fadvise64): Likewise.
3913         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list
3914         (posix_fadvise64): Likewise.
3915         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (posix_fadvise64):
3916         Likewise.
3917         * sysdeps/unix/sysv/linux/i386/posix_fadvise64_64.S: Moved to...
3918         * sysdeps/unix/sysv/linux/i386/posix_fadvise64.S: ...here.
3919         (__posix_fadvise64_l64): Fix a typo in fadvise64 syscall invocation.
3920         (__posix_fadvise64_l32): New function.
3921         * sysdeps/unix/sysv/linux/i386/Makefile: Revert last change.
3922         * sysdeps/unix/sysv/linux/powerpc/powerpc32/Versions (libc): Export
3923         posix_fadvise64@@GLIBC_2.3.3.
3924         * sysdeps/unix/sysv/linux/s390/s390-32/Versions (libc): Likewise.
3925         * sysdeps/unix/sysv/linux/sparc/sparc32/Versions (libc): Likewise.
3926         * sysdeps/unix/sysv/linux/posix_fadvise.c (posix_fadvise): Return
3927         error value.
3928         * sysdeps/unix/sysv/linux/posix_fadvise64.c: New file.
3930         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h
3931         (SYSCALL_ERROR_HANDLER): Use TLS errno/__libc_errno if USE___THREAD.
3933 2003-08-15  Jakub Jelinek  <jakub@redhat.com>
3935         * sysdeps/sparc/sparc32/dl-machine.h (WEAKADDR): Remove.
3936         (elf_machine_matches_host): Remove weak extern stuff.
3937         Use GL(dl_hwcap) unconditionally and GL(dl_hwcap_mask) if SHARED.
3938         (elf_machine_runtime_setup, sparc_fixup_plt): Remove weak extern
3939         stuff.  Use GL(dl_hwcap) unconditionally.
3941 2003-08-16  Alan Modra  <amodra@bigpond.net.au>
3943         * sysdeps/powerpc/powerpc64/elf/start.S: Add a nop after
3944         __libc_start_main branch.
3946 2003-08-16  Jakub Jelinek <jakub@redhat.com>,
3947             Andreas Jaeger  <aj@suse.de>
3949         * sysdeps/generic/posix_fadvise.c (posix_fadvise): Return ENOSYS
3950         instead of setting errno.
3951         * sysdeps/generic/posix_fadvise64.c (posix_fadvise64): Likewise.
3953 2003-08-16  Andreas Jaeger  <aj@suse.de>
3955         * sysdeps/generic/posix_fadvise.c (posix_fadvise): Adjust prototype.
3956         * sysdeps/generic/posix_fadvise64.c (posix_fadvise64): Likewise.
3958 2003-08-15  Ulrich Drepper  <drepper@redhat.com>
3960         * io/fcntl.h (posix_fadvise64): Change type of third parameter to
3961         off_t.
3962         * sysdeps/unix/sysv/linux/posix_fadvise.c: Adjust definition.
3963         * sysdeps/unix/make-syscalls.sh: Recognize V prefix to the parameter
3964         description indicating the error value is returned, not -1.
3965         * sysdeps/unix/sysv/linux/kernel-features.h: Add definition of
3966         __ASSUME_FADVISE64_64_SYSCALL.
3967         * sysdeps/unix/sysv/linux/syscalls.list: Don't define madvise and
3968         posix_madvise in one file.  Have posix_madvise defined with error
3969         value returned.
3970         Define posix_fadvise64_64 entry.  Add version info to posix_fadvise64
3971         entry.
3972         * sysdeps/unix/sysv/linux/i386/posix_fadvise.S: New file.
3973         * sysdeps/unix/sysv/linux/i386/sysdep.h: Define PSEUDO_ERRVAL,
3974         PSEUDO_END_ERRVAL, and ret_ERRVAL.
3975         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Likewise.
3976         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
3977         * sysdeps/unix/sysv/linux/i386/Versions [GLIBC_2.3.3]: Add
3978         posix_fadvise64.
3980         * posix/Makefile (routines): Add posix_madvise.
3981         * sysdeps/generic/madvise.c: Don't define posix_madvise.
3982         * sysdeps/generic/posix_madvise.c: New file.
3983         * sysdeps/unix/sysv/aix/posix_madvise.c: New file.
3984         * sysdeps/unix/sysv/linux/i386/Makefile [subdir=io] (subdir_routines):
3985         Add posix_fadvise64_64.
3987 2003-08-15  Jakub Jelinek  <jakub@redhat.com>
3989         * assert/assert.h (assert_perror): Use __builtin_expect for gcc >=
3990         3.0, not for !gcc or gcc < 3.0.
3992 2003-08-11  Carlos O'Donell  <carlos@baldric.uwo.ca>
3994         * dlfcn/default.c (main): Cast dlsym loaded value to same type as main.
3995         Address passed to test_in_mod1 and test_in_mod2 without casting.
3996         * dlfcn/defaultmod1.c: Change prototype of test_in_mod1.
3997         (test_in_mod1): Cast dlsym loaded value to same type as mainp.
3998         * dlfcn/defaultmod2.c: Change prototype of test_in_mod2.
3999         (test_in_mod2): Cast dlsym loaded value to same type as mainp.
4001 2003-08-15  Jakub Jelinek  <jakub@redhat.com>
4003         * sysdeps/sparc/sparc32/elf/configure.in (libc_cv_sparc32_tls):
4004         Change quotes before using [].
4006         * sysdeps/unix/sysv/linux/sparc/sys/user.h: New file.
4008         * sysdeps/sparc/sparc32/bits/atomic.h (__sparc32_atomic_lock):
4009         Renamed to...
4010         (__sparc32_atomic_locks): ...this.  Change into 64-byte array.
4011         (__sparc32_atomic_do_lock, __sparc32_atomic_do_unlock): Add addr
4012         argument.  Select one of 64 locks from address bits.
4013         (atomic_compare_and_exchange_val_acq,
4014         atomic_compare_and_exchange_bool_acq): Pass memory address to
4015         __sparc32_atomic_do_{,un}lock.
4017 2003-08-14  Ulrich Drepper  <drepper@redhat.com>
4019         * assert/assert.h (assert): Use !! in front of expression to allow
4020         use of pointers.
4022         * iconvdata/cp932.c: Fixed checking of a few border of code areas.
4023         Changed conversion of JIS X 0201 from using a table to calculating.
4024         * iconvdata/euc-jp-ms.c: Fixed conversion table and rewrote
4025         conversion routine.  Changed CHARSET_NAME definition from EUCJP-MS to
4026         EUC-JP-MS.
4027         * iconvdata/tst-tables.sh: Add CP932 and EUC-JP-MS.
4028         * iconvdata/CP932.irreversible: New file.
4029         * iconvdata/EUC-JP-MS.irreversible: New file.
4030         Patch by MORIYAMA Masayuki <msyk@mtg.biglobe.ne.jp>.
4032 2003-08-13  Ulrich Drepper  <drepper@redhat.com>
4034         * sysdeps/unix/sysv/linux/i386/syscalls.list: Add time syscall.
4036         * elf/Makefile: Use LC_ALL=C in a few cases where we call external
4037         text processing tools.
4039         * sysdeps/pthread/aio_misc.h (struct waitlist): Don't add caller_pid
4040         element unless BROKEN_THREAD_SIGNALS is defined.
4041         (struct requestlist): Likewise.
4042         * sysdeps/pthread/aio_misc.c (__aio_enqueue_request): Don't fill in
4043         caller_pid of new request unless BROKEN_THREAD_SIGNALS is defined.
4044         * sysdeps/pthread/aio_suspend.c (aio_suspend): Likewise.
4045         * sysdeps/pthread/aio_notify.c (__aio_notify_only): Remove caller_pid
4046         parameter unless BROKEN_THREAD_SIGNALS is defined.  Adjust callers.
4047         Pass current PID to __aio_sigqueue.
4048         * sysdeps/pthread/lio_listio.c (lio_listio): Adjust __aio_notify_only
4049         call.  Don't initialize caller_pid field of waitlist element.
4051 2003-08-12  Jakub Jelinek  <jakub@redhat.com>
4053         * libio/libioP.h (_IO_vtable_offset): Define.
4054         * libio/freopen.c (freopen): Use it.
4055         * libio/ioputs.c (_IO_puts): Likewise.
4056         * libio/freopen64.c (freopen64): Likewise.
4057         * libio/genops.c (__underflow, __uflow, _IO_flush_all_lockp):
4058         Likewise.
4059         * libio/iofclose.c (_IO_new_fclose): Likewise.
4060         * libio/iofputs.c (_IO_fputs): Likewise.
4061         * libio/ioftell.c (_IO_ftell): Likewise.
4062         * libio/iofwrite.c (_IO_fwrite): Likewise.
4063         * libio/ioseekoff.c (_IO_seekoff_unlocked): Likewise.
4064         * libio/iosetbuffer.c (_IO_setbuffer): Likewise.
4065         * stdio-common/vfprintf.c (ORIENT, vfprintf): Likewise.
4066         * stdio-common/vfscanf.c (ORIENT): Likewise.
4068 2003-08-11  Ulrich Drepper  <drepper@redhat.com>
4070         * assert/assert.h: Use __builtin_expect in assert and
4071         assert_perror definitions if possible.
4073 2003-08-07  Jakub Jelinek  <jakub@redhat.com>
4075         * sysdeps/generic/ldsodefs.h (_rtld_global): Add
4076         _dl_rtld_lock_recursive and _dl_rtld_unlock_recursive.
4077         * elf/rtld.c (rtld_lock_default_lock_recursive,
4078         rtld_lock_default_unlock_recursive): New functions.
4079         (dl_main): Initialize _dl_rtld_lock_recursive and
4080         _dl_rtld_unlock_recursive.
4082 2003-08-05  Jakub Jelinek  <jakub@redhat.com>
4084         * elf/ldconfig.c (main): Append SLIBDIR and LIBDIR to
4085         config_file directories instead of prepending.
4087 2003-08-02  Ulrich Drepper  <drepper@redhat.com>
4089         * sysdeps/unix/sysv/linux/kernel-features.h: Define
4090         __ASSUME_CLONE_STOPPED.
4092 2003-08-01  Ulrich Drepper  <drepper@redhat.com>
4094         * sysdeps/generic/bits/libc-lock.h
4095         (__libc_cleanup_push,__libc_cleanup_pop): Define even here.
4097 2003-08-01  Roland McGrath  <roland@frob.com>
4099         * sysdeps/mach/hurd/getdents.c: Just use sysdeps/generic/getdents.c.
4101 2003-07-31  Jakub Jelinek  <jakub@redhat.com>
4103         * sysdeps/generic/bits/types.h (__ssize_t): Use __SSIZE_T_TYPE
4104         instead of __SWORD_TYPE.
4105         * sysdeps/generic/bits/typesizes.h (__SSIZE_T_TYPE): Define.
4106         * sysdeps/mach/hurd/bits/typesizes.h (__SSIZE_T_TYPE): Define.
4107         * sysdeps/unix/bsd/bsd4.4/freebsd/bits/typesizes.h (__SSIZE_T_TYPE):
4108         Define.
4109         * sysdeps/unix/sysv/linux/alpha/bits/typesizes.h (__SSIZE_T_TYPE):
4110         Define.
4111         * sysdeps/unix/sysv/linux/sparc/bits/typesizes.h (__SSIZE_T_TYPE):
4112         Define.
4113         * sysdeps/unix/sysv/linux/s390/bits/typesizes.h: New file.
4115         * dlfcn/dlerror.c (once): New.
4116         (dlerror): Call __libc_once.
4117         (_dlerror_run): Remove once.
4119         * sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h (struct sigcontext):
4120         Sync with 2.5.7 and 2.5.73 kernel changes.
4122         * dlfcn/eval.c (funcall): Add noinline attribute to shut up warnings.
4123         * elf/rtld.c (dl_main): Cast ElfW(Addr) arguments with %Zx/%Zd
4124         formats to size_t.
4125         * elf/dl-lookup.c (_dl_debug_bindings): Likewise.
4126         * elf/tst-tls6.c (do_test): Use %zd format for l_tls_modid.
4127         * elf/tst-tls8.c (do_test): Use %zd format for modid1 and modid2.
4128         * gmon/tst-sprofil.c (main): Add parens to shut up warning.
4129         * iconv/tst-iconv3.c (main): Use %td instead of %zd for pointer
4130         difference argument.
4131         * stdio-common/tst-wc-printf.c (main): Cast arguments with %C
4132         format to wint_t.
4133         * stdlib/tst-limits.c (main): For WORD_BIT and LONG_BIT, use
4134         %d format and cast expected value to int.
4135         * sysdeps/generic/libc-start.c (STATIC): Add
4136         __attribute__((always_inline) if LIBC_START_MAIN is already defined.
4137         * sysdeps/powerpc/fpu/w_sqrt.c (a_nan, a_inf): Change from uint32_t
4138         to ieee_float_shape_type.
4139         (__sqrt): Avoid type punning.
4140         * sysdeps/powerpc/fpu/w_sqrtf.c (a_nan, a_inf): Change from uint32_t
4141         to ieee_float_shape_type.
4142         (__sqrtf): Avoid type punning.
4143         * sysdeps/s390/s390-32/dl-machine.h (elf_machine_rela): Don't define
4144         refsym if in dl-conflict.c.
4145         * sysdeps/s390/s390-64/dl-machine.h (elf_machine_rela): Likewise.
4146         * sysdeps/unix/sysv/linux/i386/semctl.c (union semun): Add __old_buf.
4147         (__new_semctl): Shut up warning.
4148         * sysdeps/unix/sysv/linux/semctl.c (union semun): Add __old_buf.
4149         (__new_semctl): Shut up warning.
4150         * sysdeps/unix/sysv/linux/shmctl.c (__new_shmctl): Wrap long lines.
4151         Change old into union of __old_shmid_ds and __old_shminfo structs.
4152         Adjust all users.
4153         * wcsmbs/wcsmbs-tst1.c (main): Cast arguments with %C format to wint_t.
4155         * sysdeps/unix/sysv/linux/utimes.c (__utimes): Fix actime and
4156         modtime computation.
4157         * sysdeps/unix/sysv/linux/futimes.c (__futimes): Likewise.
4158         * sysdeps/posix/utimes.c (__utimes): Likewise.
4160 2003-07-30  Jakub Jelinek  <jakub@redhat.com>
4162         * elf/dl-reloc.c (_dl_allocate_static_tls): Don't return any value,
4163         call dl_signal_error directly.  If already relocated, call
4164         GL(dl_init_static_tls) directly, otherwise queue it for later.
4165         (CHECK_STATIC_TLS): Undo 2003-07-24 change.
4166         * elf/rtld.c (dl_main): Initialize GL(dl_init_static_tls).
4167         * elf/dl-open.c (dl_open_worker): Call GL_dl_init_static_tls
4168         for all static TLS initializations delayed in _dl_allocate_static_tls.
4169         * elf/dl-support.c (_dl_init_static_tls): New variable.
4170         * include/link.h (struct link_map): Add l_need_tls_init.
4171         * sysdeps/generic/ldsodefs.h (_rtld_global): Add _dl_init_static_tls.
4172         (_dl_nothread_init_static_tls): New prototype.
4173         (_dl_allocate_static_tls): Adjust prototype.
4175         * elf/tls-macros.h (VAR_INT_DEF): Add alignment directive.
4177 2003-07-31  Alexandre Oliva  <aoliva@redhat.com>
4179         * elf/dynamic-link.h (elf_machine_rel, elf_machine_rela,
4180         elf_machine_rel_relative, elf_machine_rela_relative): Don't assume
4181         reloc_addr is aligned.
4182         * sysdeps/alpha/dl-machine.h (elf_machine_rela,
4183         elf_machine_rela_relative): Adjust.
4184         * sysdeps/arm/dl-machine.h (elf_machine_rel, elf_machine_rela,
4185         elf_machine_rel_relative, elf_machine_rela_relative): Adjust.
4186         * sysdeps/cris/dl-machine.h (elf_machine_rela,
4187         elf_machine_rela_relative): Adjust.
4188         * sysdeps/hppa/dl-machine.h (elf_machine_rela,
4189         elf_machine_rela_relative): Adjust.
4190         * sysdeps/i386/dl-machine.h (elf_machine_rel, elf_machine_rela,
4191         elf_machine_rel_relative, elf_machine_rela_relative): Adjust.
4192         * sysdeps/ia64/dl-machine.h (elf_machine_rela,
4193         elf_machine_rela_relative): Adjust.
4194         * sysdeps/m68k/dl-machine.h (elf_machine_rela,
4195         elf_machine_rela_relative): Adjust.
4196         * sysdeps/mips/dl-machine.h (elf_machine_rela,
4197         elf_machine_rela_relative): Adjust.
4198         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela,
4199         elf_machine_rela_relative): Adjust.
4200         * sysdeps/powerpc/powerpc64/dl-machine.h
4201         (elf_machine_rela_relative, elf_machine_rela): Adjust.
4202         * sysdeps/s390/s390-32/dl-machine.h (elf_machine_rela,
4203         elf_machine_rela_relative): Adjust.
4204         * sysdeps/s390/s390-64/dl-machine.h (elf_machine_rela,
4205         elf_machine_rela_relative): Adjust.
4206         * sysdeps/sh/dl-machine.h (elf_machine_rela,
4207         elf_machine_rela_relative): Adjust.
4208         * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela,
4209         elf_machine_rela_relative): Adjust.
4210         * sysdeps/sparc/sparc64/dl-machine.h (elf_machine_rela,
4211         elf_machine_rela_relative): Adjust.
4212         * sysdeps/x86_64/dl-machine.h (elf_machine_rela,
4213         elf_machine_rela_relative): Adjust.
4215 2003-07-29  Ulrich Drepper  <drepper@redhat.com>
4217         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Restore
4218         alignment of TCB used before the last change so that it matches
4219         ld's output for IE code.
4221 2003-07-29  Jakub Jelinek  <jakub@redhat.com>
4223         * include/ctype.h (__ctype_b_loc, __ctype_toupper_loc,
4224         __ctype_tolower_loc): Avoid "dereferencing type-punned pointer will
4225         break strict-aliasing rules" warnings.
4227 2003-07-29  Roland McGrath  <roland@redhat.com>
4229         * elf/Makefile: Revert accidental changes in last commit.
4230         * elf/dl-support.c: Likewise.
4232         * rt/tst-timer2.c: New file.
4233         * rt/Makefile (tests): Add it.
4235 2003-07-25  Jakub Jelinek  <jakub@redhat.com>
4237         * elf/dl-support.c (_dl_hwcap): Add nocommon attribute.
4239 2003-07-29  Roland McGrath  <roland@redhat.com>
4241         * elf/Makefile (tests) [$(build-shared) = yes]:
4242         Depend on $(test-modules).
4243         * dlfcn/Makefile: Likewise.
4245 2003-07-28  Roland McGrath  <roland@redhat.com>
4247         * sysdeps/generic/bits/types.h (__STD_TYPE): New macro.
4248         Use that instead of `typedef' when using __*_TYPE macros in rhs.
4250         * elf/tst-tls14.c [USE_TLS && HAVE___THREAD]: Conditionalize on this.
4251         * elf/tst-tlsmod14a.c: Likewise.
4253         * sysdeps/unix/sysv/linux/sys/sysctl.h: Include <linux/compiler.h>
4254         before <linux/sysctl.h>.
4256 2003-07-27  Ulrich Drepper  <drepper@redhat.com>
4258         * sysdeps/unix/sysv/syscalls.list: time syscall never fails.
4259         * sysdeps/unix/sysv/linux/x86_64/time.S: time syscall never fails.
4260         * sysdeps/unix/sysv/i386/time.S: time syscall never fails.
4261         * sysdeps/unix/syscalls.list: umask syscall never fails.
4263 2003-07-27  Andreas Jaeger  <aj@suse.de>
4265         * sysdeps/unix/sysv/linux/init-first.c: Mark init as used.
4267 2003-07-25  Jakub Jelinek  <jakub@redhat.com>
4269         * sysdeps/unix/sysv/linux/a.out.h: Replace with i386 version.
4270         Include bits/a.out.h.
4271         * sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Add
4272         bits/a.out.h.
4273         * sysdeps/unix/sysv/linux/bits/a.out.h: New file.
4274         * sysdeps/unix/sysv/linux/i386/bits/a.out.h: New file.
4275         * sysdeps/unix/sysv/linux/m68k/bits/a.out.h: New file.
4276         * sysdeps/unix/sysv/linux/x86_64/bits/a.out.h: New file.
4277         * sysdeps/unix/sysv/linux/alpha/a.out.h: New file.
4278         * sysdeps/unix/sysv/linux/alpha/bits/a.out.h: New file.
4279         * sysdeps/unix/sysv/linux/sparc/a.out.h: New file.
4280         * sysdeps/unix/sysv/linux/sparc/bits/a.out.h: New file.
4282 2003-07-24  Jakub Jelinek  <jakub@redhat.com>
4284         * sysdeps/pthread/aio_cancel.c (aio_cancel): Return AIO_ALLDONE
4285         if aiocbp != NULL and has already completed.  Return -1/EINVAL if
4286         aiocbp->aio_fildes does not match fildes.
4288 2003-07-24  Ulrich Drepper  <drepper@redhat.com>
4290         * timezone/zic.c (rpytime): Replace cheap overflow check with a
4291         functioning one.
4293         * include/link.h (struct link_map): Add l_tls_firstbyte_offset field.
4294         * sysdeps/generic/dl-tls.c [TLS_TCB_AT_TP] (_dl_determine_tlsoffset):
4295         Fix calculation of offsets to take misalignment of first byte in
4296         file into account.
4297         * elf/dl-load.c (_dl_map_object_from_fd): Initialize
4298         l_tls_firstbyte_offset field.
4299         * elf/rtld.c (_dl_start_final, _dl_start, dl_main): Likewise.
4300         * elf/dl-reloc.c (_dl_allocate_static_tls): Change return type to int.
4301         Take l_tls_firstbyte_offset information into account.
4302         (CHECK_STATIC_TLS): _dl_allocate_static_tls can fail now.
4303         * sysdeps/generic/ldsodefs.h: Adjust _dl_allocate_static_tls prototype.
4304         * elf/Makefile: Add rules to build and run tst-tls14.
4305         * elf/tst-tls14.c: New file.
4306         * elf/tst-tlsmod14a.c: New file.
4307         * elf/tst-tlsmod14b.c: New file.
4309 2003-07-23  Jakub Jelinek  <jakub@redhat.com>
4311         * sysdeps/pthread/lio_listio.c (LIO_OPCODE_BASE): Define.
4312         (lio_listio): Use it.
4313         * sysdeps/pthread/lio_listio64.c: Include lio_listio.c instead of
4314         after few defines to avoid duplication.
4316 2003-07-22  Jakub Jelinek  <jakub@redhat.com>
4318         * include/stdio.h (__libc_fatal): Add libc_hidden_proto.
4319         * include/dlfcn.h (__libc_dlopen_mode, __libc_dlsym, __libc_dlclose):
4320         Likewise.
4321         * elf/dl-libc.c (__libc_dlopen_mode, __libc_dlsym, __libc_dlclose):
4322         Add libc_hidden_def.
4323         * sysdeps/generic/libc_fatal.c (__libc_fatal): Likewise.
4324         * sysdeps/posix/libc_fatal.c (__libc_fatal): Likewise.
4325         * sysdeps/unix/sysv/linux/libc_fatal.c (__libc_fatal): Likewise.
4326         * elf/Versions (libc): Export __libc_dlopen_mode@@GLIBC_PRIVATE,
4327         __libc_dlsym@@GLIBC_PRIVATE and __libc_dlclose@@GLIBC_PRIVATE.
4328         * libio/Versions (libc): Export __libc_fatal@@GLIBC_PRIVATE.
4329         * sysdeps/generic/unwind-dw2.c: Readd #ifs removed during last
4330         change.
4331         * sysdeps/generic/unwind.inc: Removed.
4333         * include/resolv.h (__resp): Declare.  Define to __libc_resp
4334         if in libc.so.
4335         (_res): If USE___THREAD, define to (*__resp).
4336         * resolv/res_libc.c (_res): Normal .bss variable with compat_symbol
4337         even if USE___THREAD.
4338         (__resp): New __thread variable.
4339         (__libc_resp): New alias.
4340         * resolv/Versions (libc): Export _res@GLIBC_2.0 even if
4341         USE_TLS && HAVE___THREAD.  Export __resp@@GLIBC_PRIVATE.
4342         * sysdeps/generic/res-state.c (__res_state): Return __resp
4343         if USE___THREAD.
4345 2003-07-22  H.J. Lu  <hongjiu.lu@intel.com>
4347         * elf/dl-support.c (_dl_hwcap): New variable.
4348         (_dl_aux_init): Initialize GL(dl_hwcap) for static binaries.
4350         * sysdeps/i386/fpu/fclrexcpt.c: Include <unistd.h>, <ldsodefs.h>
4351         and <dl-procinfo.h>.
4352         (__feclearexcept): Clear MXCSR if needed.
4353         * sysdeps/i386/fpu/fsetexcptflg.c: Likewise.
4355         * sysdeps/i386/fpu_control.h (_FPU_GETCW, _FPU_SETCW): Document
4356         that newer hardware needs more than these macros.
4358         * sysdeps/i386/setfpucw.c: New file.
4360 2003-07-22  Jakub Jelinek  <jakub@redhat.com>
4362         * elf/Makefile (CFLAGS-ldconfig.c): Define IS_IN_ldconfig.
4363         * elf/ldconfig.c: Include dl-procinfo.c.
4364         (PROCINFO_CLASS): Define.
4365         * sysdeps/generic/ldsodefs.h (PROCINFO_CLASS): Define.
4366         * sysdeps/unix/sysv/linux/x86_64/dl-procinfo.c: New file.
4367         * sysdeps/unix/sysv/linux/x86_64/dl-procinfo.h: New file.
4368         * sysdeps/unix/sysv/linux/i386/dl-procinfo.c (PROCINFO_CLASS):
4369         Define if not yet defined.  Use it instead of EXTERN.  Undefine
4370         at the end of the file.
4371         * sysdeps/unix/sysv/linux/arm/dl-procinfo.c (PROCINFO_CLASS):
4372         Likewise.
4373         * sysdeps/unix/sysv/linux/sparc/sparc32/dl-procinfo.c
4374         (PROCINFO_CLASS): Likewise.
4375         * sysdeps/unix/sysv/linux/sparc/sparc64/dl-procinfo.c
4376         (PROCINFO_CLASS): Likewise.
4378 2003-07-22  H.J. Lu  <hongjiu.lu@intel.com>
4380         * elf/ldconfig.c (main): Issue a fatal error if relative path
4381         is used to build cache.
4383 2003-07-22  Ulrich Drepper  <drepper@redhat.com>
4385         * elf/readlib.c (process_file): Avoid possible overflow in assignment.
4387 2003-07-21  Art Haas  <ahaas@airmail.net>
4389         * manual/charset.texi (Converting a Character): Fix example code so a
4390         valid pointer is returned.
4392 2003-07-22  Andreas Jaeger  <aj@suse.de>
4394         * elf/readlib.c (process_file): Check that file is a shared
4395         object.
4397         * elf/sofini.c (__FRAME_END__): Use attribute used so that gcc
4398         will not optimize it away.
4399         (__DTOR_END__): Likewise.
4400         (__CTOR_END__): Likewise.
4402         * include/libc-symbols.h (_elf_set_element): Use attribute used so
4403         that gcc will not optimize it away.
4404         (link_warning): Likewise.
4406 2003-07-22  Ulrich Drepper  <drepper@redhat.com>
4408         * wcsmbs/wcpncpy.c (__wcpncpy): Correct destination pointer handling.
4409         * wcsmbs/Makefile (tests): Add tst-wcpncpy.
4410         * wcsmbs/tst-wcpncpy.c: New file.
4412 2003-07-21  Ulrich Drepper  <drepper@redhat.com>
4414         * sysdeps/unix/sysv/linux/bits/sched.h (CLONE_STOPPED): Define.
4416         * sysdeps/i386/fpu/feenablxcpt.c (feenableexcept): Reverse use of
4417         stmxcsr and ldmxcsr.
4419         * Makerules (build-module-helper): Add -z defs unless explicitly said
4420         not to do it.
4421         * dlfcn/Makefile: Define various *-no-z-defs variables for test DSOs
4422         which has undefined symbols.
4423         * elf/Makefile: Likewise.
4425         * sysdeps/i386/fpu/fedisblxcpt.c: Use dl_hwcap, not dl_hwcap_mask.
4426         * sysdeps/i386/fpu/feenablxcpt.c: Likewise.
4427         * sysdeps/i386/fpu/feholdexcpt.c: Likewise.
4428         * sysdeps/i386/fpu/fesetround.c: Likewise.
4429         * sysdeps/i386/fpu/ftestexcept.c: Likewise.
4431 2003-07-21  HJ Lu  <hongjiu.lu@intel.com>
4433         * elf/ldconfig.c (search_dir): Treat symlink as regular file
4434         if it won't point to itself.
4436 2003-07-20  Ulrich Drepper  <drepper@redhat.com>
4438         * sysdeps/ia64/hp-timing.h (REPEAT_READ): Cast to long int not to int.
4440 2003-07-20  Andreas Jaeger  <aj@suse.de>
4442         * iconvdata/cp932.c (BODY): STANDARD_ERR_HANDLER is now called
4443         STANDARD_TO_LOOP_ERR_HANDLER.
4444         * iconvdata/euc-jp-ms.c (BODY): Likewise.
4446 2003-07-19  Ulrich Drepper  <drepper@redhat.com>
4448         * sysdeps/unix/sysv/linux/bits/sched.h (__CPU_ZERO): Fix typo.
4450         * sysdeps/unix/sysv/linux/syscalls.list: Remove affinity syscalls.
4452 2003-07-16  Daniel Jacobowitz  <drow@mvista.com>
4453             Andreas Jaeger  <aj@suse.de>
4455         * sysdeps/unix/sysv/linux/mips/bits/shm.h (SHMLBA): Define to
4456         256K, remove unneeded declaration of __getpagesize.
4458 2003-07-16  Andreas Schwab  <schwab@suse.de>
4460         * sysdeps/unix/sysv/linux/futimes.c: Include <string.h>.
4462 2003-07-15  Ulrich Drepper  <drepper@redhat.com>
4464         * io/test-utime.c (main): Make test yet more robust.
4466 2003-07-14  Ulrich Drepper  <drepper@redhat.com>
4468         More cancellation handling fixups.
4469         * sysdeps/unix/sysv/linux/not-cancel.h: Add waitpid_not_cancel.
4470         * sysdeps/generic/not-cancel.h: Likewise.
4471         * catgets/open_catalog.c: Use not-cancelable syscalls.
4472         * time/Makefile (CFLAGS-getdate.c): Add -fexceptions.
4473         * sysdeps/unix/sysv/linux/llseek.c: Must not be cancelable.
4474         * sysdeps/unix/syscalls.list: Don't mark lseek as cancelable.
4475         * dlfcn/dlfcn.h: Mark dlopen with __THROW again.
4476         * io/fcntl.h: Don't mark posix_fallocate with __THROW.
4477         * libio/fileops.c: Use not-cancelable syscalls for fclose.
4478         * libio/iopopen.c: Use no-cancelable syscalls.
4479         * libio/stdio.h: Mark popen and pclose with __THROW again.
4480         * misc/Makefile (CFLAGS-syslog.c): Add -fexceptions.
4481         * misc/syslog.c: Fix locking and cancellation cleanup handling.
4482         * posix/unistd.h: Mark ttyname and ttyname_r again with __THROW.
4483         * stdio-common/Makefile (CFLAGS-tmpfile.c, CFLAGS-tmpfile64.c,
4484         CFLAGS-tempname.c): Add -fexceptions.
4485         * stdlib/Makefile (CFLAGS-mkstemp.c): Add -fexceptions.
4486         * string/string.h: Mark strerror and strerror_r with _THROW again.
4487         * sysdeps/generic/unwind.inc: New file.  Copied from gcc.
4488         * sysdeps/generic/unwind-dw2.c: Update from gcc version.  Remove
4489         #ifs since we now need all the code compiled.
4490         * sysdeps/posix/spawni.c: Use close_not_cancel instead of close.
4491         * sysdeps/unix/closedir.c: Use not-cancelable syscalls.
4492         * sysdeps/unix/opendir.c: Likewise.
4494         * iconvdata/Makefile (modules): Add CP932 and EUC-JP-MS.
4495         Add rule for EUC-JP-MS dependency.
4496         * iconvdata/cp932.c: New file.
4497         * iconvdata/eucjp-ms.c: New file.
4498         * iconvdata/gconv-modules: Add entries for CP932 and EUC-JP-MS.
4499         Patch by MORIYAMA Masayuki <msyk@mtg.biglobe.ne.jp>.
4501 2003-07-15  Jakub Jelinek  <jakub@redhat.com>
4503         * sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S (__socket): Add
4504         cfi directives.
4506 2003-07-14  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
4508         * sysdeps/unix/sysv/linux/kernel-features.h
4509         (__ASSUME_FIXED_CLONE_SYSCALL): New macro.
4510         * sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S: Use it.
4512         * sysdeps/unix/sysv/linux/utimes.c: Include sysdep.h.
4514 2003-07-14  Ulrich Drepper  <drepper@redhat.com>
4516         * sysdeps/unix/sysv/linux/kernel-features.h: Define
4517         __ASSUME_TGKILL for Alpha appropriately.
4519 2003-07-12  Ulrich Drepper  <drepper@redhat.com>
4521         * sysdeps/unix/sysv/linux/bits/statfs.h (_STATFS_F_FRSIZE): Define.
4522         * sysdeps/unix/sysv/linux/alpha/bits/statfs.h (_STATFS_F_FRSIZE):
4523         Likewise.
4524         * sysdeps/unix/sysv/linux/s390/bits/statfs.h (_STATFS_F_FRSIZE):
4525         Likewise.
4527         * sysdeps/unix/sysv/linux/kernel-features.h: Define
4528         __ASSUME_UTIMES for x86 and kernels > 2.5.75.
4530         * sysdeps/unix/sysv/linux/futimes.c (__futimes): Handle case with
4531         second parameter == NULL.
4532         * sysdeps/unix/sysv/linux/utimes.c: New file.
4534 2003-07-12  Jakub Jelinek  <jakub@redhat.com>
4536         * sysdeps/unix/sysv/linux/futimes.c: Include kernel-features.h.
4537         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_UTIMES): Fix
4538         a typo.
4540 2003-07-12  Ulrich Drepper  <drepper@redhat.com>
4542         * time/sys/time.h: Namespace cleanup.
4543         * sysdeps/unix/sysv/linux/kernel-features.h: Define
4544         __ASSUME_UTIMES for the architectures which always had the syscall.
4545         * sysdeps/unix/sysv/linux/futimes.c: New file.
4547 2003-07-12  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
4549         * sysdeps/unix/sysv/linux/sh/socket.S: Save and restore the PR
4550         register across CENABLE and CDISABLE.
4552 2003-07-11  Jakub Jelinek  <jakub@redhat.com>
4554         * sysdeps/unix/sysv/linux/sigwait.c: Include string.h.
4555         * sysdeps/unix/sysv/linux/sigwaitinfo.c: Likewise.
4556         * sysdeps/unix/sysv/linux/sigtimedwait.c: Likewise.
4557         * sysdeps/unix/sysv/linux/sleep.c (__sleep): Cast value to unsigned
4558         int before assigning to max to avoid warnings.
4560 2003-07-11  Jakub Jelinek  <jakub@redhat.com>
4562         * sysdeps/unix/sysv/linux/powerpc/powerpc32/socket.S (__socket): Add
4563         cfi directives.
4564         * sysdeps/unix/sysv/linux/s390/s390-32/socket.S (__socket): Likewise.
4565         * sysdeps/unix/sysv/linux/s390/s390-64/socket.S (__socket): Likewise.
4567 2003-07-10  Jakub Jelinek  <jakub@redhat.com>
4569         * sysdeps/powerpc/powerpc64/elf/start.S: Set section flags of
4570         .data.rel.ro.local to "aw".
4572 2003-07-10  Ulrich Drepper  <drepper@redhat.com>
4574         * sysdeps/m68k/Makefile: Remove CLFAGS-.oS addition.
4575         * Makeconfig (CFLAGS-.oS): Use PIC-ccflag instead of pic-ccflag.
4576         (PIC-ccflag): Define.
4578 2003-07-04  Jakub Jelinek  <jakub@redhat.com>
4580         * sysdeps/s390/s390-32/elf/start.S: Emit position independent code
4581         if PIC.
4582         * sysdeps/s390/s390-64/elf/start.S: Likewise.
4584 2003-07-07  Jakub Jelinek  <jakub@redhat.com>
4586         * sysdeps/powerpc/powerpc64/elf/start.S: Put L(start_address)
4587         into .data.rel.ro.local section if PIC to avoid DT_TEXTREL.
4589 2003-07-07  Ulrich Drepper  <drepper@redhat.com>
4591         * sysdeps/unix/sysv/linux/kernel-features.h: Version
4592         __ASSUME_CORRECT_SI_PID and __ASSUME_TGKILL if possible.
4594         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Adjust for
4595         compilation with HAVE_AUX_SECURE defined.
4597 2003-07-05  Richard Henderson  <rth@redhat.com>
4599         * sysdeps/alpha/elf/initfini.c: Avoid .ent/.end.
4601 2003-07-03  Ulrich Drepper  <drepper@redhat.com>
4603         * configure.in: Also check for .cfi_rel_offset pseudo-op.
4605 2003-07-03  Jakub Jelinek  <jakub@redhat.com>
4607         * sysdeps/unix/sysv/linux/prof-freq.c (__profile_frequency): Fix a
4608         typo.
4610 2003-07-03  Ulrich Drepper  <drepper@redhat.com>
4612         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_AT_CLKTCK):
4613         Define.
4614         * sysdeps/unix/sysv/linux/prof-freq.h: New file.
4616 2003-07-02  Jakub Jelinek  <jakub@redhat.com>
4618         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Protect new_sysinfo
4619         decl and use with #ifdef NEED_DL_SYSINFO.
4621 2003-07-02  Ulrich Drepper  <drepper@redhat.com>
4623         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Don't set
4624         GL(dl_sysinfo) unles GL(dl_sysinfo_dso) is also set.
4625         * sysdeps/unix/sysv/linux/kernel-features.h: Define
4626         __ASSUME_VSYSCALL only for 2.5.69 and up since this is when the
4627         vsyscall DSO was added.
4629         * posix/bits/posix1_lim.h (_POSIX_NGROUPS_MAX): Define to 8 or 0
4630         depending on selected standard.
4631         (NGROUPS_MAX): Define to 8 if not defined.
4633 2003-07-02  Andreas Jaeger  <aj@suse.de>
4635         * sysdeps/unix/sysv/linux/x86_64/sys/epoll.h: New file.
4637 2003-05-04  H.J. Lu  <hongjiu.lu@intel.com>
4639         * malloc/arena.c (arena_get2): Add atomic_write_barrier.
4640         * malloc/thread-m.h: Include <atomic.h>.
4641         (atomic_full_barrier): Provide default.
4642         (atomic_read_barrier): Likewise.
4643         (atomic_write_barrier): Likewise.
4644         * sysdeps/ia64/bits/atomic.h (atomic_full_barrier): New #define.
4646 2003-06-30  Ulrich Drepper  <drepper@redhat.com>
4648         * sysdeps/generic/sysdep.h: Define cfi_rel_offset and CFI_REL_OFFSET.
4650 2003-06-30  Richard Henderson  <rth@redhat.com>
4652         * sysdeps/alpha/bits/atomic.h (__arch_compare_and_exchange_bool_*_int):
4653         Invert the sense of the return value.
4654         (__arch_exchange_16_int): Fix paste-o.
4655         (__arch_exchange_{32,64}_int): Fix think-o.
4657         * sysdeps/unix/sysv/linux/alpha/clone.S: Load child_tid properly.
4659 2003-06-30  Richard Henderson  <rth@redhat.com>
4661         * include/sys/resource.h (__getrusage): Mark hidden.
4662         * include/sys/time.h (__settimeofday, __setitimer, __utimes): Likewise.
4663         * include/sys/wait.h (__wait4): Likewise.
4665 2003-06-17  Guido Guenther  <agx@sigxcpu.org>
4667         * sysdeps/unix/sysv/linux/mips/xstatconv.c: Handle STAT_IS_KERNEL_STAT
4668         case.
4669         (xstat_conv): Rename to __xstat_conv and remove static inline.
4670         (xstat64_conv): Likewise.
4672 2003-06-29  Ulrich Drepper  <drepper@redhat.com>
4674         * sysdeps/unix/sysv/linux/sleep.c (__sleep): Handle parameter
4675         values which cannot be handled in one nanosleep call.
4677 2003-06-25  Alfred M. Szmidt  <ams@kemisten.nu>
4679         * sysdeps/generic/bits/in.h (IPV6_HOPOPTS, IPV6_DSTOPTS): New macros.
4680         (IPV6_RXHOPOPTS, IPV6_RXDSTOPTS): Use them.
4682         * sysdeps/generic/ifreq.h (__if_nextreq) [_HAVE_SA_LEN]: Typo fix.
4684 2003-06-04  Thorsten Kukuk  <kukuk@suse.de>
4686         * sysdeps/unix/sysv/linux/net/if_arp.h: Sync with kernel header,
4687         fix typo.
4689 2003-06-26  Steven Munroe  <sjmunroe@us.ibm.com>
4691         * sysdeps/unix/sysv/linux/xstatconv.h [!STAT_IS_KERNEL_STAT]:
4692         Conditionalize function definitions that use struct kernel_stat.
4693         * sysdeps/unix/sysv/linux/fxstat.c: Remove __syscall_fstat extern.
4694         * sysdeps/unix/sysv/linux/lxstat.c: Remove __syscall_lstat extern.
4695         * sysdeps/unix/sysv/linux/xstat.c: Remove __syscall_stat extern.
4697 2003-06-28  Ulrich Drepper  <drepper@redhat.com>
4699         * sysdeps/unix/sysv/linux/s390/semtimedop.c (semtimedop): Add real
4700         implementation.
4702 2003-06-07  Thorsten Kukuk  <kukuk@suse.de>
4704         * nis/nss_compat/compat-grp.c: Remove unused nis_first variable.
4705         (getgrent_next_file): Don't store group name to early in blacklist.
4707         * nis/nss_compat/compat-pwd.c (internal_getpwuid_r): Save strlen result
4708         and use memcpy instead of strcpy.
4710 2003-06-28  Ulrich Drepper  <drepper@redhat.com>
4712         * nis/nss_compat/compat-grp.c: Optimize several little things.  Use
4713         stream unlocked.
4714         * nis/nss_compat/compat-initgroups.c: Likewise.
4715         * nis/nss_compat/compat-pwd.c: Likewise.
4716         * nis/nss_compat/compat-spwd.c: Likewise.
4718 2003-06-27  Thorsten Kukuk  <kukuk@suse.de>
4720         * nis/nss_compat/compat-initgroups.c: Don't use our own NIS/NIS+
4721         functions, dlopen corresponding NSS module instead.
4723 2003-06-27  Jeroen Dekkers  <jeroen@dekkers.cx>
4725         * sysdeps/mach/hurd/alpha/init-first.c: Remove call to __libc_init.
4726         * sysdeps/mach/hurd/i386/init-first.c: Likewise.
4727         * sysdeps/mach/hurd/mips/init-first.c: Likewise.
4728         * sysdeps/mach/hurd/powerpc/init-first.c: Likewise.
4730 2003-06-27  Ulrich Drepper  <drepper@redhat.com>
4732         * rt/Makefile (CFLAGS-librt-cancellation.c): Define.
4734 2003-06-26  Roland McGrath  <roland@frob.com>
4736         * sysdeps/mach/configure.in: Barf rather than define NO_CREATION_TIME.
4737         * sysdeps/mach/configure: Regenerated.
4738         * sysdeps/mach/hurd/times.c (times_init): Function removed.
4739         (__times): Assume `creation_time' field is available.
4740         * sysdeps/mach/hurd/Makefile [$(subdir) = csu] (sysdep_routines):
4741         Don't append set-init.
4742         * sysdeps/mach/hurd/set-init.c: File removed.
4744 2003-06-26  Roland McGrath  <roland@redhat.com>
4746         * elf/elf.h (AT_SECURE): New macro.
4747         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Grok it,
4748         set __libc_enable_secure.
4749         (_dl_show_auxv): Add AT_SECURE to name table.
4750         * elf/dl-support.c (_dl_aux_init): Grok AT_SECURE, set
4751         __libc_enable_secure and __libc_enable_secure_decided.
4752         * sysdeps/unix/sysv/linux/ldsodefs.h
4753         [__ASSUME_AT_SECURE] (HAVE_AUX_SECURE): Define it.
4754         * sysdeps/unix/sysv/linux/kernel-features.h
4755         [__LINUX_KERNEL_VERSION >= 132426] (__ASSUME_AT_SECURE): Define it.
4757 2003-06-26  Ulrich Drepper  <drepper@redhat.com>
4759         * io/test-utime.c: If _STATBUF_ST_NSEC is defined, adjust lower
4760         boundary test to take rounding of nanoseconds into account.
4762         * sysdeps/unix/sysv/linux/bits/stat.h: Define _STATBUF_ST_NSEC.
4763         * sysdeps/unix/sysv/linux/ia64/bits/stat.h: Likewise.
4764         * sysdeps/unix/sysv/linux/m68k/bits/stat.h: Likewise.
4765         * sysdeps/unix/sysv/linux/powerpc/bits/stat.h: Likewise.
4766         * sysdeps/unix/sysv/linux/s390/bits/stat.h: Likewise.
4767         * sysdeps/unix/sysv/linux/sparc/bits/stat.h: Likewise.
4768         * sysdeps/unix/sysv/linux/x86_64/bits/stat.h: Likewise.
4770 2003-06-26  Andreas Schwab  <schwab@suse.de>
4772         * sysdeps/m68k/fpu/bits/mathinline.h: Don't inline frexp.
4773         * sysdeps/m68k/fpu/s_frexp.c: Put implementation here.
4774         * sysdeps/m68k/fpu/s_frexpl.c: Fix to handle unnormalized numbers.
4776 2003-06-17  Thorsten Kukuk  <kukuk@suse.de>
4778         * nis/Makefile: Remove NIS/NIS+ files from nss_compat module.
4779         * nis/nss_compat/compat-grp.c: Don't use our own NIS/NIS+ functions,
4780         dlopen corresponding NSS module instead.
4781         * nis/nss_compat/compat-pwd.c: Likewise.
4782         * nis/nss_compat/compat-spwd.c: Likewise.
4783         * nis/nss_compat/compat-initgroups.c: Disabled for now.
4784         * nss/Versions: Export __nss_lookup_function.
4786 2003-06-19  Daniel Jacobowitz  <drow@mvista.com>
4788         * sysdeps/unix/sysv/linux/kernel-features.h: Update kernel features
4789         for the SH architecture.
4791 2003-06-25  Thorsten Kukuk  <kukuk@suse.de>
4793         * csu/Makefile: Use CPPFLAGS to find correct linux/version.h.
4795 2003-06-25  Andreas Jaeger  <aj@suse.de>
4797         * stdlib/tst-strtod.c (main): Declare constant long double as
4798         suggested by Jakub Jelinek and Andreas Schwab.
4800         * posix/tst-nanosleep.c: Include <time.h> for nanosleep
4801         declaration.
4803         * stdio-common/tst-fphex.c: Fix format string.
4805         * posix/transbug.c: Include <string.h> for memset and strlen
4806         declarations.
4808         * stdio-common/tst-sprintf.c: Include <stdlib.h> for free declaration.
4810         * stdlib/tst-strtod.c (main): Pass long double value.
4812         * test-skeleton.c: Include <time.h> for nanosleep declaration.
4814 2003-06-25  Ulrich Drepper  <drepper@redhat.com>
4816         * include/time.h: Don't define CLOCK_IDFIELD_SIZE if _ISOMAC is
4817         defined.
4819 2003-06-11  Jakub Jelinek  <jakub@redhat.com>
4821         * elf/Versions (libc): Add _dl_open_hook@GLIBC_PRIVATE.
4822         * elf/dl-libc.c (struct dl_open_hook): New.
4823         (_dl_open_hook): New variable.
4824         (do_dlsym_private): New function.
4825         (__libc_dlopen_mode) [!SHARED]: Lookup _dl_open_hook@GLIBC_PRIVATE
4826         and initialize it if found.
4827         (__libc_dlopen_mode) [SHARED]: If _dl_open_hook is non-NULL,
4828         call dlopen_mode hook.
4829         (__libc_dlsym) [SHARED]: If _dl_open_hook is non-NULL,
4830         call dlsym hook.
4831         (__libc_dlclose) [SHARED]: If _dl_open_hook is non-NULL,
4832         call dlclose hook.
4834 2003-06-25  Ulrich Drepper  <drepper@redhat.com>
4836         * sysdeps/unix/sysv/linux/cris/sysdep.h (INLINE_SYSCALL): Cast
4837         result to long int so that extensions to long long int work.
4838         Patch by Uwe Reimann <libc-alpha@pulsar.homelinux.net>.
4840 2003-06-19  Jakub Jelinek  <jakub@redhat.com>
4842         * elf/ldconfig.c (main): Use add_system_dir instead of add_dir.
4843         * sysdeps/generic/dl-cache.h (add_system_dir): Define.
4844         * sysdeps/unix/sysv/linux/x86_64/dl-cache.h: Include sparc
4845         dl-cache.h.
4846         * sysdeps/unix/sysv/linux/s390/dl-cache.h: New file.
4847         * sysdeps/unix/sysv/linux/mips/dl-cache.h: New file.
4848         * sysdeps/unix/sysv/linux/powerpc/dl-cache.h: New file.
4849         * sysdeps/unix/sysv/linux/sparc/dl-cache.h: New file.
4851 2003-06-19  Jakub Jelinek  <jakub@redhat.com>
4853         * test-skeleton.c (timeout_handler): If waitpid returned 0,
4854         retry once after a second.  If killed == 0, assume
4855         WTERMSIG (status) == SIGKILL.
4857 2003-06-18  Roland McGrath  <roland@redhat.com>
4859         * sysdeps/generic/dl-sysdep.c (_dl_show_auxv): Catch uninitialized
4860         elements in the table instead of printing an empty name string.
4862 2003-06-05  Roland McGrath  <roland@redhat.com>
4864         * elf/elf.h (PT_GNU_STACK): New macro.
4866 2003-06-24  Ulrich Drepper  <drepper@redhat.com>
4868         * include/time.h: Define CLOCK_IDFIELD_SIZE.
4869         * sysdeps/posix/clock_getres.c: Recognize thread CPU clock IDs.
4870         * sysdeps/unix/clock_gettime.c: Likewise.
4871         * sysdeps/unix/clock_settime.c: Likewise.
4872         * sysdeps/unix/clock_nanosleep.c (CPUCLOCK_P): Adjust for new
4873         clock id for thread CPU clocks.
4875         * sysdeps/unix/sysv/linux/fstatfs64.c (__fstatfs64): Add support
4876         for the fstatfs64 syscall.
4877         * sysdeps/unix/sysv/linux/statfs64.c (__statfs64): Add support for
4878         the statfs64 syscall.
4880         * sysdeps/unix/sysv/linux/kernel-features.h: Define
4881         __ASSUME_STATFS64 appropriately.
4883         * sysdeps/unix/sysv/linux/internal_statvfs.c: Use f_frsize field
4884         from statfs structure if it has been filled in.
4886         * sysdeps/unix/sysv/linux/bits/statfs.h (struct statfs): Add f_frsize
4887         field.
4888         (struct statfs64): Likewise.
4889         * sysdeps/unix/sysv/linux/alpha/bits/statfs.h: Likewise.
4890         * sysdeps/unix/sysv/linux/s390/bits/statfs.h: Likewise.
4892 2003-06-24  Richard Henderson  <rth@redhat.com>
4894         * sysdeps/unix/sysv/linux/alpha/syscalls.list (pread, pwrite): Use
4895         the 64-bit syscall name.
4897         * sysdeps/alpha/setjmp.S (_setjmp, setjmp): Mark .prologue.
4899         * sysdeps/alpha/fpu/bits/mathinline.h: Honor
4900         __LIBC_INTERNAL_MATH_INLINES.  Implement __signbitf, __signbit.
4902         * sysdeps/unix/sysv/linux/alpha/clone.S: Use HIDDEN_JUMPTARGET.
4903         * sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S: Use
4904         libc_hidden_def.
4905         * sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S: Likewise.
4906         * sysdeps/unix/sysv/linux/alpha/setfpucw.c: Use libc_hidden_proto
4907         on them.
4909         * sysdeps/alpha/bits/atomic.h: New file.
4911 2003-06-24  Andreas Schwab  <schwab@suse.de>
4913         * sysdeps/m68k/fpu/libm-test-ulps: Update.
4915 2003-06-24  Andreas Jaeger  <aj@suse.de>
4917         * sysdeps/unix/sysv/linux/x86_64/stat.h (_STAT_VER_LINUX): Avoid
4918         redeclaration with 32-bit code.
4920 2003-05-19  Ed Connell  <ed.connell@sas.com>
4922         * sysdeps/unix/sysv/linux/i386/getcontext.S (getcontext): Retain
4923         floating point mask.
4924         * sysdeps/i386/fpu/fegetenv.c (fegetenv): Likewise.
4926 2003-06-23  Ulrich Drepper  <drepper@redhat.com>
4928         * sysdeps/pthread/aio_misc.h: Mark __aio_requests_mutex,
4929         __aio_enqueue_request, __aio_find_req, __aio_find_req_fd,
4930         __aio_free_request, __aio_notify, and __aio_sigqueue as hidden.
4932         * sysdeps/pthread/aio_suspend.c (aio_suspend): Set errno to the result
4933         of pthread_cond_wait if there was an error.  Use pthread_cleanup_*
4934         instead of __libc_cleanup_region_*.
4936 2003-06-20  Richard Henderson  <rth@redhat.com>
4938         * sysdeps/unix/make-syscalls.sh: Implement ! prefix for strong aliases.
4939         * sysdeps/unix/sysv/linux/alpha/syscalls.list (open, open64): New.
4941 2003-06-20  Richard Henderson  <rth@redhat.com>
4943         * sysdeps/unix/alpha/sysdep.h (INLINE_SYSCALL1): Use __builtin_expect.
4944         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_ST_INO_64_BIT)
4945         Unset for alpha.
4946         (__ASSUME_TIMEVAL64): Set for alpha.
4947         * sysdeps/unix/sysv/linux/alpha/Makefile (sysdep_routines): Remove
4948         adjtimex, osf_sigprocmask, old_adjtimex.
4949         * sysdeps/unix/sysv/linux/alpha/adjtime.c: Use INLINE_SYSCALL,
4950         __ASSUME_TIMEVAL64.  Reorg tv64 functions to avoid uninit variable.
4951         * sysdeps/unix/sysv/linux/alpha/getitimer.S: Use __ASSUME_TIMEVAL64.
4952         * sysdeps/unix/sysv/linux/alpha/getrusage.S: Likewise.
4953         * sysdeps/unix/sysv/linux/alpha/gettimeofday.S: Likewise.
4954         * sysdeps/unix/sysv/linux/alpha/select.S: Likewise.
4955         * sysdeps/unix/sysv/linux/alpha/setitimer.S: Likewise.
4956         * sysdeps/unix/sysv/linux/alpha/settimeofday.S: Likewise.
4957         * sysdeps/unix/sysv/linux/alpha/utimes.S: Likewise.
4958         * sysdeps/unix/sysv/linux/alpha/wait4.S: Likewise.
4959         * sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S: Streamline
4960         PIC code sequence.
4961         * sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S: Likewise.
4962         * sysdeps/unix/sysv/linux/alpha/sigaction.c: New file.
4963         * sysdeps/unix/sysv/linux/alpha/sigprocmask.c: Use INLINE_SYSCALL.
4964         * sysdeps/unix/sysv/linux/alpha/ustat.c: Likewise.
4965         * sysdeps/unix/sysv/linux/alpha/xmknod.c: Likewise.
4966         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Remove osf_sigprocmask,
4967         sys_ustat, sys_mknod, adjtimex, old_adjtimex.
4968         * sysdeps/unix/sysv/linux/alpha/sysdep.h (INLINE_SYSCALL): Don't
4969         defer to __syscall_name; error for rt_sigaction.
4970         * sysdeps/unix/sysv/linux/alpha/xstatconv.c: Include kernel_stat.h.
4972 2003-06-18  Ulrich Drepper  <drepper@redhat.com>
4974         * malloc/malloc.c (public_mALLINFo): Initialize malloc if it
4975         hasn't happened yet.
4977         * sysdeps/unix/sysv/linux/x86_64/register-dump.h (register_dump):
4978         Fix completely broken implementation.  The second parameter is of
4979         type struct ucontext*.
4981         * sysdeps/x86_64/dl-machine.h (elf_machine_runtime_setup): Always
4982         inline.
4984         * sysdeps/i386/i686/dl-hash.h: Don't inline _dl_elf_hash.
4985         * sysdeps/generic/dl-hash.h: Likewise.
4987         * sysdeps/generic/memcmp.c: Remove inline from
4988         memcmp_common_alignment and memcmp_not_common_alignment definition.
4990         * intl/localealias.c (read_alias_file): Determine whether line is
4991         read incompletely early, before we modify the line.
4993 2003-06-17  Jakub Jelinek  <jakub@redhat.com>
4995         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela)
4996         <case R_PPC64_DTPREL64>: Don't segfault on undefined symbols.
4998 2003-06-17  Paul Mackerras  <paulus@samba.org>
5000         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: New file.
5001         * sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S: New file.
5002         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: New file.
5003         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: New file.
5004         * sysdeps/unix/sysv/linux/powerpc/powerpc32/ucontext_i.h: New file.
5005         * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: Adjust.
5007 2003-06-17  Jakub Jelinek  <jakub@redhat.com>
5009         * posix/regcomp.c (build_word_op): Use alnum instead of alpha class.
5011 2003-06-17  Ulrich Drepper  <drepper@redhat.com>
5013         * sysdeps/unix/clock_nanosleep.c (clock_nanosleep): nanosleep
5014         takes care of enabling cancellation.
5016         * sysdeps/pthread/aio_suspend.c (aio_suspend): Make aio_suspend
5017         cancelable.  It's not correct to disable cancellation.  Instead of
5018         a cleanup handler.
5020         * sysdeps/unix/sysv/linux/sigtimedwait.c: If SIGCANCEL is defined
5021         and part of the incoming set, create a temporary set without this
5022         signal.
5023         * sysdeps/unix/sysv/linux/sigwait.c: Likewise.
5024         * sysdeps/unix/sysv/linux/sigwaitinfo.c: Likewise.
5026         * sysdeps/unix/sysv/linux/sleep.c: Use CANCELLATION_P if defined before
5027         returning because seconds==0.  Add __builtin_expect.
5029 2003-06-16  Ulrich Drepper  <drepper@redhat.com>
5031         * sysdeps/unix/sysv/linux/i386/socket.S: Add unwind information.
5033         * sysdeps/unix/sysv/linux/wait.c (__libc_wait): Fix type of result
5034         variable.
5036 2003-06-16  Thorsten Kukuk  <kukuk@suse.de>
5038         * include/libc-symbols.h: Add static_link_warning macro.
5039         * grp/initgroups.c: Print linker warning if this function
5040         is called in a static linked binary.
5041         * nss/getXXbyYY.c: Likewise.
5042         * nss/getXXbyYY_r.c: Likewise.
5043         * nss/getXXent.c: Likewise.
5044         * nss/getXXent_r.c: Likewise.
5045         * sysdeps/posix/getaddrinfo.c: Likewise.
5047 2003-06-16  Bruno Haible  <bruno@clisp.org>
5049         * iconvdata/gconv-modules (ISO-8859-15): Add aliases ISO_8859-15,
5050         LATIN-9.
5051         (ISO-8859-16): Add aliases ISO_8859-16:2001, ISO_8859-16.
5052         (IBM1047): Add alias IBM-1047.
5053         (GBK): Add aliases MS936, WINDOWS-936.
5055 2003-06-16  Jakub Jelinek  <jakub@redhat.com>
5057         * sysdeps/unix/sysv/linux/xstatconv.c (__xstat_conv): Define even if
5058         defined __ASSUME_STAT64_SYSCALL && defined XSTAT_IS_XSTAT64.
5059         (__xstat64_conv): Change xstat_conv to __xstat_conv.
5061 2003-06-16  Ulrich Drepper  <drepper@redhat.com>
5063         * locale/iso-639.def: Update from current official ISO 639.
5065         * math/tgmath.h (__TGMATH_UNARY_IMAG_ONLY): Removed.
5067 2003-06-15  Andreas Jaeger  <aj@suse.de>
5069         * sysdeps/i386/fpu/feenablxcpt.c (feenableexcept): Correct setting
5070         of MXCSR.
5071         * sysdeps/i386/fpu/fedisblxcpt.c (fedisableexcept): Likewise.
5072         * sysdeps/i386/fpu/feholdexcpt.c (feholdexcept): Likewise.
5073         Reported by Arnaud Desitter <arnaud.desitter@geography.oxford.ac.uk>.
5075         * math/tgmath.h (carg): Handle real arguments.
5076         (conj): Likewise.
5077         (cproj): Likewise.
5078         (cimag): Likewise.
5079         (creal): Likewise.
5081         * math/Makefile (CFLAGS-test-tgmath-ret.c): New.
5082         (tests): Add test-tgmath-ret.
5083         * math/test-tgmath-ret.c: New file.
5085         * math/tgmath.h (ilogb): Return always an int.
5087 2003-06-16  Ulrich Drepper  <drepper@redhat.com>
5089         * elf/rtld.c (dl_main): Use l_map_start not l_addr in Phdr
5090         computation so that prelinking works.
5092 2003-06-15  Ulrich Drepper  <drepper@redhat.com>
5094         * elf/dl-iteratephdr.c (__dl_iterate_phdr): Don't skip dynamic
5095         linker's map.
5096         * elf/rtld.c (dl_main): Initialize l_phdr and l_phnum of of the
5097         dynamic linker's map.
5099         Fix cancellation point handling wrt exception based cleanup.
5100         * io/Makefile: Compile fcntl.c, poll.c, and lockf.c with exceptions.
5101         * misc/Makefile: Compile pselect.c, readv.c, writev.c, and usleep.c
5102         with exceptions.
5103         * posix/Makefile: Compile pread.c, pread64.c, pwrite.c, pwrite64.c,
5104         sleep.c, wait.c, waitid.c, and waitpid.c with exceptions.
5105         * rt/Makefile: Compile aio_suspend.c and clock_nanosleep.c with
5106         exceptions.
5107         * signal/Makefile: Compile sigpause.c, sigsuspend.c, sigtimedwait.c,
5108         sigwait.c, and sigwaitinfo.c with exceptions.
5109         * stdlib/Makefile: Compile system.c with exceptions.
5110         * sysvipc/Makefile: Compile msgrcv.c and msgsnd.c with exceptions.
5111         * termios/Makefile: Compile tcdrain.c with exceptions.
5112         * sysdeps/generic/lockf.c: Add comment explaining the cancellation
5113         situation.
5114         * sysdeps/generic/pselect.c: Likewise.
5115         * sysdeps/posix/sigpause.c: Likewise.
5116         * sysdeps/posix/system.c: Likewise.
5117         * sysdeps/posix/waitid.c: Likewise.
5118         * sysdeps/unix/sysv/linux/sleep.c: Likewise.
5119         * sysdeps/unix/sysv/linux/usleep.c: Likewise.
5120         * sysdeps/unix/sysv/linux/i386/sysdep.h: Major rewrite of
5121         INTERNAL_SYSCALL to not use push inside asm statement so that
5122         unwind info is correct around the syscall.
5123         * sysdeps/unix/clock_nanosleep.c: Add cancellation support.
5124         * sysdeps/unix/sysv/linux/clock_nanosleep.c: Likewise.
5126 2003-06-15  Andreas Jaeger  <aj@suse.de>
5128         * sysdeps/x86_64/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
5129         Add CFI directives.
5131 2003-06-15  Guido Guenther  <agx@sigxcpu.org>
5133         * sysdeps/unix/sysv/linux/mips/Makefile: Add missing endif and
5134         create $(objpfx).
5136 2003-06-14  Ulrich Drepper  <drepper@redhat.com>
5138         * sysdeps/unix/sysv/linux/check_pf.c (__check_pf): Use __close,
5139         not close.
5141         * inet/inet6_option.c (inet6_option_alloc): Add libc_hidden_def.
5142         * include/netinet/in.h (inet6_option_alloc): Add libc_hidden_proto
5143         definition.
5145         * inet/netinet/ip6.h (IP6OPT_PAD1, IP6OPT_PADN): Define.
5146         * inet/netinet/in.h: Add prototypes for inet6_option_* functions.
5147         * inet/Makefile (routines): Add inet6_option.
5148         * inet/inet6_option.c: New file.
5149         * inet/Versions [GLIBC_2.3.3] (libc): Add inet6_option_space,
5150         inet6_option_init, inet6_option_append, inet6_option_alloc,
5151         inet6_option_next, and inet6_option_find.
5153 2003-06-13  Ulrich Drepper  <drepper@redhat.com>
5155         * inet/netinet/ip6.h (struct ip6_ext): Define.
5157         * sysdeps/unix/sysv/linux/sys/param.h (howmany): Optimize for gcc.
5159         Fixing gcc 3.3 warnings, part II.
5160         * argp/argp-help.c (hol_entry_long_iterate): Always inline.
5161         * elf/dl-load.c (cache_rpath): Don't inline.
5162         * iconvdata/cns11642l2.h: Always inline all functions.
5163         * iconvdata/iso-ir-165.h: Likewise.
5164         * locale/Makefile (aux): Add coll-lookup.
5165         * locale/coll-lookup.c: New file.
5166         * locale/coll-lookup.h (collidx_table_lookup): Do not define here.
5167         (collseq_table_lookup): Likewise.
5168         * locale/weightwc.h: Adjust collidx_table_lookup calls for name change.
5169         * posix/fnmatch_loop.c: Adjust collseq_table_lookup calls for name
5170         change.
5171         * posix/regcomp.c: Likewise.
5172         * posix/regexec.c: Likewise.
5173         * locale/programs/3level.h (*_get): Always inline.
5174         * locale/programs/locfile.h: Move definition of handle_copy to...
5175         * locale/programs/locfile.c: ...here.
5176         * locale/programs/ld-collate.c (obstack_int32_grow): Always inline.
5177         (obstack_int32_grow_fast): Likewise.
5178         (utf8_encode): Likewise.
5179         (find_element): Avoid aliasing problems.
5180         (insert_value): Likewise.
5181         (collate_read): Likewise.
5182         * nss/getent.c (print_hosts): Don't inline
5183         (print_networks): Likewise.
5184         (print_shadow): Likewise.
5185         (build_doc): Likewise.
5186         * nss/nss_files/files-parse.c [ENTDATA] (parser_stclass): Don't
5187         inline.
5188         * posix/regcomp.c (re_set_fastmap): Always inline.
5189         (seek_collating_symbol_entry): Likewise.
5190         (lookup_collation_sequence_value): Likewise.
5191         (build_range_exp): Likewise.
5192         (build_collating_symbol): Likewise.
5193         * posix/regexec.c (acquire_init_state_context): Don't inline.
5194         (clean_state_log_if_need): Likewise.
5195         * resolv/res_send.c (eConsIovec): Rewrite to not return struct and
5196         adjust all callers.
5197         (evConsTime): Likewise.
5198         (evAddTime): Likewise.
5199         (evSubTime): Likewise.
5200         (evNowTime): Likewise.
5201         (evTimeSpec): Removed.
5202         (__libc_res_nsend): Avoid aliasing problem.
5203         * sysdeps/unix/sysv/linux/ifreq.h: Move old_siocgifconf definition to..
5204         * sysdeps/unix/sysv/linux/ifreq.c: ...here.
5205         * sysdeps/unix/sysv/linux/i386/dl-procinfo.h (_dl_string_hwcap):
5206         Always inline.
5207         (_dl_string_platform): Likewise.
5208         * wctype/wchar-lookup.h (wctype_table_lookup): Always inline.
5209         (wcwidth_table_lookup): Likewise.
5210         (wctrans_table_lookup): Likewise.
5212         * sysdeps/unix/sysv/linux/sys/epoll.h: Include <stdint.h>.
5214 2003-06-12  Ulrich Drepper  <drepper@redhat.com>
5216         * wcsmbs/wchar.h: Define wint_t in std namespace, too [PR libc/5034].
5218 2003-05-29  Jim Meyering  <jim@meyering.net>
5220         * time/strftime.c (my_strftime) [!defined _NL_CURRENT
5221         && HAVE_STRFTIME]: Use underlying_strftime for %r.
5222         Suggested by Daniel Yacob <locales@geez.org>.
5224 2003-06-12  Steven Munroe  <sjmunroe@us.ibm.com>
5226         * sysdeps/powerpc/powerpc64/dl-machine.h (RTLD_START): Replace
5227         @got notation with @toc.
5228         * sysdeps/powerpc/powerpc64/sysdep.h (CALL_MCOUNT): Likewise.
5229         * sysdeps/unix/sysv/linux/powerpc/powerpc64/brk.S (__brk): Likewise.
5231 2003-06-12  Ulrich Drepper  <drepper@redhat.com>
5233         * sysdeps/posix/getaddrinfo.c (gaih_inet): Set no_inet6_date also
5234         if only PF_INET address is needed.
5236         * nss/getXXbyYY_r.c: Make sure we always return a nonzero value in
5237         case of an error.
5239         * scripts/config.guess: Update from upstream version.
5240         * scripts/config.sub: Likewise.
5242 2003-06-12  Jakub Jelinek  <jakub@redhat.com>
5244         * locale/programs/ld-time.c (time_output): Also copy the era format,
5245         not only the name.
5247 2003-06-12  H.J. Lu  <hongjiu.lu@intel.com>
5249         * posix/transbug.c (run_test): Return 1 for failure.
5250         (do_test): Compare only if run_test is successful.
5252 2003-06-12  Simon Josefsson  <jas@extundo.com>
5254         * argp/argp.h [!__THROW]: Define if undefined.
5256 2003-06-12  Ulrich Drepper  <drepper@redhat.com>
5258         * sysdeps/unix/sysv/linux/cris/sysdep.h: Fix handling of syscalls with
5259         more than four parameters.
5260         Patch by Uwe Reimann <libc-alpha@pulsar.homelinux.net>.
5262 2003-06-12  Jakub Jelinek  <jakub@redhat.com>
5264         * sysdeps/unix/sysv/linux/ia64/kernel_stat.h: New file.
5265         * sysdeps/unix/sysv/linux/s390/s390-64/kernel_stat.h: New file.
5266         * sysdeps/unix/sysv/linux/x86_64/kernel_stat.h: New file.
5268         * stdio-common/printf-parsemb.c: Include stdlib.h and sys/param.h.
5270 2003-06-12  Roland McGrath  <roland@redhat.com>
5272         * Makerules ($(objpfx)stubs): Rewrite sed magic.
5274 2003-02-28  Isamu Hasegawa  <isamu@yamato.ibm.com>
5276         * posix/regcomp.c (parse_expression): Deliver translation to
5277         build_word_op, and build_charclass.
5278         (build_charclass): Apply translation for character classes too.
5279         (build_word_op): Deliver translation to build_charclass.
5280         * posix/transbug.c: New file.
5281         * posix/Makefile (tests): Add transbug.
5283 2003-06-04  Paolo Bonzini  <bonzini@gnu.org>
5285         * posix/regexec.c (group_nodes_into_DFAstates): Check for
5286         NEXT_ENDBUF_CONSTRAINT.  Move check for constraints which do a
5287         'continue' before the others.
5289 2003-06-11  Ulrich Drepper  <drepper@redhat.com>
5291         * dirent/scandir.c (SCANDIR): Reset errno after calling selector
5292         function [PR libc/5045].
5294         * sysdeps/i386/bits/byteswap.h (__bswap_32): Use bswap instruction
5295         also for P4.
5297         * time/tzfile.c: Add a couple of __builtin_expect.
5299         Remove warnings gcc 3.3 shows.
5300         * argp/argp-help.c (hol_entry_short_iterate): Don't inline.
5301         * elf/dl-load.c (fillin_rpath): Likewise.
5302         (add_path): Likewise.
5303         * elf/dl-version.c (find_needed): Always inline.
5304         * elf/do-lookup.c (FCT): Don't inline.
5305         * iconv/Makefile: Extend vpath to intl subdir.
5306         (iconvconfig-modules): Add hash-string.
5307         * iconv/gconv_charset.h (strip): Don't inline.
5308         (upstr): Always inline.
5309         Move __gconv_compare_alias prototype to...
5310         * iconv/gconv_int.h: ...here.
5311         * iconv/gconv_db.c: Don't include gconv_charset.h.
5312         * iconv/gconv_conf.c (add_alias): Don't inline.
5313         (insert_module): Likewise.
5314         * iconv/gconv_simple.c (internal_ucs4_loop): Always inline.
5315         (internal_ucs4_loop_unaligned): Likewise.
5316         (internal_ucs4_loop_single): Likewise.
5317         (ucs4_internal_loop): Likewise.
5318         (ucs4_internal_loop_unaligned): Likewise.
5319         (ucs4_internal_loop_single): Likewise.
5320         (internal_ucs4le_loop): Always inline.
5321         (internal_ucs4le_loop_unaligned): Likewise.
5322         (internal_ucs4le_loop_single): Likewise.
5323         (ucs4le_internal_loop): Likewise.
5324         (ucs4le_internal_loop_unaligned): Likewise.
5325         (ucs4le_internal_loop_single): Likewise.
5326         * iconv/loop.c: Always inline the defined functions.
5327         * iconvdata/cns11642.h: Likewise.
5328         * iconvdata/cns11642l1.h: Likewise.
5329         * iconvdata/euc-kr.c: Likewise.
5330         * iconvdata/gb2312.h: Likewise.
5331         * iconvdata/jis0201.h: Likewise.
5332         * iconvdata/jis0208.h: Likewise.
5333         * iconvdata/jis0212.h: Likewise.
5334         * iconvdata/jisx0213.h: Likewise.
5335         * iconvdata/ksc5601.h: Likewise.
5336         * iconvdata/utf-7.c (base64): Don't inline.
5337         * include/libc-symbols.h (symbol_set_first_element): Add cast
5338         (symbol_set_end_p): Likewise.
5339         * include/set-hooks (RUN_HOOK): Likewise.
5340         * inet/Makefile (aux): Add ifreq.
5341         * intl/Makefile (aux): Add some entries from routines.  Add
5342         hash-string.
5343         * intl/hash-string.c: New file.
5344         * intl/hash-string.h: Remove hash_string definition.  Declare
5345         __hash_string.
5346         * iconv/gconv_cache.c (find_module_idx): Adjust hash_string caller.
5347         * iconv/iconvconfig.c (new_name): Likewise.
5348         * intl/dcigettext.c (_nl_find_msg): Likewise.
5349         * intl/loadmsgcat.c (_nl_load_domain): Likewise.
5350         * io/ftw.c (open_dir_stream): Always inline.
5351         (process_entry): Don't inline.
5352         * locale/findlocale.c: Include gconv_int.h.
5353         * locale/setlocale.c (new_composite_name): Don't inline.
5354         * locale/weight.h (findidx): Always inline.
5355         * locale/weightwc.h (findidx): Likewise.
5356         * locale/programs/linereader.c (lr_ignore_rest): Define here.
5357         * locale/programs/linereader.h (lr_ignore_rest): Don't define here,
5358         just declare it.
5359         (lr_getc): Always inline.
5360         (lr_ungetc): Likewise.
5361         * nss/nss_files/files-parse.c (parse_list): Likewise.
5362         * stdio-common/Makefile (aux): Add printf-parsemb and
5363         printf-parsewc.
5364         * stdio-common/_itoa.h (_itoa_word): Always inline.
5365         (_fitoa_word, _fitoa): Don't define here, only declare.
5366         * stdio-common/_itoa.c (_iftoa_word): Add here.
5367         (_fitoa): Likewise.
5368         * stdio-common/_itowa.h (_itowa_word): Always inline.
5369         * stdio-common/printf-parse.h (read_int): Don't inline.
5370         (find_spec): Don't define.
5371         Declare __find_specmb and __find_specwc.
5372         (parse_one_spec): Don't define.
5373         Declare __parse_one_specmb and __parse_one_specwc.
5374         * stdio-common/printf-parsemb.c: New file.
5375         * stdio-common/printf-parsewc.c: New file.
5376         * stdio-common/vfprintf.c: Update calls to find_spec and
5377         parse_one_spec for new names.
5378         * stdio-common/printf-prs.c: Likewise.  Define DONT_NEED_READ_INT.
5379         * stdlib/Makefile (aux): Add grouping and groupingwc.
5380         * stdlib/grouping.c: New file.
5381         * stdlib/groupingwc.c: New file.
5382         * stdlib/grouping.h (correctly_grouped_prefix): Don't define here.
5383         Just prototype.
5384         * stdlib/rpmatch.c (try): Don't inline.
5385         * stdlib/strtod.c (round_and_return): Don't line.
5386         (str_to_mpn): Likewise.
5387         (__mpn_lshift_1): Always inline.  Optimize only for constant count.
5388         Adjust for name change of correctly_grouped_prefix.
5389         * sysdeps/generic/strtol.c: Adjust for name change of
5390         correctly_grouped_prefix.
5391         * string/strxfrm.c (utf8_encode): Don't inline.
5392         * sysdeps/generic/dl-cache.c: Define _dl_cache_libcmp.
5393         * sysdeps/generic/dl-cache.h: Just declare _dl_cache_libcmp.
5394         * sysdeps/generic/ifreq.c: New file.
5395         * sysdeps/unix/sysv/linux/ifreq.c: New file.
5396         * sysdeps/generic/ifreq.h (__ifreq): Only declare here.
5397         * sysdeps/unix/sysv/linux/ifreq.h: Likewise.
5398         * sysdeps/generic/ldsodefs.h (_dl_name_match_p): Always inline.
5399         * sysdeps/generic/unwind-dw2-fde.c (start_fde_sort): Don't inline.
5400         (fde_split): Likewise.
5401         (fde_merge): Likewise.
5402         (end_fde_sort): Likewise.
5403         (init_object): Likewise.
5404         (binary_search_unencoded_fdes): Likewise.
5405         (binary_search_single_encoding_fdes): Likewise.
5406         (binary_search_mixed_encoding_fdes): Likewise.
5407         * sysdeps/generic/wordexp.c (w_addchar): Don't inline.
5408         * sysdeps/i386/dl-machine.c (elf_machine_runtime_setup): Always inline.
5409         * sysdeps/posix/sprofil.c (profil_count): Don't inline.
5410         * sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines):
5411         Add xstatconv.
5412         * sysdeps/unix/sysv/linux/xstatconv.h: New file.
5413         * sysdeps/unix/sysv/linux/xstatconv.c: Don't inline the function.
5414         Export them.  Prepend __ to name.
5415         * sysdeps/unix/sysv/linux/Dist: Add xstatconv.h.
5416         * sysdeps/unix/sysv/linux/fxstat.c: Adjust for name change of
5417         conversion functions.
5418         * sysdeps/unix/sysv/linux/fxstat64.c: Likewise.
5419         * sysdeps/unix/sysv/linux/lxstat.c: Likewise.
5420         * sysdeps/unix/sysv/linux/lxstat64.c: Likewise.
5421         * sysdeps/unix/sysv/linux/xstat.c: Likewise.
5422         * sysdeps/unix/sysv/linux/xstat64.c: Likewise.
5423         * sysdeps/unix/sysv/linux/i386/fxstat.c: Likewise.
5424         * sysdeps/unix/sysv/linux/i386/lxstat.c: Likewise.
5425         * sysdeps/unix/sysv/linux/i386/xstat.c: Likewise.
5426         * sysdeps/unix/sysv/linux/pathconf.c (__statfs_link_max,
5427         __statfs_filesize_max, __statfs_symlinks): Define here.  __ prepended
5428         to name.  Change callers.
5429         * sysdeps/unix/sysv/linux/pathconf.h (__statfs_link_max,
5430         __statfs_filesize_max, __statfs_symlinks): Don't define here, just
5431         declare.
5432         * sysdeps/unix/sysv/linux/fpathconf.c: Change all callers.
5433         * time/tzfile.c (decode): Always inline.
5434         * wcsmbs/wcsnrtombs.c: Change type of inbuf to unsigned char*.
5435         Remove cast in tomb function call.
5436         * wcsmbs/wcsrtombs.c Likewise.
5437         * wcsmbs/wcstob.c: Introduce new temp variable to take pointer in
5438         tomb function call.
5440 2003-06-10  Ulrich Drepper  <drepper@redhat.com>
5442         * po/zh_CN.po: Update from translation team.
5444 2003-06-10  Jakub Jelinek  <jakub@redhat.com>
5446         * sysdeps/unix/sysv/linux/bits/in.h (IPV6_V6ONLY, IPV6_JOIN_ANYCAST,
5447         IPV6_LEAVE_ANYCAST, IPV6_IPSEC_POLICY, IPV6_XFRM_POLICY): Define.
5449 2003-06-10  Ulrich Drepper  <drepper@redhat.com>
5451         * inet/Makefile (aux): Add check_pf.
5452         * include/ifaddrs.h: Add prototype for __check_pf.
5453         * sysdeps/generic/check_pf.c: New file.
5454         * sysdeps/unix/sysv/linux/check_pf.c: New file.
5455         * sysdeps/unix/sysv/linux/ifaddrs.h (__no_netlink_support): Renamed
5456         from no_netlink_support.  Export.
5457         * sysdeps/posix/getaddrinfo.c (getaddrinfo): Don't call getifaddrs,
5458         call __check_pf.
5460         * sysdeps/generic/ifaddrs.h: Add libc_hidden_def.
5462         * sysdeps/posix/getaddrinfo.c (getaddrinfo): Don't leak memory
5463         from getifaddr calls.
5465 2003-06-09  Jakub Jelinek  <jakub@redhat.com>
5467         * sysdeps/unix/sysv/linux/kernel-features.h
5468         (__ASSUME_SETRESGID_SYSCALL): Define.
5469         * sysdeps/unix/sysv/linux/setegid.c: Use __ASSUME_SETRESGID_SYSCALL
5470         instead of __ASSUME_SETRESUID_SYSCALL.
5471         (setegid): Only use setresgid32 inline syscall if __NR_setresgid32 is
5472         defined.
5473         * sysdeps/unix/sysv/linux/seteuid.c (seteuid): Only use setresgid32
5474         inline syscall if __NR_setresuid32 is defined.
5475         * sysdeps/unix/sysv/linux/i386/setegid.c (setegid): Use
5476         __ASSUME_SETRESGID_SYSCALL instead of __ASSUME_SETRESUID_SYSCALL.
5477         * sysdeps/unix/sysv/linux/i386/setregid.c: Backout last changes.
5478         * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise.
5479         * sysdeps/unix/sysv/linux/sparc/sparc32/setegid.c (setegid): Protect
5480         code handling non-existant setresgid32 syscall with
5481         #if __ASSUME_SETRESGID_SYSCALL == 0.
5483 2003-06-09  Andreas Schwab  <schwab@suse.de>
5485         * sunrpc/Makefile (generated): Remove rpc-proto.c, rpc-proto.d.
5486         ($(rpcsvc:%.x=$(objpfx)x%$o)): Don't depend on
5487         $(objpfx)rpc-proto.d.
5488         (rpcsvc-dt-files, rpcsvc-depfiles): Define.  Include
5489         $(rpcsvc-depfiles) instead of $(objpfx)rpc-proto.d.
5490         ($(objpfx)rpc-proto.d, $(objpfx)rpc-proto.c): Remove rules.
5492 2003-06-08  Ulrich Drepper  <drepper@redhat.com>
5494         * sysdeps/unix/sysv/linux/seteuid.c (seteuid): Use setresuid32
5495         syscall directly if possible.  If __ASSUME_SETRESUID_SYSCALL is
5496         defined drop compatibility code.
5497         * sysdeps/unix/sysv/linux/setegid.c (setegid): Use setresgid32
5498         syscall directly if possible.  If __ASSUME_SETRESUID_SYSCALL is
5499         defined drop compatibility code.
5500         * sysdeps/unix/sysv/linux/i386/seteuid.c (seteuid): Use
5501         setresuid32 syscall directly if possible.
5502         * sysdeps/unix/sysv/linux/i386/setegid.c (setegid): Use
5503         setresgid32 syscall directly if possible.
5504         * sysdeps/unix/sysv/linux/i386/setregid.c (__setregid): Make POSIX
5505         compliant.  Don't change sgid.
5506         * sysdeps/unix/sysv/linux/i386/setreuid.c (__setreuid): Make POSIX
5507         compliant.  Don't change suid.
5509         * config.h.in: Add have-forced-unwind.
5510         * configure.in: Add AC_SUBST(libc_cv_forced_unwind).
5512 2003-06-07  Ulrich Drepper  <drepper@redhat.com>
5514         * test-skeleton.c (main): If EXPECTED_STATUS is defined check that
5515         returned status from child matches.
5517         * Makeconfig (gnulib): Add -lgcc_eh once again.
5519 2003-06-06  Ulrich Drepper  <drepper@redhat.com>
5521         * test-skeleton.c (main): Use TEMP_FAILURE_RETRY with waitpid.
5523         * sysdeps/unix/sysv/linux/i386/sysdep.h (ASMFMT_2): Only allow
5524         %edx for first parameter.  This means no pushl and therefore the
5525         unwind info isn't screwed up.
5527 2003-06-04  Richard Henderson  <rth@redhat.com>
5529         * sysdeps/alpha/dl-machine.h (RTLD_START): Fix top-of-stack backtrace.
5530         * sysdeps/unix/sysv/linux/alpha/clone.S: Likewise.
5531         * sysdeps/alpha/elf/start.S: Likewise.  Remove pointless allocation.
5532         * sysdeps/unix/sysv/linux/alpha/rt_sigaction.S: Use standard ldgp
5533         entry sequence and explicit relocs.  Add unwind info for sigreturn
5534         and rt_sigreturn.
5535         * configure.in (libc_cv_asm_cfi_directives): Test .cfi_remember_state.
5537         * sysdeps/unix/sysv/linux/alpha/syscalls.list (semtimedop): New.
5538         Annotate some parameters.
5539         * sysdeps/unix/sysv/linux/alpha/sysdep.h (__NR_semtimedop): New.
5541         * sysdeps/unix/sysv/linux/alpha/gettimeofday.S: Fix typo in conversion.
5543         * include/libc-symbols.h (symbol_set_declare): Use arrays
5544         of unspecified size.
5546 2003-06-04  Jakub Jelinek  <jakub@redhat.com>
5548         * config.make.in (ASFLAGS-config): New.
5549         * Makeconfig (ASFLAGS): Append $(ASFLAGS-config).
5550         * configure.in (libc_cv_as_noexecstack): New check.
5551         (ASFLAGS_config): Substitute.
5553 2003-06-04  Jakub Jelinek  <jakub@redhat.com>
5555         * sysdeps/i386/fpu/bits/mathinline.h (log1p, asinh, acosh, atanh,
5556         hypot, logb): Protect with #ifdef __FAST_MATH__.
5558 2003-06-04  Thorsten Kukuk  <kukuk@suse.de>
5560         * sysdeps/i386/fpu/bits/mathinline.h (ldexpf, ldexpl): Protect with
5561         #ifdef __FAST_MATH__.
5563 2003-06-03  Ulrich Drepper  <drepper@redhat.com>
5565         * sysdeps/generic/glob.c [HAVE_D_TYPE] (glob_in_dir): Also allow
5566         DT_LNK entries if GLOB_ONLYDIR is set [PR libc/5043].
5567         * posix/globtest.sh: Adjust for this change.
5569         * sysdeps/unix/sysv/linux/ifaddrs.c (netlink_open): Call getsockname
5570         to get the actual PID value used in the records passed up.
5571         (getifaddrs): Don't initialize nh.pid here.
5573 2003-06-02  Ulrich Drepper  <drepper@redhat.com>
5575         * sysdeps/unix/sysv/linux/ifaddrs.c (netlink_receive): Minor
5576         optimization.
5578         * po/zh_CN.po: Update from translation team.
5580         * posix/getconf.c (main): Also recognize names without the
5581         _POSIX_ prefix.
5583         * elf/Makefile (CFLAGS-dl-lookup.c): Define.
5585 2003-06-02  Bernd Schmidt  <bernds@redhat.com>
5587         * sysdeps/i386/fpu/bits/mathinline.h (sqrt, __sqrtl, ldexp,
5588         ldexpf, ldexpl): Only define if __FAST_MATH__.
5590 2003-06-02  Richard C. Bilson  <rcbilson@plg.uwaterloo.ca>
5592         Replace hard-coded offsets into struct sigcontext with generated file.
5593         * sysdeps/unix/sysv/linux/ia64/sigcontext-offsets.sym: New file.
5594         * sysdeps/unix/sysv/linux/ia64/Makefile
5595         [$(subdir) = stdlib] (gen-as-const-headers): Add it.
5596         * sysdeps/unix/sysv/linux/ia64/ucontext_i.h: Include it instead of
5597         defining SC_* macros here.
5599 2003-06-02  Jakub Jelinek  <jakub@redhat.com>
5601         * sysdeps/unix/sysv/linux/bits/sched.h (CLONE_PID): Remove.
5603 2003-06-01  Jakub Jelinek  <jakub@redhat.com>
5605         * sysdeps/i386/dl-machine.h: Include <sysdep.h>.
5607 2003-06-01  Ulrich Drepper  <drepper@redhat.com>
5609         * test-skeleton.c (main): Request getopt to not reorder the
5610         command line.
5612         * elf/Makefile (CFLAGS-dl-runtime.c): Define.
5614         * wcsmbs/wcpncpy.c (__wcpncpy): Fix broken implementation to match
5615         stpncpy.
5617 2003-05-31  Ulrich Drepper  <drepper@redhat.com>
5619         * sysdeps/unix/sysv/linux/ia64/bits/sigaction.h (SA_NOCLDWAIT): Define.
5621 2003-05-31  Jakub Jelinek  <jakub@redhat.com>
5623         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_plt_conflict):
5624         New function.
5625         (elf_machine_rela) <case R_PPC64_JMP_SLOT>: Avoid
5626         RESOLVE_CONFLICT_FIND_MAP.  If RESOLVE_CONFLICT_FIND_MAP is defined,
5627         call elf_machine_plt_conflict instead of elf_machine_fixup_plt.
5629 2003-05-31  Ulrich Drepper  <drepper@redhat.com>
5631         * sysdeps/i386/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE): Add
5632         CFI directives.
5634         * csu/Makefile: Fix Makefile warnings regarding Scrt1.o.
5636         * libio/fileops.c (_IO_file_open): Don't mark as inline.
5638         * sysdeps/ia64/elf/initfini.c (gmon_initializer): Mark with
5639         attribute used.
5641 2003-05-30  Ulrich Drepper  <drepper@redhat.com>
5643         * scripts/config.guess: Update from master copy.
5644         * scripts/config.sub: Likewise.
5646 2003-05-30  Guido Guenther  <agx@sigxcpu.org>
5648         * sysdeps/mips/mips64/bsd-_setjmp.S: Include <sys/asm.h> for
5649         SETUP_GP64 and friends.
5650         * sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h: Fix register
5651         names in internal_syscall{6,7}.
5652         * sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h: Likewise.
5653         * sysdeps/unix/sysv/linux/mips/pread.c [_MIPS_SIM == _ABI64]: Fix
5654         number of syscall arguments.
5655         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
5656         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
5657         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
5659 2003-05-30  Andreas Jaeger  <aj@suse.de>
5661         * sysdeps/x86_64/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
5662         Add CFI directives.
5664         * sysdeps/unix/sysv/linux/x86_64/sigaction.c (RESTORE2): Add CFI
5665         directives.
5667         * sysdeps/generic/sysdep.h: Add CFI_* macros for C files.
5669         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
5670         Add CFI directives.
5672 2003-05-30  Jakub Jelinek  <jakub@redhat.com>
5674         * sysdeps/powerpc/powerpc32/elf/start.S: Make code compilable with
5675         SHARED.
5677 2003-05-11  Andreas Schwab  <schwab@suse.de>
5679         * Makerules: Always use -MP together with -MD.
5680         (sed-remove-dotot): Substitute $(..) also at start of line.
5681         ($(stdio_lim:h=st)): Use -MD instead of SUNPRO_DEPENDENCIES.
5682         Generated defines with a single compiler call.
5683         Use $(sed-remove-dotdot).
5684         * mach/Makefile ($(objpfx)mach-syscalls.mk): Use -MD instead
5685         of DEPENDENCIES_OUTPUT, and use $(sed-remove-objpfx).
5686         * sysdeps/unix/sysv/linux/Makefile ($(objpfx)syscall-%.h):
5687         Use -MD instead of SUNPRO_DEPENDENCIES, and use $(sed-remove-objpfx).
5688         * sysdeps/unix/sysv/linux/mips/Makefile
5689         ($(objpfx)syscall-%.h): Likewise.
5691 2003-05-28  Roland McGrath  <roland@redhat.com>
5693         * malloc/malloc.h [! __GNUC__] (__const): Define if undefined.
5695 2003-05-26  Aldy Hernandez  <aldyh@redhat.com>
5697         * soft-fp/soft-fp.h (FP_EX_UNDERFLOW): Define to 0.
5699 2003-05-28  Roland McGrath  <roland@redhat.com>
5701         * sysdeps/unix/sysv/linux/ia64/setcontext.S: Pass fourth argument to
5702         rt_sigprocmask system call.
5703         * sysdeps/unix/sysv/linux/ia64/ucontext_i.h (SC_MASK): Fix value.
5704         From Peter A. Buhr <pabuhr@plg2.math.uwaterloo.ca>.
5706 2003-05-28  Ulrich Drepper  <drepper@redhat.com>
5708         * include/libc-symbols.h: Define hidden attribute for real also if
5709         LIBC_NONSHARED is defined.  Patch by Jakub Jelinek.
5711         * csu/Makefile: Add rules to build Scrt1.o.
5712         * sysdeps/i386/elf/start.S: Make code compilable with SHARED.
5713         * sysdeps/x86_64/elf/start.S: Likewise.
5715 2003-05-27  Jakub Jelinek  <jakub@redhat.com>
5717         * stdio-common/vfprintf.c (process_arg, process_string_arg): Use
5718         pa_int/pa_u_int instead of pa_short_int, pa_u_short_int and pa_char.
5719         * stdio-common/printf-parse.h (union printf_arg): Remove pa_char,
5720         pa_short_int, pa_u_short_int and pa_float.
5722 2003-05-26  Jakub Jelinek  <jakub@redhat.com>
5724         * libio/strops.c (_IO_str_init_static): Change into a wrapper around
5725         _IO_str_init_static_internal.
5726         (_IO_str_init_static_internal): Moved from _IO_str_init_static,
5727         change size argument to _IO_size_t, don't limit sprintf to 64M.
5728         (_IO_str_init_readonly): Call _IO_str_init_static_internal.
5729         * libio/wstrops.c (_IO_wstr_init_static): Change size argument to
5730         _IO_size_t, don't limit swprintf to 256M.
5731         (_IO_wstr_init_readonly): Remove.
5732         * libio/libioP.h (_IO_str_init_static_internal, _IO_wstr_init_static):
5733         Adjust prototypes.
5734         (_IO_wstr_init_readonly): Remove prototype.
5735         * libio/iovsprintf.c (_IO_vsprintf): Use
5736         _IO_str_init_static_internal instead of INTUSE(_IO_str_init_static).
5737         * libio/iovsscanf.c (_IO_vsscanf): Likewise.
5738         * libio/memstream.c (open_memstream): Likewise.
5739         * libio/obprintf.c (_IO_obstack_vfprintf): Likewise.
5740         * libio/vasprintf.c (_IO_vasprintf): Likewise.
5741         * libio/vsnprintf.c (_IO_vsnprintf): Likewise.
5742         * stdio-common/tst-sprintf.c (main): Add new test.
5744 2003-05-26  Ulrich Drepper  <drepper@redhat.com>
5746         * stdio-common/vfprintf.c (vfprintf): Be bug-compatible with some
5747         other implementation in respect of multiple uses of parameter with
5748         different types.
5750 2003-05-25  Ulrich Drepper  <drepper@redhat.com>
5752         * sysdeps/unix/sysv/linux/kernel-features.h: Define
5753         __ASSUME_FUTEX_REQUEUE for >= 2.5.70.
5755 2003-05-22  Andreas Jaeger  <aj@suse.de>
5757         * sysdeps/unix/sysv/linux/x86_64/gettimeofday.S: Add CFI
5758         directives.
5759         * sysdeps/unix/sysv/linux/x86_64/time.S: Likewise.
5760         * sysdeps/x86_64/strtok.S: Likewise.
5762 2003-05-20  Guido Guenther  <agx@sigxcpu.org>
5764         * sysdeps/unix/sysv/linux/mips/bits/siginfo.h: Change SI_ASYNCNL
5765         to -60 and define SI_TKILL.
5767 2003-05-21  H.J. Lu  <hongjiu.lu@intel.com>
5769         * math/test-fenv.c (feexcp_nomask_test): Fix comment.
5770         (feexcp_mask_test): Likewise.
5772 2003-05-21  Ulrich Drepper  <drepper@redhat.com>
5774         * locale/programs/locale.c (main): Fix typo in last patch.
5776         * csu/elf-init.c: Mark __preinit_array_start, __preinit_array_end,
5777         __init_array_start, __init_array_end, __fini_array_start, and
5778         __fini_array_end as hidden.
5780 2003-05-21  Petter Reinholdtsen  <pere@hungry.com>
5782         * locale/programs/locale.c (main): Report an error if setlocale()
5783         fails [PR libc/2254].
5785 2003-05-21  Jakub Jelinek  <jakub@redhat.com>
5787         * sysdeps/unix/sysv/linux/s390/system.c: New file.
5789 2003-05-21  Jakub Jelinek  <jakub@redhat.com>
5791         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (LOADARGS_0,
5792         LOADARGS_1, LOADARGS_2, LOADARGS_3, LOADARGS_4, LOADARGS_5,
5793         LOADARGS_6): Don't error if syscall argument is a string literal.
5794         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h (LOADARGS_0,
5795         LOADARGS_1, LOADARGS_2, LOADARGS_3, LOADARGS_4, LOADARGS_5,
5796         LOADARGS_6): Likewise.
5798 2003-05-21  Andreas Jaeger  <aj@suse.de>
5800         * sysdeps/generic/sysdep.h (cfi_offset, cfi_startproc,
5801         cfi_endproc, cfi_def_cfa, cfi_def_ccfa_register,
5802         cfi_def_cfa_offset, cfi_adjust_cfa_offset, cfi_offset): Define.
5804         * sysdeps/x86_64/sysdep.h (CALL_MCOUNT): Add cfi directives.
5805         (ENTRY): Likewise.
5806         (END): Likewise.
5808         * configure.in: Test for asm cfi directives.
5810         * config.h.in: Add HAVE_ASM_CFI_DIRECTIVES.
5812 2003-05-17  Andreas Jaeger  <aj@suse.de>
5814         * sysdeps/unix/sysv/linux/x86_64/syscall.S: Revert last patch.
5816         * rt/tst-clock_nanosleep.c: Include <time.h> for clock_nanosleep.
5818 2003-05-16  Ulrich Drepper  <drepper@redhat.com>
5820         * rt/Makefile (tests): Add tst-clock_nanosleep.
5821         * rt/tst-clock_nanosleep.c: New file.
5822         * posix/Makefile (tests): Add tst-nanosleep.
5823         * posix/tst-nanosleep.c: New file.
5825         * sysdeps/unix/clock_nanosleep.c (CPUCLOCK_P): Fix definition.
5827         * include/features.h (__USE_XOPEN2K): Define also for
5828         _POSIX_C_SOURCE>=200112L.
5830         * sysdeps/unix/sysv/linux/sigwaitinfo.c (do_sigwaitinfo): Fold
5831         SI_TKILL code into SI_USER.
5832         * sysdeps/unix/sysv/linux/sigtimedwait.c (do_sigtimedwait): Likewise.
5834         * sysdeps/posix/sigpause.c (do_sigpause): Use sigdelset after all.
5836 2003-05-15  Jakub Jelinek  <jakub@redhat.com>
5838         * sysdeps/powerpc/powerpc32/dl-machine.c (_dl_reloc_overflow):
5839         Remove sym argument, always use refsym.
5840         (__process_machine_rela): Adjust callers.
5841         * sysdeps/powerpc/powerpc64/dl-machine.c (_dl_reloc_overflow):
5842         Likewise.
5843         * sysdeps/powerpc/powerpc32/dl-machine.h (_dl_reloc_overflow):
5844         Adjust prototype.
5845         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela): Likewise.
5847 2003-05-15  Ulrich Drepper  <drepper@redhat.com>
5849         * sysdeps/generic/dl-sysdep.c (_dl_show_auxv): Fix typo
5850         (DL_NEED_SYSINFO -> NEED_DL_SYSINFO).  If aux value is not known
5851         print numeric values.
5853 2003-05-12  Thorsten Kukuk  <kukuk@suse.de>
5855         * inet/netinet/igmp.h: Sync with Linux Kernel 2.5.69 and *BSD.
5857 2003-05-14  Andreas Schwab  <schwab@suse.de>
5859         * sysdeps/unix/sysv/linux/ia64/umount.c: New file.
5861 2003-05-14  Jakub Jelinek  <jakub@redhat.com>
5863         * elf/rtld.c (dl_main): For LD_TRACE_PRELINKING print search scope
5864         even if no DT_NEEDED is present.
5866 2003-05-13  David Mosberger  <davidm@hpl.hp.com>
5868         * sysdeps/unix/sysv/linux/ia64/setjmp.S: Fix the fix from
5869         2003-03-27: setjmp is NOT a leaf-routine (due to the call to
5870         __sigjmp_save) so we can't keep the saved unat value in a scratch
5871         register (r16).  Use loc2 instead.
5873 2003-05-13  Ulrich Drepper  <drepper@redhat.com>
5875         * csu/Makefile: Do compile elf-init with PIC flag since in dynamic
5876         binaries it has to be relocatable.
5878         * sysdeps/unix/sysv/linux/waitpid.c: Use waitpid syscall is available.
5880 2003-05-12  Steven Munroe  <sjmunroe@us.ibm.com>
5882         * sysdeps/powerpc/bits/atomic.h
5883         (__arch_compare_and_exchange_bool_8_rel): Define.
5884         (__arch_compare_and_exchange_bool_16_rel): Define.
5885         (__ARCH_REL_INSTR): Define if not already defined.
5886         (__arch_atomic_exchange_and_add_32): Add "memory" to clobber list.
5887         (__arch_atomic_decrement_if_positive_32):
5888         Add "memory" to clobber list.
5889         (__arch_compare_and_exchange_val_32_acq): Remove release sync.
5890         (__arch_compare_and_exchange_val_32_rel): Define.
5891         (__arch_atomic_exchange_32): Remove.
5892         (__arch_atomic_exchange_32_acq): Define.
5893         (__arch_atomic_exchange_32_rel): Define.
5894         (atomic_compare_and_exchange_val_rel): Define.
5895         (atomic_exchange_acq): Use __arch_atomic_exchange_*_acq forms.
5896         (atomic_exchange_rel): Define.
5897         * sysdeps/powerpc/powerpc32/bits/atomic.h
5898         (__arch_compare_and_exchange_bool_32_acq): Remove release sync.
5899         (__arch_compare_and_exchange_bool_32_rel): Define.
5900         (__arch_compare_and_exchange_bool_64_rel): Define.
5901         (__arch_compare_and_exchange_val_64_rel): Define.
5902         (__arch_atomic_exchange_64): Remove.
5903         (__arch_atomic_exchange_64_acq): Define.
5904         (__arch_atomic_exchange_64_rel): Define.
5905         * sysdeps/powerpc/powerpc64/bits/atomic.h
5906         (__arch_compare_and_exchange_bool_32_rel): Define.
5907         (__arch_compare_and_exchange_bool_64_acq): Remove release sync.
5908         (__arch_compare_and_exchange_bool_64_rel): Define.
5909         (__arch_compare_and_exchange_val_64_acq): Remove release sync.
5910         (__arch_compare_and_exchange_val_64_rel): Define.
5911         (__arch_atomic_exchange_64): Remove.
5912         (__arch_atomic_exchange_64_acq): Define.
5913         (__arch_atomic_exchange_64_rel): Define.
5914         (__arch_atomic_exchange_and_add_64): Add "memory" to clobber list.
5915         (__arch_atomic_decrement_if_positive_64):
5916         Add "memory" to clobber list.
5917         [!UP](__ARCH_REL_INSTR): Define as lwsync.
5919 2003-05-11  Andreas Schwab  <schwab@suse.de>
5921         * io/Makefile ($(objpfx)ftwtest.out): Use absolute file names.
5923 2003-05-11  Ulrich Drepper  <drepper@redhat.com>
5925         * time/tst-strftime.c (do_test): Add tests for - flag.
5927 2003-05-11  Jim Meyering  <jim@meyering.net>
5929         * time/strftime.c (my_strftime): Let the `-' (no-pad) flag affect
5930         the space-padded-by-default conversion specifiers, %e, %k, %l.
5932 2003-05-11  Andreas Schwab  <schwab@suse.de>
5934         * sysdeps/generic/sched_setaffinity.c: Fix parameter name.
5936 2003-05-10  Ulrich Drepper  <drepper@redhat.com>
5938         * sysdeps/generic/bits/sched.h: Define cpu_set_t only if not
5939         already defined and when really needed.
5940         * sysdeps/unix/sysv/linux/bits/sched.h: Likewise.
5942 2003-05-09  Thorsten Kukuk  <kukuk@suse.de>
5944         * sysdeps/unix/sysv/linux/netinet/igmp.h: Don't include kernel
5945         headers, add defines from kernel header, move it from here...
5946         * inet/netinet/igmp.h: ... to here.
5947         * inet/Makefile (headers): Add netinet/igmp.h.
5948         * sysdeps/unix/sysv/linux/Makefile: Remove netinet/igmp.h.
5949         * sysdeps/unix/sysv/linux/Dist: Remove netinet/igmp.h.
5951 2003-05-10  Ulrich Drepper  <drepper@redhat.com>
5953         * sysdeps/pthread/lio_listio64.c (lio_listio64): If SIG == NULL,
5954         use dummy sigevent structure with SIGEV_NONE [PR libc/5015].
5956 2003-05-09  Thorsten Kukuk <kukuk@suse.de>
5958         * libio/bits/stdio.h: Sync prototypes with libio/stdio.h
5959         (remove __THROW from possible cancellation points).
5961 2003-05-10  Ulrich Drepper  <drepper@redhat.com>
5963         * posix/sched.h (CPU_SETSIZE): Define.
5965 2003-05-09  Ulrich Drepper  <drepper@redhat.com>
5967         * Makeconfig (gnulib): Remove -lgcc_eh again.
5969         * posix/sched.h: Change prototypes of sched_getaffinity and
5970         sched_setaffinity.  Define CPU_SET, CPU_CLR, CPU_ISSET, and CPU_ZERO.
5971         * sysdeps/generic/sched_getaffinity.c: Adjust definition.
5972         * sysdeps/generic/sched_setaffinity.c: Likewise.
5973         * sysdeps/generic/bits/sched.h: Define __CPU_SETSIZE, __NCPUBITS,
5974         __CPUELT, __CPUMASK, cpu_set_t, __cpu_mask, __CPU_ZERO, __CPU_SET,
5975         __CPU_CLR, and __CPU_ISSET.
5976         * sysdeps/unix/sysv/linux/bits/sched.h: Likewise.
5977         * sysdeps/unix/sysv/linux/sched_getaffinity.c: New file.
5978         * sysdeps/unix/sysv/linux/sched_setaffinity.c: New file.
5980         * include/atomic.h (atomic_exchange_acq): Renamed from atomic_exchange.
5981         (atomic_exchange_rel): New #define.
5982         * sysdeps/ia64/bits/atomic.h: Likewise.
5983         * sysdeps/i386/i486/bits/atomic.h (atomic_exchange_acq): Renamed from
5984         atomic_exchange.
5985         * sysdeps/m68k/m68020/bits/atomic.h: Likewise.
5986         * sysdeps/powerpc/bits/atomic.h: Likewise.
5987         * sysdeps/sparc/sparc32/sparcv9/bits/atomic.h: Likewise.
5988         * sysdeps/sparc/sparc64/bits/atomic.h: Likewise.
5989         * sysdeps/x86_64/bits/atomic.h: Likewise.
5990         * csu/tst-atomic.c: Use atomic_exchange_acq instead of atomic_exchange.
5992         * sysdeps/unix/sysv/linux/x86_64/get_clockfreq.c: New file.
5994 2003-05-08  Ulrich Drepper  <drepper@redhat.com>
5996         * malloc/thread-m.h: Remove special handling of thread_atfork if
5997         HAVE_register_atfork_malloc is defined.
5999 2003-05-07  Andreas Jaeger  <aj@suse.de>
6001         * sysdeps/unix/sysv/linux/x86_64/syscall.S: Add DWARF2 unwind
6002         information.
6004 2003-05-06  Ulrich Drepper  <drepper@redhat.com>
6006         * libio/oldiofdopen.c (_IO_old_fdopen): Use _IO_old_init not _IO_init.
6007         * libio/oldiofopen.c (_IO_old_fopen): Likewise.
6008         * libio/libioP.h: Declare _IO_old_init.
6009         * libio/genops.c (_IO_no_init): Split in two.  New function
6010         _IO_old_init.
6012 2003-05-05  Ulrich Drepper  <drepper@redhat.com>
6014         * sysdeps/generic/enbl-secure.c (__libc_enable_secure_decided): New
6015         variable.
6016         (__libc_init_secure): Don't do anything if __libc_enable_secure_decided
6017         is nonzero.
6018         * include/unistd.h: Declare __libc_enable_secure_decided.
6019         * elf/dl-support.c (_dl_aux_init): Recognize AT_UID, AT_EUID, AT_GID,
6020         and AT_EGID.  If all found, set __libc_enable_secure and
6021         __libc_enable_secure_decided.
6023         * sysdeps/generic/libc-start.c [!SHARED]: Call
6024         __libc_check_standard_fds after __libc_init_first.
6026 2003-05-05  Roland McGrath  <roland@redhat.com>
6028         * Makerules (common-before-compile): New variable.
6029         ($(common-objpfx)%.make): Depend on that instead of $(before-compile).
6030         ($(common-objpfx)%.h $(common-objpfx)%.h.d): Likewise.  Move this rule
6031         to after all setting of before-compile.
6033 2003-05-05  Jakub Jelinek  <jakub@redhat.com>
6035         * sysdeps/ia64/bits/atomic.h (__arch_compare_and_exchange_val_8_acq,
6036         __arch_compare_and_exchange_val_16_acq): Cast 0 to mem's type.
6037         * sysdeps/powerpc/powerpc32/bits/atomic.h
6038         (__arch_compare_and_exchange_val_64_acq): Likewise.
6039         * sysdeps/sparc/sparc32/sparcv9/bits/atomic.h
6040         (__arch_compare_and_exchange_val_8_acq,
6041         __arch_compare_and_exchange_val_16_acq,
6042         __arch_compare_and_exchange_val_64_acq): Likewise.
6043         * sysdeps/sparc/sparc64/bits/atomic.h
6044         (__arch_compare_and_exchange_val_8_acq,
6045         __arch_compare_and_exchange_val_16_acq): Likewise.
6046         * sysdeps/s390/bits/atomic.h (__arch_compare_and_exchange_val_8_acq,
6047         __arch_compare_and_exchange_val_16_acq,
6048         __arch_compare_and_exchange_val_64_acq): Likewise.
6049         * sysdeps/unix/sysv/linux/sh/bits/atomic.h
6050         (__arch_compare_and_exchange_val_64_acq): Likewise.
6051         * sysdeps/s390/s390-64/backtrace.c (__backtrace): Add cast to shut
6052         up warning.
6053         * sysdeps/s390/fpu/fegetenv.c (fegetenv): Likewise.
6055         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h
6056         (INLINE_SYSCALL, INTERNAL_SYSCALL_DIRECT, INTERNAL_SYSCALL_SVC0):
6057         Return long instead of int.
6058         (INTERNAL_SYSCALL_ERROR_P): Cast val to unsigned long, replace
6059         0xfffff001u with -4095UL.
6061 2003-05-05  Andreas Jaeger  <aj@suse.de>
6063         * sysdeps/x86_64/fpu_control.h: New from i386.
6065         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (__NR_semtimedop):
6066         Define if not defined.
6068         * sunrpc/Makefile (generated-dirs): New variable.
6069         * resolv/Makefile (generated): New variable.
6071 2003-05-04  Roland McGrath  <roland@redhat.com>
6073         * csu/Makefile ($(csu-dummies) target rule): Don't use a temp C file.
6074         Depend on $(before-compile).
6076         * csu/Makefile ($(objpfx)crt%.o): Replace implicit rule with a static
6077         pattern rule.  The implicit rule could be ruled out when $(objpfx)
6078         didn't exist at the time of its consideration (ugh!).
6080         * Makerules (+make-deps): Fix target matching.
6081         Use $(sed-remove-dotdot).
6083 2003-05-03  Ulrich Drepper  <drepper@redhat.com>
6085         * nscd/nscd.c (main): Parse config file right after parsing
6086         parameters.  Then, if get_stats is true, call receive_print_stats.
6087         Drop parameter from nscd_init call.
6088         (get_stats): New variable.
6089         (parse_opt): Set get_stats, don't call receive_print_stats here.
6090         * nscd/nscd.h: Declare dbs, stat_user, and stat_uid.  Adjust nscd_init
6091         prototype.
6092         * nscd/connections.c (stat_user, stat_uid): New variables.
6093         (dbs): Make global.
6094         (nscd_init): Don't read configuration file here.  Drop parameter.
6095         (handle_request): Cleanup handling of non-database lookup requests.
6096         * nscd/nscd_conf.c (nscd_parse_file): Recognize stat-user entry.
6097         Get UID of the specified user.  Use xstrdup instead of strdup.
6098         * nscd/nscd_stat.c (receive_print_stats): Check UID.  If not zero,
6099         check stat_user.
6100         * nscd/Makefile (nscd-modules): Add xstrdup.
6101         * nscd/nscd.conf: Document stat-user entry.
6103 2003-05-03  H.J. Lu  <hongjiu.lu@intel.com>
6105         * sysdeps/unix/sysv/linux/ia64/sysdep.h (__NR_semtimedop): Define
6106         if not defined.
6108 2003-04-22  Roland McGrath  <roland@redhat.com>
6110         * elf/elf.h (AT_SYSINFO_EHDR): New macro, replaces AT_SYSINFO_EH_FRAME.
6111         * sysdeps/generic/ldsodefs.h (struct rtld_global): Remove
6112         dl_sysinfo_eh_frame member, add dl_sysinfo_dso member instead.
6113         * elf/dl-support.c: Update defn.
6114         * sysdeps/generic/libc-start.c: Don't call __register_frame_info_bases.
6115         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start) [NEED_DL_SYSINFO]:
6116         Set GL(dl_sysinfo_dso) from AT_SYSINFO_EHDR.
6117         (_dl_show_auxv): Grok AT_SYSINFO_EHDR, not AT_SYSINFO_EH_FRAME.
6118         * elf/rtld.c (dl_main) [NEED_DL_SYSINFO]: If GL(dl_sysinfo_dso) is
6119         set, set up a link_map for the preloaded, prelinked object.
6121 2003-05-03  Roland McGrath  <roland@redhat.com>
6123         * sysdeps/gnu/Makefile (generated): Append errlist-compat.c here, ...
6124         * stdio-common/Makefile: ... not here.
6126         * csu/Makefile ($(objpfx)initfini.s): Depend on $(before-compile).
6127         * sysdeps/gnu/Makefile ($(objpfx)errlist-compat.c): Likewise.
6129 2003-05-02  Ulrich Drepper  <drepper@redhat.com>
6131         * sysdeps/unix/sysv/linux/s390/semtimedop.c: New file.
6133         * sysdeps/unix/sysv/linux/alpha/ipc_priv.h (IPCOP_semtimedop): Define.
6135         * sysdeps/generic/dl-fptr.c (_dl_make_fptr): Use 0 not NULL for
6136         comparing ftab elements.
6137         (_dl_unmap): Fix typo in test.
6138         (_dl_make_fptr): Fix typos introduced in last change.
6140         * sysdeps/generic/dl-fptr.c: Put back one optimization from the
6141         original patch.  Use non-exported symbols.  Mark translatable
6142         strings.  Pretty printing.
6144 2003-05-02  Roland McGrath  <roland@redhat.com>
6146         * Makerules (do-stamp): Do $(make-target-directory).
6148 2003-04-07  H.J. Lu  <hjl@gnu.org>
6150         * sysdeps/generic/dl-fptr.c: Modify to remove the lock.
6152 2003-04-03  H.J. Lu  <hjl@gnu.org>
6154         * sysdeps/ia64/dl-fptr.c: Moved to ...
6155         * sysdeps/generic/dl-fptr.c: Here.
6157         * sysdeps/generic/dl-fptr.h: New.
6158         * sysdeps/ia64/dl-fptr.h: New.
6160         * sysdeps/ia64/dl-symaddr.c: Moved to ...
6161         * sysdeps/generic/dl-symaddr.c: here.
6163         * sysdeps/ia64/dl-machine.h: Include <dl-fptr.h>.
6164         (IA64_BOOT_FPTR_TABLE_LEN): Removed.
6165         (ia64_fdesc): Likewise.
6166         (ia64_fdesc_table): Likewise.
6167         (__ia64_make_fptr): Likewise.
6168         (__ia64_init_bootstrap_fdesc_table): Replace __ia64_boot_fptr_table
6169         with _dl_boot_fptr_table.
6170         (elf_machine_runtime_setup): Replace `struct ia64_fdesc' with
6171         `struct fdesc'.
6172         (elf_machine_rela): Replace __ia64_make_fptr with _dl_make_fptr.
6174 2003-05-01  Roland McGrath  <roland@redhat.com>
6176         * sysdeps/generic/bp-thunks.h: Protect includes with [!__ASSEMBLER__].
6177         * sysdeps/unix/sysv/linux/i386/bp-thunks.h: Likewise.
6179         * sysdeps/unix/sysv/linux/Makefile ($(objpfx)syscall-%.h):
6180         Use $(make-target-directory).
6181         * sysdeps/unix/Makefile ($(objpfx)stub-syscalls.c): Likewise.
6183         * Makerules (compile-mkdep-flags): New variable, pass -MD -MF $@.d.
6184         (compile-command.S): Don't use ifndef.  Append $(compile-mkdep-flags).
6185         (compile-command.s, compile-command.c): Likewise.
6186         ($(objpfx)%.d): All such pattern rules removed.
6187         ($(+sysdir_pfx)sysd-rules): Don't generate them.
6188         ($(common-objpfx)dummy.d): Target removed.
6189         (make-dummy-dep): Variable removed.
6190         (generate-md5): Likewise.
6191         (%.d: %.dt): New pattern rule.
6192         (+depfiles): Use $(wildcard) function to get just existing *.d files
6193         and .d files for existing *.dt files.
6194         (common-clean): Remove all *.d and *.dt files.
6195         (before-compile): Add $(objpfx). when it doesn't exist,
6196         regardless of $(no_deps).
6197         * elf/rtld-Rules ($(objpfx)rtld-%.d): All such pattern rules removed.
6198         (rtld-depfiles): Use .os.d instead of .d names.
6199         Include existing *.d files and .d files for existing *.dt files.
6201         * Makerules ($(common-objpfx)%.make): Protect with [! subdir].
6202         Use -MD, -MT and -MF flags instead of SUNPRO_DEPENDENCIES variable.
6204         * sysdeps/unix/Makefile ($(common-objpfx)s-%.d): Remove compat.h hack.
6205         Do s-*.d includes only if we have some syscall routines in this subdir.
6207         * include/libc-symbols.h (libc_freeres_ptr): Use %nobits instead of
6208         @nobits.  The former is accepted by gas on any ELF platform.
6210 2003-05-01  Ulrich Drepper  <drepper@redhat.com>
6212         * sysdeps/unix/sysv/linux/semtimedop.c: New file.
6214         * malloc/malloc.c (mSTATs): Call ptmalloc_init if necessary.
6216 2003-04-29  Andreas Schwab  <schwab@suse.de>
6218         * string/test-strcat.c (do_one_test): Fix attribute name.
6220 2003-04-30  Alexandre Oliva  <aoliva@redhat.com>
6222         * sysdeps/unix/sysv/linux/mips/sys/ucontext.h (ucontext): Make
6223         uc_flags long for all ABIs.
6225 2003-04-30  Andreas Jaeger  <aj@suse.de>
6227         * sysdeps/unix/sysv/linux/x86_64/sys/debugreg.h
6228         (DR_CONTROL_RESERVED): Use correct value for 64-bit.
6229         Reported by Andrew Derrick Balsa <andrebalsa@mailingaddress.org>.
6230         Add bi-arch support.
6232 2003-04-30  Ulrich Drepper  <drepper@redhat.com>
6234         * malloc/malloc.c (mEMALIGn): Define alias __memalign_internal.
6235         (__posix_memalign): Use __memalign_internal instead of memalign.
6237 2003-04-29  Roland McGrath  <roland@redhat.com>
6239         * configure.in: Search for AUTOCONF unconditionally.
6240         Just don't complain about missing it under --without-cvs.
6242         * include/libc-symbols.h (__symbol_set_attribute): New macro,
6243         give hidden for [SHARED] and weak for [! SHARED].
6244         (symbol_set_declare): Use that.  Never need weak_extern these days.
6245         * Makerules ($(common-objpfx)shlib.lds): Go back to using PROVIDE.
6246         Depend on $(..)Makerules.
6248 2003-04-29  Ulrich Drepper  <drepper@redhat.com>
6250         * sysdeps/unix/sysv/linux/ifaddrs.c (getifaddrs): Use __ protected
6251         variants of socket, bind, recvmsg, and sendto.
6253         * sysdeps/i386/fpu/ftestexcept.c: Also check SSE status word.
6255         * include/signal.h: Use libc_hidden_proto for sigaddset and sigdelset.
6256         * signal/sigaddset.c: Add libc_hidden_def.
6257         * signal/sigdelset.c: Likewise.
6259 2003-04-29  Jakub Jelinek  <jakub@redhat.com>
6261         * sysdeps/i386/i486/string-inlines.c (__memcpy_g, __strchr_g): Move
6262         to the end of the file.
6264         * configure.in: Change __oline__ to $LINENO.
6265         (HAVE_BUILTIN_REDIRECTION): New check.
6266         * config.h.in (HAVE_BUILTIN_REDIRECTION): Add.
6267         * include/libc-symbols.h (libc_hidden_builtin_proto,
6268         libc_hidden_builtin_def, libc_hidden_builtin_weak,
6269         libc_hidden_builtin_ver): Define.
6270         * include/string.h (memchr, memcpy, memmove, memset, strcat, strchr,
6271         strcmp, strcpy, strcspn, strlen, strncmp, strncpy, strpbrk, strrchr,
6272         strspn, strstr): Add libc_hidden_builtin_proto.
6273         * intl/plural.y: Include string.h.
6274         * sysdeps/alpha/alphaev6/memchr.S (memchr): Add
6275         libc_hidden_builtin_def.
6276         * sysdeps/alpha/alphaev6/memcpy.S (memcpy): Likewise.
6277         * sysdeps/alpha/alphaev6/memset.S (memset): Likewise.
6278         * sysdeps/alpha/alphaev67/strcat.S (strcat): Likewise.
6279         * sysdeps/alpha/alphaev67/strchr.S (strchr): Likewise.
6280         * sysdeps/alpha/alphaev67/strlen.S (strlen): Likewise.
6281         * sysdeps/alpha/alphaev67/strrchr.S (strrchr): Likewise.
6282         * sysdeps/alpha/memchr.S (memchr): Likewise.
6283         * sysdeps/alpha/memset.S (memset): Likewise.
6284         * sysdeps/alpha/strcat.S (strcat): Likewise.
6285         * sysdeps/alpha/strchr.S (strchr): Likewise.
6286         * sysdeps/alpha/strcmp.S (strcmp): Likewise.
6287         * sysdeps/alpha/strcpy.S (strcpy): Likewise.
6288         * sysdeps/alpha/strlen.S (strlen): Likewise.
6289         * sysdeps/alpha/strncmp.S (strncmp): Likewise.
6290         * sysdeps/alpha/strncpy.S (strncpy): Likewise.
6291         * sysdeps/alpha/strrchr.S (strrchr): Likewise.
6292         * sysdeps/arm/memset.S (memset): Likewise.
6293         * sysdeps/arm/strlen.S (strlen): Likewise.
6294         * sysdeps/generic/memchr.c (memchr): Likewise.
6295         * sysdeps/generic/memcpy.c (memcpy): Likewise.
6296         * sysdeps/generic/memmove.c (memmove): Likewise.
6297         * sysdeps/generic/memset.c (memset): Likewise.
6298         * sysdeps/generic/strcat.c (strcat): Likewise.
6299         * sysdeps/generic/strchr.c (strchr): Likewise.
6300         * sysdeps/generic/strcmp.c (strcmp): Likewise.
6301         * sysdeps/generic/strcpy.c (strcpy): Likewise.
6302         * sysdeps/generic/strcspn.c (strcspn): Likewise.
6303         * sysdeps/generic/strlen.c (strlen): Likewise.
6304         * sysdeps/generic/strncmp.c (strncmp): Likewise.
6305         * sysdeps/generic/strncpy.c (strncpy): Likewise.
6306         * sysdeps/generic/strpbrk.c (strpbrk): Likewise.
6307         * sysdeps/generic/strrchr.c (strrchr): Likewise.
6308         * sysdeps/generic/strspn.c (strspn): Likewise.
6309         * sysdeps/generic/strstr.c (strstr): Likewise.
6310         * sysdeps/i386/i486/strcat.S (strcat): Likewise.
6311         * sysdeps/i386/i486/strlen.S (strlen): Likewise.
6312         * sysdeps/i386/i586/memcpy.S (memcpy): Likewise.
6313         * sysdeps/i386/i586/memset.S (memset): Likewise.
6314         * sysdeps/i386/i586/strchr.S (strchr): Likewise.
6315         * sysdeps/i386/i586/strcpy.S (strcpy): Likewise.
6316         * sysdeps/i386/i586/strlen.S (strlen): Likewise.
6317         * sysdeps/i386/i686/memcpy.S (memcpy): Likewise.
6318         * sysdeps/i386/i686/memmove.S (memmove): Likewise.
6319         * sysdeps/i386/i686/memset.S (memset): Likewise.
6320         * sysdeps/i386/i686/strcmp.S (strcmp): Likewise.
6321         * sysdeps/i386/memchr.S (memchr): Likewise.
6322         * sysdeps/i386/memset.c (memset): Likewise.
6323         * sysdeps/i386/strchr.S (strchr): Likewise.
6324         * sysdeps/i386/strcspn.S (strcspn): Likewise.
6325         * sysdeps/i386/strlen.c (strlen): Likewise.
6326         * sysdeps/i386/strpbrk.S (strpbrk): Likewise.
6327         * sysdeps/i386/strrchr.S (strrchr): Likewise.
6328         * sysdeps/i386/strspn.S (strspn): Likewise.
6329         * sysdeps/ia64/memchr.S (memchr): Likewise.
6330         * sysdeps/ia64/memcpy.S (memcpy): Likewise.
6331         * sysdeps/ia64/memmove.S (memmove): Likewise.
6332         * sysdeps/ia64/memset.S (memset): Likewise.
6333         * sysdeps/ia64/strcat.S (strcat): Likewise.
6334         * sysdeps/ia64/strchr.S (strchr): Likewise.
6335         * sysdeps/ia64/strcmp.S (strcmp): Likewise.
6336         * sysdeps/ia64/strcpy.S (strcpy): Likewise.
6337         * sysdeps/ia64/strlen.S (strlen): Likewise.
6338         * sysdeps/ia64/strncmp.S (strncmp): Likewise.
6339         * sysdeps/ia64/strncpy.S (strncpy): Likewise.
6340         * sysdeps/m68k/memchr.S (memchr): Likewise.
6341         * sysdeps/m68k/strchr.S (strchr): Likewise.
6342         * sysdeps/mips/mips64/memcpy.S (memcpy): Likewise.
6343         * sysdeps/mips/mips64/memset.S (memset): Likewise.
6344         * sysdeps/mips/memcpy.S (memcpy): Likewise.
6345         * sysdeps/mips/memset.S (memset): Likewise.
6346         * sysdeps/powerpc/powerpc32/memset.S (memset): Likewise.
6347         * sysdeps/powerpc/powerpc32/strchr.S (strchr): Likewise.
6348         * sysdeps/powerpc/powerpc32/strcmp.S (strcmp): Likewise.
6349         * sysdeps/powerpc/powerpc32/strcpy.S (strcpy): Likewise.
6350         * sysdeps/powerpc/powerpc32/strlen.S (strlen): Likewise.
6351         * sysdeps/powerpc/powerpc64/memcpy.S (memcpy): Likewise.
6352         * sysdeps/powerpc/powerpc64/memset.S (memset): Likewise.
6353         * sysdeps/powerpc/powerpc64/strchr.S (strchr): Likewise.
6354         * sysdeps/powerpc/powerpc64/strcmp.S (strcmp): Likewise.
6355         * sysdeps/powerpc/powerpc64/strcpy.S (strcpy): Likewise.
6356         * sysdeps/powerpc/powerpc64/strlen.S (strlen): Likewise.
6357         * sysdeps/powerpc/strcat.c (strcat): Likewise.
6358         * sysdeps/sparc/sparc32/memchr.S (memchr): Likewise.
6359         * sysdeps/sparc/sparc32/memcpy.S (memcpy): Likewise.
6360         * sysdeps/sparc/sparc32/memset.S (memset): Likewise.
6361         * sysdeps/sparc/sparc32/strcat.S (strcat): Likewise.
6362         * sysdeps/sparc/sparc32/strchr.S (strchr, strrchr): Likewise.
6363         * sysdeps/sparc/sparc32/strcmp.S (strcmp): Likewise.
6364         * sysdeps/sparc/sparc32/strcpy.S (strcpy): Likewise.
6365         * sysdeps/sparc/sparc32/strlen.S (strlen): Likewise.
6366         * sysdeps/sparc/sparc64/sparcv9b/memcpy.S (memcpy, memmove): Likewise.
6367         * sysdeps/sparc/sparc64/memchr.S (memchr): Likewise.
6368         * sysdeps/sparc/sparc64/memcpy.S (memcpy, memmove): Likewise.
6369         * sysdeps/sparc/sparc64/memset.S (memset): Likewise.
6370         * sysdeps/sparc/sparc64/strcat.S (strcat): Likewise.
6371         * sysdeps/sparc/sparc64/strchr.S (strchr, strrchr): Likewise.
6372         * sysdeps/sparc/sparc64/strcmp.S (strcmp): Likewise.
6373         * sysdeps/sparc/sparc64/strcpy.S (strcpy): Likewise.
6374         * sysdeps/sparc/sparc64/strcspn.S (strcspn): Likewise.
6375         * sysdeps/sparc/sparc64/strlen.S (strlen): Likewise.
6376         * sysdeps/sparc/sparc64/strncmp.S (strncmp): Likewise.
6377         * sysdeps/sparc/sparc64/strncpy.S (strncpy): Likewise.
6378         * sysdeps/sparc/sparc64/strpbrk.S (strpbrk): Likewise.
6379         * sysdeps/sparc/sparc64/strspn.S (strspn): Likewise.
6380         * sysdeps/sh/memcpy.S (memcpy): Likewise.
6381         * sysdeps/sh/memset.S (memset): Likewise.
6382         * sysdeps/sh/strlen.S (strlen): Likewise.
6383         * sysdeps/s390/s390-32/memchr.S (memchr): Likewise.
6384         * sysdeps/s390/s390-32/memcpy.S (memcpy): Likewise.
6385         * sysdeps/s390/s390-32/memset.S (memset): Likewise.
6386         * sysdeps/s390/s390-32/strcmp.S (strcmp): Likewise.
6387         * sysdeps/s390/s390-32/strcpy.S (strcpy): Likewise.
6388         * sysdeps/s390/s390-32/strncpy.S (strncpy): Likewise.
6389         * sysdeps/s390/s390-64/memchr.S (memchr): Likewise.
6390         * sysdeps/s390/s390-64/memcpy.S (memcpy): Likewise.
6391         * sysdeps/s390/s390-64/memset.S (memset): Likewise.
6392         * sysdeps/s390/s390-64/strcmp.S (strcmp): Likewise.
6393         * sysdeps/s390/s390-64/strcpy.S (strcpy): Likewise.
6394         * sysdeps/s390/s390-64/strncpy.S (strncpy): Likewise.
6395         * sysdeps/x86_64/memcpy.S (memcpy): Likewise.
6396         * sysdeps/x86_64/memset.S (memset): Likewise.
6397         * sysdeps/x86_64/strcat.S (strcat): Likewise.
6398         * sysdeps/x86_64/strchr.S (strchr): Likewise.
6399         * sysdeps/x86_64/strcmp.S (strcmp): Likewise.
6400         * sysdeps/x86_64/strcpy.S (strcpy): Likewise.
6401         * sysdeps/x86_64/strcspn.S (strcspn): Likewise.
6402         * sysdeps/x86_64/strlen.S (strlen): Likewise.
6403         * sysdeps/x86_64/strspn.S (strspn): Likewise.
6404         * string/string-inlines.c: Move...
6405         * sysdeps/generic/string-inlines.c: ...here.
6406         (__memcpy_g, __strchr_g): Remove.
6407         (__NO_INLINE__): Define before including <string.h>,
6408         undefine after.  Include bits/string.h and bits/string2.h.
6409         * sysdeps/i386/i486/string-inlines.c: New file.
6410         * sysdeps/i386/string-inlines.c: New file.
6411         * sysdeps/i386/i486/Versions: Remove.
6412         All GLIBC_2.1.1 symbols moved...
6413         * sysdeps/i386/Versions (libc): ...here.
6415 2003-04-29  Ulrich Drepper  <drepper@redhat.com>
6417         * sysdeps/i386/fpu/Makefile: New file.
6418         * sysdeps/i386/fpu/fedisblxcpt.c: Also set SSE control word.
6419         * sysdeps/i386/fpu/feenablxcpt.c: Likewise.
6420         * sysdeps/i386/fpu/feholdexcpt.c: Likewise.
6421         * sysdeps/i386/fpu/fesetround.c: Also set SSE rounding mode
6422         [PR libc/4987].
6424 2003-04-28  Ulrich Drepper  <drepper@redhat.com>
6426         * nscd/nscd_getgr_r.c: Compact code a bit.  Add some __builtin_expect.
6427         * nscd/nscd_getpw_r.c: Likewise.
6428         * nscd/nscd_gethst_r.c: Likewise.
6430 2003-04-27  Ulrich Drepper  <drepper@redhat.com>
6432         * nscd/pwdcache.c: Initialize .version element in result.
6433         * nscd/grpcache.c: Likewise.
6434         * nscd/pwdcache.c: Likewise.
6436 2003-04-27  Andreas Schwab  <schwab@suse.de>
6438         * Makeconfig ($(common-objpfx)sysd-sorted): Fix for running in
6439         subdirectory.
6441 2003-04-27  Andreas Schwab  <schwab@suse.de>
6443         * sysdeps/unix/sysv/linux/m68k/semtimedop.S: New file.
6445 2003-04-27  Ulrich Drepper  <drepper@redhat.com>
6447         * nscd/connections.c (client_queued): New variable.
6448         (nscd_run): Revamp the loop.  Don't call poll except for cleanup
6449         threads.  Keep track of the number of delays caused because of busy
6450         worker threads.
6451         * nscd/nscd.h: Declare client_queued.
6452         * nscd/nscd_stat.c: Transmit and print client_queued information.
6454         * locale/programs/locale.c (show_info): Use '\177' instead of CHAR_MAX.
6456         * Makerules ($(common-objpfx)shlib.lds): Don't use PROVIDE to
6457         define __start_libc_freeres_ptrs and __stop___libc_freeres_ptrs.
6459 2003-04-26  Ulrich Drepper  <drepper@redhat.com>
6461         * elf/dl-close.c [USE_TLS && TLS_TCB_AT_TP] (_dl_close): Reimplement
6462         tracking of freed memory in static TLS block.
6463         * elf/Makefile: Add rules to build and run tst-tls13.
6464         * elf/tst-tls13.c: New file.
6465         * elf/tst-tlsmod13.c: New file.
6466         * elf/tst-tlsmod13a.c: New file.
6468         * elf/tst-tls8.c: Adjust types of variables to avoid warnings.
6470         * elf/dl-reloc.c: Pretty printing.
6472 2003-04-26  Roland McGrath  <roland@redhat.com>
6474         * Makerules ($(common-objpfx)shlib.lds): New target.
6475         (common-generated): Add it.
6476         (build-shlib, build-module): Use that instead of generating every time.
6477         ($(common-objpfx)libc.so): Depend on it.
6478         (lib%.so rule): Likewise.
6479         (build-module-helper-objlist): Remove %.lds.
6480         (LDSEDCMD-c.so): Variable removed.
6481         * iconvdata/extra-module.mk ($(objpfx)$(mod).so):
6482         Depend on $(common-objpfx)shlib.lds.
6483         * dlfcn/Makefile ($(test-modules)): Likewise.
6485 2003-04-26  Roland McGrath  <roland@frob.com>
6487         * sysdeps/mach/hurd/tmpfile.c: Remove USE_IN_LIBIO conditionals.
6489 2003-04-26  Andreas Schwab  <schwab@suse.de>
6491         * elf/dl-close.c (remove_slotinfo): Fix missing parens.
6493 2003-04-25  Ulrich Drepper  <drepper@redhat.com>
6495         * nscd/cache.c (cache_search): Keep track of how many chain links
6496         we searched and update table statistics.
6497         (cache_add): Keep track of how many values are in the table.
6498         (prune_cache): Likewise.  Keep track of locking success.
6499         Print messages about removed entries in separate pass.
6500         * nscd/connections.c (handle_request): Don't print debug message here.
6501         The caller will do it.  Keep track of locking success.
6502         (nscd_run): Print debug message.  Also print PID of the client process.
6503         * nscd/nscd.c (start_time): New variable.
6504         (main): Remember start time.
6505         * nscd/nscd.h: Declare start_time.
6506         (struct database): Add more members for new statistics.
6507         * nscd/nscd_stat.c: Add support for sending, receiving, and printing
6508         of new statistics.
6510         * sysdeps/posix/getaddrinfo.c: Include <stdbool.h>.
6512 2003-04-22  Jakub Jelinek  <jakub@redhat.com>
6514         * include/link.h (NO_TLS_OFFSET): Define to 0 if not defined.
6515         * elf/dl-close.c (_dl_close): Use NO_TLS_OFFSET.
6516         * elf/dl-object.c (_dl_new_object): Initialize l_tls_offset to
6517         NO_TLS_OFFSET.
6518         * elf/rtld.c (_dl_start_final, _dl_start): Likewise.
6519         * elf/dl-reloc.c (CHECK_STATIC_TLS): Use NO_TLS_OFFSET.
6520         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Likewise.
6521         * sysdeps/powerpc/dl-tls.h (TLS_TPREL_VALUE): Don't subtract
6522         TLS_TCB_SIZE.
6524 2003-04-24  Ulrich Drepper  <drepper@redhat.com>
6526         * nss/getent.c: Implement alternative host database lookup via
6527         getaddrinfo.
6529         * include/ifaddrs.h: New file.
6530         * include/netdb.h: Move definitions of AI_V4MAPPED, AI_ALL, and
6531         AI_ADDRCONFIG...
6532         * resolv/netdb.h: ...here.
6533         * sysdeps/gnu/ifaddrs.c. Use libc_hidden_def where appropriate.
6534         * sysdeps/unix/sysv/linux/ifaddrs.c: Likewise.
6535         * sysdeps/posix/getaddrinfo.c: Implement AI_V4MAPPED, AI_ALL, and
6536         AI_ADDRCONFIG.
6538 2003-04-24  Roland McGrath  <roland@redhat.com>
6540         * elf/dl-reloc.c (_dl_allocate_static_tls): Add internal_function.
6542 2003-04-24  Jakub Jelinek  <jakub@redhat.com>
6544         * elf/dl-reloc.c (allocate_static_tls): Rename to...
6545         (_dl_allocate_static_tls): ... this function.  No longer static.
6546         (CHECK_STATIC_TLS): Adjust.
6547         * sysdeps/generic/ldsodefs.h (_dl_allocate_static_tls): New prototype.
6548         * sysdeps/powerpc/powerpc32/dl-machine.h (__process_machine_rela):
6549         Add SYM_MAP argument.
6550         (elf_machine_rela): Adjust caller.  Declare SYM_MAP unconditionally.
6551         Check if SYM_MAP != NULL for R_PPC_DTPREL32.  Only handle 32-bit
6552         TLS relocs here.  #ifdef out relocs which never appear in
6553         .gnu.conflict section from dl-conflict.c processing.
6554         * sysdeps/powerpc/powerpc32/dl-machine.c (__process_machine_rela):
6555         Add SYM_MAP argument.  Handle 16-bit TLS relocs here.
6557         * sysdeps/s390/s390-32/dl-machine.h (elf_machine_rela): #ifdef
6558         out relocs which never appear in .gnu.conflict section from
6559         dl-conflict.c processing.
6560         * sysdeps/s390/s390-64/dl-machine.h (elf_machine_rela): Likewise.
6561         * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Likewise.
6562         * sysdeps/i386/dl-machine.h (elf_machine_rela): Likewise.
6563         Use r_type in RESOLVE macro.
6565 2003-04-23  Ulrich Drepper  <drepper@redhat.com>
6567         * nis/ypclnt.c (__yp_bind): Expect YPDB parameter to always be !=
6568         NULL.  Remove code made redundant by this assumption.
6569         (__yp_unbind): Add call to free.  Adjust all callers.
6571         * nis/ypclnt.c (yp_all): Free the dom_binding object after
6572         unbinding it.
6574         * grp/initgroups.c (getgrouplist): Don't copy too much into the
6575         user buffer if more groups are found than fit into it.
6577         * nis/nss_nis/nis-initgroups.c (_nss_nis_initgroups_dyn): Use
6578         extend_alloca.
6580 2003-04-23  Jakub Jelinek  <jakub@redhat.com>
6582         * sysdeps/posix/getaddrinfo.c (gaih_inet): Check for rc == ERANGE,
6583         not rc == errno.  Use extend_alloca.
6585         * elf/tst-tls12.c (main): Fix declaration.
6586         * elf/tst-tls10.c (dummy): Make hidden instead of static.
6587         * elf/tst-tlsmod7.c (dummy): Likewise.
6588         * elf/tst-tlsmod8.c (dummy): Likewise.
6589         * elf/tst-tlsmod9.c (dummy): Likewise.
6591 2003-04-22  Roland McGrath  <roland@redhat.com>
6593         * sysdeps/unix/sysv/linux/not-cancel.h: Put parens around macro args.
6594         (open_not_cancel): Make last argument non-optional.
6595         * sysdeps/generic/check_fds.c (check_one_fd): Update caller.
6596         * sysdeps/unix/sysv/linux/gethostid.c (gethostid): Likewise.
6597         * iconv/gconv_cache.c (__gconv_load_cache): Likewise.
6599         * include/tls.h: Protect against multiple inclusion.
6601 2003-04-22  Ulrich Drepper  <drepper@redhat.com>
6603         * nscd/nscd-client.h: Add declaration for __nscd_open_socket.
6604         * nscd/nscd_gethst_r.c (__nscd_open_socket): Renamed from
6605         open_socket.  Not static anymore.
6606         (nscd_gethst_r): Use __nscd_open_socket.
6607         * nscd/nscd_getgr_r.c (open_socket): Removed.
6608         (nscd_getgr_r): Use __nscd_open_socket.
6609         * nscd/nscd_getpw_r.c (open_socket): Removed.
6610         (nscd_getpw_r): Use __nscd_open_socket.
6612         * nscd/nscd.c (main): Change type of fdn to long int and use strtol.
6613         * nscd/connections.c (handle_request): Add cast to avoid warning.
6615 2003-04-21  Ulrich Drepper  <drepper@redhat.com>
6617         * signal/sigfillset.c: Moved to...
6618         * sysdeps/generic/sigfillset.c: ...here.  If SIGCANCEL is defined
6619         do not set the corresponding bit.
6621         * sysdeps/unix/sysv/linux/sigprocmask.c: Prevent changing mask for
6622         SIGCANCEL.
6623         * sysdeps/unix/sysv/linux/alpha/bits/siginfo.h: Define SI_TKILL.
6624         * sysdeps/unix/sysv/linux/bits/siginfo.h: Define SI_TKILL.
6625         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Define SI_TKILL.
6626         * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Define SI_TKILL.
6627         * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Define SI_TKILL.
6629 2003-04-20  Ulrich Drepper  <drepper@redhat.com>
6631         * sysdeps/unix/sysv/linux/not-cancel.h (open_not_cancel): Cast
6632         first syscall parameter to const char*.
6634 2003-04-19  Ulrich Drepper  <drepper@redhat.com>
6636         * intl/Makefile ($(objpfx)msgs.h): Use C locale for sed run.
6638         * configure.in: Add AC_PROG_CXX.
6639         * config.make.in (CXX): Define.
6641         * sysdeps/i386/i686/hp-timing.h (HP_TIMING_PRINT): Change type of
6642         __len to size_t to avoid warnings.
6644 2003-04-18  Jes Sorensen  <jes@wildopensource.com>
6646         * libc/sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Sync with Linux
6647         2.5.67.
6648         * libc/sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Likewise.
6650 2003-04-19  Ulrich Drepper  <drepper@redhat.com>
6652         * stdlib/cxa_finalize.c (__cxa_finalize): Don't call
6653         UNREGISTER_ATFORK if d == NULL.
6655         * catgets/nl_types.h: Remove __THROW marker from cancellation points.
6656         * dirent/dirent.h: Likewise.
6657         * dlfcn/dlfcn.h: Likewise.
6658         * grp/grp.h: Likewise.
6659         * iconv/iconv.h: Likewise.
6660         * io/fcntl.h: Likewise.
6661         * io/ftw.h: Likewise.
6662         * libio/stdio.h: Likewise.
6663         * misc/sys/mman.h: Likewise.
6664         * misc/sys/select.h: Likewise.
6665         * misc/sys/syslog.h: Likewise.
6666         * misc/sys/uio.h: Likewise.
6667         * posix/spawn.h: Likewise.
6668         * posix/unistd.h: Likewise.
6669         * posix/sys/wait.h: Likewise.
6670         * pwd/pwd.h: Likewise.
6671         * resolv/netdb.h: Likewise.
6672         * rt/aio.h: Likewise.
6673         * shadow/shadow.h: Likewise.
6674         * signal/signal.h: Likewise.
6675         * socket/sys/socket.h: Likewise.
6676         * stdlib/stdlib.h: Likewise.
6677         * streams/stropts.h: Likewise.
6678         * string/string.h: Likewise.
6679         * sysdeps/gnu/utmpx.h: Likewise.
6680         * sysvipc/sys/msg.h: Likewise.
6681         * termios/termios.h: Likewise.
6682         * time/time.h: Likewise.
6683         * wcsmbs/wchar.h: Likewise.
6684         * iconv/gconv_cache.c: Include <not-cancel.h> and use non-cancelable
6685         functions.
6686         * misc/daemon.c: Likewise.
6687         * sysdeps/generic/backtracesymsfd.c: Likewise.
6688         * sysdeps/generic/check_fds.c: Likewise.
6689         * sysdeps/unix/sysv/linux/gethostid.c: Likewise.
6690         * sysdeps/unix/sysv/linux/not-cancel.h: New file.
6691         * sysdeps/generic/not-cancel.h: New file.
6692         * csu/Makefile (distribute): Add not-cancel.h.
6693         * sysdeps/unix/sysv/linux/fatal-prepare.h: New file.
6694         * sysdeps/unix/sysv/linux/Makefile: Define FATAL_PREPARE_INCLUDE
6695         for assert.c and assert-perr.c to include <fatal-prepare.h>.
6696         * sysdeps/unix/sysv/linux/Dist: Add fatal-prepare.h.
6698         * sysdeps/posix/remove.c (remove): Rewrite.  No need to restore
6699         errno and unlink first.
6701         * io/ftw.c (ftw_dir): In all places assume fchdir is available.
6703 2003-04-18  Ulrich Drepper  <drepper@redhat.com>
6705         * sysdeps/unix/sysv/linux/libc_fatal.c (__libc_fatal): Use
6706         INTERNAL_SYSCALL instead of INLINE_SYSCALL.
6708 2003-04-17  Ulrich Drepper  <drepper@redhat.com>
6710         * sysdeps/unix/sysv/linux/Makefile: Remove db2 directory handling.
6712         * malloc/Makefile (CFLAGS-malloc.c): Define DEFAULT_TOP_PAD to 128k.
6713         * sysdeps/unix/sysv/linux/Makefile (CFLAGS-malloc.c): Add to, not
6714         replace.
6716         * signal/Makefile (tests): Add tst-sigsimple.
6717         * signal/tst-sigsimple.c: New file.
6719 2003-04-16  Jakub Jelinek  <jakub@redhat.com>
6721         * elf/Makefile (distribute): Add tst-tlsmod{[7-9],1[0-2]}.c and
6722         tst-tls10.h.
6723         (tests): Add tst-tls1[0-2].
6724         (modules-names): Add tst-tlsmod{[7-8],1[0-2]}.
6725         ($(objpfx)tst-tlsmod8.so): Depend on tst-tlsmod7.so.
6726         ($(objpfx)tst-tlsmod10.so): Depend on tst-tlsmod9.so.
6727         ($(objpfx)tst-tlsmod12.so): Depend on tst-tlsmod11.so.
6728         ($(objpfx)tst-tls10): Depend on tst-tlsmod8.so.
6729         ($(objpfx)tst-tls11): Depend on tst-tlsmod10.so.
6730         ($(objpfx)tst-tls12): Depend on tst-tlsmod12.so.
6731         * elf/tst-tls10.c: New test.
6732         * elf/tst-tls11.c: New test.
6733         * elf/tst-tls12.c: New test.
6734         * elf/tst-tls10.h: New file.
6735         * elf/tst-tlsmod7.c: New file.
6736         * elf/tst-tlsmod8.c: New file.
6737         * elf/tst-tlsmod9.c: New file.
6738         * elf/tst-tlsmod10.c: New file.
6739         * elf/tst-tlsmod11.c: New file.
6740         * elf/tst-tlsmod12.c: New file.
6742 2003-04-15  Steven Munroe  <sjmunroe@us.ibm.com>
6744         * sysdeps/powerpc/bits/atomic.h: Moved ppc32/64 specific code to ...
6745         * sysdeps/powerpc/powerpc32/bits/atomic.h: New file.
6746         * sysdeps/powerpc/powerpc64/bits/atomic.h: New file.
6748 2003-04-17  Ulrich Drepper  <drepper@redhat.com>
6750         * posix/regex.h: Include <sys/types.h>.
6752         * signal/sigrelse.c (sigrelse): Use sigdelset and not __sigdelset.
6753         The signal number must be checked.
6754         * signal/sighold.c (sighold): Use sigaddset and not __sigaddset.
6755         The signal number must be checked [PR libc/5004].
6757         * sysdeps/unix/sysv/linux/system.c: If compiled without threads
6758         don't do anything fancy.
6760         * sysdeps/generic/bits/libc-lock.h: Define
6761         __rtld_lock_define_initialized_recursive.
6763         * nss/getXXbyYY_r.c [USE_NSCD] (REENTRANT_NAME): Only retry
6764         contacting nscd if NOT_USENSCD_NAME > 0.
6765         * nss/nsswitch.c (__nss_disable_nscd): New function.
6766         * nss/nsswitch.h: Declare it.
6767         * nss/Versions [GLIBC_PRIVATE]: Export __nss_disable_nscd.
6768         * nscd/nscd.c (main): Call __nss_disable_nscd.
6770 2003-04-16  Ulrich Drepper  <drepper@redhat.com>
6772         * stdio-common/perror.c (perror): We don't need to set the offset
6773         to _IO_pos_bad, this is how streams are initialized.
6775         * locale/programs/ld-time.c (TESTARR_ELEM): Make i unsigned.
6776         (time_output): If necessary, allocate new buffer for .name string if
6777         padding is required.
6779         * sysdeps/unix/sysv/linux/ifaddrs.c (getifaddrs): Check lengths
6780         before copying.  This might leave holes in the list.  Adjust
6781         pointers if necessary.
6782         (netlink_receive): Allocate only one block.
6783         (free_netlink_handle): Adjust appropriately.
6784         (getifaddrs): Lots of cleanups.
6786         * string/test-strncpy.c (do_one_test): Mark start and stop as
6787         possibly unused.
6788         * string/test-memchr.c: Likewise.
6789         * string/test-memcmp.c: Likewise.
6790         * string/test-memcpy.c: Likewise.
6791         * string/test-memmove.c: Likewise.
6792         * string/test-memset.c: Likewise.
6793         * string/test-strcat.c: Likewise.
6794         * string/test-strchr.c: Likewise.
6795         * string/test-strcmp.c: Likewise.
6796         * string/test-strcpy.c: Likewise.
6797         * string/test-strlen.c: Likewise.
6798         * string/test-strncmp.c: Likewise.
6799         * string/test-strpbrk.c: Likewise.
6800         * string/test-strrchr.c: Likewise.
6801         * string/test-strspn.c: Likewise.
6803 2003-04-15  Roland McGrath  <roland@redhat.com>
6805         * libio/fileops.c (_IO_file_close_it): Macro tweak to avoid warning.
6807         * sysdeps/generic/libc-start.c [NEED_DL_SYSINFO]: Add decl for
6808         INTUSE(__register_frame_info_bases).
6810 2003-04-15  Ulrich Drepper  <drepper@redhat.com>
6812         * elf/elf.h: Define AT_SYSINFO_EH_FRAME.
6813         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Handle
6814         AT_SYSINFO_EH_FRAME.  Adjust string width.
6815         (_dl_show_auxv):Display AT_SYSINFO_EH_FRAME value.
6816         * sysdeps/generic/ldsodefs.h [NEED_DL_SYSINFO] (struct rtld_global):
6817         Add _dl_sysinfo_eh_frame field.
6818         * elf/dl-support.c [NEED_DL_SYSINFO]: Define _dl_sysinfo_eh_frame.
6819         * sysdeps/generic/libc-start.c [NEED_DL_SYSINFO] Define eh_obj
6820         variable.
6821         [NEED_DL_SYSINFO] (LIBC_START_MAIN): Call __register_frame_info_bases
6822         if _dl_sysinfo_eh_frame is non-NULL.
6824         * Makeconfig (gnulib): Add -lgcc_eh.
6826         * config.h.in: Define HAVE_FORCED_UNWIND.
6828 2003-04-15  Steven Munroe  <sjmunroe@us.ibm.com>
6830         * sysdeps/powerpc/powerpc64/strcmp.S: Convert to full 64-bit.
6831         * sysdeps/powerpc/powerpc64/strcpy.S: Likewise.
6833 2003-04-15  Jakub Jelinek  <jakub@redhat.com>
6835         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Avoid
6836         checking R_PPC_RELATIVE, R_PPC_NONE and whether relocation is
6837         against local symbol in conflict processing.
6839 2003-04-15  Steven Munroe  <sjmunroe@us.ibm.com>
6841         * sysdeps/powerpc/bits/atomic.h
6842         [__powerpc64] (__arch_compare_and_exchange_val_64_acq): Define.
6843         [! __powerpc64] (__arch_compare_and_exchange_val_64_acq): Defined
6844         as abort stub.
6845         (__arch_compare_and_exchange_val_32_acq): Define.
6846         (atomic_compare_and_exchange_val_acq): Define.
6848 2003-04-15  Ulrich Drepper  <drepper@redhat.com>
6850         * include/atomic.h: Pretty printing.
6852 2003-04-14  Ulrich Drepper  <drepper@redhat.com>
6854         * stdio-common/vfscanf.c: Add casts to avoid warnings.
6856 2003-04-14  Jakub Jelinek  <jakub@redhat.com>
6858         * sysdeps/i386/i486/bits/atomic.h: Rename LOCK to LOCK_PREFIX.
6859         * sysdeps/x86_64/bits/atomic.h: Likewise.
6861 2003-04-14  Ulrich Drepper  <drepper@redhat.com>
6863         * sysdeps/unix/sysv/linux/i386/sysdep.h: Change PUSHARGS_1 and
6864         POPARGS_1 to emit labels for the mov instructions.
6866 2003-04-14  Jakub Jelinek  <jakub@redhat.com>
6868         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h (ret_NOERRNO): Define.
6870 2003-04-14  Roland McGrath  <roland@redhat.com>
6872         * sysdeps/generic/unwind-dw2.c (_Unwind_GetCFA): Add a cast to silence
6873         compiler warning.
6875         * sysdeps/generic/unwind-pe.h: Fix decl hacks broken in merge.
6877 2003-04-14  Ulrich Drepper  <drepper@redhat.com>
6879         * string/strxfrm.c (STRXFRM): Terminate rulearr at correct
6880         position.  Reported by jreiser@BitWagon.com.
6882 2003-04-13  Ulrich Drepper  <drepper@redhat.com>
6884         * sysdeps/generic/unwind-dw2-fde.c: Update from recent gcc version.
6885         * sysdeps/generic/unwind-dw2-fde.h: Likewise.
6886         * sysdeps/generic/unwind-dw2.c: Likewise.
6887         * sysdeps/generic/unwind-pe.h: Likewise.
6889 2003-04-13  Alexandre Oliva  <aoliva@redhat.com>
6891         * sysdeps/unix/sysv/linux/mips/profil-counter: New.
6892         * sysdeps/unix/sysv/linux/mips/sigcontextinfo.h: Port to n32/n64.
6893         * sysdeps/unix/sysv/linux/mips/bits/sigcontext.h: New.
6894         * sysdeps/unix/sysv/linux/mips/sys/ucontext.h: Port to n32/n64.
6895         (mcontext_t): Make it match the 32-bit mips kernel in o32.
6896         * sysdeps/unix/sysv/linux/mips/sys/user.h: Bring in constants from
6897         the mips and mips64 headers.
6898         (struct user): Port to n32/n64.
6900 2003-04-12  Ulrich Drepper  <drepper@redhat.com>
6902         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Add cast to
6903         avoid warning.
6905         * sysdeps/unix/sysv/linux/i386/sigaction.c (__libc_sigaction): If
6906         __ASSUME_VSYSCALL is defined don't add restorer.
6907         * sysdeps/unix/sysv/linux/kernel-features.h: Define
6908         __ASSUME_VSYSCALL for 2.5.53.
6910 2003-04-11  Ulrich Drepper  <drepper@redhat.com>
6912         * sysdeps/generic/libc-start.c: Cleanup MAIN_AUXVEC_ARG handling.
6913         Remove HAVE_CANCELBUF code.  Replace with code using the new
6914         initializers for unwind-based cleanup handling.
6915         * sysdeps/generic/unwind.h: Update from latest gcc version.
6916         * sysdeps/unix/sysv/linux/i386/sysdep.h: Define labels in a few
6917         places to allow unwind data generation.
6918         * sysdeps/i386/bits/setjmp.h: Allow file to be included multiple times.
6919         * sysdeps/x86_64/bits/setjmp.h: Likewise.
6920         * sysdeps/sh/bits/setjmp.h: Likewise.
6921         * sysdeps/powerpc/bits/setjmp.h: Likewise.
6922         * sysdeps/unix/sysv/linux/ia64/bits/setjmp.h: Likewise.
6923         * sysdeps/alpha/bits/setjmp.h: Likewise.
6925 2003-04-11  Roland McGrath  <roland@redhat.com>
6927         * csu/tst-empty.c: New file.
6928         * csu/Makefile (tests, tests-static): Add it.
6930 2003-04-11  Jakub Jelinek  <jakub@redhat.com>
6932         * string/test-strcmp.c (do_random_tests): Test whether return value
6933         has been promoted to wordsize if the ABI requires caller to do so.
6934         * string/test-strncmp.c (do_random_tests): Likewise.
6935         * string/test-memcmp.c (do_random_tests): Likewise.
6937         * sysdeps/powerpc/powerpc64/strcmp.S (strcmp): Sign extend rRTN
6938         before returning.
6940         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c
6941         (__fe_nomask_env): Try prctl even if __ASSUME_NEW_PRCTL_SYSCALL
6942         is not defined, but the prctl constants are.
6944         * string/tester.c (test_strcmp): Fix a typo.
6946 2003-04-09  Ulrich Drepper  <drepper@redhat.com>
6948         * sysdeps/alpha/fpu/bits/mathdef.h: Remove FLT_EVAL_METHOD definition.
6949         * sysdeps/powerpc/fpu/bits/mathdef.h: Likewise.
6951 2003-04-08  Alexandre Oliva  <aoliva@redhat.com>
6953         * sysdeps/mips/sys/regdef.h (t4,t5,t6,t7): Renamed to t0..t3 on
6954         NewABI.
6955         (ta0, ta1, ta2, ta3): Defined to t4..t7 on o32, and a4..a7 on
6956         NewABI.
6957         * sysdeps/mips/mips64/memcpy.S: Adjust register naming
6958         conventions.
6959         * sysdeps/mips/mips64/memset.S: Likewise.
6960         * sysdeps/unix/mips/sysdep.S (__syscall_error) [_LIBC_REENTRANT]:
6961         Use t0 instead of t4 as temporary.
6963 2003-04-07  Ulrich Drepper  <drepper@redhat.com>
6965         * elf/ldconfig.c (parse_conf): Ignore leading whitespace.  Use
6966         feof_unlocked instead of feof.
6967         (add_dir): Ignore trailing whitespace.
6969 2003-04-07  Jakub Jelinek  <jakub@redhat.com>
6971         * posix/bug-regex4.c (main): Cap RANGE and STOP arguments to
6972         sum of SIZE1 and SIZE2 arguments.
6974 2003-04-06  Ulrich Drepper  <drepper@redhat.com>
6976         * iconv/iconv_prog.c (process_block): Don't print message about
6977         invalid input if the -c option is used.
6978         (main): Correctly append IGNORE string for -c option.
6980 2003-04-06  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
6982         * sysdeps/sh/bits/atomic.h: Moved to ...
6983         * sysdeps/unix/sysv/linux/sh/bits/atomic.h: ... here.  Add comments.
6984         (__arch_compare_and_exchange_val_*_acq): Add parens around macro
6985         arguments.
6986         (atomic_bit_set, atomic_bit_test_set): Likewise.
6987         (atomic_exchange_and_add): Likewise.  Don't evaluate VALUE argument
6988         twice.
6989         (atomic_add, atomic_add_negative, atomic_add_zero): Likewise.
6991 2003-04-06  Roland McGrath  <roland@redhat.com>
6993         * sysdeps/unix/sysv/linux/i386/swapcontext.S: Rewrite register
6994         restoration as done for setcontext yesterday.
6996 2003-04-06  Jakub Jelinek  <jakub@redhat.com>
6998         * elf/rtld.c: Revert 2003-03-14 change.
6999         * elf/dl-conflict.c (_dl_resolve_conflicts): Move
7000         #if ! ELF_MACHINE_NO_RELA conditional into the routine.
7002 2003-04-05  Ulrich Drepper  <drepper@redhat.com>
7004         * sunrpc/xdr.c (xdr_string): Catch nodesize == 0 [PR libc/4999].
7006         * sysdeps/ieee754/ldbl-96/e_gammal_r.c (__ieee754_gammal_r):
7007         Always initialize *signgamp before returning an error.
7009 2003-04-05  Roland McGrath  <roland@redhat.com>
7011         * sysdeps/unix/sysv/linux/i386/setcontext.S: Rewrite to avoid writing
7012         below the stack pointer even if switching to the same context we are
7013         running right now.
7015 2003-04-05  Ulrich Drepper  <drepper@redhat.com>
7017         * catgets/gencat.c (read_input_file): Make sure that \n is not
7018         alone on the line before testing for continuation.
7020         * math/test-tgmath.c (compile_test): Initialize c.
7022 2003-04-05  Alexandre Oliva  <aoliva@redhat.com>
7024         * sysdeps/unix/sysv/linux/mips/mips64/n32/ftruncate64.c: New.
7025         * sysdeps/unix/sysv/linux/mips/mips64/n32/truncate64.c: New.
7026         * sysdeps/unix/sysv/linux/kernel-features.h: fcntl64 is available
7027         on mips n32.
7028         * sysdeps/unix/sysv/linux/mips/kernel_stat.h: Explain why
7029         XSTAT_IS_XSTAT64 must not be used for mips n64.  Use 64-bit data
7030         structure on n32 as well.
7031         * sysdeps/unix/sysv/linux/mips/bits/stat.h: Use POSIX-compliant
7032         data types on n32 and n64.
7034 2003-04-05  Ulrich Drepper  <drepper@redhat.com>
7036         * libio/fileops.c (_IO_new_file_fopen): Don't free step data right
7037         after getting them.
7039         * malloc/thread-m.h [PTHREAD_MUTEX_INITIALIZER]: If
7040         HAVE_register_atfork_malloc is defined use __register_atfork_malloc
7041         instead of __register_atfork.
7043 2003-04-05  Jakub Jelinek  <jakub@redhat.com>
7045         * stdio-common/reg-printf.c (__register_printf_function): Calloc
7046         instead of malloc __printf_arginfo_table and __printf_function_table.
7047         Reported by John Reiser <jreiser@BitWagon.com>.
7049 2003-04-04  Steven Munroe  <sjmunroe@us.ibm.com>
7051         * sysdeps/powerpc/powerpc64/strchr.S: 64-bit optimizations.
7052         * sysdeps/powerpc/powerpc64/strlen.S: 64-bit optimizations.
7054         * sysdeps/powerpc/fpu/bits/mathdef.h (FLT_EVAL_METHOD): Undef before
7055         defining.
7057 2003-04-04  Alexandre Oliva  <aoliva@redhat.com>
7059         * sysdeps/unix/sysv/linux/mips/bits/fcntl.h (struct flock): Adjust
7060         for n64 abi.
7062 2003-04-03  Roland McGrath  <roland@redhat.com>
7064         * configure.in: Fix up use of compilation flags to match the build:
7065         For .s files, $ASFLAGS;
7066         For .S files, $CPPFLAGS $ASFLAGS;
7067         For .c files, $CFLAGS $CPPFLAGS;
7068         when linking, add $LDFLAGS.
7069         * configure: Regenerated.
7071 2003-04-03  Jakub Jelinek  <jakub@redhat.com>
7073         * sysdeps/unix/sysv/linux/getsysstats.c (get_proc_path): Reverse test
7074         for atomic_compare_and_exchange_bool_acq failure.
7076 2003-04-03  Ulrich Drepper  <drepper@redhat.com>
7078         * posix/unistd.h: Define _POSIX_VERSION, _POSIX2_VERSION,
7079         _POSIX2_C_BIND, _POSIX2_C_DEV, _POSIX2_SW_DEV, and
7080         _POSXI2_LOCALEDEF to 200112L.  Remove _POSIX2_C_VERSION.
7081         Remove declaration of pthread_atfork.
7083 2003-04-02  Ulrich Drepper  <drepper@redhat.com>
7085         * locale/iso-639.def: Add many more languages from the current ISO 639.
7087         * sysdeps/unix/sysv/linux/ipc_priv.h: Define IPCOP_semtimedop.
7088         * sysdeps/generic/semtimedop.c: New file.
7089         * sysdeps/unix/sysv/linux/i386/semtimedop.S: New file.
7090         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Add semtimedop.
7091         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
7092         * sysvipc/Makefile (routines): Add semtimedop.
7093         * sysvipc/Versions [GLIBC_2.3.3] (glibc): Add semtimedop.
7094         * sysvipc/sys/sem.h: Declare semtimedop.
7096 2003-04-02  Daniel Jacobowitz  <drow@mvista.com>
7098         * configure.in: Check for __register_frame_info in both
7099         -lgcc and -lgcc_eh.
7100         * configure: Regenerated.
7102 2003-04-01  Roland McGrath  <roland@redhat.com>
7104         * scripts/abilist.awk: Allow dots in soname suffix.
7106         * scripts/abilist.awk (emit): Fix bailout condition.
7108 2003-04-01  Jakub Jelinek  <jakub@redhat.com>
7110         * sysdeps/unix/sysv/linux/sparc/sparc64/sigsuspend.c: Use the
7111         IA-64 version.
7113         * elf/tls-macros.h [__ia64__] (TLS_IE, TLS_LD, TLS_GD): Add gp
7114         register as input to asm.
7116 2003-04-01  Jakub Jelinek  <jakub@redhat.com>
7118         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h (sigevent_t): Fix a typo.
7120 2003-04-01  Andreas Jaeger  <aj@suse.de>
7122         * configure.in: Output as/ld as name if version is too old.
7124 2003-03-31  Daniel Jacobowitz  <drow@mvista.com>
7126         * configure.in: Don't require an installed C library in the test
7127         for ".set" assembler support.
7129 2003-03-31  Roland McGrath  <roland@redhat.com>
7131         * signal/tst-sigset.c: New file.
7132         * signal/Makefile (tests): Add it.
7134 2003-03-31  Ulrich Drepper  <drepper@redhat.com>
7136         * sysdeps/unix/sysv/linux/alpha/bits/signum.h (_NSIG): Define to 65.
7137         * sysdeps/unix/sysv/linux/hppa/bits/signum.h (_NSIG): Likewise.
7138         * sysdeps/unix/sysv/linux/sparc/bits/signum.h (_NSIG): Likewise.
7139         * sysdeps/unix/sysv/linux/bits/signum.h (_NSIG): Likewise.
7140         (__SIGRTMAX): Adjust accordingly.
7141         * sysdeps/gnu/siglist.c: If OLD2_SIGLIST_SIZE is defined define
7142         second compatibility symbol set.
7143         * sysdeps/unix/sysv/linux/siglist.h (OLD2_SIGLIST_SIZE): Define.
7145 2003-03-31  Andreas Schwab  <schwab@suse.de>
7147         * sysdeps/m68k/m68020/bits/atomic.h (atomic_increment_and_test):
7148         Define.
7149         (atomic_decrement_and_test): Fix test.
7151 2003-03-31  Jakub Jelinek  <jakub@redhat.com>
7153         * sysdeps/sparc/sparc32/bits/atomic.h: New file.
7154         * sysdeps/sparc/sparc32/sparcv9/bits/atomic.h: New file.
7155         * sysdeps/sparc/sparc64/bits/atomic.h: New file.
7156         * sysdeps/sparc/sparc32/atomicity.h: Removed.
7157         * sysdeps/sparc/sparc32/sparcv9/atomicity.h: Removed.
7158         * sysdeps/sparc/sparc64/atomicity.h: Removed.
7160 2003-03-30  Roland McGrath  <roland@redhat.com>
7162         * scripts/abilist.awk: Grok .opd foo plus .text .foo as "foo F" alone.
7164         * intl/po2test.sed: Anchor substitution regexps to fix last change.
7166 2003-03-29  Paolo Bonzini  <bonzini@gnu.org>
7168         * intl/po2test.sed: Unify the transformations for msgid and msgstr
7169         and remove a useless s/// command.
7171 2003-03-27  David Mosberger  <davidm@hpl.hp.com>
7173         * sysdeps/ia64/dl-machine.h (RTLD_START): Wrap ".save rp, r0"
7174         directive into empty .prologue region to ensure that call-chain
7175         is terminated even for the first instruction.
7177         * sysdeps/ia64/elf/start.S (_start): Use ".save rp, r0" idiom
7178         to terminate call-chain right from the get-go.
7180         * sysdeps/unix/sysv/linux/ia64/fork.S (fork): Remove unnecessary
7181         stop bit between compare & branch.
7183 2003-03-29  Ulrich Drepper  <drepper@redhat.com>
7185         * stdlib/strtod.c (INTERNAL): Recognize first digit after decimal
7186         point correctly [PR libc/4993].
7188         * sysdeps/unix/sysv/linux/ifaddrs.c (getifaddrs): Avoid
7189         netlink_open calls if netlink is known to not be available.
7191 2003-03-29  Alexandre Oliva  <aoliva@redhat.com>
7193         * configure.in: Add mips64* support.
7194         * sysdeps/mips/bits/endian.h: Make it bi-endian.
7195         * sysdeps/mips/mipsel/bits/endian.h: Removed.
7196         * sysdeps/mips/mips64/n32/el/bits/endian.h: Removed.
7197         * sysdeps/mips/mips64/n64/el/bits/endian.h: Removed.
7198         * sysdeps/mips/mips32/Makefile (CC): Add -mabi=32.
7199         * sysdeps/mips/mips64/n32/Makefile (CC): Add -mabi=n32.
7200         * sysdeps/mips/mips64/n64/Makefile (CC): Add -mabi=64.
7201         * sysdeps/mips/Implies: Moved wordsize-32 to...
7202         * sysdeps/mips/mips32/Implies: New file.
7203         * sysdeps/unix/mips/sysdep.h (PSEUDO_NOERRNO, PSEUDO_END_NOERRNO,
7204         ret_NOERRNO): New.
7205         (ret, PSEUDO_END): Moved past END.
7206         (PSEUDO): Moved to...
7207         * sysdeps/unix/mips/mips32/sysdep.h: New file.
7208         * sysdeps/unix/mips/mips64/n32/sysdep.h: Removed #undef PSEUDO.
7209         * sysdeps/unix/mips/mips64/n64/sysdep.h: Likewise.
7210         * sysdeps/unix/sysv/linux/mips/sysdep.h: Move to...
7211         * sysdeps/unix/sysv/linux/mips/mips32/sysdep.h: New file.
7212         * sysdeps/unix/sysv/linux/mips/mips32/kern64/sysdep.h: New file.
7214         * sysdeps/unix/sysv/linux/mips/clone.S (__thread_start):
7215         Re-introduce ENTRY.
7217 2003-03-28  Thorsten Kukuk  <kukuk@suse.de>
7219         * sysdeps/unix/sysv/linux/ifaddrs.c: New file.
7220         * inet/test-ifaddrs.c: Allow AF_PACKET.
7221         * sysdeps/unix/sysv/linux/kernel-features.h: Add
7222         __ASSUME_NETLINK_SUPPORT.
7224 2003-03-28  Ulrich Drepper  <drepper@redhat.com>
7226         * elf/vismain.c (do_test): Comment out tests which fail in the moment.
7228 2003-03-26  H.J. Lu  <hjl@gnu.org>
7230         * elf/vismod.h (getvarlocal1): Return const char **.
7231         (getvarinmod1): Likewise.
7232         (getvaritcpt1): Likewise.
7233         (getvarlocal2): Likewise.
7234         (getvarinmod2): Likewise.
7235         (getvaritcpt2): Likewise.
7236         (getvaritcpt3): Likewise.
7237         * elf/vismain.c (do_test): Adjusted.
7238         * elf/vismod1.c (getvarlocal1): Return address.
7239         (getvarinmod1): Likewise.
7240         (getvaritcpt1): Likewise.
7241         * elf/vismod2.c (getvarlocal2): Likewise.
7242         (getvarinmod2): Likewise.
7243         (getvaritcpt2): Likewise.
7244         * elf/vismod3.c (getvaritcpt3): Likewise.
7246 2003-03-28  Roland McGrath  <roland@redhat.com>
7248         * elf/vismain.c (do_test): Print both addresses when they don't match.
7250         * scripts/abilist.awk: If given -v filename_regexp and/or -v
7251         libname_regexp when parsing names, then produce output only
7252         for those matching the given regexps.  In combine mode, save all
7253         stanzas for a final sorting by stanza header at the end.
7254         Emit a blank line between stanzas.
7256         * scripts/abilist.awk: When given -v combine=1, do parse_names and
7257         emit a single output stream with lib name in stanza header lines.
7259         * scripts/abilist.awk: Emit A for all *ABS* regardless of type.
7261 2003-03-27  Roland McGrath  <roland@redhat.com>
7263         * sysdeps/powerpc/bits/atomic.h [! __powerpc64__]
7264         (__arch_atomic_decrement_if_positive_64): Fix bogus definition.
7266 2003-03-28  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
7268         * sysdeps/sh/bits/atomic.h (__arch_compare_and_exchange_val_8_acq):
7269         Return old value. Make asm output reg constraint earlyclobber.
7270         Renamed from...
7271         (__arch_compare_and_exchange_8_acq): ... this.
7272         (__arch_compare_and_exchange_val_16_acq):
7273         Return old value. Make asm output reg constraint earlyclobber.
7274         Renamed from...
7275         (__arch_compare_and_exchange_16_acq): ... this.
7276         (__arch_compare_and_exchange_val_32_acq):
7277         Return old value. Make asm output reg constraint earlyclobber.
7278         Renamed from...
7279         (__arch_compare_and_exchange_32_acq): ... this.
7280         (__arch_compare_and_exchange_val_64_acq):
7281         Renamed from...
7282         (__arch_compare_and_exchange_64_acq): ... this.
7283         (atomic_exchange_and_add): Use local variables and
7284         __arch_compare_and_exchange_val_64_acq.
7285         (atomic_add): Likewise.
7286         (atomic_add_negative, atomic_add_zero): Use local variables.
7288 2003-03-28  Alexandre Oliva  <aoliva@redhat.com>
7290         * sysdeps/unix/mips/sysdep.S: Include sys/asm.h.
7292 2003-03-27  Ulrich Drepper  <drepper@redhat.com>
7294         * Makefile: Remove libmd5crypt goal.
7296 2003-03-25  Jakub Jelinek  <jakub@redhat.com>
7298         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Restore
7299         special handling of relocations against local symbols.
7301 2003-03-27  Steven Munroe  <sjmunroe@us.ibm.com>
7303         * sysdeps/powerpc/bits/atomic.h
7304         (__arch_compare_and_exchange_bool_32_acq): Move to [!__powerpc64__].
7305         [__powerpc64__] (__arch_compare_and_exchange_bool_32_acq):
7306         Define PPC64 specific version.
7307         [__powerpc64__] (__arch_compare_and_exchange_bool_64_acq):
7308         Change (mem) constraint to "b".
7309         [__powerpc64__] (__arch_atomic_exchange_and add_64):
7310         Replace addi with add. Change (value) contraint to "r".
7311         Change (mem) constraint to "b".
7312         [__powerpc64__] (__arch_atomic_decrement_if_positive_64): New macro.
7313         (__arch_atomic_exchange_32): Change (mem) constraint to "b".
7314         (__arch_atomic_exchange_and_add_32): Change (mem) constraint to "b".
7315         (__arch_atomic_decrement_if_positive_32): New macro.
7316         (atomic_decrement_if_positive): Use __arch* macros.
7318 2003-03-27  Jakub Jelinek  <jakub@redhat.com>
7320         * sysdeps/ia64/fpu/libm-test-ulps: Update.
7322 2003-03-27  Roland McGrath  <roland@redhat.com>
7324         * scripts/rpm2dynsym.sh: New file.
7325         * Makefile (distribute): Add it.
7327 2003-03-27  David Mosberger  <davidm@hpl.hp.com>
7329         * sysdeps/unix/sysv/linux/ia64/getcontext.S: Restore caller's
7330         ar.unat before returning.  Add missing .mem.offset directives
7331         to ensure file gets assembled without warnings.
7332         * sysdeps/unix/sysv/linux/ia64/setjmp.S: Likewise.
7334 2003-03-27  Jakub Jelinek  <jakub@redhat.com>
7336         * sysdeps/unix/sysv/linux/sysconf.c (__sysconf) <_SC_MONOTONIC_CLOCK>:
7337         Return -1 instead of 0 if clock_getres failed.
7339 2003-03-27  Roland McGrath  <roland@redhat.com>
7341         * scripts/abilist.awk: If variable `parse_names' is set, grok the file
7342         header lines and write out foo.symlist files for each foo.so.NN listed.
7344         * libio/libioP.h (_IO_wfile_jumps): Remove attribute_hidden.
7345         This symbol is exported, and we don't want to hide it.
7346         Add libc_hidden_proto instead.
7347         (_IO_file_jumps): Add libc_hidden_proto.
7348         * libio/wfileops.c (_IO_wfile_jumps): Add libc_hidden_data_def.
7349         Remove INTVARDEF.
7350         * libio/fileops.c (_IO_file_jumps): Likewise.
7351         * libio/stdfiles.c: Don't use INTUSE on them.
7352         * libio/iofdopen.c (_IO_new_fdopen): Likewise.
7353         * libio/iofopen.c (__fopen_internal): Likewise.
7354         * libio/freopen.c (freopen): Likewise.
7355         * libio/freopen64.c (freopen64): Likewise.
7356         * libio/iovdprintf.c (_IO_vdprintf): Likewise.
7358         * Makerules (check-abi) [$(enable-check-abi) = warn]:
7359         Ignore exit status from diff.
7360         * configure.in (enable_check_abi): Document possible value "warn".
7361         Change default to no for now.
7362         * configure: Regenerated.
7364         * sysdeps/unix/Makefile ($(objpfx)stub-syscalls.c): Emit stub_warning
7365         macro calls and a #include <stub-tag.h> at the end.
7366         * Makerules ($(objpfx)stubs): Tweak sed commands.
7368         * sysdeps/unix/sysv/linux/syscalls.list: Use - rather than EXTRA in
7369         caller column for *xattr syscalls, since they are in sysdeps/generic.
7371         * sysdeps/unix/sysv/linux/i386/setfsuid.c: setfsgid -> setfsuid
7372         * sysdeps/unix/sysv/linux/i386/setfsgid.c: setfsuid -> setfsgid
7374 2003-03-26  Roland McGrath  <roland@redhat.com>
7376         * Makerules (check-abi-config): Use /thread instead of /tls when
7377         use-thread and not just use-tls is set.
7379         * Makerules (update-abi): Put quotes around $(update-abi-config).
7381         * elf/Makefile (check-abi): Depend on check-abi-ld.
7382         (update-abi): Depend on update-abi-ld.
7384 2003-03-26  GOTO Masanori  <gotom@debian.or.jp>
7386         * sysdeps/unix/sysv/linux/i386/setfsuid.c: Use INTERNAL_SYSCALL and
7387         do not check for errors (unless testing for 32bit variant).
7388         * sysdeps/unix/sysv/linux/i386/setfsgid.c: Likewise.
7390 2003-03-27  Philip Blundell  <philb@gnu.org>
7392         * sysdeps/unix/sysv/linux/arm/sysdep.h (PSEUDO_RET_NOERRNO): Use
7393         unconditional mov.  Remove nop.
7395         * sysdeps/unix/sysv/linux/kernel-features.h
7396         (__ASSUME_VFORK_SYSCALL): Define for kernel 2.4 on arm.
7397         * sysdeps/unix/sysv/linux/arm/vfork.S: Elide compatibility code
7398         when __ASSUME_VFORK_SYSCALL is defined.
7399         * sysdeps/unix/sysv/linux/arm/mmap64.S: Likewise for
7400         __ASSUME_MMAP2_SYSCALL.
7401         * sysdeps/unix/sysv/linux/arm/sigaction.c: Likewise for
7402         __ASSUME_REALTIME_SIGNALS.
7404 2003-03-26  Ulrich Drepper  <drepper@redhat.com>
7406         * sysdeps/generic/ldsodefs.h (ELF_RTYPE_CLASS_COPY): Define to 2
7407         only if DL_NO_COPY_RELOCS is not defined.
7408         * sysdeps/ia64/dl-lookupcfg.h: Define DL_NO_COPY_RELOCS.
7410 2003-03-26  Roland McGrath  <roland@redhat.com>
7412         * sysdeps/unix/make-syscalls.sh: When an undefined syscall has
7413         SOURCE=-, append its symbol names to make variable unix-stub-syscalls.
7414         * sysdeps/unix/Makefile [$(subdir) = misc] [unix-stub-syscalls]
7415         (sysdep_routines): Add stub-syscalls.
7416         ($(objpfx)stub-syscalls.c): New target.
7417         (generated): Add stub-syscalls.c.
7419         * tls.make.c: Also define use-tls according to USE_TLS macro.
7421 2003-03-26  Ulrich Drepper  <drepper@redhat.com>
7423         * sysdeps/unix/sysv/linux/alpha/bits/siginfo.h (struct siginfo): Avoid
7424         no-op padding element.
7425         * sysdeps/unix/sysv/linux/bits/siginfo.h: Likewise.
7426         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Likewise.
7427         * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Likewise.
7428         * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Likewise.
7430 2003-03-26  GOTO Masanori  <gotom@debian.or.jp>
7432         * sysdeps/unix/sysv/linux/i386/getgroups.c: Fix the error
7433         condition check for the return value of getgroups32.
7435 2003-03-26  Jakub Jelinek  <jakub@redhat.com>
7437         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (PSEUDO_NOERRNO):
7438         Fix a typo.
7439         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h (PSEUDO_NOERRNO,
7440         PSEUDO_END_NOERRNO): Define.
7441         * sysdeps/unix/sysdep.h (PSEUDO_END_NOERRNO): Fix a typo.
7442         Define to PSEUDO_END.
7444 2003-03-26  Ulrich Drepper  <drepper@redhat.com>
7446         * abilist/librt.abilist: Add new timer interfaces for 64-bit archs.
7448 2003-03-25  Jiro SEKIBA  <jir@yamato.ibm.com>
7450         * iconvdata/euc-tw.c (from_euc_tw): Fix return value of TO_LOOP.
7451         * iconvdata/bug-iconv4.c: New file.
7452         * iconvdata/Makefile (tests): Add bug-iconv4.
7454 2003-03-25  H.J. Lu  <hjl@gnu.org>
7456         * elf/dl-lookup.c (_dl_lookup_symbol): Avoid looking up protected
7457         symbols twice.
7458         (_dl_lookup_versioned_symbol): Likewise.
7460 2003-03-26  Jakub Jelinek  <jakub@redhat.com>
7462         * csu/tst-atomic.c (do_test): Add some new
7463         atomic_compare_and_exchange_val_acq, atomic_add_zero,
7464         atomic_compare_and_exchange_bool_acq and atomic_add_negative tests.
7465         * include/atomic.h (atomic_add_negative, atomic_add_zero):
7466         Prefix local variable so that it doesn't clash with the one
7467         in atomic_exchange_and_add.
7468         * sysdeps/ia64/bits/atomic.h (atomic_exchange): Fix for long/void *
7469         pointers.
7470         (atomic_exchange_and_add): Implement using __sync_fetch_and_add_?i.
7471         * sysdeps/powerpc/bits/atomic.h (atomic_exchange_and_add): Force
7472         value into register.
7473         * sysdeps/s390/bits/atomic.h (__arch_compare_and_exchange_val_64_acq):
7474         Cast newval to long.
7475         * sysdeps/x86_64/bits/atomic.h
7476         (__arch_compare_and_exchange_val_64_acq): Cast newval and oldval to
7477         long.
7478         (atomic_exchange): Cast newvalue to long if sizeof == 8.
7479         (atomic_exchange_and_add): Cast value to long if sizeof == 8.
7480         (atomic_add, atomic_add_negative, atomic_add_zero): Likewise.
7481         (atomic_bit_set): Shift 1L up in all cases to shut up warnings.
7483 2003-03-21  Martin Schwidefsky  <schwidefskyde.ibm.com>
7485         * sysdeps/s390/s390-32/backtrace.c (__backtrace): Remove high order
7486         bit from backtrace addresses.
7488 2003-03-21  Andreas Schwab  <schwab@suse.de>
7490         * sysdeps/unix/sysv/linux/i386/chown.c: Don't define any versioned
7491         __chown symbols.
7493 2003-03-25  Roland McGrath  <roland@redhat.com>
7495         * config.make.in (enable-check-abi): New variable from configure.
7496         * configure.in (enable_check_abi): New substituted variable,
7497         controlled by --{enable,disable}-check-abi (default yes).
7498         * configure: Regenerated.
7499         * Makerules [$(enable-check-abi) = yes] (tests): Put this condition
7500         on check-abi dependency.
7502 2003-03-26  Andreas Schwab  <schwab@suse.de>
7504         * sysdeps/m68k/m68020/bits/atomic.h: Fix typos.
7505         * include/atomic.h: Likewise.
7507         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Define ret_NOERRNO.
7509 2003-03-25  Roland McGrath  <roland@redhat.com>
7511         * sysdeps/powerpc/bits/atomic.h (__arch_atomic_exchange_32): New macro.
7512         (__arch_atomic_exchange_64): New macro.
7513         (atomic_exchange): Use them.
7514         (__arch_atomic_exchange_and_add_32): New macro.
7515         (__arch_atomic_exchange_and_add_64): New macro.
7516         (atomic_exchange_and_add): Use them.
7517         Original patch from Steven Munroe <sjmunroe@us.ibm.com>.
7519 2003-03-25  Alexandre Oliva  <aoliva@redhat.com>
7521         * sysdeps/mips/sgidefs.h (_MIPS_ISA_MIPS32, _MIPS_ISA_MIPS64):
7522         Define.
7523         * sysdeps/mips/sys/asm.h: Test _MIPS_ISA against them on all
7524         ISA tests.
7525         (ALSZ, ALMASK, SZREG, REG_S, REG_L): Define based on ABI, not ISA.
7526         (PTR_ADD, etc): Test _MIPS_SZPTR instead of _MIPS_SZLONG.
7527         * sysdeps/unix/sysv/linux/mips/bits/sigaction.h: Use _MIPS_SZPTR
7528         to decide whether to add padding.
7529         * sysdeps/unix/sysv/linux/mips/bits/sigaction.h: Use _MIPS_SZPTR
7530         to decide whether to add padding.
7531         * sysdeps/unix/sysv/linux/mips/kernel_sigaction.h (struct
7532         old_kernel_sigaction): Likewise.
7534 2003-03-25  Ulrich Drepper  <drepper@redhat.com>
7536         * csu/tst-atomic.c: Adjust tests to what atomic_add_negative and
7537         atomic_add_zero were supposed to do.
7538         * include/atomic.h: Adjust atomic_add_negative and atomic_add_zero
7539         to x86 behavior.
7541         * sysdeps/generic/bits/typesizes.h (__TIMER_T_TYPE): Define as void*.
7542         This matches the new timer implementation.
7543         * sysdeps/unix/sysv/linux/sparc/bits/typesizes.h (__TIMER_T_TYPE):
7544         Likewise.
7545         * sysdeps/unix/sysv/linux/alpha/bits/typesizes.h (__TIMER_T_TYPE):
7546         Likewise.
7547         * sysdeps/unix/sysv/linux/bits/siginfo.h (struct siginfo): Adjust
7548         timer info for what the kernel provides these days.
7549         (struct sigevent): Add _tid field.
7550         Define SIGEV_THREAD_ID.
7551         Remove struct __pthread_attr_s forward declaration.
7552         * sysdeps/unix/sysv/linux/alpha/bits/siginfo.h: Likewise.
7553         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Likewise.
7554         * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Likewise.
7555         * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Likewise.
7557         * Versions.def (librt): Add GLIBC_2.3.3.
7559         * abilist/libpthread.abilist: Update for nptl.
7561 2003-03-24  Jon Grimm  <jgrimm@us.ibm.com>
7563         * inet/netinet/in.h: Add IPPROTO_SCTP.
7565 2003-03-24  Ulrich Drepper  <drepper@redhat.com>
7567         * sysdeps/unix/sysv/linux/sys/epoll.h (EPOLLET): Define.
7569 2003-03-24  Philip Blundell  <philb@gnu.org>
7571         * sysdeps/unix/sysv/linux/arm/sysdep.h (INTERNAL_SYSCALL):
7572         Remove a1 from clobber list.
7574 2003-03-24  Ulrich Drepper  <drepper@redhat.com>
7576         * timezone/antarctica: Update from tzdata2003a.
7577         * timezone/asia: Likewise.
7578         * timezone/australasia: Likewise.
7579         * timezone/europe: Likewise.
7580         * timezone/iso3166.tab: Likewise.
7581         * timezone/northamerica: Likewise.
7582         * timezone/southamerica: Likewise.
7583         * timezone/zone.tab: Likewise.
7585 2003-03-24  Steven Munroe  <sjmunroe@us.ibm.com>
7587         * sysdeps/powerpc/powerpc64/sysdep.h (PSEUDO_END_NOERRNO): Fix typo.
7589 2003-03-23  Ulrich Drepper  <drepper@redhat.com>
7591         * sysdeps/unix/sysv/linux/ia64/sysdep.h (ret_NOERRNO): Avoid
7592         unwanted expansion by definining to ret.  Patch by Ian Wienand.
7594         * sysdeps/unix/make-syscalls.sh: Recognize 'E' in first position of
7595         the parameter description to denote no error checking.  Generate
7596         appropriate pseudo asm code.
7597         * sysdeps/unix/syscalls.list: Mark getgid, getpid, getuid with 'E'.
7598         * sysdeps/unix/sysv/linux/syscalls.list: Mark getegid, geteuid,
7599         getpgrp, and getppid with 'E'.
7600         * sysdeps/powerpc/powerpc32/sysdep.h: Define PSEUDO_NOERRNO,
7601         PSEUDO_END_NOERRNO, and ret_NOERRNO.
7602         * sysdeps/powerpc/powerpc64/sysdep.h: Likewise.
7603         * sysdeps/unix/sysdep.h: Likewise.
7604         * sysdeps/unix/alpha/sysdep.h: Likewise.
7605         * sysdeps/unix/sparc/sysdep.h: Likewise.
7606         * sysdeps/unix/sysv/linux/arm/sysdep.h: Likewise.
7607         * sysdeps/unix/sysv/linux/cris/sysdep.h: Likewise.
7608         * sysdeps/unix/sysv/linux/hppa/sysdep.h: Likewise.
7609         * sysdeps/unix/sysv/linux/i386/sysdep.h: Likewise.
7610         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Likewise.
7611         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Likewise.
7612         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Likewise.
7613         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise.
7614         * sysdeps/unix/sysv/linux/sh/sysdep.h: Likewise.
7615         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Likewise.
7616         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
7618 2003-03-23  Roland McGrath  <roland@redhat.com>
7620         * Makeconfig (+includes): Don't use $(last-includes).
7622 2003-03-22  Alexandre Oliva  <aoliva@redhat.com>
7624         * sysdeps/unix/sysv/linux/configure.in: Update mips64 patterns.
7625         * sysdeps/unix/sysv/linux/configure: Rebuilt.
7627 2003-03-23  Jakub Jelinek  <jakub@redhat.com>
7629         * sysdeps/alpha/fpu/libm-test-ulps: Update.
7630         * sysdeps/arm/libm-test-ulps: Update.
7631         * sysdeps/hppa/fpu/libm-test-ulps: Update.
7632         * sysdeps/ia64/fpu/libm-test-ulps: Update.
7633         * sysdeps/mips/fpu/libm-test-ulps: Update.
7634         * sysdeps/powerpc/nofpu/libm-test-ulps: Update.
7635         * sysdeps/powerpc/fpu/libm-test-ulps: Update.
7636         * sysdeps/sparc/sparc32/fpu/libm-test-ulps: Update.
7637         * sysdeps/sparc/sparc64/fpu/libm-test-ulps: Update.
7638         * sysdeps/sh/sh4/fpu/libm-test-ulps: Update.
7639         * sysdeps/s390/fpu/libm-test-ulps: Update.
7640         * sysdeps/x86_64/fpu/libm-test-ulps: Update.
7642 2003-03-22  Roland McGrath  <roland@redhat.com>
7644         * include/atomic.h: Put parens around all macro arguments.
7645         (__atomic_val_bysize, __atomic_bool_bysize): New macros.
7646         (atomic_compare_and_exchange_val_acq): Use it.
7647         (atomic_compare_and_exchange_bool_acq): Likewise.
7648         (atomic_increment_and_test): Invert sense of test.
7649         (atomic_decrement_and_test): Likewise.
7650         * csu/tst-atomic.c: Update those tests to match.
7652 2003-03-22  Jakub Jelinek  <jakub@redhat.com>
7654         * include/atomic.h (atomic_compare_and_exchange_val_acq): Add comment.
7655         Don't define if __arch_compare_and_exchange_val_32_acq is not defined.
7656         (atomic_compare_and_exchange_bool_acq): Add comment.  Don't use
7657         __oldval variable in the macro, since it might be macro argument.
7658         (atomic_decrement_if_positive): Initialize __memp, remove setting
7659         of non-existent variable.
7660         (atomic_bit_test_set): Cast 1 to __typeof (*mem) before shifting.
7661         * sysdeps/ia64/bits/atomic.h (atomic_exchange_and_add): Implement
7662         using atomic_compare_and_exchange_val_acq.
7663         (atomic_decrement_if_positive, atomic_bit_test_set): Define.
7664         * sysdeps/s390/bits/atomic.h (__arch_compare_and_exchange_val_8_acq):
7665         Renamed from...
7666         (__arch_compare_and_exchange_bool_8_acq): ... this.
7667         (__arch_compare_and_exchange_val_16_acq): Renamed from...
7668         (__arch_compare_and_exchange_bool_16_acq): ... this.
7669         (__arch_compare_and_exchange_val_32_acq): Return old value.  Renamed
7670         from...
7671         (__arch_compare_and_exchange_bool_32_acq): ... this.
7672         (__arch_compare_and_exchange_val_64_acq): Return old value.  Renamed
7673         from...
7674         (__arch_compare_and_exchange_bool_64_acq): ... this.
7675         (__arch_compare_and_exchange_val_32_acq): Use __typeof for local
7676         variables types instead of assuming int.
7677         Change prefix of local variables to __arch.
7678         * sysdeps/generic/bits/atomic.h (arch_compare_and_exchange_acq):
7679         Remove.
7680         (atomic_compare_and_exchange_val_acq,
7681         atomic_compare_and_exchange_bool_acq): Define.
7683         * csu/tst-atomic.c: New test.
7684         * csu/tst-atomic-long.c: New test.
7685         * csu/Makefile (tests): Add tst-atomic and tst-atomic-long.
7687         * malloc/memusagestat.c (main): Kill warning if uint64_t is ulong.
7689         * sysdeps/s390/Versions: Add trailing newline.
7691         * sysdeps/unix/sysv/linux/sysconf.c (__sysconf): Kill warning
7692         if INTERNAL_SYSCALL_ERROR_P doesn't use its first argument.
7694 2003-03-22  Andreas Schwab  <schwab@suse.de>
7696         * sysdeps/m68k/fpu/libm-test-ulps: Update.
7698         * sysdeps/m68k/m68020/bits/atomic.h: New file.
7699         * sysdeps/m68k/m68020/atomicity.h: Removed.
7701 2003-03-22  Alexandre Oliva  <aoliva@redhat.com>
7703         * sysdeps/mips/elf/ldsodefs.h: Add mips-specific elf64 relocation
7704         data structures and macros.  Protect from multiple inclusion.
7706         * sysdeps/mips/dl-machine.h (ELF_MIPS_GNU_GOT1_MASK): Fix harmless
7707         typo in #if test.
7709 2003-03-21  Andreas Jaeger  <aj@suse.de>
7711         * sysdeps/i386/fpu/libm-test-ulps: Update.
7713         * math/libm-test.inc (tgamma_test): Recompute some constants with
7714         36 digits precision.
7715         (lgamma_test): Likewise.
7716         (ccos_test): Likewise.
7717         (ccosh_test): Likewise.
7718         (clog10_test): Likewise.
7719         (csin_test): Likewise.
7720         (csinh_test): Likewise.
7721         (ctan_test): Likewise.
7722         (ctanh_test): Likewise.
7724 2003-03-19  Jakub Jelinek  <jakub@redhat.com>
7726         * sysdeps/sparc/sparc64/fpu/libm-test-ulps: Regenerated.
7728 2003-03-21  Roland McGrath  <roland@redhat.com>
7730         * sysdeps/i386/i486/bits/atomic.h (atomic_bit_set): Use "ir"
7731         constraint to permit non-constant BIT argument.
7732         (atomic_bit_test_set): Likewise.
7733         * sysdeps/x86_64/bits/atomic.h (atomic_bit_test_set): Likewise.
7734         (atomic_bit_set): Likewise.  Use 1UL in case that BIT might be >= 32.
7735         For quadword case, use "i" constraint if __builtin_constant_p and < 32
7736         or "r" constraint otherwise.
7738         * configure.in: Move AC_PROG_CC and other program-finding before all
7739         the version checks.
7740         * configure: Regenerated.
7742 2003-03-21  Alexandre Oliva  <aoliva@redhat.com>
7744         * sysdeps/mips/mips64/memcpy.S: Fix porting bug that broke
7745         unaligned copying of 8-15 bytes.  From Chris Demetriou
7746         <cgd@broadcom.com>.  Fix label names.
7747         * sysdeps/mips/mips64/memset.S: Fix label names.  Make similar
7748         change as to memcpy.S.
7749         * sysdeps/mips/memcpy.S: Formatting changes.
7750         * sysdeps/mips/memset.S: Likewise.
7752 2003-03-21  Roland McGrath  <roland@redhat.com>
7754         * sysdeps/arm/sysdep.h (CALL_MCOUNT): Add trailing semicolon.
7756 2003-03-21  Alexandre Oliva  <aoliva@redhat.com>
7758         * sysdeps/mips/mips64/memcpy.S, sysdeps/mips/mips64/memset.S: New.
7759         * sysdeps/mips/memcpy.S, sysdeps/mips/memset.S: Update comments.
7761 2003-03-21  Roland McGrath  <roland@redhat.com>
7763         * sysdeps/i386/i486/bits/atomic.h
7764         (__arch_compare_and_exchange_val_64_acq): Rewrite abort-calling
7765         version of the macro to avoid compile-time warnings.
7766         [! __PIC__] (__arch_compare_and_exchange_64_acq): Rename to above.
7767         (atomic_exchange_and_add, atomic_add): Fix name and usage of it.
7768         (atomic_increment, atomic_decrement): Likewise.
7770 2003-03-21  Ulrich Drepper  <drepper@redhat.com>
7772         * sysdeps/x86_64/bits/atomic.h: Don't use matching memory constraints.
7773         * sysdeps/i386/i486/bits/atomic.h: Likewise.
7775 2003-03-21  Roland McGrath  <roland@redhat.com>
7777         * include/atomic.h (atomic_compare_and_exchange_bool_acq): Typo fix.
7779 2003-03-20  Ulrich Drepper  <drepper@redhat.com>
7781         * include/atomic.h: Define atomic_compare_and_exchange_val_acq,
7782         atomic_compare_and_exchange_val_rel,
7783         atomic_compare_and_exchange_bool_acq, and
7784         atomic_compare_and_exchange_bool_rel instead of
7785         atomic_compare_and_exchange_acq and atomic_compare_and_exchange_rel.
7786         * sysdeps/i386/i486/bits/atomic.h: Define
7787         __arch_compare_and_exchange_val_*_acq instead of
7788         __arch_compare_and_exchange_*_acq.
7789         * sysdeps/x86_64/bits/atomic.h: Likewise.
7790         * sysdeps/ia64/bits/atomic.h: Define
7791         __arch_compare_and_exchange_bool_*_acq instead of
7792         __arch_compare_and_exchange_*_acq.
7793         * sysdeps/powerpc/bits/atomic.h: Likewise.
7794         * sysdeps/s390/bits/atomic.h: Likewise.
7795         * gmon/mcount.c: Adjust for new form of compare&exchange macros.
7796         * malloc/set-freeres.c: Likewise.
7797         * nscd/cache.c: Likewise.
7798         * stdlib/cxa_finalize.c: Likewise.
7799         * sysdeps/unix/sysv/linux/getsysstats.c: Likewise.
7801 2003-03-20  Alexandre Oliva  <aoliva@redhat.com>
7803         * sysdeps/mips/bits/setjmp.h: n32 has only 6 call-saved fpregs.
7804         * sysdeps/mips/mips64/setjmp_aux.c (__sigsetjmp_aux): Adjust.
7805         * sysdeps/mips/mips64/__longjmp.c (__longjmp): Likewise.
7807         * sysdeps/unix/sysv/linux/mips/pread.c: Don't break up offset
7808         into high and low halves on n64.
7809         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
7810         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
7811         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
7813 2003-03-20  Ulrich Drepper  <drepper@redhat.com>
7815         * include/atomic.h (atomic_decrement_if_positive): Adjust for the
7816         correct atomic_compare_and_exchange_acq semantics.
7818 2003-03-20  Alexandre Oliva  <aoliva@redhat.com>
7820         * sysdeps/mips/ieee754.h: Remove excess #endif.
7822 2003-03-20  Roland McGrath  <roland@redhat.com>
7824         * sysdeps/powerpc/bits/atomic.h (atomic_exchange): Remove unused
7825         variable.  Remove superfluous memory clobber.
7827         * include/atomic.h: Syntax braino fix.
7829         * posix/tst-nice.c (do_test): Use %m formats instead of printing errno
7830         in decimal.  Don't bail if niced at start.  Just check that nice call
7831         bumps the total at all.
7833 2003-03-20  Alexandre Oliva  <aoliva@redhat.com>
7835         * sysdeps/mips/bits/setjmp.h: Store all N32 and N64 registers,
7836         including pc, gp, sp and fp, as long long.
7837         * sysdeps/mips/mips64/setjmp.S: Pass gp to __sigsetjmp_aux.
7838         * sysdeps/mips/mips64/setjmp_aux.c: Adjust type of arguments.
7839         Add gp argument, and set gp in the jmpbuf to it.
7840         * sysdeps/mips/setjmp_aux.c: Revert to o32-only.
7842 2003-03-20  Ulrich Drepper  <drepper@redhat.com>
7844         * include/atomic.h: Define atomic_exchange and
7845         atomic_decrement_if_positive if not already defined.  Add some
7846         __builtin_expect.
7847         * sysdeps/i386/i486/bits/atomic.h: Define atomic_exchange.
7848         * sysdeps/x86_64/bits/atomic.h: Likewise.
7849         * sysdeps/ia64/bits/atomic.h: Pretty printing.  Define atomic_exchange.
7850         * sysdeps/powerpc/bits/atomic.h: Pretty printing.  Define
7851         atomic_exchange, atomic_exchange_and_add, and
7852         atomic_decrement_if_positive
7854 2003-03-20  Alexandre Oliva  <aoliva@redhat.com>
7856         * sysdeps/unix/sysv/linux/mips/mips64/n64/ioctl.S: Sign-extend
7857         with a single instruction.
7859         * sysdeps/mips/dl-machine.h (ELF_MIPS_GNU_GOT1_MASK): Define
7860         properly for n64.
7861         (elf_machine_runtime_setup): Cast link_map pointer to Elf Addr
7862         type.
7863         (elf_machine_rel, elf_machine_rel_relative): Cast symidx to Elf
7864         Word before comparing with gotsym.  Take reloc_addr argument as
7865         void*.  Remove the code added for the compiler to drop any
7866         alignment assumptions.
7868 2003-03-19  Ulrich Drepper  <drepper@redhat.com>
7870         * Makefile (distribute): Add include/atomic.h and bits/atomic.h.
7871         * include/atomic.h: New file.
7872         * sysdeps/i386/i486/bits/atomic.h: New file.
7873         * sysdeps/x86_64/bits/atomic.h: New file.
7874         * sysdeps/s390/bits/atomic.h: New file.
7875         * sysdeps/sh/bits/atomic.h: New file.
7876         * sysdeps/ia64/bits/atomic.h: New file.
7877         * sysdeps/powerpc/bits/atomic.h: New file.
7878         * sysdeps/generic/bits/atomic.h: New file.
7879         * sysdeps/i386/i486/atomicity.h: Removed.
7880         * sysdeps/x86_64/atomicity.h: Removed.
7881         * sysdeps/s390/s390-32/atomicity.h: Removed.
7882         * sysdeps/s390/s390-64/atomicity.h: Removed.
7883         * sysdeps/ia64/atomicity.h: Removed.
7884         * sysdeps/powerpc/powerpc32/atomicity.h: Removed.
7885         * sysdeps/powerpc/powerpc64/atomicity.h: Removed.
7886         * elf/dl-profile.c: Use atomic.h instead of atomicity.h.  Adjust
7887         use of macros from atomicity.h to new names and semantics.
7888         * gmon_mcount.c: Likewise.
7889         * malloc/set-freeres.c: Likewise.
7890         * nscd/cache.c: Likewise.
7891         * stdlib/cxa_finalize.c: Likewise.
7892         * sysdeps/unix/sysv/linux/getsysstats.c: Likewise.
7894 2003-03-19  Alexandre Oliva  <aoliva@redhat.com>
7896         * sysdeps/mips/ieee754.h: New file, suitable to replace both
7897         ../ieee754/ieee754.h and ../ieee754/ldbl-128/ieee754.h, kept
7898         mips-specific for now.
7900 2003-03-19  Ulrich Drepper  <drepper@redhat.com>
7902         * stdlib/strtod.c (INTERNAL): While eating trailing zeros handle
7903         hexdigits correctly.  Reported by Fred Tydeman <tydeman@tybor.com>.
7904         * stdlib/tst-strtod.c: Add test for the bug.
7906         * posix/tst-nice.c (do_test): Remove invalid of return value.
7907         Don't run test if initial level != 0.
7909 2003-03-19  Amos Waterland  <apw@us.ibm.com>
7911         * posix/tst-nice.c: New file.
7912         * posix/Makefile (tests): Add tst-nice.
7914 2003-03-18  Roland McGrath  <roland@redhat.com>
7916         * abilist: New directory of libfoo.abilist files maintained using
7917         scripts/merge-abilist.awk and "make update-abi" rules.
7918         * Makefile (distribute): Add abilist/*.abilist.
7919         * Makerules [$(build-shared) = yes] [$(subdir)] (tests):
7920         Depend on check-abi.
7922         * configure.in: Move $critic_missing check after all AC_CHECK_PROG_VER.
7923         * configure: Regenerated.
7925         * sysdeps/unix/sysv/linux/syscalls.list (posix_fadvise64): Fix name.
7927 2003-03-18  Ulrich Drepper  <drepper@redhat.com>
7929         * sysdeps/posix/sysconf.c (__sysconf): Handle _SC_MONOTONIC_CLOCK
7930         correctly.
7932 2003-03-18  Steven Munroe  <sjmunroe@us.ibm.com>
7934         * sysdeps/powerpc/powerpc64/memcpy.S: New file.
7936 2003-03-18  Ulrich Drepper  <drepper@redhat.com>
7938         * Versions.def: Add GLIBC_2.3.3 for libpthread.
7940 2003-03-17  Ulrich Drepper  <drepper@redhat.com>
7942         * sysdeps/generic/libc-start.c [!SHARED &&
7943         !LIBC_START_MAIN_AUXVEC_ARG]: Compute beginning of auxvec correctly.
7945 2003-03-17  Roland McGrath  <roland@redhat.com>
7947         * include/ctype.h: Revert last change.
7949 2003-03-17  Ulrich Drepper  <drepper@redhat.com>
7951         * argp/tst-argp1.c: Use test-skeleton.c.
7952         * locale/tst-C-locale.c: Likewise.
7954 2003-03-17  Alexandre Oliva  <aoliva@redhat.com>
7956         * sysdeps/mips/mips64/Implies: Move wordsize-64 to...
7957         * sysdeps/mips/mips64/n64/Implies: New file.
7958         * sysdeps/mips/mips64/n64/Makefile: New file.
7959         * sysdeps/mips/mips64/n64/el/bits/endian.h: New file.
7960         * sysdeps/mips/mips64/n32/Implies: New file.
7961         * sysdeps/mips/mips64/n32/Makefile: New file.
7962         * sysdeps/mips/mips64/n32/el/bits/endian.h: New file.
7963         * sysdeps/unix/mips/mips64/n32/sysdep.h: New file.
7964         * sysdeps/unix/mips/mips64/n64/sysdep.h: New file.
7965         * sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h: New file.
7966         * sysdeps/unix/sysv/linux/mips/mips64/n64/glob64.c: New file.
7967         * sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h: New file.
7968         * sysdeps/unix/sysv/linux/mips/mips64/ldconfig.h: New file.
7969         * sysdeps/unix/sysv/linux/mips/mips64/llseek.c: New file.
7970         * sysdeps/unix/sysv/linux/mips/mips64/recv.c: New file.
7971         * sysdeps/unix/sysv/linux/mips/mips64/send.c: New file.
7972         * sysdeps/unix/sysv/linux/mips/mips64/syscall.S: New file.
7973         * sysdeps/unix/sysv/linux/mips/mips64/syscalls.list: New file.
7974         * sysdeps/unix/sysv/linux/mips/mips64/umount.c: New file.
7975         * sysdeps/unix/sysv/linux/mips/mips64/n64/ioctl.S: New file.
7977         * sysdeps/unix/sysv/linux/configure.in (libc_cv_slibdir): Use
7978         lib64 for mips64/n64 and lib32 for mips64/n32.
7979         (ldd_rewrite_script): Needed for all mips64 configurations.
7980         * sysdeps/unix/sysv/linux/configure: Rebuilt.
7981         * sysdeps/unix/sysv/linux/mips/mips64/ldd-rewrite.sed: New file.
7982         * sysdeps/unix/sysv/linux/mips/mips64/Dist: New file.
7984         * sysdeps/mips/machine-gmon.h (MCOUNT): Define for N32 and N64 as
7985         well.
7987         * sysdeps/unix/sysv/linux/mips/configure.in: New.  Pre-process
7988         asm/unistd.h into asm-unistd.h.
7989         * sysdeps/unix/sysv/linux/mips/configure: Generated.
7990         * sysdeps/unix/sysv/linux/mips/Makefile: Do custom processing
7991         of syscall list.
7992         * sysdeps/unix/sysv/linux/mips/sys/syscall.h: New file.
7993         * sysdeps/unix/sysv/linux/mips/clone.S: Don't include
7994         asm/unistd.h.
7996         * sysdeps/unix/sysv/linux/mips/sys/ptrace.h: New file.
7997         * sysdeps/unix/sysv/linux/mips/ptrace.c: New file.  Use long
7998         long type for registers on n32.
8000         * sysdeps/mips/bits/wordsize.h: New file, appropriate for all
8001         3 ABIs.
8002         * sysdeps/mips/mips64/gmp-mparam.h: New file.  Define
8003         BITS_PER_LONGINT to __WORDSIZE, to match all 3 ABIs.
8004         * sysdeps/mips/setjmp_aux.c (STRINGXP, REGS, PTRS): New macros.
8005         (__sigsetjmp_aux): Use them.  Adjust for all 3 ABIs.
8006         * sysdeps/mips/elf/start.S: Adjust for all 3 ABIs.
8007         * sysdeps/unix/mips/brk.S: Likewise.
8008         * sysdeps/unix/mips/sysdep.S: Likewise.
8009         * sysdeps/unix/sysv/linux/mips/clone.S: Likewise.
8010         * sysdeps/mips/bits/setjmp.h (__jmp_buf): Likewise.
8011         * sysdeps/mips/sys/ucontext.h: Likewise.
8012         * sysdeps/unix/sysv/linux/mips/sys/profcs.h: Likewise.
8013         * sysdeps/unix/sysv/linux/mips/sys/ucontext.h: Likewise.
8014         * sysdeps/unix/sysv/linux/mips/kernel_stat.h: Likewise.
8015         * sysdeps/mips/mips64/bsd-_setjmp.S: Likewise.
8016         * sysdeps/mips/mips64/bsd-setjmp.S: Likewise.
8017         * sysdeps/mips/mips64/setjmp.S: Likewise.
8018         * sysdeps/mips/mips64/bits/setjmp.h: Deleted, obsolete.
8019         * sysdeps/mips/mips64/soft-fp/sfp-machine.h: Use long long for
8020         64-bit types.
8022 2003-03-16  Ulrich Drepper  <drepper@redhat.com>
8024         * sysdeps/unix/clock_settime.c (HANDLE_REALTIME): Define tv here,
8025         not at function level.
8026         * sysdeps/unix/clock_gettime.c (HANDLE_REALTIME): Likewise.
8028 2003-03-15  Roland McGrath  <roland@redhat.com>
8030         * nis/nss_nis/nis-hosts.c (internal_gethostbyname2_r): int -> size_t
8031         * nis/nss_nis/nis-network.c (_nss_nis_getnetbyname_r): Likewise.
8032         * nis/nss_nis/nis-alias.c (_nss_nis_getaliasbyname_r): Likewise.
8033         * nis/nis_table.c (__create_ib_request): Likewise.
8035         * posix/fnmatch_loop.c: Add casts for signedness.
8036         * nss/nss_files/files-hosts.c: Likewise.
8037         * nscd/nscd_getpw_r.c (nscd_getpw_r): Likewise.
8038         * gmon/gmon.c (write_call_graph): Use u_long for FROM_LEN.
8039         * nscd/nscd_getgr_r.c (nscd_getgr_r): Use nscd_ssize_t for CNT.
8041         * configure.in (libc_cv_visibility_attribute): Use AC_TRY_COMMAND,
8042         get errors into the log file.
8043         (libc_cv_broken_visibility_attribute): Likewise.
8044         (libc_cv_broken_alias_attribute): Likewise.
8045         (libc_cv_asm_weak_directive): Likewise.
8046         (libc_cv_need_minus_P): Likewise.
8047         (libc_cv_dot_text): Likewise.
8048         (libc_cv_asm_global_directive): Likewise.
8049         (libc_cv_asm_type_prefix): Likewise.
8050         * configure: Regenerated.
8052         * nscd/cache.c (cache_search): Give first arg type `request_type'.
8053         * nscd/nscd.h: Update decl.
8055         * nscd/nscd_getpw_r.c (nscd_getpw_r): Add casts for signedness.
8056         * nscd/nscd_getgr_r.c (nscd_getgr_r): Likewise.
8057         * elf/dl-close.c (_dl_close): Likewise.
8058         * sysdeps/unix/sysv/linux/powerpc/chown.c (__chown): int -> size_t
8059         * io/fts.c (fts_build): Likewise.
8060         * elf/cache.c (add_to_cache): Likewise.
8061         * locale/programs/locarchive.c (show_archive_content): Likewise.
8063         * posix/fnmatch.c (fnmatch): Tweak __builtin_expect use.
8065         * include/ctype.h (__ctype_b_loc): Tweak type punning to make gcc 3.3
8066         happy.
8067         (__ctype_toupper_loc, __ctype_tolower_loc): Likewise.
8069 2003-03-15  Ulrich Drepper  <drepper@redhat.com>
8071         * sysdeps/unix/sysv/linux/ia64/system.c: Use the generic Linux
8072         code for most parts.
8074 2003-03-15  Roland McGrath  <roland@redhat.com>
8076         * sysdeps/unix/sysv/linux/i386/system.c: Moved to ...
8077         * sysdeps/unix/sysv/linux/system.c: ... here.
8078         (FORK): Don't #define if already #define'd.
8079         * sysdeps/unix/sysv/linux/s390/system.c: File removed.
8080         * sysdeps/unix/sysv/linux/kernel-features.h [__powerpc__]:
8081         (__ASSUME_CLONE_THREAD_FLAGS): Define for kernel >= 2.5.64.
8083         * dlfcn/tst-dlinfo.c: New file.
8084         * dlfcn/Makefile (tests): Add tst-dlinfo.
8085         ($(objpfx)tst-dlinfo): New target.
8087         * dlfcn/dlinfo.c: New file.
8088         * dlfcn/Makefile (libdl-routines): Add it.
8089         * dlfcn/Versions (libdl: GLIBC_2.3.3): Add dlinfo.
8090         * dlfcn/dlfcn.h [__USE_GNU]: Declare dlinfo.
8091         [__USE_GNU] (RTLD_DI_*): New enum constants.
8092         [__USE_GNU] (Dl_serpath, Dl_serinfo): New types.
8093         * elf/dl-load.c (cache_rpath): New inline function.
8094         (_dl_map_object): Use it.
8095         (_dl_rtld_di_serinfo): New function.
8096         * sysdeps/generic/ldsodefs.h: Declare it.
8097         * elf/Versions (ld: GLIBC_PRIVATE): Add it.
8099         * sysdeps/powerpc/elf/libc-start.c (AUX_VECTOR_INIT): Define it.
8100         (LIBC_START_MAIN, LIBC_START_MAIN_AUXVEC_ARG, MAIN_AUXVEC_ARG)
8101         (INIT_MAIN_ARGS): Define, and #include <sysdeps/generic/libc-start.c>.
8102         (__libc_start_main): Just call the generic one for most of the work.
8104         * sysdeps/generic/libc-start.c [LIBC_START_MAIN]: If defined, define a
8105         static function by that name instead of BP_SYM (__libc_start_main).
8106         [LIBC_START_MAIN_AUXVEC_ARG]: Take AUXVEC as argument.
8107         [MAIN_AUXVEC_ARG]: Pass 4th argument to MAIN.
8108         [INIT_MAIN_ARGS]: Give INIT the same args as MAIN.
8110         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start) [DL_PLATFORM_AUXV]:
8111         Use this macro for extra AT_* cases.
8112         * sysdeps/unix/sysv/linux/powerpc/dl-sysdep.c (DL_PLATFORM_AUXV):
8113         New macro, guts from ...
8114         (__aux_init_cache): ... here, function removed.
8115         (DL_PLATFORM_INIT): Don't define this.
8117         * sysdeps/powerpc/powerpc32/memset.S: Put __cache_line_size in bss.
8118         * sysdeps/powerpc/powerpc64/memset.S: Likewise.
8120         * Versions.def (libthread_db): Add GLIBC_2.3.3 set.
8122 2003-03-14  Roland McGrath  <roland@redhat.com>
8124         * dlfcn/dlerror.c (dlerror): If objname is "", don't put ": " after it.
8126 2003-03-14  Jakub Jelinek  <jakub@redhat.com>
8128         * sysdeps/unix/sysv/linux/Makefile (syscall-%.h): Fix a typo.
8130         * sysdeps/unix/sysv/linux/sparc/sparc64/pause.c: Include
8131         sysdeps/posix/pause.c instead of sysdeps/unix/common/pause.c.
8133 2003-03-14  Alexandre Oliva  <aoliva@redhat.com>
8135         * sysdeps/mips/fpu/bits/mathdef.h: New.
8136         (__NO_LONG_DOUBLE_MATH): Define for o32.
8138         * sysdeps/mips/sys/asm.h: Formatting changes.
8139         (PTR, PTRSIZE, PTRLOG): Adjust for all 3 ABIs.
8140         (CPADD): Define for all of them.
8141         (SETUP_GP, SETUP_GPX, SETUP_GPX_L, SAVE_GP, SETUP_GP64,
8142         SETUP_GPX64, SETUP_GPX64_L, RESTORE_GP64, USE_ALT_CP,
8143         NARGSAVE): Define per ABI spec.
8144         (END): Don't redefine.
8145         (LONG_SLL, LONG_SLLV, LONG_SRL, LONG_SRLV, LONG_SRA,
8146         LONG_SRAV): Remove duplicate definitions.
8147         (PTR_ADD, PTR_ADDI, PTR_ADDU, PTR_ADDIU, PTR_SUB, PTR_SUBI,
8148         PTR_SUBU, PTR_SUBIU, PTR_L, PTR_S, PTR_SLL, PTR_SLLV, PTR_SRL,
8149         PTR_SRLV, PTR_SRA, PTR_SRAV, PTR_SCALESHIFT): Define for n32.
8150         (PTR_LA): Define for all 3 ABIs.
8152         * sysdeps/mips/dl-machine.h: Include sys/asm.h.
8153         (elf_machine_matches_host): Prevent linking of o32 and n32
8154         together.
8155         (elf_machine_dynamic): Document assumption on $gp.
8156         (STRINGXP, STRINGXV, STRINGV_): New macros.
8157         (elf_machine_load_address): Use them to stringize PTR_LA and
8158         PTR_SUBU.
8159         (ELF_DL_FRAME_SIZE, ELF_DL_SAVE_ARG_REGS,
8160         ELF_DL_RESTORE_ARG_REGS, IFABIO32): New macros used in...
8161         (_dl_runtime_resolve): Adjust it for all 3 ABIs.
8162         (__dl_runtime_resolve): Cast the symtab initializer to the
8163         right type.
8164         (RTLD_START): Use it.  Adjust it for all 3 ABIs.
8165         (elf_machine_rel): Mark as always_inline in RTLD_BOOTSTRAP.
8166         Handle 64-bit R_MIPS_REL composite relocation and accept
8167         R_MIPS_64 relocations to shift addend size to 64 bits.
8168         Document assumption regarding local GOT entries.  Document
8169         backward-compatibility departing from the ABI behavior in
8170         applying relocations that reference section symbols, no longer
8171         used.  Support relocations to mis-aligned offsets.
8172         * sysdeps/mips/mips64/dl-machine.h: Deleted, obsolete.
8174         * sysdeps/unix/sysv/linux/mips/readelflib.c: New file.
8176         * sysdeps/unix/sysv/linux/mips/kernel_sigaction.h
8177         (_KERNEL_NSIG_BPW): Define in terms of _MIPS_SZLONG.
8178         * sysdeps/unix/sysv/linux/mips/sigaction.c: Define restore and
8179         restore_rt functions.  Use them.
8181         * sysdeps/unix/sysv/linux/mips/sys/tas.h (_test_and_set): Don't
8182         .set mips2 on new abis.
8184 2003-03-13  Ulrich Drepper  <drepper@redhat.com>
8186         * posix/getconf.c: Recognize POSIX2_SYMLINKS.
8187         * sysdeps/generic/bits/confname.h: Define _PC_2_SYMLINKS.
8188         * sysdeps/posix/fpathconf.c: Handle _PC_2_SYMLINKS.
8189         * sysdeps/posix/pathconf.c: Likewise.
8190         * sysdeps/unix/sysv/linux/fpathconf.c: Likewise.
8191         * sysdeps/unix/sysv/linux/pathconf.c: Likewise.
8192         * sysdeps/unix/sysv/linux/pathconf.h: Define statfs_symlinks.
8194         * sysdeps/unix/sysv/linux/linux_fsinfo.h: Define some more magic
8195         words.
8197 2003-03-14  Alexandre Oliva  <aoliva@redhat.com>
8199         * include/gmp.h: Include/gmp-mparam.h.
8200         * stdlib/strtod.c: Include gmp-mparam.h before gmp.h and
8201         gmp-impl.h.
8203         * elf/dl-conflict.c: Don't compile _dl_resolve_conflicts if
8204         ELF_MACHINE_NO_RELA is set.
8205         * elf/rtld.c (dl_main): No prelink support for REL-only.
8207         * sysdeps/generic/ldconfig.h (FLAG_MIPS64_LIBN32,
8208         FLAG_MIPS64_LIBN64): Define.
8209         * elf/cache.c (print_entry): Handle mips64 n32 and n64.
8211         * sysdeps/mips/memcpy.S: Map t0-3 to a4-7 on new abis.
8212         * sysdeps/mips/memset.S: Likewise.
8213         * sysdeps/mips/sys/regdef.h: Alias a4-7 or t0-3 to $8-11
8214         depending on the ABI.
8216         * sysdeps/mips/atomicity.h (exchange_and_add, atomic_add):
8217         Don't .set mips2 on new abi.
8218         (compare_and_swap): Likewise.  Support 64-bit longs on n64.
8220         * stdlib/fpioconst.h: Include gmp.h with angle brackets.
8222 2003-03-13  Roland McGrath  <roland@redhat.com>
8224         * elf/dl-load.c (_dl_map_object_from_fd): Bail if no PT_LOAD phdrs
8225         found.  Reported by Alexandre Oliva <aoliva@redhat.com>.
8227 2003-03-13  Alexandre Oliva  <aoliva@redhat.com>
8229         * stdio-common/_itoa.c (_itoa_base_table): Make 64-bit
8230         literals long long.
8231         * stdlib/fpioconst.c: Likewise.
8232         * stdlib/strtod.c: Likewise.
8234         * sysdeps/mips/add_n.S: Use L macro for local labels.
8235         * sysdeps/mips/addmul_1.S: Likewise.
8236         * sysdeps/mips/lshift.S: Likewise.
8237         * sysdeps/mips/memcpy.S: Likewise.
8238         * sysdeps/mips/memset.S: Likewise.
8239         * sysdeps/mips/mul_1.S: Likewise.
8240         * sysdeps/mips/rshift.S: Likewise.
8241         * sysdeps/mips/sub_n.S: Likewise.
8242         * sysdeps/mips/submul_1.S: Likewise.
8243         * sysdeps/mips/mips64/add_n.S: Likewise.
8244         * sysdeps/mips/mips64/addmul_1.S: Likewise.
8245         * sysdeps/mips/mips64/lshift.S: Likewise.
8246         * sysdeps/mips/mips64/mul_1.S: Likewise.
8247         * sysdeps/mips/mips64/rshift.S: Likewise.
8248         * sysdeps/mips/mips64/sub_n.S: Likewise.
8249         * sysdeps/mips/mips64/submul_1.S: Likewise.
8250         * sysdeps/unix/mips/sysdep.h: Define L() according to ABI
8251         conventions.  Define END as in sys/asm.h.
8252         * sysdeps/unix/mips/sysdep.S: Likewise.
8253         * sysdeps/unix/mips/wait.S: Likewise.
8254         * sysdeps/unix/sysv/linux/mips/clone.S: Likewise.
8256         * sysdeps/ieee754/dbl-64/dbl2mpn.c (__mpn_extract_double):
8257         Cast shifted values that may be too narrow to mp_limb_t.
8258         * sysdeps/ieee754/dbl-64/mpn2dbl.c (__mpn_construct_double):
8259         Likewise.
8260         * sysdeps/ieee754/flt-32/mpn2flt.c (__mpn_construct_float):
8261         Likewise.
8262         * sysdeps/ieee754/ldbl-128/ldbl2mpn.c
8263         (__mpn_extract_long_double): Likewise.
8264         * sysdeps/ieee754/ldbl-128/mpn2ldbl.c
8265         (__mpn_construct_long_double): Likewise.
8266         * sysdeps/ieee754/ldbl-96/ldbl2mpn.c
8267         (__mpn_extract_long_double): Likewise.
8268         * sysdeps/ieee754/ldbl-96/mpn2ldbl.c
8269         (__mpn_construct_long_double): Likewise.
8271 2003-03-13  Roland McGrath  <roland@redhat.com>
8273         * elf/Makefile ($(objpfx)librtld.mk): Tweak regexp so that one-line
8274         entries in the map file match too.
8276 2003-03-13  Guido Guenther  <agx@sigxcpu.org>
8278         * sysdeps/unix/sysv/linux/mips/clone.S: introduce and use local
8279         label .Lthread_start since current binutils don't allow branches
8280         to globally visible symbols.
8282 2003-03-13  Jakub Jelinek  <jakub@redhat.com>
8284         * sysdeps/unix/sysv/linux/ia64/sysdep.h (BREAK_INSN_1, BREAK_INSN,
8285         ASM_OUTARGS_0, ASM_OUTARGS_1, ASM_OUTARGS_2, ASM_OUTARGS_3,
8286         ASM_OUTARGS_4, ASM_OUTARGS_5, ASM_OUTARGS_6): Define.
8287         (INTERNAL_SYSCALL, INLINE_SYSCALL): Use it.  Make syscall arguments
8288         clobbered by the syscall.
8289         (ASM_ARGS_1, ASM_ARGS_2, ASM_ARGS_3, ASM_ARGS_4, ASM_ARGS_5,
8290         ASM_ARGS_6): Change constraints from r to index of corresponding
8291         output register.
8292         * sysdeps/unix/sysv/linux/ia64/clone2.S (__clone2): Swap
8293         ptid and ctid to match kernel.
8294         * sysdeps/unix/sysv/linux/ia64/system.c (FORK): Likewise.
8296 2003-03-12  Steven Munroe  <sjmunroe@us.ibm.com>
8298         * sysdeps/powerpc/powerpc64/elf/configure.in: Remove
8299         AC_DEFINE(PI_STATIC_AND_HIDDEN).  Not supported for PowerPC64.
8300         * sysdeps/powerpc/powerpc64/elf/configure: Regenerated.
8302 2003-03-11  Roland McGrath  <roland@redhat.com>
8304         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela):
8305         Check SYM_MAP rather than SYM as definedness check.
8306         Handle R_PPC64_ADDR32, R_PPC64_ADDR30, and R_PPC64_REL64 relocs.
8307         Don't handle R_PPC64_REL24 reloc.
8308         Mostly from Steven Munroe <sjmunroe@us.ibm.com>.
8310         * sysdeps/powerpc/powerpc64/dl-machine.h
8311         [USE_TLS] (elf_machine_type_class): Match all the TLS relocs in a
8312         block, so we cover all the TPREL16* flavors without 6 ||s.
8313         [USE_TLS] (elf_machine_tprel): New function.
8314         (elf_machine_rela) [USE_TLS]: Use elf_machine_tprel for TPREL64 reloc,
8315         and handle TPREL16 relocs too.  Return rather than break for DTPREL64.
8316         Mostly from Steven Munroe <sjmunroe@us.ibm.com>.
8318 2003-03-11  Ralf Baechle  <ralf@linux-mips.org>
8320         * sysdeps/unix/sysv/linux/mips/clone.S (__thread_start): Use jal
8321         instead of jalr to invoke subroutine so restoring the $gp register
8322         will work properly.
8324 2003-03-11  Martin Schwidefsky  <schwidefsky@de.ibm.com>
8326         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (__NR_pread64): Define
8327         to __NR_pread if not defined.
8328         (__NR_pwrite64): Define to __NR_pwrite if not defined.
8330 2003-03-11  Jakub Jelinek  <jakub@redhat.com>
8332         * sysdeps/unix/sysv/linux/ia64/system.c: New file.
8333         * sysdeps/unix/sysv/linux/kernel-features.h
8334         (__ASSUME_CLONE_THREAD_FLAGS): Define for IA-64 and s390* with
8335         kernel >= 2.5.64.
8337 2003-03-11  Jakub Jelinek  <jakub@redhat.com>
8339         * sysdeps/generic/dl-sysdep.c (_dl_important_hwcaps): If CNT == 1,
8340         allocate space even for the trailing '/'.
8341         Reported by John Reiser <jreiser@BitWagon.com>.
8343         * sysdeps/unix/sysv/linux/ia64/sysdep.h (LOAD_ARGS_6, ASM_ARGS_6,
8344         ASM_CLOBBERS_6): Define.
8345         (ASM_CLOBBERS_5): Use ASM_CLOBBERS_6.
8346         * sysdeps/unix/sysv/linux/ia64/clone2.S (__clone2): Reorder arguments
8347         to match IA-32 order.
8348         * sysdeps/unix/sysv/linux/i386/clone.S: Fix comment.
8350 2003-03-10  Steven Munroe  <sjmunroe@us.ibm.com>
8352         * sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S: Don't clobber R7.
8353         Copy extra params for NPTL to registers used in clone syscall.
8355 2003-03-10  Martin Schwidefsky  <schwidefsky@de.ibm.com>
8357         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Correct system
8358         call names for pread and pwrite.
8360 2003-03-10  Roland McGrath  <roland@redhat.com>
8362         * dlfcn/Makefile (libdl-routines): Add dladdr1.
8363         * dlfcn/dladdr1.c: New file.
8364         * dlfcn/dlfcn.h [__USE_GNU]: Declare dladdr1.
8365         [__USE_GNU] (RTLD_DL_SYMENT, RTLD_DL_LINKMAP): New enum constants.
8366         * elf/dl-addr.c (_dl_addr): Take new args, a struct link_map ** and
8367         a const ElfNN_Sym ** to fill in.
8368         * include/dlfcn.h: Update decl.  Include <link.h>.
8369         * dlfcn/dladdr.c (dladdr): Update caller.
8370         * malloc/mtrace.c (tr_where): Likewise.
8371         * sysdeps/generic/elf/backtracesyms.c: Likewise.
8372         * sysdeps/generic/elf/backtracesymsfd.c: Likewise.
8373         * dlfcn/Versions (libdl: GLIBC_2.3.3): New set, add dladdr1.
8374         * Versions.def (libdl): Define GLIBC_2.3.3 set.
8376         * sysdeps/unix/make-syscalls.sh: Generate $(compile-syscall) for
8377         assembler command.
8378         * sysdeps/unix/Makefile (compile-syscall): New variable.
8379         Pass -g0 to compiler for assembling syscall stubs from stdin.
8381         * sysdeps/i386/sysdep.h [HAVE_CPP_ASM_DEBUGINFO]
8382         (STABS_CURRENT_FILE, STABS_CURRENT_FILE1, STABS_FUN, STABS_FUN_END):
8383         Define these to do nothing.
8385         * configure.in: New check for -g on .S files.
8386         * configure: Regenerated.
8387         * config.make.in (have-cpp-asm-debuginfo): New variable.
8388         * config.h.in (HAVE_CPP_ASM_DEBUGINFO): New #undef.
8389         * Makeconfig (ASFLAGS): New variable, if undefined and
8390         $(have-cpp-asm-debuginfo), take options matching -g% from $(CFLAGS).
8391         * Makerules (compile.S, COMPILE.S): Use $(ASFLAGS).
8393 2003-03-09  Roland McGrath  <roland@redhat.com>
8395         * sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S: Take 3 new args
8396         used by NPTL on new kernels.  From Paul Mackerras <paulus@samba.org>.
8398 2003-03-09  Ulrich Drepper  <drepper@redhat.com>
8400         * po/fi.po: Update from translation team.
8401         * po/ca.po: Likewise.
8402         * po/da.po: Likewise.
8404 2003-03-08  Ulrich Drepper  <drepper@redhat.com>
8406         * rt/tst-aio7.c (do_test): Change BYTES into a #define.
8408 2003-03-07  Ulrich Drepper  <drepper@redhat.com>
8410         * rt/tst-aio7.c (do_test): Give BUFF permanent extent, too.
8412         * sysdeps/powerpc/fpu/w_sqrt.c: Fix comment.
8414 2003-03-07  Roland McGrath  <roland@redhat.com>
8416         * sysdeps/s390/s390-32/sysdep.h (L): Use .Lfoo instead of foo.
8417         * sysdeps/s390/s390-64/sysdep.h (L): Likewise.
8419 2003-03-04  Guido Guenther  <agx@sigxcpu.org>
8421         * sysdeps/unix/sysv/linux/mips/syscalls.list: Remove unneeded
8422         stubs, we have INLINE_SYSCALL.
8423         * sysdeps/unix/sysv/linux/mips/bits/mman.h: Define MAP_POPULATE,
8424         MAP_NONBLOCK.
8426 2003-03-06  Roland McGrath  <roland@redhat.com>
8428         * rt/tst-aio7.c (do_test): Revert last change.  Instead, give CB1
8429         permanent extent and add a comment about testing its implicit teardown.
8431 2003-03-06  Martin Schwidefsky  <schwidefsky@de.ibm.com>
8433         * rt/tst-aio7.c (do_test): Cancel i/o on CB1 before it's out of scope.
8435 2003-03-05  Ulrich Drepper  <drepper@redhat.com>
8437         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage): Fix
8438         reversed __builtin_expect expectation.
8440 2003-03-05  Roland McGrath  <roland@redhat.com>
8442         * stdio-common/sscanf.c: Use prototype defn with ... syntax.
8443         * libio/swscanf.c: Likewise.
8444         * libio/swprintf.c: Likewise.
8446 2003-03-04  Roland McGrath  <roland@redhat.com>
8448         * sysdeps/powerpc/powerpc64/dl-machine.h: Include <dl-tls.h>.
8449         (elf_machine_rela): Always use RESOLVE_MAP, needed for
8450         R_PPC64_JMP_SLOT as well as TLS cases.
8451         (BIT_INSERT): Move parenthesis where it ought to have been.
8452         Reported by Steven Munroe <sjmunroe@us.ibm.com>.
8454         * posix/confstr.c (confstr): Correct STRING_LEN values for
8455         _CS_GNU_LIBC_VERSION and _CS_GNU_LIBPTHREAD_VERSION, add missing
8456         break.  Reported by Alexandre Julliard <julliard@winehq.com>.
8458 2003-03-04  Jakub Jelinek  <jakub@redhat.com>
8460         * sysdeps/ia64/fpu/libm-test-ulps: Regenerated.
8462 2003-03-04  Ulrich Drepper  <drepper@redhat.com>
8464         * sysdeps/unix/sysv/linux/x86_64/clone.S: Add support for the new
8465         clone parameters.
8467         * po/sv.po: Update from translation team.
8469 2003-03-04  Andreas Jaeger  <aj@suse.de>
8470             Ulrich Drepper  <drepper@redhat.com>
8472         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Fix comments.
8474 2003-03-03  Ulrich Drepper  <drepper@redhat.com>
8476         * sysdeps/generic/dl-sysdep.h: Add double include protection.
8478         * po/tr.po: Update from translation team.
8480         * elf/dl-load.c (_dl_map_object_from_fd): Determine whether there
8481         are holes between the segments.  Only call mprotect to set
8482         proection to PROT_NONE if there are some.
8484         * elf/dl-load.c (struct filebuf): Actually use FILEBUF_SIZE.
8485         Update comment.
8487         * include/sched.h (__clone2): Use ... instead of adding all the
8488         new parameters.
8490 2003-03-03  Roland McGrath  <roland@redhat.com>
8492         * elf/dl-load.c (struct filebuf): Fix typo in last change.
8494         * sysdeps/powerpc/powerpc32/elf/configure.in: Don't define
8495         PI_STATIC_AND_HIDDEN.
8497 2003-03-03  Ian Wienand  <ianw@gelato.unsw.edu.au>
8499         * sysdeps/unix/sysv/linux/ia64/clone2.S: Update to take extra clone
8500         flags.
8501         * include/sched.h: Update clone2 prototype.
8503 2003-03-03  Andreas Jaeger  <aj@suse.de>
8505         * math/tgmath.h (__TGMATH_UNARY_REAL_RET_ONLY): New definition.
8506         (llrint): Use it to correct return type.
8507         (lrint): Likewise.
8508         (lround): Likewise.
8509         (llround): Likewise.
8511 2003-03-03  Ulrich Drepper  <drepper@redhat.com>
8513         * elf/dl-load.c (struct filebuf): For 64-bit platforms use 640
8514         byte filebuf size.
8516         * libio/fileops.c (_IO_new_file_fopen): Close stillborn descriptor
8517         if ccs parameter isn't valid.  Reported by Andreas Schwab.
8519 2003-03-03  Martin Schwidefsky  <schwidefsky@de.ibm.com>
8521         * sysdeps/unix/sysv/linux/s390/s390-32/syscall.S (syscall): Add support
8522         for system call numbers > 255.
8523         * sysdeps/unix/sysv/linux/s390/s390-32/syscall.h (DO_CALL,
8524         INLINE_SYSCALL, INTERNAL_SYSCALL_DIRECT, INTERNAL_SYSCALL_SVC0,
8525         INTERNAL_SYSCALL): Likewise.
8526         * sysdeps/unix/sysv/linux/s390/s390-64/syscall.S (syscall): Likewise.
8527         * sysdeps/unix/sysv/linux/s390/s390-64/syscall.h (DO_CALL,
8528         INLINE_SYSCALL, INTERNAL_SYSCALL_DIRECT, INTERNAL_SYSCALL_SVC0,
8529         INTERNAL_SYSCALL): Likewise.
8531 2003-03-03  Martin Schwidefsky  <schwidefsky@de.ibm.com>
8533         * sysdeps/generic/dl-tls.c (_dl_deallocate_tls): Don't free the dtv
8534         array if it is the initial dtv.
8536 2003-03-03  Ulrich Drepper  <drepper@redhat.com>
8538         * po/es.po: Update from translation team.
8539         * po/fr.po: Likewise.
8540         * po/gl.po: Likewise.
8541         * po/sk.po: Likewise.
8542         * po/sv.po: Likewise.
8544         * sysdeps/unix/sysv/linux/syscalls.list: Add remap_file_pages entry.
8545         * misc/sys/mman.h: Add prototype for remap_file_pages.
8546         * sysdeps/generic/remap_file_pages.c: New file.
8547         * misc/Makefile (routines): Add remap_file_pages.
8548         * misc/Versions [libc:GLIBC_2.3.3]: Add remap_file_pages.
8550         * sysdeps/unix/sysv/linux/x86_64/bits/mman.h: Define MAP_POPULATE
8551         and MAP_NONBLOCK.
8552         * sysdeps/unix/sysv/linux/s390/bits/mman.h: Likewise.
8553         * sysdeps/unix/sysv/linux/powerpc/bits/mman.h: Likewise
8554         * sysdeps/unix/sysv/linux/m68k/bits/mman.h: Likewise.
8555         * sysdeps/unix/sysv/linux/arm/bits/mman.h: Likewise.
8556         * sysdeps/unix/sysv/linux/ia64/bits/mman.h: Likewise.
8557         * sysdeps/unix/sysv/linux/hppa/bits/mman.h: Likewise.
8558         * sysdeps/unix/sysv/linux/alpha/bits/mman.h: Likewise.
8559         * sysdeps/unix/sysv/linux/i386/bits/mman.h: Likewise.
8561 2003-03-03  Roland McGrath  <roland@redhat.com>
8563         * sysdeps/ia64/dl-fptr.c (__ia64_make_fptr): Revert last change.
8564         * sysdeps/ia64/dl-machine.h: Likewise.
8565         * sysdeps/ia64/dl-symaddr.c (_dl_symbol_address): Remove const from
8566         argument type.
8567         * sysdeps/ia64/dl-lookupcfg.h: Update decl.
8569         * sysdeps/wordsize-64/strtol_l.c (strtoll_l): Define as weak alias.
8570         * sysdeps/wordsize-64/strtoul_l.c (strtoull_l): Define as weak alias.
8571         * locale/Versions (libc: GLIBC_2.3): Move those to ...
8572         * sysdeps/wordsize-32/Versions (libc: GLIBC_2.3): ... here, new file.
8573         * sysdeps/wordsize-64/Versions (libc: GLIBC_2.3.3) Likewise.
8574         * Versions.def (libc): Add GLIBC_2.3.3 set.
8576         * sysdeps/ia64/dl-fptr.c (__ia64_make_fptr): Add const to MAP arg.
8577         * sysdeps/ia64/dl-machine.h: Update decl.
8579 2003-03-03  Andreas Jaeger  <aj@suse.de>
8581         * sysdeps/unix/clock_settime.c (HANDLE_REALTIME): Add missing brace.
8583 2003-03-02  Roland McGrath  <roland@redhat.com>
8585         * scripts/abilist.awk: Reject data items with apparent 0 size.
8587         * scripts/merge-abilist.awk: Restore hack to elide pattern foo.*/bar
8588         after foo.* as if it were a duplicate.
8590         * sysdeps/unix/sysv/linux/ia64/brk.S: Add .type and .size for __curbrk.
8592 2003-03-02  Ulrich Drepper  <drepper@redhat.com>
8594         * elf/dl-load.c (struct filebuf): Reduce buf array to 512 bytes.
8596         * sysdeps/generic/bits/time.h: Define CLOCK_MONOTONIC.
8597         * sysdeps/posix/clock_getres.c: Define code for CLOCK_REALTIME only
8598         if not already defined.  Use SYSDEP_GETRES to allow other files to
8599         provide alternative implementations.
8600         * sysdeps/unix/sysv/linux/clock_getres.c: New file
8601         * sysdeps/unix/clock_gettime.c: Define code for CLOCK_REALTIME only
8602         if not already defined.  Use SYSDEP_GETTIME to allow other files to
8603         provide alternative implementations.
8604         * sysdeps/unix/sysv/linux/clock_gettime.c: New file.
8605         * sysdeps/unix/clock_settime.c: Define code for CLOCK_REALTIME only
8606         if not already defined.  Use SYSDEP_GETTIME to allow other files to
8607         provide alternative implementations.
8608         * sysdeps/unix/sysv/linux/clock_settime.c: New file.
8609         * sysdeps/unix/clock_nanosleep.c: Use SYSDEP_NANOSLEEP to allow
8610         other files to provide alternative implementations.  Rearrange
8611         tests for invalid parameters.
8612         * sysdeps/unix/sysv/linux/clock_nanosleep.c: New file.
8613         * sysdeps/unix/sysv/linux/sysconf.c: New file.
8614         * sysdeps/unix/sysv/linux/kernel-features.h: Define
8615         __ASSUME_POSIX_TIMERS for Linux 2.5.63 and up.
8616         * sysdeps/unix/sysv/linux/bits/posix_opt.h: Define
8617         _POSIX_MONOTONIC_CLOCK.
8619 2003-03-02  Roland McGrath  <roland@redhat.com>
8621         * scripts/merge-abilist.awk: More checks for bogus input.
8622         Uniquify duplicate config names.
8624         * scripts/abilist.awk: Don't distinguish weak symbols in normal output.
8626         * sysdeps/powerpc/powerpc32/dl-machine.c (_dl_reloc_overflow): Renamed
8627         from dl_reloc_overflow, make global.
8628         (__process_machine_rela): Update callers.
8629         * sysdeps/powerpc/powerpc32/dl-machine.h: Declare _dl_reloc_overflow.
8630         Add attribute_hidden to __process_machine_rela decl.
8631         (elf_machine_type_class, elf_machine_rela): Handle 16-bit TLS relocs.
8633         * sysdeps/generic/libc-start.c (__libc_start_main): Don't assign const
8634         variable.
8636         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_fixup_plt):
8637         Don't use weak_extern for dl_rtld_map.  Instead check only if [SHARED].
8638         (elf_machine_rela): Clean up.
8640         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Clean up.
8642         PowerPC TLS support contributed by Paul Mackerras <paulus@samba.org>.
8643         * sysdeps/powerpc/powerpc32/elf/configure.in: New file.
8644         * sysdeps/powerpc/powerpc32/elf/configure: New generated file.
8645         * elf/tls-macros.h [__powerpc__ && !__powerpc64__]
8646         (TLS_LE, TLS_IE, TLS_LD, TLS_GD): Define them.
8647         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Support
8648         new relocs for TLS.
8650         * sysdeps/powerpc/dl-tls.h (TLS_TP_OFFSET, TLS_DTV_OFFSET): Move these
8651         macros out of [SHARED].
8652         (TLS_TPREL_VALUE, TLS_DTPREL_VALUE): New macros.
8654         * elf/elf.h: Define R_PPC_* relocs for TLS support.
8655         Clean up R_PPC64_* macro definition comments.
8657         * configure.in: In "running configure fragment for" message,
8658         omit $srcdir from the name if we prepended it.
8659         * configure: Regenerated.
8661         * elf/dl-reloc.c (allocate_static_tls): Fix calculations.
8662         From Jakub Jelinek <jakub@redhat.com>.
8664         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Revert last change,
8665         which duplicated the O_DIRECT defn.
8667 2003-03-01  GOTO Masanori  <gotom@debian.or.jp>
8669         * stdlib/stdlib.h: Add missing __USE_BSD enclosure for BSD derived
8670         random functions.
8672 2003-03-01  Andreas Schwab  <schwab@suse.de>
8674         * resolv/Makefile (tests): Don't depend on
8675         $(objpfx)mtrace-tst-leaks when cross compiling.
8677         * sysdeps/m68k/dl-machine.h (_dl_start_user): Access
8678         __libc_stack_end through GOT since it is a global symbol.
8680 2003-03-01  GOTO Masanori  <gotom@debian.or.jp>
8682         * argp/argp.h: Fix a typo.
8683         Reported by H.S.Teoh <hsteoh@quickfur.ath.cx>.
8685         * manual/terminal.texi: Fix cfmakeraw() definition from int to void.
8687 2003-02-27  Pat Rankin  <rankin@pactechdata.com>
8689         * posix/regexec.c (proceed_next_node): Cast re_string_get_buffer to
8690         char *.
8691         (get_subexp): Likewise.
8693 2003-03-01  GOTO Masanori  <gotom@debian.or.jp>
8695         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (O_DIRECT): Define.
8697 2003-02-26  Steven Munroe  <sjmunroe@us.ibm.com>
8699         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h (O_DIRECT): Define.
8701 2003-02-27  Roland McGrath  <roland@redhat.com>
8703         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela): Remove
8704         special case for dl_rtld_map in R_PPC64_RELATIVE; it's harmless to
8705         repeat it and avoids the test for the common case.
8706         Clean up and fix calculations for TLS relocs.
8708         * sysdeps/powerpc/powerpc64/dl-tls.h: Moved to ...
8709         * sysdeps/powerpc/dl-tls.h: ... here.
8710         (TLS_TP_OFFSET): New macro.
8712         * sunrpc/svc_udp.c (svcudp_recv): Add a cast to last change.
8714 2003-02-27  Ulrich Drepper  <drepper@redhat.com>
8716         * sysdeps/i386/fpu/libm-test-ulps: Increase ULPs for yn due to
8717         code generation changes in recent gcc.
8719 2003-02-26  Steven Munroe  <sjmunroe@us.ibm.com>
8721         * sysdeps/powerpc/fpu/fpu_control.h (_FPU_GETCW, _FPU_SETCW):
8722         Rename argument to avoid symbol conflict.
8724         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h
8725         [__USE_GNU] (O_DIRECT): New macro.
8727 2003-02-24  David Mosberger  <davidm@hpl.hp.com>
8729         * sysdeps/unix/sysv/linux/ia64/sysdep.S (__syscall_error): Fix
8730         unwind info.
8732 2003-02-27  Ulrich Drepper  <drepper@redhat.com>
8734         * resolv/res_libc.c [USE___THREAD] (_res): Don't need the
8735         initializer anymore now that res_thread_freeres is more careful.
8737         * sunrpc/svc_udp.c (svcudp_recv): Remove all control messages
8738         except the PKTINFO.  Reset interface in PKTINFO.
8739         Patch by Neil Brown <neilb@cse.unsw.edu.au> [PR libc/4973].
8741 2003-02-25  Steven Munroe  <sjmunroe@us.ibm.com>
8743         * elf/elf.h: Add new R_PPC64_* relocs for TLS.
8744         * elf/tls-macros.h [__powerpc64__] (TLS_LE, TLS_IE, TLS_LD, TLS_GD):
8745         Define.
8746         * sysdeps/powerpc/powerpc64/elf/configure.in: New file.
8747         * sysdeps/powerpc/powerpc64/elf/configure: New file (generated).
8748         * sysdeps/powerpc/powerpc64/dl-machine.h: Support new TLS relocs.
8749         * sysdeps/powerpc/powerpc64/dl-tls.h: New file.
8751         * sysdeps/powerpc/elf/libc-start.c (__libc_start_main):
8752         Do DL_SYSDEP_OSCHECK here, matching 2002-12-01 change to generic file.
8754 2003-02-25  Andreas Jaeger  <aj@suse.de>
8756         * manual/memory.texi (Malloc Tunable Parameters): Clarify
8757         behaviour of M_MMAP_THRESHOLD.
8759 2003-02-25  Roland McGrath  <roland@redhat.com>
8761         * resolv/res_init.c (res_thread_freeres): Bail out if _res.nscount is
8762         zero, inidicating _res was not initialized yet.
8764 2003-02-24  Ulrich Drepper  <drepper@redhat.com>
8766         * sysdeps/unix/sysv/linux/ttyname_r.c (__ttyname_r): Remove EACCES
8767         test.
8769 2003-02-24  Roland McGrath  <roland@redhat.com>
8771         * sysdeps/posix/pause.c: Add LIBC_CANCEL_HANDLED.
8773 2003-02-23  Roland McGrath  <roland@redhat.com>
8775         * sysdeps/posix/pause.c: New file.
8776         * sysdeps/unix/common/pause.c: File removed.
8778 2003-02-23  Ulrich Drepper  <drepper@redhat.com>
8780         * sysdeps/generic/bits/confname.h: Remove #ifs.
8782         * posix/Makefile (CFLAGS-regex.c): Remove RE_ENABLE_I18N definition.
8783         * posix/regex_internal.h (RE_ENABLE_I18N): Pretty printing.
8785         * resolv/res_libc.c [USE___THREAD] (_res): Initialize _vcsock
8786         element to -1.
8788 2003-02-22  Ulrich Drepper  <drepper@redhat.com>
8790         * sysdeps/generic/dl-sysdep.c: Avoid warning.
8792 2003-02-22  Roland McGrath  <roland@redhat.com>
8794         * resolv/tst-leaks.c: New file by Daniel Jacobowitz <drow@mvista.com>.
8795         * resolv/Makefile (tests): Add tst-leaks.
8796         ($(objpfx)tst-leaks): Depend on $(objpfx)libresolv.so.
8797         (tst-leaks-ENV): New variable.
8798         ($(objpfx)mtrace-tst-leaks): New target.
8799         (tests): Depend on it.
8801         * include/libc-internal.h: Declare __libc_thread_freeres.
8803         * Makerules: Fix last change to use $($(subdir)-version) when set.
8805         * Makerules (install-lib-nosubdir): Depend on installed
8806         libfoo-X.Y.Z.so and libfoo.so.NN files so they are installed
8807         regardless of the libfoo.so target's dependencies.
8809         * MakeTAGS (sub-make-vars): New variable, includes generating=t.
8810         Use that in $(MAKE) calls.
8812 2003-02-22  Ulrich Drepper  <drepper@redhat.com>
8814         * catgets/gencat.c (read_input_file): Collision between
8815         auto-assigned numbers and user-defined nubmers is not fatal.
8816         Handle it.
8817         Patch by Michael M. Lampkin <michael.lampkin@ieee.org>.
8818         * catgets/Makefile: Add rules to run test2.msg test.
8819         * catgets/test2.msg: New file.
8821         * catgets/gencat.c (main): Return 1 if messages have been printed.
8823         * iconv/iconv_prog.c (main): Unify messages.
8825         * stdlib/strtod.c (INTERNAL): Remove bogus clearing of second word
8826         when shifting retval.
8827         * stdlib/tst-strtod.c (main): Add strtold test case.
8828         Reported by Fred J. Tydeman <tydeman@tybor.com>.
8830 2003-02-21  Roland McGrath  <roland@redhat.com>
8832         * malloc/thread-freeres.c: Conditionalize on _LIBC_REENTRANT.
8833         * sunrpc/rpc_thread.c: Likewise for text_set_element use.
8834         (__rpc_thread_destroy): Add it to __libc_subfreeres too.
8836         * include/resolv.h: Add libc_hidden_proto for __res_nclose.
8837         * resolv/res_init.c (__res_nclose): Add libc_hidden_def.
8838         (res_thread_freeres): New function, on __libc_thread_subfreeres and
8839         __libc_subfreeres.
8841         * malloc/Versions (libc: GLIBC_PRIVATE): Add __libc_thread_freeres.
8842         * malloc/thread-freeres.c: New file.
8843         * malloc/Makefile (aux): Add it.
8844         * sunrpc/Versions (libc: GLIBC_PRIVATE): Removed.
8845         * sunrpc/rpc_thread.c (__rpc_thread_destroy): Put in special section
8846         "__libc_thread_freeres_fn" and add to __libc_thread_subfreeres set.
8848         * sysdeps/unix/sysv/linux/i386/geteuid.c (__geteuid): Typo fix.
8849         * sysdeps/unix/sysv/linux/i386/getgid.c (__getgid): Typo fix.
8851 2003-02-21  Roland McGrath  <roland@frob.com>
8853         * sysdeps/mach/hurd/opendir.c (__opendir): Use O_NONBLOCK in open.
8855         * iconvdata/Makefile (tests): Add bug-iconv3 only if
8856         [$(have-thread-library) = yes].
8858 2003-02-21  Ulrich Drepper  <drepper@redhat.com>
8860         * sysdeps/unix/sysv/linux/bits/signum.h (__SIGRTMAX): Define as _NSIG.
8862         * sysdeps/unix/sysv/linux/i386/getuid.c: Use INTERNAL_SYSCALL and do
8863         not chechk for errors (unless testing for 32bit variant).
8864         * sysdeps/unix/sysv/linux/i386/getgid.c: Likewise.
8865         * sysdeps/unix/sysv/linux/i386/geteuid.c: Likewise.
8866         * sysdeps/unix/sysv/linux/i386/getegid.c: Likewise.
8868 2003-02-21  Jakub Jelinek  <jakub@redhat.com>
8870         * sysdeps/x86_64/dl-machine.h (elf_machine_rela) <R_X86_64_PC32>:
8871         Check for signed overflow, not unsigned.
8873         * sysdeps/sparc/sparc64/elf/configure.in: New file.
8874         * sysdeps/unix/sysv/linux/sparc/sparc64/Makefile (sysdep-CFLAGS):
8875         Use -fcall-used-g6, not -fcall-used-g7.
8877 2003-02-21  Andreas Jaeger  <aj@suse.de>
8879         * sysdeps/x86_64/fpu/fesetenv.c (fesetenv): Fix setting of default
8880         mode.
8882         * sysdeps/x86_64/fpu/fsetexcptflg.c (fesetexceptflag): Do not
8883         clear whole mxcsr but only exceptions.
8885 2003-02-21  Roland McGrath  <roland@redhat.com>
8887         * Makerules: Filter $(install-lib-ldscripts) out of list of targets
8888         for libfoo.so that need $(make-link) rules.
8890 2003-02-21  Roland McGrath  <roland@frob.com>
8892         * sysdeps/mach/hurd/bits/typesizes.h (__DEV_T_TYPE): Use __U32_TYPE
8893         to match existing struct stat layout in mig protocols.
8895 2003-02-20  Ulrich Drepper  <drepper@redhat.com>
8897         * version.h (VERSION): Bump to 2.3.2.
8899         * elf/Makefile (distribute): Add reldep9.c, tst-array1.exp,
8900         tst-array2.exp, tst-array4.exp, tst-array2dep.c, check-textrel.c,
8901         and dl-sysdep.h.
8902         * sysdeps/generic/Dist: Add sysdep-cancel.h.
8903         * sysdeps/powerpc/nofpu/Dist: Add soft-supp.h.
8904         * sysdeps/unix/Dist: Add s-proto-bp.S and s-proto-cancel.S.
8905         * sysdeps/unix/sysv/linux/Dist: Add pathconf.h.
8906         * sysdeps/unix/sysv/linux/i386/Dist: Add bp-thunk.h.
8907         * sysdeps/unix/sysv/linux/powerpc/powerpc64/Dist: Add fe_nomask.c and
8908         ucontext_i.h.
8909         * Makefile (distribute): Add include/stubs-prologue.h,
8910         include/gnu/stubs.h, scripts/merge-abilist.awk, and
8911         scripts/extract-abilist.awk.
8913 2003-02-20  Roland McGrath  <roland@redhat.com>
8915         * math/Makefile (distribute): Don't add generated files.
8917 2003-02-20  Ulrich Drepper  <drepper@redhat.com>
8919         * math/Makefile: Rearrange variable definitions slightly to get
8920         definition in the right order.
8922 2003-02-20  Roland McGrath  <roland@redhat.com>
8924         * Makerules: Clean up conditional around include of tls.make.
8925         * Make-dist: Export generating=t to prevent using that.
8926         (+distinfo): Likewise for $(shell $(MAKE) ...) runs.
8928 2003-02-20  Ulrich Drepper  <drepper@redhat.com>
8930         * inet/rcmd.c (rresvport_af): Avoid using invliad values.  Wrap
8931         around in search if port IPPORT_RESERVED/2 has been test.
8933 2003-02-20  Paolo Bonzini  <bonzini@gnu.org>
8935         * posix/regcomp.c: Remove inclusions.
8936         * posix/regexec.c: Likewise.
8937         * posix/regex_internal.c: Likewise.
8938         * posix/regex_internal.h: Add inclusions here.
8939         * posix/regex.c: Only include sys/types.h before regex.h.  Include
8940         regex_internal.h here.  Include regex_internal.c before regcomp.c
8941         and regexec.c (might expose more opportunities to the C compiler).
8943         * posix/regcomp.c (parse_expression): Fix construct rejected by SGI CC.
8945         * posix/regex_internal.h [!_LIBC] (__mempcpy): Fix typo.
8946         [!_LIBC] (__wcrtomb): New definition.
8947         [!_LIBC]: Conditionalize enabling of I18N on HAVE_WCSCOLL and
8948         HAVE_LOCALE_H as well.
8950 2003-02-20  Ulrich Drepper  <drepper@redhat.com>
8952         * sysdeps/unix/sysv/linux/tcsetattr.c (tcsetattr): Remove obsolete
8953         patch to check for system call errors.
8955 2002-07-24  Philip Blundell  <philb@gnu.org>
8957         * sysdeps/unix/sysv/linux/arm/ioperm.c (init_iosys): Yield ENODEV
8958         on unknown systems.
8960 2003-02-20  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
8962         * sysdeps/powerpc/powerpc32/atomicity.h: Remove compiler workaround.
8963         * sysdeps/unix/sysv/linux/kernel-features.h
8964         (__ASSUME_NEW_PRCTL_SYSCALL): Defined for ppc32 too.
8965         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fe_nomask.c: Use prctl
8966         if possible.
8967         * sysdeps/unix/sysv/linux/powerpc/powerpc32/vfork.S: Avoid short
8968         interprocedure branches.
8969         * sysdeps/powerpc/soft-fp/Dist (sim-full.c, fenv_const.c): Move to...
8970         * sysdeps/powerpc/nofpu/Dist: ...here.
8971         * sysdeps/unix/sysv/linux/powerpc/Dist (fe_nomask.c): Move to...
8972         * sysdeps/unix/sysv/linux/powerpc/powerpc32/Dist: ...here.
8973         * sysdeps/unix/sysv/linux/s390/s390-64/Dist (kernel_stat.h): Delete.
8974         * sysdeps/unix/sysv/linux/sparc/Dist (bits/utmpx.h): Delete.
8975         * sysdeps/unix/sysv/linux/x86_64/Dist (bits/utmpx.h): Delete.
8977 2003-02-18  Alan Modra  <amodra@bigpond.net.au>
8979         * sysdeps/powerpc/powerpc32/sysdep.h (HIDDEN_JUMPTARGET): Redefine.
8981 2003-02-20  Philip Blundell  <philb@gnu.org>
8983         * sysdeps/unix/sysv/linux/arm/sysdep.h (INLINE_SYSCALL): Add
8984         missing arguments to INTERNAL_SYSCALL_ERROR_P and
8985         INTERNAL_SYSCALL_ERRNO.
8987 2003-02-20  Martin Schwidefsky  <schwidefsky@de.ibm.com>
8989         * sysdeps/unix/sysv/linux/s390/s390-32/chown.c (__real_chown): Test
8990         for __ASSUME_32BITUIDS.
8992 2003-02-20  Andreas Schwab  <schwab@suse.de>
8994         * sysdeps/unix/sysv/linux/m68k/bits/mman.h: Add MADV_* and
8995         POSIX_MADV_* constants.
8997 2003-02-20  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
8999         * sysdeps/unix/sysv/linux/sh/pread.c: New file.
9000         * sysdeps/unix/sysv/linux/sh/pread64.c: New file.
9001         * sysdeps/unix/sysv/linux/sh/pwrite.c: New file.
9002         * sysdeps/unix/sysv/linux/sh/pwrite64.c: New file.
9004 2003-02-19  Jiro Sekiba  <jir@yamato.ibm.com>
9006         * iconvdata/utf-16.c (gconv_end): Fix range of low surrogate.
9008 2003-02-16  Roland McGrath  <roland@redhat.com>
9010         * signal/signal.h: Include <sys/ucontext.h>, not <ucontext.h>.
9012 2003-02-19  Ulrich Drepper  <drepper@redhat.com>
9014         * stdlib/strtod.c (INTERNAL): Up the safety margin for cutting off
9015         decimal input digits.
9016         * stdlib/tst-strtod.c (main): Add test for strtof bug.
9018 2003-02-18  Ulrich Drepper  <drepper@redhat.com>
9020         * sysdeps/unix/sysv/linux/ttyname_r.c (__ttyname_r): Recognize
9021         invalid file descriptors and missing access permissions.
9023 2003-02-17  Ulrich Drepper  <drepper@redhat.com>
9025         * nss/getXXbyYY_r.c (REENTRANT_NAME): Return 0 if no entry has
9026         been found.
9028         * sysdeps/posix/sysconf.c (__sysconf): Test for LOGIN_NAME_MAX and
9029         TTY_NAME_MAX and not the _POSIX_* minimal value macros.
9030         * sysdeps/unix/sysv/linux/bits/local_lim.h: Define TTY_NAME_MAX
9031         and LOGIN_NAME_MAX.
9033 2003-02-17  Kevin B. Hendricks  <kevin.hendricks@sympatico.ca>
9034             Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
9036         * sysdeps/powerpc/elf/libc-start.c: Handle NONTLS_INIT_TP.
9037         * sysdeps/powerpc/powerpc32/__longjmp.S: Remove R2 handling.
9038         * sysdeps/powerpc/powerpc32/setjmp.S: Likewise.
9039         * sysdeps/powerpc/powerpc32/fpu/__longjmp.S: Likewise.
9040         * sysdeps/powerpc/powerpc32/fpu/setjmp.S: Likewise.
9042 2003-02-17  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
9044         * sysdeps/unix/sysv/linux/powerpc/ftruncate64.c: Delete.
9045         * sysdeps/unix/sysv/linux/powerpc/truncate64.c: Delete.
9046         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Delete.
9047         * sysdeps/unix/sysv/linux/powerpc/pread.c: Delete.
9048         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Delete.
9049         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Delete.
9051         * sysdeps/unix/sysv/linux/powerpc/fe_nomask.c: Move file...
9052         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fe_nomask.c: ...here.
9053         * sysdeps/unix/sysv/linux/powerpc/glob64.c: Move file...
9054         * sysdeps/unix/sysv/linux/powerpc/powerpc32/glob64.c: ...here.
9056         * sysdeps/unix/sysv/linux/tcgetattr.c: Use INLINE_SYSCALL.
9057         * sysdeps/unix/sysv/linux/tcsetattr.c: Likewise.
9058         * sysdeps/unix/sysv/linux/powerpc/tcgetattr.c: Delete.
9059         * sysdeps/unix/sysv/linux/powerpc/tcsetattr.c: Delete.
9061 2003-02-14  Thorsten Kukuk  <kukuk@suse.de>
9063         * nss/getent.c (print_hosts): Print all IP addresses of one host.
9065 2003-02-15  Roland McGrath  <roland@frob.com>
9067         * sysdeps/mach/hurd/tls.h: New file.
9068         * sysdeps/mach/hurd/i386/tls.h: New file.
9070         * mach/errsystems.awk: Include <errno.h> in generated output.
9072         * sysdeps/mach/Makefile (mach-before-compile rule): Pass generating=t,
9073         use target mach-before-compile instead of generated.
9074         (mach-before-compile): New target.
9075         * Makerules: Disable use of tls.make if $(generating) is set.
9076         * mach/Makefile: Include mach-syscalls.mk even if no_deps=t.
9077         * sysdeps/mach/hurd/Makefile: Make generated hurd headers depend on
9078         mach-shortcuts.h so mach/ generation happens before hurd/.
9080 2003-02-14  Ulrich Drepper  <drepper@redhat.com>
9082         * sysdeps/i386/fpu/s_nextafterl.c: Decrement high word of mantissa
9083         of demorm correctly if low word is zero.
9084         Reported by Fred J. Tydeman <tydeman@tybor.com>.
9085         * math/libm-test.inc (nextafter_test): New test, but disabled due
9086         to gcc bug.
9088         * sysdeps/generic/libc-start.c [HAVE_PTR_NTHREADS]: Decrement thread
9089         counter and only call __exit_thread if this is not the last thread.
9091 2003-02-13  Jakub Jelinek  <jakub@redhat.com>
9093         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Add instead of
9094         subtracting map->l_tls_offset.
9096 2003-02-12  Ulrich Drepper  <drepper@redhat.com>
9098         * sysdeps/generic/bits/confname.h: Define _CS_GNU_LIBC_VERSION and
9099         _CS_GNU_LIBPTHREAD_VERSION.
9100         * posix/conststr.c: Handle these new values.
9101         * posix/getconf.c: Likewise.
9103         * sysdeps/mips/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE): Fix
9104         masking of version index.
9105         Patch by Lance Larsh <Lance.Larsh@oracle.com>.
9107 2003-02-11  Ulrich Drepper  <drepper@redhat.com>
9109         * nss/nss_files/files-hosts.c (HOST_DB_LOOKUP): Compute alignment
9110         correctly.  Reported by Thorsten Kukuk.
9112 2003-02-10  Ulrich Drepper  <drepper@redhat.com>
9114         * elf/Makefile (check-textrel-CFLAGS): Pass _XOPEN_SOURCE and
9115         _BSD_SOURCE to compiler.
9116         * elf/check-textrel.c (SWAP): Add parenthesis to avoid warnings.
9117         Patches by Alan Modra.
9119 2003-02-08  Ulrich Drepper  <drepper@redhat.com>
9121         * io/ftwtest.c: Get current working directory before and after the
9122         nftw call and make sure they match.
9124 2003-02-08  Jim Meyering  <jim@meyering.net>
9126         * io/ftw.c (ftw_startup): When using FTW_CHDIR, always remember
9127         the current directory, not just when DIR contains a slash.
9128         Reported by Manoj Srivastava.
9130 2003-02-07  Jim Meyering  <jim@meyering.net>
9132         * io/ftw.c: Add autoconf-recommended block of alloca-related code.
9133         Include autoconf-recommended block of dirent/NAMELEN-related
9134         definitions and includes.  Use NAMELEN throughout, rather than
9135         _D_EXACT_NAMLEN.
9136         [_LIBC]: Define NAMELEN to _D_EXACT_NAMLEN.
9137         [!_LIBC] (__getcwd): Define to xgetcwd and declare xgetcwd.
9138         (stpcpy): Declare, if necessary.
9139         (mempcpy): Define, if necessary.
9140         [!_LIBC] (__stpcpy, __mempcpy): Define.
9141         [!_LIBC] (LXSTAT, XSTAT): Define.
9142         (lstat) [!LIBC && !LSTAT_FOLLOWS_SLASHED_SYMLINK]: Define to rpl_lstat.
9143         (find_object): Don't use c99-style struct initializer.
9144         Tweak wording in a couple comments.
9146 2003-02-07  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
9148         * elf/tls-macros.h: Add non-PIC TLS macros and fix clobber list
9149         for SH.
9150         * sysdeps/unix/sysv/linux/sh/brk.c: Add SYSCALL_INST_PAD
9151         after the trapa instruction.
9152         * sysdeps/unix/sysv/linux/sh/clone.S (__clone): Add additional
9153         parameters.
9154         * sysdeps/unix/sysv/linux/sh/sh4/sysdep.h: New file.
9155         (NEED_SYSCALL_INST_PAD): Define.
9156         * sysdeps/unix/sysv/linux/sh/sys/user.h (start_thread): Undef to
9157         avoid to use definition for the kernel.
9158         * sysdeps/unix/sysv/linux/sh/sysdep.h (SYSCALL_ERROR_HANDLER):
9159         Save and restore the frame pointer.
9160         (SYSCALL_INST_PAD): Define.
9161         (INLINE_SYSCALL): Make use of INTERNAL_SYSCALL.
9162         (INTERNAL_SYSCALL): Make use of ERR parameter. Add SYSCALL_INST_PAD
9163         after trapa instruction.
9164         (INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
9165         INTERNAL_SYSCALL_ERROR_P): Adjust accordingly.
9167 2003-02-07  Jakub Jelinek  <jakub@redhat.com>
9169         * resolv/res_libc.c (_res): Ensure _res is not common symbol,
9170         so that it can have aliases.
9171         * inet/herrno.c (h_errno): Put it into .bss not .data section.
9173 2003-02-07  Ulrich Drepper  <drepper@redhat.com>
9175         * elf/dl-runtime.c (fixup): Correct typo in version index computation.
9176         (profile_fixup): Likewise.
9177         Patch by Lance Larsh <Lance.Larsh@oracle.com>.
9179 2002-11-24  Robert Love  <rml@tech9.net>
9181         * posix/sched.h: Second parameter of sched_setaffinity and
9182         sched_getaffinity is `unsigned int', not `unsigned long'.
9183         * sysdeps/generic/sched_setaffinity.c: Likewise.
9184         * sysdeps/generic/sched_getaffinity.c: Likewise.
9186 2003-02-05  Ulrich Drepper  <drepper@redhat.com>
9188         * debug/catchsegv.sh: Fix typo in error messsage.
9189         Reported by John Levon <levon@movementarian.org>.
9191         * sysdeps/unix/sysv/linux/posix_fadvise.c: New file.
9192         * sysdeps/unix/sysv/linux/syscalls.list: Add posix_fadvise64 syscall.
9193         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Likewise.
9194         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
9195         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Likewise.
9196         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
9197         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
9199         * libio/putwc_u.c: Use _IO_putwc_unlocked, not _IO_putc_unlocked.
9200         Patch by Moritz Schulte <moritz@duesseldorf.ccc.de>.
9202 2003-02-05  Jim Meyering  <jim@meyering.net>
9204         Fix a heap-corrupting bug.
9205         * io/ftw.c: Include <limits.h>.
9206         (PATH_MAX) [!defined PATH_MAX]: Define to 1024.
9207         (process_entry): Allocate enough space to hold the resulting
9208         file name.  Don't presume that 2*dirbufsize is enough.
9209         (ftw_startup): Always use PATH_MAX to compute buffer size, now that
9210         it is guaranteed to be defined.
9212 2003-02-04  Ulrich Drepper  <drepper@redhat.com>
9214         * iconvdata/Makefile: Add rules to build and run bug-iconv3.
9215         * iconvdata/bug-iconv3.c: New file.
9217 2003-02-04  Martin Schwidefsky  <schwidefsky@de.ibm.com>
9219         * sysdeps/unix/sysv/linux/s390/system.c: New file.
9221 2003-02-03  Jakub Jelinek  <jakub@redhat.com>
9223         * sysdeps/sparc/sparc32/elf/configure.in (BROKEN_SPARC_WDISP22): New
9224         check.
9225         * config.h.in (BROKEN_SPARC_WDISP22): Add.
9227 2003-02-03  Ulrich Drepper  <drepper@redhat.com>
9229         * sysdeps/i386/i686/memmove.S: New file.
9231 2003-01-31  Steven Munroe  <sjmunroe@us.ibm.com>
9233         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c:
9234         Include kernel-features.h
9235         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: Likewise.
9236         * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S: Likewise.
9237         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: Likewise.
9238         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Likewise.
9240 2003-02-02  Jakub Jelinek  <jakub@redhat.com>
9242         * elf/tls-macros.h [sparc] (TLS_LD, TLS_GD): Add "cc" clobbers.
9244 2003-01-25  Jim Meyering  <jim@meyering.net>
9246         * io/ftw.c (object_compare): Compare inode numbers before device
9247         numbers, since the former are much more likely to differ.
9249 2003-02-01  Ulrich Drepper  <drepper@redhat.com>
9251         * time/tzfile.c (__tzfile_compute): Change return value type to
9252         void.  Adjust return statements.
9253         * include/time.h (__tzfile_compute): Adjust prototype.
9255 2003-02-01  Jim Meyering  <jim@meyering.net>
9257         * time/tzset.c (__tz_convert): Remove dead code; __tzfile_compute
9258         always returns 1.
9260 2003-01-31  Steven Munroe  <sjmunroe@us.ibm.com>
9262         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c
9263         [!__ASSUME_NEW_PRCTL_SYSCALL]: Noop prctl syscall and set ENOSYS.
9265 2003-01-31  Steven Munroe  <sjmunroe@us.ibm.com>
9267         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S
9268         [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Generate ENOSYS stub.
9269         * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S
9270         [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Likewise.
9271         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S
9272         [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Likewise.
9273         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S
9274         [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Likewise.
9276 2003-01-31  Steven Munroe  <sjmunroe@us.ibm.com>
9278         * sysdeps/unix/sysv/linux/configure.in: Change arch_minimum_kernel
9279         back to 2.4.19 for powerpc64.
9280         * sysdeps/unix/sysv/linux/kernel-features.h
9281         (__ASSUME_NEW_PRCTL_SYSCALL): Define for powerpc64.
9282         (__ASSUME_NEW_RT_SIGRETURN_SYSCALL): Define for powerpc64.
9284 2003-02-01  Ulrich Drepper  <drepper@redhat.com>
9286         * wcsmbs/wcscpy.c (wcscpy): Add alternative implementation for
9287         platforms with strange alignment requirements on wchar_t.
9289 2003-01-31  Andreas Schwab  <schwab@suse.de>
9291         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Remove __GI_*
9292         aliases, already added by make-syscalls.sh.
9293         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
9294         * sysdeps/unix/sysv/linux/hppa/syscalls.list: Likewise.
9295         * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise.
9296         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
9297         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
9298         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
9299         * sysdeps/unix/sysv/linux/syscalls.list: Likewise.
9300         * sysdeps/unix/inet/syscalls.list: Likewise.
9301         * sysdeps/unix/syscalls.list: Likewise.
9303 2003-01-31  Andreas Schwab  <schwab@suse.de>
9305         * sysdeps/m68k/Makefile (sysdep-CFLAGS): Don't define, not needed
9306         any more.
9308 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
9310         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S (__clone): Use lg,
9311         not l to load tls from stack.
9313 2003-01-30  Roland McGrath  <roland@redhat.com>
9315         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Move check for
9316         null argument before all else.
9317         Reported by Martin Schwidefsky <schwidefsky@de.ibm.com>.
9319 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
9321         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_lazy_rel):
9322         Move to RESOLVE protected part of the header.
9323         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_lazy_rel):
9324         Likewise.
9326 2003-01-30  Ulrich Drepper  <drepper@redhat.com>
9328         * stdio-common/Makefile (tests): Add bug15.
9329         (bug15-ENV): Define.
9330         * stdio-common/bug15.c: New file.
9332 2002-10-07  Wolfram Gloger  <wg@malloc.de>
9334         * malloc/malloc.c (sYSMALLOc): Only check for breakage due
9335         to foreign sbrk()'s if arena is contiguous.  Bug report from
9336         Bruno Haible <bruno@clisp.org>.
9338 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
9340         * sysdeps/s390/libc-tls.c: Include stdlib.h.
9342 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
9344         * stdio-common/vfprintf.c (vfprintf): Only subtract lowest 3 bits of
9345         ps.__count.
9347 2003-01-30  Ulrich Drepper  <drepper@redhat.com>
9349         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S: Fix storing and
9350         restoring of %r6.
9351         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S: Likewise.  Use
9352         64-bit load.
9353         Patch by Martin Schwidefsky  <schwidefsky@de.ibm.com>.
9355 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
9357         * elf/dl-reloc.c (CHECK_STATIC_TLS): Move _dl_signal_error...
9358         (allocate_static_tls): ...here.  Add __attribute_noinline__.
9359         Don't return on failure.
9360         (_dl_reloc_bad_type): Add __attribute_noinline__.
9361         * elf/do-rel.h (elf_dynamic_do_rel): Add
9362         __attribute__((always_inline)).
9363         * elf/dynamic-link.h (elf_machine_rel, elf_machine_rela,
9364         elf_machine_rel_relative, elf_machine_rela_relative,
9365         elf_machine_lazy_rel): Add prototypes with
9366         __attribute__((always_inline)).
9368 2003-01-29  David Mosberger  <davidm@hpl.hp.com>
9370         * elf/dl-support.c (_dl_aux_init): Handle AT_SYSINFO.
9372 2003-01-29  Roland McGrath  <roland@redhat.com>
9374         * configure.in: Barf if configured in $srcdir.
9376 2003-01-28  Steven Munroe  <sjmunroe@us.ibm.com>
9378         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c
9379         (__fe_nomask_env): Change __prctl call to INTERNAL_SYSCALL.
9381 2003-01-28  Martin Schwidefsky  <schwidefsky@de.ibm.com>
9383         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S: Reorder additional
9384         clone parameters to match the order used on ia32.
9385         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S: Likewise.
9387 2003-01-27  Martin Schwidefsky  <schwidefsky@de.ibm.com>
9389         * elf/elf.h: Add new s390 relocs.
9390         * elf/tls-macros.h: Add s390 versions.
9391         * sysdeps/s390/Versions [GLIBC_2.3] (ld): Export __tls_get_offset.
9392         * sysdeps/s390/dl-tls.h: New file.
9393         * sysdeps/s390/libc-tls.c: New file.
9394         * sysdeps/s390/s390-32/dl-machine.h (elf_machine_type_class): Add TLS
9395         relocs for class PLT.
9396         (elf_machine_rela): Handle TLS relocs.
9397         * sysdeps/s390/s390-64/dl-machine.h: Likewise.
9398         * sysdeps/s390/s390-32/elf/configure.in: Add TLS check.
9399         * sysdeps/s390/s390-64/elf/configure.in: Likewise.
9400         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S: Add support for
9401         CLONE_CHILD_*TID flags.
9402         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S: Likewise.
9403         * sysdeps/unix/sysv/linux/s390/s390-64/mmap.S: Use branch with 32
9404         bit offset.
9405         * sysdeps/unix/sysv/linux/s390/s390-64/socket.S: Likewise.
9406         * sysdeps/unix/sysv/linux/s390/s390-64/syscall.S: Likewise.
9407         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S (__syscall_error):
9408         Support USE___THREAD. Define RTLD_PRIVATE_ERRNO variant.
9409         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S (__syscall_error):
9410         Likewise.
9411         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h:
9412         (SYSCALL_ERROR_LABEL): Move define next to SYSCALL_ERROR_HANDLER.
9413         (SYSCALL_ERROR_HANDLER): Add USE___THREAD and RTLD_PRIVATE_ERRNO
9414         variants.
9415         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h:
9416         (SYSCALL_ERROR_LABEL): Move define next to SYSCALL_ERROR_HANDLER. Use
9417         direct branch to syscall_error for !PIC and PIC && !_LIBC_REENTRANT.
9418         (SYSCALL_ERROR_HANDLER): Add USE___THREAD and RTLD_PRIVATE_ERRNO
9419         variants.
9421 2003-01-28  Ulrich Drepper  <drepper@redhat.com>
9423         * sysdeps/unix/common/pause.c (do_pause): New function.  Split
9424         from __libc_pause.  Implement using sigsuspend.
9425         (__libc_pause): Call do_pause to do the real work.
9427         * sysdeps/posix/sigpause.c (do_sigpause): Check range of
9428         sig_or_mask parameter is is_sig != 0.
9430 2003-01-21  Philip Blundell  <philb@gnu.org>
9432         * sysdeps/unix/sysv/linux/bits/ioctls.h (SIOCSIFNAME): Define.
9434 2003-01-27  Steven Munroe  <sjmunroe@us.ibm.com>
9436         * stdio-common/Makefile: Add bug14-ENV to set LOCPATH for make check.
9438 2003-01-27  Ulrich Drepper  <drepper@redhat.com>
9440         * stdio-common/bug14.c: Use official name for the locale.
9442         * stdio-common/vfprintf.c [USE_IN_LIBIO]: Use _IO_cleanup_region_start
9443         instead of __libc_cleanup_region_start and _IO_cleanup_region_end
9444         instead of __libc_cleanup_region_end.
9446         * sysdeps/unix/sysv/linux/i386/system.c (CLEANUP_HANDLER): Pass 1
9447         as first parameter to __libc_cleanup_region_start.
9449         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c
9450         (__fe_nomask_env): Use __prctl not prctl.
9451         * sysdeps/unix/sysv/linux/syscalls.list: Add __prctl alias for
9452         prctl syscall.
9454         * elf/dl-reloc.c (CHECK_STATIC_TLS): Improve error message.
9456         * elf/dl-open.c (_dl_tls_static_size): Bump to 2048.
9458         * elf/dl-reloc.c (allocate_static_tls): Avoid arithmetic
9459         wrap-around in test.
9461 2003-01-26  Andreas Schwab  <schwab@suse.de>
9463         * sysdeps/wordsize-32/divdi3.c: Export the functions only as
9464         compatibility symbols.  Remove INTDEF for __divdi3.
9465         * sysdeps/wordsize-32/lldiv.c: Don't use __divdi3_internal.
9466         * sysdeps/powerpc/powerpc32/divdi3.c: Remove.
9467         * sysdeps/powerpc/powerpc32/Makefile (CPPFLAGS-divdi3.c): Don't
9468         define.
9469         * sysdeps/powerpc/powerpc32/Dist: Remove divdi3.c.
9471 2003-01-24  Jakub Jelinek  <jakub@redhat.com>
9473         * elf/tls-macros.h: Add SPARC 32-bit definitions.
9474         * sysdeps/sparc/sparc32/elf/configure.in: Add TLS check.
9475         * sysdeps/sparc/sparc32/dl-machine.h: Add dl_machine_h guards
9476         for the first half of the header.  Include tls.h.
9477         (elf_machine_type_class): Return ELF_RTYPE_CLASS_PLT for TLS
9478         relocs too.
9479         (elf_machine_rela): Handle TLS relocs.
9480         * sysdeps/sparc/dl-tls.h: New file.
9482         * sysdeps/unix/sysv/linux/sparc/sparc32/socket.S: Add cancellation
9483         support.
9485         * sysdeps/sparc/sparc32/sparcv9/hp-timing.h: Use %g6 instead of %g7.
9486         * sysdeps/sparc/sparc32/memchr.S: Likewise.
9487         * sysdeps/sparc/sparc32/memcpy.S: Likewise.
9488         * sysdeps/sparc/sparc32/strcat.S: Likewise.
9489         * sysdeps/sparc/sparc32/strchr.S: Likewise.
9490         * sysdeps/sparc/sparc32/strcmp.S: Likewise.
9491         * sysdeps/sparc/sparc32/strcpy.S: Likewise.
9492         * sysdeps/sparc/sparc64/sparcv9b/memcpy.S: Likewise.
9493         * sysdeps/sparc/sparc64/hp-timing.h: Likewise.
9494         * sysdeps/sparc/sparc64/memcpy.S: Likewise.
9495         * sysdeps/sparc/sparc64/stpcpy.S: Likewise.
9496         * sysdeps/sparc/sparc64/stpncpy.S: Likewise.
9497         * sysdeps/sparc/sparc64/strcat.S: Likewise.
9498         * sysdeps/sparc/sparc64/strchr.S: Likewise.
9499         * sysdeps/sparc/sparc64/strcmp.S: Likewise.
9500         * sysdeps/sparc/sparc64/strcpy.S: Likewise.
9501         * sysdeps/sparc/sparc64/strncmp.S: Likewise.
9502         * sysdeps/sparc/sparc64/strncpy.S: Likewise.
9503         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Likewise.
9504         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h: Likewise.
9506 2003-01-24  Andreas Schwab  <schwab@suse.de>
9508         * elf/dl-close.c (_dl_close): Don't relocate DT_FINI_ARRAY
9509         elements, and process them backwards.
9510         * elf/Makefile ($(objpfx)tst-array4): New target.
9511         ($(objpfx)tst-array4.out): Likewise.
9512         (tests) [$(have-initfini-array) = yes]: Add tst-array4.
9513         * elf/tst-array4.c: New file.
9514         * elf/tst-array4.exp: Likewise.
9516 2003-01-24  Steven Munroe  <sjmunroe@us.ibm.com>
9518         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c: New file.
9520 2003-01-27  Guido Guenther  <agx@sigxcpu.org>
9522         * sysdeps/unix/sysv/linux/mips/sysdep.h (SYSCALL_ERROR_LABEL): Define.
9523         * sysdeps/unix/sysv/linux/mips/pread.c: Add support for
9524         cancellation handling and handle both __NR_pread64 and __NR_pread.
9525         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
9526         * sysdeps/unix/sysv/linux/mips/pwrite.c: Add support for
9527         cancellation handling and handle both __NR_pwrite64 and __NR_pwrite.
9528         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
9529         * sysdeps/unix/mips/sysdep.S: Don't set errno in the _LIBC_REENTRANT
9530         case, use register names consistently.
9532 2003-01-27  Wolfram Gloger  <wg@malloc.de>
9534         * malloc/hooks.c (mem2chunk_check): Check alignment of mem
9535         pointer, not of the computed chunk.  Bug report from Carlos
9536         O'Donell <carlos@baldric.uwo.ca>.
9538 2003-01-25  Andreas Schwab  <schwab@suse.de>
9540         * sysdeps/m68k/dl-machine.h (_dl_start_user): Use pc-relative
9541         addressing to save GOT entries.
9543 2003-01-21  Jakub Jelinek  <jakub@redhat.com>
9545         * sysdeps/unix/alpha/sysdep.h (inline_syscall0,
9546         inline_syscall1, inline_syscall2, inline_syscall3,
9547         inline_syscall4, inline_syscall5, inline_syscall6): Add __volatile__.
9548         * sysdeps/unix/sysv/linux/alpha/sysdep.h (INTERNAL_SYSCALL): Add
9549         __attribute__((unused)) to ChEcK.
9551 2003-01-20  Martin Schwidefsky  <schwidefsky@de.ibm.com>
9553         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (INTERNAL_SYSCALL):
9554         Fix inline assembler constraints.
9555         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (INTERNAL_SYSCALL):
9556         Likewise.
9558         * sysdeps/s390/s390-64/Makefile (pic-ccflag): Use -fpic instead of
9559         -fPIC.
9561 2003-01-20  Segher Boessenkool  <segher@koffie.nl>
9563         * sysdeps/ieee754/dbl-64/sincos32.c (__mpcos): Really
9564         compute the cosine, not the sine, even if x > 0.8.
9566 2003-01-19  Ulrich Drepper  <drepper@redhat.com>
9568         * nis/nss_nis/nis-spwd.c: Make _nss_nis_endspent an alias of
9569         _nss_nis_setspent.  Work around the different prototypes.
9570         * nis/nss_nis/nis-rpc.c (internal_nis_setrpcent): Use
9571         internal_nis_endrpcent.
9572         (internal_nis_endrpcent): Change return type to void.  Change callers.
9573         * nis/nss_nis/nis-pwd.c: Make _nss_nis_endpwent an alias of
9574         _nss_nis_setpwent.  Work around the different prototypes.
9575         * nis/nss_nis/nis-proto.c (_nss_nis_endprotoent): Split out body
9576         of the function to...
9577         (internal_nis_endprotoent): ... here.  New function.
9578         (internal_nis_setprotoent): Use internal_nis_endprotoent.
9579         * nis/nss_nis/nis-network.c: Make _nss_nis_endnetent an alias of
9580         _nss_nis_setnetent.  Work around the different prototypes.
9581         * nis/nss_nis/nis-netgrp.c (_nss_nis_endnetgrent): Split out body
9582         of the function to...
9583         (internal_nis_endnetgrent): ... here.  New function.
9584         (_nss_nis_setnetgrent): Use internal_nis_endnetgrent.
9586 2003-01-19  Jim Meyering  <jim@meyering.net>
9588         * time/strftime.c: (widen): Merge nearly-identical definitions.
9589         (nl_get_alt_digit) [! defined my_strftime]: Define.
9590         (my_strftime) [_NL_CURRENT]: Merge nearly-identical uses of
9591         _nl_get_alt_digit and _nl_get_walt_digit.
9593 2003-01-19  Ulrich Drepper  <drepper@redhat.com>
9595         * time/strftime.c (my_strftime): Handle very large width
9596         specifications for numeric values correctly.  Improve checks for
9597         overflow.
9598         * time/Makefile (tests): Add tst-strftime.
9599         * time/tst-strftime.c: New file.
9601 2003-01-18  Ulrich Drepper  <drepper@redhat.com>
9603         * nis/nss_nis/nis-hosts.c: Make _nss_nis_endhostent an alias of
9604         _nss_nis_sethostent.  Work around the different prototypes.
9605         * nis/nss_nis/nis-grp.c: Make _nss_nis_endgrent an alias of
9606         _nss_nis_setgrent.  Work around the different prototypes.
9607         * nis/nss_nis/nis-ethers.c (internal_nis_endetherent): New
9608         function.  Split out from _nss_nis_endetherent.
9609         (internal_nis_setetherent): Use internal_nis_endetherent instead of
9610         duplicating the code.
9611         * nis/nss_nis/nis-alias.c: Make _nss_nss_nis_endaliasent an alias
9612         of _nss_nis_setaliasent.
9613         * nis/nss_nis/nis-service.c (internal_nis_setservent): Reuse
9614         internal_nis_endservent code, don't duplicate it.
9616         * inet/rexec.c (rexec_af): Protect socket operations with
9617         TEMP_FAILURE_RETRY.  Use writev instead of multiple write.
9618         * inet/rcmd.c (rcmd_af): Likewise.
9620 2003-01-17  Roland McGrath  <roland@redhat.com>
9622         * math/libm-test.inc (sin_test, cos_test, sincos_test) [TEST_DOUBLE]:
9623         Add test of value 0.80190127184058835.
9625         * elf/dl-open.c: Fix typo ifdef -> ifndef on _dl_tls_static_size defn.
9627 2003-01-17  Richard Henderson  <rth@redhat.com>
9629         * sysdeps/alpha/dl-machine.h (elf_machine_type_class): Add TLS
9630         relocs for class PLT.
9631         * sysdeps/alpha/libc-tls.c: New file.
9632         * sysdeps/unix/alpha/sysdep.S (EPILOGUE, GPSAVEREG): New.
9633         (LOADGP) [!PIC]: Rewrite to preserve caller's gp.
9635 2003-01-17  Jakub Jelinek  <jakub@redhat.com>
9637         * sysdeps/unix/sysv/linux/ia64/dl-static.c (_dl_static_init): Use
9638         __libc_lock_{,un}lock_recursive instead of __libc_lock_{,un}lock
9639         on _dl_static_lock.
9641 2003-01-17  Andreas Jaeger  <aj@suse.de>
9643         * stdio-common/bug14.c: Include stdlib.h for exit prototype.
9645 2003-01-16  Steven Munroe  <sjmunroe@us.ibm.com>
9647         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: New file.
9648         * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S: New file.
9649         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: New file.
9650         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: New file.
9651         * sysdeps/unix/sysv/linux/powerpc/powerpc64/ucontext_i.h: New file.
9652         * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: New file.
9653         * sysdeps/unix/sysv/linux/configure.in: Minimum kernel for PPC64
9654         is 2.4.21.
9656 2003-01-16  Ulrich Drepper  <drepper@redhat.com>
9658         * sysdeps/generic/glob.c (glob): Assume sysconf() always returns
9659         values != -1 for _LIBC.  Use extend_alloca to reallocate alloca'ed
9660         buffers.
9662         * sysdeps/generic/sysconf.c: Unconditionally implement
9663         _SC_GETPW_R_SIZE_MAX and _SC_GETGR_R_SIZE_MAX.
9664         * sysdeps/posix/sysconf.c: Likewise.
9666 2003-01-16  Jakub Jelinek  <jakub@redhat.com>
9668         * posix/regcomp.c (parse_bracket_exp): If build_charclass fails,
9669         set *err to the returned error, not to REG_ESPACE unconditionally.
9670         (build_word_op): Likewise.
9671         * posix/Makefile (tests): Add bug-regex16.
9672         * posix/bug-regex16.c: New test.
9674 2003-01-16  Jakub Jelinek  <jakub@redhat.com>
9676         * elf/dl-load.c (_dl_map_object_from_fd): Use
9677         GL(dl_tls_dtv_slotinfo_list) != NULL to check whether TLS has
9678         been already initialized.
9680 2003-01-15  Dmitry V. Levin  <ldv@altlinux.org>
9682         * sysdeps/unix/sysv/linux/ptsname.c: Fix typo in comment.
9684 2003-01-16  Jakub Jelinek  <jakub@redhat.com>
9686         * posix/regcomp.c (re_compile_internal): If clearing buffer, clear
9687         allocated too.  Reported by Al Viro <aviro@redhat.com>.
9689 2003-01-16  Roland McGrath  <roland@redhat.com>
9691         Tweak merged .abilist file format to merge duplicate symbols in
9692         different sets into multi-version stanzas with new "| SET regexp..."
9693         header continuation lines.
9694         * scripts/merge-abilist.awk: Rewritten for new format.
9695         * scripts/extract-abilist.awk: Likewise.
9697 2003-01-15  Ulrich Drepper  <drepper@redhat.com>
9699         * nscd/connections.c (nscd_run): Remove bogus return which isn't
9700         necessary with gcc 3.2+.
9701         (nscd_init): Don't use error() to print message, use dbg_log.
9703         * iconv/gconv_simple.c (STORE_REST): Explicitly store the total
9704         expected size into state.
9705         (UNPACK_BYTES): Do the reverse.
9706         * iconv/loop.c: Use CLEAR_STATE if defined to clear __state element.
9707         * wcsmbs/tst-mbrtowc.c (utf8_test_1): Add test for the bug.
9708         Reported by Al Viro <aviro@redhat.com>.
9710         * stdio-common/Makefile (tests): Add bug14.
9711         * stdio-common/bug14.c: New file.
9713         * stdio-common/vfscanf.c: When recognizing multibyte characters in
9714         string reset the byte counter after mbrtowc reported it is not a
9715         partial character.  Reported by Al Viro <aviro@redhat.com>.
9717 2003-01-15  Steven Munroe  <sjmunroe@us.ibm.com>
9719         * sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S: Include
9720         sysdep-cancel.h, not sysdep.h.
9722 2003-01-15  Ulrich Drepper  <drepper@redhat.com>
9724         * nscd/connections.c (nscd_run): Protect accept call with
9725         TEMP_FAILURE_RETRY.
9727 2003-01-15  Andreas Schwab  <schwab@suse.de>
9729         * sysdeps/unix/Makefile: Include $(common-objpfx)s-proto-bp.d.
9730         (common-generated): Add s-proto-bp.d.
9731         * sysdeps/unix/make-syscalls.sh: Use s-proto-bp.d for dependencies
9732         of bp thunks.
9733         * sysdeps/unix/s-proto-bp.S: New file.
9734         * sysdeps/generic/bp-thunks.h: Don't include <sys/vm86.h> here.
9735         Use <io/sys/sendfile.h> instead of <sys/sendfile.h>.
9736         * sysdeps/unix/sysv/linux/i386/bp-thunks.h: New file.
9738 2003-01-15  Roland McGrath  <roland@redhat.com>
9740         * Makerules: Use -include for tls.make, suppresses warning.
9741         Move gen-as-const-headers rules up so before-compile is set in time.
9742         (sed-remove-dotdot): Fix to work right for subdirs or top dir.
9744 2003-01-15  Ulrich Drepper  <drepper@redhat.com>
9746         * nscd/nscd.c (main): Make code to close all file descriptors
9747         faster and more robust.
9749         * nscd/nscd_getpw_r.c (nscd_getpw_r): Consolidate writing of the
9750         request with one writev call.  Protect all read calls with
9751         TEMP_FAILURE_RETRY.
9752         * nscd/nscd_getgr_r.c (nscd_getgr_r): Likewise.
9753         * nscd/nscd_gethst_r.c (nscd_gethst_r): Likewise.
9755         * nscd/hstcache.c: Use extend_alloca to reallocate alloca'd buffer.
9756         Protect writev calls with TEMP_FAILURE_RETRY.
9757         * nscd/grpcache.c: Likewise.
9758         * nscd/pwdcache.c: Likewise.
9760         * nscd/hstcache.c (addhstbynamev6): Don't interpret hostname as
9761         IPv6 address in debug output.
9763 2003-01-14  Roland McGrath  <roland@redhat.com>
9765         * Makerules (check-abi-%): Use two rules for $(common-objpfx) and
9766         $(objpfx) directories, and get rid of vpath directives.  The previous
9767         arrangement resulted in files being written to the source directories
9768         when run in a clean build.  Find all .abilist files in $(..)abilist/.
9769         (update-abi-%): Likewise.
9770         (generated): Don't add .symlist files, they'll be intermediates.
9772         * sysdeps/generic/init-first.c: Add a comment.
9774         * elf/Makefile ($(objpfx)ld.so): Pass -z defs in link.
9776         * scripts/gen-as-const.awk: Grok lone "--" as a separator between
9777         #includes and expressions.
9779         * scripts/merge-abilist.awk: Omit cpu-.*-os.*/modifier from merged
9780         config list when it already contains cpu-.*-os.* without / part.
9782         * Makerules (sed-remove-dotdot): New variable.
9783         ($(common-objpfx)%.make): Use it.  Depend on $(before-compile).
9784         ($(common-objpfx)%.h $(common-objpfx)%.h.d): Likewise.
9785         (check-abi-config): New variable, append /tls or /notls to the tuple.
9786         (check-abi-%): Use that for -v config value.
9787         Find .abilist files in abilist/libfoo.abilist, not in subdir.
9788         * Rules: Move bits/stdio_lim.h generation rules to Makerules.
9790 2003-01-14  Ulrich Drepper  <drepper@redhat.com>
9792         * manual/install.texi: Correct description of header preparation for
9793         Linux build.  Patch by mhwood@Ameritech.Net [PR libc/4941].
9795 2003-01-14  Guido Guenther  <agx@sigxcpu.org>
9797         * sysdeps/unix/sysv/linux/mips/sysdep.h (INTERNAL_SYSCALL,
9798         INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
9799         INTERNAL_SYSCALL_ERROR_P, INLINE_SYSCALL): Define.
9801 2003-01-14  Steven Munroe  <sjmunroe@us.ibm.com>
9803         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h
9804         (INTERNAL_SYSCALL): Make use of ERR parameter.
9805         (INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
9806         INTERNAL_SYSCALL_ERROR_P): Adjust accordingly.
9807         (INLINE_SYSCALL): Make use of INTERNAL_SYSCALL.
9808         * sysdeps/unix/sysv/linux/powerpc/powerpc64/vfork.S: New file.
9810 2003-01-14  Ulrich Drepper  <drepper@redhat.com>
9812         * sunrpc/pm_getport.c (pmap_getport): Open TCP socket if protocol
9813         == IPPROTO_TCP.
9814         Patch by James Strandboge <jamie@tpptraining.com> [PR libc/4943].
9816         * sysdeps/unix/sysv/linux/i386/dl-procinfo.c (_dl_x86_cap_flags):
9817         Fix entry for bit 31.
9819         * iconvdata/Makefile: Add rules to build IBM866NAV.
9820         * iconvdata/ibm866nav.c: New file.
9821         * iconvdata/tst-tables.sh: Add IBM866NAV.
9822         * iconvdata/gconv-modules: Add entries for IBM866NAV.
9824 2003-01-13  Ulrich Drepper  <drepper@redhat.com>
9826         * string/tester.c (test_strcpy): Use the previously #if 0'ed code
9827         to test void* parameters.
9829         * sysdeps/i386/i486/bits/string.h (__STRING_SMALLL_GET16): Cast
9830         source pointer before dereferencing.
9831         (__STRING_SMALLL_GET32): Likewise.
9832         (__memset_gc): Add missing parenthesis around macro arguments.
9833         Patch by Denis Zaitsev <zzz@cd-club.ru>.
9835         * sysdeps/i386/i486/bits/string.h (__strspn_cg): Tell the compiler
9836         that %eax is modified.  Reported by Denis Zaitsev <zzz@cd-club.ru>.
9838 2003-01-14  Jakub Jelinek  <jakub@redhat.com>
9840         * sysdeps/unix/alpha/sysdep.h (INLINE_SYSCALL): Undefined before
9841         defining.
9843 2003-01-13  Martin Schwidefsky  <schwidefsky@de.ibm.com>
9845         * sysdeps/s390/s390-64/initfini.c: Avoid unterminated string literals.
9846         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (L): Don't define it
9847         here.
9848         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (L): Likewise.
9850 2003-01-13  Martin Schwidefsky  <schwidefsky@de.ibm.com>
9852         * sysdeps/s390/s390-32/sysdep.h (JUMPTARGET): Move branch instructions
9853         from here...
9854         (PSEUDO): ... to here.
9855         * sysdeps/s390/s390-64/sysdep.h (JUMPTARGET): Move branch instruction
9856         from here...
9857         (PSEUDO): ... to here.
9859 2003-01-13  Ulrich Drepper  <drepper@redhat.com>
9861         * locale/programs/charmap-dir.c (charmap_readdir): Use struct
9862         dirent64 instead of struct dirent for dirent.  Call readdir64
9863         instead of readdir.
9865         * locale/programs/locfile.c (siblings_uncached): Use struct
9866         dirent64 instead of struct dirent for other_dentry.  Call
9867         readdir64 instead of readdir.
9869         * elf/ldconfig.c (direntry): Change type to struct dirent64.
9870         (search_dir): Use readdir64 instead of readdir.
9871         Patch by Zhangfan Xing <xing@pacific.jpl.nasa.gov>.
9873 2003-01-12  Roland McGrath  <roland@redhat.com>
9875         * hurd/lookup-retry.c (__hurd_file_name_lookup_retry): Use strtoul,
9876         not strtol.  The former is usable in ld.so, the latter not.
9878         * include/fcntl.h: Declare __libc_creat.
9880         * sysdeps/mach/hurd/Makefile (libmachuser-link.so-no-z-defs,
9881         libhurduser-link.so-no-z-defs): New variables.
9883         * malloc/malloc.c: Revert last change.
9884         * malloc/malloc.h (_int_*): Move these decls to ...
9885         * include/malloc.h: ... here.  Add attribute_hidden.
9886         (_int_valloc): Declare it too.
9888 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
9890         * elf/dl-close.c (_dl_close): Fix typo, must be == not = in
9891         search for removed searchlist.  Reported by Roland McGrath.
9893         * io/ftwtest-sh: Add test for case of symlink to nonexisting file
9894         given as start file.
9896         * io/ftw.c (ftw_startup): Use correct name in check for symlink
9897         without existing target.  Patch by Jim Meyering.
9899         * Makerules (build-shlib-helper): Don't use -z defs linker option
9900         if no-z-defs is defined either.
9902 2003-01-10  Martin Schwidefsky  <schwidefsky@de.ibm.com>
9904         * sysdeps/unix/sysv/linux/s390/s390-64/kernel_stat.h: Remove unused
9905         file.
9907 2003-01-10  Martin Schwidefsky  <schwidefsky@de.ibm.com>
9909         * sysdeps/unix/sysv/linux/s390/s390-32/syscalls.list: Add vfork.
9910         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
9912 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
9914         * io/ftwtest-sh: Add test case for relative path with /. at the end.
9916 2003-01-12  Jim Meyering  <jim@meyering.net>
9918         * io/ftw.c (ftw_startup): When trying to stat the starting directory,
9919         use the basename if we've already chdir'd into its parent directory.
9921 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
9923         * io/ftw.c (process_entry): Use relative path when using chdir()
9924         to change directory after call to ftw_dir.
9925         * io/ftwtest-sh: Add test for relative path argument to nftw()
9926         with FTW_CHDIR option.
9928 2003-01-12  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
9930         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_VFORK_SYSCALL):
9931         Define for powerpc.
9932         * sysdeps/unix/sysv/linux/powerpc/syscall.S: Take register alignment
9933         into account.
9934         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h
9935         (INTERNAL_SYSCALL): Make use of ERR parameter.
9936         (INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
9937         INTERNAL_SYSCALL_ERROR_P): Adjust accordingly.
9938         (INLINE_SYSCALL): Make use of INTERNAL_SYSCALL.
9939         * sysdeps/unix/sysv/linux/powerpc/powerpc32/vfork.S: New file.
9941 2003-01-09  Richard Henderson  <rth@redhat.com>
9943         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Compute
9944         DTPREL64 and TPREL64 without loadbase applied.
9946 2003-01-09  Richard Henderson  <rth@redhat.com>
9948         * sysdeps/unix/alpha/sysdep.S: Use correct definition of errno
9949         for NOT_IN_libc.
9951         * sysdeps/unix/sysv/linux/alpha/sysdep.h: Move inline syscall bits...
9952         * sysdeps/unix/alpha/sysdep.h: ... here.
9953         (PSEUDO_LOADGP): Remove.
9954         (PSEUDO_PROLOGUE): Load GP in non-pic case.
9955         (SYSCALL_ERROR_LABEL): New.
9956         (PSEUDO): Use it in error branch.
9957         (PSEUDO_END): Add $syscall_error label.
9959 2003-01-12  Andreas Jaeger  <aj@suse.de>
9961         * math/bits/mathcalls.h: Round is a const function.
9963 2003-01-11  Jim Meyering  <jim@meyering.net>
9965         * io/ftw.c [HAVE_CONFIG_H]: Include <config.h>.
9966         [HAVE_SYS_PARAM_H || _LIBC]: Guard inclusion of <sys/param.h>.
9967         Include <sys/stat.h>, not <include/sys/stat.h>, if !_LIBC.
9968         [!_LIBC] (__chdir, __closedir, __fchdir, __getcwd, __opendir): Define.
9969         [!_LIBC] (__readdir64, __tdestroy, __tfind, __tsearch): Define.
9970         [!_LIBC] (internal_function, dirent64, MAX): Define.
9971         (__set_errno): Define if not already defined.
9972         (open_dir_stream): When FTW_CHDIR is enabled, invoke opendir on
9973         the basename, not the entire file name.
9974         (process_entry): When FTW_CHDIR is enabled, invoke XSTAT or LXSTAT on
9975         the basename, not the entire file name.
9977 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
9979         * string/tester.c (test_strcpy): Disable last added strcpy until
9980         it is fixed.
9982 2003-01-11  Philip Blundell  <philb@gnu.org>
9984         * sysdeps/unix/sysv/linux/arm/socket.S: Add cancellation support.
9986 2003-01-11  Andreas Schwab  <schwab@suse.de>
9988         * Makerules: Add vpath for %.dynsym and %.so so that the
9989         implicit rule chaining for check-abi works.
9991 2003-01-11  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
9993         * sysdeps/unix/sysv/linux/sh/sysdep.h (SYSCALL_ERROR_HANDLER):
9994         Add non-PIC case.
9996 2003-01-11  Jakub Jelinek  <jakub@redhat.com>
9998         * elf/tls-macros.h [__ia64__] (__TLS_CALL_CLOBBERS): Define.
9999         [__ia64__] (TLS_LE, TLS_IE): Fix typos.  Add ;; at start of asm if
10000         gp is used early.
10001         [__ia64__] (TLS_LD, TLS_GD): Likewise.  Use __TLS_CALL_CLOBBERS.
10002         * elf/Makefile ($(objpfx)tst-tlsmod5.so, $(objpfx)tst-tlsmod6.so):
10003         Ensure libc.so in DT_NEEDED.
10004         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Move
10005         CHECK_STATIC_TLS before l_tls_offset use.
10006         * sysdeps/i386/dl-machine.h (elf_machine_rel, elf_machine_rela):
10007         Likewise.
10008         * sysdeps/sh/dl-machine.h (elf_machine_rela): Likewise.
10009         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage) [TLS_DTV_AT_TP]:
10010         Allocate TLS_PRE_TCB_SIZE bytes below result.
10011         (_dl_deallocate_tls) [TLS_DTV_AT_TP]: Adjust before freeing.
10012         * sysdeps/generic/libc-tls.c (__libc_setup_tls): If
10013         TLS_INIT_TP_EXPENSIVE is not defined, allocate even if no PT_TLS
10014         segment has been found.  If TLS_DTV_AT_TP, allocate TLS_PRE_TCB_SIZE
10015         bytes below result and add tcb_offset to memsz.
10016         * sysdeps/ia64/dl-tls.h (__tls_get_addr): New prototype.
10017         * sysdeps/ia64/dl-machine.h: Include tls.h.
10018         (elf_machine_type_class): Return ELF_RTYPE_CLASS_PLT for TLS relocs
10019         too.
10020         (elf_machine_rela): Assume if sym_map != NULL sym is non-NULL too.
10021         Handle R_IA64_DTPMOD*, R_IA64_DTPREL* and R_IA64_TPREL* relocations.
10022         * sysdeps/ia64/libc-tls.c: New file.
10024 2003-01-10  Steven Munroe  <sjmunroe@us.ibm.com>
10026         * sysdeps/powerpc/powerpc64/sysdep.h (PSEUDO_RET): Add branch hit.
10027         * sysdeps/unix/sysv/linux/powerpc/bits/stat.h (STAT_VER_LINUX):
10028         Fix type.  Move definition out of #if.
10029         * sysdeps/unix/sysv/linux/powerpc/powerpc64/ftruncate64.c: New file.
10030         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pread.c: New file.
10031         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pread64.c: New file.
10032         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pwrite.c: New file.
10033         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pwrite64.c: New file.
10034         * sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S: Add cancellation
10035         support.
10036         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Remove
10037         ftruncate64, pread64, pwrite64, truncate64 entries.
10038         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h
10039         (INLINE_SYSCALL): New version that supports function call like
10040         syscalls.  Add __builtin_expect.
10041         (LOADARGS_n): Add argument size safety checks.
10042         (INTERNAL_SYSCALL): New Macro.
10043         * sysdeps/unix/sysv/linux/powerpc/powerpc64/truncate64.c: New file.
10044         * sysdeps/unix/sysv/linux/powerpc/sys/procfs.h [__PPC_ELF_H]: Avoid
10045         redefinition of elf_fpreg_t and elf_fpregset_t.
10047 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
10049         * elf/dl-close.c (_dl_close): Add several asserts.  Correct and
10050         simplify test for unloading.  If loader of a DSO is unloaded do not
10051         use its scope anymore.  Fall back to own scope and adjust opencounts.
10052         Fix several comments.
10053         * elf/dl-deps.c (_dl_map_object_deps): Always allocate memory for
10054         the l_searchlist, not only for l_initfini.
10056         * elf/dl-lookup.c (add_dependencies): Avoid creating relocation
10057         dependencies if objects cannot be removed.  Remove object with the
10058         definition as not unloadable if necessary.
10060         * elf/reldep6.c: Create relocation dependency before closing the first
10061         module.
10063 2003-01-10  Guido Günther  <agx@sigxcpu.org>
10065         * sysdeps/unix/mips/fork.S: Add PSEUDO_END.
10066         * sysdeps/unix/mips/brk.S: Likewise.
10067         * sysdeps/unix/mips/pipe.S: Likewise.
10069 2003-01-10  Andreas Schwab  <schwab@suse.de>
10071         * sysdeps/unix/sysv/linux/m68k/getsysstats.c: New file.
10073         * sysdeps/unix/sysv/linux/m68k/vfork.S: Optimize for kernels which
10074         are known to have the vfork syscall.
10076         * sysdeps/m68k/sysdep.h (JUMPTARGET): Undefine before defining it.
10078         * sysdeps/unix/sysv/linux/kernel-features.h
10079         (__ASSUME_MMAP2_SYSCALL, __ASSUME_TRUNCATE64_SYSCALL)
10080         (__ASSUME_STAT64_SYSCALL, __ASSUME_FCNTL64)
10081         (__ASSUME_VFORK_SYSCALL): Define for m68k kernels >= 2.4.12.
10083 2003-01-09  Jakub Jelinek  <jakub@redhat.com>
10085         * elf/Makefile: Add rules to build and run reldep9 test.
10086         * elf/reldep9.c: New file.
10087         * elf/reldep9mod1.c: New file.
10088         * elf/reldep9mod2.c: New file.
10089         * elf/reldep9mod3.c: New file.
10091 2003-01-09  Jakub Jelinek  <jakub@redhat.com>
10093         * elf/Makefile: Add rules to build and run nodelete2 test.
10094         * elf/nodelete2.c: New file.
10095         * elf/nodel2mod1.c: New file.
10096         * elf/nodel2mod2.c: New file.
10097         * elf/nodel2mod3.c: New file.
10099 2003-01-09  Jakub Jelinek  <jakub@redhat.com>
10101         * posix/test-vfork.c (noop): Add __attribute_noinline__.
10102         * sysdeps/generic/sysdep.h (JUMPTARGET): Define if not defined.
10103         * sysdeps/i386/sysdep.h (JUMPTARGET): Undefine JUMPTARGET before
10104         defining it.
10105         * sysdeps/powerpc/powerpc32/sysdep.h (JUMPTARGET): Likewise.
10106         * sysdeps/powerpc/powerpc64/sysdep.h (JUMPTARGET): Likewise.
10107         * sysdeps/s390/s390-32/sysdep.h (JUMPTARGET): Likewise.
10108         * sysdeps/s390/s390-64/sysdep.h (JUMPTARGET): Likewise.
10109         * sysdeps/x86_64/sysdep.h (JUMPTARGET): Likewise.
10111 2003-01-09  Andreas Schwab  <schwab@suse.de>
10113         * sysdeps/m68k/fpu/libm-test-ulps: Regenerated.
10115 2003-01-08  Ulrich Drepper  <drepper@redhat.com>
10117         * sysdeps/unix/sysv/linux/arm/sysdep.h (INTERNAL_SYSCALL,
10118         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Add err
10119         argument.
10120         (INTERNAL_SYSCALL_DECL): Define.
10122 2003-01-06  Jakub Jelinek  <jakub@redhat.com>
10124         * sysdeps/unix/sysv/linux/ia64/sysdep.h (INTERNAL_SYSCALL,
10125         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Add err
10126         argument.
10127         (INTERNAL_SYSCALL_DECL): Define.
10128         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h: Likewise.
10129         * sysdeps/unix/sysv/linux/sparc/sysdep.h: Likewise.
10130         * sysdeps/unix/sysv/linux/i386/sysdep.h: Likewise.
10131         (INLINE_SYSCALL): Adjust.
10132         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Likewise.
10133         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise.
10134         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Likewise.
10135         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
10136         * elf/dl-misc.c (_dl_debug_vdprintf): Add INTERNAL_SYSCALL_DECL,
10137         add err argument to INTERNAL_SYSCALL* macros.
10138         * sysdeps/unix/sysv/linux/i386/brk.c (__brk): Likewise.
10139         * sysdeps/unix/sysv/linux/i386/system.c (cancel_handler): Likewise.
10140         * sysdeps/unix/sysv/linux/m68k/brk.c (__brk): Likewise.
10141         * sysdeps/unix/sysv/linux/m68k/getpagesize.c  (__getpagesize):
10142         Likewise.
10143         * sysdeps/unix/sysv/linux/sigwait.c (do_sigwait): Likewise.
10144         * sysdeps/unix/sysv/linux/i386/sigaction.c (__libc_sigaction): Use
10145         INLINE_SYSCALL instead of INTERNAL_SYSCALL and setting errno.
10147 2003-01-07  Ulrich Drepper  <drepper@redhat.com>
10149         Unify symbols in user namespace exported by libc.so and libc.a.
10150         * argp/argp-fmtstream.c: Don't define argp_make_fmtstream,
10151         argp_fmtstream_free, and argp_fmtstream_printf.
10152         * argp/argp-fs-xinl.c: Don't define argp_fmtstream_putc,
10153         argp_fmtstream_puts, argp_fmtstream_write, argp_fmtstream_set_lmargin,
10154         argp_fmtstream_set_rmargin, argp_fmtstream_set_wmargin, and
10155         argp_fmtstream_point.
10156         * gmon/gmon.c: Don't define write_profiling.
10157         * libio/genops.c: Don't define _cleanup.
10159         * intl/explodename.c (_nl_find_language.c): Mark as static.
10160         * intl/loadinfo.h: Remove _nl_find_language prototype.
10162         * libio/fileops.c (_IO_file_seekoff_maybe_mmap): Mark as static.
10163         * libio/libioP.h: Remove declaration.
10165         * libio/iopopen.c (_IO_proc_jumps): Mark as static.
10166         * libio/libioP.h: Remove declaration.
10168         * sysdeps/generic/unwind-dw2.c: Mark __frame_state_for with STATIC.
10169         * sysdeps/generic/framestate.c: Define STATIC before including
10170         unwind-dw2.c.
10172         * time/Versions [GLIBC_2.3.2] (libc): Export strptime_l.
10174 2003-01-06  Philip Blundell  <philb@gnu.org>
10176         * sysdeps/unix/arm/sysdep.S (syscall_error): Optimise a little.
10177         [__LIBC_REENTRANT]: Unify PIC and non-PIC cases.
10179         * sysdeps/unix/sysv/linux/arm/sysdep.h (PSEUDO): Remove .type
10180         directive.
10181         (PSEUDO_RET): Use SYSCALL_ERROR in place of __syscall_error.
10182         (SYSCALL_ERROR): New.
10183         (SYSCALL_ERROR_HANDLER) [NOT_IN_libc]: Provide local copy of error
10184         handling code.
10185         (INTERNAL_SYSCALL): Define.
10186         (INLINE_SYSCALL): Use it.
10187         (INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Define.
10188         * sysdeps/unix/sysv/linux/arm/socket.S (__socket): Use
10189         SYSCALL_ERROR in place of __syscall_error.
10191 2003-01-07  Jakub Jelinek  <jakub@redhat.com>
10193         * sysdeps/ia64/bits/byteswap.h [__GNUC__ >= 2] (__bswap_16,
10194         __bswap_32, __bswap_64): Put x into temporary variable
10195         to avoid warnings.
10196         [!__GNUC__] (__bswap_16, __bswap_32, __bswap_64): Change into static
10197         (inline) functions.
10198         * sysdeps/s390/bits/byteswap.h [__GNUC__ >= 2] (__bswap_16,
10199         __bswap_32, __bswap_64): Put x into temporary variable
10200         to avoid warnings.
10201         [!__GNUC__] (__bswap_16, __bswap_32, __bswap_64): Change into static
10202         (inline) functions.
10203         * sysdeps/i386/bits/byteswap.h [!__GNUC__] (__bswap_16, __bswap_32):
10204         Likewise.
10206 2003-01-07  Jakub Jelinek  <jakub@redhat.com>
10208         * sysdeps/unix/sysv/linux/alpha/adjtime.c (ntp_adjtime): New weak
10209         alias.
10211 2003-01-07  Jakub Jelinek  <jakub@redhat.com>
10213         * elf/rtld.c (_rtld_global): Remove _dl_dynamic_weak initializer.
10214         * elf/dl-support.c (_dl_dynamic_weak): Initialize to 0.
10216 2003-01-07  Ulrich Drepper  <drepper@redhat.com>
10218         * math/libm-test.inc (significand_test): New function.
10219         (main): Call it.
10221 2003-01-06  Roland McGrath  <roland@redhat.com>
10223         * sysdeps/i386/i486/bits/string.h (memset): Add parens around macro
10224         arguments.
10225         (memcpy, memrchr, strcpy, __stpcpy, strncpy, strcat): Likewise.
10226         (strcmp, strncat, strncmp, strchr, __strchrnul, strchrnul): Likewise.
10227         (index, strrchr, rindex, strcspn, strspn, strpbrk, strstr): Likewise.
10229         * string/tester.c (test_strcpy): Add test with `void *' arguments.
10231 2003-01-06  Ulrich Drepper  <drepper@redhat.com>
10233         * sysdeps/i386/fpu/s_significandl.c (__significandl): Really
10234         return significand and not the exponent.
10235         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
10237         * elf/dl-misc.c (_dl_debug_vdprintf): Help PPC port by explicitly
10238         taking address of iov in INTERNAL_SYSCALL call.  Patch by Franz Sirl.
10240         * malloc/malloc.c: Mark all _int_* functions as static.
10242 2003-01-06  Jakub Jelinek  <jakub@redhat.com>
10244         * sysdeps/unix/alpha/sysdep.h (PSEUDO): Use PSEUDO_PREPARE_ARGS.
10245         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S: Add cancellation
10246         handling.
10247         * sysdeps/unix/sysv/linux/alpha/select.S: Likewise.
10249 2003-01-06  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
10251         * sysdeps/powerpc/powerpc32/sysdep.h (PSEUDO_RET): Add branch hint.
10252         * sysdeps/unix/sysv/linux/powerpc/powerpc32/socket.S: Add cancellation
10253         support.
10254         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Remove
10255         ftruncate64, truncate64, pread64 and pwrite64 entries.
10256         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h
10257         (INLINE_SYSCALL): Add __builtin_expect.
10258         (LOADARGS_n): Add argument size safety checks.
10259         * sysdeps/unix/sysv/linux/powerpc/powerpc32/ftruncate64.c: New file.
10260         * sysdeps/unix/sysv/linux/powerpc/powerpc32/truncate64.c: New file.
10261         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pread.c: New file.
10262         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pread64.c: New file.
10263         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pwrite.c: New file.
10264         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pwrite64.c: New file.
10266 2003-01-06  Jakub Jelinek  <jakub@redhat.com>
10268         * sysdeps/generic/sysdep-cancel.h (LIBC_CANCEL_HANDLED): Define.
10269         * sysdeps/generic/creat.c: Include sysdep-cancel.h.
10270         (LIBC_CANCEL_HANDLED): Add.
10272         * sysdeps/unix/sysv/linux/alpha/sysdep.h
10273         (inline_syscall_r0_constraint): Rename to...
10274         (inline_syscall_r0_out_constraint): ... this.  Add =.
10275         (inline_syscall[0-6]): Use inline_syscall_r0_out_constraint.
10277 2003-01-06  Andreas Schwab  <schwab@suse.de>
10279         * sysdeps/m68k/dl-machine.h (elf_machine_runtime_setup): Make
10280         sure this is always inlined.
10281         (elf_machine_rela): Likewise.
10283         * sysdeps/m68k/Makefile (sysdep-CFLAGS): Increase inline limit.
10285 2003-01-04  Roland McGrath  <roland@redhat.com>
10287         * Makeconfig (+mkdep): Add -MP flag.
10288         Suggested by Art Haas <ahaas@airmail.net>.
10290 2003-01-05  Andreas Schwab  <schwab@suse.de>
10292         * sysdeps/m68k/Makefile (CFLAGS-.oS): Append -fPIC.
10294 2003-01-05  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
10296         * sysdeps/unix/sysv/linux/sh/clone.S (__clone): Use
10297         SYSCALL_ERROR_HANDLER.
10298         * sysdeps/unix/sysv/linux/sh/pipe.S (__libc_pipe): Likewise.
10299         * sysdeps/unix/sysv/linux/sh/socket.S (__socket): Likewise.
10300         Add support for cancellation handling.
10301         * sysdeps/unix/sysv/linux/sh/syscall.S (__syscall): Use
10302         SYSCALL_ERROR_HANDLER.
10303         * sysdeps/unix/sysv/linux/sh/vfork.S (__vfork): Likewise.
10304         * sysdeps/unix/sysv/linux/sh/sysdep.h (PSEUDO): Likewise.
10305         Add support for cancellation handling.
10306         (SYSCALL_ERROR_HANDLER): Define PIC variants.
10308 2003-01-04  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
10310         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Mark
10311         __syscall_pread64 and __syscall_pwrite64 cancelable.
10312         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h
10313         (INTERNAL_SYSCALL): New macro.
10314         (LOADARGS_0, LOADARGS_1): Fix.
10316 2003-01-05  Ulrich Drepper  <drepper@redhat.com>
10318         * Makerules (build-shlip-helper): Unless told otherwise, add
10319         -Wl,-z,defs to linker command line.
10320         * rt/Makefile (librt.so): Link with ld.so.
10321         * dlfcn/Makefile (libdl.so): Likewise.
10323 2003-01-05  Jakub Jelinek  <jakub@redhat.com>
10325         * sysdeps/unix/sysv/linux/s390/s390-32/socket.S: Add support for
10326         cancellation handling.
10327         * sysdeps/unix/sysv/linux/s390/s390-64/socket.S: Likewise.
10328         * sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c: Likewise.
10330 2003-01-04  Ulrich Drepper  <drepper@redhat.com>
10332         * sysdeps/unix/sysv/linux/i386/system.c (cancel_handler): Correct
10333         order of parameters passed to kill.
10335 2003-01-04  Andreas Schwab  <schwab@suse.de>
10337         * sysdeps/unix/sysv/linux/m68k/bits/stat.h: Add nanosecond fields.
10339 2003-01-03  Paul Eggert  <eggert@twinsun.com>
10341         * malloc/obstack.h (__INT_TO_PTR) [__STDC__]: Cast result to
10342         (void *) to avoid diagnostic with native c89 on SGI IRIX 6.5
10343         when compiling Bison 1.875's `bitset bset = obstack_alloc
10344         (bobstack, bytes);'.  Problem reported by Nelson H. F. Beebe.
10346 2003-01-04  Ulrich Drepper  <drepper@redhat.com>
10348         * sysdeps/posix/system.c (do_system): Minor optimizations.  Remove
10349         unnecessary code.
10350         Correct reference counter in case SIGQUIT handler installation failed.
10352 2003-01-03  Ulrich Drepper  <drepper@redhat.com>
10354         * include/libc-symbols.h [HAVE_WEAK_SYMBOLS] (_weak_extern):
10355         Define using _Pragma(weak ...).
10357 2003-01-03  Andreas Jaeger  <aj@suse.de>, Jakub Jelinek <jakub@redhat.com>
10359         * resolv/res_libc.c: Provide declaration for __res_init_weak and
10360         reorder declarations.
10362 2003-01-03  Art Haas  <ahaas@airmail.net>
10364         * localedata/tests-mbwc/dat_iswalnum.c: Convert GCC extension
10365         initializer syntax to C99.
10366         * localedata/tests-mbwc/dat_iswalpha.c: Likewise.
10367         * localedata/tests-mbwc/dat_iswcntrl.c: Likewise.
10368         * localedata/tests-mbwc/dat_iswctype.c: Likewise.
10369         * localedata/tests-mbwc/dat_iswdigit.c: Likewise.
10370         * localedata/tests-mbwc/dat_iswgraph.c: Likewise.
10371         * localedata/tests-mbwc/dat_iswlower.c: Likewise.
10372         * localedata/tests-mbwc/dat_iswprint.c: Likewise.
10373         * localedata/tests-mbwc/dat_iswpunct.c: Likewise.
10374         * localedata/tests-mbwc/dat_iswspace.c: Likewise.
10375         * localedata/tests-mbwc/dat_iswupper.c: Likewise.
10376         * localedata/tests-mbwc/dat_iswxdigit.c: Likewise.
10377         * localedata/tests-mbwc/dat_mblen.c: Likewise.
10378         * localedata/tests-mbwc/dat_mbrlen.c: Likewise.
10379         * localedata/tests-mbwc/dat_mbrtowc.c: Likewise.
10380         * localedata/tests-mbwc/dat_mbsrtowcs.c: Likewise.
10381         * localedata/tests-mbwc/dat_mbstowcs.c: Likewise.
10382         * localedata/tests-mbwc/dat_mbtowc.c: Likewise.
10383         * localedata/tests-mbwc/dat_strcoll.c: Likewise.
10384         * localedata/tests-mbwc/dat_strfmon.c: Likewise.
10385         * localedata/tests-mbwc/dat_strxfrm.c: Likewise.
10386         * localedata/tests-mbwc/dat_swscanf.c: Likewise.
10387         * localedata/tests-mbwc/dat_towctrans.c: Likewise.
10388         * localedata/tests-mbwc/dat_towlower.c: Likewise.
10389         * localedata/tests-mbwc/dat_towupper.c: Likewise.
10390         * localedata/tests-mbwc/dat_wcrtomb.c: Likewise.
10391         * localedata/tests-mbwc/dat_wcscat.c: Likewise.
10392         * localedata/tests-mbwc/dat_wcschr.c: Likewise.
10393         * localedata/tests-mbwc/dat_wcscmp.c: Likewise.
10394         * localedata/tests-mbwc/dat_wcscoll.c: Likewise.
10395         * localedata/tests-mbwc/dat_wcscpy.c: Likewise.
10396         * localedata/tests-mbwc/dat_wcscspn.c: Likewise.
10397         * localedata/tests-mbwc/dat_wcslen.c: Likewise.
10398         * localedata/tests-mbwc/dat_wcsncat.c: Likewise.
10399         * localedata/tests-mbwc/dat_wcsncmp.c: Likewise.
10400         * localedata/tests-mbwc/dat_wcsncpy.c: Likewise.
10401         * localedata/tests-mbwc/dat_wcspbrk.c: Likewise.
10402         * localedata/tests-mbwc/dat_wcsrtombs.c: Likewise.
10403         * localedata/tests-mbwc/dat_wcsspn.c: Likewise.
10404         * localedata/tests-mbwc/dat_wcsstr.c: Likewise.
10405         * localedata/tests-mbwc/dat_wcstod.c: Likewise.
10406         * localedata/tests-mbwc/dat_wcstok.c: Likewise.
10407         * localedata/tests-mbwc/dat_wcstombs.c: Likewise.
10408         * localedata/tests-mbwc/dat_wcswidth.c: Likewise.
10409         * localedata/tests-mbwc/dat_wcsxfrm.c: Likewise.
10410         * localedata/tests-mbwc/dat_wctob.c: Likewise.
10411         * localedata/tests-mbwc/dat_wctomb.c: Likewise.
10412         * localedata/tests-mbwc/dat_wctrans.c: Likewise.
10413         * localedata/tests-mbwc/dat_wctype.c: Likewise.
10414         * localedata/tests-mbwc/dat_wcwidth.c: Likewise.
10416 2003-01-03  Richard Henderson  <rth@redhat.com>
10418         * sysdeps/unix/sysv/linux/alpha/sysdep.h (inline_syscall_r0_asm): New.
10419         (inline_syscall_r0_constraint): New.
10420         (inline_syscall[0-6]): Use them.
10422 2003-01-03  Jakub Jelinek  <jakub@redhat.com>
10424         * sysdeps/generic/ldsodefs.h (_dl_allocate_tls, _dl_deallocate_tls):
10425         Add rtld_hidden_proto.
10426         * sysdeps/generic/dl-tls.c (_dl_deallocate_tls): Add rtld_hidden_def.
10427         (_dl_allocate_tls): Likewise.  Remove INTDEF.
10429 2002-07-05  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
10431         * sysdeps/sh/memcpy.S: Optimize.  Based on a patch by Toshiyasu
10432         Morita <toshiyasu.morita@hsa.hitachi.com>.
10433         * sysdeps/sh/memcpy.S: Likewise.
10435 2003-01-02  Ulrich Drepper  <drepper@redhat.com>
10437         * sysdeps/pthread/aio_suspend.c (aio_suspend): Don't quite remove
10438         any, but unify the test.
10440 2003-01-02  Jakub Jelinek  <jakub@redhat.com>
10442         * sysdeps/unix/sysv/linux/arm/sigaction.c (__sigaction,
10443         sigaction): Protect weak_alias and libc_hidden_weak with
10444         #ifndef LIBC_SIGACTION.
10445         * sysdeps/unix/sysv/linux/ia64/sigaction.c (__sigaction,
10446         sigaction): Likewise.
10447         * sysdeps/unix/sysv/linux/mips/sigaction.c (__sigaction,
10448         sigaction): Likewise.
10449         * sysdeps/unix/sysv/linux/s390/s390-64/sigaction.c (__sigaction,
10450         sigaction): Likewise.
10451         * sysdeps/unix/sysv/linux/sparc/sparc32/sigaction.c (__sigaction,
10452         sigaction): Likewise.
10453         * sysdeps/unix/sysv/linux/sparc/sparc64/sigaction.c (__sigaction,
10454         sigaction): Likewise.
10455         * sysdeps/unix/sysv/linux/x86_64/sigaction.c (__sigaction,
10456         sigaction): Likewise.
10457         * sysdeps/unix/sysv/linux/i386/sigaction.c (__sigaction,
10458         sigaction): Likewise.  Remove SIGCANCEL handling here.
10459         * sysdeps/unix/sysv/linux/sigaction.c (__sigaction, sigaction):
10460         Likewise.
10462 2003-01-02  Art Haas  <ahaas@airmail.net>
10464         * login/tst-utmp.c: Convert GCC extension initializer syntax to C99.
10466 2003-01-02  Ulrich Drepper  <drepper@redhat.com>
10468         * posix/getconf.c: Update copyright year.
10469         * nss/getent.c: Likewise.
10470         * nscd/nscd_nischeck.c: Likewise.
10471         * iconv/iconvconfig.c: Likewise.
10472         * iconv/iconv_prog.c: Likewise.
10473         * elf/ldconfig.c: Likewise.
10474         * catgets/gencat.c: Likewise.
10475         * csu/version.c: Likewise.
10476         * elf/ldd.bash.in: Likewise.
10477         * elf/sprof.c (print_version): Likewise.
10478         * locale/programs/locale.c: Likewise.
10479         * locale/programs/localedef.c: Likewise.
10480         * nscd/nscd.c (print_version): Likewise.
10481         * debug/xtrace.sh: Likewise.
10482         * malloc/memusage.sh: Likewise.
10483         * malloc/mtrace.pl: Likewise.
10485 2003-01-01  Jakub Jelinek  <jakub@redhat.com>
10487         * io/sys/stat.h: Include time.h with __need_timespec even if
10488         __USE_MISC is defined but __USE_XOPEN is not.
10490 2003-01-01  Andreas Jaeger  <aj@suse.de>
10492         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Use union
10493         type to avoid strict aliasing problem.
10494         (_nss_dns_gethostbyname2_r): Likewise.
10495         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyaddr_r): Likewise.
10496         (_nss_dns_getnetbyname_r): Likewise.
10497         * resolv/gethnamaddr.c (_gethtent): Likewise.
10498         (gethostbyname2): Likewise.
10500 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
10502         * string/string-inlines.c: Define __memcpy_g and __strchr_g macros
10503         to avoid using the exported symbols.  Define aliases with the
10504         original names separately.
10506         * include/time.h: Add libc_hidden_proto for __strftime_l.
10507         * include/wchar.h: Add libc_hidden_proto for __wcsftime_l.
10508         * time/strftime.c: Always use libc_hidden_def if _LIBC.
10510         * libio/libioP.h: Add libc_hidden_proto for _IO_file_open.
10511         * libio/fileops.c: Add libc_hidden_def for _IO_file_open.
10513         * malloc/mtrace.c: Add libc_hidden_proto and libc_hidden_def for
10514         tr_break.
10516         * csu/Makefile (routines): Add dso_handle.
10517         * csu/dso_handle.c: New file.
10519 2002-12-31  Roland McGrath  <roland@redhat.com>
10521         * Makerules (compile.S, COMPILE.S): Remove -DASSEMBLER here.
10522         Use $(S-CPPFLAGS) in place of $(asm-CPPFLAGS).
10523         (S-CPPFLAGS): Add -DASSEMBLER here instead.
10524         (generate-md5, +make-deps): Fix magic to get $(S-CPPFLAGS).
10526 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
10528         * malloc/thread-m.h [SHARED] (thread_atfork): Assume __dso_handle
10529         is available.
10531 2002-12-31  Andreas Jaeger  <aj@suse.de>
10533         * sysdeps/unix/sysv/linux/powerpc/powerpc32/kernel_stat.h: Sync
10534         with Linux kernel.
10535         * sysdeps/unix/sysv/linux/sparc/sparc32/kernel_stat.h: Likewise.
10536         * sysdeps/unix/sysv/linux/s390/s390-64/kernel_stat.h: Likewise.
10537         * sysdeps/unix/sysv/linux/hppa/kernel_stat.h: Likewise.
10539         * sysdeps/unix/sysv/linux/kernel_stat.h
10540         (_HAVE_STAT_NSEC,_HAVE_STAT_NSEC64): New.
10542         * sysdeps/unix/sysv/linux/xstatconv.c (xstat_conv): Re-add
10543         __unused[1-3] since they're needed by some platforms.  Handle
10544         _HAVE_STAT_NSEC and _HAVE_STAT_NSEC64.
10546         * sysdeps/unix/sysv/linux/x86_64/bits/stat.h: Add nsec resolution
10547         for structs stat and stat64.
10548         * sysdeps/unix/sysv/linux/ia64/bits/stat.h: Likewise.
10549         * sysdeps/unix/sysv/linux/powerpc/bits/stat.h: Likewise.
10550         * sysdeps/unix/sysv/linux/sparc/bits/stat.h: Likewise.
10551         * sysdeps/unix/sysv/linux/s390/bits/stat.h: Likewise.
10553         * io/sys/stat.h [__USE_MISC]: Define __need_timespec for struct stat.
10555         * sysdeps/unix/sysv/linux/xstatconv.c (xstat_conv): Adjust for
10556         nsec resolution changes.
10557         (xstat64_conv): Likewise.
10558         (xstat32_conv): Likewise.
10560         * sysdeps/unix/sysv/linux/kernel_stat.h: Add nsec resolution for
10561         struct kernel_stat.
10563         * sysdeps/unix/sysv/linux/bits/stat.h: Add nsec resolution for
10564         structs stat and stat64.
10566         * time/time.h (__timespec_defined): Define for __USE_MISC.
10568 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
10570         * include/signal.h: Add libc_hidden_proto for __libc_current_sigrtmin
10571         and __libc_current_sigrtmax.
10573 2002-12-31  Jakub Jelinek  <jakub@redhat.com>
10575         * include/errno.h (__errno_location): Add prototype.
10576         Use libc_hidden_proto unconditionally.
10577         * include/netdb.h (__h_errno_location): Use libc_hidden_proto
10578         unconditionally.
10579         * include/resolv.h (__res_state): Likewise.
10581         * hurd/errno-loc.c (__errno_location): Add libc_hidden_def.
10582         * include/sys/socket.h (accept): Add libc_hidden_proto.
10583         * include/errno.h (__errno_location): Likewise.
10584         * include/netdb.h (__h_errno_location): Likewise.
10585         * include/resolv.h (__res_state): Likewise.
10586         * include/unistd.h (__lseek): Likewise.
10587         * sysdeps/generic/errno-loc.c (__errno_location): Add libc_hidden_def.
10588         * sysdeps/generic/herrno-loc.c (__h_errno_location): Likewise.
10589         * sysdeps/generic/res-state.c (__res_state): Likewise.
10590         * sysdeps/generic/accept.c (accept): Likewise.
10591         * sysdeps/generic/lseek.c (__lseek): Likewise.
10592         * sysdeps/generic/allocrtsig.c (__libc_current_sigrtmin,
10593         __libc_current_sigrtmax): Likewise.
10594         * sysdeps/mach/hurd/accept.c (accept): Likewise.
10595         * sysdeps/mach/hurd/lseek.c (__lseek): Likewise.
10596         * sysdeps/unix/sysv/aix/accept.c (accept): Likewise.
10597         * sysdeps/unix/sysv/aix/lseek.c (__lseek): Likewise.
10598         * sysdeps/unix/sysv/linux/accept.S (accept): Likewise.
10599         * sysdeps/unix/inet/syscalls.list (__GI_accept): New alias to accept.
10600         * sysdeps/unix/sysv/linux/alpha/syscalls.list (__GI_accept): Likewise.
10601         * sysdeps/unix/sysv/linux/hppa/syscalls.list (__GI_accept): Likewise.
10602         * sysdeps/unix/sysv/linux/ia64/syscalls.list (__GI___lseek): New
10603         alias to llseek.
10604         (__GI_accept): New alias to accept.
10605         * sysdeps/unix/sysv/linux/mips/syscalls.list (__GI_accept): Likewise.
10606         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (__GI___lseek):
10607         New alias to llseek.
10608         (__GI_accept): New alias to accept.
10609         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list (__GI_accept):
10610         Likewise.
10611         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (__GI_accept):
10612         Likewise.
10613         * sysdeps/unix/syscalls.list (__GI___lseek): New alias to lseek.
10615         * sysdeps/alpha/setjmp.S : Use libc_hidden_def(name) instead of
10616         strong_alias (name, __GI_name).
10617         * sysdeps/arm/bsd-_setjmp.S : Likewise.
10618         * sysdeps/hppa/bsd-_setjmp.S : Likewise.
10619         * sysdeps/i386/bsd-_setjmp.S : Likewise.
10620         * sysdeps/mips/mips64/bsd-_setjmp.S : Likewise.
10621         * sysdeps/mips/bsd-_setjmp.S : Likewise.
10622         * sysdeps/powerpc/powerpc32/bsd-_setjmp.S : Likewise.
10623         * sysdeps/powerpc/powerpc64/setjmp.S : Likewise.
10624         * sysdeps/s390/s390-32/elf/setjmp.S : Likewise.
10625         * sysdeps/s390/s390-32/bsd-_setjmp.S : Likewise.
10626         * sysdeps/s390/s390-64/elf/setjmp.S : Likewise.
10627         * sysdeps/s390/s390-64/bsd-_setjmp.S : Likewise.
10628         * sysdeps/sh/bsd-_setjmp.S : Likewise.
10629         * sysdeps/sparc/sparc32/setjmp.S : Likewise.
10630         * sysdeps/unix/arm/fork.S : Likewise.
10631         * sysdeps/unix/bsd/hp/m68k/vfork.S : Likewise.
10632         * sysdeps/unix/bsd/i386/vfork.S : Likewise.
10633         * sysdeps/unix/bsd/osf/alpha/fork.S : Likewise.
10634         * sysdeps/unix/bsd/sun/m68k/vfork.S : Likewise.
10635         * sysdeps/unix/bsd/ultrix4/mips/vfork.S : Likewise.
10636         * sysdeps/unix/bsd/vax/vfork.S : Likewise.
10637         * sysdeps/unix/i386/fork.S : Likewise.
10638         * sysdeps/unix/mips/fork.S : Likewise.
10639         * sysdeps/unix/sparc/fork.S : Likewise.
10640         * sysdeps/unix/sparc/vfork.S : Likewise.
10641         * sysdeps/unix/sysv/linux/arm/vfork.S : Likewise.
10642         * sysdeps/unix/sysv/linux/cris/vfork.S : Likewise.
10643         * sysdeps/unix/sysv/linux/i386/vfork.S : Likewise.
10644         * sysdeps/unix/sysv/linux/ia64/fork.S : Likewise.
10645         * sysdeps/unix/sysv/linux/ia64/setjmp.S : Likewise.
10646         * sysdeps/unix/sysv/linux/ia64/vfork.S : Likewise.
10647         * sysdeps/unix/sysv/linux/m68k/vfork.S : Likewise.
10648         * sysdeps/unix/sysv/linux/sh/vfork.S : Likewise.
10649         * sysdeps/unix/sysv/linux/sparc/sparc64/longjmp.S : Likewise.
10650         * sysdeps/unix/sysv/linux/sparc/sparc64/setjmp.S : Likewise.
10651         * sysdeps/unix/sysv/linux/sparc/fork.S : Likewise.
10652         * sysdeps/unix/sysv/linux/sparc/vfork.S : Likewise.
10653         * sysdeps/unix/sysv/linux/x86_64/vfork.S : Likewise.
10654         * sysdeps/unix/fork.S : Likewise.
10655         * sysdeps/vax/bsd-_setjmp.S : Likewise.
10656         * sysdeps/x86_64/bsd-_setjmp.S : Likewise.
10658         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Guard against multiple
10659         inclusion.
10661 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
10663         * include/unistd.h: Add libc_hidden_proto for __fork and __vfork.
10664         * sysdeps/generic/fork.c: Add libc_hidden_def for __fork.
10665         * sysdeps/mach/hurd/fork.c: Likewise.
10666         * sysdeps/unix/sysv/aix/fork.c: Likewise.
10667         * sysdeps/unix/fork.S: Add __GI___fork alias.
10668         * sysdeps/unix/arm/fork.S: Likewise.
10669         * sysdeps/unix/bsd/osf/alpha/fork.S: Likewise.
10670         * sysdeps/unix/i386/fork.S: Likewise.
10671         * sysdeps/unix/mips/fork.S: Likewise.
10672         * sysdeps/unix/sparc/fork.S: Likewise.
10673         * sysdeps/unix/sysv/linux/ia64/fork.S: Likewise.
10674         * sysdeps/unix/sysv/linux/sparc/fork.S: Likewise.
10675         * sysdeps/unix/sysv/linux/syscalls.list: Likewise.
10676         * sysdeps/generic/vfork.c: Add libc_hidden_def for __vfork.
10677         * sysdeps/unix/bsd/hp/m68k/vfork.S: Add __GI___vfork alias.
10678         * sysdeps/unix/bsd/i386/vfork.S: Likewise.
10679         * sysdeps/unix/bsd/sun/m68k/vfork.S: Likewise.
10680         * sysdeps/unix/bsd/ultrix4/mips/vfork.S: Likewise.
10681         * sysdeps/unix/bsd/vax/vfork.S: Likewise.
10682         * sysdeps/unix/sparc/vfork.S: Likewise.
10683         * sysdeps/unix/sysv/linux/arm/vfork.S: Likewise.
10684         * sysdeps/unix/sysv/linux/cris/vfork.S: Likewise.
10685         * sysdeps/unix/sysv/linux/i386/vfork.S: Likewise.
10686         * sysdeps/unix/sysv/linux/ia64/vfork.S: Likewise.
10687         * sysdeps/unix/sysv/linux/m68k/vfork.S: Likewise.
10688         * sysdeps/unix/sysv/linux/sh/vfork.S: Likewise.
10689         * sysdeps/unix/sysv/linux/sparc/vfork.S: Likewise.
10690         * sysdeps/unix/sysv/linux/x86_64/vfork.S: Likewise.
10692         * include/time.h: Add libc_hidden_proto for __nanosleep.
10693         * sysdeps/generic/nanosleep.c: Add libc_hidden_def for __nanosleep.
10694         * sysdeps/mach/nanosleep.c: Likewise.
10695         * sysdeps/unix/sysv/aix/nanosleep.c: Likewise.
10696         * sysdeps/unix/sysv/linux/syscalls.list: Add __GI___nanosleep alias.
10698         * libio/libioP.h: Add libc_hidden_proto for _IO_list_lock,
10699         _IO_list_unlock, and _IO_list_resetlock.
10700         * libio/genops.c: Add libc_hidden_def for _IO_list_lock,
10701         _IO_list_unlock, and _IO_list_resetlock.
10703         * libio/libioP.h: Add libc_hidden_proto for _IO_iter_begin,
10704         _IO_iter_end, _IO_iter_next, and _IO_iter_file.
10705         * libio/genops.c: Add libc_hidden_def for _IO_iter_begin,
10706         _IO_iter_end, _IO_iter_next, and _IO_iter_file.
10708         * include/setjmp.h: Add libc_hidden_proto for __libc_longjmp.
10709         * sysdeps/generic/longjmp.c: Add libc_hidden_def for __longjmp.
10710         * sysdeps/unix/sysv/linux/sparc/sparc64/longjmp.S: Add
10711         __GI___longjmp alias.
10713         * include/setjmp.h: Add libc_hidden_proto for _setjmp.
10714         * sysdeps/alpha/setjmp.S: Add __GI__setjmp alias.
10715         * sysdeps/arm/bsd-_setjmp.S: Likewise.
10716         * sysdeps/generic/bsd-_setjmp.c: Likewise.
10717         * sysdeps/hppa/bsd-_setjmp.S: Likewise.
10718         * sysdeps/i386/bsd-_setjmp.S: Likewise.
10719         * sysdeps/m68k/bsd-_setjmp.c: Likewise.
10720         * sysdeps/mips/bsd-_setjmp.S: Likewise.
10721         * sysdeps/mips/mips64/bsd-_setjmp.S: Likewise.
10722         * sysdeps/powerpc/powerpc32/bsd-_setjmp.S: Likewise.
10723         * sysdeps/powerpc/powerpc64/setjmp.S: Likewise.
10724         * sysdeps/s390/s390-32/bsd-_setjmp.S: Likewise.
10725         * sysdeps/s390/s390-32/elf/setjmp.S: Likewise.
10726         * sysdeps/s390/s390-64/bsd-_setjmp.S: Likewise.
10727         * sysdeps/s390/s390-64/elf/setjmp.S: Likewise.
10728         * sysdeps/sh/bsd-_setjmp.S: Likewise.
10729         * sysdeps/sparc/sparc32/setjmp.S: Likewise.
10730         * sysdeps/unix/sysv/linux/ia64/setjmp.S: Likewise.
10731         * sysdeps/unix/sysv/linux/sparc/sparc64/setjmp.S: Likewise.
10732         * sysdeps/vax/bsd-_setjmp.S: Likewise.
10733         * sysdeps/x86_64/bsd-_setjmp.S: Likewise.
10735 2002-12-30  Ulrich Drepper  <drepper@redhat.com>
10737         * malloc/thread-m.h (thread_atfork): Define using __register_atfork.
10739 2002-12-30  Roland McGrath  <roland@redhat.com>
10741         * Rules (generated): Target removed.
10742         * mach/Makefile (generated): Define it here instead.
10744         * math/Makefile (generated): Add m_*l and m_*f variants too.
10746 2002-12-30  Ulrich Drepper  <drepper@redhat.com>
10748         * elf/dl-close.c (_dl_close): Handle relocation dependencies among
10749         the to-be-deleted objects right away instead of later separately.
10750         The latter fails because the scope data structures of the DSO
10751         might already be gone.
10753         * elf/Makefile: Add rules to build and run reldep8 test.
10754         * elf/reldep8.c: New file.
10755         * elf/reldep8mod1.c: New file.
10756         * elf/reldep8mod2.c: New file.
10757         * elf/reldep8mod3.c: New file.
10758         Contributed by Jakub Jelinek.
10760 2002-12-24  GOTO Masanori  <gotom@debian.or.jp>
10762         * sysdeps/unix/sysv/linux/getdents.c (__GETDENTS): Fix condition
10763         checking of return value ENOSYS from getdents64.
10765 2002-12-28  Andreas Schwab  <schwab@suse.de>
10767         * sysdeps/unix/Makefile: Include $(common-objpfx)s-proto-cancel.d.
10768         ($(common-objpfx)s-%.d): Generalized from
10769         $(common-objpfx)s-proto.d rule.
10770         (common-generated): Add s-proto-cancel.d.
10771         * sysdeps/unix/make-syscalls.sh: Use s-proto-cancel.d for
10772         cancellable syscalls.
10773         * sysdeps/unix/s-proto-cancel.S: New file.
10775 2002-12-29  Roland McGrath  <roland@redhat.com>
10777         * resolv/res_libc.c: Move _res defn magic after res_init defn
10778         so _res macro is in effect for that code.
10780         * Makerules ($(common-objpfx)%.h $(common-objpfx)%.h.d): Fix sed
10781         pattern for prepending $(..) so it doesn't affect $(foo).
10783         * math/Makefile (generated): Add $(addsuffix .c .S,$(calls:s_%=m_%)).
10785 2002-12-29  Jakub Jelinek  <jakub@redhat.com>
10787         * elf/cache.c (add_to_cache): Don't loop forever with 1ULL << 63 set
10788         in hwcap.
10790 2002-12-28  Ulrich Drepper  <drepper@redhat.com>
10792         * misc/sys/cdefs.h (__attribute_deprecated__): New #define.
10794 2002-12-28  Andreas Jaeger  <aj@suse.de>
10796         * sysdeps/generic/readelflib.c (process_elf_file): Cast value to
10797         avoid warning.
10798         * sysdeps/generic/dl-cache.c (_dl_load_cache_lookup): Likewise.
10800 2002-12-27  Jakub Jelinek  <jakub@redhat.com>
10802         * inet/herrno.c (__h_errno_location): Remove.
10803         * inet/Makefile (routines): Add herrno-loc.
10804         * resolv/res_libc.c (__res_state): Remove.
10805         * resolv/Makefile (routines): Add res-state.
10806         * sysdeps/generic/herrno-loc.c: New file.
10807         * sysdeps/generic/res-state.c: New file.
10809 2002-12-27  Jakub Jelinek  <jakub@redhat.com>
10811         * sysdeps/unix/sysv/linux/i386/sysdep.h (I386_USE_SYSENTER):
10812         Only define if USE_DL_SYSINFO is defined.
10814 2002-12-22  Jakub Jelinek  <jakub@redhat.com>
10816         * sysdeps/unix/sysv/linux/ia64/sysdep.h (INLINE_SYSCALL,
10817         INTERNAL_SYSCALL, INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERROR):
10818         Define. Patch by Richard Henderson and Jes Sorensen.
10819         (PSEUDO): Remove unnecessary ;;.
10820         * elf/rtld.c (dl_main): Initialize TLS even if no PT_TLS segments
10821         are found unless TLS_INIT_TP_EXPENSIVE.  Use NONTLS_INIT_TP.
10822         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Use NONTLS_INIT_TP
10823         if not initializing thread pointer.
10824         [!USE_TLS && NONTLS_INIT_TP] (__pthread_initialize_minimal): New.
10825         * sysdeps/generic/libc-start.c (__pthread_initialize_minimal): Don't
10826         make it weak also if NONTLS_INIT_TP.
10827         * sysdeps/unix/common/pause.c: Handle cancellation.
10828         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h [DONT_LOAD_G1]
10829         (LOADSYSCALL): Remove.
10830         (SYSCALL_ERROR_HANDLER_ENTRY): Define.
10831         (SYSCALL_ERROR_HANDLER): Use it.
10832         (PSEUDO): Don't jump around error handler.
10833         * sysdeps/unix/sysv/linux/sparc/sparc32/pipe.S (__libc_pipe): Don't
10834         jump around error handler.
10835         * sysdeps/unix/sysv/linux/sparc/sparc32/syscall.S (syscall): Likewise.
10836         * sysdeps/unix/sysv/linux/sparc/sparc32/socket.S (__socket): Branch
10837         to __syscall_error_handler on failure.
10838         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h [DONT_LOAD_G1]
10839         (LOADSYSCALL): Remove.
10840         (SYSCALL_ERROR_HANDLER_ENTRY): Define.
10841         (SYSCALL_ERROR_HANDLER): Use it.
10842         (PSEUDO): Don't jump around error handler.
10843         * sysdeps/unix/sysv/linux/sparc/sparc64/pipe.S (__libc_pipe): Don't
10844         jump around error handler.
10845         * sysdeps/unix/sysv/linux/sparc/sparc64/syscall.S (syscall): Likewise.
10846         * sysdeps/unix/sysv/linux/sparc/sparc64/socket.S (__socket): Branch
10847         to __syscall_error_handler on failure.
10849 2002-12-27  Roland McGrath  <roland@redhat.com>
10851         * scripts/gen-as-const.awk: New file.
10852         * Makefile (distribute): Add it.
10853         * Makerules ($(common-objpfx)%.h %.h.d: %.sym): New pattern rule.
10854         (before-compile): Add $(gen-as-const-headers:%.sym=$(common-objpfx)%.h)
10855         to the list.
10856         (+depfiles): Add $(addprefix $(common-objpfx),$(gen-as-const-headers)).
10858 2002-12-27  Andreas Schwab  <schwab@suse.de>
10860         * sysdeps/unix/sysv/linux/m68k/socket.S: Add cancellation support.
10862 2002-12-27  Jakub Jelinek  <jakub@redhat.com>
10864         * malloc/arena.c (ptmalloc_init): Don't call next_env_entry if
10865         _environ is NULL.
10867 2002-12-27  Andreas Schwab  <schwab@suse.de>
10869         * Makerules ($(common-objpfx)%.make): Filter through
10870         $(sed-remove-objpfx).
10872 2002-12-23  Roland McGrath  <roland@redhat.com>
10874         * scripts/abilist.awk: Produce a more compact format, divided into
10875         stanzas for each version set, the set name listed only once.
10876         * scripts/extract-abilist.awk: New file.
10877         * scripts/merge-abilist.awk: New file.
10878         * Makerules (check-abi-%, update-abi-%): New pattern rules.
10879         (update-abi, check-abi): New targets.
10880         * Makefile (+subdir_targets): Add subdir_{check,update}-abi.
10882 2002-12-19  Roland McGrath  <roland@redhat.com>
10884         * Makerules (%.symlist): Use LC_ALL=C when running awk script.
10886         * sysdeps/unix/sysv/linux/i386/brk.c (__brk): Cast result of
10887         INTERNAL_SYSCALL.
10889 2002-12-21  Andreas Schwab  <schwab@suse.de>
10891         * elf/check-textrel.c (handle_file): Swap p_type.
10893 2002-12-21  Andreas Schwab  <schwab@suse.de>
10895         * sysdeps/unix/sysv/linux/m68k/sysdep.h (INTERNAL_SYSCALL): Define.
10896         (INLINE_SYSCALL): Use it.
10897         (INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Define.
10898         (SYSCALL_ERROR_HANDLER): Define RTLD_PRIVATE_ERRNO variant.
10900         * sysdeps/unix/sysv/linux/m68k/getpagesize.c: Use INTERNAL_SYSCALL.
10901         * sysdeps/unix/sysv/linux/m68k/brk.c: Likewise.
10903 2002-12-20  Art Haas  <ahaas@airmail.net>
10905         * sysdeps/gnu/siglist.c: Convert GCC extension initializer
10906         syntax to C99.
10908 2002-12-21  Philip Blundell  <philb@gnu.org>
10910         * sysdeps/arm/elf/start.S (_start): Optimise a little.  Push stack
10911         top as seventh arg to __libc_start_main.
10912         Reported by paulnash@wildseed.com.
10914         * sysdeps/unix/sysv/linux/arm/clone.S: Small optimisation.
10916         * sysdeps/unix/sysv/linux/arm/sigcontextinfo.h: Elide
10917         compatibility cruft when new enough kernel is assumed.
10919 2002-12-20  Jakub Jelinek  <jakub@redhat.com>
10921         * sysdeps/unix/sysv/linux/i386/brk.c (__brk): Use INTERNAL_SYSCALL
10922         instead of INLINE_SYSCALL.
10924 2002-12-20  Ulrich Drepper  <drepper@redhat.com>
10926         * sysdeps/unix/sysv/linux/i386/sigaction.c (__libc_sigaction): Fix
10927         typo.
10929         * sysdeps/unix/sysv/linux/alpha/bits/shm.h: Define SHM_HUGETLB.
10930         * sysdeps/unix/sysv/linux/bits/shm.h: Likewise.
10931         * sysdeps/unix/sysv/linux/hppa/bits/shm.h: Likewise.
10932         * sysdeps/unix/sysv/linux/ia64/bits/shm.h: Likewise.
10933         * sysdeps/unix/sysv/linux/mips/bits/shm.h: Likewise.
10934         * sysdeps/unix/sysv/linux/powerpc/bits/shm.h: Likewise.
10935         * sysdeps/unix/sysv/linux/s390/bits/shm.h: Likewise.
10936         * sysdeps/unix/sysv/linux/sparc/bits/shm.h: Likewise.
10937         * sysdeps/unix/sysv/linux/x86_64/bits/shm.h: Likewise.
10938         Patch by William Lee Irwin <wli@holomorphy.com>.
10940 2002-12-20  Andreas Schwab  <schwab@suse.de>
10942         * locale/programs/ld-measurement.c (measurement_output): Fix
10943         index calculation.
10945 2002-12-20  Ulrich Drepper  <drepper@redhat.com>
10947         * include/libio.h [_IO_MTSAFE_IO && _IO_lock_inexpensive]:
10948         Redefine _IO_flockifle and _IO_funlockfile as inlines.
10950         * sysdeps/generic/dl-sysdep.c (_dl_important_hwcaps): For TLS
10951         builds add "tls" in the search path.
10952         * elf/ldconfig.c (is_hwcap_platform): Also recognize "tls".
10953         (path_hwcap): Recognize "tls".
10955 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
10957         * sysdeps/unix/sysv/linux/i386/system.c (cancel_handler): Use
10958         __waitpid instead of waitpid.
10960         * sysdeps/unix/sysv/linux/i386/_exit.S: Use ENTER_KERNEL instead of
10961         int $0x80.
10962         * sysdeps/unix/sysv/linux/i386/getcontext.S: Likewise.
10963         * sysdeps/unix/sysv/linux/i386/setcontext.S: Likewise.
10964         * sysdeps/unix/sysv/linux/i386/swapcontext.S: Likewise.
10966         * sysdeps/unix/sysv/linux/i386/sysdep.h: Add support to use AT_SYSINFO
10967         information for system calls.
10969         * sysdeps/generic/dl-sysdep.h: Define RTLD_PRIVATE_ERRNO to 1 only
10970         for ld.so.
10972         * elf/rtld.c (_dl_start) [USE___THREAD]: Define initdtv.
10974 2002-12-19  Roland McGrath  <roland@redhat.com>
10976         * iconvdata/ibm856.h: Convert GCC extension initializer syntax to C99.
10977         * iconvdata/ibm922.h: Likewise.
10978         * iconvdata/ibm930.h: Likewise.
10979         * iconvdata/ibm932.h: Likewise.
10980         * iconvdata/ibm933.h: Likewise.
10981         * iconvdata/ibm935.h: Likewise.
10982         * iconvdata/ibm937.h: Likewise.
10983         * iconvdata/ibm939.h: Likewise.
10984         * iconvdata/ibm943.h: Likewise.
10985         * iconvdata/isiri-3342.h: Likewise.
10987 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
10989         * test-skeleton.c (main): Make sure correct value is seen as
10990         argv[0] after adjustment of argv, and argc.
10992         * elf/rtld.c: Don't initialize _dl_dynamic_weak to 1 if
10993         RTLD_CORRECT_DYNAMIC_WEAK is defined.
10995 2002-12-19  Jakub Jelinek  <jakub@redhat.com>
10997         * nscd/connections.c (nscd_run): Shut up warning.
10998         * tst-ungetc.c (assert): Undefined before redefining.
11000 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
11002         * posix/regex.c: Use __builtin_expect even outside glibc if gcc 3
11003         is used.
11005 2002-12-17  Art Haas  <ahaas@airmail.net>
11007         * iconvdata/cp737.h: Convert GCC extension initializer syntax to C99.
11008         * iconvdata/cp775.h: Likewise.
11009         * iconvdata/ibm1046.h: Likewise.
11010         * iconvdata/ibm1124.h: Likewise.
11011         * iconvdata/ibm1129.h: Likewise.
11012         * iconvdata/ibm1132.h: Likewise.
11013         * iconvdata/ibm1133.h: Likewise.
11014         * iconvdata/ibm1160.h: Likewise.
11015         * iconvdata/ibm1161.h: Likewise.
11016         * iconvdata/ibm1162.h: Likewise.
11017         * iconvdata/ibm1163.h: Likewise.
11018         * iconvdata/ibm1164.h: Likewise.
11020 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
11022         * sysdeps/unix/sysv/linux/i386/system.c: Define FORK only if
11023         __ASSUME_CLONE_THREAD_FLAGS is defined.
11024         * sysdeps/unix/sysv/linux/kernel-features.h
11025         (__ASSUME_CLONE_THREAD_FLAGS): Define for x86 and kernel >= 2.5.50.
11027 2002-12-18  Ulrich Drepper  <drepper@redhat.com>
11029         * sysdeps/unix/sysv/linux/i386/brk.c: Use INTERNAL_SYSCALL instead
11030         of asm.
11031         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
11033         * elf/dl-support.c [NEED_DL_SYSINFO]: Define and initialize
11034         _dl_sysinfo.
11035         [DL_SYSINFO_IMPLEMENTATION]: If defined use it to generate the needed
11036         code.
11037         * elf/rtld.c [DL_NEED_SYSINFO]: Initialize _dl_sysinfo element of
11038         _rtld_global.
11039         [DL_SYSINFO_IMPLEMENTATION]: If defined use it to generate the needed
11040         code.
11041         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start) [NEED_DL_SYSINFO]:
11042         Check for AT_SYSINFO and set _dl_sysinfo appropriately.
11043         * sysdeps/generic/ldsodefs.h (struct rtld_global) [NEED_DL_SYSINFO]:
11044         Add _dl_sysinfo.
11046 2002-12-18  Jakub Jelinek  <jakub@redhat.com>
11048         * misc/Versions [libc: GLIBC_2.3.1]: Move __libc_readv and
11049         __libc_writev to...
11050         [libc: GLIBC_PRIVATE]: ...here.
11051         * sysvipc/Versions [libc: GLIBC_2.3.1]: Move __libc_msgrcv and
11052         __libc_msgsnd to...
11053         [libc: GLIBC_PRIVATE]: ...here.
11055 2002-12-18  Ulrich Drepper  <drepper@redhat.com>
11057         * sysdeps/unix/sysv/linux/i386/sysdep.h: Define ENTER_KERNEL macro.
11058         Use it instead of directly int $0x80.
11059         * sysdeps/unix/sysv/linux/i386/brk.c: Use ENTER_KERNEL.
11060         * sysdeps/unix/sysv/linux/i386/mmap64.S: Likewise.
11061         * sysdeps/unix/sysv/linux/i386/mmap.S: Likewise.
11062         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
11063         * sysdeps/unix/sysv/linux/i386/socket.S: Likewise.
11064         * sysdeps/unix/sysv/linux/i386/syscall.S: Likewise.
11066 2002-12-17  Ulrich Drepper  <drepper@redhat.com>
11068         * malloc/malloc.c (mALLOPt): Make sure malloc is initialized.
11070         * elf/elf.h (AT_SYSINFO): New define.
11071         * sysdeps/generic/dl-sysdep.c (_dl_show_auxv): Add support for
11072         AT_SYSINFO.
11074 2002-12-17  Jakub Jelinek  <jakub@redhat.com>
11076         * sysdeps/unix/sysv/linux/alpha/syscalls.list (msgrcv, msgsnd):
11077         Make cancelable.
11078         * sysdeps/unix/sysv/linux/hppa/syscalls.list (msgrcv, msgsnd):
11079         Likewise.
11080         * sysdeps/unix/sysv/linux/ia64/syscalls.list (msgrcv, msgsnd):
11081         Likewise.
11082         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (msgrcv, msgsnd):
11083         Likewise.
11084         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (msgrcv, msgsnd):
11085         Likewise.
11086         * sysdeps/unix/sysv/linux/ia64/sigsuspend.c (__sigsuspend): Likewise.
11088         * malloc/thread-m.h (mutex_init, mutex_lock, mutex_trylock,
11089         mutex_unlock): If not building NPTL, use __libc_maybe_call2 if
11090         available, otherwise __libc_maybe_call.
11091         * sysdeps/unix/sysv/linux/x86_64/recv.c: Add support for
11092         cancellation handling.
11093         * sysdeps/unix/sysv/linux/x86_64/send.c: Likewise.
11095 2002-12-17  Isamu Hasegawa  <isamu@yamato.ibm.com>
11097         * posix/regcomp.c (free_workarea_compile): Free the new member
11098         ORG_INDICES.
11099         (analyze): Initialize ORG_INDICES.
11100         (duplicate_node_closure): Search for a existing node, which is
11101         duplicated from the node ORG_DEST and satisfies the constraint
11102         CONSTRAINT.  And use it to avoid inifimite loop.
11103         (search_duplicated_node): New function.
11104         (duplicate_node): Store the index of the original node.
11105         * posix/regex_internal.c (re_dfa_add_node): Realloc ORG_INDICES
11106         if needed.
11107         * posix/regex_internal.h (re_dfa_t): Add new members.
11109 2002-12-17  Ulrich Drepper  <drepper@redhat.com>
11111         * stdio-common/tst-fdopen.c: Undefine assert before redefining it.
11113 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
11115         * sysdeps/posix/system.c (do_system): Add support for installation
11116         of cancellation handlers.
11117         * sysdeps/unix/sysv/linux/i386/system.c: New file.
11119         * stdlib/Makefile (tests): Add tst-system.
11120         * stdlib/tst-system.c: New file.
11122         * sysdeps/unix/sysv/linux/i386/socket.S [NEED_CANCELLATION &&
11123         CENABLE]: Don't lose content of %ebx.
11125 2002-12-17  Jakub Jelinek  <jakub@redhat.com>
11127         * sysdeps/unix/sysv/linux/i386/socket.S: Use SINGLE_THREAD_P
11128         macro instead of comparing %gs:MULTIPLE_THREADS_OFFSET directly.
11130 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
11132         * sysdeps/posix/getaddrinfo.c (gaih_inet): If __nss_lookup_function
11133         fails to return a function pointer don't use it.
11135 2002-12-16  Art Haas  <ahaas@airmail.net>
11137         * io/ftw.c: Convert GCC extension initializer syntax to C99.
11138         * iconvdata/iso-ir-165.c: Likewise.
11139         * iconvdata/jis0208.c: Likewise.
11140         * iconvdata/jis0212.c: Likewise.
11142 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
11144         * sysdeps/unix/sysv/linux/syscalls.list: Add epoll_create,
11145         epoll_ctl, and epoll_wait.
11146         * sysdeps/unix/sysv/linux/Versions [libc: GLIBC_2.3.2]: Add
11147         epoll_create, epoll_ctl, and epoll_wait.
11148         * sysdeps/unix/sysv/linux/sys/epoll.h: New file.  Written by
11149         Davide Libenzi <davidel@xmailserver.org>.
11150         * sysdeps/unix/sysv/linux/Dist: Add sys/epoll.h.
11151         * sysdeps/unix/sysv/linux/Makefile [subdir=misc] (sysdep_headers):
11152         Add sys/epoll.h.
11154 2002-12-16  Art Haas  <ahaas@airmail.net>
11156         * sysdeps/generic/bp-semctl.h: Convert GCC extension initializer
11157         syntax to C99
11158         * sysdeps/unix/sysv/aix/settimer.c: Likewise.
11159         * sysdeps/unix/sysv/aix/sleep.c: Likewise.
11160         * sysdeps/unix/sysv/aix/usleep.c: Likewise.
11162 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
11164         * stdio-common/Makefile (routines): Remove lockfile.  Add
11165         flockfile, ftrylockfile, and funlockfile.
11166         * sysdeps/generic/lockfile.c: Removed.  Each function has its own file.
11167         * sysdeps/generic/flockfile.c: New file.
11168         * sysdeps/generic/ftrylockfile.c: New file.
11169         * sysdeps/generic/funlockfile.c: New file.
11171 2002-12-16  Jakub Jelinek  <jakub@redhat.com>
11173         * sysdeps/unix/sysv/linux/i386/socket.S: Use CENABLE and CDISABLE
11174         macros instead of doing the calls directly.
11175         * sysdeps/unix/make-syscalls.sh: Add ptw-*.$o target name to rules.
11176         * Makerules ($(+sysdir_pfx)sysd-rules): Emit rules for ptw-%
11177         targets.
11179 2002-12-16  Jakub Jelinek  <jakub@redhat.com>
11181         * sysdeps/i386/fpu/bits/mathinline.h: Backout last change.
11182         * sysdeps/ieee754/bits/nan.h: Likewise.
11184         * sysdeps/unix/sysv/linux/ia64/syscalls.list (__syscall_open,
11185         __syscall_wait4, __syscall_ioctl, __syscall_write): Add.
11187 2002-12-16  Roland McGrath  <roland@redhat.com>
11189         * sunrpc/xdr_mem.c (xdrmem_inline): Fix argument type.
11190         * sunrpc/xdr_rec.c (xdrrec_inline): Likewise.
11191         * sunrpc/xdr_stdio.c (xdrstdio_inline): Likewise.
11193         * sysdeps/unix/sysv/linux/syscalls.list: Add getpmsg, putpmsg.
11194         * sysdeps/unix/sysv/linux/mips/syscalls.list: Remove s_getpmsg,
11195         s_putpmsg.
11196         * sysdeps/unix/sysv/linux/i386/getpmsg.c: File removed.
11197         * sysdeps/unix/sysv/linux/i386/putpmsg.c: File removed.
11198         * sysdeps/unix/sysv/linux/m68k/getpmsg.c: File removed.
11199         * sysdeps/unix/sysv/linux/m68k/putpmsg.c: File removed.
11200         * sysdeps/unix/sysv/linux/mips/getpmsg.c: File removed.
11201         * sysdeps/unix/sysv/linux/mips/putpmsg.c: File removed.
11202         * sysdeps/unix/sysv/linux/powerpc/getpmsg.c: File removed.
11203         * sysdeps/unix/sysv/linux/powerpc/putpmsg.c: File removed.
11205 2002-12-13  Paul Eggert  <eggert@twinsun.com>
11207         * sunrpc/rpc/xdr.h (struct XDR.xdr_ops.x_inline): 2nd arg
11208         is now u_int, not int.
11209         (struct XDR.x_handy): Now u_int, not int.
11210         * sunrpc/xdr_mem.c: Include <limits.h>.
11211         (xdrmem_getlong, xdrmem_putlong, xdrmem_getbytes, xdrmem_putbytes,
11212         xdrmem_inline, xdrmem_getint32, xdrmem_putint32):
11213         x_handy is now unsigned, not signed.
11214         Do not decrement x_handy if no change is made.
11215         (xdrmem_setpos): Check for int overflow.
11216         * sunrpc/xdr_sizeof.c (x_inline): 2nd arg is now unsigned.
11217         (xdr_sizeof): Remove cast that is now unnecessary, now that
11218         x_handy is unsigned.
11220 2002-12-15  Art Haas  <ahaas@airmail.net>
11222         * iconv/gconv_conf.c: Convert GCC extension initializer syntax to C99.
11223         * iconvdata/gap.awk: Likewise.
11224         * iconvdata/gen-8bit-gap-1.sh: Likewise.
11225         * iconvdata/gen-8bit-gap.sh: Likewise.
11226         * locale/C-address.c: Likewise.
11227         * locale/C-collate.c: Likewise.
11228         * locale/C-ctype.c: Likewise.
11229         * locale/C-identification.c: Likewise.
11230         * locale/C-measurement.c: Likewise.
11231         * locale/C-messages.c: Likewise.
11232         * locale/C-monetary.c: Likewise.
11233         * locale/C-name.c: Likewise.
11234         * locale/C-numeric.c: Likewise.
11235         * locale/C-paper.c: Likewise.
11236         * locale/C-telephone.c: Likewise.
11237         * locale/C-time.c: Likewise.
11238         * nscd/connections.c: Likewise.
11239         * nscd/grpcache.c: Likewise.
11240         * nscd/hstcache.c: Likewise.
11241         * nscd/pwdcache.c: Likewise.
11242         * stdio-common/vfprintf.c: Likewise.
11243         * stdlib/random.c: Likewise.
11244         * sysdeps/generic/siglist.c: Likewise.
11245         * sysdeps/i386/fpu/bits/mathinline.h: Likewise.
11246         * sysdeps/ieee754/bits/nan.h: Likewise.
11247         * sysdeps/posix/sprofil.c: Likewise.
11248         * sysdeps/unix/sysv/linux/sleep.c: Likewise.
11249         * sysdeps/unix/sysv/linux/sysctl.c: Likewise.
11250         * sysdeps/unix/sysv/linux/usleep.c: Likewise.
11252 2002-12-15  Roland McGrath  <roland@redhat.com>
11254         * sysdeps/unix/sysv/linux/readv.c (do_readv): Use prototype defn.
11256         * sysdeps/unix/sysv/linux/wait.c: Don't include <nptl/pthreadP.h> or
11257         <tls.h> here, no need for it.
11258         * sysdeps/unix/sysv/linux/waitpid.c: Likewise.
11260         * sysdeps/unix/sysv/linux/i386/fcntl.c (do_fcntl): Take ARG as void *
11261         parameter, not varargs parameter.
11263         * sysdeps/generic/sysdep-cancel.h (LIBC_CANCEL_RESET): Evaluate the
11264         argument so it's not an unused variable.
11266         * resolv/resolv.h (__p_key_syms, __p_cert_syms, __p_class_syms,
11267         __p_type_syms, __p_rcode_syms): Remove decls, never really intended
11268         for users.
11270         * resolv/Versions (libresolv: GLIBC_2.3.2): New set, add __p_rcode.
11272 2002-12-15  Ulrich Drepper  <drepper@redhat.com>
11274         * sysdeps/unix/sysv/linux/i386/fcntl.c (do_fcntl): This is the
11275         original __libc_fcntl code.  Just renamed.
11277 2002-12-15  Andreas Schwab  <schwab@suse.de>
11279         * sysdeps/unix/sysv/linux/m68k/clone.S: Make inline syscall to _exit.
11281 2002-12-14  Olaf Hering  <olh@suse.de>
11283         * sysdeps/powerpc/bits/setjmp.h: Include <bits/wordsize.h>.
11284         * sysdeps/powerpc/powerpc64/setjmp.S: Fix typo in r18 load.
11286 2002-12-15  Ulrich Drepper  <drepper@redhat.com>
11288         * sysdeps/unix/sysv/linux/libc_fatal.c: New file.
11290         * sysdeps/generic/sysdep-cancel.h: Add dummy definitions for
11291         SINGLE_THREAD_P, LIBC_CANCEL_ASYNC, and LIBC_CANCEL_RESET.
11293         * sysdeps/unix/sysv/linux/open64.c: New file.
11295         * sysdeps/generic/pselect.c: Add support for cancellation handling.
11296         * sysdeps/posix/open64.c: Likewise.
11297         * sysdeps/posix/sigpause.c: Likewise.
11298         * sysdeps/posix/sigwait.c: Likewise.
11299         * sysdeps/posix/system.c: Likewise.
11300         * sysdeps/posix/waitid.c: Likewise.
11301         * sysdeps/unix/sysv/linux/accept.S: Likewise.
11302         * sysdeps/unix/sysv/linux/connect.S: Likewise.
11303         * sysdeps/unix/sysv/linux/llseek.c: Likewise.
11304         * sysdeps/unix/sysv/linux/msgrcv.c: Likewise.
11305         * sysdeps/unix/sysv/linux/msgsnd.c: Likewise.
11306         * sysdeps/unix/sysv/linux/poll.c: Likewise.
11307         * sysdeps/unix/sysv/linux/pread.c: Likewise.
11308         * sysdeps/unix/sysv/linux/pread64.c: Likewise.
11309         * sysdeps/unix/sysv/linux/pwrite.c: Likewise.
11310         * sysdeps/unix/sysv/linux/pwrite64.c: Likewise.
11311         * sysdeps/unix/sysv/linux/readv.c: Likewise.
11312         * sysdeps/unix/sysv/linux/recv.S: Likewise.
11313         * sysdeps/unix/sysv/linux/recvfrom.S: Likewise.
11314         * sysdeps/unix/sysv/linux/recvmsg.S: Likewise.
11315         * sysdeps/unix/sysv/linux/send.S: Likewise.
11316         * sysdeps/unix/sysv/linux/sendmsg.S: Likewise.
11317         * sysdeps/unix/sysv/linux/sendto.S: Likewise.
11318         * sysdeps/unix/sysv/linux/sigsuspend.c: Likewise.
11319         * sysdeps/unix/sysv/linux/sigtimedwait.c: Likewise.
11320         * sysdeps/unix/sysv/linux/sigwait.c: Likewise.
11321         * sysdeps/unix/sysv/linux/sigwaitinfo.c: Likewise.
11322         * sysdeps/unix/sysv/linux/tcdrain.c: Likewise.
11323         * sysdeps/unix/sysv/linux/wait.c: Likewise.
11324         * sysdeps/unix/sysv/linux/waitpid.c: Likewise.
11325         * sysdeps/unix/sysv/linux/writev.c: Likewise.
11326         * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.
11327         * sysdeps/unix/sysv/linux/i386/socket.S: Likewise.
11329 2002-12-14  Jakub Jelinek  <jakub@redhat.com>
11331         * sysdeps/generic/sysdep-cancel.h: New file.
11332         * sysdeps/unix/make-syscalls.sh: Handle C at start of args as
11333         cancelable syscall.
11334         * sysdeps/unix/inet/syscalls.list (accept, connect, recv, recvfrom,
11335         recvmsg, send, sendmsg, sendto): Make cancelable.
11336         * sysdeps/unix/mman/syscalls.list (msync): Likewise.
11337         * sysdeps/unix/sysv/linux/alpha/syscalls.list (llseek, pread,
11338         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
11339         sendto, osf_select): Likewise.
11340         * sysdeps/unix/sysv/linux/hppa/syscalls.list (accept, connect, recv,
11341         recvfrom, recvmsg, send, sendmsg, sendto): Likewise.
11342         * sysdeps/unix/sysv/linux/ia64/syscalls.list (llseek, pread,
11343         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
11344         sendto): Likewise.
11345         * sysdeps/unix/sysv/linux/mips/syscalls.list (accept, connect, recv,
11346         recvfrom, recvmsg, send, sendmsg, sendto): Likewise.
11347         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (llseek, pread,
11348         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
11349         sendto): Likewise.
11350         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list (llseek, pread,
11351         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
11352         sendto, select): Likewise.
11353         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (llseek, pread,
11354         pwrite, accept, connect, recvfrom, recvmsg, sendmsg, sendto):
11355         Likewise.
11356         * sysdeps/unix/sysv/linux/syscalls.list (creat, nanosleep, pause,
11357         select, fcntl): Likewise.
11358         * sysdeps/unix/sysv/syscalls.list (pause, poll): Likewise.
11359         * sysdeps/unix/syscalls.list (close, fcntl, fsync, lseek, open,
11360         read, readv, select, sigsuspend, write, writev): Likewise.
11362 2002-12-14  Jakub Jelinek  <jakub@redhat.com>
11364         * dirent/bug-readdir1.c: Include unistd.h.
11366 2002-12-13  Jakub Jelinek  <jakub@redhat.com>
11368         * locale/programs/locale.c: Include locarchive.h.
11369         (ARCHIVE_NAME): Define.
11370         (write_archive_locales): New function.
11371         (write_locales): Use it.  Ensure the same locale is not printed
11372         multiple times in verbose mode.
11373         Mode LC_IDENTIFICATION and LC_CTYPE printing into...
11374         (print_LC_IDENTIFICATION, print_LC_CTYPE): ... these helper
11375         functions.
11376         (struct nameent): New type.
11377         (nameentcmp): New function.
11379 2002-12-14  Jakub Jelinek  <jakub@redhat.com>
11381         * posix/regex_internal.c (re_string_context_at): Guard wide char
11382         code with #ifdef RE_ENABLE_I18N.
11384 2002-11-22  Paolo Bonzini  <bonzini@gnu.org>
11386         * posix/regcomp.c (regcomp): __re_compile_fastmap -> re_compile_fastmap
11388 2002-12-13  Roland McGrath  <roland@redhat.com>
11390         * posix/bug-regex15.c: New file.
11391         * posix/Makefile (tests): Add it.
11393         * test-skeleton.c (TEST_DATA_LIMIT): New macro, default to 64MB.
11394         (main): Set RLIMIT_DATA limit to TEST_DATA_LIMIT (or lower if need be).
11396 2002-12-13  Ulrich Drepper  <drepper@redhat.com>
11398         * elf/dl-misc.c (_dl_debug_vdprintf): Don't depend on 5-digit PIDs.
11400         * misc/syslog.c (log_cleanup): Don't use parameter in
11401         __libc_lock_unlock call, use syslog_lock directly.  Adjust callers to
11402         pass NULL instead of a pointer to syslog_lock.
11404 2002-12-12  Ulrich Drepper  <drepper@redhat.com>
11406         * iconvdata/Makefile: iconv-rules: Add definition to use gconv.map
11407         linker map for all iconv modules.
11408         (distribute): Add gconv.map.
11409         * iconvdata/gconv.map: New file.
11411         * elf/Makefile: Also check all iconv modules for text relocations.
11413         * stdlib/Makefile: Remove code to automatically import GMP.
11415         * elf/Makefile (tests): Add rules to build and run check-textrel.
11416         * elf/check-textrel.c: New file.
11418         * sysdeps/unix/sysv/linux/i386/sysdep.h (SETUP_PIC_REG): Add .size
11419         directive.
11421 2002-12-11  Jakub Jelinek  <jakub@redhat.com>
11423         * io/test-utime (main): If stnow.st[am]time is wrong, print it and
11424         not st.st[am]time.
11426 2002-04-30  Bruno Haible  <bruno@clisp.org>
11428         * intl/loadmsgcat.c (_nl_init_domain_conv): Don't append //TRANSLIT to
11429         the encoding if it already has slashes.
11430         Reported by Perry Rapp <prapp@erols.com>.
11432 2002-12-11  Roland McGrath  <roland@redhat.com>
11434         * csu/Makefile ($(objpfx)elf-init.oS): Remove target, braino.
11435         (CPPFLAGS-elf-init.oS, CFLAGS-elf-init.oS): New variables.
11436         Turn off PIC for compiling this file.
11438 2002-12-11  Ulrich Drepper  <drepper@redhat.com>
11440         * malloc/thread-m.h: Remove thread_id type and MUTEX_INITIALIZER
11441         definitions.  Not needed.
11442         [_LIBC]: Use definitions from libc-lock.h instead of referencing
11443         pthread routines directly.
11444         * malloc/arena.c (ptmalloc_unlock_all2): Don't add (void) to
11445         mutex_init calls.
11446         (arena_get2): Don't look at return value of mutex_lock.
11448 2002-12-11  Roland McGrath  <roland@redhat.com>
11450         * csu/Makefile ($(objpfx)elf-init.oS): New target, just clone
11451         elf-init.o instead of compiling a PIC version.
11453 2002-12-11  Bruno Haible  <bruno@clisp.org>
11455         * intl/gettext.h: Renamed to ...
11456         * intl/gmo.h: ... here.
11457         * intl/Makefile (distribute): Add gmo.h, remove gettext.h.
11458         * intl/gettextP.h: Update.
11459         * intl/loadmsgcat.c: Update.
11461         * intl/gettextP.h (PARAMS): Make more portable.
11462         (attribute_hidden): Define as empty macro if not already defined.
11463         * intl/hash-string.h (PARAMS): Make more portable.
11464         * intl/loadinfo.h (PARAMS): Likewise.
11465         * intl/plural-exp.h (PARAMS): Likewise.
11466         (attribute_hidden): Move definition near the definition of
11467         internal_function.
11469         * intl/gettextP.h (_nl_locale_name) [!_LIBC]: New declaration.
11470         * intl/plural-exp.h (plural_eval) [!_LIBC]: New declaration.
11472 2002-07-13  Bruno Haible  <bruno@clisp.org>
11474         * intl/dcigettext.c (freea): New macro.
11475         (FREE_BLOCKS): Free also the registered blocks.
11476         (DCIGETTEXT): Free the 'search' variable.
11477         Reported by Andreas Fischer <a.fischer@asentics.de>.
11479 2002-04-27  Bruno Haible  <bruno@clisp.org>
11481         * intl/gettextP.h [! _LIBC]: Use prefix libintl_ instead of suffix __.
11482         * intl/dcigettext.c: Likewise.
11483         * intl/dcgettext.c: Likewise.
11484         * intl/dgettext.c: Likewise.
11485         * intl/gettext.c: Likewise.
11486         * intl/dcngettext.c: Likewise.
11487         * intl/dngettext.c: Likewise.
11488         * intl/ngettext.c: Likewise.
11489         * intl/textdomain.c: Likewise.
11490         * intl/bindtextdom.c: Likewise.
11491         * intl/plural-exp.h: Likewise.
11493 2002-01-02  Bruno Haible  <bruno@clisp.org>
11495         * intl/loadmsgcat.c (_nl_init_domain_conv): Use PARAMS in extern decl.
11497 2001-04-30  Bruno Haible  <bruno@clisp.org>
11499         * intl/dcigettext.c (getuid, getgid, geteuid, getegid): Provide
11500         default macro definitions.  Needed for mingw32.
11502 2002-12-10  Ulrich Drepper  <drepper@redhat.com>
11504         * sysdeps/i386/bits/byteswap.h (__bswap_64): Apply
11505         __builtin_constant_p to macro parameter.
11507         * sysdeps/generic/sigpause.c: Define all functions as weak.
11508         * sysdeps/posix/sigpause.c: Likewise.
11510         * elf/tst-tls7.c (do_test): Adjustments for l_tls_modid being of
11511         type size_t.
11513 2002-12-10  Jakub Jelinek  <jakub@redhat.com>
11515         * elf/tst-array1.c (preinit_array, init_array, fini_array):
11516         Explicitly align the array to sizeof (void *).
11517         * elf/tst-array2dep.c (init_array, fini_array): Likewise.
11519         * include/libc-symbols.h: Fix a comment typo.
11521         * sysdeps/unix/sysv/linux/alpha/select.S (__libc_select): New alias.
11522         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S (__libc_sigsuspend):
11523         Likewise.
11524         * sysdeps/unix/sysv/linux/ia64/sigsuspend.c (__libc_sigsuspend):
11525         Likewise.
11526         * sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c
11527         (__libc_sigsuspend): Likewise.
11528         * sysdeps/unix/sysv/linux/sparc/sparc64/sigsuspend.c
11529         (__libc_sigsuspend): Likewise.
11530         * sysdeps/generic/creat.c (__libc_creat): Renamed from creat.
11531         (creat): New weak alias.
11533 2002-12-10  Roland McGrath  <roland@redhat.com>
11535         * manual/libc-texinfo.sh: Emit @set ADD-ON for each ADD-ON that
11536         contributes a manual chapter.
11537         * manual/signal.texi (Process Signal Mask): Use @ifset linuxthreads
11538         around xref to it.
11540         * sysdeps/unix/sysv/linux/dl-librecon.h (EXTRA_LD_ENVVARS): Refer to
11541         and move contents to ...
11542         (EXTRA_LD_ENVVARS_LINUX): ... this new macro.  Add break for nonmatch.
11543         * sysdeps/unix/sysv/linux/i386/dl-librecon.h (EXTRA_LD_ENVVARS): Use
11544         it instead of duplicating its contents.
11545         (EXTRA_LD_ENVVARS): Likewise.  Add break for nonmatch.
11547 2002-12-09  Jakub Jelinek  <jakub@redhat.com>
11549         * elf/dl-support.c (_dl_non_dynamic_init): Add DL_OSVERSION_INIT if
11550         defined.
11551         * sysdeps/unix/sysv/linux/dl-librecon.h (_dl_osversion_init): New
11552         function.
11553         (EXTRA_LD_ENVVARS): Use it.
11554         (DL_OSVERSION_INIT): Define.
11555         * sysdeps/unix/sysv/linux/i386/dl-librecon.h: Include linux
11556         dl-librecon.h.
11557         (EXTRA_LD_ENVVARS): Undef before defining.  Use _dl_osversion_init.
11559 2002-12-10  Ulrich Drepper  <drepper@redhat.com>
11561         * Versions.def: No new symbols in 2.3.1, but some new ones in 2.3.2.
11563         * sysdeps/unix/closedir.c (__closedir): Remove __libc_lock_lock
11564         call.  It is not allowed to destroy pthread mutexes which are
11565         still in use even though it is safe for our implementations.  If
11566         somebody still uses the descriptor it is a bug.
11568 2002-12-09  Richard Henderson  <rth@redhat.com>
11570         * csu/abi-note.S: Use .p2align, not .align.
11572 2002-12-09  Ulrich Drepper  <drepper@redhat.com>
11574         * sysdeps/unix/sysv/linux/syscalls.list: Add __libc_creat and
11575         __libc_select aliases.
11577         * sysdeps/unix/sysv/linux/sigwaitinfo.c: Define __libc_sigwaitinfo
11578         alias.
11580         * sysdeps/unix/sysv/linux/sigwait.c: Define __libc_sigwait alias.
11582         * sysdeps/unix/sysv/linux/sigsuspend.c: Define __libc_sigsuspend alias.
11584         * sysdeps/unix/sysv/linux/poll.c: Define __libc_poll alias.
11586         * sysdeps/unix/syscalls.list: Define __libc_select alias.
11588         * sysdeps/posix/waitid.c: Define __libc_waitid alias.
11590         * sysdeps/posix/sigpause.c: Define __libc_sigpause and
11591         __libc___xpg_sigpause aliases.
11593         * sysdeps/generic/pselect.c: Define __libc_pselect alias.
11595         * misc/error.c: Remove use of USE_IN_LIBIO.
11597 2002-12-08  Roland McGrath  <roland@redhat.com>
11599         * elf/Makefile (tests): Uncomment tst-array[123].
11600         * Makeconfig (CPPFLAGS-.oS): Add -DLIBC_NONSHARED=1.
11601         * csu/elf-init.c: New file.
11602         * csu/Makefile (routines, static-only-routines): Add elf-init.
11603         * sysdeps/alpha/elf/start.S: Use __libc_csu_init in place of _init
11604         and __libc_csu_fini in place of _fini.
11605         * sysdeps/arm/elf/start.S: Likewise.
11606         * sysdeps/cris/elf/start.S: Likewise.
11607         * sysdeps/hppa/elf/start.S: Likewise.
11608         * sysdeps/i386/elf/start.S: Likewise.
11609         * sysdeps/ia64/elf/start.S: Likewise.
11610         * sysdeps/m68k/elf/start.S: Likewise.
11611         * sysdeps/mach/hurd/powerpc/static-start.S: Likewise.
11612         * sysdeps/mips/elf/start.S: Likewise.
11613         * sysdeps/powerpc/powerpc32/elf/start.S: Likewise.
11614         * sysdeps/powerpc/powerpc64/elf/start.S: Likewise.
11615         * sysdeps/s390/s390-32/elf/start.S: Likewise.
11616         * sysdeps/s390/s390-64/elf/start.S: Likewise.
11617         * sysdeps/sh/elf/start.S: Likewise.
11618         * sysdeps/sparc/sparc32/elf/start.S: Likewise.
11619         * sysdeps/sparc/sparc64/elf/start.S: Likewise.
11620         * sysdeps/x86_64/elf/start.S: Likewise.
11622         * sysdeps/pthread/aio_notify.c (notify_func_wrapper): Take a malloc'd
11623         struct containing function ptr and value, free it.
11624         (__aio_notify_only): Allocate that and copy values from SIGEV into it.
11625         It's not safe to let the new thread use the SIGEV pointer.
11627 2001-10-20  Paul Eggert  <eggert@twinsun.com>
11629         * misc/error.c (strerror_r): Do not declare unless [!_LIBC].
11630         Do not check for HAVE_DECL_STRERROR_R missing unless STRERROR_R_CHAR_P.
11631         Use strerror_r that is only a macro, even if it is not a function.
11632         (strerror): Check for HAVE_DECL_STRERROR before declaring.
11633         (private_strerror): Use prototypes, not old-style function definition.
11634         (print_errno_message): New function.
11635         Support the POSIX 'int'-flavored strerror_r, as well as the traditional
11636         char*-flavored one.
11637         (error_tail, error, error_at_line): Use it.
11639 2002-12-07  Carlos O'Donell  <carlos@baldric.uwo.ca>
11641         * sysdeps/unix/sysv/linux/hppa/bits/shm.h: Added SHMLBA #define.
11643 2002-12-08  Ulrich Drepper  <drepper@redhat.com>
11645         * scripts/output-format.sed: Fix bug in one of the s expressions
11646         which used / for one too many things.
11648         * include/unistd.h: Declare __libc_close.
11650 2002-12-07  Ulrich Drepper  <drepper@redhat.com>
11652         * sysdeps/generic/bits/stdio-lock.h (_IO_lock_trylock): New define.
11654 2002-12-07  Roland McGrath  <roland@redhat.com>
11656         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Reintroduce changes
11657         from 2002-12-06, but remove unnecessary memset call without removing
11658         necessary copy of initialization image.
11660         * Makerules ($(common-objpfx)format.lds): New target.
11661         (common-generated): Add it.
11662         ($(inst_libdir)/libc.so): Depend on that, and cat it into the result.
11663         * scripts/output-format.sed: New file.
11664         * Makefile (distribute): Add it.
11666 2002-12-07  Ulrich Drepper  <drepper@redhat.com>
11668         * sysdeps/generic/libc-tls.c: Include <sys/param.h>.
11669         Reported by Art Haas <ahaas@airmail.net>.
11671 2002-12-07  Kenneth W. Chen  <kenneth.w.chen@intel.com>
11673         * sysdeps/ia64/strncpy.S (strncpy): Clear ar.ec.  Fix .recovery4.
11675 2002-12-07  Jakub Jelinek  <jakub@redhat.com>
11677         * string/test-strncpy.c (do_random_tests): Improve test coverage.
11679 2002-12-06  Ulrich Drepper  <drepper@redhat.com>
11681         * test-skeleton.c (timeout_handler): Allow expected signal to be
11682         SIGALRM.
11684         * wctype/wcfuncs.c: Add libc_hidden_def for iswalnum.
11686         * sysdeps/posix/raise.c: Add libc_hidden_def for raise.
11688 2002-12-07  Jakub Jelinek  <jakub@redhat.com>
11690         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h [RTLD_PRIVATE_ERRNO]
11691         (SYSCALL_ERROR_HANDLER): Fix a pasto.
11692         Reported by Jeff Bailey <jbailey@nisa.net>.
11694 2002-12-06  Ulrich Drepper  <drepper@redhat.com>
11696         * sysdeps/generic/libc-tls.c: Undo last patch.
11698         * include/wctype.h: Define iswalnum with libc_hidden_proto.
11700         * include/signal.h: Define raise with libc_hidden_proto.
11702         * sysdeps/unix/sysv/linux/fexecve.c (fexecve): Use __snprintf and
11703         __execve instead of snprintf and execve.
11705         * sysdeps/x86_64/fpu/libm-test-ulps: Relax errors for float and double
11706         again a bit.
11708 2002-12-06  Jakub Jelinek  <jakub@redhat.com>
11710         * posix/Makefile (annexc.out): Add -I../dir for all sorted-dirs.
11711         * posix/annexc.c (fmt, testfmt): Remove -D_LIBC.
11713 2002-12-06  Ulrich Drepper  <drepper@redhat.com>
11715         * misc/syslog.c (log_cleanup): New function.
11716         (openlog): Use log_cleanup instead of __libc_mutex_unlock.
11717         (closelog): Likewise.
11719         * elf/dl-close.c: Use __rtld_lock_* macros instead of __libc_lock_*.
11720         * elf/dl-iteratephdr.c: Likewise.
11721         * elf/dl-lookup.c: Likewise.
11722         * elf/dl-misc.c: Likewise.
11723         * elf/dl-open.c: Likewise.
11724         * elf/dl-support.c: Likewise.
11725         * elf/rtld.c: Likewise.
11726         * sysdeps/generic/ldsodefs.h: Likewise.
11727         * sysdeps/generic/bits/libc-lock.h: Define __rtld_lock_* macros.
11728         * sysdeps/mach/bits/libc-lock.h: Likewise.
11729         * sysdeps/mach/hurd/bits/libc-lock.h: Likewise.
11731 2002-12-06  Roland McGrath  <roland@redhat.com>
11733         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Cope with zero ALIGN.
11735         * malloc/hooks.c [_LIBC && (USE___THREAD || (USE_TLS && !SHARED))]
11736         (malloc_starter, memalign_starter, free_starter): Don't define these.
11737         * malloc/malloc.c [_LIBC && (USE___THREAD || (USE_TLS && !SHARED))]:
11738         Don't declare them either.
11739         * malloc/arena.c (ptmalloc_init) [_LIBC && USE_TLS]: Don't call
11740         __pthread_initialize, so no need to set hooks to *_starter.
11741         (ptmalloc_init_minimal): New function, broken out of ptmalloc_init.
11742         [_LIBC && SHARED && USE_TLS && !USE___THREAD]
11743         (__libc_malloc_pthread_startup): New function.
11744         * malloc/Versions (libc: GLIBC_PRIVATE): New set, add that function.
11746         * malloc/hooks.c (memalign_starter): New function.
11747         * malloc/malloc.c: Declare it.
11748         * malloc/arena.c (save_memalign_hook): New variable.
11749         (ptmalloc_init): Set __memalign_hook to memalign_starter.
11751         * elf/dl-minimal.c (free): Clear the memory.
11752         (calloc): Just call malloc, knowing all memory it returns is cleared.
11754         * sysdeps/generic/dl-tls.c (allocate_dtv): Use calloc instead of
11755         malloc and memset; calloc can avoid the zeroing when redundant.
11756         (_dl_tls_setup): Likewise.
11757         * elf/dl-load.c (decompose_rpath): Likewise.
11758         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Comment out memset
11759         call, since memory from sbrk at startup is already zero.
11761         * elf/rtld.c (_dl_start, dl_main): TLS_INIT_TP macro now returns an
11762         error string for failure, null for success.  Update callers.
11763         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Likewise.
11764         * elf/dl-load.c (_dl_map_object_from_fd): Likewise.
11766 2002-12-05  Jakub Jelinek  <jakub@redhat.com>
11768         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (sendfile): Change
11769         args to i:iipi.
11770         (readahead): Change args to i:iii.
11771         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list (readahead):
11772         Change args to i:iii.
11773         * sysdeps/unix/sysv/linux/mips/syscalls.list (readahead): Change
11774         args to i:iiii.
11776 2002-12-05  Roland McGrath  <roland@redhat.com>
11778         * stdlib/cxa_finalize.c (__cxa_finalize): When given a null argument,
11779         call all functions rather than none.
11780         Reported by Mark P. Mitchell <mark@codesourcery.com>.
11782 2002-12-04  Roland McGrath  <roland@redhat.com>
11784         * locale/localeinfo.h [NL_CURRENT_INDIRECT]: Use attribute_tls_model_ie
11785         on _nl_current_LC_* variables.
11787 2002-12-05  Ulrich Drepper  <drepper@redhat.com>
11789         * dirent/bug-readdir1.c (main): Don't call closedir, just close
11790         the file descriptor.  This is testing what the bug report was about.
11792 2002-12-04  Ulrich Drepper  <drepper@redhat.com>
11794         * po/be.po: New file.
11796         * argp/Makefile (tests): Add tst-argp1.
11798         * sysdeps/unix/sysv/linux/alpha/bits/siginfo.h: (struct sigevent):
11799         Change type of _attribute to void*.
11800         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Likewise.
11801         * sysdeps/unix/sysv/linux/bits/siginfo.h: Likewise.
11802         * sysdeps/unix/sysv/linux/mips/bits/siginfo.h: Likewise.
11803         * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Likewise.
11804         * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Likewise.
11806 2002-12-04  Roland McGrath  <roland@redhat.com>
11808         * sysdeps/generic/ldsodefs.h (struct rtld_global): Move all [USE_TLS]
11809         members to the end, so a libpthread compiled with !USE_TLS will still
11810         find other members properly.
11812         * sysdeps/i386/i486/bits/string.h (__strcpy_g): Add dummy output
11813         operand for DEST memory.  Fix dummy input operand to use SRC.
11814         Reported by Davin McCall <davmac@ozonline.com.au>.
11816         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Account for TCB
11817         alignment when initializing the DTV entry.
11819         * elf/dl-load.c (_dl_map_object_from_fd): If we hit a TLS segment
11820         when TLS has not been set up, try to set it up if we can.
11821         * elf/tst-tls4.c: Revert last change.
11822         * elf/tst-tls5.c: Likewise.
11823         * elf/tst-tls6.c: Likewise.
11824         * elf/tst-tls7.c: Likewise.
11825         * elf/tst-tls8.c: Likewise.
11826         * elf/tst-tls9.c: Likewise.
11828         * sysdeps/generic/dl-tls.c [SHARED] (_dl_tls_setup): New function.
11829         * sysdeps/generic/ldsodefs.h: Declare it.
11830         * elf/Versions (ld: GLIBC_PRIVATE): Add it.
11831         * sysdeps/generic/libc-tls.c (init_slotinfo): New static inline
11832         function, broken out of __libc_setup_tls.
11833         (init_static_tls): Likewise.
11834         (__libc_setup_tls): Call them.
11835         (_dl_tls_setup): New function, uses new subroutines.
11837         * elf/dl-close.c (free_slotinfo): Make argument pointer to pointer.
11838         Clear the pointer when returning true.
11839         (libc_freeres_fn) [SHARED]: If GL(dl_initial_dtv) is null, free the
11840         first element of the slotinfo list too.
11842         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Define only if
11843         [SHARED].
11845         * sysdeps/generic/ldsodefs.h (_dl_next_tls_modid): Declare as hidden.
11846         (_dl_determine_tlsoffset): Likewise.
11848         * elf/rtld.c (_dl_initial_error_catch_tsd): Renamed from
11849         startup_error_tsd, made global.
11850         (dl_main): Update initialization.
11851         * elf/dl-tsd.c: Likewise.
11852         * sysdeps/generic/ldsodefs.h: Declare it.
11854 2002-12-03  Ulrich Drepper  <drepper@redhat.com>
11856         * manual/texinfo.tex: Update from latest upstream version.
11858 2002-12-03  Roland McGrath  <roland@redhat.com>
11860         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Include static TLS
11861         area surplus in calculation for sbrk call.
11863         * iconvdata/cp1125.c: New file.
11864         * iconvdata/Makefile (distribute): Add it.
11865         (modules): Add CP1125.
11866         (gen-8bit-gap-modules): Add cp1125.
11867         * iconvdata/gconv-modules: Add CP1125, alias RUSCII.
11868         * iconvdata/tst-tables.sh: Add CP1125 to the list to test.
11870 2002-12-03  Andreas Jaeger  <aj@suse.de>
11872         * sysdeps/x86_64/fpu/libm-test-ulps: Regenerated.
11874 2002-12-03  Ulrich Drepper  <drepper@redhat.com>
11876         * sysdeps/posix/system.c (do_system): Make signal handler
11877         installation thread safe.
11879 2002-12-02  Roland McGrath  <roland@redhat.com>
11881         * sysdeps/unix/sysv/linux/alpha/syscalls.list (readahead): Change
11882         caller from EXTRA to -.
11883         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
11884         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
11885         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
11887 2002-12-02  Carlos O'Donell  <carlos@baldric.uwo.ca>
11889         * sysdeps/hppa/fpu/fesetround.c (fesetround): Use ~FE_DOWNWARD so both
11890         bits of RM are cleared.
11892 2002-12-02  Roland McGrath  <roland@redhat.com>
11894         * elf/tst-tls4.c: Define an unused TLS variable here, so that no lazy
11895         TLS setup is required.
11896         * elf/tst-tls5.c: Likewise.
11897         * elf/tst-tls6.c: Likewise.
11898         * elf/tst-tls7.c: Likewise.
11899         * elf/tst-tls8.c: Likewise.
11900         * elf/tst-tls9.c: Likewise.
11902         * elf/rtld.c (dl_main): Remove [! SHARED] conditional from
11903         `if (GL(dl_tls_max_dtv_idx) > 0)' tests for doing TLS setup.
11904         * elf/dl-close.c (libc_freeres_fn): Check GL(dl_tls_dtv_slotinfo_list)
11905         for being null before calling free_slotinfo.
11906         * elf/dl-load.c (_dl_map_object_from_fd) [SHARED]: For PT_TLS in
11907         dynamic loading, bail with error if GL(dl_tls_max_dtv_idx) is zero.
11909 2002-11-30  Bruno Haible  <bruno@clisp.org>
11911         * iconv/gconv.h (__gconv_btowc_fct): New typedef.
11912         (struct __gconv_step): New field __btowc_fct.
11913         * wcsmbs/btowc.c (__btowc): Use the __btowc_fct shortcut if possible.
11914         * iconv/gconv_int.h (__BUILTIN_TRANSFORM): Renamed from
11915         __BUILTIN_TRANS.
11916         (__gconv_btwoc_ascii): New declaration.
11917         * iconv/gconv_simple.c (BUILTIN_TRANSFORMATION): Add BtowcFct argument.
11918         (__gconv_btwoc_ascii): New function.
11919         * iconv/gconv_builtin.h: Add BtowcFct argument to all
11920         BUILTIN_TRANSFORMATION invocations.
11921         * iconv/gconv_conf.c (BUILTIN_TRANSFORMATION): Add BtowcFct argument.
11922         * iconv/iconvconfig.c (BUILTIN_TRANSFORMATION): Likewise.
11923         * iconv/gconv_builtin.c (map): New field btowc_fct.
11924         (BUILTIN_TRANSFORMATION): Add BtowcFct argument. Use it to initialize
11925         btowc_fct field.
11926         (__gconv_get_builtin_trans): Initialize __btowc_fct field.
11927         * iconv/gconv_cache.c (find_module): Initialize __btowc_fct field.
11928         * iconv/gconv_db.c (gen_steps, increment_counter): Likewise.
11929         * wcsmbs/wcsmbsload.c (to_wc, to_mb): Likewise.
11930         * iconv/skeleton.c: Document STORE_REST and FROM_ONEBYTE.
11931         (gconv_init): Initialize __btowc_fct field.
11932         Undefine EXTRA_LOOP_ARGS and FROM_ONEBYTE at the end.
11933         * iconv/loop.c: Document ONEBYTE_BODY.
11934         (gconv_btowc, FROM_ONEBYTE): Define if ONEBYTE_BODY is defined.
11935         Undefine ONEBYTE_BODY at the end.
11936         * iconvdata/8bit-generic.c (ONEBYTE_BODY): New macro.
11937         * iconvdata/8bit-gap.c (NONNUL): New macro.
11938         (BODY for FROM_LOOP): Use it.
11939         (ONEBYTE_BODY): New macro.
11940         * iconvdata/isiri-3342.c (HAS_HOLES): Set to 1.
11941         (NONNUL): New macro.
11942         * iconvdata/ansi_x3.110.c (ONEBYTE_BODY): New macro.
11943         * iconvdata/armscii-8.c (ONEBYTE_BODY): New macro.
11944         * iconvdata/cp1255.c (ONEBYTE_BODY): New macro.
11945         * iconvdata/cp1258.c (ONEBYTE_BODY): New macro.
11946         * iconvdata/tcvn5712-1.c (ONEBYTE_BODY): New macro.
11947         * iconvdata/big5.c (ONEBYTE_BODY): New macro.
11948         * iconvdata/big5hkscs.c (ONEBYTE_BODY): New macro.
11949         * iconvdata/euc-cn.c (ONEBYTE_BODY): New macro.
11950         * iconvdata/euc-jp.c (ONEBYTE_BODY): New macro.
11951         * iconvdata/euc-jisx0213.c (ONEBYTE_BODY): New macro.
11952         * iconvdata/euc-kr.c (ONEBYTE_BODY): New macro.
11953         * iconvdata/euc-tw.c (ONEBYTE_BODY): New macro.
11954         * iconvdata/gbk.c (ONEBYTE_BODY): New macro.
11955         * iconvdata/gb18030.c (ONEBYTE_BODY): New macro.
11956         * iconvdata/ibm932.c: Include <stdbool.h>.
11957         (TRUE, FALSE): Remove macros.
11958         (BODY for FROM_LOOP): Remove unused variable rp1.
11959         (ONEBYTE_BODY): New macro.
11960         (BODY for TO_LOOP): Use bool.
11961         * iconvdata/ibm932.h (__ibm932sb_to_ucs4_idx): Remove array.
11962         * iconvdata/ibm943.c: Include <stdbool.h>.
11963         (TRUE, FALSE): Remove macros.
11964         (BODY for FROM_LOOP): Remove unused variable rp1.
11965         (ONEBYTE_BODY): New macro.
11966         (BODY for TO_LOOP): Use bool.
11967         * iconvdata/ibm943.h (__ibm943sb_to_ucs4_idx): Remove array.
11968         * iconvdata/iso8859-1.c (ONEBYTE_BODY): New macro.
11969         * iconvdata/iso_6937-2.c (ONEBYTE_BODY): New macro.
11970         * iconvdata/iso_6937.c (ONEBYTE_BODY): New macro.
11971         * iconvdata/johab.c (ONEBYTE_BODY): New macro.
11972         * iconvdata/sjis.c (ONEBYTE_BODY): New macro.
11973         * iconvdata/shift_jisx0213.c (ONEBYTE_BODY): New macro.
11974         * iconvdata/t.61.c (ONEBYTE_BODY): New macro.
11975         * iconvdata/uhc.c (ONEBYTE_BODY): New macro.
11976         * iconvdata/gbbig5.c: Tweak comment.
11978 2002-12-02  Ulrich Drepper  <drepper@redhat.com>
11980         * po/fi.po: Update from translation team.
11982 2002-12-01  Roland McGrath  <roland@redhat.com>
11984         * sysdeps/unix/sysv/linux/getdents.c (__GETDENTS): Fix condition
11985         testing getdents64 return value.
11987         * scripts/versions.awk: Don't pass -n flag to sort command.
11989         * posix/bug-regex13.c: Include <string.h>.
11991         * sysdeps/generic/libc-start.c (__libc_start_main): Do
11992         DL_SYSDEP_OSCHECK here.
11993         * sysdeps/unix/sysv/linux/init-first.c (init): Not here.
11994         * sysdeps/unix/sysv/linux/dl-osinfo.h: Include <fcntl.h>.
11996         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Bail if
11997         argument TCBSIZE <= TLS_INIT_TCB_SIZE, not just if it's zero.
11999         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Check l_tls_offset
12000         instead of l_type to decide whether to use TLS_DTV_UNALLOCATED.
12002         * include/link.h: Comment typo fix.
12004 2002-12-01  Roland McGrath  <roland@frob.com>
12006         * sysdeps/mach/hurd/bits/posix_opt.h (_POSIX_FSYNC): Set to 200112L.
12007         (_POSIX_SPAWN, _POSIX_MAPPED_FILES, _POSIX_MEMLOCK_RANGE,
12008         _POSIX_MEMORY_PROTECTION): Likewise.
12009         (_POSIX_POLL, _POSIX_SELECT): Removed.
12011 2002-11-28  Ulrich Drepper  <drepper@redhat.com>
12013         * sysdeps/unix/sysv/linux/bits/posix_opt.h: Define macros which
12014         require it to 200112L.  Remove _POSIX_POLL and _POSIX_SELECT.
12016 2002-11-28  Jakub Jelinek  <jakub@redhat.com>
12018         * sysdeps/unix/alpha/sysdep.S: Change defined(USE___THREAD) to
12019         USE___THREAD.
12020         * sysdeps/unix/sysv/linux/alpha/sysdep.h (inline_syscall*): Avoid
12021         "=v" constraints.
12023 2002-11-28  Ulrich Drepper  <drepper@redhat.com>
12025         * sysdeps/unix/sysv/linux/x86_64/vfork.S: Don't trash the CPU's
12026         branch prediction buffers by using unpaired call/ret.
12028 2002-11-27  Ulrich Drepper  <drepper@redhat.com>
12030         * sysdeps/unix/sysv/linux/i386/sysdep.h (ASMFMT_2): Fix typo in
12031         first parameters constraint string.
12032         (ASMFMT_3): Likewise.  Patch by stefan.lauterbach@mincom.de.
12034 2002-11-27  Isamu Hasegawa  <isamu@yamato.ibm.com>
12036         * posix/regcomp.c (parse_expression): Set the bit since the back
12037         reference is used in the regular expression.
12038         * posix/regex_internal.c (re_node_set_init_1): Make it clean in case
12039         of malloc failure.
12040         (re_node_set_init_copy): Likewise.
12041         * posix/regex_internal.h (state_array_t): New structure.
12042         (re_sub_match_last_t): Likewise.
12043         (re_sub_match_top_t): Likewise.
12044         (re_match_context_t): Add new members.
12045         (re_dfa_t): Likewise.
12046         * posix/regexec.c (re_search_internal): Invoke prune_impossible_nodes
12047         to check the matching is really correct, and retry if failed.
12048         Move the routin pruning the impossible nodes from here, ...
12049         (prune_impossible_nodes): To this function.
12050         (check_matching): Invoke check_subexp_matching_top, and replace
12051         redundant checking with transit_state_bkref invocation.
12052         (proceed_next_node): Replace strncmp with memcmp.  Reported by
12053         Paolo Bonzini  <bonzini@gnu.org>.
12054         (update_cur_sifted_state): Remove search_subexp invocation.
12055         (search_subexp): Remove this function.
12056         (check_dst_limits_calc_pos): Use search_cur_bkref_entry for
12057         optimization.
12058         (sift_states_bkref): Use search_cur_bkref_entry for optimization.
12059         Remove unused invocation of match_ctx_add_entry.
12060         (transit_state): Invoke check_subexp_matching_top.
12061         (check_subexp_matching_top): New function.
12062         (transit_state_bkref): Remove unused array.
12063         Merge transit_state_bkref_loop.
12064         (transit_state_bkref_loop): Use get_subexp instead of
12065         sift_states_backward.  Use search_cur_bkref_entry for optimization.
12066         Merge this function to transit_state_bkref.
12067         (get_subexp): New function.
12068         (get_subexp_sub): Likewise.
12069         (find_subexp_node): Likewise.
12070         (check_arrival): Likewise.
12071         (check_arrival_expand_ecl): Likewise.
12072         (check_arrival_expand_ecl_sub): Likewise.
12073         (expand_bkref_cache): Likewise.
12074         (match_ctx_init): Initialize new members.
12075         (match_ctx_clean): New function.
12076         (match_ctx_free): Release new members.
12077         (match_ctx_free_subtops): New function.
12078         (match_ctx_add_entry): Fix indent.
12079         (search_cur_bkref_entry): New function.
12080         (match_ctx_add_subtop): Likewise.
12081         (match_ctx_add_sublast): Likewise.
12083 2002-11-25  Ulrich Drepper  <drepper@redhat.com>
12085         * iconv/Makefile (tests): Remove tst-iconv4.c
12086         * iconv/tst-iconv4.c: Moved to...
12087         * iconvdata/tst-iconv4.c: ...here.  New file.
12088         * iconvdata/Makefile (tests): Add tst-iconv4.  Add dependencies.
12090 2002-11-25  Roland McGrath  <roland@redhat.com>
12092         * inet/test-ifaddrs.c (main: addr_string): Handle null SA.
12093         Grok AF_LINK if defined.
12094         From Momchil Velikov <velco@fadata.bg>.
12096         * sysdeps/gnu/ifaddrs.c (getifaddrs): If ioctl fails for netmask,
12097         brdaddr, or dstaddr, just set those pointers to null and don't fail.
12098         Reported by Momchil Velikov <velco@fadata.bg>.
12100         * sysdeps/generic/ifreq.h (__if_nextreq) [_HAVE_SA_LEN]: If sa_len
12101         is > sizeof IFR->ifa_addr, advance past the whole longer length.
12102         (__ifreq): Count up NIFS that way too.
12103         Reported by Momchil Velikov <velco@fadata.bg>.
12105         * sysdeps/mach/hurd/lchmod.c: Include <fcntl.h>.
12107         * sysdeps/mach/hurd/i386/init-first.c: Include <ldsodefs.h>
12108         and <fpu_control.h>.
12110 2002-11-24  Ulrich Drepper  <drepper@redhat.com>
12112         * elf/elf.h (EM_ST19): Fix typo.
12114 2002-11-25  Jakub Jelinek  <jakub@redhat.com>
12116         * include/errno.h (__set_errno): Define as errno = val
12117         unconditionally.
12119 2002-11-24  Roland McGrath  <roland@redhat.com>
12121         * sysdeps/posix/readv.c: Include <errno.h>, use __set_errno macro.
12122         * sysdeps/posix/writev.c: Likewise.
12123         From Momchil Velikov <velco@fadata.bg>.
12125         * elf/dl-error.c [! _LIBC_REENTRANT]: Use a static variable instead of
12126         calling *GL(dl_error_catch_tsd) for a thread-local location.
12127         * elf/rtld.c (startup_error_tsd): Conditionalize on [_LIBC_REENTRANT].
12128         (dl_main): Same for GL(dl_error_catch_tsd) initialization.
12129         * elf/dl-tsd.c: Conditionalize contents on [_LIBC_REENTRANT].
12131         * libio/iofflush.c: Add libc_hidden_def.
12132         * libio/iofwrite.c: Likewise.
12133         * sysdeps/generic/sigtimedwait.c: Likewise.
12134         * sysdeps/generic/sigwaitinfo.c: Likewise.
12135         * sysdeps/posix/sigwait.c: Likewise.
12136         Reported by Momchil Velikov <velco@fadata.bg>.
12138         * inet/inet_lnaof.c (inet_lnaof): Change return type to in_addr_t
12139         to match <arpa/inet.h> declaration.
12140         * inet/inet_netof.c (inet_netof): Likewise.
12141         * inet/inet_mkadr.c (inet_makeaddr): Likewise for argument types.
12142         Reported by Momchil Velikov <velco@fadata.bg>.
12144         * configure.in: Skip AUTOCONF check under --without-cvs.
12145         * configure: Regenerated.
12147         * posix/Makefile (headers): Add bits/pthreadtypes.h.
12148         * sysdeps/unix/sysv/linux/Makefile (sysdep_heaers): Don't add it here.
12149         * sysdeps/unix/sysv/linux/Dist: Remove it from the list.
12151 2002-11-24  Andreas Schwab  <schwab@suse.de>
12153         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Support inline syscall
12154         with six arguments.
12156 2002-11-19  Jim Meyering  <jim@meyering.net>
12158         * time/mktime.c (__mon_yday, __mktime_internal) [!_LIBC]: Declare
12159         as `static'.
12160         * time/strptime.c (__mon_yday) [!_LIBC]: Declare as `static'.
12162 2002-11-23  Roland McGrath  <roland@redhat.com>
12164         * scripts/abilist.awk: Avoid strtonum function, not there in mawk.
12165         Just produce hex output for datum sizes.
12167         * elf/Makefile ($(objpfx)librtld.mk): Tighten up regexp.
12168         Reported by Luca Barbieri <ldb@ldb.ods.org>.
12170 2002-11-20  Steven Munroe  <sjmunroe@us.ibm.com>
12172         * sysdeps/unix/sysv/linux/powerpc/bits/msq.h (msqid_ds)
12173         [__WORDSIZE == 32]: Only PPC32 requires __unused1, __unused2,
12174         and __unused3 fields.
12175         * sysdeps/unix/sysv/linux/powerpc/bits/sem.h (semid_ds)
12176         [__WORDSIZE == 32]: Only PPC32 requires __unused1
12177         and __unused2 fields.
12178         * sysdeps/unix/sysv/linux/powerpc/bits/shm.h (shmid_ds)
12179         [__WORDSIZE == 32]: Only PPC32 requires __unused1, __unused2,
12180         __unused3, and __unused4 fields.
12182         * csu/gmon-start.c (__gmon_start__): Always use TEXT_START macro to
12183         obtain lowest address for profiling in __monstartup call.
12185 2002-11-21  Roland McGrath  <roland@redhat.com>
12187         * sysdeps/ia64/fpu/Makefile (libm-sysdep_routines): Remove redunant
12188         $(calls) $(calls:=f) $(long-c-$(long-double-fcts)).
12190         * locale/localeinfo.h (struct locale_data): Revert last change.
12192         * sysdeps/unix/sysv/linux/ia64/syscalls.list (s_exit_group): Add it.
12193         From Ian Wienand <ianw@gelato.unsw.edu.au>.
12195         * sysdeps/unix/sysv/linux/ia64/sysdep.h (__NR_pread): Define to
12196         __NR_pread64 if not defined.
12197         (__NR_pwrite): Define to __NR_pwrite64 if not defined.
12198         From Ian Wienand <ianw@gelato.unsw.edu.au>.
12200 2002-11-21  Roland McGrath  <roland@frob.com>
12202         * sysdeps/mach/hurd/i386/init-first.c (posixland_init): Set
12203         __libc_multiple_libcs here.  Call __setfpucw.
12205 2002-11-21  Ulrich Drepper  <drepper@redhat.com>
12207         * elf/Makefile (tests): Don't run test-arrayX tests for now.
12209         * sysdeps/unix/sysv/linux/bits/sched.h: Add new CLONE_* flags.
12210         * sysdeps/unix/sysv/linux/i386/clone.S: Add support for
12211         CLONE_CHILD_*TID flags.
12213 2002-11-20  Andreas Jaeger  <aj@suse.de>
12215         * sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h (SIGCONTEXT):
12216         We pass struct ucontext on x86-64.
12217         (GET_PC): Adjust.
12218         (GET_FRAME): Adjust.
12219         (GET_STACK): Adjust.
12221 2002-11-20  Roland McGrath  <roland@redhat.com>
12223         * sysdeps/powerpc/powerpc32/dl-machine.c [! SHARED]: Further
12224         conditionalize [! DO_VERSIONING] #error.
12226         * scripts/abilist.awk: Grok function descriptor symbols.
12228         * intl/tst-gettext.c (main): Check return values from setlocale.
12229         Add necessary unsetenv's to make LANG=existing-locale check work.
12231         * intl/tst-gettext.sh: Use mkdir -p.  Copy test files unconditionally,
12232         so aborted prior runs don't confuse things.
12234         * locale/localeinfo.h (struct locale_data: union locale_data_value):
12235         Use uintptr_t instead of unsigned int for `word' member.
12236         (_NL_CURRENT_WORD): Cast to uint32_t.
12238         * posix/bug-regex5.c (main): Use union to extract _NL_COLLATE_NRULES
12239         value.
12241 2002-11-20  Ulrich Drepper  <drepper@redhat.com>
12243         * elf/tls-macros.h: Add IA-64 definitions.
12244         Patch by Ian Wienand <ianw@gelato.unsw.edu.au>.
12246         * iconv/Makefile (tests): Add tst-iconv4.
12247         * iconv/tst-iconv4.c: New file.
12249         * iconv/gconv_simple.c (internal_ucs4le_loop_unaligned): Return
12250         __GCONV_EMPTY_INPUT only if input is really empty.  Otherwise
12251         __GCONV_INCOMPLETE_INPUT.
12252         (ucs4le_internal_loop): Likewise.
12253         (ucs4le_internal_loop_unaligned): Likewise.
12254         * iconvdata/unicode.c (PREPARE_LOOP): Likewise.
12255         * iconvdata/utf-16.c (PREPARE_LOOP): Likewise.
12256         * iconvdata/utf-32.c (PREPARE_LOOP): Likewise.
12258         * iconv/loop.c (LOOPFCT): First test for empty input then for full
12259         output buffer.
12261         * inet/getnameinfo.c: Use extend_alloca where appropriate.
12262         * sysdeps/posix/getaddrinfo.c: Likewise.
12264         * include/alloca.h (extend_alloca): New define.  Based on stack
12265         direction it'll try to append to the previouls allocated buffer.
12267 2002-11-07  Thorsten Kukuk  <kukuk@suse.de>
12269         * sysdeps/posix/getaddrinfo.c (gaih_inet): If AF_UNSPEC is set,
12270         use the same service for AF_INET and AF_INET6.
12272 2002-11-19  Ulrich Drepper  <drepper@redhat.com>
12274         * intl/localealias.c (read_alias_file): Use only about 400 bytes
12275         of stack space instead of 16k.
12277 2002-11-18  Wolfram Gloger  <wg@malloc.de>
12279         * malloc/arena.c
12280         (ptmalloc_lock_all, ptmalloc_unlock_all, ptmalloc_unlock_all2): Do
12281         nothing if not initialized.  Bug report from Marcus Brinkmann
12282         <Marcus.Brinkmann@ruhr-uni-bochum.de>.
12284 2002-11-19  Roland McGrath  <roland@redhat.com>
12286         * posix/Versions (libc: GLIBC_2.3.2): Add sched_getaffinity and
12287         sched_setaffinity.
12289         * configure.in (libc_cv_gcc_dwarf2_unwind_info check): Use libraries
12290         `-lgcc -lgcc_eh -lgcc', not just `-lgcc -lgcc_eh' in link commands for
12291         test leading to libc_cv_gcc_dwarf2_unwind_info=no_registry_needed.
12292         * configure: Regenerated.
12294 2002-11-19  Ulrich Drepper  <drepper@redhat.com>
12296         * include/dlfcn.h: __libc_dlopen is now a macro calling
12297         __libc_dlopen_mode with the extra parameter RTLD_LAZY.
12298         (__libc_dlopen_mode): New prototype.
12299         * elf/dl-libc.c (__libc_dlopen_mode): Renamed from __libc_dlopen.  Add
12300         new parameter.  Store new parameter in mode field of structure passed
12301         to do_dlopen.
12302         (struct do_dlopen_args): Add new field mode.
12303         (do_dlopen): Pass mode from parameter structure to _dl_open.
12305 2002-11-11  Randolf Chung  <tausq@debian.org>
12307         * sysdeps/unix/sysv/linux/hppa/bits/fcntl.h [__USE_FILE_OFFSET64]
12308         (F_GETLK, F_SETLK, F_SETLKW): Define to F_*64 versions.
12309         * sysdeps/unix/sysv/linux/hppa/fcntl.c: New file.
12311         * sysdeps/hppa/fpu/libm-test-ulps: New file (generated).
12313         * sysdeps/hppa/Makefile (CFLAGS-rtld.c): New variable.
12314         Set -mdisable-fpregs for this file.
12316 2002-11-11  Carlos O'Donell  <carlos@baldric.uwo.ca>
12318         * sysdeps/unix/sysv/linux/configure.in:
12319         Make 2.4.19 minimum linux kernel for hppa, and add unwind symbols
12320         from gcc-3.0 era for backwards compatibility.
12321         * sysdeps/unix/sysv/linux/configure: Regenerate.
12323         * sysdeps/unix/sysv/linux/hppa/sys/ucontext.h:
12324         Define mcontext_t as a sigcontext.
12326 2002-11-18  Roland McGrath  <roland@redhat.com>
12328         * dlfcn/dlerror.c (fini): New function, __attribute__ ((destructor)).
12329         Free memory in `last_result' if it was used.
12331         * resolv/nss_dns/dns-network.c (getanswer_r): In BYNAME case, search
12332         all aliases for one that matches the "<dotted-quad>.IN-ADDR.ARPA" form.
12333         Do the parsing inline instead of copying strings and calling
12334         inet_network, and properly skip all alias names not matching the form.
12336         * manual/pattern.texi (Variable Substitution): Fix # and ## examples.
12338 2002-11-17  Ulrich Drepper  <drepper@redhat.com>
12340         * manual/pattern.texi (Wordexp Example): Fix sample code.
12342         * sysdeps/unix/sysv/linux/i386/clone.S: Initialize word in the
12343         childs stack which will be loaded into the %esi register.
12345 2002-11-14  Paul Eggert  <eggert@twinsun.com>
12347         * resolv/nss_dns/dns-network.c (getanswer_r): Check for buffer
12348         overflow when skipping the question part and when unpacking aliases.
12350 2002-11-15  Roland McGrath  <roland@redhat.com>
12352         * math/Makefile (libm-calls): Remove s_copysign, s_isinf, s_isnan,
12353         s_finite, s_modf, s_scalbn, s_frexp, m_ldexp, s_signbit.
12354         Instead add $(calls:s_%=m_%) to get m_* versions of them all.
12356 2002-11-15  Jakub Jelinek  <jakub@redhat.com>
12358         * sysdeps/i386/dl-machine.h (elf_machine_rela): Handle R_386_COPY.
12359         * sysdeps/arm/dl-machine.h (elf_machine_rela): Handle R_ARM_COPY.
12361 2002-11-15  Roland McGrath  <roland@redhat.com>
12363         * math/Makefile (libm-calls): Change s_ldexp to m_ldexp.
12364         * Makerules ($(+sysdir_pfx)sysd-rules): Emit pattern rules for m_%.[Sc]
12365         from sysdeps/.../s_%.[Sc] with commands $(+make-include-of-dep).
12366         (+make-include-of-dep): New canned sequence.
12368         * stdlib/canonicalize.c (__realpath): Check for malloc failure.
12369         From Dmitry V. Levin <ldv@altlinux.org>.
12371 2002-11-14  Roland McGrath  <roland@redhat.com>
12373         * sysdeps/generic/errno.c (__libc_errno): Remove alias.
12374         * inet/herrno.c (__libc_h_errno): Likewise.
12375         * resolv/res_libc.c (__libc_res): Likewise.
12376         [USE___THREAD]: Use this in place of [USE_TLS && HAVE___THREAD].
12377         (__res_state) [! USE___THREAD]: Don't define as weak.
12378         * csu/Versions: Revert last change.
12379         * resolv/Versions: Revert last change.
12381         * Makerules ($(common-objpfx)%.make): New pattern rule.
12382         * tls.make.c: New file.
12383         * Makefile (distribute): Add it.
12385         * sysdeps/generic/errno.c [! USE___THREAD]
12386         [HAVE_ELF && SHARED && DO_VERSIONING] (errno, _errno): Declare these
12387         with compat_symbol so they are not link-time visible.
12388         [! USE___THREAD] (__libc_errno): New alias for errno.
12389         * csu/Versions [!(USE_TLS && HAVE___THREAD)] (libc: GLIBC_PRIVATE):
12390         Add __libc_errno here.
12391         * inet/herrno.c [USE___THREAD]: Use this conditional
12392         in place of [USE_TLS && HAVE___THREAD].
12393         [! USE___THREAD] [HAVE_ELF && SHARED && DO_VERSIONING]
12394         (h_errno, _h_errno): Declare these with compat_symbol so they are not
12395         link-time visible.
12396         [! USE___THREAD] (__libc_h_errno): New alias for h_errno.
12397         * resolv/res_libc.c [! USE___THREAD]
12398         [HAVE_ELF && SHARED && DO_VERSIONING] (_res): Likewise.
12399         (_res): Use __attribute__ ((section (".bss"))) so we can have an alias.
12400         (__libc_res): Define as alias for _res.
12401         * resolv/Versions [!(USE_TLS && HAVE___THREAD)] (libc: GLIBC_PRIVATE):
12402         Add __libc_h_errno and __libc_res here.
12404 2002-11-14  Jakub Jelinek  <jakub@redhat.com>
12406         * csu/Versions (errno): Move STT_TLS symbol to GLIBC_PRIVATE for now.
12407         * resolv/Versions (h_errno, _res): Likewise.
12409 2002-11-14  Roland McGrath  <roland@redhat.com>
12411         * Makerules (%.dynsym): Remove $(objpfx) from target and dep.
12412         (%.symlist): Likewise.
12414 2002-11-13  Roland McGrath  <roland@redhat.com>
12416         * scripts/abilist.awk: New file.
12417         * Makefile (distribute): Add it.
12418         * Makerules ($(objpfx)%.dynsym, $(objpfx)%.symlist): New rules.
12419         (tests): Depend on .symlist file for each $(install-lib.so-versioned).
12420         [$(subdir) = elf] (tests): Depend on libc.symlist.
12421         (generated, common-generated): Add those files.
12423         * aclocal.m4 (LIBC_PROG_BINUTILS): Check for objdump, set OBJDUMP.
12424         * configure: Regenerated.
12425         * config.make.in (OBJDUMP): New variable, substituted by configure.
12427         * malloc/mcheck.c (struct hdr): New members `block' and `magic2'.
12428         (mallochook, reallochook): Set them up.
12429         (checkhdr): Check HDR->magic2 value.
12430         (freehook): Reset HDR->magic2.
12431         (memalignhook): New static function.
12432         (old_memalign_hook): New static variable.
12433         (mcheck, reallochook): Set __memalign_hook to memalignhook.
12435         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage): Zero the space
12436         for the new TCB.
12438 2002-11-13  Andreas Jaeger  <aj@suse.de>
12440         * sysdeps/unix/sysv/linux/x86_64/sigaction.c: Check for visibility
12441         attribute.
12442         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
12444 2002-11-11  Paul Eggert  <eggert@twinsun.com>
12446         * manual/crypt.texi (Cryptographic Functions): Mention that
12447         the MD5 one-way algorithm is compatible with BSD's.
12449 2002-11-11  Isamu Hasegawa  <isamu@yamato.ibm.com>
12451         * posix/regex_internal.c (re_string_skip_chars): Also return the last
12452         wide character.
12453         (re_string_reconstruct): Calculate the context by itself when the
12454         offset points out of the valid range.
12455         (re_string_context_at): Use wide character when MB_CUR_MAX > 1.
12456         * posix/regex_internal.h (WIDE_NEWLINE_CHAR): New macro.
12457         (IS_WIDE_WORD_CHAR): New macro.
12458         (IS_WIDE_NEWLINE): New macro.
12460 2002-11-12  Andreas Jaeger  <aj@suse.de>
12462         * sysdeps/x86_64/strchr.S: Don't use one register for two
12463         purposes, this fixes a bug noticed by test-strchr.c.
12465         * sysdeps/x86_64/strcat.S: Fix algorithm to align source pointer
12466         correctly.
12468 2002-11-12  Roland McGrath  <roland@redhat.com>
12470         * libio/libioP.h [_LIBC && !SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_1)]
12471         (_G_IO_NO_BACKWARD_COMPAT): Define it.
12473         * sysdeps/ia64/dl-fptr.c [_LIBC_REENTRANT]: Include <ia64intrin.h>
12474         instead of <pt-machine.h>.
12475         [_LIBC_REENTRANT] (lock, unlock): Use __sync_lock_* macros instead of
12476         testandset.
12477         From Ian Wienand <ianw@gelato.unsw.edu.au>.
12479 2002-11-10  Roland McGrath  <roland@redhat.com>
12481         * libio/bug-wfflush.c (do_test): Call rewind instead of fsetpos.
12482         Call fputs instead of fwprintf (simpler to follow in debugger).
12484         * crypt/md5-crypt.c: Doc fix.
12486         * sysdeps/unix/make-syscalls.sh: Insert $(make-target-directory) at
12487         the beginning of generated target commands.
12489         * csu/Makefile ($(objpfx)crti.o, $(objpfx)crtn.o): Add explicit
12490         dependencies for these in case implicit rule search skipped the
12491         nonexistent source directory.
12492         * sysdeps/gnu/Makefile ($(objpfx)errlist.d): Give this rule all the
12493         files with $(object-suffixes) as targets too.
12494         * Makerules [no_deps && objpfx] (before-compile): Add $(objpfx).
12495         and a target for it using $(make-target-directory).
12497         * Rules (before-compile): Add $(common-objpfx)bits/stdio-lim.h.
12499 2002-11-10  Roland McGrath  <roland@frob.com>
12501         * sysdeps/unix/sysv/linux/bits/pthreadtypes.h: Moved to ...
12502         * sysdeps/generic/bits/pthreadtypes.h: ... here.
12504         * sysdeps/mach/hurd/fcntl.c (__libc_fcntl): Treat a struct flock with
12505         l_start == 0 and l_len == 1 as we do l_len == 0.
12507 2002-11-10  Ulrich Drepper  <drepper@redhat.com>
12509         * po/da.po: Update from translation team.
12511 2002-11-10  Roland McGrath  <roland@redhat.com>
12513         * config.make.in (includedir): New variable, substituted by configure.
12514         Reported missing by Jocelyn Fournier <joc@presence-pc.com>.
12515         * Makeconfig (includedir): Use $(prefix), not $(exec_prefix).
12517 2002-11-10  Andreas Jaeger  <aj@suse.de>
12519         * sysdeps/unix/sysv/linux/x86_64/sys/ucontext.h (enum): Add
12520         REG_OLDMASK and REG_CR2 to synch with kernel header.
12521         (NGREG): Increase.
12523         * nss/getXXent.c (GETFUNC_NAME): Use union type to avoid strict
12524         aliasing problem.
12525         * nss/getXXbyYY_r.c (INTERNAL): Likewise.
12526         * nss/getnssent_r.c (__nss_getent_r): Likewise.
12527         (__nss_setent): Likewise.
12528         (__nss_getent_r): Likewise.
12529         * inet/getnetgrent_r.c (innetgr): Likewise.
12530         (__internal_setnetgrent_reuse): Likewise.
12531         (internal_getnetgrent_r): Likewise.
12532         * inet/ether_hton.c (ether_hostton): Likewise.
12533         * inet/ether_ntoh.c (ether_ntohost): Likewise.
12534         * sunrpc/netname.c (netname2user): Likewise.
12535         * sunrpc/publickey.c (getpublickey): Likewise.
12536         (getsecretkey): Likewise.
12538 2002-11-09  Marcus Brinkmann  <marcus@gnu.org>
12540         * sysdeps/mach/hurd/i386/ioperm.c (ioperm): Correct off by one
12541         error in range calculation.
12543 2002-10-09  Jakub Jelinek  <jakub@redhat.com>
12545         * string/test-strspn.c (do_test): Ensure zero termination.
12546         * string/test-strpbrk.c (do_test): Likewise.
12547         * string/test-strncmp.c (stupid_strncmp): Use strnlen, not strlen.
12548         * string/test-strncpy.c (stupid_strncpy): Likewise.
12549         * string/test-stpncpy.c (stupid_stpncpy): Likewise.
12551 2002-10-08  Roland McGrath  <roland@redhat.com>
12553         * string/test-string.h (test_init): Fill BUF1 and BUF2 with
12554         nonzero characters.
12556 2002-09-22  H.J. Lu  <hjl@gnu.org>
12558         * sysdeps/unix/sysv/linux/mmap64.c (MMAP2_PAGE_SHIFT): Renamed
12559         from PAGE_SHIFT.  Define if not defined.  Check MMAP2_PAGE_SHIFT
12560         only if __NR_mmap2 is defined.
12562         * sysdeps/unix/sysv/linux/powerpc/mmap64.c: Moved to ...
12563         * sysdeps/unix/sysv/linux/mmap64.c: ... here.
12564         * sysdeps/unix/sysv/linux/hppa/mmap64.c: File removed.
12565         * sysdeps/unix/sysv/linux/sparc/sparc32/mmap64.c: FIle removed,
12567 2002-11-08  Jakub Jelinek  <jakub@redhat.com>
12569         * posix/bug-regex13.c (tests): Add new test.
12571         * string/test-strchr.c (stupid_strchr): New function.
12572         (do_random_tests): Make sure the string is zero terminated.
12573         * string/test-strpbrk.c (stupid_strpbrk): New function.
12574         (do_random_tests): Make sure the string is zero terminated.
12575         * string/test-strcmp.c (stupid_strcmp): New function.
12576         (do_random_tests): Make sure the strings are zero terminated.
12577         * string/test-strspn.c (stupid_strspn): New function.
12578         (simple_strspn): Rename rej argument to acc.
12579         (do_random_tests): Make sure the string is zero terminated.
12580         * string/test-strcspn.c (stupid_strcspn): New function.
12581         * string/test-strncpy.c (stupid_strncpy): New function.
12582         * string/test-stpncpy.c (stupid_stpncpy): New function.
12583         * string/test-strncmp.c (stupid_strncmp): New function.
12584         (do_random_tests): Make sure the strings are zero terminated.
12585         * string/test-string.h (impl_t): Change test into long.
12586         (IMPL): Add __attribute__((aligned (sizeof (void *)))).
12588 2002-11-08  Roland McGrath  <roland@redhat.com>
12590         * sysdeps/ia64/elf/configure.in: Add TLS check.
12591         From Ian Wienand <ianw@cse.unsw.edu.au>.
12592         * sysdeps/ia64/elf/configure: Regenerated.
12594 2002-11-07  Roland McGrath  <roland@redhat.com>
12596         * libio/fileops.c (_IO_new_file_overflow): Use INTUSE(_IO_do_write) in
12597         place of _IO_new_do_write.
12598         [_LIBC] (_IO_do_write): Define as macro for _IO_new_do_write and
12599         #undef before versioned_symbol use.
12601 2002-11-07  Richard Henderson  <rth@redhat.com>
12603         * configure.in (ASM_ALPHA_NG_SYMBOL_PREFIX): Remove test.
12604         * configure: Regenerated.
12605         * config.h.in (ASM_ALPHA_NG_SYMBOL_PREFIX): Remove #undef.
12606         * sysdeps/alpha/dl-machine.h (TRAMPOLINE_TEMPLATE): Use !samegp.
12607         (RTLD_START): Likewise.  Access _dl_skip_args, _rtld_local, and
12608         _dl_fini via gp-relative relocations.
12609         * sysdeps/alpha/fpu/e_sqrt.c: Use !samegp.
12611         * elf/tls-macros.h: Add alpha versions.
12612         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Handle TLS relocs.
12613         * sysdeps/unix/alpha/sysdep.S: Support USE___THREAD.
12614         * sysdeps/unix/alpha/sysdep.h: Likewise.  Add SYSCALL_ERROR_HANDLER.
12615         * sysdeps/unix/sysv/linux/alpha/brk.S: Use it.
12616         * sysdeps/unix/sysv/linux/alpha/clone.S: Likewise.
12617         * sysdeps/unix/sysv/linux/alpha/getitimer.S: Likewise.
12618         * sysdeps/unix/sysv/linux/alpha/getrusage.S: Likewise.
12619         * sysdeps/unix/sysv/linux/alpha/gettimeofday.S: Likewise.
12620         * sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S: Likewise.
12621         * sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S: Likewise.
12622         * sysdeps/unix/sysv/linux/alpha/rt_sigaction.S: Likewise.
12623         * sysdeps/unix/sysv/linux/alpha/select.S: Likewise.
12624         * sysdeps/unix/sysv/linux/alpha/setitimer.S: Likewise.
12625         * sysdeps/unix/sysv/linux/alpha/settimeofday.S: Likewise.
12626         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S: Likewise.
12627         * sysdeps/unix/sysv/linux/alpha/syscall.S: Likewise.
12628         * sysdeps/unix/sysv/linux/alpha/utimes.S: Likewise.
12629         * sysdeps/unix/sysv/linux/alpha/wait4.S: Likewise.
12631         * sysdeps/unix/sysv/linux/alpha/sysdep.h: Re-include protect.
12632         Kill argument registers across the inline syscall.
12634         * sysdeps/unix/sysv/linux/alpha/clone.S: Add user_tid and tls args.
12636         * linuxthreads/sysdeps/alpha/tls.h: New file.
12637         * sysdeps/alpha/dl-tls.h: New file.
12639 2002-10-29  David Mosberger  <davidm@hpl.hp.com>
12641         * sysdeps/ia64/elf/initfini.c [HAVE_INITFINI_ARRAY]
12642         (gmon_initializer): New function.
12643         (.init prologue): If HAVE_INITFINI_ARRAY is true, don't call
12644         __gmon_start__ here.  Call it from gmon_initializer() instead.
12646 2002-03-12  H.J. Lu  <hjl@gnu.org>
12648         * elf/Makefile [$(have-initfini-array) = yes] (tests): Add tst-array1,
12649         tst-array2, and tst-array3.
12650         [$(have-initfini-array) = yes] (tests-static): Add tst-array3.
12651         [$(have-initfini-array) = yes] (modules-names): Add tst-array2dep.
12652         ($(objpfx)tst-array1.out): New target.
12653         ($(objpfx)tst-array2): Likewise.
12654         ($(objpfx)tst-array2.out): Likewise.
12655         ($(objpfx)tst-array3.out): Likewise.
12656         * elf/tst-array1.c: New file.
12657         * elf/tst-array1.exp: Likewise.
12658         * elf/tst-array2.c: Likewise.
12659         * elf/tst-array2dep.c: Likewise.
12660         * elf/tst-array2.exp: Likewise.
12661         * elf/tst-array3.c: Likewise.
12663 2002-10-28  David Mosberger  <davidm@hpl.hp.com>
12665         * elf/dl-fini.c (_dl_fini): Invoke fini_array in _reverse_ order.
12666         Don't add L->l_addr to array entry values.
12668 2002-11-07  Jakub Jelinek  <jakub@redhat.com>
12670         * string/test-string.h: New file.
12671         * string/test-strlen.c: New file.
12672         * string/test-string.h: New file.
12673         * string/test-strcmp.c: New file.
12674         * string/test-strchr.c: New file.
12675         * string/test-strrchr.c: New file.
12676         * string/test-strcpy.c: New file.
12677         * string/test-stpcpy.c: New file.
12678         * string/test-strncpy.c: New file.
12679         * string/test-stpncpy.c: New file.
12680         * string/test-strpbrk.c: New file.
12681         * string/test-strcspn.c: New file.
12682         * string/test-strspn.c: New file.
12683         * string/test-strcat.c: New file.
12684         * string/test-strncmp.c: New file.
12685         * string/test-memchr.c: New file.
12686         * string/test-memcmp.c: New file.
12687         * string/test-memset.c: New file.
12688         * string/test-memcpy.c: New file.
12689         * string/test-mempcpy.c: New file.
12690         * string/test-memmove.c: New file.
12691         * string/Makefile (strop-tests): New variable.
12692         (tests): Add strop-tests.
12693         (distribute): Add test-string.h.
12695 2002-11-06  Ulrich Drepper  <drepper@redhat.com>
12697         * posix/regcomp.c: Use tabs instead of spaces.
12698         * posix/regexec.c: Likewise.
12699         * posix/regex_internal.h: Likewise.
12701         * posix/regcomp.c (re_compile_fastmap_iter): Use __wcrtomb not wctomb.
12703 2002-11-06  Jakub Jelinek  <jakub@redhat.com>
12705         * posix/regcomp.c (re_compile_pattern): Don't set regs_allocated
12706         here.
12707         (regcomp): Don't set can_be_null here.
12708         (re_comp): Clear whole re_comp_buf with the exception of fastmap.
12709         (re_compile_internal): Clear can_be_null, set regs_allocated.
12711         * posix/regcomp.c (re_set_fastmap): New function.
12712         (re_compile_fastmap_iter): Use it.  Remove redundant type ==
12713         COMPLEX_BRACKET check.
12714         * posix/regexec.c (re_search_internal): Optimize searching with
12715         fastmap.  Call re_string_reconstruct even if match_first is
12716         smaller than raw_mbs_idx.
12718 2002-11-06  Isamu Hasegawa  <isamu@yamato.ibm.com>
12720         * posix/regcomp (free_dfa_content): Use free_state.
12721         * posix/regex_internal.c (re_string_realloc_buffers): Don't edit
12722         pointers in case that realloc failed.
12723         (re_node_set_merge): Likewise.
12724         (register_state): Likewise.
12725         (create_newstate_common): Invoke memory release functions in case of
12726         error conditions.
12727         (create_ci_newstate): Likewise.
12728         (create_cd_newstate): Likewise.
12729         (free_state): New function.
12730         * posix/regexec.c (re_search_internal): Invoke memory release
12731         functions in case of error conditions.
12732         (sift_states_backward): Likewise.
12733         (merge_state_array): Likewise.
12734         (add_epsilon_src_nodes): Likewise.
12735         (sub_epsilon_src_nodes): Likewise.
12736         (search_subexp): Likewise.
12737         (sift_states_bkref): Likewise.
12738         (transit_state_sb): Likewise.
12739         (transit_state_mb): Likewise.
12740         (transit_state_bkref_loop): Likewise.
12741         (group_nodes_into_DFAstates): Likewise.
12742         (push_fail_stack): Don't edit pointers in case that realloc failed.
12743         (extend_buffers): Likewise.
12744         (match_ctx_add_entry): Likewise.
12746 2002-11-06  Roland McGrath  <roland@redhat.com>
12748         * sysdeps/unix/sysv/linux/mips/configure.in: File removed.
12749         * sysdeps/unix/sysv/linux/mips/configure: Likewise.
12751         * configure.in: Add checks on as and ld for binutils 2.13 or later.
12752         * configure: Regenerated.
12754 2002-11-06  Ulrich Drepper  <drepper@redhat.com>
12756         * posix/regcomp.c (regcomp): __re_compile_fastmap can never fail.
12757         If re_compile_internal failed free fastmap buffer.
12758         (free_dfa_content): Broken out of regfree function.  Frees all dfa
12759         related data.
12760         (regfree): Add free_dfa_content.
12761         (re_compile_internal): If any of the called functions fails free
12762         all dfa related memory.
12764 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
12766         * sysdeps/unix/sysv/linux/sys/sysctl.h: Add ugly hacks to prevent
12767         warnings from the kernel headers.
12769 2002-11-05  Roland McGrath  <roland@redhat.com>
12771         * sysdeps/unix/mips/sysdep.h [! __PIC__] (PSEUDO): Add nop after jump.
12772         From Johannes Stezenbach <js@convergence.de>.
12774         * sysdeps/unix/sysv/linux/mips/Versions (libc: GLIBC_2.0): Change
12775         #errlist-compat magic comment to give 123 as size.
12776         (libc: GLIBC_2.1): Remove this set, moving #errlist-compat magic to ...
12777         (libc: GLIBC_2.2): ... here.
12778         (libc: GLIBC_2.3): Likewise.
12780 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
12782         * elf/dl-fini.c (_dl_fini): Correct the increment of l_opencount
12783         which happens at the beginning so that we can unload modules in
12784         __libc_freeres.
12786 2002-11-06  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
12788         * sysdeps/sh/bits/setjmp.h (JB_SIZE): Define only
12789         under [__USE_MISC || _ASM].
12791         * elf/elf.h: Remove the obsolete SH TLS relocations.
12793 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
12795         * posix/regcomp.c (regcomp): Initialize preg->can_be_null to zero.
12797 2002-11-05  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
12799         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h: Handle
12800         __NR_pread64 and __NR_pwrite64.
12801         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h: Likewise.
12802         * sysdeps/unix/sysv/linux/powerpc/pread.c: Remove __NR_pread64
12803         and __NR_pwrite64.
12804         Revert change to use INLINE_SYSCALL.
12805         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Likewise.
12806         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Likewise.
12807         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Likewise.
12808         * sysdeps/unix/sysv/linux/powerpc/ftruncate64.c: Revert change to use
12809         INLINE_SYSCALL.
12810         * sysdeps/unix/sysv/linux/powerpc/truncate64.c: Likewise.
12812         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (INLINE_SYSCALL):
12813         Update clobber list and add a comment about the syscall ABI.
12815         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list (s_pread64,
12816         s_pwrite64, s_ftruncate, s_truncate): Re-add.
12818 2002-11-05  Jakub Jelinek  <jakub@redhat.com>
12820         * iconv/gconv_dl.c (free_mem): Clear loaded.
12821         * locale/loadarchive.c (_nl_archive_subfreeres): Call locale_data's
12822         cleanup if any.
12824 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
12826         * sysdeps/unix/sysv/linux/fexecve.c: Include <stdio.h>.
12828         * libio/ioseekoff.c: Remove INTDEF.  Define _IO_seekoff_unlocked.  Same
12829         as old code without locking.  _IO_seekoff calls this function after
12830         locking the stream.
12831         * libio/ioseekpos.c: Likewise for _IO_seekpos.
12832         * libio/libioP.h: Replace _IO_seekoff_internal and _IO_seekpos_internal
12833         prototypes with _IO_seekoff_unlocked and _IO_seekpos_unlocked
12834         prototypes.
12835         * libio/iolibio.h (_IO_fseek): Call _IO_seekoff_unlocked instead
12836         of _IO_seekoff_internal.
12837         (_IO_rewind): Likewise.
12838         * libio/ioftell.c: Likewise.
12839         * libio/ftello.c: Likewise.
12840         * libio/ftello64.c: Likewise.
12841         * libio/iofgetpos.c: Likewise.
12842         * libio/iofgetpos64.c: Likewise.
12843         * libio/oldiofgetpos.c: Likewise.
12844         * libio/oldiofgetpos64.c: Likewise.
12845         * libio/iofsetpos.c: Call _IO_seekpos_unlocked instead of
12846         _IO_seekpos_internal.
12847         * libio/iofsetpos64.c: Likewise.
12848         * libio/oldiofsetpos.c: Likewise.
12849         * libio/oldiofsetpos64.c: Likewise.
12851 2002-11-04  Roland McGrath  <roland@redhat.com>
12853         * sysdeps/unix/sysv/linux/powerpc/chown.c: Use INLINE_SYSCALL macro.
12854         * sysdeps/unix/sysv/linux/powerpc/ftruncate64.c: Likewise.
12855         * sysdeps/unix/sysv/linux/powerpc/ioctl.c: Likewise.
12856         * sysdeps/unix/sysv/linux/powerpc/pread.c: Likewise.
12857         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Likewise.
12858         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Likewise.
12859         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Likewise.
12860         * sysdeps/unix/sysv/linux/powerpc/tcgetattr.c: Likewise.
12861         * sysdeps/unix/sysv/linux/powerpc/tcsetattr.c: Likewise.
12862         * sysdeps/unix/sysv/linux/powerpc/truncate64.c: Likewise.
12863         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list (s_ioctl,
12864         s_chown, s_ftruncate64, s_mmap2, s_pread64, s_pwrite64, s_truncate64,
12865         sys_fstat, sys_lstat, sys_mknod, sys_readv, sys_stat, sys_writev):
12866         Remove these, no longer used.
12868 2002-11-04  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
12870         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list (s_ipc,
12871         s_llseek, s_readahead, s_execve, s_fcntl, s_fcntl64, s_fstat64,
12872         s_getcwd, s_getdents, s_getdents64, s_getpmsg, s_getpriority,
12873         s_getrlimit, s_lstat64, s_poll, s_ptrace, s_putpmsg, s_reboot,
12874         s_setrlimit, s_sigaction, s_sigpending, s_sigprocmask, s_sigsuspend,
12875         s_stat64, s_sysctl, s_ugetrlimit, s_ustat, s_vfork): Remove now unused
12876         syscall stubs.
12878         * sysdeps/unix/sysv/linux/pwrite.c: Fix typo.
12879         * sysdeps/unix/sysv/linux/pwrite64.c: Likewise.
12880         * sysdeps/unix/sysv/linux/powerpc/pread.c: Handle both __NR_pread64
12881         and __NR_pread.
12882         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Likewise.
12883         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Handle both __NR_pwrite64
12884         and __NR_pwrite.
12885         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Likewise.
12887 2002-11-03  Roland McGrath  <roland@redhat.com>
12889         * sysdeps/generic/ldsodefs.h (struct rtld_global): New member
12890         `_dl_tls_static_used'.
12891         * sysdeps/generic/libc-tls.c (_dl_tls_static_used): New variable.
12892         (__libc_setup_tls): Initialize it.  Let the initial value of
12893         _dl_tls_static_size indicate some surplus space in the computed value.
12894         * elf/dl-open.c (_dl_tls_static_size): New variable.
12895         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Initialize
12896         _dl_tls_static_used.  Add some surplus space into _dl_tls_static_size.
12897         * elf/dl-reloc.c [USE_TLS] (allocate_static_tls): New function.
12898         (CHECK_STATIC_TLS): Use it.
12899         * elf/dl-close.c (_dl_close): Adjust _dl_tls_static_used when the
12900         closed objects occupied a trailing contiguous chunk of static TLS area.
12902 2002-10-18  Bruno Haible  <bruno@clisp.org>
12904         * charmaps/ISO_5428: Use Greek characters introduced in Unicode 3.0.
12906 2002-11-04  Ulrich Drepper  <drepper@redhat.com>
12908         * libio/wfileops.c (_IO_wfile_seekoff): Don't modify _offset and
12909         _wide_data->_IO_read_end if adjustment can be made in the current
12910         buffer.
12912         * sysdeps/unix/sysv/linux/fexecve.c: New file.
12914         * libio/bug-wfflush.c (do_test): Using fseek is not allowed when
12915         wide oriented streams are used.
12917         * nss/getXXent_r.c (ENDFUNC_NAME): Don't do anything if the
12918         service hasn't been used [PR libc/4744].
12920         * include/features.h: Use __STDC_VERSION__ not __STDC_VERSION.
12921         Reported by Miloslav Trmac <mitr@volny.cz> [PR libc/4766].
12923         * manual/examples/dir.c: Don't include <stddef.h>.
12924         * manual/examples/select.c: Include <errno.h> for TEMP_FAILURE_RETRY.
12925         Reported by Frédéric Delanoy <delanoy_f@yahoo.com>.
12927 2002-11-02  H.J. Lu  <hjl@gnu.org>
12929         * stdio-common/reg-printf.c: Include <stddef.h>.
12931 2002-11-03  Ulrich Drepper  <drepper@redhat.com>
12933         * sysdeps/generic/libc-tls.c: Define _dl_tls_static_used.
12935         * po/ca.po: Update from translation team.
12936         * po/es.po: Likewise.
12938         * sysdeps/generic/segfault.c (catch_segfault): If HAVE_PROC_SELF
12939         is defined write out memory map.
12940         * sysdeps/unix/sysv/linux/segfault.c: New file.
12942 2002-11-02  Roland McGrath  <roland@redhat.com>
12944         * sysdeps/unix/sysv/linux/getdents.c (__GETDENTS): Use union type for
12945         pointers that can alias.
12946         Reported by Daniel Jacobowitz <drow@mvista.com>.
12948         * sysdeps/unix/bsd/bsd4.4/freebsd/bits/typesizes.h: New file.
12950 2002-11-02  Roland McGrath  <roland@redhat.com>
12952         * manual/filesys.texi (Reading/Closing Directory): Rewrite readdir_r
12953         description to be clearer and to say that *RESULT is set to ENTRY.
12955 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
12957         * posix/regexec.c (build_trtable): Alloca or malloc dests_node and
12958         dests_ch arrays together.  Alloca or malloc dest_states,
12959         dest_states_word and dest_states_nl arrays together.  Free memory on
12960         error exit.
12962 2002-10-29  Daniel Jacobowitz  <drow@mvista.com>
12964         * crypt/crypt_util.c (__init_des_r): Initialize current_salt
12965         and current_saltbits.
12967 2002-11-02  Roland McGrath  <roland@redhat.com>
12969         * stdio-common/reg-printf.c: Include <stdlib.h>.
12971 2002-11-02  H.J. Lu  <hjl@gnu.org>
12973         * sysdeps/unix/sysv/linux/mips/syscalls.list (s_execve): Set
12974         caller to EXTRA instead of execve.
12976 2002-11-01  Roland McGrath  <roland@redhat.com>
12978         * sysdeps/generic/errno-loc.c [! USE___THREAD]: Use this conditional
12979         in place of [!(USE_TLS && HAVE___THREAD)].
12980         (__errno_location) [! USE___THREAD]: Define as strong, not weak.
12982 2002-10-31  Roger Sayle  <roger@eyesopen.com>
12984         * sysdeps/i386/soft-fp/sfp-machine.h (_FP_NANFRAC_Q, _FP_NANSIGN_Q):
12985         New macros.
12986         * sysdeps/x86_64/soft-fp/sfp-machine.h: Likewise.
12988         * soft-fp/soft-fp.h: Allow sfp-machine.h to define FP_RND_NEAREST
12989         without defining FP_ROUNDMODE.
12991 2002-10-29  Jakub Jelinek  <jakub@redhat.com>
12993         * sysdeps/gnu/siglist.c (PTR_SIZE_STR): Remove.
12994         (__old_sys_siglist, __old_sys_sigabbrev): Use strong_alias and
12995         declare_symbol.
12996         * sysdeps/mach/hurd/siglist.h (OLD_SIGLIST_SIZE_STR): Remove.
12997         (OLD_SIGLIST_SIZE): Define.
12998         * sysdeps/unix/sysv/linux/siglist.h (OLD_SIGLIST_SIZE_STR): Remove.
12999         (OLD_SIGLIST_SIZE): Define.
13000         * sysdeps/unix/sysv/linux/arm/siglist.c: Remove.
13002 2002-11-01  Jakub Jelinek  <jakub@redhat.com>
13004         * sysdeps/ia64/strncpy.S: Fix recovery code.
13006 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
13008         * include/libc-symbols.h (__libc_freeres_fn_section, libc_freeres_fn):
13009         New macros.
13010         * elf/dl-close.c (free_mem): Use libc_freeres_fn macro, remove
13011         text_set_element.
13012         * elf/dl-libc.c (free_mem): Likewise.
13013         * iconv/gconv_conf.c (free_mem): Likewise.
13014         * iconv/gconv_db.c (free_mem): Likewise.
13015         * iconv/gconv_dl.c (free_mem): Likewise.
13016         * iconv/gconv_cache.c (free_mem): Likewise.
13017         * intl/finddomain.c (free_mem): Likewise.
13018         * intl/dcigettext.c (free_mem): Likewise.
13019         * locale/setlocale.c (free_mem): Likewise.
13020         * misc/fstab.c (fstab_free): Likewise.
13021         * nss/nsswitch.c (free_mem): Likewise.
13022         * posix/regcomp.c (free_mem): Likewise.
13023         * resolv/gai_misc.c (free_res): Likewise.
13024         * stdlib/fmtmsg.c (free_mem): Likewise.
13025         * sunrpc/clnt_perr.c (free_mem): Likewise.
13026         * sysdeps/generic/setenv.c (free_mem): Likewise.
13027         * sysdeps/unix/sysv/linux/shm_open.c (freeit): Likewise.
13028         * sysdeps/pthread/aio_misc.c (free_res): Likewise.
13029         * time/tzset.c (free_mem): Likewise.
13030         * malloc/mtrace.c (release_libc_mem): Add __libc_freeres_fn_section.
13031         * locale/loadarchive.c (_nl_archive_subfreeres): Likewise.
13032         * malloc/set-freeres.c (__libc_freeres): Likewise.
13034         * login/getutent.c: Include stdlib.h instead of stddef.h.
13035         (buffer): Change into pointer to utmp, add libc_freeres_ptr.
13036         (__getutent): Allocate buffer the first time it is run.
13037         * login/getutid.c: Include stdlib.h instead of stddef.h.
13038         (buffer): Change into pointer to utmp, add libc_freeres_ptr.
13039         (__getutid): Allocate buffer the first time it is run.
13040         * login/getutline.c: Include stdlib.h instead of stddef.h.
13041         (buffer): Change into pointer to utmp, add libc_freeres_ptr.
13042         (__getutline): Allocate buffer the first time it is run.
13043         * malloc/mtrace.c (malloc_trace_buffer): Change into char *.
13044         (mtrace): Allocate malloc_trace_buffer.
13045         * resolv/nsap_addr.c (inet_nsap_ntoa): Decrease size of tmpbuf.
13046         * resolv/ns_print.c (ns_sprintrrf): Decrease size of t.
13047         * string/strerror.c: Include libintl.h and errno.h.
13048         (buf): New variable.
13049         (strerror): Only allocate buffer if actually needed (unknown error).
13050         * time/tzfile.c (transitions): Add libc_freeres_ptr.
13051         (freeres): Remove.
13053 2002-10-25  Jakub Jelinek  <jakub@redhat.com>
13055         * include/libc-symbols.h (libc_freeres_ptr): New macro.
13056         * malloc/set-freeres.c (__libc_freeres_ptrs): Define using
13057         symbol_set_define.
13058         (__libc_freeres): Free all pointers in that section.
13059         * Makerules (build-shlib): Add $(LDSEDCMD-$(@F:lib%.so=%).so) to sed
13060         commands when creating .lds script.
13061         (LDSEDCMD-c.so): New variable.
13062         * inet/rcmd.c (ahostbuf): Change into char *.  Add libc_freeres_ptr.
13063         (rcmd_af): Use strdup to allocate ahostbuf.
13064         * inet/rexec.c (ahostbuf): Change into char *.  Add libc_freeres_ptr.
13065         (rexec_af): Use strdup to allocate ahostbuf.
13066         * stdio-common/reg-printf.c (printf_funcs): Remove.
13067         (__printf_arginfo_table): Change into printf_arginfo_function **.
13068         Add libc_freeres_ptr.
13069         (__register_printf_function): Allocate __printf_arginfo_table
13070         and __printf_function_table the first time it is called.
13071         * stdio-common/printf-parse.h (__printf_arginfo_table): Change into
13072         printf_arginfo_function **.
13073         (parse_one_spec): Add __builtin_expect.
13074         * grp/fgetgrent.c (buffer): Add libc_freeres_ptr.
13075         (free_mem): Remove.
13076         * inet/getnetgrent.c (buffer): Add libc_freeres_ptr.
13077         (free_mem): Remove.
13078         * intl/localealias.c (libc_freeres_ptr): Define if !_LIBC.
13079         (string_space, map): Add libc_freeres_ptr.
13080         (free_mem): Remove.
13081         * misc/efgcvt.c (FCVT_BUFPTR): Add libc_freeres_ptr.
13082         (free_mem): Remove.
13083         * misc/mntent.c (getmntent_buffer): Add libc_freeres_ptr.
13084         (free_mem): Remove.
13085         * crypt/md5-crypt.c (libc_freeres_ptr): Define if !_LIBC.
13086         (buffer): Add libc_freeres_ptr.
13087         (free_mem): Remove for _LIBC.
13088         * nss/getXXbyYY.c (buffer): Add libc_freeres_ptr.
13089         (free_mem): Remove.
13090         * nss/getXXent.c (buffer): Add libc_freeres_ptr.
13091         (free_mem): Remove.
13092         * pwd/fgetpwent.c (buffer): Add libc_freeres_ptr.
13093         (free_mem): Remove.
13094         * resolv/res_hconf.c (ifaddrs): Add libc_freeres_ptr.
13095         (free_mem): Remove.
13096         * shadow/fgetspent.c (buffer): Add libc_freeres_ptr.
13097         (free_mem): Remove.
13098         * sysdeps/posix/ttyname.c (getttyname_name): Add libc_freeres_ptr.
13099         (free_mem): Remove.
13100         * sysdeps/unix/sysv/linux/getsysstats.c (mount_proc): Add
13101         libc_freeres_ptr.
13102         (free_mem): Remove.
13103         * sysdeps/unix/sysv/linux/ttyname.c (getttyname_name, ttyname_buf): Add
13104         libc_freeres_ptr.
13105         (free_mem): Remove.
13107 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
13109         * malloc/obstack.c [_LIBC] (obstack_free): Change into strong_alias
13110         instead of duplicating the whole function in libc.
13112 2002-10-31  Roland McGrath  <roland@redhat.com>
13114         * sysdeps/i386/bits/byteswap.h [__GNUC__ < 2] (__bswap_32):
13115         Renamed from __bswap_16 (typo fix).  Reported by <dens@stl.sarov.ru>.
13117 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
13119         * sysdeps/unix/sysv/linux/Makefile (syscall-%.h): Add -D for each
13120         32bit-predefine when creating .new32 list and -U for each
13121         32bit-predefine when creating .new64 list.
13122         * sysdeps/unix/sysv/linux/x86_64/Makefile (32bit-predefine): New.
13124 2002-10-29  Andreas Schwab  <schwab@suse.de>
13126         * sysdeps/generic/allocrtsig.c: Include <testrtsig.h>, not
13127         "testrtsig.h".  Reported by Daniel Jacobowitz <dan@debian.org>.
13129 2002-10-25  Roland McGrath  <roland@redhat.com>
13131         * sysdeps/unix/sysv/linux/configure.in: Fix typo in last change.
13132         * sysdeps/unix/sysv/linux/configure: Regenerated.
13134         * sysdeps/generic/ldsodefs.h: Remove [! SHARED] conditional from
13135         _dl_starting_up decl.
13137 2002-10-20  H.J. Lu  <hjl@gnu.org>
13139         * sysdeps/unix/sysv/linux/configure.in: Don't check
13140         /lib/modules/`uname -r`/build/include for kernel headers if
13141         cross compiling.
13142         * sysdeps/unix/sysv/linux/configure: Regenerated.
13144 2002-10-25  Roland McGrath  <roland@redhat.com>
13146         * math/math.h (M_LOG2El): Correct the value.
13147         From Stephen L Moshier <steve@moshier.net>.
13149         * sysdeps/unix/sysv/linux/init-first.c (init): Remove [! SHARED]
13150         conditional from __libc_multiple_libcs access.  Remove kludge for weak
13151         symbol access with old compilers we no longer support.
13152         * sysdeps/unix/sysv/aix/init-first.c (init): Likewise.
13153         * sysdeps/generic/libc-start.c (__libc_start_main): Likewise.
13155 2002-10-25  Roland McGrath  <roland@redhat.com>
13157         * sysdeps/posix/sigvec.c [SA_RESETHAND]: Disable wrapper hacks and
13158         implement SV_RESETHAND by translating it to SA_RESETHAND.
13160 2002-10-23  Alexandre Oliva  <aoliva@redhat.com>
13162         * elf/dl-reloc.c (_dl_reloc_bad_use): Print the full 32-bit relocation
13163         type on ELF64 platforms.
13165 2002-10-24  Ulrich Drepper  <drepper@redhat.com>
13167         * elf/elf.h (R_X86_64_GOTTPOFF): Renamed from r_x86_64_GOTTPOFF.
13169         * elf/elf.h: Define ELF_NOTE_OS_FREEBSD and NT_TASKSTRUCT.
13171 2002-10-24  Jakub Jelinek  <jakub@redhat.com>
13173         * elf/dl-misc.c: Include <sysdep.h>.
13174         (_dl_debug_vdprintf): Only take dl_load_lock if not _dl_starting_up.
13176         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (INTERNAL_SYSCALL,
13177         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
13178         (INLINE_SYSCALL): Use that.
13179         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (INTERNAL_SYSCALL,
13180         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
13181         (INLINE_SYSCALL): Use that.
13182         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (INTERNAL_SYSCALL,
13183         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
13184         (INLINE_SYSCALL): Use that.
13185         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Include
13186         dl-sysdep.h.
13187         (SYSCALL_ERROR_HANDLER): Define RTLD_PRIVATE_ERRNO variant.
13188         (__INTERNAL_SYSCALL_STRING): Define.
13189         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h: Include
13190         dl-sysdep.h.
13191         (SYSCALL_ERROR_HANDLER): Define RTLD_PRIVATE_ERRNO variant.
13192         (__INTERNAL_SYSCALL_STRING): Define.
13193         * sysdeps/unix/sysv/linux/sparc/sysdep.h (INLINE_SYSCALL): Pass
13194         __SYSCALL_STRING to inline_syscall*.
13195         (INTERNAL_SYSCALL, INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO):
13196         New macros.
13197         (inline_syscall0, inline_syscall1, inline_syscall2, inline_syscall3,
13198         inline_syscall4, inline_syscall5, inline_syscall6): Add string
13199         argument.
13201 2002-10-24  Roland McGrath  <roland@redhat.com>
13203         * sysdeps/generic/ldsodefs.h (_dl_starting_up): Declare it here.
13204         * sysdeps/unix/sysv/linux/init-first.c: Not here.
13205         * sysdeps/powerpc/elf/libc-start.c: Or here.
13206         * sysdeps/unix/sysv/aix/libc-start.c: Or here.
13207         * sysdeps/unix/sysv/aix/start-libc.c: Or here.
13208         * sysdeps/unix/sysv/aix/init-first.c: Or here.
13209         * sysdeps/generic/libc-start.c: Or here.
13210         * sysdeps/unix/sysv/linux/init-first.c (init): Protect _dl_starting_up
13211         access with [! SHARED].
13212         * sysdeps/unix/sysv/aix/init-first.c (init): Likewise.
13214         * libio/bug-wfflush.c: New file.
13215         * libio/Makefile (tests): Add bug-wfflush.
13217 2002-10-23  Roland McGrath  <roland@redhat.com>
13219         * stdio-common/tst-fphex.c: New file.
13220         * stdio-common/Makefile (tests): Add tst-fphex.
13221         * sysdeps/generic/printf_fphex.c (__printf_fphex): Fix initialization
13222         of WNUMEND.  Fix counting of decimal point in WIDTH.  Print '0' pad
13223         chars always before the value digits.
13224         Reported by James Antill <james.antill@redhat.com>.
13226 2002-10-24  Jakub Jelinek  <jakub@redhat.com>
13228         * posix/regcomp.c (re_comp): Call __regfree on re_comp_buf.
13229         (free_mem): New function.
13230         * posix/Makefile (tests): Add bug-regex14.  Add bug-regex14-mem
13231         if not cross compiling.
13232         (generated): Add bug-regex14-mem and bug-regex14.mtrace.
13233         (bug-regex14-ENV): Set.
13234         (bug-regex14-mem): New target.
13235         * posix/bug-regex14.c: New file.
13237 2002-10-23  Roland McGrath  <roland@redhat.com>
13239         * elf/Makefile ($(objpfx)librtld.map): Use temporary file for output
13240         target, so we don't touch it when the link fails.
13242         * libio/ftello.c (ftello): Use _IO_off64_t for type of POS.
13243         Check for the result overflowing off_t and fail with EOVERFLOW.
13244         * libio/ioftell.c (_IO_ftell): Likewise.
13245         * libio/iofgetpos.c (_IO_new_fgetpos): Likewise.
13247         * login/logwtmp.c (logwtmp): If sizeof ut_tv != sizeof struct timeval,
13248         use a temporary timeval on the stack for gettimeofday and copy it.
13249         * login/logout.c (logout): Likewise.
13250         Reported by Steven Munroe <sjmunroe@us.ibm.com>.
13252         * sysdeps/unix/sysv/linux/bits/statfs.h (struct statfs):
13253         Use __SWORD_TYPE instead of int for member types.
13254         (struct statfs64): Likewise.
13255         * sysdeps/unix/sysv/linux/alpha/bits/statfs.h: New file.
13256         * sysdeps/unix/sysv/linux/s390/bits/statfs.h: New file.
13257         * sysdeps/unix/sysv/linux/ia64/bits/statfs.h: File removed.
13258         * sysdeps/unix/sysv/linux/sparc/bits/statfs.h: File removed.
13259         * sysdeps/unix/sysv/linux/x86_64/bits/statfs.h: File removed.
13261         * sysdeps/unix/sysv/linux/sparc/bits/statvfs.h: Moved to ...
13262         * sysdeps/unix/sysv/linux/bits/statvfs.h: ... here.
13263         (ST_NODIRATIME): Restore fixed value of 2048.
13264         * sysdeps/unix/sysv/linux/alpha/bits/statvfs.h: File removed.
13265         * sysdeps/unix/sysv/linux/ia64/bits/statvfs.h: File removed.
13267         Rearranged <bits/types.h> definitions to reduce duplication.
13268         * sysdeps/generic/bits/types.h: Rewritten, using macros from
13269         <bits/wordsize.h> and new header <bits/typesizes.h>.
13270         * posix/Makefile (headers): Add bits/typesizes.h here.
13271         * sysdeps/generic/bits/typesizes.h: New file.
13272         * sysdeps/unix/sysv/linux/alpha/bits/typesizes.h: New file.
13273         * sysdeps/unix/sysv/linux/sparc/bits/typesizes.h: New file.
13274         * sysdeps/mach/hurd/bits/typesizes.h: New file.
13275         * sysdeps/unix/sysv/linux/alpha/bits/types.h: File removed.
13276         * sysdeps/unix/sysv/linux/bits/types.h: File removed.
13277         * sysdeps/unix/sysv/linux/ia64/bits/types.h: File removed.
13278         * sysdeps/unix/sysv/linux/mips/bits/types.h: File removed.
13279         * sysdeps/unix/sysv/linux/s390/bits/types.h: File removed.
13280         * sysdeps/unix/sysv/linux/sparc/bits/types.h: File removed.
13281         * sysdeps/unix/sysv/linux/x86_64/bits/types.h: File removed.
13282         * posix/sys/types.h [__USE_POSIX199506 || __USE_UNIX98]: Include
13283         <bits/pthreadtypes.h> here, not in <bits/types.h>.
13284         * signal/signal.h: Likewise.
13286         * streams/stropts.h: Include <bits/xtitypes.h>.
13287         * streams/Makefile (headers): Add bits/xtitypes.h here.
13288         * sysdeps/generic/bits/xtitypes.h: New file.
13289         * sysdeps/s390/bits/xtitypes.h: New file.
13290         * sysdeps/ia64/bits/xtitypes.h: New file.
13291         * sysdeps/x86_64/bits/xtitypes.h: New file.
13293         * sysvipc/Makefile (headers): Add bits/ipctypes.h here.
13294         * sysdeps/generic/bits/ipctypes.h: New file.
13295         * sysdeps/mips/bits/ipctypes.h: New file.
13296         * sysdeps/gnu/bits/shm.h: Include <bits/ipctypes.h>.
13297         * sysdeps/gnu/bits/msq.h: Likewise.
13298         * sysvipc/sys/ipc.h: Likewise.
13300 2002-10-22  Ulrich Drepper  <drepper@redhat.com>
13302         * elf/dl-load.c (struct filebuf): For buf element to have the
13303         alignment of ElfXX_Ehdr since this is what will be stored in it.
13305 2002-10-22  Jakub Jelinek  <jakub@redhat.com>
13307         * locale/programs/locarchive.c (add_alias): Change locrec_offset arg
13308         into pointer to locrec_offset.
13309         (add_locale_to_archive): Adjust callers.  Free normalized_name right
13310         before returning, not immediately after add_locale, pass it to
13311         add_alias if not NULL instead of name.  Rename second normalized_name
13312         occurence to nnormalized_codeset_name.
13314         * locale/programs/locarchive.c (enlarge_archive): Make sure
13315         string_size is always a multiple of 4.
13316         Reported by Andreas Schwab <schwab@suse.de>.
13318 2002-10-21  Andreas Schwab  <schwab@suse.de>
13320         * sysdeps/unix/sysv/linux/ia64/syscalls.list (s_execve): Set
13321         caller to EXTRA instead of execve, since the latter has a
13322         higher-priority implementation in linuxthreads.
13324 2002-10-21  Roland McGrath  <roland@redhat.com>
13326         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Initialize the static
13327         slotinfo list's len member to the proper size, not just 1.
13328         Initialize static_map.l_tls_initimage.
13330         * elf/dl-open.c (dl_open_worker): Fix loop searching for
13331         dtv_slotinfo_list element containing new modules' l_tls_modid.
13333         * elf/tst-tls9.c, elf/tst-tls9-static.c: New files.
13334         * elf/tst-tlsmod5.c, elf/tst-tlsmod6.c: New files.
13335         * elf/Makefile (tests): Add tst-tls9.
13336         (tests-static): Add tst-tls9-static.
13337         (tst-tls9-static-ENV): New variable.
13338         ($(objpfx)tst-tls9-static, $(objpfx)tst-tls9-static.out): New targets.
13340         * elf/dl-close.c (remove_slotinfo): Remove an assert; the number of
13341         modids used by partially loaded modules being closed can't be known.
13343 2002-10-21  Isamu Hasegawa  <isamu@yamato.ibm.com>
13345         * posix/Makefile: Add a test case for the bug reported by Aharon
13346         Robbins <arnold@skeeve.com>.
13347         * posix/bug-regex13.c: New file.
13348         * posix/regcomp.c (peek_token_bracket): Skip the byte already read.
13350 2002-10-21  Ulrich Drepper  <drepper@redhat.com>
13352         * csu/gmon-start.c: Pretty printing.
13354 2002-10-19  Art Haas  <ahaas@neosoft.com>
13356         * configure.in: Replace AC_CONFIG_HEADER with AC_CONFIG_HEADERS,
13357         add AC_HELP_STRING to all AC_ARG_WITH and AC_ARG_ENABLE macros,
13358         add autoconf quotes to the AC_CONFIG_AUX_DIR macro.
13359         * configure: Regenerated.
13361 2002-10-19  Roland McGrath  <roland@redhat.com>
13363         * configure.in: Call AC_CONFIG_SUBDIRS with empty argument
13364         and then set $subdirs directly, because the new Autoconf breaks
13365         compatibility in every way imaginable and insists on whining
13366         about usage that worked since the dawn of time.
13367         * configure: Regenerated.
13369         * configure: Regenerated (using Autoconf 2.54).
13370         * sysdeps/alpha/elf/configure: Likewise.
13371         * sysdeps/generic/configure: Likewise.
13372         * sysdeps/i386/elf/configure: Likewise.
13373         * sysdeps/ia64/elf/configure: Likewise.
13374         * sysdeps/mach/hurd/configure: Likewise.
13375         * sysdeps/mach/configure: Likewise.
13376         * sysdeps/unix/configure: Likewise.
13377         * sysdeps/unix/common/configure: Likewise.
13378         * sysdeps/unix/sysv/aix/configure: Likewise.
13379         * sysdeps/unix/sysv/linux/configure: Likewise.
13380         * sysdeps/unix/sysv/linux/mips/configure: Likewise.
13381         * sysdeps/x86_64/elf/configure: Likewise.
13383         * config.make.in: Nix completely-soft nonsense.
13384         * configure.in: Likewise.  Under --without-fp, use nofpu subdirectory
13385         of machine directories instead of fpu subdirectory.
13386         * sysdeps/powerpc/soft-fp/Makefile: Remove cruft added in last change.
13387         * sysdeps/powerpc/nofpu/Makefile: Put it in this new file instead.
13388         * sysdeps/powerpc/soft-fp/sim-full.c: Moved to ...
13389         * sysdeps/powerpc/nofpu/sim-full.c: ... here.
13390         * sysdeps/powerpc/soft-fp/fraiseexcpt.c: Moved to ...
13391         * sysdeps/powerpc/nofpu/fraiseexcpt.c: ... here.
13392         * sysdeps/powerpc/soft-fp/fegetexcept.c: Moved to ...
13393         * sysdeps/powerpc/nofpu/fegetexcept.c: ... here.
13394         * sysdeps/powerpc/soft-fp/fclrexcpt.c: Moved to ...
13395         * sysdeps/powerpc/nofpu/fclrexcpt.c: ... here.
13396         * sysdeps/powerpc/soft-fp/ftestexcept.c: Moved to ...
13397         * sysdeps/powerpc/nofpu/ftestexcept.c: ... here.
13398         * sysdeps/powerpc/soft-fp/fgetexcptflg.c: Moved to ...
13399         * sysdeps/powerpc/nofpu/fgetexcptflg.c: ... here.
13400         * sysdeps/powerpc/soft-fp/fsetexcptflg.c: Moved to ...
13401         * sysdeps/powerpc/nofpu/fsetexcptflg.c: ... here.
13402         * sysdeps/powerpc/soft-fp/fedisblxcpt.c: Moved to ...
13403         * sysdeps/powerpc/nofpu/fedisblxcpt.c: ... here.
13404         * sysdeps/powerpc/soft-fp/feenablxcpt.c: Moved to ...
13405         * sysdeps/powerpc/nofpu/feenablxcpt.c: ... here.
13406         * sysdeps/powerpc/soft-fp/fegetenv.c: Moved to ...
13407         * sysdeps/powerpc/nofpu/fegetenv.c: ... here.
13408         * sysdeps/powerpc/soft-fp/fesetenv.c: Moved to ...
13409         * sysdeps/powerpc/nofpu/fesetenv.c: ... here.
13410         * sysdeps/powerpc/soft-fp/fegetround.c: Moved to ...
13411         * sysdeps/powerpc/nofpu/fegetround.c: ... here.
13412         * sysdeps/powerpc/soft-fp/fesetround.c: Moved to ...
13413         * sysdeps/powerpc/nofpu/fesetround.c: ... here.
13414         * sysdeps/powerpc/soft-fp/feupdateenv.c: Moved to ...
13415         * sysdeps/powerpc/nofpu/feupdateenv.c: ... here.
13416         * sysdeps/powerpc/soft-fp/feholdexcpt.c: Moved to ...
13417         * sysdeps/powerpc/nofpu/feholdexcpt.c: ... here.
13418         * sysdeps/powerpc/soft-fp/fenv_const.c: Moved to ...
13419         * sysdeps/powerpc/nofpu/fenv_const.c: ... here.
13420         * sysdeps/powerpc/soft-fp/libm-test-ulps: Moved to ...
13421         * sysdeps/powerpc/nofpu/libm-test-ulps: ... here.
13422         * sysdeps/powerpc/soft-fp/soft-supp.h: Moved to ...
13423         * sysdeps/powerpc/nofpu/soft-supp.h: ... here.
13424         * sysdeps/powerpc/soft-fp/Versions (libc: GLIBC_2.3.2): Moved to ...
13425         * sysdeps/powerpc/nofpu/Versions: ... here, new file.
13427 2002-10-19  Bruno Haible  <bruno@clisp.org>
13429         * sysdeps/unix/bsd/bsd4.4/freebsd/sys/sysmacros.h: New file.
13431 2002-10-18  Roland McGrath  <roland@redhat.com>
13433         * io/Makefile (routines): Add lchmod.
13434         * io/sys/stat.h [__USE_BSD] (lchmod): Declare it.
13435         * sysdeps/generic/lchmod.c: New file.
13436         * sysdeps/mach/hurd/lchmod.c: New file.
13437         * io/Versions (libc: GLIBC_2.3.2): New set, add lchmod.
13439 2002-10-18  Art Haas  <ahaas@neosoft.com>
13441         * configure.in: Remove remaining AC_FD_CC macros, and replace
13442         AC_FD_MSG with AS_MESSAGE_FD.
13444 2002-10-18  Roland McGrath  <roland@redhat.com>
13446         * sysdeps/powerpc/powerpc32/dl-machine.c (__process_machine_rela): Fix
13447         typos: VALUE -> FINALADDR.
13449         * sysdeps/unix/alpha/sysdep.h (INLINE_SYSCALL, INLINE_SYSCALL1)
13450         (inline_syscall_clobbers, inline_syscall0, inline_syscall1)
13451         (inline_syscall2, inline_syscall3, inline_syscall4, inline_syscall5)
13452         (inline_syscall6): Move these macros ...
13453         * sysdeps/unix/sysv/linux/alpha/sysdep.h: ... to here.
13455         * configure.in (libc_link_dests, libc_link_sources): Remove these
13456         variables and the AC_LINK_FILES call.
13458         * sysdeps/powerpc/soft-fp/Versions (libc: GLIBC_2.3.2): Fix last
13459         change to put new symbols here instead of in GLIBC_2.2.
13460         * sysdeps/powerpc/Subdirs: Move this file ...
13461         * sysdeps/powerpc/soft-fp/Subdirs: ... here.
13463 2002-10-07  Roland McGrath  <roland@redhat.com>
13465         * sysdeps/generic/bits/time.h: Replaced with contents of the
13466         sysdeps/unix/sysv/linux/i386/bits/time.h file.  All the following
13467         files were identical except for the absence of CLOCK_THREAD_CPUTIME_ID
13468         and CLOCK_PROCESS_CPUTIME_ID in .../linux/bits/time.h; adding these
13469         macros is ok even for architectures that don't now implement them.
13470         * sysdeps/mach/hurd/bits/time.h: File removed.
13471         * sysdeps/unix/sysv/linux/bits/time.h: File removed.
13472         * sysdeps/unix/sysv/linux/i386/bits/time.h: File removed.
13473         * sysdeps/unix/sysv/linux/ia64/bits/time.h: File removed.
13474         * sysdeps/unix/sysv/linux/sparc/bits/time.h: File removed.
13475         * sysdeps/unix/sysv/linux/x86_64/bits/time.h: File removed.
13477 2002-10-18  Jeff Bailey  <jbailey@gnu.org>
13479         * configure.in: Replace obsolete AC_OUTPUT syntax with
13480         AC_CONFIG_FILES, AC_CONFIG_COMMANDS, and new-type AC_OUTPUT trio.
13482         * aclocal.m4 (GLIBC_PROVIDES): Add AC_PROVIDEs for
13483         _AS_PATH_SEPARATOR_PREPARE and _AS_TEST_PREPARE.
13485         * configure.in: Replace AC_FD_CC with AS_MESSAGE_LOG_FD.
13486         * sysdeps/alpha/elf/configure.in: Likewise.
13487         * sysdeps/i386/elf/configure.in: Likewise.
13488         * sysdeps/mach/hurd/configure.in: Likewise.
13489         * sysdeps/x86_64/elf/configure.in: Likewise.
13491         * configure.in: Use AC_CONFIG_SRCDIR and new AC_INIT syntax.
13493         * sysdeps/alpha/elf/configure.in: Remove unneeded sinclude statement.
13494         * sysdeps/generic/configure.in: Likewise.
13495         * sysdeps/i386/elf/configure.in: Likewise.
13496         * sysdeps/ia64/elf/configure.in: Likewise.
13497         * sysdeps/mach/configure.in: Likewise.
13498         * sysdeps/mach/hurd/configure.in: Likewise.
13499         * sysdeps/unix/configure.in: Likewise.
13500         * sysdeps/unix/common/configure.in: Likewise.
13501         * sysdeps/unix/sysv/aix/configure.in: Likewise.
13502         * sysdeps/unix/sysv/linux/configure.in: Likewise.
13503         * sysdeps/unix/sysv/linux/mips/configure.in: Likewise.
13504         * sysdeps/x86_64/elf/configure.in: Likewise.
13506         * aclocal.m4: Use just the bits from AS_INIT that are needed for the
13507         GLIBC_PROVIDES.  Use plain comment instead of HEADER-COMMENT so
13508         that it's obvious when extra autoconf machinery is being dragged in.
13510 2002-10-18  Roland McGrath  <roland@redhat.com>
13512         * configure.in: Remove bogus echo included in
13513         2002-10-08  Aldy Hernandez  <aldyh@redhat.com> change.
13514         * configure: Regenerated.
13516 2002-10-18  Jakub Jelinek  <jakub@redhat.com>
13518         * sysdeps/unix/sysv/linux/pathconf.h (statfs_link_max): Add inline.
13519         (statfs_filesize_max): New function.
13520         * sysdeps/unix/sysv/linux/linux_fsinfo.h (JFFS_SUPER_MAGIC,
13521         JFFS2_SUPER_MAGIC, JFS_SUPER_MAGIC, NTFS_SUPER_MAGIC,
13522         ROMFS_SUPER_MAGIC, UDF_SUPER_MAGIC): Define.
13523         * sysdeps/unix/sysv/linux/fpathconf.c (__fpathconf): Use
13524         statfs_filesize_max.
13525         * sysdeps/unix/sysv/linux/pathconf.c (__pathconf): Likewise.
13526         * sysdeps/unix/sysv/linux/alpha/fpathconf.c: Removed.
13527         * sysdeps/unix/sysv/linux/alpha/pathconf.c: Removed.
13529 2002-10-17  Roland McGrath  <roland@redhat.com>
13531         * configure.in (MIG): Just AC_SUBST it here.
13532         * configure: Regenerated.
13533         * sysdeps/mach/configure.in (MIG): Do the AC_CHECK_TOOL here.
13534         Adding final - argument to all AC_CHECK_HEADER uses for .defs files.
13535         * sysdeps/mach/configure: Regenerated.
13537         * aclocal.m4 (GLIBC_PROVIDES): Add AC_PROVIDE([_AS_TR_SH_PREPARE])
13538         and AC_PROVIDE([_AS_CR_PREPARE]).
13540         * aclocal.m4 (GLIBC_PROVIDES): Add AC_PROVIDE([_AS_ECHO_N_PREPARE]).
13541         Remove AC_LANG(C) call, instead just define([_AC_LANG], [C]).
13543         * elf/dl-support.c: Move _dl_tls_* variables to ...
13544         * sysdeps/generic/libc-tls.c: ... here.
13546         * elf/dl-close.c (remove_slotinfo): Take new argument.  If false,
13547         allow IDX to be one past the current last slotinfo entry.
13548         (_dl_close): Pass IMAP->l_init_called for that parameter.
13550 2002-10-07  Andreas Schwab  <schwab@suse.de>
13552         * aclocal.m4: Fix for autoconf 2.53.
13553         * configure.in: Likewise.  Require autoconf 2.53.
13555 2002-10-08  Richard Henderson  <rth@redhat.com>
13557         * soft-fp/op-4.h: Handle carry correctly in
13558         __FP_FRAC_ADD_3, __FP_FRAC_ADD_4, __FP_FRAC_SUB_3,
13559         __FP_FRAC_SUB_4, __FP_FRAC_DEC_3, __FP_FRAC_DEC_4.
13560         * soft-fp/op-common.h: New macros _FP_DIV_MEAT_N_loop.
13562 2002-10-08  Aldy Hernandez  <aldyh@redhat.com>
13564         * configure.in: Compute completely-soft.
13565         * config.make.in: Make completely-soft available to sub-makes.
13566         * sysdeps/powerpc/soft-fp/Makefile: Add gcc-single-routines and
13567         gcc-double-routines.  Add sim-full.c.  Add fenv_const and
13568         fe_nomask to libm-support.
13569         * sysdeps/powerpc/soft-fp/sim-full.c: New file.
13570         * sysdeps/powerpc/soft-fp/fraiseexcpt.c: New file.
13571         * sysdeps/powerpc/soft-fp/fegetexcept.c: New file.
13572         * sysdeps/powerpc/soft-fp/fclrexcpt.c: New file.
13573         * sysdeps/powerpc/soft-fp/ftestexcept.c: New file.
13574         * sysdeps/powerpc/soft-fp/fgetexcptflg.c: New file.
13575         * sysdeps/powerpc/soft-fp/fsetexcptflg.c: New file.
13576         * sysdeps/powerpc/soft-fp/fedisblxcpt.c: New file.
13577         * sysdeps/powerpc/soft-fp/feenablxcpt.c: New file.
13578         * sysdeps/powerpc/soft-fp/fegetenv.c: New file.
13579         * sysdeps/powerpc/soft-fp/fesetenv.c: New file.
13580         * sysdeps/powerpc/soft-fp/fegetround.c: New file.
13581         * sysdeps/powerpc/soft-fp/fesetround.c: New file.
13582         * sysdeps/powerpc/soft-fp/feupdateenv.c: New file.
13583         * sysdeps/powerpc/soft-fp/feholdexcpt.c: New file.
13584         * sysdeps/powerpc/soft-fp/fenv_const.c: New file.
13585         * sysdeps/powerpc/soft-fp/libm-test-ulps: New file.
13586         * sysdeps/powerpc/soft-fp/soft-supp.h: New file.
13587         * sysdeps/powerpc/soft-fp/Versions: Add libgcc soft-float
13588         symbols.  Add __sim_disabled_exceptions, __sim_exceptions,
13589         __sim_round_mode.
13590         * sysdeps/powerpc/soft-float/Dist: Add sim-full.c, fenv_const.c.
13591         * sysdeps/powerpc/soft-float/sfp-machine.h: Define
13592         FP_HANDLE_EXCEPTIONS.
13593         Define FP_ROUNDMODE.
13594         Redefine FP_* macros to correspond to the FE_* bit positions.
13595         Define FP_DIV_MEAT_S to _FP_DIV_MEAT_1_loop.
13596         Define externs for __sim_exceptions, __sim_disabled_exceptions,
13597         __sim_round_mode, __simulate_exceptions.
13598         * sysdeps/powerpc/fpu/bits/fenv.h: Move file from here...
13599         * sysdeps/powerpc/bits/fenv.h: ...to here.
13601 2002-10-06  Jakub Jelinek  <jakub@redhat.com>
13603         * sysdeps/powerpc/powerpc32/dl-machine.c (__process_machine_rela):
13604         Store R_PPC_UADDR32 and R_PPC_UADDR16 one byte at a time.
13605         Use __builtin_expect for R_PPC_ADDR24 overflow check.  Fix
13606         R_PPC_ADDR16, R_PPC_UADDR16 and R_PPC_ADDR14* overflow check, use
13607         __builtin_expect.
13609 2002-10-15  Jakub Jelinek  <jakub@redhat.com>
13611         * include/resolv.h (__libc_res_nquery, __libc_res_nsearch,
13612         __libc_res_nsend): New prototypes.
13613         * resolv/res_query.c (QUERYSIZE): Define.
13614         (__libc_res_nquery): Renamed from res_nquery.  Added answerp
13615         argument.  Allocate only QUERYSIZE bytes first, if res_nmkquery
13616         fails use MAXPACKET buffer.  Call __libc_res_nsend instead of
13617         res_nsend, pass answerp.
13618         (res_nquery): Changed into wrapper around __libc_res_nquery.
13619         (__libc_res_nsearch): Renamed from res_nsearch.  Added answerp
13620         argument.  Call __libc_res_nquerydomain and __libc_res_nquery
13621         instead of the non-__libc_ variants, pass them answerp.
13622         (res_nsearch): Changed into wrapper around __libc_res_nsearch.
13623         (__libc_res_nquerydomain): Renamed from res_nquerydomain.
13624         Added answerp argument.  Call __libc_res_nquery instead of
13625         res_nquery, pass answerp.
13626         (res_nquerydomain): Changed into wrapper around
13627         __libc_res_nquerydomain.
13628         * resolv/res_send.c: Include sys/ioctl.h.
13629         (MAXPACKET): Define.
13630         (send_vc): Change arguments.  Reallocate answer buffer if it is
13631         too small.
13632         (send_dg): Likewise.
13633         (__libc_res_nsend): Renamed from res_nsend.  Added ansp argument.
13634         Reallocate answer buffer if it is too small and hooks are in use.
13635         Adjust calls to send_vc and send_dg.
13636         (res_nsend): Changed into wrapper around __libc_res_nsend.
13637         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyname2_r): Allocate
13638         just 1K answer buffer on the stack, use __libc_res_nsearch instead
13639         of res_nsearch.
13640         (_nss_dns_gethostbyaddr_r): Similarly with __libc_res_nquery.
13641         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyaddr_r): Likewise.
13642         (_nss_dns_getnetbyname_r): Similarly with __libc_res_nsearch.
13643         * resolv/gethnamaddr.c (gethostbyname2): Likewise.
13644         (gethostbyaddr): Similarly with __libc_res_nquery.
13645         * resolv/Versions (libresolv): Export __libc_res_nquery and
13646         __libc_res_nsearch at GLIBC_PRIVATE.
13648 2002-10-17  Roland McGrath  <roland@redhat.com>
13650         * configure.in: Grok --without-__thread and disable HAVE___THREAD.
13651         * configure: Regenerated.
13653         * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Do CHECK_STATIC_TLS
13654         before performing the reloc, not after.
13655         * sysdeps/i386/dl-machine.h (elf_machine_rel): Likewise.
13657 2002-10-17  Ulrich Drepper  <drepper@redhat.com>
13659         * locale/programs/locale.c (write_locales): Use 'm' flag in fopen call.
13660         * locale/programs/linereader.c (lr_open): Likewise.
13661         * locale/programs/charmap-dir.c (charmap_open): Likewise.
13662         * locale/programs/locarchive.c (add_locale_to_archive): Likewise.
13664 2002-10-17  Isamu Hasegawa  <isamu@yamato.ibm.com>
13666         * posix/bug-regex11.c: Add a test case for the bug reported by
13667         Paolo Bonzini <bonzini@gnu.org>.
13668         * posix/regexec.c (sift_states_bkref): Use correct destination of
13669         the back reference.
13671 2002-10-17  Roland McGrath  <roland@redhat.com>
13673         * elf/dl-load.c (_dl_map_object_from_fd): Don't check DF_STATIC_TLS.
13674         * elf/dl-reloc.c (_dl_relocate_object: CHECK_STATIC_TLS): New macro
13675         to signal error if an IE-model TLS reloc resolved to a dlopen'd module.
13676         * sysdeps/i386/dl-machine.h (elf_machine_rel, elf_machine_rela):
13677         Call it after performing TPOFF relocs.
13678         * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Likewise.
13679         * sysdeps/sh/dl-machine.h (elf_machine_rela): Likewise.
13680         * elf/dl-conflict.c (CHECK_STATIC_TLS): New macro (no-op).
13682         * elf/dl-close.c (remove_slotinfo): Change asserts so as not to crash
13683         when closing a partially-initialized object.
13685         * elf/dl-load.c (_dl_map_object_from_fd) [! USE_TLS]: Call lose
13686         instead of _dl_fatal_printf when we see PT_TLS.
13688         * Makeconfig (CPPFLAGS): Fix last change to use $(libof-$(<F))
13689         instead of $(libof-$<).
13691 2002-10-16  Roland McGrath  <roland@redhat.com>
13693         * cppflags-iterator.mk (CPPFLAGS-$(cpp-src)): Variable removed.
13694         instead of += to append, to be sure $(lib) gets expanded at defn time.
13695         (libof-$(cpp-src)): New variable, define this instead.
13696         * extra-lib.mk (cpp-srcs-left): Reduce duplication in include setup.
13697         (lib): Don't use override.
13698         (CPPFLAGS-$(lib)): New variable, put -D's here.
13699         * Makeconfig (CPPFLAGS): Use basename fn for CPPFLAGS-basename.
13700         Also add $(CPPFLAGS-LIB) before the file-specific flags, for each
13701         LIB found by $(libof-*) for basename, target, or source.
13702         * Makerules (CPPFLAGS-nonlib): New variable.
13703         * nscd/Makefile (lib): Set to nonlib when using cppflags-iterator.mk.
13704         * locale/Makefile (lib): Likewise.
13705         * sunrpc/Makefile (lib): Likewise.
13707         * sysdeps/unix/sysv/linux/fpathconf.c (LINUX_LINK_MAX): Move macro ...
13708         * sysdeps/unix/sysv/linux/linux_fsinfo.h (LINUX_LINK_MAX): ... here.
13709         * sysdeps/unix/sysv/linux/pathconf.h: New file.
13710         (statfs_link_max): New function, guts from fpathconf.c.
13711         * sysdeps/unix/sysv/linux/fpathconf.c: Rewritten using that.
13712         * sysdeps/unix/sysv/linux/pathconf.c (__pathconf): Likewise.
13713         * sysdeps/unix/sysv/linux/alpha/pathconf.c (__pathconf): Rewritten
13714         to use the linux/pathconf.c code by #include rather than duplication.
13715         * sysdeps/unix/sysv/linux/alpha/fpathconf.c (__pathconf): Likewise.
13717 2002-10-16  Jakub Jelinek  <jakub@redhat.com>
13719         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
13720         Use __libc_errno only for libc itself.
13722 2002-10-16  Andreas Jaeger  <aj@suse.de>
13724         * sysdeps/x86_64/_mcount.S: Fix off-by-1 error in argument access.
13726 2002-10-16  Ulrich Drepper  <drepper@redhat.com>
13728         * sysdeps/unix/sysv/linux/i386/sysdep.h (SYSCALL_ERROR_HANDLER):
13729         Use __libc_errno only for libc itself.
13731 2002-10-15  Roland McGrath  <roland@redhat.com>
13732             Jakub Jelinek  <jakub@redhat.com>
13734         * sysdeps/unix/sysv/linux/Makefile
13735         ($(objpfx)syscall-%.h $(objpfx)syscall-%.d): Take code from
13736         sparc/Makefile to produce a bi-arch file as needed.
13737         That's now parameterized by the variable $(64bit-predefine).
13738         Use LC_ALL=C for `comm' commands in that rule.
13739         No longer conditional on [$(no_syscall_list_h)].
13740         * sysdeps/unix/sysv/linux/sparc/Makefile: Remove replacement rules.
13741         (64bit-predefine): New variable.
13742         * sysdeps/unix/sysv/linux/x86_64/Makefile: Likewise.
13743         * sysdeps/unix/sysv/linux/s390/Makefile: New file.
13744         * sysdeps/unix/sysv/linux/powerpc/Makefile
13745         (64bit-predefine): New variable.
13747 2002-10-15  Roland McGrath  <roland@redhat.com>
13749         * sysdeps/unix/sysv/linux/Makefile
13750         ($(objpfx)syscall-%.h $(objpfx)syscall-%.d)
13752         * login/utmp-private.h: Declare __libc_utmp_lock.
13753         * sysdeps/unix/getlogin_r.c (getlogin_r): Take __libc_utmp_lock once
13754         and call __libc_utmp_jump_table functions directly, instead of using
13755         __setutent et al.
13757         * sysdeps/unix/sysv/linux/configure.in: Use case instead of if.
13758         * sysdeps/unix/sysv/linux/configure: Regenerated.
13760         * sysdeps/gnu/bits/utmp.h: Include <bits/wordsize.h>.
13761         (struct lastlog) [__WORDSIZE == 64 && __WORDSIZE_COMPAT32]:
13762         Use int32_t for ll_time.
13763         (struct utmp) [__WORDSIZE == 64 && __WORDSIZE_COMPAT32]:
13764         Use int32_t instead of long int for ut_session.
13765         Use an anonymous struct with 32-bit fields for ut_tv.
13766         * sysdeps/gnu/bits/utmpx.h: Include <bits/wordsize.h>.
13767         (struct utmpx) [__WORDSIZE == 64 && __WORDSIZE_COMPAT32]: Do the same
13768         here as in utmp.h for `struct utmp'.
13769         * sysdeps/unix/sysv/linux/powerpc/bits/utmp.h: File removed.
13770         * sysdeps/unix/sysv/linux/powerpc/bits/utmpx.h: File removed.
13771         * sysdeps/unix/sysv/linux/sparc/bits/utmp.h: File removed.
13772         * sysdeps/unix/sysv/linux/sparc/bits/utmpx.h: File removed.
13773         * sysdeps/unix/sysv/linux/x86_64/bits/utmp.h: File removed.
13774         * sysdeps/unix/sysv/linux/x86_64/bits/utmpx.h: File removed.
13776         * sysdeps/unix/sysv/linux/bits/resource.h: Replaced with the contents
13777         of the sysdeps/unix/sysv/linux/i386/bits/resource.h file.
13778         All the following files were identical or equivalent to it.
13779         * sysdeps/unix/sysv/linux/i386/bits/resource.h: File removed.
13780         * sysdeps/unix/sysv/linux/arm/bits/resource.h: File removed.
13781         * sysdeps/unix/sysv/linux/cris/bits/resource.h: File removed.
13782         * sysdeps/unix/sysv/linux/hppa/bits/resource.h: File removed.
13783         * sysdeps/unix/sysv/linux/ia64/bits/resource.h: File removed.
13784         * sysdeps/unix/sysv/linux/m68k/bits/resource.h: File removed.
13785         * sysdeps/unix/sysv/linux/powerpc/bits/resource.h: File removed.
13786         * sysdeps/unix/sysv/linux/s390/bits/resource.h: File removed.
13787         * sysdeps/unix/sysv/linux/sh/bits/resource.h: File removed.
13788         * sysdeps/unix/sysv/linux/x86_64/bits/resource.h: File removed.
13790         * sysdeps/unix/sysv/linux/bits/socket.h (struct msghdr): Use size_t
13791         instead of int for msg_iovlen, instead of socklen_t for msg_controllen.
13792         Other than the previously incorrect sign of msg_iovlen, this is a
13793         no-op on 32-bit platforms.  On 64-bit platforms it makes this header
13794         match their layouts as well, so the following are now identical to it.
13795         * sysdeps/unix/sysv/linux/s390/bits/socket.h: File removed.
13796         * sysdeps/unix/sysv/linux/sparc/bits/socket.h: File removed.
13797         * sysdeps/unix/sysv/linux/x86_64/bits/socket.h: File removed.
13798         * sysdeps/unix/sysv/linux/ia64/bits/socket.h: File removed.
13799         * sysdeps/unix/sysv/linux/alpha/bits/socket.h: File removed.
13801 2002-10-15  Ulrich Drepper  <drepper@redhat.com>
13803         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_VFORK_SYSCALL):
13804         Define for 2.4+ kernels.
13806         * sysdeps/unix/sysv/linux/i386/vfork.S: Optimize for kernels which
13807         are known to have the vfork syscall.  Don't confuse the CPUs
13808         branch prediction unit by jumping to the return address.
13810         * sysdeps/unix/sysv/linux/alpha/fpathconf.c (__fpathconf): Add
13811         support for reiserfs and xfs.
13813         * sysdeps/unix/sysv/linux/fpathconf.c (__fpathconf): Add case for
13814         XFS link count.
13815         * sysdeps/unix/sysv/linux/linux_fsinfo.h: Define XFS_SUPER_MAGIC
13816         and XFS_LINK_MAX.
13817         Patch by Eric Sandeen <sandeen@sgi.com> [PR libc/4706].
13819 2002-10-16  Jakub Jelinek  <jakub@redhat.com>
13821         * include/libc-symbols.h (attribute_tls_model_ie): Define.
13822         * include/errno.h (errno): Define to __libc_errno in libc.so.
13823         Add attribute_tls_model_ie.
13824         * include/netdb.h (h_errno): Define to __libc_h_errno in libc.so.
13825         Add attribute_tls_model_ie.
13826         * include/resolv.h (_res): Define to __libc_res in libc.so.  Add
13827         attribute_tls_model_ie.
13828         * inet/herrno.c (__libc_h_errno): Add hidden alias to h_errno.
13829         (h_errno): Define.
13830         * resolv/res_libc.c (__libc_res): Add hidden alias to _res.
13831         (_res): Define.
13832         * sysdeps/generic/bits/libc-tsd.h (__libc_tsd_define): Add
13833         attribute_tls_model_ie.
13834         * sysdeps/generic/errno-loc.c (errno): Only undefine if not using
13835         __thread.
13836         * sysdeps/generic/errno.c (__libc_errno): Add hidden alias to errno.
13837         * sysdeps/unix/sysv/linux/i386/sysdep.h (SYSCALL_ERROR_HANDLER): Use
13838         __libc_errno in USE___THREAD case.
13839         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
13840         Likewise.
13841         * configure.in (HAVE_TLS_MODEL_ATTRIBUTE): Check for
13842         __attribute__((tls_model (""))).
13843         * configure: Rebuilt.
13844         * config.h.in (HAVE_TLS_MODEL_ATTRIBUTE): Add.
13846 2002-10-15  Ulrich Drepper  <drepper@redhat.com>
13848         * timezone/asia: Update from tzdata2002d.
13849         * timezone/australasia: Likewise.
13850         * timezone/iso3166.tab: Likewise.
13851         * timezone/southamerica: Likewise.
13852         * timezone/zone-tab: Likewise.
13854 2002-10-15  Roland McGrath  <roland@redhat.com>
13856         * sysdeps/generic/dl-tls.c (_dl_deallocate_tls) [TLS_TCB_AT_TP]:
13857         Adjust TCB pointer before calling free, so we get the whole block.
13859 2002-10-14  Roland McGrath  <roland@redhat.com>
13861         * sysdeps/unix/sysv/linux/x86_64/sigaction.c
13862         [HAVE_HIDDEN && !HAVE_BROKEN_VISIBILITY_ATTRIBUTE]: Declare restore_rt
13863         extern using attribute_hidden instead of static, avoids warning.
13865 2002-10-09  Jakub Jelinek  <jakub@redhat.com>
13867         * sysdeps/unix/sysv/linux/configure.in: Use */lib64 for s390x too.
13868         * sysdeps/unix/sysv/linux/configure: Rebuilt.
13870 2002-10-14  Ulrich Drepper  <drepper@redhat.com>
13872         * po/sv.po: Update from translation team.
13874 2002-10-12  H.J. Lu  <hjl@gnu.org>
13876         * sunrpc/thrsvc.c (PROCQUIT): New.
13877         (struct rpc_arg): New.
13878         (dispatch): Call exit (0) if request->rq_proc == PROCQUIT.
13879         (test_one_call): Take struct rpc_arg * instead of CLIENT *c.
13880         (thread_wrapper): Modified for struct rpc_arg * and call PROCQUIT.
13881         (main): Modified for struct rpc_arg *.
13883 2002-10-14  Ulrich Drepper  <drepper@redhat.com>
13885         * dirent/scandir.c: Rearrange code a bit to reduce binary size.
13887 2002-10-14  Jakub Jelinek  <jakub@redhat.com>
13889         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Include tls.h.
13890         (SYSCALL_ERROR_HANDLER): Use RTLD_PRIVATE_ERRNO sequence
13891         in ld.so even if __thread is supported.
13893 2002-10-13  Jakub Jelinek  <jakub@redhat.com>
13895         * sysdeps/unix/sysv/linux/arm/profil-counter.h (profil_counter):
13896         Add hack to prevent the compiler from clobbering the signal context.
13897         * sysdeps/unix/sysv/linux/sh/profil-counter.h (profil_counter):
13898         Likewise.
13899         * sysdeps/unix/sysv/linux/x86_64/profil-counter.h (profil_counter):
13900         Likewise.
13902 2002-10-14  Andreas Jaeger  <aj@suse.de>
13904         * sysdeps/mips/fpu/libm-test-ulps: Regenerated by
13905         Guido Guenther <agx@sigxcpu.org>.
13907 2002-10-14  Ulrich Drepper  <drepper@redhat.com>
13909         * po/sk.po: Update from translation team.
13911 2002-09-26  Roland McGrath  <roland@redhat.com>
13913         * elf/dl-load.c (_dl_dst_count, _dl_dst_substitute): Handle $LIB
13914         dynamic string tag.
13915         * elf/Makefile ($(objpfx)trusted-dirs.st): Make the output define
13916         DL_DST_LIB based on $(slibdir).
13918 2002-10-13  Roland McGrath  <roland@frob.com>
13920         * elf/rtld-Rules ($(objpfx)rtld-libc.a): Use $(verbose) in ar command.
13922         * sysdeps/mach/hurd/getresuid.c: New file.
13923         * sysdeps/mach/hurd/getresgid.c: New file.
13924         * sysdeps/mach/hurd/setresuid.c: New file.
13925         * sysdeps/mach/hurd/setresgid.c: New file.
13927         * posix/unistd.h [__USE_GNU] (getresuid, getresgid, setresuid,
13928         setresgid): Declare them.
13929         * NEWS: Mention it.
13930         * include/unistd.h
13931         (__getresuid, __getresgid, __setresuid, __setresgid): Declare them,
13932         add libc_hidden_proto.
13933         * posix/Versions (libc: GLIBC_2.3.2): New set.  Add
13934         getresuid, getresgid, setresuid, setresgid here.
13935         * Versions.def (libc): Define GLIBC_2.3.2 set.
13936         * sysdeps/generic/getresuid.c (__getresuid): Fix argument types.
13937         Add libc_hidden_def.
13938         * sysdeps/generic/getresgid.c (__getresgid): Likewise.
13939         * sysdeps/generic/setresgid.c: New file.
13940         * sysdeps/generic/setresuid.c: New file.
13941         * sysdeps/unix/sysv/linux/Makefile [$(subdir) = misc]
13942         (sysdep_routines): Don't add getresuid and getresgid here.
13943         * sysdeps/unix/sysv/linux/arm/Makefile [$(subdir) = misc]
13944         (sysdep_routines): Don't add setresuid and setresgid here.
13945         * sysdeps/unix/sysv/linux/cris/Makefile: Likewise.
13946         * sysdeps/unix/sysv/linux/sh/Makefile: Likewise.
13947         * sysdeps/unix/sysv/linux/s390/s390-32/Makefile: Likewise.
13948         * sysdeps/unix/sysv/linux/s390/s390-64/Makefile: Likewise.
13949         * sysdeps/unix/sysv/linux/i386/Makefile: Likewise.
13950         * sysdeps/unix/sysv/linux/m68k/Makefile: Likewise.
13951         * posix/Makefile (routines): Add them all here instead.
13952         * sysdeps/unix/sysv/linux/i386/getresuid.c (getresuid): Renamed to
13953         __getresuid.  Add libc_hidden_def for that, and weak alias to old name.
13954         * sysdeps/unix/sysv/linux/i386/getresgid.c (getresgid): Renamed to
13955         __getresgid.  Add libc_hidden_def for that, and weak alias to old name.
13956         * sysdeps/unix/sysv/linux/i386/setresuid.c: Add libc_hidden_def.
13957         [! __NR_setresuid]: Include generic file.
13958         * sysdeps/unix/sysv/linux/i386/setresgid.c (setresgid): Renamed to
13959         __setresgid.  Add libc_hidden_def for that, and weak alias to old name.
13960         [! __NR_setresuid]: Include generic file.
13961         * sysdeps/unix/sysv/linux/syscalls.list (setresuid, setresgid):
13962         Caller is - now, not EXTRA.
13963         * sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list
13964         (setresuid, setresgid, getresuid, getresgid): Likewise.
13965         * sysdeps/unix/sysv/linux/syscalls.list (getresuid, getresgid):
13966         Add these calls here.
13967         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Remove them here.
13968         * sysdeps/unix/sysv/linux/hppa/syscalls.list: Likewise.
13969         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
13970         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
13971         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
13972         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Likewise.
13973         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Likewise.
13974         * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise.
13975         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
13977         * sysdeps/unix/sysv/linux/Makefile [$(subdir) = misc]
13978         (sysdep_routines): Add setfsuid and setfsgid here.
13979         * sysdeps/unix/sysv/linux/arm/Makefile: Not here.
13980         * sysdeps/unix/sysv/linux/sparc/sparc32/Makefile: Likewise.
13981         * sysdeps/unix/sysv/linux/cris/Makefile: Likewise.
13982         * sysdeps/unix/sysv/linux/sh/Makefile: Likewise.
13983         * sysdeps/unix/sysv/linux/s390/s390-32/Makefile: Likewise.
13984         * sysdeps/unix/sysv/linux/s390/s390-64/Makefile: Likewise.
13985         * sysdeps/unix/sysv/linux/i386/Makefile: Likewise.
13986         * sysdeps/unix/sysv/linux/m68k/Makefile: Likewise.
13988         * hurd/errno.c: Renamed to ...
13989         * hurd/errno-loc.c: ... this.
13990         * hurd/Makefile (routines): errno -> errno-loc
13992 2002-10-13  Ulrich Drepper  <drepper@redhat.com>
13994         * po/de.po: Update from translation team.
13996         * MakeTAGS: Add -E flag to xgettext runs.
13998 2002-10-12  Ulrich Drepper  <drepper@redhat.com>
14000         * po/fr.po: Update from translation team.
14002         * sysdeps/posix/system.c: Remove support for old and buggy SCO systems.
14003         Optimize a bit for use in glibc.
14005 2002-10-12  Roland McGrath  <roland@redhat.com>
14007         * stdio-common/tst-rndseek.c (TIMEOUT): Increase to 10 seconds.
14008         Some machines are slow.  Guido Guenther <agx@sigxcpu.org> has one.
14010 2002-10-12  Ulrich Drepper  <drepper@redhat.com>
14012         * po/sv.po: Update from translation team.
14014 2002-10-11  Isamu Hasegawa  <isamu@yamato.ibm.com>
14016         * posix/regcomp.c (re_compile_fastmap_iter): Remove the handling
14017         OP_CONTEXT_NODE.
14018         (regfree): Likewise.
14019         (create_initial_state): Likewise.
14020         (analyze): Remove the substitutions which became useless.
14021         (calc_first): Likewise.
14022         (calc_epsdest): Use edests of OP_BACK_REF in case that it has
14023         epsilon destination.
14024         (duplicate_node_closure): New function.
14025         (duplicate_node): Remove the handling OP_CONTEXT_NODE.
14026         (calc_inveclosure): Likewise.
14027         (calc_eclosure): Likewise.
14028         (calc_eclosure_iter): Invoke duplicate_node_closure instead of
14029         direct invocation of duplicate_node.
14030         (parse): Don't use comma operator in the return to avoid compiler
14031         warning.
14032         (parse_reg_exp): Likewise.
14033         (parse_branch): Likewise.
14034         (parse_expression): Likewise.
14035         (parse_sub_exp): Likewise.
14036         (parse_dup_op): Likewise.
14037         * posix/regex_internal.c (re_dfa_add_node): Remove the substitutions
14038         which became useless.
14039         (create_ci_newstate): Remove the handling OP_CONTEXT_NODE.
14040         (create_cd_newstate): Likewise.
14041         * posix/regex_internal.h (re_token_type_t): Remove the obsolete type.
14042         (re_token_t): Likewise.
14043         (re_dfa_t): Likewise.
14044         (re_node_set_remove): New macro.
14045         * posix/regexec.c (check_matching): Remove the handling
14046         OP_CONTEXT_NODE.
14047         (check_halt_node_context): Likewise.
14048         (proceed_next_node): Likewise.
14049         (pop_fail_stack): Fix the memory leak.
14050         (set_regs): Likewise.
14051         (free_fail_stack_return): New function.
14052         (sift_states_backward): Fix the memory leak.  Remove the handling
14053         OP_CONTEXT_NODE.
14054         (update_cur_sifted_state): Append some if clause to avoid redundant
14055         call.
14056         (sub_epsilon_src_nodes): Use IS_EPSILON_NODE since it might be a
14057         back reference.
14058         (check_dst_limits): Remove the handling OP_CONTEXT_NODE.
14059         (check_subexp_limits): Likewise.
14060         (search_subexp): Likewise.
14061         (sift_states_bkref): Likewise.
14062         (transit_state_mb): Likewise.
14063         (transit_state_bkref_loop): Likewise.
14064         (transit_state_bkref_loop): Likewise.
14065         (group_nodes_into_DFAstates): Likewise.
14066         (check_node_accept): Likewise.
14067         (sift_ctx_init): Add initializing.
14069 2002-10-12  Ulrich Drepper  <drepper@redhat.com>
14071         * sysdeps/unix/sysv/linux/i386/sysdep.h (INLINE_SYSCALL): Use
14072         __builtin_expect.
14074 2002-10-11  Ulrich Drepper  <drepper@redhat.com>
14076         * elf/dl-load.c (_dl_map_object_from_fd): Remove unnecessarily
14077         duplicated variable c.
14079         * sysdeps/unix/sysv/linux/sigwait.c (__sigwait): Use INTERNAL_SYSCALL
14080         if possible.
14082         * sysdeps/unix/sysv/linux/i386/sysdep.h
14083         (INTERNAL_SYSCALL_ERROR_P): New define.
14084         (INTERNAL_SYSCALL_ERRNO): Likewise.
14086         * sysdeps/unix/sysv/linux/i386/profil-counter.h (profil_counter):
14087         Add hack to prevent the compiler from clobbering the signal context.
14089 2002-10-11  Roland McGrath  <roland@redhat.com>
14091         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
14092         Fix typos.
14094         * sysdeps/generic/dl-lookupcfg.h: Include <tls.h>.
14095         * sysdeps/sh/dl-lookupcfg.h: File removed.
14096         * sysdeps/i386/dl-lookupcfg.h: File removed.
14098         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER): Add
14099         missing labels and ; from last change.
14101         * stdio-common/tst-sscanf.c (val_double): Append .0 to large whole
14102         number literals, so they are doubles instead of ints.
14104 2002-10-09  Roland McGrath  <roland@redhat.com>
14106         * sysdeps/generic/bits/libc-tsd.h [USE___THREAD]: Conditional
14107         changed from [USE_TLS && HAVE___THREAD].
14109         * sysdeps/i386/dl-machine.h (elf_machine_type_class, elf_machine_rel):
14110         Disable TLS relocs if [RTLD_BOOTSTRAP && !USE___THREAD].
14111         * sysdeps/x86_64/dl-machine.h
14112         (elf_machine_type_class, elf_machine_rela): Likewise.
14113         * sysdeps/sh/dl-machine.h (elf_machine_type_class, elf_machine_rela):
14114         Likewise.
14116         * include/link.h (struct link_map): Remove member l_tls_tp_initialized.
14117         * elf/rtld.c (_dl_start_final, dl_main): Don't use it.
14118         (_dl_start): Conditionalize PT_TLS check on [USE___THREAD].
14120         * sysdeps/i386/dl-tls.h (__TLS_GET_ADDR): Use ___tls_get_addr_internal
14121         instead of ___tls_get_addr.
14122         (___tls_get_addr_internal): Add attribute_hidden to decl.
14124         * sysdeps/generic/ldsodefs.h (struct rtld_global): New variable
14125         _dl_error_catch_tsd.
14126         * elf/rtld.c (startup_error_tsd): New function.
14127         (dl_main): Point _dl_error_catch_tsd at that.
14128         * elf/dl-error.c: Don't use libc-tsd.h for DL_ERROR,
14129         use new function pointer instead.
14130         * elf/dl-tsd.c: New file.
14131         * elf/Makefile (routines): Add it.
14133 2002-10-07  Roland McGrath  <roland@redhat.com>
14135         * elf/dl-misc.c (_dl_debug_vdprintf): Use INTERNAL_SYSCALL macro for
14136         writev if it's available.  Otherwise if [RTLD_PRIVATE_ERRNO] then
14137         take _dl_load_lock around calling __writev.
14139         * sysdeps/unix/sysv/linux/i386/sysdep.h (INTERNAL_SYSCALL): New macro.
14140         (INLINE_SYSCALL): Use that.
14142         * sysdeps/generic/dl-sysdep.h: New file.
14143         * sysdeps/mach/hurd/dl-sysdep.h: New file.
14144         * sysdeps/generic/ldsodefs.h: Include <dl-sysdep.h>.
14145         * include/errno.h [IS_IN_rtld]: Include <dl-sysdep.h> to define ...
14146         [RTLD_PRIVATE_ERRNO]: Use a hidden global variable for errno and
14147         access it directly.
14148         * elf/dl-minimal.c (__errno_location): Removed.
14149         * sysdeps/unix/i386/sysdep.S (__syscall_errno) [RTLD_PRIVATE_ERRNO]:
14150         Use GOTOFF access for errno.
14151         * sysdeps/unix/sysv/linux/i386/sysdep.h
14152         [RTLD_PRIVATE_ERRNO] (SYSCALL_ERROR_HANDLER): Likewise.
14154         * sysdeps/unix/x86_64/sysdep.S (__syscall_errno) [RTLD_PRIVATE_ERRNO]:
14155         Use PC-relative access for errno.
14156         * sysdeps/unix/sysv/linux/x86_64/sysdep.h
14157         [RTLD_PRIVATE_ERRNO] (SYSCALL_ERROR_HANDLER): Likewise.
14159         * include/tls.h: New file.
14160         (USE___THREAD): New macro.
14161         Define to 1 under [USE_TLS && HAVE___THREAD] and only when compiling
14162         libc or libpthread.
14163         * sysdeps/unix/sysv/linux/i386/sysdep.h [USE___THREAD]: Conditional
14164         changed from [USE_TLS && HAVE___THREAD].
14165         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
14166         * sysdeps/unix/i386/sysdep.S: Likewise.
14167         * sysdeps/unix/x86_64/sysdep.S: Likewise.
14168         * include/errno.h: Likewise.
14169         * include/netdb.h: Likewise.
14170         * include/resolv.h: Likewise.
14172         * sysdeps/generic/errno.c: New file.
14173         * csu/Makefile (aux): New variable, list errno.
14174         * sysdeps/unix/sysv/linux/i386/sysdep.S (errno, _errno): Remove defns.
14175         * sysdeps/unix/sysv/linux/m68k/sysdep.S: Likewise.
14176         * sysdeps/unix/sysv/linux/x86_64/sysdep.S: Likewise.
14177         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S: Likewise.
14178         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S: Likewise.
14179         * sysdeps/unix/sysv/linux/arm/sysdep.S: Likewise.
14180         * sysdeps/unix/sysv/linux/cris/sysdep.S: Likewise.
14181         * sysdeps/unix/sysv/linux/hppa/sysdep.c: Likewise.
14182         * sysdeps/unix/sysv/linux/ia64/sysdep.S: Likewise.
14183         * sysdeps/unix/sysv/linux/powerpc/sysdep.c: Likewise.
14184         * sysdeps/unix/sysv/linux/sparc/sysdep.S: Likewise.
14185         * sysdeps/unix/sysv/linux/sh/sysdep.S: Likewise.
14186         * sysdeps/unix/alpha/sysdep.S: Likewise.
14187         * sysdeps/generic/start.c: Likewise.
14188         * sysdeps/unix/start.c: Likewise.
14189         * sysdeps/unix/arm/start.c: Likewise.
14190         * sysdeps/unix/bsd/ultrix4/mips/start.S: Likewise.
14191         * sysdeps/unix/sparc/start.c: Likewise.
14192         * sysdeps/unix/sysv/irix4/start.c: Likewise.
14193         * sysdeps/unix/sysv/linux/mips/sysdep.S: File removed.
14195         * manual/search.texi (Tree Search Function, Hash Search Function):
14196         Mention search.h clearly.
14198 2002-10-05  Roland McGrath  <roland@redhat.com>
14200         * elf/dl-fxstat64.c: File removed.
14201         * elf/dl-xstat64.c: File removed.
14202         * elf/Makefile (rtld-routines): Remove them.
14203         * sysdeps/unix/sysv/linux/xstat64.c: Remove RTLD_STAT64 conditionals.
14204         Instead, use strong_alias instead of versioned_symbol in the
14205         !SHLIB_COMPAT case.
14206         * sysdeps/unix/sysv/linux/fxstat64.c: Likewise.
14207         * sysdeps/unix/sysv/linux/lxstat64.c: Likewise.
14209         * include/shlib-compat.h
14210         (SHLIB_COMPAT): Require that IS_IN_##lib be defined nonzero.
14211         [! NOT_IN_libc] (IS_IN_libc): Define it.
14212         * cppflags-iterator.mk (CPPFLAGS-$(cpp-src)): Use -Dx=1 not just -Dx.
14213         * elf/Makefile (CPPFLAGS-.os): Likewise.
14215         * sunrpc/rpc_main.c (main): Don't declare with noreturn attribute.
14216         Return the status instead of calling exit.
14218         * Makeconfig (CFLAGS): Prepend -std=gnu99.
14219         * Makerules (+make-deps): Use $(CFLAGS) only for .c sources.
14220         Remove superfluous rm command, whose @ plus make bugs hid
14221         all these commands from the make output.
14223         * include/stubs-prologue.h: New file.  Give #error under #ifdef _LIBC.
14224         * Makefile ($(inst_includedir)/gnu/stubs.h): Depend on it.
14225         Use that file's contents instead of literal echo's for the prologue.
14226         * include/features.h: Include <gnu/stubs.h> unconditionally.
14227         * include/gnu/stubs.h: New file.
14229 2002-09-30  Roland McGrath  <roland@redhat.com>
14231         * elf/rtld-Rules: New file.
14232         * elf/Makefile ($(objpfx)librtld.map, $(objpfx)librtld.mk,
14233         $(objpfx)rtld-libc.a): New targets.
14234         (generated): Add them.
14235         (reloc-link): Remove -o $@ from the variable.
14236         ($(objpfx)dl-allobjs.os): Add -o $@ after $(reloc-link).
14237         (distribute): Add rtld-Rules.
14238         (CPPFLAGS-.os): Define this instead of CFLAGS-.os.
14239         * Makerules ($(+sysdir_pfx)sysd-rules): Emit rules for rtld-% targets.
14240         (common-mostlyclean, common-clean): Clean up rtld-* files.
14241         * sysdeps/unix/make-syscalls.sh: Add rtld-*.os target name to rules.
14243 2003-05-20  Jakub Jelinek  <jakub@redhat.com>
14245         * elf/dynamic-link.h (elf_get_dynamic_info): Add temp argument.
14246         If temp != NULL, copy dynamic entries which need relocation to temp
14247         array before relocating.
14248         (DL_RO_DYN_TEMP_CNT): Define.
14249         * elf/dl-load.c (_dl_map_object_from_fd): Adjust caller.
14250         * elf/rtld.c (_dl_start): Likewise.
14251         (dl_main): Likewise.  Add dyn_temp static variable.
14253 2002-10-11  Roland McGrath  <roland@redhat.com>
14255         * sysdeps/generic/dl-tls.c (__tls_get_addr): After freeing block in
14256         now-unused dtv slot, reset the slot to TLS_DTV_UNALLOCATED.
14258         * elf/tls-macros.h [__x86_64__] (TLS_GD): Fix the sequence with the
14259         proper set of no-op insn prefixes.
14261         * elf/tst-tls8.c (do_test): Use %zd format for l_tls_modid members.
14263 2002-10-11  Ulrich Drepper  <drepper@redhat.com>
14265         * sysdeps/unix/sysv/linux/execve.c: Don't try calling
14266         __pthread_kill_other_threads_np.
14268         * sysdeps/generic/pselect.c: Avoid unnecessary sigprocmask calls.
14270 2002-10-08  Roland McGrath  <roland@redhat.com>
14272         * locale/newlocale.c (__newlocale): If setting all categories to "C",
14273         just return &_nl_C_locobj instead of copying it.
14274         * locale/freelocale.c (__freelocale): Check for &_nl_C_locobj.
14275         * locale/duplocale.c (__duplocale): Likewise.
14277 2002-10-07  Roland McGrath  <roland@frob.com>
14279         * config.h.in (HAVE_I386_SET_GDT): New #undef.
14280         * sysdeps/mach/configure.in: Define it with new check for i386_set_gdt.
14281         * sysdeps/mach/configure: Regenerated.
14283 2002-10-06  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
14285         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (INLINE_SYSCALL):
14286         Add all necessary register outputs for syscall-clobbered registers.
14288 2002-10-02  David Mosberger  <davidm@hpl.hp.com>
14290         * sysdeps/ia64/bzero.S: Rewritten by Sverre Jarp to tune for
14291         Itanium 2 (and Itanium).
14292         Fix unwind directives and make it fit in 80 columns.
14293         * sysdeps/ia64/memset.S: Likewise.
14294         * sysdeps/ia64/memcpy.S: Likewise.
14295         Move jump table to .rodata section.
14297 2002-10-03  Roland McGrath  <roland@frob.com>
14299         * sysdeps/mach/hurd/i386/init-first.c (_hurd_stack_setup): Add
14300         clobbers to asm.
14302 2002-10-10  Andreas Jaeger  <aj@suse.de>
14304         * sysdeps/x86_64/_mcount.S: Restore correct registers.
14306 2002-10-10  Ulrich Drepper  <drepper@redhat.com>
14308         * posix/Versions (libc) [GLIBC_PRIVATE]: Add __pselect.
14310 2002-10-09  Ulrich Drepper  <drepper@redhat.com>
14312         * sysdeps/generic/ldsodefs.h: Remove attribute_hidden from
14313         _dl_allocate_tls_init.  Add rtld_hidden_proto.
14314         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Add
14315         rtld_hidden_def.
14316         * elf/Versions (ld) [GLIBC_PRIVATE]: Add _dl_allocate_tls_init.
14318         * version.h (VERSION): Bump to 2.3.1.
14320         * Make-dist: Add back one of the tar invocations removed before.
14322         * stdlib/Makefile (distribute): Add allocalim.h.
14324         * sysdeps/generic/bits/libc-tsd.h [!(USE_TLS && HAVE___THREAD)]
14325         (__libc_tsd_address): Use correct variable name.
14326         Patch by Stefan Jones <stefan.jones@multigig.com>.
14328         * sysdeps/unix/sysv/linux/ia64/getcontext.S: Add missing ;;.
14329         Reported by edwardsg@sgi.com [PR libc/4678].
14331         * Versions.def (libc): Add GLIBC_2.3.1.
14332         (libpthread): Add GLIBC_2.3.1.
14334         * include/signal.h: Add libc_hidden_proto for __sigwait, __sigwaitinfo,
14335         and __sigtimedwait.
14336         * signal/Versions: Add __sigtimedwait, __sigwait, and __sigwaitinfo.
14337         * sysdeps/unix/sysv/linux/sigtimedwait.c (__sigtimedwait): Add
14338         libc_hidden_def.
14339         * sysdeps/unix/sysv/linux/sigwait.c (__sigwait): Likewise.
14340         * sysdeps/unix/sysv/linux/sigwaitinfo.c (__sigwaitinfo): Likewise.
14342         * include/sys/msg.h: Declare __libc_msgrcv and __libc_msgsnd.
14343         * sysdeps/unix/sysv/linux/msgrcv.c (__msgrcv): Rename to __libc_msgrcv
14344         and make old name an alias.
14345         * sysdeps/unix/sysv/linux/msgsnd.c (__msgsnd): Rename to __libc_msgsnd
14346         and make old name an alias.
14347         * sysvipc/Versions (libc) [GLIBC_PRIVATE]: Add __libc_msgrcv and
14348         __libc_msgsnd.
14350         * include/sys/uio.h: Declare __libc_readv and __libc_writev.
14351         * misc/Versions (libc) [GLIBC_PRIVATE]: Add __libc_readv and
14352         __libc_writev.
14353         * sysdeps/generic/readv.c (__readv): Rename to __libc_readv and make
14354         old name an alias.
14355         * sysdeps/posix/readv.c: Likewise
14356         * sysdeps/unix/sysv/aix/readv.c: Likewise.
14357         * sysdeps/unix/sysv/linux/readv.c: Likewise.
14358         * sysdeps/generic/writev.c (__writev): Rename to __libc_writev and make
14359         old name an alias.
14360         * sysdeps/posix/writev.c: Likewise
14361         * sysdeps/unix/sysv/aix/writev.c: Likewise.
14362         * sysdeps/unix/sysv/linux/writev.c: Likewise.
14364         * include/sys/wait.h: Declare __waitid.
14365         * posix/Versions (libc) [GLIBC_PRIVATE]: Add __waitid.
14366         * sysdeps/generic/waitid.c (waitid): Rename to __waitid and make old
14367         name an alias.
14368         * sysdeps/posix/waitid.c: Likewise.
14369         * sysdeps/unix/sysv/aix/waitid.c: Likewise.
14371         * sysdeps/unix/sysv/linux/syscalls.list: Add creat syscall.
14373 2002-10-07  Jakub Jelinek  <jakub@redhat.com>
14375         * include/alloca.h (__libc_use_alloca, __libc_alloca_cutoff): New
14376         prototypes.
14377         (__MAX_ALLOCA_CUTOFF): Define.
14378         Include allocalim.h.
14379         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyname2_r,
14380         _nss_dns_gethostbyaddr_r): Use alloca or malloc to allocate
14381         host_buffer depending on __libc_use_alloca.
14382         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyname_r,
14383         _nss_dns_getnetbyaddr_r): Use alloca or malloc to allocate
14384         net_buffer depending on __libc_use_alloca.
14385         * resolv/res_query.c (res_nquery): Use alloca or malloc to allocate
14386         buf depending on __libc_use_alloca.
14387         * resolv/gethnamaddr.c (gethostbyname2, gethostbyaddr): Likewise.
14388         * stdio-common/vfprintf.c (vfprintf): Use __libc_use_alloca
14389         instead of hardcoded constants.
14390         Pass proper size argument to alloca and compute end for wide char
14391         version.
14392         * stdio-common/printf_fp.c (__printf_fp): Use __libc_use_alloca
14393         instead of hardcoded constants.
14394         * string/strcoll.c (strcoll): Likewise.
14395         * string/strxfrm.c (strxfrm): Likewise.
14396         * sysdeps/posix/readv.c (__readv): Likewise.
14397         * sysdeps/posix/writev.c (__writev): Likewise.
14398         * sysdeps/generic/allocalim.h: New file.
14400 2002-10-08  Roland McGrath  <roland@redhat.com>
14402         * configure.in (aux_missing warning): Change "too old" to
14403         "incompatible versions", since for autoconf it's "too new" right now.
14404         * configure: Regenerated.
14406         * configure.in (AUTOCONF): New check to set it.  Set to "no" if the
14407         one found doesn't work on our configure.in.
14408         * configure: Regenerated.
14409         * config.make.in (AUTOCONF): New substituted variable.
14410         * Makefile (autoconf-it-cvs): New canned sequence, broken out of ...
14411         (autoconf-it): ... here, use that instead of defining conditionally.
14412         Use $(AUTOCONF) instead of literal autoconf.
14413         [$(AUTOCONF) != no] (configure, %/configure): Protect these rules
14414         with this condition.
14415         * Make-dist (autoconf-it, configure, %/configure): Copy those changes.
14417 2002-10-08  Ulrich Drepper  <drepper@redhat.com>
14419         * Make-dist (dist): Cleanup a bit.  We are not interested in the
14420         14 char filename limit anymore.  Remove intermediate files and
14421         symlinks.
14423 2002-10-05  Ulrich Drepper  <drepper@redhat.com>
14425         * po/sk.po: Update from translation team.
14426         * po/tr.po: Likewise.
14427         * po/gl.po: Likewise.
14429 2002-10-05  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
14431         * elf/tls-macros.h: Fix SH version of macros so as to match ABI syntax.
14433 2002-10-03  Ulrich Drepper  <drepper@redhat.com>
14435         * version.h (RELEASE): Change to stable.
14437 2002-10-03  Jakub Jelinek  <jakub@redhat.com>
14439         * sysdeps/unix/sysv/linux/_exit.c (__syscall_exit,
14440         __syscall_exit_group): New prototypes.
14442 2002-10-03  Ulrich Drepper  <drepper@redhat.com>
14444         * glibc 2.3 released.
14447 See ChangeLog.13 for earlier changes.