* include/rpc/rpc.h: Declare thread variables with their correct
[glibc.git] / ChangeLog
blob9a7782a61adf4f1d5daa6a869825b4fc784033b4
1 2004-02-09  Andreas Schwab  <schwab@suse.de>
3         * include/rpc/rpc.h: Declare thread variables with their correct
4         type.
5         * sunrpc/clnt_perr.c: Don't cast thread variables.
6         * sunrpc/clnt_raw.c: Likewise.
7         * sunrpc/clnt_simp.c: Likewise.
8         * sunrpc/key_call.c: Likewise.
9         * sunrpc/svcauth_des.c: Likewise.
10         * sunrpc/svc.c: Likewise.
11         * sunrpc/svc_raw.c: Likewise.
12         * sunrpc/svc_simple.c: Likewise.
14 2004-02-09  Ulrich Drepper  <drepper@redhat.com>
16         * stdio-common/_i18n_number.h: Support printing localized decimal
17         point and thousand separator.
18         * wctype/wctrans.c: Add __wctrans alias.
19         * include/wctype.h: Declare __wctrans.
20         Based on a patch by Hamed Malek.
22         * sysdeps/i386/fpu/fclrexcpt.c (__feclearexcept): Don't touch bits
23         other than the status bits [BZ #10].
25 2004-02-08  Ulrich Drepper  <drepper@redhat.com>
27         Make stream locking operations really work.
28         * misc/Makefile (CFLAGS-mntent_r.c): Define.
29         * shadow/Makefile (CFLAGS-fgetspent_r.c): Define.
30         (CFLAGS-putspent.c): Define.
31         * grp/Makefile (CFLAGS-fgetgrent_r.c): Define.
32         (CFLAGS-putgrent.c): Define.
33         * pwd/Makefile (CFLAGS-fgetpwent_r.c): Define.
34         Reported by Shunichi Sagawa <s-sagawa@jp.fujitsu.com>.
36         * elf/dl-load.c (lose): Use noinline attribute instead of silly
37         alloca to prevent inlining.
38         * elf/dl-runtime.c (fixup): Likewise.
39         (profile_fixup): Likewise.
41         * stdio-common/printf_size.c: Undo parts of patch from 2000-2-11.
42         Initialize width correctly.
44 2004-02-07  Andreas Jaeger  <aj@suse.de>
46         * iconv/gconv_simple.c (ucs4le_internal_loop): Remove cast used as
47         lvalue.
48         (internal_ucs4le_loop_single): Likewise.
49         (ucs4_internal_loop): Likewise.
50         (BODY): Likewise.
51         (internal_ucs4_loop_single): Likewise.
52         * iconvdata/iso8859-1.c (BODY): Likewise.
53         * iconvdata/cp1255.c (EMIT_SHIFT_TO_INIT): Likewise.
54         * iconvdata/cp1258.c (EMIT_SHIFT_TO_INIT): Likewise.
55         * iconvdata/gb18030.c (BODY): Likewise.
56         * iconvdata/armscii-8.c (BODY): Likewise.
57         * stdlib/msort.c (msort_with_tmp): Likewise.
59         * iconv/gconv_open.c (__gconv_open): Remove conditional expression
60         as lvalue.
62 2004-02-06  Steven Munroe  <sjmunroe@us.ibm.com>
64         * sysdeps/powerpc/powerpc32/dl-machine.c: Declare __cache_line_size as
65         weak extern.
66         (__elf_machine_runtime_setup): Invalidate the instruction cache over
67         the whole range of the PLT.
69 2004-02-06  Andreas Schwab  <schwab@suse.de>
71         * posix/regcomp.c (build_range_exp): Fix off-by-one.
72         (parse_bracket_exp): Likewise.
74 2004-02-05  Ulrich Drepper  <drepper@redhat.com>
76         * sysdeps/unix/sysv/linux/powerpc/powerpc32/kernel_stat.h: Define
77         _HAVE_STAT_NSEC and _HAVE_STAT64_NSEC.  Patch by Anton Blanchard.
79 2004-02-02  Paolo Bonzini  <bonzini@gnu.org>
81         * posix/regexec.c (check_matching): Add P_MATCH_FIRST parameter.
82         (re_search_internal): Pass new parameter to check_matching.
83         (check_matching): Unless a parenthesized group is found at the
84         beginning of the regexp, advance P_MATCH_FIRST until we entered
85         a state different from the initial state.
87 2004-02-01  Ulrich Drepper  <drepper@redhat.com>
89         * math/libm-test.inc (lround_test): Add new test.
90         (llround_test): Likewise.
91         (lrint_test): Likewise.
92         (llrint_test): Likewise.
93         * sysdeps/ieee754/dbl-64/s_lround.c (__lround): Fix special case
94         with result taking up 20 bits.
95         * sysdeps/ieee754/dbl-64/s_lrint.c (__lrint): Likewise.
96         * sysdeps/ieee754/dbl-64/s_llrint.c (__llrint): Likewise..
97         * sysdeps/ieee754/ldbl-96/s_lroundl.c (__lroundl): Fix special
98         case with result taking up 31 bits.
99         * sysdeps/ieee754/ldbl-96/s_lrintl.c (__lrintl): Likewise.
101         * po/nl.po: Update from translation team.
103 2004-01-30  Andreas Schwab  <schwab@suse.de>
105         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h (ILL_BREAK,
106         FPE_DECOVF, FPE_DECDIV, FPE_DECERR, FPE_INVASC, FPE_INVDEC,
107         SEGV_PSTKOVF): Remove underscore prefix from definition.
109 2004-01-28  Paolo Bonzini  <bonzini@gnu.org>
111         Merge regex changes in gawk.
112         * posix/regcomp.c (build_range_exp) [!_LIBC]: Check validity
113         of collation elements.
114         * posix/regex.c: Include limits.h.
115         * posix/regex.h: Document REG_ECOLLATE correctly.
116         * posix/regex_internal.h [!_LIBC && !ENABLE_NLS]: Disable NLS.
118 2004-01-24  Andreas Jaeger  <aj@suse.de>
120         * malloc/obstack.h: Import gnulib version.
121         * malloc/obstack.c: Likewise.
123 2004-01-26  David Mosberger  <davidm@hpl.hp.com>
125         * elf/link.h (struct dl_phdr_info): Fix typo in comment.
126         * elf/rtld.c (dl_main): After incrementing dl_nloaded, also
127         increment dl_load_adds.
128         * elf/dl-iteratephdr.c (__dl_iterate_phdr): Replace GL(dl_load_subs)
129         with equivalent GL(dl_load_adds - GL(dl_nloaded).
130         (dl_iterate_phdr): Likewise.
131         * elf/dl-close.c (_dl_close): Delete increment of GL(dl_load_subs).
132         * elf/dl-support.c: Remove global variable _dl_load_subs.
133         * sysdeps/generic/ldsodefs.h (struct rtld_global): Remove
134         _dl_load_subs member.
136 2004-01-27  Jakub Jelinek  <jakub@redhat.com>
138         * elf/rtld.c (_dl_start_final): Don't set l_relro_* here.
139         (_dl_start): And neither here.
140         (dl_main): Set GL(dl_loaded)->l_relro_* and
141         GL(dl_rtld_map)->l_relro_*.
143 2004-01-23  David Mosberger  <davidm@hpl.hp.com>
145         * sysdeps/generic/ldsodefs.h (struct rtld_global): Add members
146         _dl_load_adds and _dl_load_subs.
147         * elf/dl-support.c (_dl_load_adds): New variable.
148         (_dl_load_subs): Likewise.
149         * elf/dl-object.c (_dl_new_object): Increment dl_load_adds.
150         * elf/dl-close.c (_dl_close): Increment dl_load_subs.
151         * elf/link.h (struct dl_phdr_info): Add members dlpi_adds and
152         dlpi_subs.
153         * include/link.h: Likewise.
154         * elf/dl-iteratephdr.c (__dl_iterate_phdr): Initialize dlpi_adds
155         and dlpi_subs members.
156         (dl_iterate_phdr): Likewise.
157         * elf/tst-dlmodcount.c: New file.
158         * elf/Makefile (distribute): Mention tst-dlmodcount.c.
159         (tests): If build-shared, mention tst-dlmodcount.
160         ($(objpfx)tst-dlmodcount): If build-shared, build and
161         run tst-dlmodcount.
163 2004-01-22  Jakub Jelinek  <jakub@redhat.com>
165         * elf/dl-reloc.c (_dl_relocate_object): Move PT_GNU_RELRO protection
166         into...
167         (_dl_protect_relro): New routine.
168         * sysdeps/generic/ldsodefs.h (_dl_protect_relro): New prototype.
169         * elf/rtld.c (_dl_start_final): Copy l_relro_addr and l_relro_size
170         from bootstrap_map.
171         (_dl_main): Don't set GL(_dl_loaded)->l_relro_{addr,size} here.
172         Call _dl_protect_relro for libraries if prelinking.
174 2004-01-23  Richard Henderson  <rth@redhat.com>
176         * Versions.def (libm): Replace GLIBC_2.3.3 with GLIBC_2.3.4.
177         * sysdeps/alpha/fpu/Versions (libm): Likewise.
178         * sysdeps/alpha/fpu/cfloat-compat.h (cfloat_versions): Likewise.
179         * sysdeps/alpha/fpu/s_clog10f.c (clog10f): Likewise.
181 2004-01-22  Andreas Jaeger  <aj@suse.de>
183         * sysdeps/ieee754/dbl-64/e_pow.c (log2): Rename to my_log2 to
184         avoid warnings for builtin function log2.
186         * sysdeps/unix/sysv/linux/x86_64/setcontext.S: Add proper unwind
187         information.
189 2004-01-20  Ulrich Drepper  <drepper@redhat.com>
191         * sysdeps/unix/sysv/linux/sys/epoll.h: Add EPOLLONESHOT.
192         * sysdeps/unix/sysv/linux/x86_64/sys/epoll.h: Likewise.
193         Patch by Davide Libenzi.
195         * sysdeps/unix/sysv/linux/kernel-features.h: Define
196         __ASSUME_NO_CLONE_DETACHED for 2.6.2+ kernels.
198         * catgets/Makefile ($(objpfx)de.msg): Run sed in C locale.
200         * sysdeps/unix/sysv/linux/readahead.c (__readahead): Use off64_t
201         instead of loff_t.  Include <fcntl.h>.
202         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Add readahead prototype.
203         * sysdeps/unix/sysv/linux/arm/bits/fcntl.h: Likewise.
204         * sysdeps/unix/sysv/linux/cris/bits/fcntl.h: Likewise.
205         * sysdeps/unix/sysv/linux/hppa/bits/fcntl.h: Likewise.
206         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise.
207         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
208         * sysdeps/unix/sysv/linux/m68k/bits/fcntl.h: Likewise.
209         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
210         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
211         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
212         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise.
213         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
215         * elf/dl-load.c: Don't add attribute_relro to max_dirnamelen.
217         * sysdeps/generic/inttypes.h: Fix PRI*FAST{16,32} macros.
219 2003-12-31  Bruno Haible  <bruno@clisp.org>
221         * iconvdata/iso_6937-2.c (to_ucs4): Map 0x7E to U+007E, not U+203E.
222         Map 0xA6 to U+0023. Map 0xA8 to U+00A4.
223         (to_ucs4_comb): Map 0xC5 0x20 to U+00AF.
224         (from_ucs4): Map U+00ED to 0xC2 0x69, not 0xC2 0xE9.
225         (BODY for TO_LOOP): Don't map U+02DC. Map U+02DD to 0xCD 0x20, not
226         0x00 0x20. Don't map U+2500..U+25E3.
228 2004-01-19  Jakub Jelinek  <jakub@redhat.com>
230         * posix/regexec.c (get_subexp): Remove bkref_str variable.
231         Extend buffers if needed before comparisons.
232         (get_subexp_sub): Handle clean_state_log_if_needed failure.
234 2004-01-17  Ulrich Drepper  <drepper@redhat.com>
236         * sysdeps/i386/i486/bits/atomic.h (atomic_add): Fix test for using
237         atomic_decrement.  Patch by Davin McCall.
239 2004-01-13  Daniel Jacobowitz  <drow@mvista.com>
241         * sysdeps/powerpc/nofpu/sim-full.c (__sim_exceptions)
242         (__sim_disabled_exceptions, __sim_round_mode): Declare with
243         hidden data and nocommon.
244         * sysdeps/powerpc/nofpu/soft-supp.h (__sim_exceptions)
245         (__sim_disabled_exceptions, __sim_round_mode): Use
246         libc_hidden_proto.
247         * sysdeps/powerpc/soft-fp/sfp-machine.h (__sim_exceptions)
248         (__sim_disabled_exceptions, __sim_round_mode): Likewise.
250 2004-01-16  Ulrich Drepper  <drepper@redhat.com>
252         * elf/elf.h: Define PT_IA_64_HP_OPT_ANOT, PT_IA_64_HP_HSL_ANOT, and
253         PT_IA_64_HP_STACK.
255 2004-01-16  Richard Henderson  <rth@redhat.com>
257         * include/unistd.h (__libc_enable_secure): Mark attribute_relro.
258         (__libc_enable_secure_internal): Likewise.
260         * elf/dl-load.c: Don't declare __libc_stack_end.
261         * sysdeps/generic/libc-start.c: Likewise.
262         * sysdeps/unix/sysv/linux/dl-execstack.c: Likewise.
263         * sysdeps/generic/segfault.c: Likewise.  Include ldsodefs.h.
264         * sysdeps/generic/backtrace.c: Likewise.
266 2004-01-15  Ulrich Drepper  <drepper@redhat.com>
268         * Versions.def: Add GLIBC_2.3.4.
270 2004-01-15  Richard Henderson  <rth@redhat.com>
272         * sysdeps/unix/alpha/sysdep.h: Revert last change.
274 2004-01-15  Richard Henderson  <rth@redhat.com>
276         * sysdeps/alpha/dl-machine.h (RTLD_START): Use _dl_argv_internal.
278         * sysdeps/unix/alpha/sysdep.h [PIC] (SYSCALL_ERROR_HANDLER): Use
279         !samegp relocation.
281 2004-01-15  Richard Henderson  <rth@redhat.com>
283         * sysdeps/unix/sysv/linux/alpha/Makefile [stdlib]: Process
284         ucontext-offsets.sym.
285         * sysdeps/unix/sysv/linux/alpha/getcontext.S: New file.
286         * sysdeps/unix/sysv/linux/alpha/makecontext.S: New file.
287         * sysdeps/unix/sysv/linux/alpha/setcontext.S: New file.
288         * sysdeps/unix/sysv/linux/alpha/swapcontext.S: New file.
289         * sysdeps/unix/sysv/linux/alpha/ucontext-offsets.sym: New file.
291 2004-01-15  Richard Henderson  <rth@redhat.com>
293         * sysdeps/unix/sysv/linux/alpha/rt_sigaction.S: Prefix stubs with
294         __syscall_, move nop inside, adjust users by +4.
296 2004-01-14  Steven Munroe  <sjmunroe@us.ibm.com>
298         * include/libc-symbols.h [HAVE_ASM_GLOBAL_DOT_NAME]
299         (_symbol_version): Use C_SYMBOL_DOT_NAME to create '.'ed symbols.
300         (_default_symbol_version): Use C_SYMBOL_DOT_NAME to create '.'ed
301         symbols.
302         * sysdeps/powerpc/Makefile: Add rtld-global-offsets.sym to
303         gen-as-const-headers.
304         * sysdeps/powerpc/elf/rtld-global-offsets.sym: New file.
305         * sysdeps/powerpc/sysdep.h: Define v# symbols for vector registers.
306         Define PPC_FEATURE_* masks for Aux Vector AT_HWCAP.
307         * sysdeps/unix/sysv/linux/kernel-features.h
308         (__ASSUME_SWAPCONTEXT_SYSCALL): Define for PPC and 2.6.0 kernels.
309         * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h [!__WORDSIZE == 32]:
310         Declare mcontext_t inline and include altivec state for 64-bit.
311         * sysdeps/unix/sysv/linux/powerpc/powerpc64/Versions: Add GLIBC_2.3.4
312         versions for setcontext, getcontext, and swapcontext.
314         * sysdeps/unix/sysv/linux/powerpc/powerpc64/Versions: Add GLIBC_2.3.4
315         versions for setcontext, getcontext, swapcontext, and makecontext.
316         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S
317         (__getcontext):  Upgrade to save Altivec regs and version GLIBC_2_3_4.
318         [SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)] (__novec_getcontext):
319         Compatible with GLIBC_2.3.3 release.
320         * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S
321         (__makecontext): Use parm save area instead of compiler_dw to hold
322         context pointer.
323         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S
324         (__setcontext):  Upgrade to restore Altivec regs and version
325         GLIBC_2_3_4.
326         [SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)] (__novec_setcontext):
327         Compatible with GLIBC_2.3.3 release.
328         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S
329         (__swapcontext): Upgrade to swap Altivec regs and version GLIBC_2_3_4.
330         [SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)] (__novec_swapcontext):
331         Compatible with GLIBC_2.3.3 release.
332         * sysdeps/unix/sysv/linux/powerpc/powerpc64/ucontext_i.h
333         (SIGCONTEXT_V_REGS_PTR, SIGCONTEXT_V_RESERVE): Defined.
335 2004-01-12  Steven Munroe  <sjmunroe@us.ibm.com>
337         * sysdeps/unix/sysv/linux/powerpc/powerpc32/Versions: Add GLIBC_2.3.4
338         versions for setcontext, getcontext, swapcontext, and makecontext.
339         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S
340         (__getcontext):  Upgrade to save Altivec regs and version GLIBC_2_3_4.
341         [SHLIB_COMPAT (libc, GLIBC_2_3_3, GLIBC_2_3_4)] (__novec_getcontext):
342         Compatible with GLIBC_2.3.3 release.
343         * sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S
344         (__makecontext): Upgrade to align for Altivec regs and version
345         GLIBC_2_3_4.
346         [SHLIB_COMPAT (libc, GLIBC_2_3_3, GLIBC_2_3_4)] (__novec_makecontext):
347         Compatible with GLIBC_2.3.3 release.
348         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S
349         (__setcontext):  Upgrade to restore Altivec regs and version
350         GLIBC_2_3_4.
351         [SHLIB_COMPAT (libc, GLIBC_2_3_3, GLIBC_2_3_4)] (__novec_setcontext):
352         Compatible with GLIBC_2.3.3 release.
353         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S
354         (__swapcontext): Upgrade to swap Altivec regs and version GLIBC_2_3_4.
355         [SHLIB_COMPAT (libc, GLIBC_2_3_3, GLIBC_2_3_4)]
356         (__novec_swapcontext): Compatible with GLIBC_2.3.3 release.
357         * sysdeps/unix/sysv/linux/powerpc/powerpc32/ucontext_i.h:
358         (_UC_VSCR, _UC_VRSAVE): Define.
359         (_FRAME_BACKCHAIN, _FRAME_LR_SAVE,_FRAME_PARM_SAVE1,_FRAME_PARM_SAVE2,
360         _FRAME_PARM_SAVE3, _FRAME_PARM_SAVE4): Defined.
362 2004-01-15  Ulrich Drepper  <drepper@redhat.com>
364         * elf/rtld.c: Handle platforms with HP_TIMING_NONAVAIL defined.
366 2004-01-16  Alfred M. Szmidt  <ams@kemisten.nu>
368         * sysdeps/generic/dl-execstack.c (_dl_make_stack_executable): Adjust
369         parameter type.
371 2004-01-15  Ulrich Drepper  <drepper@redhat.com>
373         * elf/elf.h: Fix typo in comment.
375         * sysdeps/generic/dl-sysdep.c: Initialize __libc_stack_end.
376         * elf/rtld.c: Initialize _dl_argv to allow aliasing.
378         * resolv/resolv.h: Add RES_USEBSTRING.
379         * resolv/res_debug.c (p_option): Add handling for RES_USE_INET6,
380         RES_ROTATE, RES_NOCHECKNAME, and RES_USEBSTRING.
381         * resolv/res_init.c (res_setioptions): Recognize ip6-bytestring.
382         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Only perform
383         bytestring IPv6 lookup with RES_USEBSTRING option is selected.
384         Otherwise use the two nibble formats.
386 2004-01-14  Ulrich Drepper  <drepper@redhat.com>
388         * configure.in: Define HAVE_Z_RELRO if the linker supports -z relro.
389         * config.h.in: Add entry for HAVE_Z_RELRO.
390         * include/libc-symbols.h: Define attribute_relro.
391         * elf/dl-load.c: Add attribute_relro to env_path_list, capstr, ncapstr,
392         max_capstrlen, and max_dirnamelen definitions.
393         * elf/rtld.c: Add attribute_relro to _dl_argc, _dl_argv, _dl_skip_args,
394         load_time, start_time, library_path, preloadlist, version_info,
395         any_debug.
396         Remove rtld_total_time.  Make it a local variable.  Pass pointer to
397         it to print_statistics.  Change print_statistics accordingly.
398         * sysdeps/generic/dl-sysdep.c: Add attribute_relro to _dl_auxv.  Use
399         attribute_relro instead of explicitly assigning variable to the
400         .data.rel.ro section for __libc_enable_secure and __libc_stack_end.
401         * sysdeps/generic/ldsodefs.h: Declare __libc_stack_end, _dl_argc,
402         _dl_argv, _dl_argv_internal with attribute_relro.
404 2004-01-13  Segher Boessenkool  <boessen@de.ibm.com>
406         * Makerules (gen-as-const): Don't silently continue on failure.
408 2004-01-14  Steven Munroe  <sjmunroe@us.ibm.com>
410         * sysdeps/generic/dl-sysdep.c: Define __libc_stack_end with
411         rtld_hidden_data_def.
413 2004-01-14  Ulrich Drepper  <drepper@redhat.com>
415         * libio/libio.h: Add const to function tables types.
416         * libio/libioP.h: Likewise.
417         * login/utmp-private.h: Likewise.
418         * libio/fileops.c: Add const to jump table variable definition.
419         * libio/genops.c: Likewise.
420         * libio/iofopncook.c: Likewise.
421         * libio/iopopen.c: Likewise.
422         * libio/memstream.c: Likewise.
423         * libio/obprintf.c: Likewise.
424         * libio/oldfileops.c: Likewise.
425         * libio/oldiopopen.c: Likewise.
426         * libio/strops.c: Likewise.
427         * libio/vsnprintf.c: Likewise.
428         * libio/vswprintf.c: Likewise.
429         * libio/wfileops.c: Likewise.
430         * libio/wstrops.c: Likewise.
431         * login/getutent_r.c: Likewise.
432         * login/getutid_r.c Likewise.
433         * login/getutline_r.c: Likewise.
434         * sysdeps/generic/utmp_file.c: Likewise.
436 2004-01-09  Bruno Haible  <bruno@clisp.org>
438         * intl/gmo.h (MO_REVISION_NUMBER_WITH_SYSDEP_I): New definition.
439         * intl/loadmsgcat.c (get_sysdep_segment_value): Handle "I".
440         (_nl_load_domain): Treat major revision 1 like major revision 0.
442 2004-01-11  Bruno Haible  <bruno@clisp.org>
444         * stdio-common/vfprintf.c (vfprintf): Disallow the 'I' flag after
445         width or precision has been seen.
447 2004-01-08  Bruno Haible  <bruno@clisp.org>
449         * intl/loadmsgcat.c (_nl_load_domain): When a string pair uses a system
450         dependent segment not known to this version of the library, ignore
451         the string pair instead of crashing.
453 2004-01-13  Ulrich Drepper  <drepper@redhat.com>
455         * configure.in: Rewrite test to give gcc to clean up after itself.
456         Patch by Greg Schafer.
458         * posix/regex.c: Support crappy compilers and platforms which have
459         problems with alloca.
460         * posix/regex_internal.h: Likewise.
461         Patch by Paolo Bonzini.
463 2004-01-12  Paolo Bonzini  <bonzini@gnu.org>
465         * posix/regcomp.c [_LIBC && !RE_ENABLE_I18N]:
466         Drop code to support this, it is never true.
467         (build_range_exp) [!_LIBC]: Do not create a range
468         in MBCSET for a single-byte character set.
469         (build_range_exp) [_LIBC]: Do not create a range
470         in MBCSET for a single-byte character set without
471         collation elements.
472         (init_dfa): Do not conditionalize on _LIBC, it
473         just makes the code less clear.
474         (parse_bracket_exp): Use NON_MATCH variable in
475         addition to "mbcset->non_match", not as an
476         alternative.
477         (build_charclass_op): rename NOT parameter to
478         NON_MATCH, use it instead of declaring a variable.
479         (parse_bracket_exp) [!_LIBC]: Pass NULL for MBCSET
480         if the character set is single-byte.
482 2004-01-14  Jakub Jelinek  <jakub@redhat.com>
484         * posix/regcomp.c (peek_token_bracket): Check remaining
485         string length before re_string_peek_byte (x, 1).
486         (parse_bracket_symbol): Likewise.
487         * posix/regex_internal.h (re_string_is_single_byte_char): Return
488         true at last byte in the string.
489         * posix/bug-regex22.c (main): Add new test.
491 2004-01-13  Ulrich Drepper  <drepper@redhat.com>
493         * sysdeps/generic/dl-sysdep.c: Move __libc_enable_secure into
494         .data.rel.ro.
496         * sysdeps/x86_64/dl-machine.h: Include <tls.h>.
498         * elf/rtld.c (_dl_start_final): Initialze __libc_stack_end here.
499         * sysdeps/generic/dl-sysdep.c: Define __libc_stack_end with
500         rtld_hidden_def and move into .data.rel.ro section.
501         * sysdeps/generic/ldsodefs.h: Declare __libc_stack_end with
502         rtld_hidden_proto.
503         * sysdeps/generic/libc-start.c: Only initialize __libc_stack_end here
504         if !SHARED.
506 2004-01-13  Richard Henderson  <rth@redhat.com>
508         * sysdeps/unix/sysv/linux/alpha/rt_sigaction.S: Fix typo.
510 2004-01-13  Ulrich Drepper  <drepper@redhat.com>
512         * sysdeps/unix/sysv/linux/dl-execstack.c
513         (_dl_make_stack_executable): Move common code in front.  Use
514         __builtin_expect.
516         * sysdeps/unix/sysv/linux/dl-execstack.c: Change interface.  Add
517         challenge for caller.
518         * sysdeps/generic/ldsodefs.h: Change declaration and type of hook
519         member in rtld_global appropriately.
520         * elf/dl-support.c: Likewise.
521         * elf/dl-load.c (_dl_map_object_from_fd): Take additional paramter.
522         Pass it on to the changed function.
523         (_dl_map_object): Pass new parameter to _dl_map_object_from_fd.
525 2004-01-13  Richard Henderson  <rth@redhat.com>
527         * sysdeps/alpha/bits/atomic.h (__arch_compare_and_exchange_xxx_8_int):
528         Cast old up to uint64_t before back down to inner width.
529         (__arch_compare_and_exchange_xxx_16_int): Likewise.
530         (__arch_compare_and_exchange_xxx_32_int): Likewise.
531         (__arch_compare_and_exchange_xxx_64_int): Likewise.
532         (__arch_compare_and_exchange_val_8_int): Cast result to
533         the type of the memory.
534         (__arch_compare_and_exchange_val_16_int): Likewise.
535         (__arch_compare_and_exchange_val_32_int): Likewise.
536         (__arch_compare_and_exchange_val_64_int): Likewise.
537         (atomic_compare_and_exchange_bool_acq): Use __atomic_bool_bysize.
538         (atomic_compare_and_exchange_bool_rel): Likewise.
540         * sysdeps/unix/alpha/sysdep.h: Select inline_syscall_r0_asm
541         based on HAVE___THREAD instead of USE_TLS.
543         * sysdeps/unix/sysv/linux/alpha/adjtime.c (ADJTIMEX32): New.
544         (__adjtimex_tv64): Use it.
546         * sysdeps/unix/sysv/linux/alpha/semctl.c (__new_semctl): Cast
547         to void* rather than directly to the compatibility structure type.
548         * sysdeps/unix/sysv/linux/alpha/shmctl.c (__new_shmctl): Likewise.
550         * sysdeps/unix/sysv/linux/alpha/sigaction.c (struct kernel_sigaction):
551         Forward declare.
553 2004-01-13  Richard Henderson  <rth@redhat.com>
555         * Versions.def (libm): Add GLIBC_2.3.3.
556         * sysdeps/alpha/fpu/Versions: Add __c1_c*f and c*f to GLIBC_2.3.3.
557         * sysdeps/alpha/fpu/cabsf.c, sysdeps/alpha/fpu/cargf.c,
558         sysdeps/alpha/fpu/cfloat-compat.h, sysdeps/alpha/fpu/cimagf.c,
559         sysdeps/alpha/fpu/conjf.c, sysdeps/alpha/fpu/crealf.c,
560         sysdeps/alpha/fpu/s_cacosf.c, sysdeps/alpha/fpu/s_cacoshf.c,
561         sysdeps/alpha/fpu/s_casinf.c, sysdeps/alpha/fpu/s_casinhf.c,
562         sysdeps/alpha/fpu/s_catanf.c, sysdeps/alpha/fpu/s_catanhf.c,
563         sysdeps/alpha/fpu/s_ccosf.c, sysdeps/alpha/fpu/s_ccoshf.c,
564         sysdeps/alpha/fpu/s_cexpf.c, sysdeps/alpha/fpu/s_clog10f.c,
565         sysdeps/alpha/fpu/s_clogf.c, sysdeps/alpha/fpu/s_cpowf.c,
566         sysdeps/alpha/fpu/s_cprojf.c, sysdeps/alpha/fpu/s_csinf.c,
567         sysdeps/alpha/fpu/s_csinhf.c, sysdeps/alpha/fpu/s_csqrtf.c,
568         sysdeps/alpha/fpu/s_ctanf.c, sysdeps/alpha/fpu/s_ctanhf.c: New files.
569         * sysdeps/alpha/fpu/bits/mathdef.h: Rename complex float
570         functions for gcc 3.3.
572         * sysdeps/generic/s_cacosf.c, sysdeps/generic/s_cacoshf.c,
573         sysdeps/generic/s_casinf.c, sysdeps/generic/s_casinhf.c,
574         sysdeps/generic/s_catanf.c, sysdeps/generic/s_catanhf.c,
575         sysdeps/generic/s_ccosf.c, sysdeps/generic/s_ccoshf.c,
576         sysdeps/generic/s_cexpf.c, sysdeps/generic/s_clog10f.c,
577         sysdeps/generic/s_clogf.c, sysdeps/generic/s_cpowf.c,
578         sysdeps/generic/s_cprojf.c, sysdeps/generic/s_csinf.c,
579         sysdeps/generic/s_csinhf.c, sysdeps/generic/s_csqrtf.c,
580         sysdeps/generic/s_ctanf.c, sysdeps/generic/s_ctanhf.c: Don't
581         weak_alias if the function name has been #defined.
583         * math/cabsf.c: Move ...
584         * sysdeps/generic/cabsf.c: ... here.
585         * math/cargf.c: Move ...
586         * sysdeps/generic/cargf.c: ... here.
587         * math/cimagf.c: Move ...
588         * sysdeps/generic/cimagf.c: ... here.
589         * math/conjf.c: Move ...
590         * sysdeps/generic/conjf.c: ... here.
591         * math/crealf.c: Move ...
592         * sysdeps/generic/crealf.c: ... here.
594 2004-01-13  Ulrich Drepper  <drepper@redhat.com>
596         * Makeconfig: Define relro-LDFLAGS if have-z-relro==yes.  Add it to
597         LDFLAGS.so and LDFLAGS-rtld.
598         (+link): Add relro-LDFLAGS.
599         * Makeconfig (shlib.lds): Place __libc_subfreeres, __libc_atexit, and
600         __libc_thread_subfreeres sections after .jcr section.
601         * config.make.in: Add have-z-relro.
602         * configure.in: Add check for -z relro option.
603         * include/link.h (struct link_map): Add relro_addr and relro_size
604         members.
605         * elf/dl-load.c (_dl_map_object_from_fd): Recognize PT_GNU_RELRO.
606         * elf/dl-reloc.c (_dl_relocate_object): At the end, make relro
607         part of loaded segments read-only.
608         * elf/elf.h: Define PT_GNU_RELRO.
609         * elf/rtld.c (_dl_start): Recognize PT_GNU_RELRO of ld.so.
610         (dl_main): Recognize PT_GNU_RELRO of the application.  Call
611         _dl_debug_initialize and initialize l_info[DT_DEBUG] before
612         relocations.
614 2004-01-12  Jakub Jelinek  <jakub@redhat.com>
616         * sysdeps/x86_64/strcspn.S: Fix typo in last patch.
618 2004-01-11  Andreas Jaeger  <aj@suse.de>
620         * sysdeps/x86_64/__longjmp.S: Add cfi directives.
622 2004-01-10  Andreas Jaeger  <aj@suse.de>
624         * sysdeps/unix/sysv/linux/x86_64/__start_context.S: Add cfi directives.
625         * sysdeps/unix/x86_64/sysdep.S (__syscall_error): Likewise.
626         * sysdeps/unix/sysv/linux/x86_64/vfork.S: Likewise.
627         * sysdeps/x86_64/strcspn.S: Likewise.
628         * sysdeps/x86_64/strspn.S: Likewise.
630 2004-01-08  Jakub Jelinek  <jakub@redhat.com>
632         * sysdeps/unix/sysv/linux/x86_64/clone.S (__clone): Add cfi_endproc
633         right before syscall and cfi_startproc before PSEUDO_END.
634         Clear %rbp in thread_start.
636 2004-01-05  Jakub Jelinek  <jakub@redhat.com>
638         * posix/regcomp.c (regcomp): Fix comment typo.
639         (regfree): Free preg->translate, clear buffer, allocated, fastmap
640         and translate fields.
642         * posix/regcomp.c (build_charclass, buld_charclass_op): Change first
643         argument to unsigned RE_TRANSLATE_TYPE.
644         * posix/regex_internal.h (re_string_t): Change trans type to
645         unsigned RE_TRANSLATE_TYPE.
646         * posix/regex_internal.c (re_string_construct_common): Cast
647         trans to unsigned RE_TRANSLATE_TYPE.
648         (re_string_peek_byte_case, re_string_fetch_byte_case): Avoid fast
649         path if pstr->trans.  Never translate the character through
650         pstr->trans.
651         * posix/Makefile (tests): Add bug-regex22.
652         (bug-regex22-ENV): Set.
653         * posix/bug-regex22.c: New test.
655 2004-01-02  Paolo Bonzini  <bonzini@gnu.org>
657         * posix/regex_internal.c (re_node_set_add_intersect,
658         re_node_set_merge): Rewritten.
659         (re_node_set_insert, re_node_set_remove_at):
660         Avoid memmove, we know what direction we should copy and that we
661         are copying 32-bit words.
662         (re_node_set_compare): Iterate backwards.
664 2003-12-30  Paul Eggert  <eggert@twinsun.com>
666         * time/mktime.c (verify): New macro.
667         (time_t_is_integer, twos_complement_arithmetic,
668         right_shift_propagates_sign, base_year_is_a_multiple_of_100,
669         C99_integer_division): Document these longstanding assumptions in the
670         code, and verify them at compile-time.
672 2004-01-02  Jakub Jelinek  <jakub@redhat.com>
674         * posix/regex_internal.h (re_match_context_t): Add dfa member.
675         * posix/regexec.c (match_ctx_free_subtops, search_cur_bkref_entry,
676         match_ctx_add_sublast, sift_ctx_init, acquire_init_state_context,
677         prune_impossible_nodes, check_halt_state_context, proceed_next_node,
678         sift_states_backward, update_cur_sifted_state, check_dst_limits,
679         check_dst_limits_calc_pos, sift_states_bkref, transit_state,
680         check_subexp_matching_top, transit_state_sb, transit_state_mb,
681         transit_state_bkref, get_subexp, get_subexp_sub, check_arrival,
682         check_arrival_add_next_nodes, expand_bkref_cache, check_node_accept):
683         Remove dfa parameter.  Get dfa from mctx.  Adjust callers.
684         (re_search_internal): Initialize mctx.dfa.
686         * posix/regex_internal.c (re_node_set_insert): Remove unused variables.
688         * posix/regex_internal.h (re_dfa_t): Add syntax field.
689         * posix/regcomp.c (parse): Initialize dfa->syntax.
690         * posix/regexec.c (acquire_init_state_context,
691         prune_impossible_nodes, check_matching, check_halt_state_context,
692         proceed_next_node, sift_states_iter_mb, sift_states_backward,
693         update_cur_sifted_state, sift_states_bkref, transit_state,
694         transit_state_sb, transit_state_mb, transit_state_bkref,
695         get_subexp, get_subexp_sub, check_arrival, expand_bkref_cache,
696         build_trtable): Remove preg argument, add dfa argument instead
697         and remove dfa = preg->buffer initialization in the body.
698         Adjust all callers.
699         (check_node_accept_bytes, group_nodes_into_DFAstates,
700         check_node_accept): Likewise.  Use dfa->syntax instead of
701         preg->syntax.
702         (check_arrival_add_next_nodes): Remove preg argument.
704         * posix/regex_internal.h (re_match_context_t): Make input
705         re_string_t instead of a pointer to it.
706         * posix/regex_internal.c (re_string_construct_common): Don't clear
707         pstr here...
708         (re_string_construct): ... but only here.
709         * posix/regexec.c (match_ctx_init): Remove input argument.  Don't
710         initialize fields to zero.
711         (re_search_internal): Move input into mctx.input.
712         (acquire_init_state_context, check_matching,
713         check_halt_state_context, proceed_next_node,
714         clean_state_log_if_needed, sift_states_bkref, sift_states_iter_mb,
715         transit_state, transit_state_sb, transit_state_mb,
716         transit_state_bkref, get_subexp, check_arrival,
717         check_arrival_add_next_nodes, check_node_accept, extend_buffers):
718         Change mctx->input into &mctx->input and mctx->input->field into
719         mctx->input.field.
721 2004-01-02  Jakub Jelinek  <jakub@redhat.com>
722             Paolo Bonzini  <bonzini@gnu.org>
724         * posix/regex_internal.h (re_const_bitset_ptr_t): New type.
725         (re_string_t): Add newline_anchor, word_char and word_ops_used fields.
726         (re_dfa_t): Change word_char type to bitset.  Add word_ops_used field.
727         (re_string_context_at, re_string_reconstruct): Remove last argument.
728         * posix/regex_internal.c (re_string_allocate): Initialize
729         pstr->word_char and pstr->word_ops_used.
730         (re_string_context_at): Remove newline_anchor argument.
731         Use input->newline_anchor instead, swap && conditions.
732         Only use IS_WIDE_WORD_CHAR if input->word_ops_used != 0.
733         Use input->word_char bitmap instead of IS_WORD_CHAR.
734         (re_string_reconstruct): Likewise.
735         Adjust re_string_context_at caller.
736         * posix/regexec.c (acquire_init_state_context,
737         check_halt_state_context, transit_state, transit_state_sb,
738         transit_state_mb, transit_state_bkref, check_arrival,
739         check_node_accept): Adjust re_string_context_at and
740         re_string_reconstruct callers.
741         (re_search_internal): Likewise.  Set input.newline_anchor.
742         (build_trtable): Use dfa->word_char bitmap instead of IS_WORD_CHAR.
743         * posix/regcomp.c (init_word_char): Change return type to void.
744         Set dfa->word_ops_used.
745         (free_dfa_content): Don't free dfa->word_char.
746         (parse_expression): Remove error handling for init_word_char.
748 2004-01-01  Paolo Bonzini  <bonzini@gnu.org>
750         * posix/regex_internal.h (re_dfastate_t): Fix size of the CONTEXT
751         bitfield.
753         * posix/regex_internal.c (re_node_set_insert):  Rewrite.
755 2004-01-01  Ulrich Drepper  <drepper@redhat.com>
757         * posix/getconf.c: Update copyright year.
758         * nss/getent.c: Likewise.
759         * nscd/nscd_nischeck.c: Likewise.
760         * iconv/iconvconfig.c: Likewise.
761         * iconv/iconv_prog.c: Likewise.
762         * elf/ldconfig.c: Likewise.
763         * catgets/gencat.c: Likewise.
764         * csu/version.c: Likewise.
765         * elf/ldd.bash.in: Likewise.
766         * elf/sprof.c (print_version): Likewise.
767         * locale/programs/locale.c: Likewise.
768         * locale/programs/localedef.c: Likewise.
769         * nscd/nscd.c (print_version): Likewise.
770         * debug/xtrace.sh: Likewise.
771         * malloc/memusage.sh: Likewise.
772         * malloc/mtrace.pl: Likewise.
774 2004-01-01  Petter Reinholdtsen  <pere@hungry.com>
776         * stdlib/strfmon.c: Make formatting of left-justified currency
777         values match the the POSIX standard.  When using format string
778         "[%-14#5.4n]" to print -123.45, the result should be
779         "[-$   123.4500 ]", not "[-$123.4500    ]".
781 2004-01-01  Andreas Jaeger  <aj@suse.de>
783         * resolv/Makefile (generated): New.
785 2003-12-31  Joseph S. Myers  <jsm@polyomino.org.uk>
787         * CONFORMANCE: Update.
789 2003-12-30  Paul Eggert  <eggert@twinsun.com>
791         * time/mktime.c: (my_mktime_localtime_r):
792         Remove.  All uses changed to __localtime_r.
793         (__localtime_r) [!defined _LIBC]: New macro.  Include "time_r.h" to
794         get its implementation.
795         Fix compile-command to allow for TIME_R_POSIX.
797         * time/strftime.c (my_strftime_gmtime_r, my_strftime_localtime_r):
798         Remove.  All uses changed to __localtime_r and __gmtime_r.
799         (__gmtime_r, __localtime_r) [!HAVE_TM_GMTOFF]: New macros.
800         Include "time_r.h" to get their implementations.
802         * time/timegm.c: Allow use in GNU applications outside glibc.
803         [defined HAVE_CONFIG_H]: Include <config.h>.
804         [!defined _LIBC]: Include "timegm.h", <time_r.h>.
805         Define __gmtime_r, and declare __mktime_internal.
806         (timegm): Define via a prototype, since we can safely assume C89 now.
808         * time/mktime.c (check_result): Use less-confusing report format.
809         "long" -> "long int", as per usual GNU style.
810         (main): Likewise.
811         Don't loop if the iteration overflows time_t.
812         Allow a negative step in the iteration.
814         * time/mktime.c: Assume freestanding C89 or better.
815         (HAVE_LIMITS_H, STDC_HEADERS) [defined _LIBC]: Remove;
816         assume they're 1.
817         (__P): Remove; not used.
818         (CHAR_BIT, INT_MIN, INT_MAX): Remove; <limits.h> defines them.
819         (mktime, not_equal_tm, print_tm, check_result, main): Use prototypes.
820         Prototypes use const * where appropriate.
821         (main) [DEBUG]: Fix typo in testing code uncovered by above changes,
822         which caused the testing code to dump core on some hosts.
824 2003-12-31  Ulrich Drepper  <drepper@redhat.com>
826         * locale/setlocale.c (setlocale): Avoid duplicating locale names
827         if we can reuse old strings.
829         * inet/rcmd.c: Provide better error message in case of unknown
830         host.  Remove USE_IN_LIBIO.
832         * nscd/nscd.init: Updated version, more conforming with current
833         init file standards.
835         * nscd/nscd-client.h (_PATH_NSCDPID): Move the file into
836         /var/run/nscd directory.
837         (_PATH_NSCDSOCKET): Likewise.
839         * test-skeleton.c (timeout_handler): Fix error message.
841         * elf/dl-dst.h (DL_DST_REQUIRED): Avoid the complex operations if
842         CNT == 0.
844 2003-12-30  Jakub Jelinek  <jakub@redhat.com>
846         * posix/regexec.c (get_subexp): Only set bkref_str after the first
847         loop, use buf + bkref_str_off in the loop instead.
848         * posix/bug-regex11.c (tests): Add 3 new tests.
850         * posix/regexec.c (clean_state_log_if_need): Rename to...
851         (clean_state_log_if_needed): ...this.
852         (transit_state_mb, get_subexp_sub): Adjust callers.
854         * sunrpc/pmap_clnt.c (pmap_set): Do CLNT_DESTROY even if CLNT_CALL
855         failed.  Reported by Steve Grubb.
857 2003-12-29  Ulrich Drepper  <drepper@redhat.com>
859         * elf/elf.h: Add a few definitions from Solaris 9.
861 2003-12-29  Andreas Schwab  <schwab@suse.de>
863         * stdio-common/Makefile (CFLAGS-errlist.c, CFLAGS-siglist.c): Add
864         $(fno_unit_at_a_time) to avoid reordering assembler output.
866 2003-12-29  Jakub Jelinek  <jakub@redhat.com>
868         * posix/regexec.c (re_copy_regs): Revert comment change.
869         Avoid memory leak if realloc fails.
870         (proceed_next_node): Return -2 if re_node_set_insert fails.
871         Return -2 if push_fail_stack fails.
872         (push_fail_stack): Change fs->alloc only after successful realloc.
873         (pop_fail_stack): Formatting.
874         (set_regs): If proceed_next_node returns -2, free eps_via_nodes and fs.
875         (check_arrival_add_next_nodes): Merge identical statements
876         from if branches.
878         * signal/Makefile (tests): Add tst-raise.
879         * signal/tst-raise.c: New test.
881 2003-12-28  Ulrich Drepper  <drepper@redhat.com>
883         * posix/regcomp.c (mark_opt_subexp_iter): Declare IDX as int.
885         * posix/regexec.c (re_copy_regs): Fix testing for failed allocation.
886         (push_fail_stack): Add missing check for failed memory allocation.
888         * libio/libio.h: Use __builtin_expect in _IO_getc_unlocked,
889         _IO_peekc_unlocked, _IO_putc_unlocked, _IO_getwc_unlocked, and
890         _IO_putwc_unlocked.
892 2003-12-28  Andreas Jaeger  <aj@suse.de>
894         * sysdeps/ieee754/dbl-64/e_j0.c (__ieee754_y0): Raise only
895         overflow for 0 as argument. Raise Invalid exception for negative args.
896         * sysdeps/ieee754/dbl-64/e_jn.c (__ieee754_yn): Likewise.
897         * sysdeps/ieee754/dbl-64/e_j1.c (__ieee754_y0): Likewise.
898         * sysdeps/ieee754/ldb-128/e_jnl.c (__ieee754_ynl): Likewise.
899         * sysdeps/ieee754/ldb-128/e_j0l.c (__ieee754_y0l): Likewise.
900         * sysdeps/ieee754/ldb-128/e_j1l.c (__ieee754_y1l): Likewise.
901         * sysdeps/ieee754/ldb-96/e_jnl.c (__ieee754_ynl): Likewise.
902         * sysdeps/ieee754/ldb-96/e_j0l.c (__ieee754_y0l): Likewise.
903         * sysdeps/ieee754/ldb-96/e_j1l.c (__ieee754_y1l): Likewise.
904         * sysdeps/ieee754/flt-32/e_jnf.c (__ieee754_ynf): Likewise.
905         * sysdeps/ieee754/flt-32/e_j0f.c (__ieee754_y0f): Likewise.
906         * sysdeps/ieee754/flt-32/e_j1f.c (__ieee754_y1f): Likewise.
908         * math/libm-test.inc (yn_test): Expect invalid exception for
909         negative arguments.
910         (y0_test): Likewise.
911         (y1_test): Likewise.
913         * sysdeps/ieee754/dbl-64/e_exp.c (__ieee754_exp): Do not raise
914         execptions for exp(NaN).
916 2003-12-23  Paolo Bonzini  <bonzini@gnu.org>
918         * posix/regex_internal.c (re_dfa_add_node): Initialize opt_subexp.
919         * posix/regex_internal.h (re_token_type_t): Put OP_DUP_PLUS
920         among the tokens, rather than among the epsilon-transiting nodes.
921         (re_token_t): Add the opt_subexp flag.
922         * posix/regcomp.c (optimize_utf8, calc_first,
923         calc_next, calc_epsdest): Don't consider OP_DUP_PLUS.
924         (mark_opt_subexp, mark_opt_subexp_iter): New functions.
925         (parse_dup_op): Mostly rewritten, lowering OP_DUP_PLUS to
926         OP_DUP_ASTERISK and marking optional subexpressions
927         as such using mark_opt_subexp.
928         * posix/regexec.c (set_regs): Initialize PREV_INDEX_MATCH
929         and pass it to update_regs.
930         (update_regs): Use the PREV_INDEX_MATCH parameter, together
931         with the opt_subexp flag, in order to discard a final empty
932         match of a repeated subexpression.
933         * posix/BOOST.tests: Adjust test vectors.
934         * posix/PCRE.tests: Likewise.
935         * posix/rxspencer/tests: Likewise.
937 2000-05-22  Jakub Jelinek  <jakub@redhat.com>
939         * sysdeps/i386/fpu/bits/mathinline.h (__expm1_code): Avoid using ?:
940         with omitted middle operand.
942 2003-12-22  Jakub Jelinek  <jakub@redhat.com>
944         * posix/regcomp.c: Remove C99-ism.
945         * posix/tst-rxspencer.c: Likewise.
946         Based on a patch by Alex Davis <alex14641@yahoo.com>.
948 2003-12-17  Paolo Bonzini  <bonzini@gnu.org>
950         * posix/regex_internal.h [!_LIBC] (internal_function): Define.
951         (re_string_allocate, re_string_construct, re_string_reconstruct,
952         re_string_realloc_buffers, build_wcs_buffer,
953         build_wcs_upper_buffer, build_upper_buffer,
954         re_string_translate_buffer, re_string_destruct,
955         re_string_elem_size_at, re_string_char_size_at,
956         re_string_wchar_at, re_string_context_at,
957         re_node_set_alloc, re_node_set_init_1
958         re_node_set_init_2, re_node_set_init_copy,
959         re_node_set_add_intersect, re_node_set_init_union,
960         re_node_set_merge, re_node_set_insert
961         re_node_set_compare, re_node_set_contains
962         re_node_set_remove_at, re_dfa_add_node,
963         re_acquire_state, re_acquire_state_context,
964         free_state): Add internal_function to declaration.
966         * posix/regexec.c (match_ctx_init, match_ctx_clean,
967         match_ctx_free, match_ctx_free_subtops,
968         match_ctx_add_entry, search_cur_bkref_entry,
969         match_ctx_clear_flag, match_ctx_add_subtop,
970         match_ctx_add_sublast, sift_ctx_init,
971         re_search_internal, re_search_2_stub, re_search_stub,
972         re_copy_regs, acquire_init_state_context,
973         prune_impossible_nodes, check_matching,
974         check_halt_node_context, check_halt_state_context
975         update_regs, proceed_next_node, push_fail_stack,
976         pop_fail_stack, set_regs, free_fail_stack_return,
977         sift_states_iter_mb, sift_states_backward
978         update_cur_sifted_state, add_epsilon_src_nodes,
979         sub_epsilon_src_nodes, check_dst_limits,
980         check_dst_limits_calc_pos, check_subexp_limits,
981         sift_states_bkref, clean_state_log_if_need,
982         merge_state_array, transit_state,
983         check_subexp_matching_top, transit_state_sb,
984         transit_state_mb, transit_state_bkref,
985         get_subexp, get_subexp_sub, find_subexp_node,
986         check_arrival, check_arrival_add_next_nodes,
987         find_collation_sequence_value, check_arrival_expand_ecl,
988         check_arrival_expand_ecl_sub, expand_bkref_cache,
989         build_trtable, check_node_accept_bytes, extend_buffers,
990         group_nodes_into_DFAstates, check_node_accept): Likewise.
992         * posix/regex_internal.c (re_string_construct_common,
993         re_string_skip_chars, create_newstate_common,
994         register_state, create_ci_newstate, create_cd_newstate,
995         calc_state_hash): Likewise.
996         (re_string_peek_byte_case, re_fetch_byte_case): Change
997         declaration from ANSI to K&R.
999 2003-12-16  Paolo Bonzini  <bonzini@gnu.org>
1001         * posix/regexec.c (build_trtable): Don't allocate the trtable
1002         until state->word_trtable is known.  Don't hardcode UINT_BITS
1003         iterations on each bitset item.
1005 2003-12-22  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>
1007         * sysdeps/unix/sysv/linux/ia64/dl-static.c (_dl_static_init):
1008         Initialize REF before passing it to _dl_lookup_symbol.
1010 2003-12-21  Roland McGrath  <roland@frob.com>
1012         * sysdeps/mach/hurd/dl-sysdep.c (_exit): Define with attribute_hidden.
1014 2003-12-21  Jakub Jelinek  <jakub@redhat.com>
1016         * posix/regcomp.c (duplicate_node, duplicate_node_closure): Revert
1017         2003-11-24 changes.
1018         * posix/regexec.c (group_nodes_into_DFAstates): For CHARACTER with
1019         NEXT_{,NOT}WORD_CONSTRAINT check word_char bit.
1020         * posix/bug-regex19.c (tests): Add new tests.
1022         * posix/regexec.c (check_dst_limits_calc_pos): Fix formatting.
1024         * posix/regcomp.c (parse_dup_op): Return NULL if dup_elem is NULL,
1025         after checking syntax.  Optimize.
1026         (calc_first): Fix comment.
1027         * posix/bug-regex13.c (tests): Add new tests.
1029 2003-12-21  Roland McGrath  <roland@redhat.com>
1031         * manual/arith.texi (Parsing of Integers): Typo fix.
1033 2003-12-20  Roland McGrath  <roland@frob.com>
1035         * sysdeps/generic/ifreq.c (__ifreq) [_HAVE_SA_LEN]: Fix typo:
1036         add missing dereference of IFREQS before counting loop.
1038 2003-12-21  Andreas Schwab  <schwab@suse.de>
1040         * sysdeps/m68k/m68020/bits/atomic.h: Avoid matching memory
1041         constraints.
1043 2003-12-20  Ulrich Drepper  <drepper@redhat.com>
1045         * elf/rtld.c (dl_main): Optimize order of subexpressions in if().
1047 2003-12-18  Ulrich Drepper  <drepper@redhat.com>
1049         * stdio-common/printf_fp.c: Add support to use alternative decimal
1050         digits.
1051         * stdio-common/vfprintf.c (vfprintf): Pass use_outdigits flags to
1052         __printf_fp.  Patch by Hamed Malek <hamed@bamdad.org>.
1054 2003-12-18  Carlos O'Donell  <carlos@baldric.uwo.ca>
1056         * sysdeps/unix/sysv/linux/hppa/clone.S (__clone) [PIC]: Save PIC,
1057         reload PIC if we need to call __syscall_error, cleanup asm.
1059 2003-12-17  Carlos O'Donell  <carlos@baldric.uwo.ca>
1061         * sysdeps/hppa/fpu/fclrexcpt.c (feclearexcept): Right shift
1062         FE_ALL_EXCEPT before complimenting.
1063         * sysdeps/hppa/fpu/fegetenv.c (fegetenv): Use asm 'ma,' completer,
1064         and gcc '+r' constraint.
1065         * sysdeps/hppa/fpu/feholdexcpt.c (feholdexcept): Likewise.
1066         * sysdeps/hppa/fpu/fesetenv.c (fesetenv): Likewise.
1067         * sysdeps/hppa/fpu/feupdateenv.c (feupdateenv): Read raised
1068         exception bits, OR with envp, pass to fesetenv.
1069         * sysdeps/hppa/fpu/fraiseexcpt.c (feraiseexcept): Add delayed
1070         exception flushing, FE_UNDERFLOW is DBL_MIN/3.0, FE_INEXACT is
1071         triggered by M_PI/69.69 converted to single precision.
1072         * sysdeps/hppa/fpu/fsetexcptflg.c (fesetexceptflag): Set enable
1073         bits not raised exception bits.
1075         * sysdeps/hppa/Makefile: Add dl-symaddr and dl-fptr to the
1076         correct build strings.
1077         * sysdeps/hppa/dl-fptr.h: New file.
1078         * sysdeps/hppa/dl-fptr.c: Removed.
1079         * sysdeps/hppa/dl-symaddr.c (_dl_symbol_address): Use _dl_make_ftpr,
1080         remove const qualifier for map.
1081         (_dl_function_address): Removed.
1082         * sysdeps/hppa/dl-lookupcfg.h: DL_LOOKUP_ADDRESS must clear
1083         PLABEL32 bits, define DL_AUTO_FUNCTION_ADDRESS and
1084         DL_STATIC_FUNCTION_ADDRESS, DL_DT_INIT_ADDRESS and
1085         DL_DT_FINI_ADDRESS use the previous two macros.
1087 2003-12-17  Jakub Jelinek  <jakub@redhat.com>
1089         * malloc/mtrace.c (tr_old_memalign_hook): New variable.
1090         (tr_memalignhook): New function.
1091         (mtrace): Register tr_memalignhook.
1092         (muntrace): Deregister tr_memalignhook.
1093         * malloc/malloc.c (__posix_memalign): If __memalign_hook != NULL,
1094         call it directly instead of memalign_internal.
1096 2003-12-17  Ulrich Drepper  <drepper@redhat.com>
1098         * misc/mntent_r.c: Change encoding to match recently changed decoder.
1099         Patch by Alexander Achenbach <xela@slit.de>.
1101 2003-12-16  Steven Munroe  <sjmunroe@us.ibm.com>
1103         * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: Correct definition of
1104         vrregset_t.
1106 2003-12-16  Steven Munroe  <sjmunroe@us.ibm.com>
1108         * sysdeps/unix/sysv/linux/powerpc/sys/procfs.h [!__PPC64_ELF_H]: Extend
1109         conditional to include typedef elf_vrreg_t.
1111 2003-12-17  Paolo Bonzini  <bonzini@gnu.org>
1113         * posix/regexec.c (re_search_internal): Limit search to the
1114         beginning of the buffer if the initial states are empty for
1115         contexts that do not include CONTEXT_BEGBUF or, if
1116         !preg->newline_anchor, that do not include any one of
1117         CONTEXT_BEGBUF and CONTEXT_NEWLINE.
1119 2003-12-17  Andreas Jaeger  <aj@suse.de>
1121         * sysdeps/generic/system.c (__libc_system): Fix typo, reported by
1122         Kevin Pedretti <pedretti@ieee.org>.
1124 2003-12-17  Ulrich Drepper  <drepper@redhat.com>
1126         * elf/rtld.c: Don't use strong_alias to define _rtld_local.  This
1127         removes the visibility attributes which might be defined earlier
1128         for some gcc versions.  Instead spell out what strong_alias does
1129         plus the visibility.
1131 2003-12-16  Petter Reinholdtsen  <pere@hungry.com>
1133         * posix/regex_internal.h: Make sure the regex code compile
1134         with non-GCC compilers by hiding attributes.
1136 2003-12-16  Jakub Jelinek  <jakub@redhat.com>
1137             Paolo Bonzini  <bonzini@gnu.org>
1139         * posix/regexec.c (group_nodes_into_DFAstates): Never produce
1140         dests_ch items that are empty.
1142 2003-12-14  Paolo Bonzini  <bonzini@gnu.org>
1144         * posix/regexec.c (check_arrival): Remove duplicate test.
1146 2003-12-15  Ulrich Drepper  <drepper@redhat.com>
1148         * posix/regcomp.c: Make !RE_ENABLE_I18N work again.
1149         * posix/regex_internal.c: Likewise.
1150         * posix/regexec.c: Likewise.
1151         Patch by Paolo Bonzini.
1153 2003-12-14  Paolo Bonzini  <bonzini@gnu.org>
1155         * posix/regex_internal.c (re_acquire_state_context):
1156         Compare the node sets after all the other comparisons.
1158 2003-12-13  Paolo Bonzini  <bonzini@gnu.org>
1160         * posix/regexec.c (find_subexp_node, check_arrival,
1161         check_arrival_add_next_nodes, check_arrival_expand_ecl,
1162         check_arrival_expand_ecl_sub, expand_bkref_cache):
1163         Rename the FL_OPEN parameter to TYPE, which is either
1164         OP_OPEN_SUBEXP or OP_CLOSE_SUBEXP.  Callers adjusted.
1166 2003-12-12  Andreas Jaeger  <aj@suse.de>
1168         * sysdeps/unix/sysv/linux/x86_64/syscall.S: Pass also 6th argument
1169         to syscall.
1171 2003-12-11  Ulrich Drepper  <drepper@redhat.com>
1173         * sysdeps/unix/sysv/linux/kernel-features.h: Remove __ASSUME_VSYSCALL.
1174         There might always be processes which have no vDSO.
1175         * sysdeps/generic/dl-sysdep.c: Remove __ASSUME_VSYSCALL uses.
1176         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
1178 2003-12-11  Carlos O'Donell  <carlos@baldric.uwo.ca>
1180         * sysdeps/generic/dl-fptr.c (COMPARE_AND_SWAP): Pass new and old
1181         in the right order.
1183 2003-12-01  Jes Sorensen  <jes@wildopensource.com>
1185         * rt/tst-clock.c (do_test): Print message when skipping
1186         CLOCK_PROCESS_CPUTIME_ID test.
1188         * sysdeps/unix/sysv/linux/ia64/clock_getcpuclockid.c: New file.
1189         Provide CLOCK_PROCESS_CPUTIME_ID only if /proc/sal/itc_drift is 0.
1191 2003-12-02  David Mosberger  <davidm@hpl.hp.com>
1193         * sysdeps/ia64/elf/initfini.c: Add unwind info.
1195         * sysdeps/ia64/dl-machine.h (elf_machine_matches_host): Mark with
1196         attribute "unused".
1197         (elf_machine_dynamic): Mark with attributes "unused" and "const".
1198         (elf_machine_runtime_setup): Likewise.
1200         * sysdeps/generic/dl-fptr.c (make_fptr_table): Mark with
1201         attribute "always_inline".
1202         * sysdeps/ia64/dl-machine.h (__ia64_init_bootstrap_fdesc_table):
1203         Likewise.
1205         * configure.in: Check whether compiler has libunwind support.
1206         * config.make.in (have-cc-with-libunwind): New variable.
1207         * config.h.in (HAVE_CC_WITH_LIBUNWIND): New macro.
1208         * Makeconfig (gnulib): If have-cc-with-libunwind is "yes", also
1209         mention -lunwind.
1211 2003-11-12  David Mosberger  <davidm@hpl.hp.com>
1213         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Define DO_CALL_VIA_BREAK.
1214         Redefine DO_CALL to use vdso if supported, otherwise DO_CALL_VIA_BREAK.
1215         Likewise for DO_INLINE_SYSCALL.  Make INTERNAL_SYSCALL use
1216         DO_INLINE_SYSCALL.
1218         * sysdeps/unix/sysv/linux/ia64/vfork.S: Use DO_CALL_VIA_BREAK()
1219         instead of DO_CALL().
1221         * sysdeps/unix/sysv/linux/ia64/clone2.S: Use break directly instead
1222         of DO_CALL().
1224         * sysdeps/unix/sysv/linux/ia64/brk.S (__curbrk): Restructure it
1225         to take advantage of DO_CALL() macro.
1226         * sysdeps/unix/sysv/linux/ia64/setcontext.S: Likewise.
1227         * sysdeps/unix/sysv/linux/ia64/getcontext.S: Likewise.
1229         * elf/rtld.c (dl_main): Restrict dl_sysinfo_dso check to first
1230         program header.  On ia64, the check failed previously because
1231         there are two program headers.
1233 2003-12-10  Andreas Jaeger  <aj@suse.de>
1234             Ruediger Oertel  <ro@suse.de>
1236         * sysdeps/alpha/fpu/e_sqrt.c: Mark sqrt_data as used.
1238 2003-12-07  Ulrich Drepper  <drepper@redhat.com>
1240         * sysdeps/i386/fpu/s_nexttowardf.c: Construct overflow value correctly.
1241         * sysdeps/i386/fpu/s_nexttoward.c: Likewise.
1242         * sysdeps/ieee754/ldbl-128/s_nexttoward.c: Likewise.
1243         * sysdeps/ieee754/ldbl-96/s_nexttoward.c: Likewise.
1244         * sysdeps/generic/s_nexttowardf.c: Likewise.
1245         * math/Makefile (tests): Add bug-nexttoward.
1246         * math/bug-nexttoward.c: New file.
1248         * sysdeps/generic/s_nextafter.c: Make sure overflow exception is set.
1249         * sysdeps/ieee754/flt-32/s_nextafterf.c: Likewise.
1250         * math/bug-nextafter.c (main): Add tests for overflow and negative
1251         values.
1253 2003-12-06  Ulrich Drepper  <drepper@redhat.com>
1255         * math/Makefile (tests): Add bug-nextafter.
1256         * math/bug-nextafter.c: New file.
1257         * sysdeps/generic/s_nextafter.c: Construct overflow value correctly.
1258         * sysdeps/ieee754/flt-32/s_nextafterf.c: Likewise.
1259         * math/libm-test.inc (nextafter_test): Add test for overflow after
1260         +/-FLT_MAX etc.
1262 2003-12-04  Steven Munroe  <sjmunroe@us.ibm.com>
1264         * sysdeps/powerpc/fpu/fgetexcptflg.c (__fegetexceptflag): Add masking
1265         of fenv.
1266         * sysdeps/powerpc/nofpu/fgetexcptflg.c (__fegetexceptflag): Likewise.
1268 2003-12-05  Martin Schwidefsky  <schwidefsky@de.ibm.com>
1270         * sysdeps/s390/s390-32/elf/setjmp.S (setjmp, __setjmp): Add END
1271         statements.
1272         * sysdeps/s390/s390-64/elf/setjmp.S (setjmp, __setjmp): Likewise.
1273         * sysdeps/s390/s390-32/sysdep.h (ENTRY): Add cfi_startproc directive.
1274         (END): Add cfi_endproc directive.
1275         * sysdeps/s390/s390-64/sysdep.h (ENTRY, END): Likewise.
1276         * sysdeps/unix/sysv/linux/s390/s390-32/socket.S (__socket): Remove
1277         cfi_startproc and cfi_endproc directive.
1278         * sysdeps/unix/sysv/linux/s390/s390-64/socket.S (__socket): Likewise.
1279         * sysdeps/s390/s390-32/addmul_1.S (__mpn_addmul_1): Add CFI directives.
1280         * sysdeps/s390/s390-32/add_n.S (__mpn_add_n): Likewise.
1281         * sysdeps/s390/s390-64/add_n.S (__mpn_add_n): Likewise.
1282         * sysdeps/s390/s390-32/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
1283         Likewise.
1284         * sysdeps/s390/s390-64/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
1285         Likewise.
1286         * sysdeps/s390/s390-32/mul_1.S (__mpn_mul_1): Likewise.
1287         * sysdeps/s390/s390-32/sub_n.S (__mpn_sub_n): Likewise.
1288         * sysdeps/s390/s390-64/sub_n.S (__mpn_sub_n): Likewise.
1289         * sysdeps/unix/sysv/linux/s390/s390-32/mmap64.S (__mmap64): Likewise.
1290         * sysdeps/unix/sysv/linux/s390/s390-32/mmap.S (__mmap): Likewise.
1291         * sysdeps/unix/sysv/linux/s390/s390-64/mmap.S (__mmap): Likewise.
1292         * sysdeps/unix/sysv/linux/s390/s390-32/syscall.S (syscall): Likewise.
1293         * sysdeps/unix/sysv/linux/s390/s390-64/syscall.S (syscall): Likewise.
1294         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S (__syscall_error):
1295         Likewise.
1296         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S (__syscall_error):
1297         Likewise.
1298         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S (__clone): Add CFI
1299         directives. Move thread_start out of ENTRY/PSEUDO_END block to
1300         make backchain terminate.
1301         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S (__clone): Likewise.
1303         * sysdeps/s390/s390-32/backtrace.c (trace_arg): New structure.
1304         (unwind_backtrace, unwind_getip): New variables.
1305         (init, __backchain_backtrace, backtrace_helper): New functions.
1306         (__backtrace): Use unwind info for backtrace instead of backchain
1307         walking if the unwind functions can be found.
1308         * sysdeps/s390/s390-64/backtrace.c: Likewise.
1310         * sysdeps/unix/sysv/linux/s390/s390-32/posix_fadvise64.c: New file.
1312         * sysdeps/unix/sysv/linux/s390/sys/procfs.h (ELF_NGREG32): New #define.
1313         (elf_greg_t32, elf_gregset_t32, elf_fpregset_t32): New types.
1314         (elf_prstatus32, elf_prpsinfo32): New structures.
1315         (prgregset32_t, prfpregset32_t, prstatus32_t, prpsinfo32_t): New types.
1317         * scripts/data/c++-types-s390-linux-gnu.data: New file.
1318         * scripts/data/c++-types-s390x-linux-gnu.data: New file.
1320 2003-11-30  Petter Reinholdtsen  <pere@hungry.com>
1322         * stdlib/strfmon.c: Correct formatting of international currency
1323         values.  The international currency formatting should prefer the
1324         int_* values if they are set for a locale, and use the domestic
1325         values if the int_* values are unset.
1327 2003-12-03  Jakub Jelinek  <jakub@redhat.com>
1329         * posix/Makefile (distribute): Add BOOST.tests.
1330         (tests): Add tst-boost, depend on tst-boost-mem.
1331         (generated): Add tst-boost-mem and tst-boost.mtrace.
1332         (tst-boost-ARGS, tst-boost-ENV): Set.
1333         ($(objpfx)tst-boost-mem): New.
1334         * posix/tst-boost.c: New test.
1335         * posix/BOOST.tests: New file.
1337         * posix/Makefile (distribute): Add PCRE.tests.
1338         (tests): Add tst-pcre, depend on tst-pcre-mem.
1339         (generated): Add tst-pcre-mem and tst-pcre.mtrace.
1340         (tst-pcre-ARGS, tst-pcre-ENV): Set.
1341         ($(objpfx)tst-pcre-mem): New.
1342         * posix/tst-pcre.c: New test.
1343         * posix/PCRE.tests: New file.
1345 2003-12-02  Jakub Jelinek  <jakub@redhat.com>
1347         * intl/locale.alias: Use nb_NO instead of no_NO for bokm.l.
1349         * sysdeps/powerpc/fpu/libm-test-ulps: Regenerated.
1350         * sysdeps/s390/fpu/libm-test-ulps: Regenerated.
1352 2003-12-03  Ulrich Drepper  <drepper@redhat.com>
1354         * locale/programs/locarchive.c (enlarge_archive): Print size info
1355         only in verbose mode.
1357         * locale/iso-3166.def: Three letter code of Romania changed.
1359 2003-12-02  Roland McGrath  <roland@redhat.com>
1361         * scripts/config.sub: Update from master, timestamp='2003-10-20'.
1362         * scripts/config.guess: Update from master, timestamp='2003-10-20'.
1364 2003-11-30  Andreas Jaeger  <aj@suse.de>
1366         * config.make.in (fno-unit-at-a-time): Define.
1368         * configure.in: Add test for -fno-unit-at-a-time.
1369         Fix text for -fpie.
1371         * csu/Makefile (CFLAGS-initfini.s): Add $(fno_unit_at_a_time).
1372         * locale/Makefile (CFLAGS-loadlocale.c): Likewise.
1374 2003-12-01  Automatic
1376         * version.h (VERSION): Bump to 2.3.3.
1378 2003-11-30  Andreas Jaeger  <aj@suse.de>
1380         * stdio-common/vfprintf.c: Do not inline buffered_vfprintf to
1381         decrease stack usage.
1383 2003-11-30  Andreas Schwab  <schwab@suse.de>
1385         * sysdeps/unix/sysv/linux/m68k/sysdep.h (PSEUDO_ERRVAL)
1386         (PSEUDO_END_ERRVAL, ret_ERRVAL): Define.
1388 2003-11-29  Ulrich Drepper  <drepper@redhat.com>
1390         * misc/mntent_r.c (decode_name): Be compatible with util-linux and
1391         recognize \134 as well.
1393 2003-10-09  H.J. Lu  <hongjiu.lu@intel.com>
1395         * sysdeps/ia64/fpu/fraiseexcpt.c: Don't include <asm/fpu.h>.
1397 2003-10-08  H.J. Lu  <hongjiu.lu@intel.com>
1399         * sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h: Don't include
1400         <asm/fpu.h>.
1401         (struct ia64_fpreg): New definition.
1403         * sysdeps/unix/sysv/linux/ia64/sys/procfs.h: Don't include
1404         <asm/elf.h>.
1405         (ELF_NGREG): New #define.
1406         (ELF_NFPREG): Likewise.
1407         (elf_greg_t): New type.
1408         (elf_gregset_t): Likewise.
1409         (elf_fpreg_t): Likewise.
1410         (elf_fpregset_t): Likewise.
1412 2003-10-08  H.J. Lu  <hongjiu.lu@intel.com>
1414         * sysdeps/unix/sysv/linux/ia64/sys/ptrace.h: Include
1415         <sys/ucontext.h>.
1416         (__ptrace_request): Add PTRACE_GETREGS and PTRACE_SETREGS.
1417         (pt_all_user_regs): New type.
1419 2003-10-10  Simon Josefsson  <jas@extundo.com>
1421         * argp/argp-namefrob.h [!_LIBC]: Include mempcpy.h, strcase.h,
1422         strchrnul.h, strndup.h (from gnulib).
1423         * argp/argp-parse.c: Add alloca.h include snippet verbatim from
1424         Autoconf manual.
1425         * argp/argp-help.c: Replace alloca.h include snipper with verbatim
1426         Autoconf manual version.
1427         * argp/argp.h: Map __restrict to restrict or empty string when
1428         necessary, copied verbatim from posix/regex.h.
1430 2003-10-09  Steven Munroe  <sjmunroe@us.ibm.com>
1432         * Makefile: Allow for c++-types-$(config-machine)-$(config-os).data in
1433         addition to c++-types-$(base-machine)-$(config-os).data.
1434         * scripts/data/c++-types-powerpc-linux-gnu.data: New file.
1435         * scripts/data/c++-types-powerpc64-linux-gnu.data: New file.
1437 2003-11-28  Ulrich Drepper  <drepper@redhat.com>
1439         * misc/mntent_r.c (decode_name): Fix decoding of tab, add decoding
1440         of newline.
1441         * manual/sysinfo.texi (mtab): Adjust description accordingly.
1442         Reported by Andries.Brouwer@cwi.nl.
1444         * sysdeps/x86_64/fpu/libm-test-ulps: Add some more minor changes
1445         to compensate other setup.
1447 2003-11-27  Andreas Jaeger  <aj@suse.de>
1449         * sysdeps/x86_64/fpu/libm-test-ulps: Add ulps for new atan2 test.
1451         * math/libm-test.inc (atan2_test): Add test that run infinitly.
1452         Reported by "Willus" <etc231etc231@willus.com>.
1454 2003-11-27  Michael Matz  <matz@suse.de>
1456         * sysdeps/ieee754/dbl-64/mpsqrt.c (fastiroot): Fix 64-bit problem
1457         with wrong types.
1459 2003-11-28  Jakub Jelinek  <jakub@redhat.com>
1461         * posix/regexec.c (acquire_init_state_context): Make inline.
1462         Add always_inline attribute.
1463         (check_matching): Add BE macro.  Move if (cur_state->has_backref)
1464         into if (dfa->nbackref).
1465         (sift_states_backward): Fix comment.
1466         (transit_state): Add BE macro.  Move if (next_state->has_backref)
1467         into if (dfa->nbackref && next_state).  Don't check for next_state
1468         != NULL twice.
1469         * posix/regcomp.c (peek_token): Use opr.ctx_type instead of opr.idx
1470         for ANCHOR.
1471         (parse_expression): Only call init_word_char if word context will be
1472         needed.
1474         * posix/bug-regex11.c (tests): Add new tests.
1476         * posix/tst-regex.c: Include getopt.h.
1477         (timing): New variable.
1478         (main): Set timing to 1 if --timing argument is present.
1479         Add 2 new tests.
1480         (run_test, run_test_backwards): Handle timing.
1482 2003-11-27  Jakub Jelinek  <jakub@redhat.com>
1484         * posix/regex_internal.h (re_string_t): Remove mbs_case field.
1485         Add offsets, valid_raw_len, raw_len, raw_stop, mbs_allocated and
1486         offsets_needed fields.  Change icase, is_utf8 and map_notascii
1487         type from int bitfield to unsigned char.
1488         (MBS_ALLOCATED, MBS_CASE_ALLOCATED): Remove.
1489         (build_wcs_upper_buffer): Change prototype to return int.
1490         (re_string_peek_byte_case, re_string_fetch_byte_case): Remove
1491         defines, add prototypes.
1492         * posix/regex_internal.c (re_string_allocate): Don't initialize
1493         stop here.  Don't initialize mbs_case.  Set valid_raw_len.
1494         Use mbs_allocated instead of MBS_* macros.
1495         (re_string_construct): Don't initialize stop and valid_len here.
1496         Don't initialize mbs_case.  Use mbs_allocated instead of MBS_*
1497         macros.  Reallocate buffers if build_wcs_upper_buffer converted
1498         too few bytes.  Set valid_len to bufs_len only for single byte
1499         no translation and set in that case valid_raw_len as well.
1500         (re_string_realloc_buffers): Reallocate offsets if not NULL.
1501         Use mbs_allocated instead of MBS_ALLOCATED.  Don't reallocate
1502         mbs_case.
1503         (re_string_construct_common): Initialize raw_len, mbs_allocated,
1504         stop and raw_stop.
1505         (build_wcs_buffer): Apply pstr->trans before mbrtowc instead of
1506         after it.  Set valid_raw_len.  Don't set mbs_case.
1507         (build_wcs_upper_buffer): Return REG_NOERROR or REG_ESPACE.
1508         Only use the fast path if !pstr->offsets_needed.  Apply pstr->trans
1509         before mbrtowc instead of after it.  If upper case character
1510         uses different number of bytes than lower case, goto to the
1511         slow path.  Don't call towupper unnecessarily twice.  Set
1512         valid_raw_len as well.  Handle in the slow path the case if
1513         lower and upper case use different number of characters.
1514         Don't set mbs_case.
1515         (re_string_skip_chars): Use valid_raw_len instead of valid_len.
1516         (build_upper_buffer): Don't set mbs_case.  Add BE macro.  Set
1517         valid_raw_len.
1518         (re_string_translate_buffer): Set mbs instead of mbs_case.  Set
1519         valid_raw_len.
1520         (re_string_reconstruct): Use raw_len/raw_stop to initialize
1521         len/stop.  Clear valid_raw_len and offsets_needed when clearing
1522         valid_len.  Use mbs_allocated instead of MBS_* macros.
1523         Check original offset against valid_raw_len instead of valid_len.
1524         Remove mbs_case handling.  Adjust valid_raw_len together with
1525         valid_len.  If is_utf8 and looking for tip context, apply
1526         pstr->trans first.  If buffers start with partial multi-byte
1527         character, initialize mbs array as well if mbs_allocated.
1528         Check return value of build_wcs_upper_buffer.
1529         (re_string_peek_byte_case): New function.
1530         (re_string_fetch_byte_case): New function.
1531         (re_string_destruct): Use mbs_allocated instead of MBS_ALLOCATED.
1532         Don't free mbs_case.  Free offsets.
1533         * posix/regcomp.c (init_dfa): Only check if charset name is UTF-8
1534         if mb_cur_max == 6.
1535         * posix/regexec.c (re_search_internal): Initialize input.raw_stop
1536         as well.  Use valid_raw_len instead of valid_len when looking
1537         through fastmap.  Adjust registers through input.offsets.
1538         (extend_buffers): Allow build_wcs_upper_buffer to fail.
1539         * posix/bug-regex18.c (tests): Enable #ifdefed out tests.  Add new
1540         tests.
1542 2003-11-26  Jakub Jelinek  <jakub@redhat.com>
1544         * posix/regexec.c (check_subexp_limits): Only check close
1545         subexpression limitation if one is found.  Formatting.
1546         (sift_states_backward, check_arrival, check_arrival_add_next_nodes):
1547         Formatting.
1548         * posix/bug-regex11.c (tests): Enable most #ifdefed out tests.
1549         Add new test.
1551 2003-11-26  Ulrich Drepper  <drepper@redhat.com>
1553         * sysdeps/unix/sysv/linux/kernel-features.h
1554         (__ASSUME_PROT_GROWSUPDOWN): Define for 2.6.1 and up.
1555         * sysdeps/unix/sysv/linux/dl-execstack.c: Omit compatibility code
1556         if __ASSUME_PROT_GROWSUPDOWN is defined.
1558 2003-11-26  Andreas Jaeger  <aj@suse.de>
1560         * sysdeps/unix/sysv/linux/dl-execstack.c
1561         (_dl_make_stack_executable): Set dl_stack_flags always for
1562         success.
1564 2003-06-22  Petter Reinholdtsen  <pere@hungry.com>
1566         * locale/program/ld-monetary.c: Only check the first three
1567         characters in int_curr_symbol against ISO-4217, to make the
1568         separator character used by a locale independent of the content
1569         in iso-4217.def.
1570         * locale/iso-4217.def: Remove the space character from all
1571         currency values to get the new test code in ld-monetary.c working.
1573 2003-11-21  David Mosberger  <davidm@hpl.hp.com>
1575         * elf/soinit.c (_fini): Put _fini() in .init_array section if
1576         HAVE_INITFINI_ARRAY is defined.
1578 2003-11-25  Ulrich Drepper  <drepper@redhat.com>
1580         * sysdeps/i386/fpu/bits/mathinline.h: Introduce __libc_sqrtl symbol.
1581         Define it appropriately after last change.  Use it where __sqrtl
1582         was used.
1584 2003-11-25  H.J. Lu  <hongjiu.lu@intel.com>
1586         * sysdeps/i386/fpu/bits/mathinline.h (sqrt): Don't inline
1587         sqrt for gcc 3.3 and above.
1589 2003-11-25  Ulrich Drepper  <drepper@redhat.com>
1591         * posix/runptests.c (main): Make errors fatal.
1592         * posix/PTESTS: One test in GA135 and GA136 check functionality
1593         which seems not guaranteed.
1595 2003-11-25  Jakub Jelinek  <jakub@redhat.com>
1597         * posix/regexec.c (re_search_internal): If prune_impossible_nodes
1598         returned REG_NOMATCH, set match_last to -1.  Don't initialize
1599         pmatch[0] needlessly.  Fix comment.
1600         (prune_impossible_nodes): Don't segfault on NULL state_log entry.
1601         (set_regs): Fix comment.
1602         * posix/regcomp.c (parse_bracket_exp): Only set has_plural_match
1603         if adding both SIMPLE_BRACKET and COMPLEX_BRACKET.
1604         (build_charclass_op): Set has_plural_match if adding both
1605         SIMPLE_BRACKET and COMPLEX_BRACKET.
1606         * posix/bug-regex11.c (tests): Fix register values for one commented
1607         out test.  Add new tests.
1609         * posix/regex_internal.c (re_string_allocate): Make sure init_len
1610         is at least dfa->mb_cur_max.
1611         (re_string_reconstruct): If is_utf8, don't fall back into
1612         re_string_skip_chars just because idx points into a middle of
1613         valid UTF-8 character.  Instead, set the wcs bytes which correspond
1614         to the partial character bytes to WEOF.
1615         * posix/regexec.c (re_search_internal): Allocate input.bufs_len + 1
1616         instead of dfa->nodes_len + 1 state_log entries initially.
1617         * posix/bug-regex20.c (main): Uncomment backwards case insensitive
1618         tests.
1620 2003-11-24  Jakub Jelinek  <jakub@redhat.com>
1622         * posix/regex_internal.h (re_token_t): Add word_char bit.  Add
1623         comment.
1624         (re_dfa_t): Add sb_char field.
1625         (bitset_mask): New function.
1626         * posix/regcomp.c (free_dfa_content): Free sb_char.
1627         (init_dfa): Don't initialize word_char unnecessarily.
1628         Initialize sb_char.
1629         (duplicate_node): Don't duplicate !word_char CHARACTERs with
1630         NEXT_WORD_CONSTRAINT constraint or word_char CHARACTERs with
1631         NEXT_NOTWORD_CONSTRAINT.  Return -1 in *new_idx instead.
1632         (duplicate_node_closure): Handle clone_dest == -1 from
1633         duplicate_node.
1634         (peek_token): Initialize word_char bit.
1635         (parse_expression, parse_dup_op): Add comments.
1636         (parse_bracket_exp): Don't set bitmask bits for multi-byte char
1637         starting bytes here at the beginning.  Mask off the bits right
1638         before creating SIMPLE_BRACKET.
1639         (build_charclass_op): Likewise.
1640         * posix/regexec.c (group_nodes_into_DFAstates) <case OP_PERIOD>: Only
1641         set accept bits for single-byte characters.
1642         (group_nodes_into_DFAstates): Don't rely on characters 0 .. 127
1643         being single byte encoded and the rest multi-byte.
1644         * posix/bug-regex19.c (tests): Add new tests.
1645         (do_mb_tests): Initialize t to *test.
1646         (main): Fail even on do_mb_tests errors.
1648 2003-11-23  Ulrich Drepper  <drepper@redhat.com>
1650         * posix/regexec.c: Correct several memory allocation problems.
1651         Add more BE.
1652         * posix/regex_internal.c: Likewise.
1653         * posix/regcomp.c: Likewise.
1655         * posix/regexec.c: Add const in a number of places.
1656         * posix/regex_internal.h: Make EPSILON_BIT a macro to help
1657         debugging.  Its value isn't important.
1659 2003-11-22  Ulrich Drepper  <drepper@redhat.com>
1661         * posix/PTESTS: Fix first test of GA143.
1663 2003-11-21  Ulrich Drepper  <drepper@redhat.com>
1665         * posix/regex_internal.c (re_dfa_add_node): Add BE, reallocation
1666         isn't likely.
1668         * locale/programs/charmap.c (charmap_read): If encoding is found
1669         not ASCII compatible, set enc_not_ascii_compatible.
1670         * locale/programs/charmap.h: Declare enc_not_ascii_compatible.
1671         * locale/programs/ld-ctype.c (ctype_startup): If
1672         enc_not_ascii_compatible is set, initialize to_nonascii to 1.
1674 2003-11-22  Jakub Jelinek  <jakub@redhat.com>
1676         * elf/rtld.c (process_envvars): Only honor LD_USE_LOAD_BIAS
1677         if !__libc_enable_secure.
1679         * sysdeps/generic/ldsodefs.h (_dl_use_load_bias): New _rtld_global
1680         field.
1681         * elf/rtld.c (_rtld_global): Initialize _dl_use_load_bias field.
1682         (dl_main): Set GL(dl_use_load_bias) default.
1683         (process_envvars): Set GL(dl_use_load_bias) from LD_USE_LOAD_BIAS.
1684         Add EXTRA_LD_ENVVARS_13.
1685         * elf/dl-support.c (_dl_use_load_bias): New variable.
1686         * elf/dl-load.c (_dl_map_object_from_fd): Mask c->mapstart
1687         with GL(dl_use_load_bias).
1688         * sysdeps/generic/unsecvars.h (UNSECURE_ENVVARS): Add
1689         LD_USE_LOAD_BIAS.
1690         * sysdeps/unix/sysv/linux/dl-librecon.h (EXTRA_LD_ENVVARS): Remove.
1691         (EXTRA_LD_ENVVARS_LINUX): Renamed to...
1692         (EXTRA_LD_ENVVARS_13): ... this.  Remove case at the beginning.
1693         * sysdeps/unix/sysv/linux/i386/dl-librecon.h (EXTRA_LD_ENVVARS):
1694         Don't undefine first.  Remove EXTRA_LD_ENVVARS_LINUX.
1696 2003-11-21  Ulrich Drepper  <drepper@redhat.com>
1698         * posix/regcomp.c (duplicate_node): Remove unnecessary local variable.
1700         * posix/regcomp.c (re_dfa_add_tree_node): Make fourth parameter a
1701         pointer.  Adjust callers.
1703         * posix/regcomp.c (fetch_token): Change interface to match
1704         peek_token.  This avoids some copying and reduces code size.
1706 2003-11-21  Jakub Jelinek  <jakub@redhat.com>
1708         * posix/bug-regex19.c (tests): Add more tests.
1710         * posix/bug-regex11.c: And one more commented out test.
1712         * posix/tst-rxspencer.c (mb_tests): Don't run identical multi-byte
1713         tests multiple times unnecessarily.
1715         * posix/bug-regex19.c (BRE, ERE): Define.
1716         (tests): Add many new tests, remove UTF-8 ones.
1717         (do_one_test, do_mb_tests): New functions.
1718         (main): Rewritten using do_one_test and do_mb_tests.
1720 2003-11-20  Ulrich Drepper  <drepper@redhat.com>
1722         * posix/PTESTS: Fix first test in GA143.
1724 2003-11-20  Jakub Jelinek  <jakub@redhat.com>
1726         * posix/regex_internal.h (re_dfastate_t): Remove trtable_search.
1727         Add word_trtable.
1728         * posix/regex_internal.c (create_newstate_common, free_state):
1729         Don't free trtable_search.
1730         * posix/regexec.c (check_matching): Remove fl_search argument.
1731         (transit_state_sb): Likewise.  #ifdef out as unused.
1732         (build_trtable): Remove fl_search argument.  Set state->word_trtable
1733         and state->trtable.  Build separate word and non-word tables if
1734         multi-byte and they differ for some character.
1735         (transit_state): Remove fl_search argument.  Don't update
1736         state->trtable here.  Handle state->word_trtable.
1737         #ifdef out unused call to transit_state_sb.
1738         (re_search_internal): Update check_matching caller.
1739         (group_nodes_into_DFAstates): Don't clear non-ascii chars in accepts
1740         bitmask for multi-byte locales.
1741         * posix/bug-regex19.c (tests): Enable some commented out tests, add
1742         2 new tests.
1743         * posix/tst-rxspencer.c (mb_tests): Don't test [[=b=]] for now as
1744         multi-byte.  Don't run identical multi-byte tests multiple times
1745         unnecessarily.
1746         (main): Check setlocale return value.
1747         * posix/Makefile (tst-rxspencer-ARGS): Add --utf8 argument.
1748         (tst-rxspencer-ENV): Remove MALLOC_TRACE, add LOCPATH.
1749         ($(objpfx)tst-rxspencer-mem): Run another tst-rxspencer test
1750         here, without --utf8 argument but with MALLOC_TRACE.
1752 2003-11-19  Jakub Jelinek  <jakub@redhat.com>
1754         * posix/regexec.c (extend_buffers): Don't allocate
1755         twice as big state_log as needed.  Don't modify pstr->valid_len
1756         for mb_cur_max == 1 !icase !trans.
1758         * posix/regcomp.c (free_bin_tree): Removed.
1759         (create_tree): Add dfa argument.  Don't call re_malloc for
1760         each tree, instead allocate from str_tree_storage.
1761         (re_dfa_add_tree_node): New function.
1762         (free_dfa_content): Handle freeing if dfa->nodes == NULL
1763         or dfa->state_table == NULL.
1764         (re_compile_internal): Call free_dfa_content if init_dfa
1765         fails.  Call free_workarea_compile, re_string_destruct
1766         and free_dfa_content for most of the other failure paths.
1767         (init_dfa): Initialize str_tree_storage_idx.
1768         Don't clear any fields on allocation failure.
1769         (free_workarea_compile): Free str_tree_storage chunks
1770         instead of free_bin_tree (dfa->str_tree).
1771         (parse): Call re_dfa_add_tree_node instead of re_dfa_add_node
1772         followed by create_tree.  Add dfa argument to remaining
1773         create_tree calls.  Remove new_idx variable.  Remove calls
1774         to free_bin_tree.
1775         (parse_reg_exp, parse_branch, parse_expression, parse_sub_exp,
1776         parse_dup_op, parse_bracket_exp, build_charclass_op): Likewise.
1777         (duplicate_tree): Remove calls to free_bin_tree, add dfa
1778         argument to create_tree.
1779         * posix/regex_internal.h (BIN_TREE_STORAGE_SIZE): Define.
1780         (bin_tree_storage_t): New type.
1781         (re_dfa_t): Add str_tree_storage and str_tree_storage_idx
1782         fields.
1783         * posix/Makefile (tests): Add bug-regex21.
1784         (generated): Add bug-regex21-mem, bug-regex21.mtrace,
1785         tst-rxspencer-mem and tst-rxspencer.mtrace.
1786         (tests): Depend on $(objpfx)bug-regex21-mem
1787         and $(objpfx)tst-rxspencer-mem.
1788         (bug-regex21-ENV, tst-rxspencer-ENV): Set.
1789         ($(objpfx)bug-regex21-mem, $(objpfx)tst-rxspencer-mem): New.
1790         * posix/tst-rxspencer.c (main): Add call to mtrace.
1791         Free line at the end.
1792         * posix/bug-regex21.c: New test.
1794 2003-11-19  Ulrich Drepper  <drepper@redhat.com>
1796         * posix/bug-regex20.c: Correct invalid UTF-8 sequences.
1798         * posix/regex_internal.c (build_wcs_upper_buffer): If mbrtowc
1799         fails, just use the byte, do no fancy conversions.
1801         * posix/regex_internal.h (re_string_first_byte): Use ->valid_len
1802         not ->len.
1803         (re_string_is_single_byte_char): Likewise.
1805 2003-11-18  Ulrich Drepper  <drepper@redhat.com>
1807         * posix/regexec.c (get_subexp): After calling get_subexp_sub
1808         reload buf and bkref_str.  Little optimization by avoiding memcmp.
1810 2003-11-14  David Mosberger   <davidm@hpl.hp.com>
1812         * sysdeps/unix/sysv/linux/ia64/sysdep.h
1813         (GAS_ALIGN_BREAKS_UNWIND_INFO): Define this macro to indicate
1814         that all existing GAS versions have a problem with .align inside
1815         a function.
1816         * sysdeps/ia64/memccpy.S: Work around GAS_ALIGN_BREAKS_UNWIND_INFO bug.
1817         * sysdeps/ia64/memcpy.S: Likewise.
1818         * sysdeps/ia64/memset.S: Likewise.
1819         * sysdeps/ia64/memmove.S: Likewise.  Also move the jump-table to
1820         out of .text into .rodata, where it belongs.
1822         * sysdeps/unix/sysv/linux/ia64/pipe.S: There is no need to
1823         save/restore input-arguments, because they're necessarily
1824         preserved by the kernel to support syscall-restart.
1826 2003-11-18  Jakub Jelinek  <jakub@redhat.com>
1828         * posix/regex_internal.h (re_token_type_t): Remove unused ALT,
1829         END_OF_RE_TOKEN_T and SUBEXP.  Reorder values.  Add OP_UTF8_PERIOD
1830         and EPSILON_BIT.
1831         (IS_EPSILON_NODE): Just test if EPSILON_BIT is set.
1832         (ACCEPT_MB_NODE): Return 1 for OP_UTF8_PERIOD as well.
1833         * posix/regex_internal.c (create_ci_newstate, create_cd_newstate):
1834         Handle OP_UTF8_PERIOD.
1835         (re_string_reconstruct): Set valid_len for single byte char searching
1836         with no translation and case sensitivity.
1837         * posix/regcomp.c (re_compile_fastmap_iter, calc_first): Handle
1838         OP_UTF8_PERIOD.
1839         (re_compile_internal): Don't call optimize_utf8 if preg->translate
1840         != NULL.
1841         (optimize_utf8): Remove BACK_SLASH case.
1842         Transform OP_PERIOD into OP_UTF8_PERIOD if the searching can be
1843         optimized.
1844         (parse_bracket_exp): Don't create SIMPLE_BRACKET if it doesn't have
1845         any bits set and COMPLEX_BRACKET is used.
1846         * posix/regexec.c (transit_state_mb): Fix comment typo.
1847         (group_nodes_into_DFAstates, check_node_accept): Handle
1848         OP_UTF8_PERIOD.
1849         (check_node_accept_bytes): Likewise.  Reorder slightly so that
1850         re_string_char_size_at and re_string_elem_size_at are called
1851         only when needed.
1852         * posix/bug-regex20.c (BRE, ERE): Define.
1853         (tests): Use them to make lines shorter.  Expect . to be
1854         optimized.  Add lots of new tests.
1855         (main): Run (ATM just case sensitive) test with backwards searching
1856         as well.
1858 2003-11-18  Jakub Jelinek  <jakub@redhat.com>
1860         * io/bug-ftw4.c: Include string.h.
1861         * posix/fnmatch.c (mbsinit): Remove define.
1863 2003-11-17  Jakub Jelinek  <jakub@redhat.com>
1865         * posix/regcomp.c (optimize_utf8): Optimize multi-byte chars as
1866         well.
1867         * posix/bug-regex20.c (tests): Add new tests.  Multi-byte char
1868         followed by dup operator is expected to be optimized.
1870         * posix/regexec.c (check_node_accept_bytes): Move nrules and j
1871         variables to the block where they are only used, initialize
1872         nrules only immediately before using it.
1874 2003-11-15  Andreas Jaeger  <aj@suse.de>
1876         * sysdeps/x86_64/fpu/s_scalbnl.S: New file.
1877         * sysdeps/x86_64/fpu/s_truncl.S: New file.
1878         * sysdeps/x86_64/fpu/s_nearbyintl.S: New file.
1879         * sysdeps/x86_64/fpu/s_floorl.S: New file.
1880         * sysdeps/x86_64/fpu/s_ilogbl.S: New file.
1881         * sysdeps/x86_64/fpu/e_remainderl.S: New file.
1883         * math/libm-test.inc (floor_test): Test also Â±0.25.
1884         (ceil_test): Test -0.25.
1886 2003-11-17  Ulrich Drepper  <drepper@redhat.com>
1888         * sysdeps/posix/getaddrinfo.c: Add support for destination address
1889         selection according to RFC 3484.
1891 2003-11-15  Ulrich Drepper  <drepper@redhat.com>
1893         * posix/regex_internal.h: Add forward declaration of re_dfa_t.
1894         Replace last two parameters of re_string_allocate and
1895         re_string_construct with pointer to DFA.
1896         (re_dfa_t): Add map_notascii field.
1897         * posix/regcomp.c (re_compile_internal): Add call of
1898         re_string_construct.
1899         (init_dfa): Initialize map_notascii.
1900         * posix/regex_internal.c: Adjust definitions of re_string_allocate
1901         and re_string_construct.
1902         Pass DFA to re_string_construct.  Adjust definition.  Initialize
1903         map_notascii field.
1904         (build_wcs_upper_buffer): If map_notascii is zero use simplified
1905         method to map ASCII values to upper case.
1906         * posix/regex.c: Include localeinfo.h.
1907         * posix/regexec.c: Adjust call of re_string_allocate.
1909         * locale/langinfo.h: Add _NL_CTYPE_MAP_TO_NONASCII.
1910         * locale/localeinfo.h (LIMAGIC): Change value.
1911         * locale/categories.def. Add entry for _NL_CTYPE_MAP_TO_NONASCII.
1912         * locale/C-ctype.h: Likewise.
1913         * locale/programs/ld-ctype.c: Compute whether any mapping maps from
1914         ASCII to non-ASCII value.  Write out that value.
1916         * wcsmbs/mbsinit.c: Undef mbsinit and __mbsinit.
1917         * include/wchar.h: Provide inline versions of mbsinit and __mbsinit.
1919 2003-11-14  Jakub Jelinek  <jakub@redhat.com>
1921         * posix/tst-rxspencer.c (check_match): @ without any following
1922         characters must match only end of string.
1923         (main): Fix filename in error message.
1925 2003-11-12  David Mosberger  <davidm@hpl.hp.com>
1927         * sysdeps/ia64/dl-machine.h: Force inlining of
1928         elf_machine_runtime_setup().
1930 2003-11-13  Andreas Jaeger  <aj@suse.de>
1932         * math/Makefile (CFLAGS-test-float.c): Add -fno-builtin.
1933         (CFLAGS-test-double.c): Likewise.
1934         (CFLAGS-test-ldouble.c): Likewise.
1935         (CPPFLAGS-test-ifloat.c): Likewise.
1936         (CPPFLAGS-test-idouble.c): Likewise.
1937         (CPPFLAGS-test-ildoubl.c): Likewise.
1939         * math/libm-test.inc (ceil_test): Test ceil (0.25).
1941 2003-11-04  Ulrich Drepper  <drepper@redhat.com>
1943         * sysdeps/unix/sysv/linux/ifaddrs.c: Make sure it's the kernel who
1944         sends the netlink data.
1945         * sysdeps/unix/sysv/linux/check_pf.c: Likewise.
1947 2003-11-13  Jakub Jelinek  <jakub@redhat.com>
1949         * posix/regcomp.c (optimize_utf8): Optimize even if SIMPLE_BRACKET
1950         with no bits set for >= 0x80 chars is seen.
1951         * posix/bug-regex20.c (tests): Add new tests.  Expect [ABC] to be
1952         optimized.
1953         (main): Run all tests with RE_ICASE as well.
1955 2003-11-13  Ulrich Drepper  <drepper@redhat.com>
1957         * posix/Makefile: Add rules to build and run tst-rxspencer.
1958         (distribute): Add rxspencer/tests and rxspencer/COPYRIGHT.
1959         * posix/tst-rxspencer.c: New file.
1960         * posix/rxspencer/tests: New file.
1961         * posix/rxspencer/COPYRIGHT: New file.
1962         Patch mostly by Jakub Jelinek.
1964         * posix/regcomp.c (parse_bracket_exp): Don't check for range if
1965         this is no option given the first token.
1967         * posix/regcomp.c (parse_bracket_exp): Fix test for EOS after
1968         hyphen in range expression.  Return EBRACK in this case.
1970         * posix/regcomp.c (parse_bracket_element): Reject hyphens unless
1971         we expect them or it's the last element in the bracket expression.
1972         Indicated by new parameter.  Adjust all callers.
1974         * posix/runtests.c (run_a_test): If regcomp failed, reset last_pattern.
1975         Prettier error messages.
1977         * posix/regcomp.c (parse_dup_op): Fail with REG_BADBR is first
1978         number in {,} expression is larger.
1980 2003-11-13  Andreas Jaeger  <aj@suse.de>
1982         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_TGKILL):
1983         Define appropriately for x86_64.
1984         (__ASSUME_UTIMES): Likewise.
1985         (__ASSUME_CLONE_THREAD_FLAGS): Likewise.
1987         * sysdeps/x86_64/fpu/s_ceill.S: New file.
1989 2003-11-13  Ulrich Drepper  <drepper@redhat.com>
1991         * posix/regcomp.c (parse_expression): In BRE consecutive
1992         duplications are not allowed.
1994 2003-11-12  Ulrich Drepper  <drepper@redhat.com>
1996         * posix/regcomp.c (parse_bracket_exp): If end of expression is
1997         seen, return EBRACK error, not BADPAT.
1999         * posix/regcomp.c (parse_expression): If token is OP_OPEN_DUP_NUM
2000         and RE_CONTEXT_INVALID_DUP syntax flag is set, fail.
2001         * posix/regex.h (RE_CONTEXT_INVALUD_OPS): New macro.
2002         (RE_SYNTAX_POSIX_BASIC): Use RE_CONTEXT_INVALUD_OPS.
2004         * posix/regcomp.c (parse_sub_exp): In case of not-matching ( )
2005         return REG_EPAREN.
2007         * posix/PTESTS: Cleanup.  Fix typoes.  Correct bugs in 2003.2.
2008         * posix/runptests.c (main): Handle comments.
2009         * posix/PTESTS2C.sed: Handle comments.
2011 2003-11-12  Jakub Jelinek  <jakub@redhat.com>
2013         * posix/regcomp.c (optimize_utf8): New function.
2014         (re_compile_fastmap_iter): Use dfa->mb_cur_max > 1 instead
2015         of !icase.
2016         (re_compile_internal): Call optimize_utf8 if not case insensitive
2017         and in UTF-8 locale.
2018         * posix/regex_internal.h: Ifdef out some prototypes if
2019         RE_NO_INTERNAL_PROTOTYPES is defined to shut up warnings.
2020         * posix/Makefile (tests): Add bug-regex20.
2021         (bug-regex20-ENV): Add LOCPATH.
2022         * posix/bug-regex20.c: New test.
2024 2003-11-12  Jakub Jelinek  <jakub@redhat.com>
2026         * io/ftw.c (NFTW_NEW_NAME, NFTW_OLD_NAME): Add prototypes.
2028 2003-11-12  Jakub Jelinek  <jakub@redhat.com>
2030         * posix/tst-regex.c (umemlen): New variable.
2031         (test_expr): Add expectedicase argument.  Test case insensitive
2032         searches as well as backwards searches (case sensitive and
2033         insensitive) too.
2034         (run_test): Add icase argument.  Use it to compute regcomp flags.
2035         (run_test_backwards): New function.
2036         (main): Cast read to size_t to avoid warning.  Set umemlen.
2037         Add expectedicase arguments to test_expr.
2038         * posix/regex_internal.c (re_string_reconstruct): If is_utf8,
2039         find previous character by walking back instead of converting
2040         all chars from beginning.
2042 2003-11-12  Jakub Jelinek  <jakub@redhat.com>
2044         * posix/regex_internal.h (struct re_string_t): Add is_utf8
2045         and mb_cur_max fields.
2046         (struct re_dfa_t): Likewise.  Reorder fields to make structure
2047         smaller on 64-bit arches.
2048         (re_string_allocate, re_string_construct): Add mb_cur_max and
2049         is_utf8 arguments.
2050         (re_string_char_size_at, re_string_wchar_at): Use pstr->mb_cur_max
2051         instead of MB_CUR_MAX.
2052         * posix/regcomp.c (re_compile_fastmap_iter): Use dfa->mb_cur_max
2053         instead of MB_CUR_MAX.
2054         (re_compile_internal): Pass new arguments to re_string_construct.
2055         (init_dfa): Initialize mb_cur_max and is_utf8 fields.
2056         (peek_token, peek_token_bracket): Use input->mb_cur_max instead
2057         of MB_CUR_MAX.
2058         (parse_expression, parse_bracket_exp, parse_charclass_op): Use
2059         dfa->mb_cur_max instead of MB_CUR_MAX.
2060         * posix/regex_internal.c (re_string_construct_common): Add
2061         mb_cur_max and is_utf8 arguments.  Initialize fields with them.
2062         (re_string_allocate, re_string_construct): Add mb_cur_max and
2063         is_utf8 arguments, pass them to re_string_construct_common.
2064         Use mb_cur_max instead of MB_CUR_MAX.
2065         (re_string_realloc_buffers): Use pstr->mb_cur_max instead of
2066         MB_CUR_MAX.
2067         (re_string_reconstruct): Likewise.
2068         (re_string_context_at): Use input->mb_cur_max instead of
2069         MB_CUR_MAX.
2070         (create_ci_newstate, create_cd_newstate): Use dfa->mb_cur_max
2071         instead of MB_CUR_MAX.
2072         * posix/regexec.c (re_search_internal): Likewise.
2073         Pass new arguments to re_string_allocate.
2074         (check_matching, transit_state_sb): Use dfa->mb_cur_max instead of
2075         MB_CUR_MAX.
2076         (extend_buffers): Use pstr->mb_cur_max instead of MB_CUR_MAX.
2078 2003-11-12  Jakub Jelinek  <jakub@redhat.com>
2080         * posix/Makefile (tests): Add bug-regex19.
2081         (bug-regex19-ENV): Add LOCPATH.
2082         * posix/bug-regex19.c: New test.
2084 2003-11-11  Jakub Jelinek  <jakub@redhat.com>
2086         * posix/regcomp.c (re_compile_fastmap_iter): Handle RE_ICASE
2087         with MB_CUR_MAX > 1 locales in the fastmap.
2089 2003-11-11  Jakub Jelinek  <jakub@redhat.com>
2091         * posix/regex_internal.c (build_wcs_buffer): Fix comment typo.
2092         (build_wcs_upper_buffer): Likewise.  Use towupper for wchar_t instead
2093         of toupper.
2094         * posix/Makefile (tests): Add bug-regex17 and bug-regex18.
2095         (bug-regex17-ENV, bug-regex18-ENV): Add LOCPATH.
2096         * posix/bug-regex17.c: New file
2097         * posix/bug-regex18.c: New file.
2099 2003-10-08  Thorsten Kukuk  <kukuk@suse.de>
2101         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h (pread, pwrite):
2102         Define __NR_pread/__NR_pwrite if not done in kernel headers
2104 2003-11-11  Roland McGrath  <roland@redhat.com>
2106         * manual/xtract-typefun.awk: Swallow [(){}*] from function names.
2108         * manual/Makefile (info): Don't depend on dir-add.info.
2109         (libc.dvi libc.pdf libc.info): Depend on dir-add.texi.
2110         (dir-add.info): Target removed, replaced with ...
2111         (dir-add.texi): New target.
2112         (distribute): Add it.
2113         (install): Remove variant with --section arguments.
2114         Let the @dircategory directives do their work.
2115         (mostlyclean): Don't remove dir-add.info here.
2116         (realclean): Remove dir-add.texi here.
2117         * manual/libc.texinfo: @include dir-add.texi
2118         * configure.in: Remove check for old Debian install-info.
2119         * configure: Regenerated.
2120         * config.make.in (OLD_DEBIAN_INSTALL_INFO): Variable removed.
2122 2003-11-08  Andreas Schwab  <schwab@suse.de>
2124         * scripts/data/c++-types-ia64-linux-gnu.data: New file.
2126 2003-11-10  Carlos O'Donell  <carlos@baldric.uwo.ca>
2128         * io/ftwtest-sh: Fix nested sed commands.
2130 2003-11-10  Jakub Jelinek  <jakub@redhat.com>
2132         * posix/regex_internal.h (re_string_char_size_at): Don't look beyond
2133         valid_len wide chars.
2135 2003-11-09  Roland McGrath  <roland@redhat.com>
2137         * manual/examples/dir2.c (one): Add const to argument type.
2138         Reported by J de Haan <j.de.haan@home.nl>.
2140 2003-11-07  Ulrich Drepper  <drepper@redhat.com>
2142         * po/pl.po: Update from translation team.
2144 2003-11-07  Jakub Jelinek  <jakub@redhat.com>
2146         * io/ftw.c (NFTW_OLD_NAME, NFTW_NEW_NAME): Define.
2147         (ftw_dir, ftw_startup): Add __attribute ((noinline)).
2148         (NFTW_OLD_NAME, NFTW_NEW_NAME): New functions.
2149         (NFTW_NAME): Only define if !_LIBC, add versioned_symbol
2150         and compat_symbol.
2151         * io/ftw64.c (NFTW_OLD_NAME, NFTW_NEW_NAME): Define.
2152         * io/Versions (libc): Export nftw@@GLIBC_2.3.3
2153         and nftw64@@GLIBC_2.3.3.
2155         * io/ftw.h (FTW_ACTIONRETVAL): New flag.
2156         (FTW_CONTINUE, FTW_STOP, FTW_SKIP_SUBTREE, FTW_SKIP_SIBLINGS): New.
2157         * io/ftw.c (ftw_dir): Add old_dir argument.
2158         Clear result if it was FTW_SKIP_SIBLINGS after processing all
2159         dir entries.  Change cwd back if old_dir != NULL.
2160         (process_entry): Adjust caller.  Don't change cwd back here.
2161         Change FTW_SKIP_SUBTREE result to 0.
2162         (ftw_startup): Adjust ftw_dir caller.
2163         Clear result if it was FTW_SKIP_SUBTREE or FTW_SKIP_SIBLINGS.
2164         * io/ftwtest.c (skip_subtree, skip_siblings): New variables.
2165         (options, main): Add --skip-subtree and --skip-siblings options.
2166         (cb): Use return FTW_CONTINUE instead of return 0.
2167         Handle --skip-subtree and --skip-siblings.
2168         * io/ftwtest-sh: Add tests for FTW_ACTIONRETVAL.
2169         * manual/filesys.texi: Document FTW_ACTIONRETVAL.
2171 2003-11-04  Jakub Jelinek  <jakub@redhat.com>
2173         * io/ftw.c (ftw_dir): Close dir if callback with FTW_D type returns
2174         non-zero.
2175         * io/Makefile (tests): Add bug-ftw4.
2176         * io/bug-ftw4.c: New test.
2178 2003-10-27  Daniel Jacobowitz  <drow@mvista.com>
2180         * libio/libioP.h [_IO_USE_OLD_IO_FILE]
2181         (struct _IO_FILE_complete_plus): New type.
2182         * libio/oldiofopen.c (_IO_old_fopen): Use _IO_FILE_complete_plus.
2183         * libio/oldiofdopen.c (_IO_old_fdopen): Likewise.
2184         * libio/oldiopopen.c (struct _IO_proc_file, _IO_old_popen): Likewise.
2185         Call _IO_old_init instead of _IO_init.
2187 2003-11-03  Ulrich Drepper  <drepper@redhat.com>
2189         * intl/locale.alias: nb_NO is now the correct name, not no_NO.
2191         * locale/iso-639.def: Add Blin.
2192         Patch by Daniel Yacob <locales@geez.org>.
2194 2003-10-31  Steven Munroe  <sjmunroe@us.ibm.com>
2196         * sysdeps/powerpc/powerpc32/strncmp.S: New File.
2197         * sysdeps/powerpc/powerpc64/strncmp.S: New File.
2199 2003-11-01  Randolph Chung  <tausq@debian.org>
2201         * sysdeps/unix/sysv/linux/hppa/sysdep.h (LOAD_ARGS_0, LOAD_ARGS_1,
2202         LOAD_ARGS_2, LOAD_ARGS_3, LOAD_ARGS_4, LOAD_ARGS_5, LOAD_ARGS_6):
2203         Add missing parentheses.
2205 2003-11-01  Roland McGrath  <roland@redhat.com>
2207         * libio/bug-ftell.c (do_test): Add a cast.
2209 2003-09-26  Daniel Jacobowitz  <drow@mvista.com>
2211         * Makerules (shlib.lds): Make sure that ld doesn't try to link
2212         anything while generating the linker script.
2214 2003-10-31  Roland McGrath  <roland@redhat.com>
2216         * locale/lc-ctype.c (_nl_postload_ctype): Update _nl_global_locale's
2217         special members.
2219 2003-10-29  Ulrich Drepper  <drepper@redhat.com>
2221         * po/be.po: Update from translation team.
2223 2003-10-27  Ulrich Drepper  <drepper@redhat.com>
2225         * elf/rtld.c (map_doit): Pass __RTLD_OPENEXEC in last parameter to
2226         _dl_map_object.
2228         * elf/sprof.c (load_shobj): Use l_map_start not l_addr to locate
2229         ELF header.
2231         * inet/rcmd.c (__validuser2_sa): Remove unnecessary code to skip
2232         rest of line.  We use getline which means this cannot happen.
2234 2003-10-26  Ulrich Drepper  <drepper@redhat.com>
2236         * sysdeps/unix/sysv/linux/internal_statvfs.c (__internal_statvfs):
2237         Avoid infinite loops in case the mounts file is hosed.
2238         * io/Makefile: Add rules to build and run tst-statvfs.
2239         * io/tst-statvfs.c: New file.
2241         * include/dlfcn.h (__RTLD_OPENEXEC): Define.
2242         * elf/dl-load.c (_dl_map_object_from_fd): Don't allow loading
2243         executables unless __RTLD_OPENEXEC flag is present.
2244         * elf/rtld.c (dl_main): Pass __RTLD_OPENEXEC flag to
2245         _dl_map_object when loading the executable.
2247         * sysdeps/generic/glob.c (glob): Handle GLOB_BRACE and escaping
2248         correctly.
2249         * posix/globtest.sh: Add tests for GLOB_BRACE and escaping.
2251         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Default
2252         reverse lookup format for IPv6 addresses is using bitstring and
2253         .ip6.arpa suffix.
2254         * resolv/ns_name.c: Implement encoding and decoding bitstring in
2255         hex format.
2257 2003-10-23  Jakub Jelinek  <jakub@redhat.com>
2259         * locale/programs/locale.c (show_info): Fix printing word values on
2260         64-bit big-endian architectures.
2262 2003-10-19  Bruno Haible  <bruno@clisp.org>
2264         * intl/hash-string.c (hash_string): Zero-extend each char from the
2265         string; the old code did a sign-extend on some platforms.
2267 2003-10-22  Steven Munroe  <sjmunroe@us.ibm.com>
2269         * sysdeps/powerpc/powerpc32/Makefile (+cflags, asm-CPPFLAGS): Don't
2270         append options to these.
2271         * sysdeps/powerpc/powerpc64/Makefile (+cflags, asm-CPPFLAGS): Likewise.
2273 2003-10-18  Carlos O'Donell  <carlos@baldric.uwo.ca>
2275         * sysdeps/unix/sysv/linux/hppa/sysdep.h: Fix merge error.
2277 2003-10-15  Roland McGrath  <roland@redhat.com>
2279         * elf/dl-iteratephdr.c [! SHARED] (dl_iterate_phdr): New function.
2280         Fake an entry for the main executable and then call __dl_iterate_phdr.
2281         * elf/Makefile (routines): Remove dl-iteratephdr-static.
2282         (elide-routines.os): Likewise.
2283         (CFLAGS-dl-iterate-phdr-static.c): Variable removed.
2284         * sysdeps/generic/dl-iteratephdr-static.c: File removed.
2285         * sysdeps/unix/sysv/linux/ia64/dl-iteratephdr-static.c: File removed.
2287 2003-10-15  Jakub Jelinek  <jakub@redhat.com>
2289         * elf/rtld.c (print_statistics): Print also number of relative
2290         relocations.
2292 2003-10-12  Carlos O'Donell  <carlos@baldric.uwo.ca>
2294         * sysdeps/hppa/sysdep.h: Undef JUMPTARGET before use.
2295         * sysdeps/unix/sysv/linux/hppa/sysdep.h: Define PSEUDO_ERRVAL,
2296         SYSCALL_ERROR_LABEL under all conditions, INTERNAL_SYSCALL_DECL,
2297         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO, INTERNAL_SYSCALL,
2298         and undef JUMPTARGET before use.
2299         [PIC]: Save pic register around syscall.
2300         * sysdeps/unix/sysv/linux/hppa/sysdep.c (syscall):
2301         Cleanup asm statment.
2303 2003-10-13  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
2305         * sysdeps/unix/sysv/linux/sh/sysdep.h (DO_CALL): Add SYSCALL_INST_PAD
2306         after trapa instruction.
2308 2003-10-09  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
2310         * sysdeps/unix/sysv/linux/sh/syscalls.list: Add waitpid.
2312 2003-10-10  Carlos O'Donell  <carlos@baldric.uwo.ca>
2314         * sysdeps/hppa/Makefile (CFLAGS-malloc.c): Variable removed.
2316 2003-10-09  Roland McGrath  <roland@redhat.com>
2318         * elf/rtld.c (dl_main): Don't set l_name for sysinfo DSO, since there
2319         is no file to name.
2321 2003-10-08  Jakub Jelinek  <jakub@redhat.com>
2323         * sysdeps/generic/dl-sysdep.c (_dl_important_hwcaps): Don't generate
2324         two identical copies of strings.
2326 2003-10-06  Ulrich Drepper  <drepper@redhat.com>
2328         * posix/bug-regex11.c: Add some more tests which fail so far.
2329         Disable them.  Patch by Paolo Bonzini <bonzini@gnu.org>.
2331 2003-10-05  Paolo Bonzini  <bonzini@gnu.org>
2333         * posix/bug-regex11.c: Add more backreference-related test cases.
2334         (main): Show the failing regex in the error messages.
2335         * posix/regexec.c (check_dst_limits_calc_pos):
2336         Simplify some nested conditionals.  Replace if's with a switch
2337         statement.
2338         (check_dst_limits_calc_pos <TYPE_BKREF>): Rename parameter NODE to
2339         FROM_NODE, it shadows a local variable; don't recurse if FROM_NODE
2340         does not change in the recursive invocation, fixing an infinite loop
2341         in the ()\1*\1* regex.
2342         (sift_states_backward): Fix function comment.
2343         * posix/regcomp.c (calc_epsdest): Add an assertion.
2345 2003-10-06  Ulrich Drepper  <drepper@redhat.com>
2347         * manual/examples/testopt.c: Fix warnings.  Better error message
2348         for missing -c argument.
2349         Patch mostly by Gitonga Marete <bgmarete@comcast.net>.
2351         * timezone/asia: Update from tzdata2003d.
2352         * timezone/australasia: Likewise.
2353         * timezone/backward: Likewise.
2354         * timezone/europe: Likewise.
2355         * timezone/iso3166.tab: Likewise.
2356         * timezone/northamerica: Likewise.
2357         * timezone/southamerica: Likewise.
2358         * timezone/zone.tab: Likewise.
2360 2003-10-05  Jakub Jelinek  <jakub@redhat.com>
2362         * sysdeps/ia64/backtrace.c: New file.
2363         * sysdeps/x86_64/backtrace.c: New file.
2364         * sysdeps/generic/unwind.h (_Unwind_Trace_Fn): New type.
2365         (_Unwind_Backtrace): New prototype.
2367 2003-10-03  Ulrich Drepper  <drepper@redhat.com>
2369         * sysdeps/i386/elf/bsd-setjmp.S: Use linkonce section for PIC stub.
2370         * sysdeps/i386/elf/setjmp.S: Likewise.
2372 2003-10-02  Roland McGrath  <roland@redhat.com>
2374         * argp/argp-help.c (__argp_short_program_name): Move inside [! _LIBC].
2375         * argp/argp-namefrob.h
2376         [_LIBC || HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME]
2377         (__argp_short_program_name): Don't declare fn, define it as a macro.
2379 2003-08-22  Simon Josefsson  <jas@extundo.com>
2381         * argp/argp-fmtstream.h [!__attribute__]: Define to nothing.
2383         * argp/argp-help.c: Don't include malloc.h, some platforms
2384         complain and it doesn't appear to be used.
2385         [!_LIBC && HAVE_STRERROR_R && !HAVE_DECL_STRERROR_R]: Declare
2386         strerror_r.
2387         [!_LIBC && !HAVE_STRERROR_R && !HAVE_DECL_STRERROR]: Declare
2388         strerror.
2389         (hol_entry_long_iterate): Change __attribute to __attribute__.
2390         (_help, __argp_error, __argp_failure) [!_LIBC && (HAVE_FLOCKFILE
2391         && HAVE_FUNLOCKFILE)]: Protect call to flockfile and funlockfile.
2392         (__argp_basename) [!_LIBC]: New. Taken from LSH, by Niels Möller,
2393         modified after comments from Ulrich Drepper.
2394         (__argp_short_program_name): Ditto.
2395         (__argp_state_help, __argp_error, __argp_failure): Use it.
2396         (__argp_failure): Use strerror when necessary.
2398         * argp/argp-namefrob.h (__flockfile, __funlockfile, __mempcpy)
2399         (__strchrnul, __strerror_r, __strndup) [!_LIBC]: Remove __-prefix.
2400         (clearerr_unlocked, feof_unlocked, ferror_unlocked)
2401         (fflush_unlocked, fgets_unlocked, fputc_unlocked, fputs_unlocked)
2402         (fread_unlocked, fwrite_unlocked, getc_unlocked, getchar_unlocked)
2403         (putc_unlocked, putchar_unlocked) [!_LIBC && !HAVE_DECL_*]: Map to
2404         non-unlocked functions.
2405         [!_LIBC]: Add prototypes for __argp_basename and
2406         __argp_short_program_name.
2408         * argp/argp-parse.c (argp_default_parser): Only use
2409         program_invocation{_short,}_name if declared.
2410         (parser_init): Use __argp_short_program_name.
2412         * argp/argp-xinl.c [_LIBC || HAVE_FEATURES_H]: Add CPP check for
2413         '#include features.h'.
2415         * argp/argp.h [!__attribute__]: Define to nothing.
2417 2003-09-26  Paolo Bonzini  <bonzini@gnu.org>
2419         * posix/regcomp.c (parse_sub_exp): Pass RE_CARET_ANCHORS_HERE
2420         for the first token in a subexpression as well.
2422 2003-10-02  Jakub Jelinek  <jakub@redhat.com>
2424         * posix/regcomp.c (peek_token): Add 2003-09-20 changes for anchor
2425         handling again.
2426         (parse_reg_exp): Likewise.
2427         * posix/regex.h (RE_CARET_ANCHORS_HERE): Define.
2429         * posix/bug-regex11.c (tests): Add new tests.
2430         * posix/bug-regex12.c (tests): Add new test.
2432 2003-10-01  Thorsten Kukuk  <kukuk@suse.de>
2434         * elf/dl-reloc.c (_dl_allocate_static_tls): Move definition of
2435         variables only used if TLS_DTV_AT_TP is defined into the #if branch.
2437 2003-10-02  Jeroen Dekkers  <jeroen@dekkers.cx>
2439         * sysdeps/mach/hurd/malloc-machine.h: Copy the tsd code from
2440         the old thread-m.h header too.
2442 2003-10-02  Ulrich Drepper  <drepper@redhat.com>
2444         * sysdeps/unix/sysv/linux/ia64/bits/sigstack.h (MINSIGSTKSZ): Go
2445         back to 131027 since this is what the kernel enforces.
2447         * inet/getnameinfo.c: Move domain out of nrl_domainname scope and
2448         define it with libc_freeres_ptr.
2450 2003-10-01  Roland McGrath  <roland@redhat.com>
2452         * elf/rtld.c (dl_main): Add cast in last change.
2454 2003-09-10  Chris Demetriou  <cgd@broadcom.com>
2456         * sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h: Remove
2457         "#if 0" surrounding most of contents.
2458         (SYSCALL_ERROR_LABEL): Define.
2459         (__SYSCALL_CLOBBERS): Add $10.
2460         (internal_syscall7): Remove.
2461         * sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h: Likewise.
2463 2003-09-30  Ulrich Drepper  <drepper@redhat.com>
2465         * elf/rtld.c (dl_main): Also set l_map_start.
2467 2003-09-30  Daniel Jacobowitz  <drow@mvista.com>
2469         * elf/rtld.c (dl_main): Set l_libname and l_name for the sysinfo DSO
2470         to work around kernel problem.
2472 2003-09-27  Wolfram Gloger  <wg@malloc.de>
2474         * malloc/malloc.c: Include <malloc-machine.h> earlier instead of
2475         "thread-m.h", so that default parameters can be overridden in a
2476         system-specific malloc-machine.h.  Remove extra ; from extern "C"
2477         closing brace.
2478         * sysdeps/generic/malloc-machine.h: New file.
2479         * sysdeps/mach/hurd/malloc-machine.h: New file.
2480         * malloc/thread-m.h: Removed.
2481         * malloc/Makefile: Remove CFLAGS-malloc.c parameter addition, it
2482         is in sysdeps/generic/malloc-machine.h now.
2484 2003-09-29  Ulrich Drepper  <drepper@redhat.com>
2486         * elf/dl-reloc.c (_dl_allocate_static_tls): Move definition of
2487         variables only used if TLS_TCB_AT_TP is defined into the #if
2488         branch.
2490         * sysdeps/unix/sysv/linux/sys/sysmacros.h: Add __extension__ as
2491         well to cover using long long in C90.
2493 2003-09-28  Alfred M. Szmidt  <ams@kemisten.nu>
2495         * sysdeps/mach/hurd/bits/libc-lock.h (__libc_cleanup_pop):
2496         Redefine and use __libc_cleanup_region_end instead.
2498 2003-09-29  Thorsten Kukuk  <kukuk@suse.de>
2500         * sysdeps/unix/sysv/linux/sys/sysmacros.h: Use __inline and
2501         fix prototypes for picky C++ compilers.
2503 2003-09-27  Ulrich Drepper  <drepper@redhat.com>
2505         * sysdeps/unix/sysv/linux/ustat.c (ustat): Set errno to EINVAL if
2506         the device ID is invalid and return -1.
2507         * sysdeps/unix/sysv/linux/xmknod.c (__xmknod): Likewise.
2509 2003-09-26  Andreas Schwab  <schwab@suse.de>
2511         * sysdeps/unix/sysv/linux/ia64/getcontext.S: Pass fourth argument to
2512         rt_sigprocmask system call.
2514 2003-09-25  Roland McGrath  <roland@redhat.com>
2516         * sysdeps/unix/sysv/linux/dl-execstack.c (_dl_make_stack_executable):
2517         Don't check for zero __libc_stack_end, it should be initialized.
2518         [_STACK_GROWS_DOWN] [PROT_GROWSDOWN]: Try using PROT_GROWSDOWN flag
2519         and fall back if it fails with EINVAL.
2520         [_STACK_GROWS_UP] [PROT_GROWSUP]: Likewise for PROT_GROWSUP.
2522 2003-09-25  Jakub Jelinek  <jakub@redhat.com>
2524         * sysdeps/unix/sysv/linux/x86_64/dl-procinfo.c: Include
2525         sysdeps/i386/dl-procinfo.c instead of
2526         sysdeps/unix/sysv/linux/i386/dl-procinfo.c.
2527         * sysdeps/unix/sysv/linux/i386/dl-procinfo.h: Avoid using
2528         #include_next.
2530 2003-09-25  Ulrich Drepper  <drepper@redhat.com>
2532         * posix/regcomp.c (peek_token): Remove recent changes for anchor
2533         handling again.
2534         (parse_reg_exp): Likewise.
2535         * posix/regex.h: Remove RE_CARET_ANCHORS_HERE.
2537         * csu/Makefile ($(objpfx)version-info.h): Fix sed script to handle
2538         banners.
2540         * nis/nis_table.c (nis_list): Always strdup string used with
2541         ibreq->ibr_name.  Add several NULL pointer checks.
2543         * nis/nss_nisplus/nisplus-alias.c: Add check for NULL return value
2544         of nis_list.
2545         * nis/nss_nisplus/nisplus-ethers.c: Likewise.
2546         * nis/nss_nisplus/nisplus-grp.c: Likewise.
2547         * nis/nss_nisplus/nisplus-hosts.c: Likewise.
2548         * nis/nss_nisplus/nisplus-netgrp.c: Likewise.
2549         * nis/nss_nisplus/nisplus-network.c: Likewise.
2550         * nis/nss_nisplus/nisplus-proto.c: Likewise.
2551         * nis/nss_nisplus/nisplus-publickey.c: Likewise.
2552         * nis/nss_nisplus/nisplus-pwd.c: Likewise.
2553         * nis/nss_nisplus/nisplus-rpc.c: Likewise.
2554         * nis/nss_nisplus/nisplus-service.c: Likewise.
2555         * nis/nss_nisplus/nisplus-spwd.c: Likewise.
2557         * sysdeps/unix/sysv/linux/alpha/bits/mman.h: Define PROT_GROWSDOWN
2558         and PROT_GROWSUP.
2559         * sysdeps/unix/sysv/linux/arm/bits/mman.h: Likewise.
2560         * sysdeps/unix/sysv/linux/cris/bits/mman.h: Likewise.
2561         * sysdeps/unix/sysv/linux/hppa/bits/mman.h: Likewise.
2562         * sysdeps/unix/sysv/linux/i386/bits/mman.h: Likewise.
2563         * sysdeps/unix/sysv/linux/ia64/bits/mman.h: Likewise.
2564         * sysdeps/unix/sysv/linux/m68k/bits/mman.h: Likewise.
2565         * sysdeps/unix/sysv/linux/powerpc/bits/mman.h: Likewise.
2566         * sysdeps/unix/sysv/linux/s390/bits/mman.h: Likewise.
2567         * sysdeps/unix/sysv/linux/sh/bits/mman.h: Likewise.
2568         * sysdeps/unix/sysv/linux/sparc/bits/mman.h: Likewise.
2569         * sysdeps/unix/sysv/linux/x86_64/bits/mman.h: Likewise.
2571 2003-09-25  Jakub Jelinek  <jakub@redhat.com>
2573         * misc/syslog.c: Include locale.h.
2574         (vsyslog): Add date always in C locale %h %e %T format.
2576 2003-09-24  Paul Eggert  <eggert@twinsun.com>
2578         * argp/argp-fmtstream.c (__argp_fmtstream_ensure): Check for
2579         size_t overflow when reallocating storage.
2580         * argp/argp-help.c (make_hol, hol_append): Likewise.
2581         (SIZE_MAX): New macro.
2583 2003-08-07  Alfred M. Szmidt  <ams@kemisten.nu>
2585         * sysdeps/mach/hurd/bits/libc-lock.h
2586         (__libc_cleanup_push, __libc_cleanup_pop): New macros.
2588 2003-08-01  Alfred M. Szmidt  <ams@kemisten.nu>
2590         * sysdeps/i386/dl-procinfo.h: New file, contents taken from ...
2591         * sysdeps/unix/sysv/linux/i386/dl-procinfo.h: ... here.
2592         #include_next dl-procinfo.h to get them.
2593         (_DL_HWCAP_COUNT): Moved to sysdeps/i386/dl-procinfo.h.
2594         (_DL_PLATFORMS_COUNT): Likewise.
2595         (_DL_FIRST_PLATFORM): Likewise.
2596         (_DL_HWCAP_PLATFORM): Likewise.
2597         (HWCAP_I386_FPU, HWCAP_I386_VME, HWCAP_I386_DE, HWCAP_I386_PSE,
2598         HWCAP_I386_TSC, HWCAP_I386_MSR, HWCAP_I386_PAE, HWCAP_I386_MCE,
2599         HWCAP_I386_CX8, HWCAP_I386_APIC, HWCAP_I386_SEP, HWCAP_I386_MTRR,
2600         HWCAP_I386_PGE, HWCAP_I386_MCA, HWCAP_I386_CMOV,
2601         HWCAP_I386_FCMOV, HWCAP_I386_MMX, HWCAP_I386_OSFXSR,
2602         HWCAP_I386_XMM, HWCAP_I386_XMM2, HWCAP_I386_AMD3D,
2603         HWCAP_IMPORTANT): Likewise.
2604         (_DL_PROCINFO_H_): Likewise.
2605         (_dl_hwcap_string, _dl_platform_string, _dl_string_hwcap): Likewise.
2606         (_dl_string_platform): Likewise.
2607         * sysdeps/unix/sysv/linux/i386/dl-procinfo.c: Moved to ...
2608         * sysdeps/i386/dl-procinfo.c: ... here, new file.
2610 2003-09-24  Ulrich Drepper  <drepper@redhat.com>
2612         * sysdeps/unix/sysv/linux/dl-execstack.c
2613         (_dl_make_stack_executable): Remember that we changed the permission.
2615         * sysdeps/ia64/dl-machine.h (RTLD_START): Remove setting of
2616         __libc_stack_end.  Patch by David Mosberger.
2618 2003-09-24  Jakub Jelinek  <jakub@redhat.com>
2620         * elf/Versions (ld): Export __libc_stack_end@GLIBC_2.1 instead of
2621         __libc_stack_end@GLIBC_PRIVATE.
2623         * sysdeps/generic/dl-sysdep.c (DL_STACK_END): Define if not defined.
2624         (_dl_sysdep_start): Set __libc_stack_end here.
2625         * sysdeps/alpha/dl-machine.h (RTLD_START): Remove setting of
2626         __libc_stack_end.
2627         * sysdeps/arm/dl-machine.h (RTLD_START): Likewise.
2628         * sysdeps/cris/dl-machine.h (RTLD_START): Likewise.
2629         * sysdeps/i386/dl-machine.h (RTLD_START): Likewise.
2630         * sysdeps/m68k/dl-machine.h (RTLD_START): Likewise.
2631         * sysdeps/s390/s390-32/dl-machine.h (RTLD_START): Likewise.
2632         * sysdeps/s390/s390-64/dl-machine.h (RTLD_START): Likewise.
2633         * sysdeps/sh/dl-machine.h (RTLD_START): Likewise.
2634         * sysdeps/x86_64/dl-machine.h (RTLD_START): Likewise.
2635         * sysdeps/ia64/dl-machine.h (DL_STACK_END): Define.
2636         * sysdeps/sparc/sparc32/dl-machine.h (DL_STACK_END): Define.
2637         (RTLD_START): Remove setting of __libc_stack_end.
2638         * sysdeps/sparc/sparc64/dl-machine.h (DL_STACK_END): Define.
2639         (RTLD_START): Remove setting of __libc_stack_end.
2641 2003-09-24  Ulrich Drepper  <drepper@redhat.com>
2643         * sysdeps/unix/sysv/linux/sys/sysmacros.h: Add gnu_dev_ prefix to
2644         function definitions.  Adjust macro expansions accordingly.
2645         * sysdeps/unix/sysv/linux/Versions: Add gnu_dev_ prefix to major,
2646         minor, makedev name.
2647         * sysdeps/unix/sysv/linux/makedev.c: Likewise.
2649 2003-09-24  Jakub Jelinek  <jakub@redhat.com>
2651         * sysdeps/unix/sysv/linux/sys/sysmacros.h (major, minor, makedev):
2652         Add __THROW.
2654 2003-09-24  Jakub Jelinek  <jakub@redhat.com>
2656         * nscd/Makefile (others): Add nscd before including ../Rules.
2658 2003-09-24  Ulrich Drepper  <drepper@redhat.com>
2660         * nscd/Makefile: Add rules to build nscd as a PIE.
2661         * configure.in: Check for -fpie and -pie compiler options.
2662         * config.make.in (have-fpie): Define.
2664 2003-09-23  Ulrich Drepper  <drepper@redhat.com>
2666         * sysdeps/unix/sysv/linux/sys/sysmacros.h: Adjust for larger
2667         kernel dev_t size.
2668         * sysdeps/unix/sysv/linux/alpha/sys/sysmacros.h: Removed.
2669         * sysdeps/unix/sysv/linux/sparc/sys/sysmacros.h: Removed.
2670         * sysdeps/unix/sysv/linux/makedev.c: New file.
2671         * sysdeps/unix/sysv/linux/Dist: Add makedev.c.
2672         * sysdeps/unix/sysv/linux/Makefile [subdir=misc]
2673         (sysdep_routines): Add makedev.
2674         * sysdeps/unix/sysv/linux/Versions [libc] (GLIBC_2.3.3): Add
2675         major, minor, makedev.
2676         * sysdeps/unix/sysv/linux/ustat.c (ustat): Adjust for 32-bit
2677         kernel dev_t.
2678         * sysdeps/unix/sysv/linux/alpha/ustat.c: Removed.
2679         * sysdeps/unix/sysv/linux/xmknod.c (__xmknod): Likewise.
2680         * sysdeps/unix/sysv/linux/alpha/xmknod.c: Removed.
2681         Code by Alexander Viro <aviro@redhat.com>.
2683 2003-09-23  Ulrich Drepper  <drepper@redhat.com>
2685         * sysdeps/unix/sysv/linux/powerpc/powerpc32/Versions [libc]
2686         (GLIBC_2.3.3): Add setcontext, getcontext, swapcontext, and
2687         makecontext.
2688         * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: Correct change
2689         for include Altivec support for PPC32.  It was not compatible.
2690         * sysdeps/unix/sysv/linux/powerpc/powerpc32/ucontext_i.h: Adjust
2691         offsets for ucontext_t change.
2692         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Adjust
2693         for ucontext_t change.  Add compatibility code.
2694         * sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S: Likewise.
2695         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Likewise.
2696         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Likewise.
2697         Patch by Paul Mackerras <paulus@samba.org>.
2699 2003-02-25  Randolph Chung  <tausq@debian.org>
2701         * sysdeps/hppa/Makefile: Include compat code in build.
2702         * sysdeps/hppa/libgcc-compat.c: New file.
2703         * sysdeps/hppa/Dist: Add libgcc-compat.c.
2704         * sysdeps/hppa/Versions [GLIBC_2.2]: Add __clz_tab.
2706 2003-09-23  Roland McGrath  <roland@redhat.com>
2708         * elf/rtld.c (dl_main): In rtld_is_main case, reinitialize
2709         GL(dl_stack_flags) according to rtld's own PT_GNU_STACK.
2710         Move GL(dl_make_stack_executable_hook) initialization up.
2711         * elf/tst-execstack-prog.c: New file.
2712         * elf/Makefile (tests-execstack-yes): Add it.
2713         (LDFLAGS-tst-execstack-prog): New variable.
2715 2003-09-23  Jakub Jelinek  <jakub@redhat.com>
2717         * sysdeps/x86_64/dl-machine.h (RTLD_START): Set __libc_stack_end
2718         before calling _dl_start, using %rip relative access.
2719         Use %rip relative access to _dl_skip_args, _rtld_local._dl_loaded
2720         and _dl_fini.
2722 2003-09-23  Roland McGrath  <roland@redhat.com>
2724         * sysdeps/i386/dl-machine.h (RTLD_START): Set __libc_stack_end before
2725         calling _dl_start, using GOTOFF access.
2727         * configure.in (libc_cv_z_execstack): New check.
2728         * configure: Regenerated.
2729         * config.make.in (have-z-execstack): New variable set by it.
2730         * elf/tst-execstack.c: New file.
2731         * elf/tst-execstack-mod.c: New file.
2732         * elf/tst-execstack-needed.c: New file.
2733         * elf/Makefile (tests-execstack-yes, modules-execstack-yes): New
2734         variables.
2735         (tests, modules-names): Conditionally include them.
2736         (distribute): Add tst-execstack-mod.c here.
2737         ($(objpfx)tst-execstack, $(objpfx)tst-execstack.out): New targets.
2738         (LDFLAGS-tst-execstack, LDFLAGS-tst-execstack-mod): New variables.
2739         ($(objpfx)tst-execstack-needed): New target.
2740         (LDFLAGS-tst-execstack-needed): New variable.
2742         * sysdeps/generic/ldsodefs.h (struct rtld_global): Add _dl_stack_flags
2743         and _dl_make_stack_executable_hook.  Declare _dl_make_stack_executable.
2744         * elf/rtld.c (_rtld_global): Add initializer for _dl_stack_flags.
2745         (dl_main): Reset _dl_stack_flags according to PT_GNU_STACK phdr.
2746         Initialize _dl_make_stack_executable_hook.
2747         * elf/dl-support.c: Define those new variables.
2748         (_dl_non_dynamic_init): Scan phdrs for PT_GNU_STACK.
2749         (_dl_phdr): Fix type.
2750         * elf/dl-load.c (_dl_map_object_from_fd): Grok PT_GNU_STACK phdr and
2751         enable execute permission for the stack if necessary.
2752         * sysdeps/generic/dl-execstack.c: New file.
2753         * elf/Makefile (dl-routines): Add it.
2754         * elf/Versions (ld: GLIBC_PRIVATE): Add _dl_make_stack_executable.
2755         * sysdeps/unix/sysv/linux/dl-execstack.c: New file.
2757 2003-09-23  Ulrich Drepper  <drepper@redhat.com>
2759         * sysdeps/posix/sprofil.c (pc_to_index): Remove inline marker.
2761 2003-09-20  Alfred M. Szmidt  <ams@kemisten.nu>
2763         * sysdeps/generic/utmp_file.c (setutent_file, LOCK_FILE,
2764         UNLOCK_FILE, setutent_file): Use fcntl_not_cancel instead of
2765         __fcntl_nocancel.
2767 2003-09-22  Ulrich Drepper  <drepper@redhat.com>
2769         * malloc/malloc.c: Include <stdint.h>.
2771 2003-09-20  Paolo Bonzini  <bonzini@gnu.org>
2773         * posix/regcomp.c (build_word_op): Rename like...
2774         (build_charclass_op): ...this.  Accept two extra parameters,
2775         CLASS_NAME and EXTRA.  Add EXTRA to the result, not only _.
2776         (peek_token): Accept \s and \S as OP_SPACE and OP_NOTSPACE.
2777         (parse_expression): Replace build_word_op with
2778         build_charclass_op, add new arguments, accept OP_SPACE
2779         and OP_NOTSPACE.
2780         * posix/regex_internal.h (re_token_type_t): Add OP_SPACE
2781         and OP_NOTSPACE.
2783         * posix/regcomp.c (peek_token): Don't look back for ( or |
2784         to check whether to treat a caret as special.  It fails
2785         for the (extended) regex \(^.
2786         (parse, parse_reg_exp): Pass RE_CARET_ANCHORS_HERE to fetch_token.
2787         * posix/regex.h: Define RE_CARET_ANCHORS_HERE.
2789         * posix/regexec.c: Check out of bounds value before shifting.
2791         * posix/regex_internal.h: Define __attribute for non-gcc.
2793 2003-09-22  Jakub Jelinek  <jakub@redhat.com>
2795         * include/atomic.h (atomic_compare_and_exchange_val_rel,
2796         atomic_compare_and_exchange_bool_rel): Swap oldval/newval arguments
2797         to avoid confusion.
2799         * sysdeps/unix/opendir.c: Include string.h.
2801 2003-09-22  Ulrich Drepper  <drepper@redhat.com>
2803         * timezone/zdump.c: Update from tzcode2003c.
2804         * timezone/zic.c: Likewise.
2805         * timezone/leapseconds: Update from tzdata2003c.
2807 2003-09-19  Ulrich Drepper  <drepper@redhat.com>
2809         * elf/Makefile ($(objpfx)librtld.os): Create link map also for
2810         final build to ease quality control.
2812         * sysdeps/unix/sysv/linux/getcwd.c (__getcwd): If compiled for
2813         ld.so, don't include NULL buffer pointer handling.
2815 2003-09-19  Jakub Jelinek  <jakub@redhat.com>
2817         * dlfcn/dlopen.c (dlopen): Add static_link_warning.
2819 2003-09-18  Jakub Jelinek  <jakub@redhat.com>
2821         * libio/memstream.c (open_memstream): Use _IO_init instead of
2822         _IO_old_init.
2824 2003-09-17  Ulrich Drepper  <drepper@redhat.com>
2826         * sysdeps/generic/wordexp.c (eval_expr_val): Use strtol since we
2827         have to recognize octal and hexadecimal numbers as well.  Simplify
2828         function, signs are handled in strtol.
2829         * posix/wordexp-test.c: Add tests for octal and hexadecimal
2830         numbers in arithmetic expressions.
2832 2003-09-17  Jakub Jelinek  <jakub@redhat.com>
2834         * elf/Makefile (distribute): Add tst-alignmod.c.
2835         (tests): Add tst-align.
2836         (modules-names): Add tst-alignmod.
2837         (CFLAGS-tst-align.c, CFLAGS-tst-alignmod.c): Add
2838         $(stack-align-test-flags).
2839         ($(objpfx)tst-align): Depend on libdl.
2840         ($(objpfx)tst-align.out): Depend on tst-alignmod.so.
2841         * elf/tst-align.c: New file.
2842         * elf/tst-alignmod.c: New file.
2843         * misc/Makefile (CFLAGS-tst-tsearch.c): Add $(stack-align-test-flags).
2844         * misc/tst-tsearch.c: Include tst-stack-align.h.
2845         (stack_align_check): New array.
2846         (cmp_fn, walk_action): Use TEST_STACK_ALIGN ().
2847         (main): Report error if stack was not enough aligned
2848         in cmp_fn or walk_action.
2849         * stdlib/Makefile (CFLAGS-tst-qsort.c): Add $(stack-align-test-flags).
2850         * stdlib/tst-qsort.c: Include tst-stack-align.h.
2851         (align_check): New var.
2852         (compare): Use TEST_STACK_ALIGN () macro.
2853         (main): Report error if stack was not enough aligned in compare.
2854         * sysdeps/i386/i686/Makefile (stack-align-test-flags): Remove
2855         unneeded -mpreferred-stack-boundary=4.
2856         * sysdeps/x86_64/tst-stack-align.h: New file.
2858         * libio/memstream.c (_IO_wmem_jumps): Remove unused structure.
2859         (_IO_wmem_sync, _IO_wmem_finish): Remove unused functions.
2861 2003-09-17  Philip Blundell  <philb@gnu.org>
2863         * sysdeps/arm/dl-machine.h (CALL_ROUTINE): Deleted.
2864         (BX): Define.
2865         (ELF_MACHINE_RUNTIME_TRAMPOLINE): Optimise a little.
2867         * sysdeps/arm/sysdep.h (DO_RET): New.
2869         * sysdeps/unix/sysv/linux/arm/vfork.S: Add #error if __NR_vfork
2870         required but not defined.  Improve test of error code.
2872 2003-09-17  Jakub Jelinek  <jakub@redhat.com>
2874         * sysdeps/i386/Makefile (stack-align-test-flags): Add
2875         -malign-double -mpreferred-stack-boundary=4.
2877 2003-09-17  Ulrich Drepper  <drepper@redhat.com>
2879         * sysdeps/posix/utimes.c (__utimes): Truncate instead of round.
2880         * sysdeps/unix/sysv/linux/utimes.c (__utimes): Likewise.
2882 2003-09-15  Jakub Jelinek  <jakub@redhat.com>
2884         * sysdeps/i386/Makefile (sysdep-CFLAGS): If not in math or csu
2885         subdir, add -mpreferred-stack-boundary=4, with few exceptions.
2887 2003-09-17  Jakub Jelinek  <jakub@redhat.com>
2889         * Makeconfig (stack-align-test-flags): Set.
2890         * stdlib/Makefile (CFLAGS-tst-bsearch.c): Add
2891         $(stack-align-test-flags).
2892         * stdlib/tst-bsearch.c: Include tst-stack-align.h.
2893         (align_check): New var.
2894         (comp): Use TEST_STACK_ALIGN macro.
2895         (do_test): Fail if align_check != 1.
2896         * sysdeps/generic/tst-stack-align.h: New file.
2897         * sysdeps/i386/i686/Makefile (stack-align-test-flags): Add -msse.
2898         * sysdeps/i386/i686/tst-stack-align.h: New file.
2900 2003-09-17  Ulrich Drepper  <drepper@redhat.com>
2902         * sysdeps/unix/sysv/linux/i386/clone.S: Make sure child gets a
2903         stack which is aligned (mod 16).
2905 2003-09-17  Uwe Reimann  <Uwe_Reimann@gmx.net>
2906             Hans-Peter Nilsson  <hp@axis.com>
2908         * sysdeps/cris/dl-machine.h (elf_machine_type_class): Classify
2909         R_CRIS_GLOB_DAT as ELF_RTYPE_CLASS_PLT.  Clarify comment.
2911 2003-09-17  Jakub Jelinek  <jakub@redhat.com>
2913         * dirent/scandir.c: Include bits/libc-lock.h.
2914         (struct scandir_cancel_struct): New type.
2915         (cancel_handler): New function.
2916         (SCANDIR): Add __libc_cleanup_{push,pop}, save state into
2917         scandir_cancel_struct.
2919 2003-09-16  Ulrich Drepper  <drepper@redhat.com>
2921         * sysdeps/unix/sysv/linux/Dist: Remove internal_statvfs.c.
2922         * sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines):
2923         Add internal_statvfs.
2924         * sysdeps/unix/sysv/linux/fstatvfs.c: Call __internal_statvfs
2925         instead of including "internal_statvfs.c".
2926         * sysdeps/unix/sysv/linux/statvfs.c: Likewise.
2927         * sysdeps/unix/sysv/linux/internal_statvfs.c: Make it a real function.
2928         Add code to avoid the stat calls on all the reported mount points
2929         when we can determine mismatch in advance.
2930         * sysdeps/unix/sysv/linux/linux_fsinfo.h: Add AUTOFS_SUPER_MAGIC and
2931         USBDEVFS_SUPER_MAGIC.
2933 2003-09-16  Jakub Jelinek  <jakub@redhat.com>
2935         * posix/Versions (sched_getaffinity, sched_setaffinity): Change
2936         from GLIBC_2.3.2 to GLIBC_2.3.3 symbol version.
2938 2003-09-16  Bruno Haible  <bruno@clisp.org>
2940         * intl/tst-gettext2.sh: Set GCONV_PATH and LOCPATH only after
2941         invoking msgfmt, not before.
2943 2003-09-15  Jakub Jelinek  <jakub@redhat.com>
2945         * argp/argp.h (argp_parse, __argp_parse): Remove __THROW.
2946         * argp/Makefile (CFLAGS-argp-help.c, CFLAGS-argp-parse.c): Add
2947         $(uses-callbacks).
2948         * dirent/Makefile (CFLAGS-scandir.c, CFLAGS-scandir64.c): Likewise.
2949         * elf/Makefile (CFLAGS-dl-iterate-phdr.c,
2950         CFLAGS-dl-iterate-phdr-static.c): Add $(uses-callbacks).
2951         * elf/dl-iteratephdr.c (cancel_handler): New function.
2952         (__dl_iterate_phdr): Add __libc_cleanup_{push,pop}.
2953         * elf/link.h (dl_iterate_phdr): Remove __THROW.
2954         * io/Makefile (CFLAGS-fts.c): Merge into one assignment.
2955         Add $(uses-callbacks).
2956         (CFLAGS-ftw.c, CFLAGS-ftw64.c): Add $(uses-callbacks).
2957         * misc/Makefile (CFLAGS-tsearch.c, CFLAGS-lsearch.c): Change
2958         $(exceptions) to $(uses-callbacks).
2959         * Makeconfig (uses-callbacks): Set to $(exceptions).
2960         * posix/Makefile (CFLAGS-glob.c, CFLAGS-glob64.c): Add
2961         $(uses-callbacks).
2962         * stdlib/Makefile (CFLAGS-bsearch.c, CFLAGS-msort.c, CFLAGS-qsort.c):
2963         Likewise.
2965 2003-09-15  Andreas Schwab  <schwab@suse.de>
2967         * sysdeps/m68k/setjmp.c: Add hidden_def.
2969 2003-09-14  Ulrich Drepper  <drepper@redhat.com>
2971         * libio/memstream.c (open_memstream): Don't allow wide char operations.
2973         * dirent/dirent.h: Remove __THROW from scandir.
2975 2003-09-14  Philip Blundell  <philb@gnu.org>
2977         * sysdeps/unix/sysv/linux/arm/mmap.S: Use sys_mmap2 if it's known
2978         to be available.
2980         * sysdeps/unix/sysv/linux/arm/mmap64.S: Optimise code a little.
2982         * sysdeps/arm/memset.S: Rewrite.
2984 2003-09-12  Jakub Jelinek  <jakub@redhat.com>
2986         * sysdeps/unix/sysv/linux/s390/bits/typesizes.h: New.
2987         (__SSIZE_T_TYPE): Define to __SWORD_TYPE for gcc 2.95.x and
2988         __SLONGWORD_TYPE otherwise.
2990 2003-09-14  Ulrich Drepper  <drepper@redhat.com>
2992         * io/Makefile (CFLAGS-ftw.c): Add -fexceptions.
2993         (CFLAGS-ftw64.c): Likewise.
2995 2003-09-13  Ulrich Drepper  <drepper@redhat.com>
2997         * nscd/Makefile (CFLAGS-nscd_getpw_r.c): Add -fexceptions.
2998         (CFLAGS-nscd_getgr_r.c): Likewise.
2999         (CFLAGS-nscd_gethst_r.c): Likewise.
3001 2003-09-12  Ulrich Drepper  <drepper@redhat.com>
3003         * sysdeps/unix/sysv/linux/if_index.c: Use only non-cancelable
3004         interfaces.
3006         * grp/Makefile (CFLAGS-getgrgid_r.c, CFLAGS-getgrnam_r.c,
3007         CFLAGS-fgetgrent.c, CFLAGS-fgetgrent_r.c, CFLAGS-putgrent.c,
3008         CFLAGS-initgroups.c, CFLAGS-getgrgid.c): Add -fexceptions.
3009         * inet/Makefile (CFLAGS-either_ntoh.c, CFLAGS-either_hton.c,
3010         CFLAGS-getnetgrent.c, CFLAGS-getnetgrent_r.c): Likewise.
3011         * io/Makefile (CFLAGS-posix_fallocate.c, CFLAGS-posix_fallocate64.c):
3012         Likewise.
3013         * misc/Makefile (CFLAGS-err.c): Likewise.
3014         * posix/Makefile (CFLAGS-getaddrinfo.c, CFLAGS-spawn.c,
3015         CFLAGS-spawnp.c, CFLAGS-spawni.c, CFLAGS-pause.c, CFLAGS-glob.c,
3016         CFLAGS-glob64.c): Likewise.
3017         * pwd/Makefile (CFLAGS-getpw.c): Likewise.
3018         * shadow/Makefile (CFLAGS-fgetspent.c, CFLAGS-fgetspent_r.c,
3019         CFLAGS-putspent.c, CFLAGS-getspnam.c, CFLAGS-getspnam_r.c): Likewise.
3020         * stdio-common/Makefile (CFLAGS-cuserid.c): Likewise.
3021         * sunrpc/Makefile (CFLAGS-openchild.c): Likewise.
3023         * stdlib/Makefile (CFLAGS-mkstemp.c): Remove definition.
3025         * libio/stdio.h: Remove __THROW from cuserid prototype.
3027         * locale/loadarchive.c: Use only non-cancelable interfaces.
3028         * resolv/herror.c (herror): Likewise.
3030         * malloc/hooks.c: Before using IO stream mark stream so it uses
3031         only non-cancelable interfaces.
3032         * malloc/malloc.c: Likewise.
3033         * posix/getopt.c: Likewise.
3036 2003-09-11  Jakub Jelinek  <jakub@redhat.com>
3038         * Makerules (LDFLAGS-c.so): Remove -u __register_frame.
3040 2003-09-12  Ulrich Drepper  <drepper@redhat.com>
3042         * stdio-common/stdio_ext.h: Mark most functions with __THROW.
3044         * misc/err.h: Remove __THROW from all prototypes.
3046         * posix/getopt.h (__THROW): Define if not already defined.  Add
3047         __THROW to the getopt functions.
3049 2003-09-11  Ulrich Drepper  <drepper@redhat.com>
3051         * io/Makefile (CFLAGS-lockf.c): Add -fexceptions.
3052         (CFLAGS-fts.c): Likewise.
3053         * io/fcntl.h: Remove __THROW from lockf prototypes.
3054         * io/fts.h: Remove most __THROW.
3056 2003-09-11  H.J. Lu  <hongjiu.lu@intel.com>
3058         * elf/tls-macros.h (TLS_IE): Add a stop bit for ia64.
3059         (TLS_LD): Likewise.
3060         (TLS_GD): Likewise.
3062 2003-09-11  Jakub Jelinek  <jakub@redhat.com>
3064         * libio/fileops.c (_IO_new_file_overflow): Add INTUSE to
3065         _IO_free_backup_area call.
3067 2003-09-10  Chris Demetriou  <cgd@broadcom.com>
3069         * sysdeps/unix/sysv/linux/mips/pread64.c (__libc_pread64): Fix
3070         syscall invocation.
3071         * sysdeps/unix/sysv/linux/mips/pwrite64.c (__libc_pwrite64): Likewise.
3072         * sysdeps/unix/sysv/linux/mips/pread.c (__libc_pread): Likewise.
3073         Also, only assert off_t size is 4 for N32 and O32, and clean up
3074         white space.
3075         * sysdeps/unix/sysv/linux/mips/pwrite.c (__libc_pwrite): Likewise.
3077 2003-09-10  Roland McGrath  <roland@redhat.com>
3079         * sysdeps/unix/sysv/linux/tcgetattr.c (__tcgetattr):
3080         Don't use c_ispeed under [! _HAVE_STRUCT_TERMIOS_C_ISPEED].
3081         Don't use c_ospeed under [! _HAVE_STRUCT_TERMIOS_C_OSPEED].
3082         * sysdeps/unix/sysv/linux/tcsetattr.c (tcsetattr): Likewise.
3083         Reported by Daniel Jacobowitz  <drow@mvista.com>.
3085 2003-09-10  Jakub Jelinek  <jakub@redhat.com>
3087         * string/Makefile (strop-tests): Add memccpy.
3088         * string/test-memccpy.c: New test.
3090 2003-09-09  Jakub Jelinek  <jakub@redhat.com>
3092         * sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h (SIGCONTEXT): Add
3093         siginfo_t * argument before, change into struct ucontext *.
3094         (SIGCONTEXT_EXTRA_ARGS): Define to _si,.
3095         (GET_PC, GET_FRAME, GET_STACK): Adjust for ctx being a pointer
3096         instead of structure.
3097         * sysdeps/unix/sysv/linux/x86_64/register-dump.h (REGISTER_DUMP):
3098         Likewise.
3100 2003-09-09  Ulrich Drepper  <drepper@redhat.com>
3102         * string/stratcliff.c (main): Check memccpy.
3104 2003-04-11  Jes Sorensen  <jes@wildopensource.com>
3106         * sysdeps/ia64/memccpy.S: When recovering for src_aligned and the
3107         character is found during recovery, use correct register when
3108         determining the position of the found character.
3110 2003-04-01  Jes Sorensen  <jes@wildopensource.com>
3112         * sysdeps/ia64/memccpy.S: Use speculatively loads for readahead to
3113         avoid segfaults when reading from unmapped pages. For aligned
3114         reload and continue, for misaligned, roll back and use byte copy.
3115         Save ar.ec on entry and restore on exit.
3117 2003-09-09  Chris Demetriou  <cgd@broadcom.com>
3119         * sysdeps/unix/mips/sysdep.h (PSEUDO_END): Undef before defining.
3121 2003-09-08  Chris Demetriou  <cgd@broadcom.com>
3123         * sysdeps/mips/mips64/n32/Implies: Move ieee754/ldbl-128 to
3124         the top of the list.
3125         * sysdeps/mips/mips64/n64/Implies: Likewise.
3127 2003-09-08  Roland McGrath  <roland@frob.com>
3129         * sysdeps/unix/sysv/linux/speed.c
3130         (cfsetospeed): Only set c_ospeed under [_HAVE_STRUCT_TERMIOS_C_OSPEED].
3131         (cfsetispeed): Only set c_ispeed under [_HAVE_STRUCT_TERMIOS_C_ISPEED].
3132         * sysdeps/unix/sysv/linux/bits/termios.h
3133         (_HAVE_STRUCT_TERMIOS_C_ISPEED, _HAVE_STRUCT_TERMIOS_C_OSPEED): Define.
3134         * sysdeps/unix/sysv/linux/alpha/bits/termios.h: Likewise.
3135         * sysdeps/unix/sysv/linux/powerpc/bits/termios.h: Likewise.
3137 2003-09-08  Ulrich Drepper  <drepper@redhat.com>
3139         * sysdeps/unix/sysv/linux/x86_64/register-dump.h: Undo last change.
3140         * sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h: Likewise.
3142 2003-09-08  Jakub Jelinek  <jakub@redhat.com>
3144         * sysdeps/generic/bits/types.h (__quad_t): Make long int if 64-bit.
3145         (__u_quad_t): Make unsigned long int if 64-bit.
3146         (__SQUAD_TYPE): Make long int if 64-bit.
3147         (__UQUAD_TYPE): Make unsigned long int if 64-bit.
3148         * sysdeps/unix/sysv/linux/s390/bits/typesizes.h: Remove.
3150 2003-09-08  Ulrich Drepper  <drepper@redhat.com>
3152         * Makefile (tests): Run check-c++-types.sh if possible.
3153         * scripts/check-c++-types.h: New file.
3154         * scripts/data/c++-types-i386-linux-gnu.data: New file.
3156 2003-09-08  Andreas Jaeger  <aj@suse.de>
3158         * sysdeps/unix/sysv/linux/x86_64/register-dump.h (register_dump):
3159         Use struct sigcontext.
3161         * sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h (SIGCONTEXT):
3162         Use struct sigcontext.
3163         (GET_PC): Adopt.
3164         (GET_FRAME): Likewise.
3165         (GET_STACK): Likewise.
3167 2003-09-08  Wolfram Gloger  <wg@malloc.de>
3169         * malloc/malloc.c (sYSMALLOc): Move foreign sbrk accounting into
3170         contiguous case.  Bug report from Prem Gopalan <prem@mazunetworks.com>.
3171         (mALLOPt): Avoid requirement of C99.
3173 2003-09-08  Ulrich Drepper  <drepper@redhat.com>
3175         * libio/bug-ftell.c: Include <sys/types.h>.
3176         (main): Mark cp as const.
3178 2003-09-07  Jakub Jelinek  <jakub@redhat.com>
3180         * sysdeps/unix/sysv/linux/syscalls.list (fcntl): Remove.
3181         * sysdeps/unix/sysv/linux/x86_64/fcntl.c: Remove.
3183 2003-09-05  Roland McGrath  <roland@redhat.com>
3185         * sysdeps/unix/sysv/linux/tcgetattr.c (__tcgetattr): Fill in c_ispeed
3186         and c_ospeed fields.
3187         * sysdeps/unix/sysv/linux/speed.c (cfsetospeed): Set c_ospeed field.
3188         (cfsetispeed): Set c_ispeed field.
3189         * sysdeps/unix/sysv/linux/tcsetattr.c (IBAUD0): Define unconditionally
3190         to match corresponding speed.c code.
3192 2003-09-06  Ulrich Drepper  <drepper@redhat.com>
3194         * libio/wfileops.c (_IO_wfile_underflow): Mark beginning of the
3195         narrow character buffer.
3196         * libio/Makefile: Add rules to build and run bug-ftell.
3197         * libio/bug-ftell.c: New file.
3199         * stdio-common/vfprintf.c: Don't use the first grouping number twice.
3201         * stdio-common/vfscanf.c (vfscanf): Fix recognition of characters
3202         matching the decimal point and possibly leading the thousands
3203         separator.  This caused the recognition of thousands separators to
3204         always fail.
3206 2003-09-05  Ulrich Drepper  <drepper@redhat.com>
3208         * libio/fileops.c (_IO_new_file_overflow): Handle switching to
3209         write mode from read in backup buffer.
3210         * libio/Makefile (tests): Add bug-ungetc2.
3211         * libio/bug-ungetc2.c: New file.
3213 2003-09-05  Roland McGrath  <roland@redhat.com>
3215         * nss/getXXbyYY.c (FUNCTION_NAME): Remove unused variable.
3217 2003-09-04  Roland McGrath  <roland@frob.com>
3219         * sysdeps/mach/hurd/mmap.c (__mmap): If io_map fails with MIG_BAD_ID,
3220         EOPNOTSUPP, or ENOSYS, change it to ENODEV.
3222 2003-09-04  H.J. Lu  <hongjiu.lu@intel.com>
3224         * sysdeps/unix/sysv/linux/ia64/bits/sigstack.h (MINSIGSTKSZ):
3225         Fix a typo.
3227 2003-09-05  Andreas Jaeger  <aj@suse.de>
3229         * sysdeps/i386/bits/string.h (__memrchr): Do addition in assembler
3230         to make it conforming C.
3231         * sysdeps/i386/i486/bits/string.h (__memrchr): Likewise.
3233         * sysdeps/unix/sysv/linux/i386/fcntl.c (__fcntl_nocancel): Change
3234         prototype to use variable argument lists and get the possible one
3235         argument via va_arg.
3236         * sysdeps/unix/sysv/linux/fcntl.c (__fcntl_nocancel): Likewise.
3237         * sysdeps/unix/sysv/linux/x86_64/fcntl.c: New.
3239 2003-09-04  Ulrich Drepper  <drepper@redhat.com>
3241         * posix/unistd.h: Add back __THROW to sysconf, pathconf, fpathconf.
3243         * sysdeps/unix/sysv/linux/pathconf.c (__statfs_filesize_max):
3244         Report correct value for vxfs.
3245         * sysdeps/unix/sysv/linux/linux_fsinfo.h: Define VXFS_SUPER_MAGIC.
3247         * gmon/gmon.c: Use only not-cancelable syscalls to write profiling
3248         data.
3250         * sysdeps/generic/utmp_file.c: Use not-cancelable syscalls all
3251         over the place.  It would be allowed to have these functions as
3252         cancellation points but the cleanup would be ugly and a lot of
3253         work.
3255         * sysdeps/generic/not-cancel.h (fcntl_not_cancel): Define.
3256         * sysdeps/unix/sysv/linux/not-cancel.h (fcntl_not_cancel): Define.
3258         * include/fcntl.h (__fcntl_nocancel): Declare.
3259         * sysdeps/unix/sysv/linux/fcntl.c: New file.
3260         * sysdeps/unix/sysv/linux/i386/fcntl.c (__libc_fcntl): Only enable
3261         cancellation if absolutely needed.
3262         (__fcntl_nocancel): Define.
3264         * posix/unistd.h (gethostid): Remove __THROW.  Clarify comment.
3265         * sysdeps/unix/sysv/linux/Makefile (CFLAGS-gethostid.c): Add
3266         -fexceptions.
3267         * sysdeps/unix/sysv/linux/gethostid.c (gethostid): Use
3268         extend_alloca.
3270         * resolv/res_init.c (__res_nclose): Use close_not_cancel_no_status
3271         instead of __close.
3273         * nss/getXXbyYY.c (FUNCTION_NAME): Add a few casts.  Remove
3274         unnecessary errno handling.
3276         * nss/getXXbyYY_r.c (INTERNAL): Use better variable name.
3277         Initialize it in all cases.  Change it to be a bit more like the
3278         code we had before.
3280 2003-09-04  Jakub Jelinek  <jakub@redhat.com>
3282         * libio/fileops.c (_IO_file_read, _IO_new_file_write): Add
3283         __builtin_expect.
3284         (_IO_file_open): Likewise.  Use close_not_cancel.
3286 2003-09-04  Ulrich Drepper  <drepper@redhat.com>
3288         * libio/libio.h: Define _IO_FLAGS2_NOTCANCEL.
3289         * libio/fileops.c [_LIBC]: Remove close macro.
3290         (_IO_file_open): If _IO_FLAGS2_NOTCANCEL is set, use open_not_cancel.
3291         (_IO_new_file_open): Recognize 'c' flag in mode string.
3292         (_IO_file_read): If _IO_FLAGS2_NOTCANCEL is set use read_not_cancel.
3293         (_IO_new_file_write): If _IO_FLAGS2_NOTCANCEL is set use
3294         write_not_cancel.
3295         * iconv/gconv_conf.c: Use fopen with 'c' mode flag.
3296         * inet/rcmd.c: Likewise.
3297         * inet/ruserpass.c: Likewise.
3298         * intl/localealias.c: Likewise.
3299         * malloc/mtrace.c: Likewise.
3300         * misc/getpass.c: Likewise.
3301         * misc/getttyent.c: Likewise.
3302         * misc/mntent_r.c: Likewise.
3303         * misc/getusershell.c: Likewise.
3304         * nss/nsswitch.c: Likewise.
3305         * resolv/res_hconf.c: Likewise.
3306         * resolv/res_init.c: Likewise.
3307         * sysdeps/unix/sysv/linux/getsysstats.c: Likewise.
3308         * time/getdate.c: Likewise.
3309         * time/tzfile.c: Likewise.
3310         * misc/fstab.h: Undo last change.
3311         * misc/mntent.h: Likewise.
3312         * misc/Makefile: Remove CFLAGS-mntent_r.c, CFLAGS-mntent.c, and
3313         CFLAGS-fstab.c definition.
3315 2003-09-04  Jakub Jelinek  <jakub@redhat.com>
3317         * sysdeps/generic/unwind.h (_Unwind_GetBSP): Add prototype.
3319 2003-09-03  Ulrich Drepper  <drepper@redhat.com>
3321         * nss/getXXbyYY_r.c (INTERNAL): Explicitly set errno and avoid
3322         returning ERANGE if this wasn't intended.
3324 2003-09-03  Jakub Jelinek  <jakub@redhat.com>
3326         * intl/loadmsgcat.c (open, close, read, mmap, munmap): Define as
3327         function-like macros.
3329 2003-09-03  Ulrich Drepper  <drepper@redhat.com>
3331         * grp/Makefile (CFLAGS-getgrent_r.c): Add -fexceptions.
3332         (CFLAGS-getgrent.c): Likewise.
3333         * pwd/Makefile (CFLAGS-getpwent_r.c): Add -fexceptions.
3334         (CFLAGS-getpwent.c): Likewise.
3335         * shadow/Makefile (CFLAGS-getspent_r.c): Add -fexceptions.
3336         (CFLAGS-getspent.c): Likewise.
3338         * inet/Makefile: Add -fexceptions to CFLAGS for the various
3339         getXXent and getXXbyYY functions.
3341         * locale/loadlocale.c: Use not-cancelable variants of open, close,
3342         and read.
3344 2003-09-02  Jakub Jelinek  <jakub@redhat.com>
3346         * sysdeps/unix/sysv/linux/alpha/Makefile (sysdep_routines): Remove
3347         rt_sigsuspend, rt_sigprocmask, rt_sigtimedwait, rt_sigqueueinfo and
3348         rt_sigpending.
3349         * sysdeps/unix/sysv/linux/alpha/sigaction.c (__syscall_rt_sigaction):
3350         New prototype.
3351         * sysdeps/unix/sysv/linux/arm/syscalls.list (__syscall_*): Remove
3352         unused __syscall_ stubs.
3353         * sysdeps/unix/sysv/linux/arm/Makefile (sysdep_routines): Remove
3354         rt_*.
3355         * sysdeps/unix/sysv/linux/cris/Makefile: Removed.
3356         * sysdeps/unix/sysv/linux/mips/mips64/syscalls.list
3357         (__syscall_recvfrom, __syscall_sendto): Remove unused aliases.
3358         * sysdeps/unix/sysv/linux/mips/syscalls.list (__syscall_*): Remove
3359         unused __syscall_ stubs.
3360         * sysdeps/unix/sysv/linux/mips/Makefile (sysdep_routines): Remove rt_*.
3361         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list
3362         (__syscall_*): Remove unused __syscall_ stubs.
3363         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list
3364         (__syscall_*): Likewise.
3365         * sysdeps/unix/sysv/linux/powerpc/Makefile (sysdep_routines): Remove
3366         rt_*.
3367         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (__syscall_*):
3368         Remove unused __syscall_ stubs.
3369         * sysdeps/unix/sysv/linux/sh/Makefile (sysdep_routines): Remove rt_*.
3370         * sysdeps/unix/sysv/linux/rt_sigaction.c: Removed.
3371         * sysdeps/unix/sysv/linux/rt_sigpending.c: Removed.
3372         * sysdeps/unix/sysv/linux/rt_sigprocmask.c: Removed.
3373         * sysdeps/unix/sysv/linux/rt_sigqueueinfo.c: Removed.
3374         * sysdeps/unix/sysv/linux/rt_sigreturn.c: Removed.
3375         * sysdeps/unix/sysv/linux/rt_sigsuspend.c: Removed.
3376         * sysdeps/unix/sysv/linux/rt_sigtimedwait.c: Removed.
3377         * sysdeps/unix/sysv/linux/s_pread64.c: Removed.
3378         * sysdeps/unix/sysv/linux/s_pwrite64.c: Removed.
3379         * sysdeps/unix/sysv/linux/alpha/gethostname.c: Remove unused
3380         __syscall_* prototypes.
3381         * sysdeps/unix/sysv/linux/alpha/ipc_priv.h: Likewise.
3382         * sysdeps/unix/sysv/linux/alpha/msgctl.c: Likewise.
3383         * sysdeps/unix/sysv/linux/alpha/semctl.c: Likewise.
3384         * sysdeps/unix/sysv/linux/alpha/shmctl.c: Likewise.
3385         * sysdeps/unix/sysv/linux/arm/sigaction.c: Likewise.
3386         * sysdeps/unix/sysv/linux/i386/chown.c: Likewise.
3387         * sysdeps/unix/sysv/linux/i386/fchown.c: Likewise.
3388         * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.
3389         * sysdeps/unix/sysv/linux/i386/fxstat.c: Likewise.
3390         * sysdeps/unix/sysv/linux/i386/getegid.c: Likewise.
3391         * sysdeps/unix/sysv/linux/i386/geteuid.c: Likewise.
3392         * sysdeps/unix/sysv/linux/i386/setuid.c: Likewise.
3393         * sysdeps/unix/sysv/linux/i386/getgid.c: Likewise.
3394         * sysdeps/unix/sysv/linux/i386/getgroups.c: Likewise.
3395         * sysdeps/unix/sysv/linux/i386/getmsg.c: Likewise.
3396         * sysdeps/unix/sysv/linux/i386/xstat.c: Likewise.
3397         * sysdeps/unix/sysv/linux/i386/getresgid.c: Likewise.
3398         * sysdeps/unix/sysv/linux/i386/getresuid.c: Likewise.
3399         * sysdeps/unix/sysv/linux/i386/getrlimit.c: Likewise.
3400         * sysdeps/unix/sysv/linux/i386/getuid.c: Likewise.
3401         * sysdeps/unix/sysv/linux/i386/lchown.c: Likewise.
3402         * sysdeps/unix/sysv/linux/i386/lockf64.c: Likewise.
3403         * sysdeps/unix/sysv/linux/i386/lxstat.c: Likewise.
3404         * sysdeps/unix/sysv/linux/i386/putmsg.c: Likewise.
3405         * sysdeps/unix/sysv/linux/i386/setfsgid.c: Likewise.
3406         * sysdeps/unix/sysv/linux/i386/setfsuid.c: Likewise.
3407         * sysdeps/unix/sysv/linux/i386/setgid.c: Likewise.
3408         * sysdeps/unix/sysv/linux/i386/setgroups.c: Likewise.
3409         * sysdeps/unix/sysv/linux/i386/setregid.c: Likewise.
3410         * sysdeps/unix/sysv/linux/i386/setresgid.c: Likewise.
3411         * sysdeps/unix/sysv/linux/i386/setresuid.c: Likewise.
3412         * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise.
3413         * sysdeps/unix/sysv/linux/i386/setrlimit.c: Likewise.
3414         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
3415         * sysdeps/unix/sysv/linux/ia64/fxstat.c: Likewise.
3416         * sysdeps/unix/sysv/linux/ia64/lxstat.c: Likewise.
3417         * sysdeps/unix/sysv/linux/ia64/sigaction.c: Likewise.
3418         * sysdeps/unix/sysv/linux/ia64/sigpending.c: Likewise.
3419         * sysdeps/unix/sysv/linux/ia64/sigprocmask.c: Likewise.
3420         * sysdeps/unix/sysv/linux/ia64/sigsuspend.c: Likewise.
3421         * sysdeps/unix/sysv/linux/ia64/xstat.c: Likewise.
3422         * sysdeps/unix/sysv/linux/m68k/chown.c: Likewise.
3423         * sysdeps/unix/sysv/linux/mips/ftruncate64.c: Likewise.
3424         * sysdeps/unix/sysv/linux/mips/pread.c: Likewise.
3425         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
3426         * sysdeps/unix/sysv/linux/mips/ptrace.c: Likewise.
3427         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
3428         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
3429         * sysdeps/unix/sysv/linux/mips/sigaction.c: Likewise.
3430         * sysdeps/unix/sysv/linux/mips/truncate64.c: Likewise.
3431         * sysdeps/unix/sysv/linux/mips/ustat.c: Likewise.
3432         * sysdeps/unix/sysv/linux/mips/xmknod.c: Likewise.
3433         * sysdeps/unix/sysv/linux/powerpc/chown.c: Likewise.
3434         * sysdeps/unix/sysv/linux/powerpc/ioctl.c: Likewise.
3435         * sysdeps/unix/sysv/linux/s390/s390-32/chown.c: Likewise.
3436         * sysdeps/unix/sysv/linux/s390/s390-32/lchown.c: Likewise.
3437         * sysdeps/unix/sysv/linux/s390/s390-64/xstat.c: Likewise.
3438         * sysdeps/unix/sysv/linux/s390/s390-64/fxstat.c: Likewise.
3439         * sysdeps/unix/sysv/linux/s390/s390-64/lxstat.c: Likewise.
3440         * sysdeps/unix/sysv/linux/s390/s390-64/sigaction.c: Likewise.
3441         * sysdeps/unix/sysv/linux/s390/s390-64/sigpending.c: Likewise.
3442         * sysdeps/unix/sysv/linux/s390/s390-64/sigprocmask.c: Likewise.
3443         * sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c: Likewise.
3444         * sysdeps/unix/sysv/linux/sparc/sparc64/sigpending.c: Likewise.
3445         * sysdeps/unix/sysv/linux/sparc/sparc64/sigprocmask.c: Likewise.
3446         * sysdeps/unix/sysv/linux/x86_64/sigaction.c: Likewise.
3447         * sysdeps/unix/sysv/linux/pwrite.c: Likewise.
3448         * sysdeps/unix/sysv/linux/execve.c: Likewise.
3449         * sysdeps/unix/sysv/linux/aio_sigqueue.c: Likewise.
3450         * sysdeps/unix/sysv/linux/reboot.c: Likewise.
3451         * sysdeps/unix/sysv/linux/_exit.c: Likewise.
3452         * sysdeps/unix/sysv/linux/ftruncate64.c: Likewise.
3453         * sysdeps/unix/sysv/linux/pwrite64.c: Likewise.
3454         * sysdeps/unix/sysv/linux/fxstat64.c: Likewise.
3455         * sysdeps/unix/sysv/linux/gai_sigqueue.c: Likewise.
3456         * sysdeps/unix/sysv/linux/readahead.c: Likewise.
3457         * sysdeps/unix/sysv/linux/getcwd.c: Likewise.
3458         * sysdeps/unix/sysv/linux/sigwait.c: Likewise.
3459         * sysdeps/unix/sysv/linux/getdents.c: Likewise.
3460         * sysdeps/unix/sysv/linux/readv.c: Likewise.
3461         * sysdeps/unix/sysv/linux/getpriority.c: Likewise.
3462         * sysdeps/unix/sysv/linux/sigaction.c: Likewise.
3463         * sysdeps/unix/sysv/linux/ipc_priv.h: Likewise.
3464         * sysdeps/unix/sysv/linux/llseek.c: Likewise.
3465         * sysdeps/unix/sysv/linux/sysctl.c: Likewise.
3466         * sysdeps/unix/sysv/linux/lxstat64.c: Likewise.
3467         * sysdeps/unix/sysv/linux/mmap64.c: Likewise.
3468         * sysdeps/unix/sysv/linux/ustat.c: Likewise.
3469         * sysdeps/unix/sysv/linux/poll.c: Likewise.
3470         * sysdeps/unix/sysv/linux/pread64.c: Likewise.
3471         * sysdeps/unix/sysv/linux/writev.c: Likewise.
3472         * sysdeps/unix/sysv/linux/pread.c: Likewise.
3473         * sysdeps/unix/sysv/linux/ptrace.c: Likewise.
3474         * sysdeps/unix/sysv/linux/sigpending.c: Likewise.
3475         * sysdeps/unix/sysv/linux/sigprocmask.c: Likewise.
3476         * sysdeps/unix/sysv/linux/sigqueue.c: Likewise.
3477         * sysdeps/unix/sysv/linux/sigsuspend.c: Likewise.
3478         * sysdeps/unix/sysv/linux/sigtimedwait.c: Likewise.
3479         * sysdeps/unix/sysv/linux/sigwaitinfo.c: Likewise.
3480         * sysdeps/unix/sysv/linux/truncate64.c: Likewise.
3481         * sysdeps/unix/sysv/linux/xmknod.c: Likewise.
3482         * sysdeps/unix/sysv/linux/xstat64.c: Likewise.
3484 2003-09-02  Jakub Jelinek  <jakub@redhat.com>
3486         * sysdeps/unix/sysv/linux/i386/sysdep.h (PSEUDO): Revert last change.
3487         * sysdeps/unix/sysv/linux/powerpc/syscalls.list: New file.
3488         * sysdeps/unix/sysv/linux/sparc/syscalls.list: New file.
3490 2003-09-02  Ulrich Drepper  <drepper@redhat.com>
3492         * stdio-common/Makefile (CFLAGS-vprintf.c): Add -fexceptions.
3494         * intl/loadmsgcat.c: For _LIBC, call not cancelable versions of
3495         open, close, and read.
3497         * sysdeps/unix/sysv/linux/i386/sysdep.h (PSEUDO): Also define
3498         *_nocancel name.
3500         * sysdeps/unix/sysv/linux/i386/syscalls.list: Add waitpid.
3502         * libio/Makefile (CFLAGS-oldtmpfile.c): Add -fexceptions.
3503         * sysdeps/generic/tmpfile.c (tmpfile): Use __unlink instead of remove.
3504         * libio/oldtmpfile.c (__old_tmpfile): Likewise.
3506         * misc/Makefile (CFLAGS-getusershell.c): Add -fexceptions.
3508         * io/Makefile (CFLAGS-statfs.c): Add -fexceptions.
3509         (CFLAGS-fstatfs.c): Likewise.
3510         (CFLAGS-statvfs.c): Likewise.
3511         (CFLAGS-fstatvfs.c): Likewise.
3513 2003-09-01  Ulrich Drepper  <drepper@redhat.com>
3515         * misc/Makefile (CFLAGS-getsysstats.c): Add -fexceptions.
3516         * posix/unistd.h: Remove __THROW from pathconf, fpathconf,
3517         sysconf.
3518         * posix/Makefile (CFLAGS-sysconf.c): Add -fexceptions.
3519         (CFLAGS-pathconf.c): Likewise.
3520         (CFLAGS-fpathconf.c): Likewise.
3522         * misc/Makefile (CFLAGS-fstab.c): Add -fexceptions.
3523         * misc/fstab.h: Remove all __THROW.
3524         * misc/Makefile (CFLAGS-mntent.c): Add -fexceptions.
3525         (CFLAGS-mntent_r.c): Likewise.
3526         * misc/mntent.h: Remove most __THROW.
3528         * misc/Makefile (CFLAGS-mkstemp.c): Add -fexceptions.
3529         (CFLAGS-mkstemp64.c): Likewise.
3531         * sysdeps/generic/wordexp.c (parse_comm): Disable cancellation
3532         around call to exec_comm.
3533         * posix/wordexp.h: Remove __THROW from wordexp.
3534         * posix/Makefile (CFLAGS-wordexp.c): Add -fexceptions.
3536         * sysdeps/unix/sysv/linux/getloadavg.c (getloadavg): Use
3537         not-cancelable functions.
3539         * libio/Makefile (CFLAGS-oldiofopen.c): Add -fexceptions.
3540         (CFLAGS-iofopen.c): Likewise.
3541         (CFLAGS-iofopen64.c): Likewise.
3543         * stdlib/fmtmsg.c (fmtmsg): Disable cancellation around output
3544         functions.
3545         * stdlib/Makefile (CFLAGS-fmtmsg.c): Add -fexceptions.
3546         * stdlib/fmtmsg.h: Remove __THROW from fmtmsg.
3548         * stdlib/stdlib.h: Remove __THROW from posix_openpt and getpt.
3549         * login/Makefile (CFLAGS-getpt.c): Add -fexceptions.
3551 2003-09-01  Thorsten Kukuk  <kukuk@suse.de>
3553         * nis/nss_compat/compat-spwd.c (getspnam_plususer): Return
3554         NSS_STATUS_SUCCESS if entry was found.
3555         (getspent_next_file): Store user in blacklist after entry
3556         was found, use innetgr.
3558 2003-09-01  Jakub Jelinek  <jakub@redhat.com>
3560         * sysdeps/unix/sysv/linux/powerpc/powerpc32/posix_fadvise.c: New.
3561         * sysdeps/unix/sysv/linux/powerpc/powerpc32/posix_fadvise64.c: New.
3563         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Fix tls offset
3564         computation for TCB_AT_TP.  Support l_firstbyte_offset != 0 for
3565         DTV_AT_TP, optimize.
3567 2003-08-31  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
3569         * sysdeps/unix/sysv/linux/sh/Versions: Add posix_fadvise64 and
3570         posix_fallocate64 at GLIBC_2.3.3.
3571         * sysdeps/unix/sysv/linux/sh/sysdep.h (PSEUDO_ERRVAL): Define.
3572         (PSEUDO_END_ERRVAL, ret_ERRVAL): Likewise.
3574 2003-08-08  H.J. Lu  <hongjiu.lu@intel.com>
3576         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Remove __syscall_
3577         functions.
3579 2003-08-31  Ulrich Drepper  <drepper@redhat.com>
3581         * libio/libioP.h (_IO_acquire_lock_fct): Define as inline function.
3582         Code by Richard Henderson.
3584 2003-08-31  Philip Blundell  <philb@gnu.org>
3586         * sysdeps/unix/sysv/linux/arm/Versions: Add posix_fadvise64 and
3587         posix_fallocate64 at GLIBC_2.3.3.
3589 2003-08-31  Ulrich Drepper  <drepper@redhat.com>
3591         * sysdeps/x86_64/bsd-_setjmp.S: Use HIDDEN_JUMPTARGET.
3592         * include/setjmp.h: Add libc_hidden_proto for __sigsetjmp.
3594 2003-08-30  Jakub Jelinek  <jakub@redhat.com>
3596         * sysdeps/generic/sysdep.h (cfi_window_save, CFI_WINDOW_SAVE): Define.
3597         * sysdeps/unix/sysv/linux/sparc/bits/setjmp.h: Allow file to be
3598         included multiple times.
3599         * sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__clone): Pass
3600         ptid, tls, ctid arguments to the kernel.
3601         * sysdeps/unix/sysv/linux/sparc/sparc32/getpagesize.c (__getpagesize):
3602         Use INTERNAL_SYSCALL instead of __syscall_getpagesize.
3603         * sysdeps/unix/sysv/linux/sparc/sparc32/sigaction.c
3604         (__libc_sigaction): Use INLINE_SYSCALL instead of
3605         __syscall_rt_sigaction.
3606         * sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list
3607         (__syscall_getgroups, __syscall_getpagesize, __syscall__llseek,
3608         __syscall_setfsgid, __syscall_setfsuid, __syscall_setgid,
3609         __syscall_setgroups, __syscall_setregid, __syscall_setreuid,
3610         __syscall_ipc, __syscall_setuid, __syscall_rt_sigaction,
3611         __syscall_rt_sigpending, __syscall_rt_sigprocmask,
3612         __syscall_rt_sigqueueinfo, __syscall_rt_sigsuspend,
3613         __syscall_rt_sigtimedwait): Remove unneeded syscall stubs.
3614         * sysdeps/unix/sysv/linux/sparc/sparc32/Makefile (sysdep_routines):
3615         Remove rt_sigsuspend, rt_sigprocmask, rt_sigtimedwait,
3616         rt_sigqueueinfo, rt_sigaction and rt_sigpending.
3617         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h
3618         (__CLONE_SYSCALL_STRING): Define.
3619         * sysdeps/unix/sysv/linux/sparc/sparc32/socket.S (__socket): Add
3620         CFI directives.
3621         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h
3622         (__CLONE_SYSCALL_STRING): Define.
3623         * sysdeps/unix/sysv/linux/sparc/sysdep.h (INLINE_CLONE_SYSCALL):
3624         Define.
3625         * sysdeps/unix/sysv/linux/sparc/system.c: New file.
3627 2003-08-30  Ulrich Drepper  <drepper@redhat.com>
3629         * sunrpc/rpc/clnt.h: Remove a few __THROW.
3630         * sunrpc/Makefile (CFLAGS-auth_unix.c): Add -fexceptions.
3631         (CFLAGS-key_call.c): Likewise.
3632         (CFLAGS-pmap_rmt.c): Likewise.
3633         (CFLAGS-clnt_perr.c): Likewise.
3634         * sunrpc/rpc/auth.h: Remove serveral __THROW.
3636         * inet/Makefile (CFLAGS-gethstbyad_r.c): Add -fexceptions.
3637         (CFLAGS-gethstbynm_r.c): Likewise.
3638         (CFLAGS-gethstbynm2_r.c): Likewise.
3639         (CFLAGS-rcmd.c): Likewise.
3640         * resolv/Makefile (CFLAGS-res_hconf.c): Add -fexceptions.
3642         * argp/Makefile (CFLAGS-argp-help.c): Add -fexceptions.
3643         (CFLAGS-argp-fmtstream.c): Likewise.
3644         * argp/argp.h: Remove a number of __THROW.
3646         * misc/sys/syslog.h (vsyslog): Remove __THROW.
3648         * misc/Makefile (CFLAGS-getpass.c): Add -fexceptions.
3649         * misc/getpass.c (getpass): Add cleanup handler to ensure the
3650         stream is closed even if the thread is canceled.
3651         (call_fclose): New function.
3652         * posix/unistd.h: Remove __THROW from getpass prototype.
3654         * posix/Makefile (CFLAGS-getopt.c): Add -fexceptions.
3656         * signal/signal.h (psignal): Remove __THROW.
3657         * stdio-common/Makefile (CFLAGS-psignal.c): Add -fexceptions.
3659         * misc/Makefile (CFLAGS-error.c): Define.
3660         * misc/error.c (error): Disable cancellation handling around the
3661         actual output.  The message should in any case be printed.
3662         (error_at_line): Likewise.
3664         * misc/error.h: Protect parameter names with leading __.
3666 2003-08-28  Carlos O'Donell  <carlos@baldric.uwo.ca>
3668         * sysdeps/unix/sysv/linux/hppa/syscalls.list: Add semtimedop.
3670 2003-08-29  Jakub Jelinek  <jakub@redhat.com>
3672         * libio/iofgetpos64.c (_IO_new_fgetpos64): Move lock release to the
3673         end.
3675 2003-08-29  Ulrich Drepper  <drepper@redhat.com>
3677         * libio/stdio.h: Remove a few more __THROW.
3679 2003-08-29  Jakub Jelinek  <jakub@redhat.com>
3681         * libio/Makefile: Compile fputc.c, fputwc.c, freopen64.c, freopen.c,
3682         fseek.c, fseeko64.c, fseeko.c, ftello64.c, ftello.c, fwide.c, getc.c,
3683         getchar.c, getwc.c, getwchar.c, iofclose.c, iofflush.c, iofgetpos64.c,
3684         iofgetpos.c, iofgets.c, iofgetws.c, iofputs.c, iofputws.c, iofread.c,
3685         iofsetpos64.c, iofsetpos.c, ioftell.c, iofwrite.c, iogetdelim.c,
3686         iogetline.c, iogets.c, iogetwline.c, ioputs.c, ioseekoff.c,
3687         ioseekpos.c, iosetbuffer.c, iosetvbuf.c, ioungetc.c, ioungetwc.c,
3688         oldfileops.c, oldiofclose.c, oldiofgetpos64.c, oldiofgetpos.c,
3689         oldiofsetpos64.c, oldiofsetpos.c, peekc.c, putc.c, putchar.c, putwc.c,
3690         putwchar.c and rewind.c with exceptions.
3691         * sysdeps/generic/bits/stdio-lock.h (_IO_acquire_lock,
3692         _IO_release_lock): Define.
3693         * libio/fileops.c (_IO_new_file_underflow): Use it.
3694         * libio/fputc.c (fputc): Likewise.
3695         * libio/fputwc.c (fputwc): Likewise.
3696         * libio/freopen64.c (freopen64):
3697         * libio/freopen.c (freopen): Likewise.
3698         * libio/fseek.c (fseek): Likewise.
3699         * libio/fseeko64.c (fseeko64): Likewise.
3700         * libio/fseeko.c (fseeko): Likewise.
3701         * libio/ftello64.c (ftello64): Likewise.
3702         * libio/ftello.c (ftello): Likewise.
3703         * libio/fwide.c (fwide): Likewise.
3704         * libio/getc.c (_IO_getc): Likewise.
3705         * libio/getchar.c (getchar): Likewise.
3706         * libio/getwc.c (_IO_getwc): Likewise.
3707         * libio/getwchar.c (getwchar): Likewise.
3708         * libio/iofclose.c (_IO_new_fclose):
3709         * libio/iofflush.c (_IO_fflush): Likewise.
3710         * libio/iofgetpos64.c (_IO_new_fgetpos64): Likewise.
3711         * libio/iofgetpos.c (_IO_new_fgetpos): Likewise.
3712         * libio/iofgets.c (_IO_fgets): Likewise.
3713         * libio/iofgetws.c (fgetws): Likewise.
3714         * libio/iofputs.c (_IO_fputs): Likewise.
3715         * libio/iofputws.c (fputws): Likewise.
3716         * libio/iofread.c (_IO_fread): Likewise.
3717         * libio/iofsetpos64.c (_IO_new_fsetpos64): Likewise.
3718         * libio/iofsetpos.c (_IO_new_fsetpos): Likewise.
3719         * libio/ioftell.c (_IO_ftell): Likewise.
3720         * libio/iofwrite.c (_IO_fwrite): Likewise.
3721         * libio/iogetdelim.c (_IO_getdelim): Likewise.
3722         * libio/iogets.c (_IO_gets): Likewise.
3723         * libio/ioputs.c (_IO_puts): Likewise.
3724         * libio/ioseekoff.c (_IO_seekoff): Likewise.
3725         * libio/ioseekpos.c (_IO_seekpos): Likewise.
3726         * libio/iosetbuffer.c (_IO_setbuffer): Likewise.
3727         * libio/iosetvbuf.c (_IO_setvbuf): Likewise.
3728         * libio/ioungetc.c (_IO_ungetc): Likewise.
3729         * libio/ioungetwc.c (ungetwc): Likewise.
3730         * libio/oldiofclose.c (_IO_old_fclose): Likewise.
3731         * libio/oldiofgetpos64.c (_IO_old_fgetpos64): Likewise.
3732         * libio/oldiofgetpos.c (_IO_old_fgetpos): Likewise.
3733         * libio/oldiofsetpos64.c (_IO_old_fsetpos64): Likewise.
3734         * libio/oldiofsetpos.c (_IO_old_fsetpos): Likewise.
3735         * libio/peekc.c (_IO_peekc_locked): Likewise.
3736         * libio/putc.c (_IO_putc): Likewise.
3737         * libio/putchar.c (putchar): Likewise.
3738         * libio/putwc.c (putwc): Likewise.
3739         * libio/putwchar.c (putwchar): Likewise.
3740         * libio/rewind.c (rewind): Likewise.
3741         * libio/wfileops.c (_IO_wfile_underflow): Likewise.
3743 2003-08-29  Ulrich Drepper  <drepper@redhat.com>
3745         * signal/signal.h: sighold, sigrelse, sigignore, sigset were
3746         available in XPG4.2.
3748 2003-08-27  Phil Knirsch  <pknirsch@redhat.com>
3749             Jakub Jelinek  <jakub@redhat.com>
3751         * sunrpc/svc.c (svc_getreqset): Fix fds_bits reading on 64-bit
3752         big endian arches.  Don't read beyond end of fds_bits array.
3754 2003-04-27  Bruno Haible  <bruno@clisp.org>
3756         * manual/message.texi (Advanced gettext functions): Add information
3757         about Korean, Portuguese, Latvian. Gaeilge is also known as Irish.
3758         Add section about Lithuanian, reported by Ricardas Cepas
3759         <rch@richard.eu.org>.
3760         Add information about Croatian.
3761         Ukrainian is like Russian, reported by Andy Rysin <arysin@yahoo.com>.
3762         Remove remark about continuation lines that is not true for PO files.
3763         Fix formula for Slovenian, reported by Roman Maurer
3764         <roman.maurer@amis.net>.
3766 2003-08-27  Ulrich Drepper  <drepper@redhat.com>
3768         * math/math_private.h: Declare __copysignf.
3769         * sysdeps/ieee754/flt-32/s_scalbnf.c: Use __copysignf instead of
3770         copysignf.
3772         * sysdeps/x86_64/fpu/bits/mathinline.h: Define __signbitf,
3773         __signbit, and __signbitl inline functions.
3775         * sysdeps/unix/sysv/linux/x86_64/__start_context.S: Use
3776         HIDDEN_JUMPTARGET instead of JUMPTARGET to call exit().
3778         * sysdeps/x86_64/bsd-_setjmp.S [PIC]: Jump to __GI___sigsetjmp.
3779         * sysdeps/x86_64/setjmp.S: Add libc_hidden_def for __sigsetjmp.
3781 2003-08-27  Jakub Jelinek  <jakub@redhat.com>
3783         * inet/inet_mkadr.c (inet_makeaddr): Optimize.
3785 2003-08-27  Ulrich Drepper  <drepper@redhat.com>
3787         * include/stdio.h: Add declarations for __builtin_fwrite and
3788         __builtin_fwrite_unlocked.
3790 2003-08-27  Jakub Jelinek  <jakub@redhat.com>
3792         * sysdeps/unix/opendir.c (__opendir): Make sure even struct dirent64
3793         fits into allocation.  Add padding on 32-bit arches so that
3794         dirp->data is enough aligned for struct dirent64.
3795         Avoid clearing of the buffer, just clear DIR structure.
3797 2003-08-26  Ulrich Drepper  <drepper@redhat.com>
3799         * nss/nsswitch.c: Add libc_hidden_def for __nss_lookup_function.
3800         * nss/nsswitch.h: Add libc_hidden_proto for __nss_lookup_function.
3802 2003-08-26  Steven Munroe  <sjmunroe@us.ibm.com>
3804         * sysdeps/powerpc/powerpc64/elf/Makefile: New file.
3806 2003-08-26  Jakub Jelinek  <jakub@redhat.com>
3808         * login/programs/utmpdump.c (print_entry): Cast tv_usec to long
3809         to match format string.
3810         * sysdeps/unix/sysv/linux/sparc/sparc32/semctl.c (union semun): Add
3811         __old_buf.
3812         (__new_semctl): Shut up warning.
3813         * sysdeps/unix/sysv/linux/sparc/sparc32/dl-procinfo.h
3814         (_dl_string_hwcap): Add __attribute__ ((always_inline)).
3816 2003-08-26  Jakub Jelinek  <jakub@redhat.com>
3818         * elf/ldconfig.c (search_dir): When checking for GNU-style .so
3819         link file use the real file name, not the resolved name we got by
3820         following the symlinks.
3822 2003-08-25  Ulrich Drepper  <drepper@redhat.com>
3824         * libio/oldfileops.c (_IO_old_file_init): Initialize _mode field
3825         if the object size is large enough.
3827 2003-08-25  Jakub Jelinek  <jakub@redhat.com>
3829         * elf/ldconfig.c (search_dir): Treat symlink as regular file
3830         if it won't point to itself unless it is .so symlink for the linker.
3832 2003-08-25  Ulrich Drepper  <drepper@redhat.com>
3834         * libio/libio.h (_IO_fwide): In the mode==0 optimization, don't
3835         use _mode if _IO_fwide_maybe_incompatible.
3836         * libio/iofwide.c (_IO_fwide): Move the test for mode == 0 after
3837         the compatibility test.
3839 2003-08-25  Jakub Jelinek  <jakub@redhat.com>
3841         * elf/cache.c (save_cache): Don't write beyond end of file_entries
3842         buffer.
3843         Duplicate last old cache entry if the count would be odd.
3845 2003-08-25  Andreas Jaeger  <aj@suse.de>
3847         * sysdeps/unix/sysv/linux/posix_fadvise64.c: Cast arguments of
3848         __LONG_LONG_PAIR to long.
3850 2003-08-25  Philip Blundell  <philb@gnu.org>
3852         * sysdeps/unix/sysv/linux/arm/sysdep.h (PSEUDO_ERRVAL): Define.
3853         (PSEUDO_END_ERRVAL, ret_ERRVAL): Likewise.
3855 2003-08-18  Alfred M. Szmidt  <ams@kemisten.nu>
3857         * sysdeps/generic/bits/libc-lock.h (__libc_cleanup_pop): Redefine
3858         and use __libc_cleanup_region_end instead.
3860 2003-08-25  Ulrich Drepper  <drepper@redhat.com>
3862         * elf/ldconfig.c (search_dir): Revert patch of 2003-7-21.
3864 2003-08-22  Ulrich Drepper  <drepper@redhat.com>
3866         * io/fcntl.h (posix_fallocate): Change type of third parameter to
3867         off_t.
3868         (posix_fallocate64): Change type of third parameter to off64_t.
3869         * sysdeps/generic/posix_fallocate.c: Adjust for type change.
3870         * sysdeps/posix/posix_fallocate.c: Likewise.
3871         * sysdeps/generic/posix_fallocate64.c: Likewise.
3872         * sysdeps/posix/posix_fallocate64.c: Likewise.  Add compatibility
3873         code for 32-bit platforms.
3874         * sysdeps/unix/sysv/linux/i386/Versions: Add new version for
3875         posix_fallocate64.
3876         * sysdeps/unix/sysv/linux/powerpc/powerpc32/Versions: Likewise.
3877         * sysdeps/unix/sysv/linux/s390/s390-32/Versions: Likewise.
3878         * sysdeps/unix/sysv/linux/sparc/sparc32/Versions: Likewise.
3880 2003-08-19  Ulrich Drepper  <drepper@redhat.com>
3882         * string/bits/string2.h (__STRING2_COPY_TYPE): Add attribute to
3883         the type, not to name.
3885         * stdio-common/test-vfprintf.c (main): Don't write temporary file
3886         into source directory.
3888         * malloc/malloc.c (_int_free): Add cheap test for some invalid
3889         block sizes.
3891         * sysdeps/unix/sysv/linux/i386/posix_fadvise64.S: Fix typo in
3892         syscall name.
3894 2003-08-18  Ulrich Drepper  <drepper@redhat.com>
3896         * sysdeps/unix/sysv/linux/shm_open.c (shm_open): Fold EISDIR error
3897         into EINVAL.
3899 2003-08-18  H.J. Lu  <hongjiu.lu@intel.com>
3901         * sysdeps/ia64/dl-machine.h (elf_machine_rela): Use _dl_reloc_bad_type.
3902         (elf_machine_lazy_rel): Likewise.
3904 2003-08-18  Art Haas  <ahaas@airmail.net>
3906         * malloc/malloc.h: Remove unneeded ';' where closing the C++
3907         extern block.
3909 2003-08-18  Ulrich Drepper  <drepper@redhat.com>
3911         * sysdeps/ia64/dl-fptr.h (ELF_MACHINE_LOAD_ADDRESS): Support
3912         loading big binaries where @gprel(sym) cannot be handled in 'add'
3913         but instead has to be used with 'movl'.
3915 2003-08-17  Juergen Kreileder <jk@blackdown.de>
3916             Andreas Jaeger  <aj@suse.de>
3918         * sysdeps/x86_64/bits/byteswap.h: New file.
3920 2003-08-17  Andreas Jaeger  <aj@suse.de>
3922         * sysdeps/unix/sysv/linux/i386/posix_fadvise64.S: Fix typo.
3924 2003-08-16  Jakub Jelinek  <jakub@redhat.com>
3926         * sysdeps/powerpc/powerpc32/sysdep.h (PSEUDO_ERRVAL,
3927         PSEUDO_RET_ERRVAL, ret_ERRVAL, PSEUDO_END_ERRVAL): Define.
3928         * sysdeps/powerpc/powerpc64/sysdep.h (PSEUDO_ERRVAL,
3929         PSEUDO_RET_ERRVAL, ret_ERRVAL, PSEUDO_END_ERRVAL): Define.
3930         * sysdeps/unix/alpha/sysdep.h (PSEUDO_ERRVAL,
3931         ret_ERRVAL, PSEUDO_END_ERRVAL): Define.
3932         * sysdeps/unix/mips/sysdep.h (PSEUDO_ERRVAL,
3933         ret_ERRVAL, PSEUDO_END_ERRVAL): Define.
3934         * sysdeps/unix/sparc/sysdep.h (PSEUDO_ERRVAL,
3935         ret_ERRVAL): Define.
3936         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (PSEUDO_ERRVAL,
3937         PSEUDO_END_ERRVAL, ret_ERRVAL): Define.
3938         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (PSEUDO_ERRVAL,
3939         PSEUDO_END_ERRVAL, ret_ERRVAL): Define.
3940         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h (PSEUDO_ERRVAL):
3941         Define.
3942         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h (PSEUDO_ERRVAL,
3943         PSEUDO_END_ERRVAL, ret_ERRVAL): Define.
3944         * sysdeps/unix/sysdep.h (PSEUDO_END_ERRVAL): Define.
3946         * sysdeps/unix/sysv/linux/syscalls.list (posix_fadvise64,
3947         posix_fadvise64_64): Remove.
3948         * sysdeps/unix/sysv/linux/alpha/syscalls.list (posix_fadvise64): Add
3949         V flag.
3950         * sysdeps/unix/sysv/linux/ia64/syscalls.list (posix_fadvise64):
3951         Likewise.
3952         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list
3953         (posix_fadvise64): Likewise.
3954         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list
3955         (posix_fadvise64): Likewise.
3956         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list
3957         (posix_fadvise64): Likewise.
3958         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (posix_fadvise64):
3959         Likewise.
3960         * sysdeps/unix/sysv/linux/i386/posix_fadvise64_64.S: Moved to...
3961         * sysdeps/unix/sysv/linux/i386/posix_fadvise64.S: ...here.
3962         (__posix_fadvise64_l64): Fix a typo in fadvise64 syscall invocation.
3963         (__posix_fadvise64_l32): New function.
3964         * sysdeps/unix/sysv/linux/i386/Makefile: Revert last change.
3965         * sysdeps/unix/sysv/linux/powerpc/powerpc32/Versions (libc): Export
3966         posix_fadvise64@@GLIBC_2.3.3.
3967         * sysdeps/unix/sysv/linux/s390/s390-32/Versions (libc): Likewise.
3968         * sysdeps/unix/sysv/linux/sparc/sparc32/Versions (libc): Likewise.
3969         * sysdeps/unix/sysv/linux/posix_fadvise.c (posix_fadvise): Return
3970         error value.
3971         * sysdeps/unix/sysv/linux/posix_fadvise64.c: New file.
3973         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h
3974         (SYSCALL_ERROR_HANDLER): Use TLS errno/__libc_errno if USE___THREAD.
3976 2003-08-15  Jakub Jelinek  <jakub@redhat.com>
3978         * sysdeps/sparc/sparc32/dl-machine.h (WEAKADDR): Remove.
3979         (elf_machine_matches_host): Remove weak extern stuff.
3980         Use GL(dl_hwcap) unconditionally and GL(dl_hwcap_mask) if SHARED.
3981         (elf_machine_runtime_setup, sparc_fixup_plt): Remove weak extern
3982         stuff.  Use GL(dl_hwcap) unconditionally.
3984 2003-08-16  Alan Modra  <amodra@bigpond.net.au>
3986         * sysdeps/powerpc/powerpc64/elf/start.S: Add a nop after
3987         __libc_start_main branch.
3989 2003-08-16  Jakub Jelinek <jakub@redhat.com>,
3990             Andreas Jaeger  <aj@suse.de>
3992         * sysdeps/generic/posix_fadvise.c (posix_fadvise): Return ENOSYS
3993         instead of setting errno.
3994         * sysdeps/generic/posix_fadvise64.c (posix_fadvise64): Likewise.
3996 2003-08-16  Andreas Jaeger  <aj@suse.de>
3998         * sysdeps/generic/posix_fadvise.c (posix_fadvise): Adjust prototype.
3999         * sysdeps/generic/posix_fadvise64.c (posix_fadvise64): Likewise.
4001 2003-08-15  Ulrich Drepper  <drepper@redhat.com>
4003         * io/fcntl.h (posix_fadvise64): Change type of third parameter to
4004         off_t.
4005         * sysdeps/unix/sysv/linux/posix_fadvise.c: Adjust definition.
4006         * sysdeps/unix/make-syscalls.sh: Recognize V prefix to the parameter
4007         description indicating the error value is returned, not -1.
4008         * sysdeps/unix/sysv/linux/kernel-features.h: Add definition of
4009         __ASSUME_FADVISE64_64_SYSCALL.
4010         * sysdeps/unix/sysv/linux/syscalls.list: Don't define madvise and
4011         posix_madvise in one file.  Have posix_madvise defined with error
4012         value returned.
4013         Define posix_fadvise64_64 entry.  Add version info to posix_fadvise64
4014         entry.
4015         * sysdeps/unix/sysv/linux/i386/posix_fadvise.S: New file.
4016         * sysdeps/unix/sysv/linux/i386/sysdep.h: Define PSEUDO_ERRVAL,
4017         PSEUDO_END_ERRVAL, and ret_ERRVAL.
4018         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Likewise.
4019         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
4020         * sysdeps/unix/sysv/linux/i386/Versions [GLIBC_2.3.3]: Add
4021         posix_fadvise64.
4023         * posix/Makefile (routines): Add posix_madvise.
4024         * sysdeps/generic/madvise.c: Don't define posix_madvise.
4025         * sysdeps/generic/posix_madvise.c: New file.
4026         * sysdeps/unix/sysv/aix/posix_madvise.c: New file.
4027         * sysdeps/unix/sysv/linux/i386/Makefile [subdir=io] (subdir_routines):
4028         Add posix_fadvise64_64.
4030 2003-08-15  Jakub Jelinek  <jakub@redhat.com>
4032         * assert/assert.h (assert_perror): Use __builtin_expect for gcc >=
4033         3.0, not for !gcc or gcc < 3.0.
4035 2003-08-11  Carlos O'Donell  <carlos@baldric.uwo.ca>
4037         * dlfcn/default.c (main): Cast dlsym loaded value to same type as main.
4038         Address passed to test_in_mod1 and test_in_mod2 without casting.
4039         * dlfcn/defaultmod1.c: Change prototype of test_in_mod1.
4040         (test_in_mod1): Cast dlsym loaded value to same type as mainp.
4041         * dlfcn/defaultmod2.c: Change prototype of test_in_mod2.
4042         (test_in_mod2): Cast dlsym loaded value to same type as mainp.
4044 2003-08-15  Jakub Jelinek  <jakub@redhat.com>
4046         * sysdeps/sparc/sparc32/elf/configure.in (libc_cv_sparc32_tls):
4047         Change quotes before using [].
4049         * sysdeps/unix/sysv/linux/sparc/sys/user.h: New file.
4051         * sysdeps/sparc/sparc32/bits/atomic.h (__sparc32_atomic_lock):
4052         Renamed to...
4053         (__sparc32_atomic_locks): ...this.  Change into 64-byte array.
4054         (__sparc32_atomic_do_lock, __sparc32_atomic_do_unlock): Add addr
4055         argument.  Select one of 64 locks from address bits.
4056         (atomic_compare_and_exchange_val_acq,
4057         atomic_compare_and_exchange_bool_acq): Pass memory address to
4058         __sparc32_atomic_do_{,un}lock.
4060 2003-08-14  Ulrich Drepper  <drepper@redhat.com>
4062         * assert/assert.h (assert): Use !! in front of expression to allow
4063         use of pointers.
4065         * iconvdata/cp932.c: Fixed checking of a few border of code areas.
4066         Changed conversion of JIS X 0201 from using a table to calculating.
4067         * iconvdata/euc-jp-ms.c: Fixed conversion table and rewrote
4068         conversion routine.  Changed CHARSET_NAME definition from EUCJP-MS to
4069         EUC-JP-MS.
4070         * iconvdata/tst-tables.sh: Add CP932 and EUC-JP-MS.
4071         * iconvdata/CP932.irreversible: New file.
4072         * iconvdata/EUC-JP-MS.irreversible: New file.
4073         Patch by MORIYAMA Masayuki <msyk@mtg.biglobe.ne.jp>.
4075 2003-08-13  Ulrich Drepper  <drepper@redhat.com>
4077         * sysdeps/unix/sysv/linux/i386/syscalls.list: Add time syscall.
4079         * elf/Makefile: Use LC_ALL=C in a few cases where we call external
4080         text processing tools.
4082         * sysdeps/pthread/aio_misc.h (struct waitlist): Don't add caller_pid
4083         element unless BROKEN_THREAD_SIGNALS is defined.
4084         (struct requestlist): Likewise.
4085         * sysdeps/pthread/aio_misc.c (__aio_enqueue_request): Don't fill in
4086         caller_pid of new request unless BROKEN_THREAD_SIGNALS is defined.
4087         * sysdeps/pthread/aio_suspend.c (aio_suspend): Likewise.
4088         * sysdeps/pthread/aio_notify.c (__aio_notify_only): Remove caller_pid
4089         parameter unless BROKEN_THREAD_SIGNALS is defined.  Adjust callers.
4090         Pass current PID to __aio_sigqueue.
4091         * sysdeps/pthread/lio_listio.c (lio_listio): Adjust __aio_notify_only
4092         call.  Don't initialize caller_pid field of waitlist element.
4094 2003-08-12  Jakub Jelinek  <jakub@redhat.com>
4096         * libio/libioP.h (_IO_vtable_offset): Define.
4097         * libio/freopen.c (freopen): Use it.
4098         * libio/ioputs.c (_IO_puts): Likewise.
4099         * libio/freopen64.c (freopen64): Likewise.
4100         * libio/genops.c (__underflow, __uflow, _IO_flush_all_lockp):
4101         Likewise.
4102         * libio/iofclose.c (_IO_new_fclose): Likewise.
4103         * libio/iofputs.c (_IO_fputs): Likewise.
4104         * libio/ioftell.c (_IO_ftell): Likewise.
4105         * libio/iofwrite.c (_IO_fwrite): Likewise.
4106         * libio/ioseekoff.c (_IO_seekoff_unlocked): Likewise.
4107         * libio/iosetbuffer.c (_IO_setbuffer): Likewise.
4108         * stdio-common/vfprintf.c (ORIENT, vfprintf): Likewise.
4109         * stdio-common/vfscanf.c (ORIENT): Likewise.
4111 2003-08-11  Ulrich Drepper  <drepper@redhat.com>
4113         * assert/assert.h: Use __builtin_expect in assert and
4114         assert_perror definitions if possible.
4116 2003-08-07  Jakub Jelinek  <jakub@redhat.com>
4118         * sysdeps/generic/ldsodefs.h (_rtld_global): Add
4119         _dl_rtld_lock_recursive and _dl_rtld_unlock_recursive.
4120         * elf/rtld.c (rtld_lock_default_lock_recursive,
4121         rtld_lock_default_unlock_recursive): New functions.
4122         (dl_main): Initialize _dl_rtld_lock_recursive and
4123         _dl_rtld_unlock_recursive.
4125 2003-08-05  Jakub Jelinek  <jakub@redhat.com>
4127         * elf/ldconfig.c (main): Append SLIBDIR and LIBDIR to
4128         config_file directories instead of prepending.
4130 2003-08-02  Ulrich Drepper  <drepper@redhat.com>
4132         * sysdeps/unix/sysv/linux/kernel-features.h: Define
4133         __ASSUME_CLONE_STOPPED.
4135 2003-08-01  Ulrich Drepper  <drepper@redhat.com>
4137         * sysdeps/generic/bits/libc-lock.h
4138         (__libc_cleanup_push,__libc_cleanup_pop): Define even here.
4140 2003-08-01  Roland McGrath  <roland@frob.com>
4142         * sysdeps/mach/hurd/getdents.c: Just use sysdeps/generic/getdents.c.
4144 2003-07-31  Jakub Jelinek  <jakub@redhat.com>
4146         * sysdeps/generic/bits/types.h (__ssize_t): Use __SSIZE_T_TYPE
4147         instead of __SWORD_TYPE.
4148         * sysdeps/generic/bits/typesizes.h (__SSIZE_T_TYPE): Define.
4149         * sysdeps/mach/hurd/bits/typesizes.h (__SSIZE_T_TYPE): Define.
4150         * sysdeps/unix/bsd/bsd4.4/freebsd/bits/typesizes.h (__SSIZE_T_TYPE):
4151         Define.
4152         * sysdeps/unix/sysv/linux/alpha/bits/typesizes.h (__SSIZE_T_TYPE):
4153         Define.
4154         * sysdeps/unix/sysv/linux/sparc/bits/typesizes.h (__SSIZE_T_TYPE):
4155         Define.
4156         * sysdeps/unix/sysv/linux/s390/bits/typesizes.h: New file.
4158         * dlfcn/dlerror.c (once): New.
4159         (dlerror): Call __libc_once.
4160         (_dlerror_run): Remove once.
4162         * sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h (struct sigcontext):
4163         Sync with 2.5.7 and 2.5.73 kernel changes.
4165         * dlfcn/eval.c (funcall): Add noinline attribute to shut up warnings.
4166         * elf/rtld.c (dl_main): Cast ElfW(Addr) arguments with %Zx/%Zd
4167         formats to size_t.
4168         * elf/dl-lookup.c (_dl_debug_bindings): Likewise.
4169         * elf/tst-tls6.c (do_test): Use %zd format for l_tls_modid.
4170         * elf/tst-tls8.c (do_test): Use %zd format for modid1 and modid2.
4171         * gmon/tst-sprofil.c (main): Add parens to shut up warning.
4172         * iconv/tst-iconv3.c (main): Use %td instead of %zd for pointer
4173         difference argument.
4174         * stdio-common/tst-wc-printf.c (main): Cast arguments with %C
4175         format to wint_t.
4176         * stdlib/tst-limits.c (main): For WORD_BIT and LONG_BIT, use
4177         %d format and cast expected value to int.
4178         * sysdeps/generic/libc-start.c (STATIC): Add
4179         __attribute__((always_inline) if LIBC_START_MAIN is already defined.
4180         * sysdeps/powerpc/fpu/w_sqrt.c (a_nan, a_inf): Change from uint32_t
4181         to ieee_float_shape_type.
4182         (__sqrt): Avoid type punning.
4183         * sysdeps/powerpc/fpu/w_sqrtf.c (a_nan, a_inf): Change from uint32_t
4184         to ieee_float_shape_type.
4185         (__sqrtf): Avoid type punning.
4186         * sysdeps/s390/s390-32/dl-machine.h (elf_machine_rela): Don't define
4187         refsym if in dl-conflict.c.
4188         * sysdeps/s390/s390-64/dl-machine.h (elf_machine_rela): Likewise.
4189         * sysdeps/unix/sysv/linux/i386/semctl.c (union semun): Add __old_buf.
4190         (__new_semctl): Shut up warning.
4191         * sysdeps/unix/sysv/linux/semctl.c (union semun): Add __old_buf.
4192         (__new_semctl): Shut up warning.
4193         * sysdeps/unix/sysv/linux/shmctl.c (__new_shmctl): Wrap long lines.
4194         Change old into union of __old_shmid_ds and __old_shminfo structs.
4195         Adjust all users.
4196         * wcsmbs/wcsmbs-tst1.c (main): Cast arguments with %C format to wint_t.
4198         * sysdeps/unix/sysv/linux/utimes.c (__utimes): Fix actime and
4199         modtime computation.
4200         * sysdeps/unix/sysv/linux/futimes.c (__futimes): Likewise.
4201         * sysdeps/posix/utimes.c (__utimes): Likewise.
4203 2003-07-30  Jakub Jelinek  <jakub@redhat.com>
4205         * elf/dl-reloc.c (_dl_allocate_static_tls): Don't return any value,
4206         call dl_signal_error directly.  If already relocated, call
4207         GL(dl_init_static_tls) directly, otherwise queue it for later.
4208         (CHECK_STATIC_TLS): Undo 2003-07-24 change.
4209         * elf/rtld.c (dl_main): Initialize GL(dl_init_static_tls).
4210         * elf/dl-open.c (dl_open_worker): Call GL_dl_init_static_tls
4211         for all static TLS initializations delayed in _dl_allocate_static_tls.
4212         * elf/dl-support.c (_dl_init_static_tls): New variable.
4213         * include/link.h (struct link_map): Add l_need_tls_init.
4214         * sysdeps/generic/ldsodefs.h (_rtld_global): Add _dl_init_static_tls.
4215         (_dl_nothread_init_static_tls): New prototype.
4216         (_dl_allocate_static_tls): Adjust prototype.
4218         * elf/tls-macros.h (VAR_INT_DEF): Add alignment directive.
4220 2003-07-31  Alexandre Oliva  <aoliva@redhat.com>
4222         * elf/dynamic-link.h (elf_machine_rel, elf_machine_rela,
4223         elf_machine_rel_relative, elf_machine_rela_relative): Don't assume
4224         reloc_addr is aligned.
4225         * sysdeps/alpha/dl-machine.h (elf_machine_rela,
4226         elf_machine_rela_relative): Adjust.
4227         * sysdeps/arm/dl-machine.h (elf_machine_rel, elf_machine_rela,
4228         elf_machine_rel_relative, elf_machine_rela_relative): Adjust.
4229         * sysdeps/cris/dl-machine.h (elf_machine_rela,
4230         elf_machine_rela_relative): Adjust.
4231         * sysdeps/hppa/dl-machine.h (elf_machine_rela,
4232         elf_machine_rela_relative): Adjust.
4233         * sysdeps/i386/dl-machine.h (elf_machine_rel, elf_machine_rela,
4234         elf_machine_rel_relative, elf_machine_rela_relative): Adjust.
4235         * sysdeps/ia64/dl-machine.h (elf_machine_rela,
4236         elf_machine_rela_relative): Adjust.
4237         * sysdeps/m68k/dl-machine.h (elf_machine_rela,
4238         elf_machine_rela_relative): Adjust.
4239         * sysdeps/mips/dl-machine.h (elf_machine_rela,
4240         elf_machine_rela_relative): Adjust.
4241         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela,
4242         elf_machine_rela_relative): Adjust.
4243         * sysdeps/powerpc/powerpc64/dl-machine.h
4244         (elf_machine_rela_relative, elf_machine_rela): Adjust.
4245         * sysdeps/s390/s390-32/dl-machine.h (elf_machine_rela,
4246         elf_machine_rela_relative): Adjust.
4247         * sysdeps/s390/s390-64/dl-machine.h (elf_machine_rela,
4248         elf_machine_rela_relative): Adjust.
4249         * sysdeps/sh/dl-machine.h (elf_machine_rela,
4250         elf_machine_rela_relative): Adjust.
4251         * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela,
4252         elf_machine_rela_relative): Adjust.
4253         * sysdeps/sparc/sparc64/dl-machine.h (elf_machine_rela,
4254         elf_machine_rela_relative): Adjust.
4255         * sysdeps/x86_64/dl-machine.h (elf_machine_rela,
4256         elf_machine_rela_relative): Adjust.
4258 2003-07-29  Ulrich Drepper  <drepper@redhat.com>
4260         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Restore
4261         alignment of TCB used before the last change so that it matches
4262         ld's output for IE code.
4264 2003-07-29  Jakub Jelinek  <jakub@redhat.com>
4266         * include/ctype.h (__ctype_b_loc, __ctype_toupper_loc,
4267         __ctype_tolower_loc): Avoid "dereferencing type-punned pointer will
4268         break strict-aliasing rules" warnings.
4270 2003-07-29  Roland McGrath  <roland@redhat.com>
4272         * elf/Makefile: Revert accidental changes in last commit.
4273         * elf/dl-support.c: Likewise.
4275         * rt/tst-timer2.c: New file.
4276         * rt/Makefile (tests): Add it.
4278 2003-07-25  Jakub Jelinek  <jakub@redhat.com>
4280         * elf/dl-support.c (_dl_hwcap): Add nocommon attribute.
4282 2003-07-29  Roland McGrath  <roland@redhat.com>
4284         * elf/Makefile (tests) [$(build-shared) = yes]:
4285         Depend on $(test-modules).
4286         * dlfcn/Makefile: Likewise.
4288 2003-07-28  Roland McGrath  <roland@redhat.com>
4290         * sysdeps/generic/bits/types.h (__STD_TYPE): New macro.
4291         Use that instead of `typedef' when using __*_TYPE macros in rhs.
4293         * elf/tst-tls14.c [USE_TLS && HAVE___THREAD]: Conditionalize on this.
4294         * elf/tst-tlsmod14a.c: Likewise.
4296         * sysdeps/unix/sysv/linux/sys/sysctl.h: Include <linux/compiler.h>
4297         before <linux/sysctl.h>.
4299 2003-07-27  Ulrich Drepper  <drepper@redhat.com>
4301         * sysdeps/unix/sysv/syscalls.list: time syscall never fails.
4302         * sysdeps/unix/sysv/linux/x86_64/time.S: time syscall never fails.
4303         * sysdeps/unix/sysv/i386/time.S: time syscall never fails.
4304         * sysdeps/unix/syscalls.list: umask syscall never fails.
4306 2003-07-27  Andreas Jaeger  <aj@suse.de>
4308         * sysdeps/unix/sysv/linux/init-first.c: Mark init as used.
4310 2003-07-25  Jakub Jelinek  <jakub@redhat.com>
4312         * sysdeps/unix/sysv/linux/a.out.h: Replace with i386 version.
4313         Include bits/a.out.h.
4314         * sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Add
4315         bits/a.out.h.
4316         * sysdeps/unix/sysv/linux/bits/a.out.h: New file.
4317         * sysdeps/unix/sysv/linux/i386/bits/a.out.h: New file.
4318         * sysdeps/unix/sysv/linux/m68k/bits/a.out.h: New file.
4319         * sysdeps/unix/sysv/linux/x86_64/bits/a.out.h: New file.
4320         * sysdeps/unix/sysv/linux/alpha/a.out.h: New file.
4321         * sysdeps/unix/sysv/linux/alpha/bits/a.out.h: New file.
4322         * sysdeps/unix/sysv/linux/sparc/a.out.h: New file.
4323         * sysdeps/unix/sysv/linux/sparc/bits/a.out.h: New file.
4325 2003-07-24  Jakub Jelinek  <jakub@redhat.com>
4327         * sysdeps/pthread/aio_cancel.c (aio_cancel): Return AIO_ALLDONE
4328         if aiocbp != NULL and has already completed.  Return -1/EINVAL if
4329         aiocbp->aio_fildes does not match fildes.
4331 2003-07-24  Ulrich Drepper  <drepper@redhat.com>
4333         * timezone/zic.c (rpytime): Replace cheap overflow check with a
4334         functioning one.
4336         * include/link.h (struct link_map): Add l_tls_firstbyte_offset field.
4337         * sysdeps/generic/dl-tls.c [TLS_TCB_AT_TP] (_dl_determine_tlsoffset):
4338         Fix calculation of offsets to take misalignment of first byte in
4339         file into account.
4340         * elf/dl-load.c (_dl_map_object_from_fd): Initialize
4341         l_tls_firstbyte_offset field.
4342         * elf/rtld.c (_dl_start_final, _dl_start, dl_main): Likewise.
4343         * elf/dl-reloc.c (_dl_allocate_static_tls): Change return type to int.
4344         Take l_tls_firstbyte_offset information into account.
4345         (CHECK_STATIC_TLS): _dl_allocate_static_tls can fail now.
4346         * sysdeps/generic/ldsodefs.h: Adjust _dl_allocate_static_tls prototype.
4347         * elf/Makefile: Add rules to build and run tst-tls14.
4348         * elf/tst-tls14.c: New file.
4349         * elf/tst-tlsmod14a.c: New file.
4350         * elf/tst-tlsmod14b.c: New file.
4352 2003-07-23  Jakub Jelinek  <jakub@redhat.com>
4354         * sysdeps/pthread/lio_listio.c (LIO_OPCODE_BASE): Define.
4355         (lio_listio): Use it.
4356         * sysdeps/pthread/lio_listio64.c: Include lio_listio.c instead of
4357         after few defines to avoid duplication.
4359 2003-07-22  Jakub Jelinek  <jakub@redhat.com>
4361         * include/stdio.h (__libc_fatal): Add libc_hidden_proto.
4362         * include/dlfcn.h (__libc_dlopen_mode, __libc_dlsym, __libc_dlclose):
4363         Likewise.
4364         * elf/dl-libc.c (__libc_dlopen_mode, __libc_dlsym, __libc_dlclose):
4365         Add libc_hidden_def.
4366         * sysdeps/generic/libc_fatal.c (__libc_fatal): Likewise.
4367         * sysdeps/posix/libc_fatal.c (__libc_fatal): Likewise.
4368         * sysdeps/unix/sysv/linux/libc_fatal.c (__libc_fatal): Likewise.
4369         * elf/Versions (libc): Export __libc_dlopen_mode@@GLIBC_PRIVATE,
4370         __libc_dlsym@@GLIBC_PRIVATE and __libc_dlclose@@GLIBC_PRIVATE.
4371         * libio/Versions (libc): Export __libc_fatal@@GLIBC_PRIVATE.
4372         * sysdeps/generic/unwind-dw2.c: Readd #ifs removed during last
4373         change.
4374         * sysdeps/generic/unwind.inc: Removed.
4376         * include/resolv.h (__resp): Declare.  Define to __libc_resp
4377         if in libc.so.
4378         (_res): If USE___THREAD, define to (*__resp).
4379         * resolv/res_libc.c (_res): Normal .bss variable with compat_symbol
4380         even if USE___THREAD.
4381         (__resp): New __thread variable.
4382         (__libc_resp): New alias.
4383         * resolv/Versions (libc): Export _res@GLIBC_2.0 even if
4384         USE_TLS && HAVE___THREAD.  Export __resp@@GLIBC_PRIVATE.
4385         * sysdeps/generic/res-state.c (__res_state): Return __resp
4386         if USE___THREAD.
4388 2003-07-22  H.J. Lu  <hongjiu.lu@intel.com>
4390         * elf/dl-support.c (_dl_hwcap): New variable.
4391         (_dl_aux_init): Initialize GL(dl_hwcap) for static binaries.
4393         * sysdeps/i386/fpu/fclrexcpt.c: Include <unistd.h>, <ldsodefs.h>
4394         and <dl-procinfo.h>.
4395         (__feclearexcept): Clear MXCSR if needed.
4396         * sysdeps/i386/fpu/fsetexcptflg.c: Likewise.
4398         * sysdeps/i386/fpu_control.h (_FPU_GETCW, _FPU_SETCW): Document
4399         that newer hardware needs more than these macros.
4401         * sysdeps/i386/setfpucw.c: New file.
4403 2003-07-22  Jakub Jelinek  <jakub@redhat.com>
4405         * elf/Makefile (CFLAGS-ldconfig.c): Define IS_IN_ldconfig.
4406         * elf/ldconfig.c: Include dl-procinfo.c.
4407         (PROCINFO_CLASS): Define.
4408         * sysdeps/generic/ldsodefs.h (PROCINFO_CLASS): Define.
4409         * sysdeps/unix/sysv/linux/x86_64/dl-procinfo.c: New file.
4410         * sysdeps/unix/sysv/linux/x86_64/dl-procinfo.h: New file.
4411         * sysdeps/unix/sysv/linux/i386/dl-procinfo.c (PROCINFO_CLASS):
4412         Define if not yet defined.  Use it instead of EXTERN.  Undefine
4413         at the end of the file.
4414         * sysdeps/unix/sysv/linux/arm/dl-procinfo.c (PROCINFO_CLASS):
4415         Likewise.
4416         * sysdeps/unix/sysv/linux/sparc/sparc32/dl-procinfo.c
4417         (PROCINFO_CLASS): Likewise.
4418         * sysdeps/unix/sysv/linux/sparc/sparc64/dl-procinfo.c
4419         (PROCINFO_CLASS): Likewise.
4421 2003-07-22  H.J. Lu  <hongjiu.lu@intel.com>
4423         * elf/ldconfig.c (main): Issue a fatal error if relative path
4424         is used to build cache.
4426 2003-07-22  Ulrich Drepper  <drepper@redhat.com>
4428         * elf/readlib.c (process_file): Avoid possible overflow in assignment.
4430 2003-07-21  Art Haas  <ahaas@airmail.net>
4432         * manual/charset.texi (Converting a Character): Fix example code so a
4433         valid pointer is returned.
4435 2003-07-22  Andreas Jaeger  <aj@suse.de>
4437         * elf/readlib.c (process_file): Check that file is a shared
4438         object.
4440         * elf/sofini.c (__FRAME_END__): Use attribute used so that gcc
4441         will not optimize it away.
4442         (__DTOR_END__): Likewise.
4443         (__CTOR_END__): Likewise.
4445         * include/libc-symbols.h (_elf_set_element): Use attribute used so
4446         that gcc will not optimize it away.
4447         (link_warning): Likewise.
4449 2003-07-22  Ulrich Drepper  <drepper@redhat.com>
4451         * wcsmbs/wcpncpy.c (__wcpncpy): Correct destination pointer handling.
4452         * wcsmbs/Makefile (tests): Add tst-wcpncpy.
4453         * wcsmbs/tst-wcpncpy.c: New file.
4455 2003-07-21  Ulrich Drepper  <drepper@redhat.com>
4457         * sysdeps/unix/sysv/linux/bits/sched.h (CLONE_STOPPED): Define.
4459         * sysdeps/i386/fpu/feenablxcpt.c (feenableexcept): Reverse use of
4460         stmxcsr and ldmxcsr.
4462         * Makerules (build-module-helper): Add -z defs unless explicitly said
4463         not to do it.
4464         * dlfcn/Makefile: Define various *-no-z-defs variables for test DSOs
4465         which has undefined symbols.
4466         * elf/Makefile: Likewise.
4468         * sysdeps/i386/fpu/fedisblxcpt.c: Use dl_hwcap, not dl_hwcap_mask.
4469         * sysdeps/i386/fpu/feenablxcpt.c: Likewise.
4470         * sysdeps/i386/fpu/feholdexcpt.c: Likewise.
4471         * sysdeps/i386/fpu/fesetround.c: Likewise.
4472         * sysdeps/i386/fpu/ftestexcept.c: Likewise.
4474 2003-07-21  HJ Lu  <hongjiu.lu@intel.com>
4476         * elf/ldconfig.c (search_dir): Treat symlink as regular file
4477         if it won't point to itself.
4479 2003-07-20  Ulrich Drepper  <drepper@redhat.com>
4481         * sysdeps/ia64/hp-timing.h (REPEAT_READ): Cast to long int not to int.
4483 2003-07-20  Andreas Jaeger  <aj@suse.de>
4485         * iconvdata/cp932.c (BODY): STANDARD_ERR_HANDLER is now called
4486         STANDARD_TO_LOOP_ERR_HANDLER.
4487         * iconvdata/euc-jp-ms.c (BODY): Likewise.
4489 2003-07-19  Ulrich Drepper  <drepper@redhat.com>
4491         * sysdeps/unix/sysv/linux/bits/sched.h (__CPU_ZERO): Fix typo.
4493         * sysdeps/unix/sysv/linux/syscalls.list: Remove affinity syscalls.
4495 2003-07-16  Daniel Jacobowitz  <drow@mvista.com>
4496             Andreas Jaeger  <aj@suse.de>
4498         * sysdeps/unix/sysv/linux/mips/bits/shm.h (SHMLBA): Define to
4499         256K, remove unneeded declaration of __getpagesize.
4501 2003-07-16  Andreas Schwab  <schwab@suse.de>
4503         * sysdeps/unix/sysv/linux/futimes.c: Include <string.h>.
4505 2003-07-15  Ulrich Drepper  <drepper@redhat.com>
4507         * io/test-utime.c (main): Make test yet more robust.
4509 2003-07-14  Ulrich Drepper  <drepper@redhat.com>
4511         More cancellation handling fixups.
4512         * sysdeps/unix/sysv/linux/not-cancel.h: Add waitpid_not_cancel.
4513         * sysdeps/generic/not-cancel.h: Likewise.
4514         * catgets/open_catalog.c: Use not-cancelable syscalls.
4515         * time/Makefile (CFLAGS-getdate.c): Add -fexceptions.
4516         * sysdeps/unix/sysv/linux/llseek.c: Must not be cancelable.
4517         * sysdeps/unix/syscalls.list: Don't mark lseek as cancelable.
4518         * dlfcn/dlfcn.h: Mark dlopen with __THROW again.
4519         * io/fcntl.h: Don't mark posix_fallocate with __THROW.
4520         * libio/fileops.c: Use not-cancelable syscalls for fclose.
4521         * libio/iopopen.c: Use no-cancelable syscalls.
4522         * libio/stdio.h: Mark popen and pclose with __THROW again.
4523         * misc/Makefile (CFLAGS-syslog.c): Add -fexceptions.
4524         * misc/syslog.c: Fix locking and cancellation cleanup handling.
4525         * posix/unistd.h: Mark ttyname and ttyname_r again with __THROW.
4526         * stdio-common/Makefile (CFLAGS-tmpfile.c, CFLAGS-tmpfile64.c,
4527         CFLAGS-tempname.c): Add -fexceptions.
4528         * stdlib/Makefile (CFLAGS-mkstemp.c): Add -fexceptions.
4529         * string/string.h: Mark strerror and strerror_r with _THROW again.
4530         * sysdeps/generic/unwind.inc: New file.  Copied from gcc.
4531         * sysdeps/generic/unwind-dw2.c: Update from gcc version.  Remove
4532         #ifs since we now need all the code compiled.
4533         * sysdeps/posix/spawni.c: Use close_not_cancel instead of close.
4534         * sysdeps/unix/closedir.c: Use not-cancelable syscalls.
4535         * sysdeps/unix/opendir.c: Likewise.
4537         * iconvdata/Makefile (modules): Add CP932 and EUC-JP-MS.
4538         Add rule for EUC-JP-MS dependency.
4539         * iconvdata/cp932.c: New file.
4540         * iconvdata/eucjp-ms.c: New file.
4541         * iconvdata/gconv-modules: Add entries for CP932 and EUC-JP-MS.
4542         Patch by MORIYAMA Masayuki <msyk@mtg.biglobe.ne.jp>.
4544 2003-07-15  Jakub Jelinek  <jakub@redhat.com>
4546         * sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S (__socket): Add
4547         cfi directives.
4549 2003-07-14  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
4551         * sysdeps/unix/sysv/linux/kernel-features.h
4552         (__ASSUME_FIXED_CLONE_SYSCALL): New macro.
4553         * sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S: Use it.
4555         * sysdeps/unix/sysv/linux/utimes.c: Include sysdep.h.
4557 2003-07-14  Ulrich Drepper  <drepper@redhat.com>
4559         * sysdeps/unix/sysv/linux/kernel-features.h: Define
4560         __ASSUME_TGKILL for Alpha appropriately.
4562 2003-07-12  Ulrich Drepper  <drepper@redhat.com>
4564         * sysdeps/unix/sysv/linux/bits/statfs.h (_STATFS_F_FRSIZE): Define.
4565         * sysdeps/unix/sysv/linux/alpha/bits/statfs.h (_STATFS_F_FRSIZE):
4566         Likewise.
4567         * sysdeps/unix/sysv/linux/s390/bits/statfs.h (_STATFS_F_FRSIZE):
4568         Likewise.
4570         * sysdeps/unix/sysv/linux/kernel-features.h: Define
4571         __ASSUME_UTIMES for x86 and kernels > 2.5.75.
4573         * sysdeps/unix/sysv/linux/futimes.c (__futimes): Handle case with
4574         second parameter == NULL.
4575         * sysdeps/unix/sysv/linux/utimes.c: New file.
4577 2003-07-12  Jakub Jelinek  <jakub@redhat.com>
4579         * sysdeps/unix/sysv/linux/futimes.c: Include kernel-features.h.
4580         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_UTIMES): Fix
4581         a typo.
4583 2003-07-12  Ulrich Drepper  <drepper@redhat.com>
4585         * time/sys/time.h: Namespace cleanup.
4586         * sysdeps/unix/sysv/linux/kernel-features.h: Define
4587         __ASSUME_UTIMES for the architectures which always had the syscall.
4588         * sysdeps/unix/sysv/linux/futimes.c: New file.
4590 2003-07-12  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
4592         * sysdeps/unix/sysv/linux/sh/socket.S: Save and restore the PR
4593         register across CENABLE and CDISABLE.
4595 2003-07-11  Jakub Jelinek  <jakub@redhat.com>
4597         * sysdeps/unix/sysv/linux/sigwait.c: Include string.h.
4598         * sysdeps/unix/sysv/linux/sigwaitinfo.c: Likewise.
4599         * sysdeps/unix/sysv/linux/sigtimedwait.c: Likewise.
4600         * sysdeps/unix/sysv/linux/sleep.c (__sleep): Cast value to unsigned
4601         int before assigning to max to avoid warnings.
4603 2003-07-11  Jakub Jelinek  <jakub@redhat.com>
4605         * sysdeps/unix/sysv/linux/powerpc/powerpc32/socket.S (__socket): Add
4606         cfi directives.
4607         * sysdeps/unix/sysv/linux/s390/s390-32/socket.S (__socket): Likewise.
4608         * sysdeps/unix/sysv/linux/s390/s390-64/socket.S (__socket): Likewise.
4610 2003-07-10  Jakub Jelinek  <jakub@redhat.com>
4612         * sysdeps/powerpc/powerpc64/elf/start.S: Set section flags of
4613         .data.rel.ro.local to "aw".
4615 2003-07-10  Ulrich Drepper  <drepper@redhat.com>
4617         * sysdeps/m68k/Makefile: Remove CLFAGS-.oS addition.
4618         * Makeconfig (CFLAGS-.oS): Use PIC-ccflag instead of pic-ccflag.
4619         (PIC-ccflag): Define.
4621 2003-07-04  Jakub Jelinek  <jakub@redhat.com>
4623         * sysdeps/s390/s390-32/elf/start.S: Emit position independent code
4624         if PIC.
4625         * sysdeps/s390/s390-64/elf/start.S: Likewise.
4627 2003-07-07  Jakub Jelinek  <jakub@redhat.com>
4629         * sysdeps/powerpc/powerpc64/elf/start.S: Put L(start_address)
4630         into .data.rel.ro.local section if PIC to avoid DT_TEXTREL.
4632 2003-07-07  Ulrich Drepper  <drepper@redhat.com>
4634         * sysdeps/unix/sysv/linux/kernel-features.h: Version
4635         __ASSUME_CORRECT_SI_PID and __ASSUME_TGKILL if possible.
4637         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Adjust for
4638         compilation with HAVE_AUX_SECURE defined.
4640 2003-07-05  Richard Henderson  <rth@redhat.com>
4642         * sysdeps/alpha/elf/initfini.c: Avoid .ent/.end.
4644 2003-07-03  Ulrich Drepper  <drepper@redhat.com>
4646         * configure.in: Also check for .cfi_rel_offset pseudo-op.
4648 2003-07-03  Jakub Jelinek  <jakub@redhat.com>
4650         * sysdeps/unix/sysv/linux/prof-freq.c (__profile_frequency): Fix a
4651         typo.
4653 2003-07-03  Ulrich Drepper  <drepper@redhat.com>
4655         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_AT_CLKTCK):
4656         Define.
4657         * sysdeps/unix/sysv/linux/prof-freq.h: New file.
4659 2003-07-02  Jakub Jelinek  <jakub@redhat.com>
4661         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Protect new_sysinfo
4662         decl and use with #ifdef NEED_DL_SYSINFO.
4664 2003-07-02  Ulrich Drepper  <drepper@redhat.com>
4666         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Don't set
4667         GL(dl_sysinfo) unles GL(dl_sysinfo_dso) is also set.
4668         * sysdeps/unix/sysv/linux/kernel-features.h: Define
4669         __ASSUME_VSYSCALL only for 2.5.69 and up since this is when the
4670         vsyscall DSO was added.
4672         * posix/bits/posix1_lim.h (_POSIX_NGROUPS_MAX): Define to 8 or 0
4673         depending on selected standard.
4674         (NGROUPS_MAX): Define to 8 if not defined.
4676 2003-07-02  Andreas Jaeger  <aj@suse.de>
4678         * sysdeps/unix/sysv/linux/x86_64/sys/epoll.h: New file.
4680 2003-05-04  H.J. Lu  <hongjiu.lu@intel.com>
4682         * malloc/arena.c (arena_get2): Add atomic_write_barrier.
4683         * malloc/thread-m.h: Include <atomic.h>.
4684         (atomic_full_barrier): Provide default.
4685         (atomic_read_barrier): Likewise.
4686         (atomic_write_barrier): Likewise.
4687         * sysdeps/ia64/bits/atomic.h (atomic_full_barrier): New #define.
4689 2003-06-30  Ulrich Drepper  <drepper@redhat.com>
4691         * sysdeps/generic/sysdep.h: Define cfi_rel_offset and CFI_REL_OFFSET.
4693 2003-06-30  Richard Henderson  <rth@redhat.com>
4695         * sysdeps/alpha/bits/atomic.h (__arch_compare_and_exchange_bool_*_int):
4696         Invert the sense of the return value.
4697         (__arch_exchange_16_int): Fix paste-o.
4698         (__arch_exchange_{32,64}_int): Fix think-o.
4700         * sysdeps/unix/sysv/linux/alpha/clone.S: Load child_tid properly.
4702 2003-06-30  Richard Henderson  <rth@redhat.com>
4704         * include/sys/resource.h (__getrusage): Mark hidden.
4705         * include/sys/time.h (__settimeofday, __setitimer, __utimes): Likewise.
4706         * include/sys/wait.h (__wait4): Likewise.
4708 2003-06-17  Guido Guenther  <agx@sigxcpu.org>
4710         * sysdeps/unix/sysv/linux/mips/xstatconv.c: Handle STAT_IS_KERNEL_STAT
4711         case.
4712         (xstat_conv): Rename to __xstat_conv and remove static inline.
4713         (xstat64_conv): Likewise.
4715 2003-06-29  Ulrich Drepper  <drepper@redhat.com>
4717         * sysdeps/unix/sysv/linux/sleep.c (__sleep): Handle parameter
4718         values which cannot be handled in one nanosleep call.
4720 2003-06-25  Alfred M. Szmidt  <ams@kemisten.nu>
4722         * sysdeps/generic/bits/in.h (IPV6_HOPOPTS, IPV6_DSTOPTS): New macros.
4723         (IPV6_RXHOPOPTS, IPV6_RXDSTOPTS): Use them.
4725         * sysdeps/generic/ifreq.h (__if_nextreq) [_HAVE_SA_LEN]: Typo fix.
4727 2003-06-04  Thorsten Kukuk  <kukuk@suse.de>
4729         * sysdeps/unix/sysv/linux/net/if_arp.h: Sync with kernel header,
4730         fix typo.
4732 2003-06-26  Steven Munroe  <sjmunroe@us.ibm.com>
4734         * sysdeps/unix/sysv/linux/xstatconv.h [!STAT_IS_KERNEL_STAT]:
4735         Conditionalize function definitions that use struct kernel_stat.
4736         * sysdeps/unix/sysv/linux/fxstat.c: Remove __syscall_fstat extern.
4737         * sysdeps/unix/sysv/linux/lxstat.c: Remove __syscall_lstat extern.
4738         * sysdeps/unix/sysv/linux/xstat.c: Remove __syscall_stat extern.
4740 2003-06-28  Ulrich Drepper  <drepper@redhat.com>
4742         * sysdeps/unix/sysv/linux/s390/semtimedop.c (semtimedop): Add real
4743         implementation.
4745 2003-06-07  Thorsten Kukuk  <kukuk@suse.de>
4747         * nis/nss_compat/compat-grp.c: Remove unused nis_first variable.
4748         (getgrent_next_file): Don't store group name to early in blacklist.
4750         * nis/nss_compat/compat-pwd.c (internal_getpwuid_r): Save strlen result
4751         and use memcpy instead of strcpy.
4753 2003-06-28  Ulrich Drepper  <drepper@redhat.com>
4755         * nis/nss_compat/compat-grp.c: Optimize several little things.  Use
4756         stream unlocked.
4757         * nis/nss_compat/compat-initgroups.c: Likewise.
4758         * nis/nss_compat/compat-pwd.c: Likewise.
4759         * nis/nss_compat/compat-spwd.c: Likewise.
4761 2003-06-27  Thorsten Kukuk  <kukuk@suse.de>
4763         * nis/nss_compat/compat-initgroups.c: Don't use our own NIS/NIS+
4764         functions, dlopen corresponding NSS module instead.
4766 2003-06-27  Jeroen Dekkers  <jeroen@dekkers.cx>
4768         * sysdeps/mach/hurd/alpha/init-first.c: Remove call to __libc_init.
4769         * sysdeps/mach/hurd/i386/init-first.c: Likewise.
4770         * sysdeps/mach/hurd/mips/init-first.c: Likewise.
4771         * sysdeps/mach/hurd/powerpc/init-first.c: Likewise.
4773 2003-06-27  Ulrich Drepper  <drepper@redhat.com>
4775         * rt/Makefile (CFLAGS-librt-cancellation.c): Define.
4777 2003-06-26  Roland McGrath  <roland@frob.com>
4779         * sysdeps/mach/configure.in: Barf rather than define NO_CREATION_TIME.
4780         * sysdeps/mach/configure: Regenerated.
4781         * sysdeps/mach/hurd/times.c (times_init): Function removed.
4782         (__times): Assume `creation_time' field is available.
4783         * sysdeps/mach/hurd/Makefile [$(subdir) = csu] (sysdep_routines):
4784         Don't append set-init.
4785         * sysdeps/mach/hurd/set-init.c: File removed.
4787 2003-06-26  Roland McGrath  <roland@redhat.com>
4789         * elf/elf.h (AT_SECURE): New macro.
4790         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Grok it,
4791         set __libc_enable_secure.
4792         (_dl_show_auxv): Add AT_SECURE to name table.
4793         * elf/dl-support.c (_dl_aux_init): Grok AT_SECURE, set
4794         __libc_enable_secure and __libc_enable_secure_decided.
4795         * sysdeps/unix/sysv/linux/ldsodefs.h
4796         [__ASSUME_AT_SECURE] (HAVE_AUX_SECURE): Define it.
4797         * sysdeps/unix/sysv/linux/kernel-features.h
4798         [__LINUX_KERNEL_VERSION >= 132426] (__ASSUME_AT_SECURE): Define it.
4800 2003-06-26  Ulrich Drepper  <drepper@redhat.com>
4802         * io/test-utime.c: If _STATBUF_ST_NSEC is defined, adjust lower
4803         boundary test to take rounding of nanoseconds into account.
4805         * sysdeps/unix/sysv/linux/bits/stat.h: Define _STATBUF_ST_NSEC.
4806         * sysdeps/unix/sysv/linux/ia64/bits/stat.h: Likewise.
4807         * sysdeps/unix/sysv/linux/m68k/bits/stat.h: Likewise.
4808         * sysdeps/unix/sysv/linux/powerpc/bits/stat.h: Likewise.
4809         * sysdeps/unix/sysv/linux/s390/bits/stat.h: Likewise.
4810         * sysdeps/unix/sysv/linux/sparc/bits/stat.h: Likewise.
4811         * sysdeps/unix/sysv/linux/x86_64/bits/stat.h: Likewise.
4813 2003-06-26  Andreas Schwab  <schwab@suse.de>
4815         * sysdeps/m68k/fpu/bits/mathinline.h: Don't inline frexp.
4816         * sysdeps/m68k/fpu/s_frexp.c: Put implementation here.
4817         * sysdeps/m68k/fpu/s_frexpl.c: Fix to handle unnormalized numbers.
4819 2003-06-17  Thorsten Kukuk  <kukuk@suse.de>
4821         * nis/Makefile: Remove NIS/NIS+ files from nss_compat module.
4822         * nis/nss_compat/compat-grp.c: Don't use our own NIS/NIS+ functions,
4823         dlopen corresponding NSS module instead.
4824         * nis/nss_compat/compat-pwd.c: Likewise.
4825         * nis/nss_compat/compat-spwd.c: Likewise.
4826         * nis/nss_compat/compat-initgroups.c: Disabled for now.
4827         * nss/Versions: Export __nss_lookup_function.
4829 2003-06-19  Daniel Jacobowitz  <drow@mvista.com>
4831         * sysdeps/unix/sysv/linux/kernel-features.h: Update kernel features
4832         for the SH architecture.
4834 2003-06-25  Thorsten Kukuk  <kukuk@suse.de>
4836         * csu/Makefile: Use CPPFLAGS to find correct linux/version.h.
4838 2003-06-25  Andreas Jaeger  <aj@suse.de>
4840         * stdlib/tst-strtod.c (main): Declare constant long double as
4841         suggested by Jakub Jelinek and Andreas Schwab.
4843         * posix/tst-nanosleep.c: Include <time.h> for nanosleep
4844         declaration.
4846         * stdio-common/tst-fphex.c: Fix format string.
4848         * posix/transbug.c: Include <string.h> for memset and strlen
4849         declarations.
4851         * stdio-common/tst-sprintf.c: Include <stdlib.h> for free declaration.
4853         * stdlib/tst-strtod.c (main): Pass long double value.
4855         * test-skeleton.c: Include <time.h> for nanosleep declaration.
4857 2003-06-25  Ulrich Drepper  <drepper@redhat.com>
4859         * include/time.h: Don't define CLOCK_IDFIELD_SIZE if _ISOMAC is
4860         defined.
4862 2003-06-11  Jakub Jelinek  <jakub@redhat.com>
4864         * elf/Versions (libc): Add _dl_open_hook@GLIBC_PRIVATE.
4865         * elf/dl-libc.c (struct dl_open_hook): New.
4866         (_dl_open_hook): New variable.
4867         (do_dlsym_private): New function.
4868         (__libc_dlopen_mode) [!SHARED]: Lookup _dl_open_hook@GLIBC_PRIVATE
4869         and initialize it if found.
4870         (__libc_dlopen_mode) [SHARED]: If _dl_open_hook is non-NULL,
4871         call dlopen_mode hook.
4872         (__libc_dlsym) [SHARED]: If _dl_open_hook is non-NULL,
4873         call dlsym hook.
4874         (__libc_dlclose) [SHARED]: If _dl_open_hook is non-NULL,
4875         call dlclose hook.
4877 2003-06-25  Ulrich Drepper  <drepper@redhat.com>
4879         * sysdeps/unix/sysv/linux/cris/sysdep.h (INLINE_SYSCALL): Cast
4880         result to long int so that extensions to long long int work.
4881         Patch by Uwe Reimann <libc-alpha@pulsar.homelinux.net>.
4883 2003-06-19  Jakub Jelinek  <jakub@redhat.com>
4885         * elf/ldconfig.c (main): Use add_system_dir instead of add_dir.
4886         * sysdeps/generic/dl-cache.h (add_system_dir): Define.
4887         * sysdeps/unix/sysv/linux/x86_64/dl-cache.h: Include sparc
4888         dl-cache.h.
4889         * sysdeps/unix/sysv/linux/s390/dl-cache.h: New file.
4890         * sysdeps/unix/sysv/linux/mips/dl-cache.h: New file.
4891         * sysdeps/unix/sysv/linux/powerpc/dl-cache.h: New file.
4892         * sysdeps/unix/sysv/linux/sparc/dl-cache.h: New file.
4894 2003-06-19  Jakub Jelinek  <jakub@redhat.com>
4896         * test-skeleton.c (timeout_handler): If waitpid returned 0,
4897         retry once after a second.  If killed == 0, assume
4898         WTERMSIG (status) == SIGKILL.
4900 2003-06-18  Roland McGrath  <roland@redhat.com>
4902         * sysdeps/generic/dl-sysdep.c (_dl_show_auxv): Catch uninitialized
4903         elements in the table instead of printing an empty name string.
4905 2003-06-05  Roland McGrath  <roland@redhat.com>
4907         * elf/elf.h (PT_GNU_STACK): New macro.
4909 2003-06-24  Ulrich Drepper  <drepper@redhat.com>
4911         * include/time.h: Define CLOCK_IDFIELD_SIZE.
4912         * sysdeps/posix/clock_getres.c: Recognize thread CPU clock IDs.
4913         * sysdeps/unix/clock_gettime.c: Likewise.
4914         * sysdeps/unix/clock_settime.c: Likewise.
4915         * sysdeps/unix/clock_nanosleep.c (CPUCLOCK_P): Adjust for new
4916         clock id for thread CPU clocks.
4918         * sysdeps/unix/sysv/linux/fstatfs64.c (__fstatfs64): Add support
4919         for the fstatfs64 syscall.
4920         * sysdeps/unix/sysv/linux/statfs64.c (__statfs64): Add support for
4921         the statfs64 syscall.
4923         * sysdeps/unix/sysv/linux/kernel-features.h: Define
4924         __ASSUME_STATFS64 appropriately.
4926         * sysdeps/unix/sysv/linux/internal_statvfs.c: Use f_frsize field
4927         from statfs structure if it has been filled in.
4929         * sysdeps/unix/sysv/linux/bits/statfs.h (struct statfs): Add f_frsize
4930         field.
4931         (struct statfs64): Likewise.
4932         * sysdeps/unix/sysv/linux/alpha/bits/statfs.h: Likewise.
4933         * sysdeps/unix/sysv/linux/s390/bits/statfs.h: Likewise.
4935 2003-06-24  Richard Henderson  <rth@redhat.com>
4937         * sysdeps/unix/sysv/linux/alpha/syscalls.list (pread, pwrite): Use
4938         the 64-bit syscall name.
4940         * sysdeps/alpha/setjmp.S (_setjmp, setjmp): Mark .prologue.
4942         * sysdeps/alpha/fpu/bits/mathinline.h: Honor
4943         __LIBC_INTERNAL_MATH_INLINES.  Implement __signbitf, __signbit.
4945         * sysdeps/unix/sysv/linux/alpha/clone.S: Use HIDDEN_JUMPTARGET.
4946         * sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S: Use
4947         libc_hidden_def.
4948         * sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S: Likewise.
4949         * sysdeps/unix/sysv/linux/alpha/setfpucw.c: Use libc_hidden_proto
4950         on them.
4952         * sysdeps/alpha/bits/atomic.h: New file.
4954 2003-06-24  Andreas Schwab  <schwab@suse.de>
4956         * sysdeps/m68k/fpu/libm-test-ulps: Update.
4958 2003-06-24  Andreas Jaeger  <aj@suse.de>
4960         * sysdeps/unix/sysv/linux/x86_64/stat.h (_STAT_VER_LINUX): Avoid
4961         redeclaration with 32-bit code.
4963 2003-05-19  Ed Connell  <ed.connell@sas.com>
4965         * sysdeps/unix/sysv/linux/i386/getcontext.S (getcontext): Retain
4966         floating point mask.
4967         * sysdeps/i386/fpu/fegetenv.c (fegetenv): Likewise.
4969 2003-06-23  Ulrich Drepper  <drepper@redhat.com>
4971         * sysdeps/pthread/aio_misc.h: Mark __aio_requests_mutex,
4972         __aio_enqueue_request, __aio_find_req, __aio_find_req_fd,
4973         __aio_free_request, __aio_notify, and __aio_sigqueue as hidden.
4975         * sysdeps/pthread/aio_suspend.c (aio_suspend): Set errno to the result
4976         of pthread_cond_wait if there was an error.  Use pthread_cleanup_*
4977         instead of __libc_cleanup_region_*.
4979 2003-06-20  Richard Henderson  <rth@redhat.com>
4981         * sysdeps/unix/make-syscalls.sh: Implement ! prefix for strong aliases.
4982         * sysdeps/unix/sysv/linux/alpha/syscalls.list (open, open64): New.
4984 2003-06-20  Richard Henderson  <rth@redhat.com>
4986         * sysdeps/unix/alpha/sysdep.h (INLINE_SYSCALL1): Use __builtin_expect.
4987         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_ST_INO_64_BIT)
4988         Unset for alpha.
4989         (__ASSUME_TIMEVAL64): Set for alpha.
4990         * sysdeps/unix/sysv/linux/alpha/Makefile (sysdep_routines): Remove
4991         adjtimex, osf_sigprocmask, old_adjtimex.
4992         * sysdeps/unix/sysv/linux/alpha/adjtime.c: Use INLINE_SYSCALL,
4993         __ASSUME_TIMEVAL64.  Reorg tv64 functions to avoid uninit variable.
4994         * sysdeps/unix/sysv/linux/alpha/getitimer.S: Use __ASSUME_TIMEVAL64.
4995         * sysdeps/unix/sysv/linux/alpha/getrusage.S: Likewise.
4996         * sysdeps/unix/sysv/linux/alpha/gettimeofday.S: Likewise.
4997         * sysdeps/unix/sysv/linux/alpha/select.S: Likewise.
4998         * sysdeps/unix/sysv/linux/alpha/setitimer.S: Likewise.
4999         * sysdeps/unix/sysv/linux/alpha/settimeofday.S: Likewise.
5000         * sysdeps/unix/sysv/linux/alpha/utimes.S: Likewise.
5001         * sysdeps/unix/sysv/linux/alpha/wait4.S: Likewise.
5002         * sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S: Streamline
5003         PIC code sequence.
5004         * sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S: Likewise.
5005         * sysdeps/unix/sysv/linux/alpha/sigaction.c: New file.
5006         * sysdeps/unix/sysv/linux/alpha/sigprocmask.c: Use INLINE_SYSCALL.
5007         * sysdeps/unix/sysv/linux/alpha/ustat.c: Likewise.
5008         * sysdeps/unix/sysv/linux/alpha/xmknod.c: Likewise.
5009         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Remove osf_sigprocmask,
5010         sys_ustat, sys_mknod, adjtimex, old_adjtimex.
5011         * sysdeps/unix/sysv/linux/alpha/sysdep.h (INLINE_SYSCALL): Don't
5012         defer to __syscall_name; error for rt_sigaction.
5013         * sysdeps/unix/sysv/linux/alpha/xstatconv.c: Include kernel_stat.h.
5015 2003-06-18  Ulrich Drepper  <drepper@redhat.com>
5017         * malloc/malloc.c (public_mALLINFo): Initialize malloc if it
5018         hasn't happened yet.
5020         * sysdeps/unix/sysv/linux/x86_64/register-dump.h (register_dump):
5021         Fix completely broken implementation.  The second parameter is of
5022         type struct ucontext*.
5024         * sysdeps/x86_64/dl-machine.h (elf_machine_runtime_setup): Always
5025         inline.
5027         * sysdeps/i386/i686/dl-hash.h: Don't inline _dl_elf_hash.
5028         * sysdeps/generic/dl-hash.h: Likewise.
5030         * sysdeps/generic/memcmp.c: Remove inline from
5031         memcmp_common_alignment and memcmp_not_common_alignment definition.
5033         * intl/localealias.c (read_alias_file): Determine whether line is
5034         read incompletely early, before we modify the line.
5036 2003-06-17  Jakub Jelinek  <jakub@redhat.com>
5038         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela)
5039         <case R_PPC64_DTPREL64>: Don't segfault on undefined symbols.
5041 2003-06-17  Paul Mackerras  <paulus@samba.org>
5043         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: New file.
5044         * sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S: New file.
5045         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: New file.
5046         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: New file.
5047         * sysdeps/unix/sysv/linux/powerpc/powerpc32/ucontext_i.h: New file.
5048         * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: Adjust.
5050 2003-06-17  Jakub Jelinek  <jakub@redhat.com>
5052         * posix/regcomp.c (build_word_op): Use alnum instead of alpha class.
5054 2003-06-17  Ulrich Drepper  <drepper@redhat.com>
5056         * sysdeps/unix/clock_nanosleep.c (clock_nanosleep): nanosleep
5057         takes care of enabling cancellation.
5059         * sysdeps/pthread/aio_suspend.c (aio_suspend): Make aio_suspend
5060         cancelable.  It's not correct to disable cancellation.  Instead of
5061         a cleanup handler.
5063         * sysdeps/unix/sysv/linux/sigtimedwait.c: If SIGCANCEL is defined
5064         and part of the incoming set, create a temporary set without this
5065         signal.
5066         * sysdeps/unix/sysv/linux/sigwait.c: Likewise.
5067         * sysdeps/unix/sysv/linux/sigwaitinfo.c: Likewise.
5069         * sysdeps/unix/sysv/linux/sleep.c: Use CANCELLATION_P if defined before
5070         returning because seconds==0.  Add __builtin_expect.
5072 2003-06-16  Ulrich Drepper  <drepper@redhat.com>
5074         * sysdeps/unix/sysv/linux/i386/socket.S: Add unwind information.
5076         * sysdeps/unix/sysv/linux/wait.c (__libc_wait): Fix type of result
5077         variable.
5079 2003-06-16  Thorsten Kukuk  <kukuk@suse.de>
5081         * include/libc-symbols.h: Add static_link_warning macro.
5082         * grp/initgroups.c: Print linker warning if this function
5083         is called in a static linked binary.
5084         * nss/getXXbyYY.c: Likewise.
5085         * nss/getXXbyYY_r.c: Likewise.
5086         * nss/getXXent.c: Likewise.
5087         * nss/getXXent_r.c: Likewise.
5088         * sysdeps/posix/getaddrinfo.c: Likewise.
5090 2003-06-16  Bruno Haible  <bruno@clisp.org>
5092         * iconvdata/gconv-modules (ISO-8859-15): Add aliases ISO_8859-15,
5093         LATIN-9.
5094         (ISO-8859-16): Add aliases ISO_8859-16:2001, ISO_8859-16.
5095         (IBM1047): Add alias IBM-1047.
5096         (GBK): Add aliases MS936, WINDOWS-936.
5098 2003-06-16  Jakub Jelinek  <jakub@redhat.com>
5100         * sysdeps/unix/sysv/linux/xstatconv.c (__xstat_conv): Define even if
5101         defined __ASSUME_STAT64_SYSCALL && defined XSTAT_IS_XSTAT64.
5102         (__xstat64_conv): Change xstat_conv to __xstat_conv.
5104 2003-06-16  Ulrich Drepper  <drepper@redhat.com>
5106         * locale/iso-639.def: Update from current official ISO 639.
5108         * math/tgmath.h (__TGMATH_UNARY_IMAG_ONLY): Removed.
5110 2003-06-15  Andreas Jaeger  <aj@suse.de>
5112         * sysdeps/i386/fpu/feenablxcpt.c (feenableexcept): Correct setting
5113         of MXCSR.
5114         * sysdeps/i386/fpu/fedisblxcpt.c (fedisableexcept): Likewise.
5115         * sysdeps/i386/fpu/feholdexcpt.c (feholdexcept): Likewise.
5116         Reported by Arnaud Desitter <arnaud.desitter@geography.oxford.ac.uk>.
5118         * math/tgmath.h (carg): Handle real arguments.
5119         (conj): Likewise.
5120         (cproj): Likewise.
5121         (cimag): Likewise.
5122         (creal): Likewise.
5124         * math/Makefile (CFLAGS-test-tgmath-ret.c): New.
5125         (tests): Add test-tgmath-ret.
5126         * math/test-tgmath-ret.c: New file.
5128         * math/tgmath.h (ilogb): Return always an int.
5130 2003-06-16  Ulrich Drepper  <drepper@redhat.com>
5132         * elf/rtld.c (dl_main): Use l_map_start not l_addr in Phdr
5133         computation so that prelinking works.
5135 2003-06-15  Ulrich Drepper  <drepper@redhat.com>
5137         * elf/dl-iteratephdr.c (__dl_iterate_phdr): Don't skip dynamic
5138         linker's map.
5139         * elf/rtld.c (dl_main): Initialize l_phdr and l_phnum of of the
5140         dynamic linker's map.
5142         Fix cancellation point handling wrt exception based cleanup.
5143         * io/Makefile: Compile fcntl.c, poll.c, and lockf.c with exceptions.
5144         * misc/Makefile: Compile pselect.c, readv.c, writev.c, and usleep.c
5145         with exceptions.
5146         * posix/Makefile: Compile pread.c, pread64.c, pwrite.c, pwrite64.c,
5147         sleep.c, wait.c, waitid.c, and waitpid.c with exceptions.
5148         * rt/Makefile: Compile aio_suspend.c and clock_nanosleep.c with
5149         exceptions.
5150         * signal/Makefile: Compile sigpause.c, sigsuspend.c, sigtimedwait.c,
5151         sigwait.c, and sigwaitinfo.c with exceptions.
5152         * stdlib/Makefile: Compile system.c with exceptions.
5153         * sysvipc/Makefile: Compile msgrcv.c and msgsnd.c with exceptions.
5154         * termios/Makefile: Compile tcdrain.c with exceptions.
5155         * sysdeps/generic/lockf.c: Add comment explaining the cancellation
5156         situation.
5157         * sysdeps/generic/pselect.c: Likewise.
5158         * sysdeps/posix/sigpause.c: Likewise.
5159         * sysdeps/posix/system.c: Likewise.
5160         * sysdeps/posix/waitid.c: Likewise.
5161         * sysdeps/unix/sysv/linux/sleep.c: Likewise.
5162         * sysdeps/unix/sysv/linux/usleep.c: Likewise.
5163         * sysdeps/unix/sysv/linux/i386/sysdep.h: Major rewrite of
5164         INTERNAL_SYSCALL to not use push inside asm statement so that
5165         unwind info is correct around the syscall.
5166         * sysdeps/unix/clock_nanosleep.c: Add cancellation support.
5167         * sysdeps/unix/sysv/linux/clock_nanosleep.c: Likewise.
5169 2003-06-15  Andreas Jaeger  <aj@suse.de>
5171         * sysdeps/x86_64/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
5172         Add CFI directives.
5174 2003-06-15  Guido Guenther  <agx@sigxcpu.org>
5176         * sysdeps/unix/sysv/linux/mips/Makefile: Add missing endif and
5177         create $(objpfx).
5179 2003-06-14  Ulrich Drepper  <drepper@redhat.com>
5181         * sysdeps/unix/sysv/linux/check_pf.c (__check_pf): Use __close,
5182         not close.
5184         * inet/inet6_option.c (inet6_option_alloc): Add libc_hidden_def.
5185         * include/netinet/in.h (inet6_option_alloc): Add libc_hidden_proto
5186         definition.
5188         * inet/netinet/ip6.h (IP6OPT_PAD1, IP6OPT_PADN): Define.
5189         * inet/netinet/in.h: Add prototypes for inet6_option_* functions.
5190         * inet/Makefile (routines): Add inet6_option.
5191         * inet/inet6_option.c: New file.
5192         * inet/Versions [GLIBC_2.3.3] (libc): Add inet6_option_space,
5193         inet6_option_init, inet6_option_append, inet6_option_alloc,
5194         inet6_option_next, and inet6_option_find.
5196 2003-06-13  Ulrich Drepper  <drepper@redhat.com>
5198         * inet/netinet/ip6.h (struct ip6_ext): Define.
5200         * sysdeps/unix/sysv/linux/sys/param.h (howmany): Optimize for gcc.
5202         Fixing gcc 3.3 warnings, part II.
5203         * argp/argp-help.c (hol_entry_long_iterate): Always inline.
5204         * elf/dl-load.c (cache_rpath): Don't inline.
5205         * iconvdata/cns11642l2.h: Always inline all functions.
5206         * iconvdata/iso-ir-165.h: Likewise.
5207         * locale/Makefile (aux): Add coll-lookup.
5208         * locale/coll-lookup.c: New file.
5209         * locale/coll-lookup.h (collidx_table_lookup): Do not define here.
5210         (collseq_table_lookup): Likewise.
5211         * locale/weightwc.h: Adjust collidx_table_lookup calls for name change.
5212         * posix/fnmatch_loop.c: Adjust collseq_table_lookup calls for name
5213         change.
5214         * posix/regcomp.c: Likewise.
5215         * posix/regexec.c: Likewise.
5216         * locale/programs/3level.h (*_get): Always inline.
5217         * locale/programs/locfile.h: Move definition of handle_copy to...
5218         * locale/programs/locfile.c: ...here.
5219         * locale/programs/ld-collate.c (obstack_int32_grow): Always inline.
5220         (obstack_int32_grow_fast): Likewise.
5221         (utf8_encode): Likewise.
5222         (find_element): Avoid aliasing problems.
5223         (insert_value): Likewise.
5224         (collate_read): Likewise.
5225         * nss/getent.c (print_hosts): Don't inline
5226         (print_networks): Likewise.
5227         (print_shadow): Likewise.
5228         (build_doc): Likewise.
5229         * nss/nss_files/files-parse.c [ENTDATA] (parser_stclass): Don't
5230         inline.
5231         * posix/regcomp.c (re_set_fastmap): Always inline.
5232         (seek_collating_symbol_entry): Likewise.
5233         (lookup_collation_sequence_value): Likewise.
5234         (build_range_exp): Likewise.
5235         (build_collating_symbol): Likewise.
5236         * posix/regexec.c (acquire_init_state_context): Don't inline.
5237         (clean_state_log_if_need): Likewise.
5238         * resolv/res_send.c (eConsIovec): Rewrite to not return struct and
5239         adjust all callers.
5240         (evConsTime): Likewise.
5241         (evAddTime): Likewise.
5242         (evSubTime): Likewise.
5243         (evNowTime): Likewise.
5244         (evTimeSpec): Removed.
5245         (__libc_res_nsend): Avoid aliasing problem.
5246         * sysdeps/unix/sysv/linux/ifreq.h: Move old_siocgifconf definition to..
5247         * sysdeps/unix/sysv/linux/ifreq.c: ...here.
5248         * sysdeps/unix/sysv/linux/i386/dl-procinfo.h (_dl_string_hwcap):
5249         Always inline.
5250         (_dl_string_platform): Likewise.
5251         * wctype/wchar-lookup.h (wctype_table_lookup): Always inline.
5252         (wcwidth_table_lookup): Likewise.
5253         (wctrans_table_lookup): Likewise.
5255         * sysdeps/unix/sysv/linux/sys/epoll.h: Include <stdint.h>.
5257 2003-06-12  Ulrich Drepper  <drepper@redhat.com>
5259         * wcsmbs/wchar.h: Define wint_t in std namespace, too [PR libc/5034].
5261 2003-05-29  Jim Meyering  <jim@meyering.net>
5263         * time/strftime.c (my_strftime) [!defined _NL_CURRENT
5264         && HAVE_STRFTIME]: Use underlying_strftime for %r.
5265         Suggested by Daniel Yacob <locales@geez.org>.
5267 2003-06-12  Steven Munroe  <sjmunroe@us.ibm.com>
5269         * sysdeps/powerpc/powerpc64/dl-machine.h (RTLD_START): Replace
5270         @got notation with @toc.
5271         * sysdeps/powerpc/powerpc64/sysdep.h (CALL_MCOUNT): Likewise.
5272         * sysdeps/unix/sysv/linux/powerpc/powerpc64/brk.S (__brk): Likewise.
5274 2003-06-12  Ulrich Drepper  <drepper@redhat.com>
5276         * sysdeps/posix/getaddrinfo.c (gaih_inet): Set no_inet6_date also
5277         if only PF_INET address is needed.
5279         * nss/getXXbyYY_r.c: Make sure we always return a nonzero value in
5280         case of an error.
5282         * scripts/config.guess: Update from upstream version.
5283         * scripts/config.sub: Likewise.
5285 2003-06-12  Jakub Jelinek  <jakub@redhat.com>
5287         * locale/programs/ld-time.c (time_output): Also copy the era format,
5288         not only the name.
5290 2003-06-12  H.J. Lu  <hongjiu.lu@intel.com>
5292         * posix/transbug.c (run_test): Return 1 for failure.
5293         (do_test): Compare only if run_test is successful.
5295 2003-06-12  Simon Josefsson  <jas@extundo.com>
5297         * argp/argp.h [!__THROW]: Define if undefined.
5299 2003-06-12  Ulrich Drepper  <drepper@redhat.com>
5301         * sysdeps/unix/sysv/linux/cris/sysdep.h: Fix handling of syscalls with
5302         more than four parameters.
5303         Patch by Uwe Reimann <libc-alpha@pulsar.homelinux.net>.
5305 2003-06-12  Jakub Jelinek  <jakub@redhat.com>
5307         * sysdeps/unix/sysv/linux/ia64/kernel_stat.h: New file.
5308         * sysdeps/unix/sysv/linux/s390/s390-64/kernel_stat.h: New file.
5309         * sysdeps/unix/sysv/linux/x86_64/kernel_stat.h: New file.
5311         * stdio-common/printf-parsemb.c: Include stdlib.h and sys/param.h.
5313 2003-06-12  Roland McGrath  <roland@redhat.com>
5315         * Makerules ($(objpfx)stubs): Rewrite sed magic.
5317 2003-02-28  Isamu Hasegawa  <isamu@yamato.ibm.com>
5319         * posix/regcomp.c (parse_expression): Deliver translation to
5320         build_word_op, and build_charclass.
5321         (build_charclass): Apply translation for character classes too.
5322         (build_word_op): Deliver translation to build_charclass.
5323         * posix/transbug.c: New file.
5324         * posix/Makefile (tests): Add transbug.
5326 2003-06-04  Paolo Bonzini  <bonzini@gnu.org>
5328         * posix/regexec.c (group_nodes_into_DFAstates): Check for
5329         NEXT_ENDBUF_CONSTRAINT.  Move check for constraints which do a
5330         'continue' before the others.
5332 2003-06-11  Ulrich Drepper  <drepper@redhat.com>
5334         * dirent/scandir.c (SCANDIR): Reset errno after calling selector
5335         function [PR libc/5045].
5337         * sysdeps/i386/bits/byteswap.h (__bswap_32): Use bswap instruction
5338         also for P4.
5340         * time/tzfile.c: Add a couple of __builtin_expect.
5342         Remove warnings gcc 3.3 shows.
5343         * argp/argp-help.c (hol_entry_short_iterate): Don't inline.
5344         * elf/dl-load.c (fillin_rpath): Likewise.
5345         (add_path): Likewise.
5346         * elf/dl-version.c (find_needed): Always inline.
5347         * elf/do-lookup.c (FCT): Don't inline.
5348         * iconv/Makefile: Extend vpath to intl subdir.
5349         (iconvconfig-modules): Add hash-string.
5350         * iconv/gconv_charset.h (strip): Don't inline.
5351         (upstr): Always inline.
5352         Move __gconv_compare_alias prototype to...
5353         * iconv/gconv_int.h: ...here.
5354         * iconv/gconv_db.c: Don't include gconv_charset.h.
5355         * iconv/gconv_conf.c (add_alias): Don't inline.
5356         (insert_module): Likewise.
5357         * iconv/gconv_simple.c (internal_ucs4_loop): Always inline.
5358         (internal_ucs4_loop_unaligned): Likewise.
5359         (internal_ucs4_loop_single): Likewise.
5360         (ucs4_internal_loop): Likewise.
5361         (ucs4_internal_loop_unaligned): Likewise.
5362         (ucs4_internal_loop_single): Likewise.
5363         (internal_ucs4le_loop): Always inline.
5364         (internal_ucs4le_loop_unaligned): Likewise.
5365         (internal_ucs4le_loop_single): Likewise.
5366         (ucs4le_internal_loop): Likewise.
5367         (ucs4le_internal_loop_unaligned): Likewise.
5368         (ucs4le_internal_loop_single): Likewise.
5369         * iconv/loop.c: Always inline the defined functions.
5370         * iconvdata/cns11642.h: Likewise.
5371         * iconvdata/cns11642l1.h: Likewise.
5372         * iconvdata/euc-kr.c: Likewise.
5373         * iconvdata/gb2312.h: Likewise.
5374         * iconvdata/jis0201.h: Likewise.
5375         * iconvdata/jis0208.h: Likewise.
5376         * iconvdata/jis0212.h: Likewise.
5377         * iconvdata/jisx0213.h: Likewise.
5378         * iconvdata/ksc5601.h: Likewise.
5379         * iconvdata/utf-7.c (base64): Don't inline.
5380         * include/libc-symbols.h (symbol_set_first_element): Add cast
5381         (symbol_set_end_p): Likewise.
5382         * include/set-hooks (RUN_HOOK): Likewise.
5383         * inet/Makefile (aux): Add ifreq.
5384         * intl/Makefile (aux): Add some entries from routines.  Add
5385         hash-string.
5386         * intl/hash-string.c: New file.
5387         * intl/hash-string.h: Remove hash_string definition.  Declare
5388         __hash_string.
5389         * iconv/gconv_cache.c (find_module_idx): Adjust hash_string caller.
5390         * iconv/iconvconfig.c (new_name): Likewise.
5391         * intl/dcigettext.c (_nl_find_msg): Likewise.
5392         * intl/loadmsgcat.c (_nl_load_domain): Likewise.
5393         * io/ftw.c (open_dir_stream): Always inline.
5394         (process_entry): Don't inline.
5395         * locale/findlocale.c: Include gconv_int.h.
5396         * locale/setlocale.c (new_composite_name): Don't inline.
5397         * locale/weight.h (findidx): Always inline.
5398         * locale/weightwc.h (findidx): Likewise.
5399         * locale/programs/linereader.c (lr_ignore_rest): Define here.
5400         * locale/programs/linereader.h (lr_ignore_rest): Don't define here,
5401         just declare it.
5402         (lr_getc): Always inline.
5403         (lr_ungetc): Likewise.
5404         * nss/nss_files/files-parse.c (parse_list): Likewise.
5405         * stdio-common/Makefile (aux): Add printf-parsemb and
5406         printf-parsewc.
5407         * stdio-common/_itoa.h (_itoa_word): Always inline.
5408         (_fitoa_word, _fitoa): Don't define here, only declare.
5409         * stdio-common/_itoa.c (_iftoa_word): Add here.
5410         (_fitoa): Likewise.
5411         * stdio-common/_itowa.h (_itowa_word): Always inline.
5412         * stdio-common/printf-parse.h (read_int): Don't inline.
5413         (find_spec): Don't define.
5414         Declare __find_specmb and __find_specwc.
5415         (parse_one_spec): Don't define.
5416         Declare __parse_one_specmb and __parse_one_specwc.
5417         * stdio-common/printf-parsemb.c: New file.
5418         * stdio-common/printf-parsewc.c: New file.
5419         * stdio-common/vfprintf.c: Update calls to find_spec and
5420         parse_one_spec for new names.
5421         * stdio-common/printf-prs.c: Likewise.  Define DONT_NEED_READ_INT.
5422         * stdlib/Makefile (aux): Add grouping and groupingwc.
5423         * stdlib/grouping.c: New file.
5424         * stdlib/groupingwc.c: New file.
5425         * stdlib/grouping.h (correctly_grouped_prefix): Don't define here.
5426         Just prototype.
5427         * stdlib/rpmatch.c (try): Don't inline.
5428         * stdlib/strtod.c (round_and_return): Don't line.
5429         (str_to_mpn): Likewise.
5430         (__mpn_lshift_1): Always inline.  Optimize only for constant count.
5431         Adjust for name change of correctly_grouped_prefix.
5432         * sysdeps/generic/strtol.c: Adjust for name change of
5433         correctly_grouped_prefix.
5434         * string/strxfrm.c (utf8_encode): Don't inline.
5435         * sysdeps/generic/dl-cache.c: Define _dl_cache_libcmp.
5436         * sysdeps/generic/dl-cache.h: Just declare _dl_cache_libcmp.
5437         * sysdeps/generic/ifreq.c: New file.
5438         * sysdeps/unix/sysv/linux/ifreq.c: New file.
5439         * sysdeps/generic/ifreq.h (__ifreq): Only declare here.
5440         * sysdeps/unix/sysv/linux/ifreq.h: Likewise.
5441         * sysdeps/generic/ldsodefs.h (_dl_name_match_p): Always inline.
5442         * sysdeps/generic/unwind-dw2-fde.c (start_fde_sort): Don't inline.
5443         (fde_split): Likewise.
5444         (fde_merge): Likewise.
5445         (end_fde_sort): Likewise.
5446         (init_object): Likewise.
5447         (binary_search_unencoded_fdes): Likewise.
5448         (binary_search_single_encoding_fdes): Likewise.
5449         (binary_search_mixed_encoding_fdes): Likewise.
5450         * sysdeps/generic/wordexp.c (w_addchar): Don't inline.
5451         * sysdeps/i386/dl-machine.c (elf_machine_runtime_setup): Always inline.
5452         * sysdeps/posix/sprofil.c (profil_count): Don't inline.
5453         * sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines):
5454         Add xstatconv.
5455         * sysdeps/unix/sysv/linux/xstatconv.h: New file.
5456         * sysdeps/unix/sysv/linux/xstatconv.c: Don't inline the function.
5457         Export them.  Prepend __ to name.
5458         * sysdeps/unix/sysv/linux/Dist: Add xstatconv.h.
5459         * sysdeps/unix/sysv/linux/fxstat.c: Adjust for name change of
5460         conversion functions.
5461         * sysdeps/unix/sysv/linux/fxstat64.c: Likewise.
5462         * sysdeps/unix/sysv/linux/lxstat.c: Likewise.
5463         * sysdeps/unix/sysv/linux/lxstat64.c: Likewise.
5464         * sysdeps/unix/sysv/linux/xstat.c: Likewise.
5465         * sysdeps/unix/sysv/linux/xstat64.c: Likewise.
5466         * sysdeps/unix/sysv/linux/i386/fxstat.c: Likewise.
5467         * sysdeps/unix/sysv/linux/i386/lxstat.c: Likewise.
5468         * sysdeps/unix/sysv/linux/i386/xstat.c: Likewise.
5469         * sysdeps/unix/sysv/linux/pathconf.c (__statfs_link_max,
5470         __statfs_filesize_max, __statfs_symlinks): Define here.  __ prepended
5471         to name.  Change callers.
5472         * sysdeps/unix/sysv/linux/pathconf.h (__statfs_link_max,
5473         __statfs_filesize_max, __statfs_symlinks): Don't define here, just
5474         declare.
5475         * sysdeps/unix/sysv/linux/fpathconf.c: Change all callers.
5476         * time/tzfile.c (decode): Always inline.
5477         * wcsmbs/wcsnrtombs.c: Change type of inbuf to unsigned char*.
5478         Remove cast in tomb function call.
5479         * wcsmbs/wcsrtombs.c Likewise.
5480         * wcsmbs/wcstob.c: Introduce new temp variable to take pointer in
5481         tomb function call.
5483 2003-06-10  Ulrich Drepper  <drepper@redhat.com>
5485         * po/zh_CN.po: Update from translation team.
5487 2003-06-10  Jakub Jelinek  <jakub@redhat.com>
5489         * sysdeps/unix/sysv/linux/bits/in.h (IPV6_V6ONLY, IPV6_JOIN_ANYCAST,
5490         IPV6_LEAVE_ANYCAST, IPV6_IPSEC_POLICY, IPV6_XFRM_POLICY): Define.
5492 2003-06-10  Ulrich Drepper  <drepper@redhat.com>
5494         * inet/Makefile (aux): Add check_pf.
5495         * include/ifaddrs.h: Add prototype for __check_pf.
5496         * sysdeps/generic/check_pf.c: New file.
5497         * sysdeps/unix/sysv/linux/check_pf.c: New file.
5498         * sysdeps/unix/sysv/linux/ifaddrs.h (__no_netlink_support): Renamed
5499         from no_netlink_support.  Export.
5500         * sysdeps/posix/getaddrinfo.c (getaddrinfo): Don't call getifaddrs,
5501         call __check_pf.
5503         * sysdeps/generic/ifaddrs.h: Add libc_hidden_def.
5505         * sysdeps/posix/getaddrinfo.c (getaddrinfo): Don't leak memory
5506         from getifaddr calls.
5508 2003-06-09  Jakub Jelinek  <jakub@redhat.com>
5510         * sysdeps/unix/sysv/linux/kernel-features.h
5511         (__ASSUME_SETRESGID_SYSCALL): Define.
5512         * sysdeps/unix/sysv/linux/setegid.c: Use __ASSUME_SETRESGID_SYSCALL
5513         instead of __ASSUME_SETRESUID_SYSCALL.
5514         (setegid): Only use setresgid32 inline syscall if __NR_setresgid32 is
5515         defined.
5516         * sysdeps/unix/sysv/linux/seteuid.c (seteuid): Only use setresgid32
5517         inline syscall if __NR_setresuid32 is defined.
5518         * sysdeps/unix/sysv/linux/i386/setegid.c (setegid): Use
5519         __ASSUME_SETRESGID_SYSCALL instead of __ASSUME_SETRESUID_SYSCALL.
5520         * sysdeps/unix/sysv/linux/i386/setregid.c: Backout last changes.
5521         * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise.
5522         * sysdeps/unix/sysv/linux/sparc/sparc32/setegid.c (setegid): Protect
5523         code handling non-existant setresgid32 syscall with
5524         #if __ASSUME_SETRESGID_SYSCALL == 0.
5526 2003-06-09  Andreas Schwab  <schwab@suse.de>
5528         * sunrpc/Makefile (generated): Remove rpc-proto.c, rpc-proto.d.
5529         ($(rpcsvc:%.x=$(objpfx)x%$o)): Don't depend on
5530         $(objpfx)rpc-proto.d.
5531         (rpcsvc-dt-files, rpcsvc-depfiles): Define.  Include
5532         $(rpcsvc-depfiles) instead of $(objpfx)rpc-proto.d.
5533         ($(objpfx)rpc-proto.d, $(objpfx)rpc-proto.c): Remove rules.
5535 2003-06-08  Ulrich Drepper  <drepper@redhat.com>
5537         * sysdeps/unix/sysv/linux/seteuid.c (seteuid): Use setresuid32
5538         syscall directly if possible.  If __ASSUME_SETRESUID_SYSCALL is
5539         defined drop compatibility code.
5540         * sysdeps/unix/sysv/linux/setegid.c (setegid): Use setresgid32
5541         syscall directly if possible.  If __ASSUME_SETRESUID_SYSCALL is
5542         defined drop compatibility code.
5543         * sysdeps/unix/sysv/linux/i386/seteuid.c (seteuid): Use
5544         setresuid32 syscall directly if possible.
5545         * sysdeps/unix/sysv/linux/i386/setegid.c (setegid): Use
5546         setresgid32 syscall directly if possible.
5547         * sysdeps/unix/sysv/linux/i386/setregid.c (__setregid): Make POSIX
5548         compliant.  Don't change sgid.
5549         * sysdeps/unix/sysv/linux/i386/setreuid.c (__setreuid): Make POSIX
5550         compliant.  Don't change suid.
5552         * config.h.in: Add have-forced-unwind.
5553         * configure.in: Add AC_SUBST(libc_cv_forced_unwind).
5555 2003-06-07  Ulrich Drepper  <drepper@redhat.com>
5557         * test-skeleton.c (main): If EXPECTED_STATUS is defined check that
5558         returned status from child matches.
5560         * Makeconfig (gnulib): Add -lgcc_eh once again.
5562 2003-06-06  Ulrich Drepper  <drepper@redhat.com>
5564         * test-skeleton.c (main): Use TEMP_FAILURE_RETRY with waitpid.
5566         * sysdeps/unix/sysv/linux/i386/sysdep.h (ASMFMT_2): Only allow
5567         %edx for first parameter.  This means no pushl and therefore the
5568         unwind info isn't screwed up.
5570 2003-06-04  Richard Henderson  <rth@redhat.com>
5572         * sysdeps/alpha/dl-machine.h (RTLD_START): Fix top-of-stack backtrace.
5573         * sysdeps/unix/sysv/linux/alpha/clone.S: Likewise.
5574         * sysdeps/alpha/elf/start.S: Likewise.  Remove pointless allocation.
5575         * sysdeps/unix/sysv/linux/alpha/rt_sigaction.S: Use standard ldgp
5576         entry sequence and explicit relocs.  Add unwind info for sigreturn
5577         and rt_sigreturn.
5578         * configure.in (libc_cv_asm_cfi_directives): Test .cfi_remember_state.
5580         * sysdeps/unix/sysv/linux/alpha/syscalls.list (semtimedop): New.
5581         Annotate some parameters.
5582         * sysdeps/unix/sysv/linux/alpha/sysdep.h (__NR_semtimedop): New.
5584         * sysdeps/unix/sysv/linux/alpha/gettimeofday.S: Fix typo in conversion.
5586         * include/libc-symbols.h (symbol_set_declare): Use arrays
5587         of unspecified size.
5589 2003-06-04  Jakub Jelinek  <jakub@redhat.com>
5591         * config.make.in (ASFLAGS-config): New.
5592         * Makeconfig (ASFLAGS): Append $(ASFLAGS-config).
5593         * configure.in (libc_cv_as_noexecstack): New check.
5594         (ASFLAGS_config): Substitute.
5596 2003-06-04  Jakub Jelinek  <jakub@redhat.com>
5598         * sysdeps/i386/fpu/bits/mathinline.h (log1p, asinh, acosh, atanh,
5599         hypot, logb): Protect with #ifdef __FAST_MATH__.
5601 2003-06-04  Thorsten Kukuk  <kukuk@suse.de>
5603         * sysdeps/i386/fpu/bits/mathinline.h (ldexpf, ldexpl): Protect with
5604         #ifdef __FAST_MATH__.
5606 2003-06-03  Ulrich Drepper  <drepper@redhat.com>
5608         * sysdeps/generic/glob.c [HAVE_D_TYPE] (glob_in_dir): Also allow
5609         DT_LNK entries if GLOB_ONLYDIR is set [PR libc/5043].
5610         * posix/globtest.sh: Adjust for this change.
5612         * sysdeps/unix/sysv/linux/ifaddrs.c (netlink_open): Call getsockname
5613         to get the actual PID value used in the records passed up.
5614         (getifaddrs): Don't initialize nh.pid here.
5616 2003-06-02  Ulrich Drepper  <drepper@redhat.com>
5618         * sysdeps/unix/sysv/linux/ifaddrs.c (netlink_receive): Minor
5619         optimization.
5621         * po/zh_CN.po: Update from translation team.
5623         * posix/getconf.c (main): Also recognize names without the
5624         _POSIX_ prefix.
5626         * elf/Makefile (CFLAGS-dl-lookup.c): Define.
5628 2003-06-02  Bernd Schmidt  <bernds@redhat.com>
5630         * sysdeps/i386/fpu/bits/mathinline.h (sqrt, __sqrtl, ldexp,
5631         ldexpf, ldexpl): Only define if __FAST_MATH__.
5633 2003-06-02  Richard C. Bilson  <rcbilson@plg.uwaterloo.ca>
5635         Replace hard-coded offsets into struct sigcontext with generated file.
5636         * sysdeps/unix/sysv/linux/ia64/sigcontext-offsets.sym: New file.
5637         * sysdeps/unix/sysv/linux/ia64/Makefile
5638         [$(subdir) = stdlib] (gen-as-const-headers): Add it.
5639         * sysdeps/unix/sysv/linux/ia64/ucontext_i.h: Include it instead of
5640         defining SC_* macros here.
5642 2003-06-02  Jakub Jelinek  <jakub@redhat.com>
5644         * sysdeps/unix/sysv/linux/bits/sched.h (CLONE_PID): Remove.
5646 2003-06-01  Jakub Jelinek  <jakub@redhat.com>
5648         * sysdeps/i386/dl-machine.h: Include <sysdep.h>.
5650 2003-06-01  Ulrich Drepper  <drepper@redhat.com>
5652         * test-skeleton.c (main): Request getopt to not reorder the
5653         command line.
5655         * elf/Makefile (CFLAGS-dl-runtime.c): Define.
5657         * wcsmbs/wcpncpy.c (__wcpncpy): Fix broken implementation to match
5658         stpncpy.
5660 2003-05-31  Ulrich Drepper  <drepper@redhat.com>
5662         * sysdeps/unix/sysv/linux/ia64/bits/sigaction.h (SA_NOCLDWAIT): Define.
5664 2003-05-31  Jakub Jelinek  <jakub@redhat.com>
5666         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_plt_conflict):
5667         New function.
5668         (elf_machine_rela) <case R_PPC64_JMP_SLOT>: Avoid
5669         RESOLVE_CONFLICT_FIND_MAP.  If RESOLVE_CONFLICT_FIND_MAP is defined,
5670         call elf_machine_plt_conflict instead of elf_machine_fixup_plt.
5672 2003-05-31  Ulrich Drepper  <drepper@redhat.com>
5674         * sysdeps/i386/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE): Add
5675         CFI directives.
5677         * csu/Makefile: Fix Makefile warnings regarding Scrt1.o.
5679         * libio/fileops.c (_IO_file_open): Don't mark as inline.
5681         * sysdeps/ia64/elf/initfini.c (gmon_initializer): Mark with
5682         attribute used.
5684 2003-05-30  Ulrich Drepper  <drepper@redhat.com>
5686         * scripts/config.guess: Update from master copy.
5687         * scripts/config.sub: Likewise.
5689 2003-05-30  Guido Guenther  <agx@sigxcpu.org>
5691         * sysdeps/mips/mips64/bsd-_setjmp.S: Include <sys/asm.h> for
5692         SETUP_GP64 and friends.
5693         * sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h: Fix register
5694         names in internal_syscall{6,7}.
5695         * sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h: Likewise.
5696         * sysdeps/unix/sysv/linux/mips/pread.c [_MIPS_SIM == _ABI64]: Fix
5697         number of syscall arguments.
5698         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
5699         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
5700         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
5702 2003-05-30  Andreas Jaeger  <aj@suse.de>
5704         * sysdeps/x86_64/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
5705         Add CFI directives.
5707         * sysdeps/unix/sysv/linux/x86_64/sigaction.c (RESTORE2): Add CFI
5708         directives.
5710         * sysdeps/generic/sysdep.h: Add CFI_* macros for C files.
5712         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
5713         Add CFI directives.
5715 2003-05-30  Jakub Jelinek  <jakub@redhat.com>
5717         * sysdeps/powerpc/powerpc32/elf/start.S: Make code compilable with
5718         SHARED.
5720 2003-05-11  Andreas Schwab  <schwab@suse.de>
5722         * Makerules: Always use -MP together with -MD.
5723         (sed-remove-dotot): Substitute $(..) also at start of line.
5724         ($(stdio_lim:h=st)): Use -MD instead of SUNPRO_DEPENDENCIES.
5725         Generated defines with a single compiler call.
5726         Use $(sed-remove-dotdot).
5727         * mach/Makefile ($(objpfx)mach-syscalls.mk): Use -MD instead
5728         of DEPENDENCIES_OUTPUT, and use $(sed-remove-objpfx).
5729         * sysdeps/unix/sysv/linux/Makefile ($(objpfx)syscall-%.h):
5730         Use -MD instead of SUNPRO_DEPENDENCIES, and use $(sed-remove-objpfx).
5731         * sysdeps/unix/sysv/linux/mips/Makefile
5732         ($(objpfx)syscall-%.h): Likewise.
5734 2003-05-28  Roland McGrath  <roland@redhat.com>
5736         * malloc/malloc.h [! __GNUC__] (__const): Define if undefined.
5738 2003-05-26  Aldy Hernandez  <aldyh@redhat.com>
5740         * soft-fp/soft-fp.h (FP_EX_UNDERFLOW): Define to 0.
5742 2003-05-28  Roland McGrath  <roland@redhat.com>
5744         * sysdeps/unix/sysv/linux/ia64/setcontext.S: Pass fourth argument to
5745         rt_sigprocmask system call.
5746         * sysdeps/unix/sysv/linux/ia64/ucontext_i.h (SC_MASK): Fix value.
5747         From Peter A. Buhr <pabuhr@plg2.math.uwaterloo.ca>.
5749 2003-05-28  Ulrich Drepper  <drepper@redhat.com>
5751         * include/libc-symbols.h: Define hidden attribute for real also if
5752         LIBC_NONSHARED is defined.  Patch by Jakub Jelinek.
5754         * csu/Makefile: Add rules to build Scrt1.o.
5755         * sysdeps/i386/elf/start.S: Make code compilable with SHARED.
5756         * sysdeps/x86_64/elf/start.S: Likewise.
5758 2003-05-27  Jakub Jelinek  <jakub@redhat.com>
5760         * stdio-common/vfprintf.c (process_arg, process_string_arg): Use
5761         pa_int/pa_u_int instead of pa_short_int, pa_u_short_int and pa_char.
5762         * stdio-common/printf-parse.h (union printf_arg): Remove pa_char,
5763         pa_short_int, pa_u_short_int and pa_float.
5765 2003-05-26  Jakub Jelinek  <jakub@redhat.com>
5767         * libio/strops.c (_IO_str_init_static): Change into a wrapper around
5768         _IO_str_init_static_internal.
5769         (_IO_str_init_static_internal): Moved from _IO_str_init_static,
5770         change size argument to _IO_size_t, don't limit sprintf to 64M.
5771         (_IO_str_init_readonly): Call _IO_str_init_static_internal.
5772         * libio/wstrops.c (_IO_wstr_init_static): Change size argument to
5773         _IO_size_t, don't limit swprintf to 256M.
5774         (_IO_wstr_init_readonly): Remove.
5775         * libio/libioP.h (_IO_str_init_static_internal, _IO_wstr_init_static):
5776         Adjust prototypes.
5777         (_IO_wstr_init_readonly): Remove prototype.
5778         * libio/iovsprintf.c (_IO_vsprintf): Use
5779         _IO_str_init_static_internal instead of INTUSE(_IO_str_init_static).
5780         * libio/iovsscanf.c (_IO_vsscanf): Likewise.
5781         * libio/memstream.c (open_memstream): Likewise.
5782         * libio/obprintf.c (_IO_obstack_vfprintf): Likewise.
5783         * libio/vasprintf.c (_IO_vasprintf): Likewise.
5784         * libio/vsnprintf.c (_IO_vsnprintf): Likewise.
5785         * stdio-common/tst-sprintf.c (main): Add new test.
5787 2003-05-26  Ulrich Drepper  <drepper@redhat.com>
5789         * stdio-common/vfprintf.c (vfprintf): Be bug-compatible with some
5790         other implementation in respect of multiple uses of parameter with
5791         different types.
5793 2003-05-25  Ulrich Drepper  <drepper@redhat.com>
5795         * sysdeps/unix/sysv/linux/kernel-features.h: Define
5796         __ASSUME_FUTEX_REQUEUE for >= 2.5.70.
5798 2003-05-22  Andreas Jaeger  <aj@suse.de>
5800         * sysdeps/unix/sysv/linux/x86_64/gettimeofday.S: Add CFI
5801         directives.
5802         * sysdeps/unix/sysv/linux/x86_64/time.S: Likewise.
5803         * sysdeps/x86_64/strtok.S: Likewise.
5805 2003-05-20  Guido Guenther  <agx@sigxcpu.org>
5807         * sysdeps/unix/sysv/linux/mips/bits/siginfo.h: Change SI_ASYNCNL
5808         to -60 and define SI_TKILL.
5810 2003-05-21  H.J. Lu  <hongjiu.lu@intel.com>
5812         * math/test-fenv.c (feexcp_nomask_test): Fix comment.
5813         (feexcp_mask_test): Likewise.
5815 2003-05-21  Ulrich Drepper  <drepper@redhat.com>
5817         * locale/programs/locale.c (main): Fix typo in last patch.
5819         * csu/elf-init.c: Mark __preinit_array_start, __preinit_array_end,
5820         __init_array_start, __init_array_end, __fini_array_start, and
5821         __fini_array_end as hidden.
5823 2003-05-21  Petter Reinholdtsen  <pere@hungry.com>
5825         * locale/programs/locale.c (main): Report an error if setlocale()
5826         fails [PR libc/2254].
5828 2003-05-21  Jakub Jelinek  <jakub@redhat.com>
5830         * sysdeps/unix/sysv/linux/s390/system.c: New file.
5832 2003-05-21  Jakub Jelinek  <jakub@redhat.com>
5834         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (LOADARGS_0,
5835         LOADARGS_1, LOADARGS_2, LOADARGS_3, LOADARGS_4, LOADARGS_5,
5836         LOADARGS_6): Don't error if syscall argument is a string literal.
5837         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h (LOADARGS_0,
5838         LOADARGS_1, LOADARGS_2, LOADARGS_3, LOADARGS_4, LOADARGS_5,
5839         LOADARGS_6): Likewise.
5841 2003-05-21  Andreas Jaeger  <aj@suse.de>
5843         * sysdeps/generic/sysdep.h (cfi_offset, cfi_startproc,
5844         cfi_endproc, cfi_def_cfa, cfi_def_ccfa_register,
5845         cfi_def_cfa_offset, cfi_adjust_cfa_offset, cfi_offset): Define.
5847         * sysdeps/x86_64/sysdep.h (CALL_MCOUNT): Add cfi directives.
5848         (ENTRY): Likewise.
5849         (END): Likewise.
5851         * configure.in: Test for asm cfi directives.
5853         * config.h.in: Add HAVE_ASM_CFI_DIRECTIVES.
5855 2003-05-17  Andreas Jaeger  <aj@suse.de>
5857         * sysdeps/unix/sysv/linux/x86_64/syscall.S: Revert last patch.
5859         * rt/tst-clock_nanosleep.c: Include <time.h> for clock_nanosleep.
5861 2003-05-16  Ulrich Drepper  <drepper@redhat.com>
5863         * rt/Makefile (tests): Add tst-clock_nanosleep.
5864         * rt/tst-clock_nanosleep.c: New file.
5865         * posix/Makefile (tests): Add tst-nanosleep.
5866         * posix/tst-nanosleep.c: New file.
5868         * sysdeps/unix/clock_nanosleep.c (CPUCLOCK_P): Fix definition.
5870         * include/features.h (__USE_XOPEN2K): Define also for
5871         _POSIX_C_SOURCE>=200112L.
5873         * sysdeps/unix/sysv/linux/sigwaitinfo.c (do_sigwaitinfo): Fold
5874         SI_TKILL code into SI_USER.
5875         * sysdeps/unix/sysv/linux/sigtimedwait.c (do_sigtimedwait): Likewise.
5877         * sysdeps/posix/sigpause.c (do_sigpause): Use sigdelset after all.
5879 2003-05-15  Jakub Jelinek  <jakub@redhat.com>
5881         * sysdeps/powerpc/powerpc32/dl-machine.c (_dl_reloc_overflow):
5882         Remove sym argument, always use refsym.
5883         (__process_machine_rela): Adjust callers.
5884         * sysdeps/powerpc/powerpc64/dl-machine.c (_dl_reloc_overflow):
5885         Likewise.
5886         * sysdeps/powerpc/powerpc32/dl-machine.h (_dl_reloc_overflow):
5887         Adjust prototype.
5888         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela): Likewise.
5890 2003-05-15  Ulrich Drepper  <drepper@redhat.com>
5892         * sysdeps/generic/dl-sysdep.c (_dl_show_auxv): Fix typo
5893         (DL_NEED_SYSINFO -> NEED_DL_SYSINFO).  If aux value is not known
5894         print numeric values.
5896 2003-05-12  Thorsten Kukuk  <kukuk@suse.de>
5898         * inet/netinet/igmp.h: Sync with Linux Kernel 2.5.69 and *BSD.
5900 2003-05-14  Andreas Schwab  <schwab@suse.de>
5902         * sysdeps/unix/sysv/linux/ia64/umount.c: New file.
5904 2003-05-14  Jakub Jelinek  <jakub@redhat.com>
5906         * elf/rtld.c (dl_main): For LD_TRACE_PRELINKING print search scope
5907         even if no DT_NEEDED is present.
5909 2003-05-13  David Mosberger  <davidm@hpl.hp.com>
5911         * sysdeps/unix/sysv/linux/ia64/setjmp.S: Fix the fix from
5912         2003-03-27: setjmp is NOT a leaf-routine (due to the call to
5913         __sigjmp_save) so we can't keep the saved unat value in a scratch
5914         register (r16).  Use loc2 instead.
5916 2003-05-13  Ulrich Drepper  <drepper@redhat.com>
5918         * csu/Makefile: Do compile elf-init with PIC flag since in dynamic
5919         binaries it has to be relocatable.
5921         * sysdeps/unix/sysv/linux/waitpid.c: Use waitpid syscall is available.
5923 2003-05-12  Steven Munroe  <sjmunroe@us.ibm.com>
5925         * sysdeps/powerpc/bits/atomic.h
5926         (__arch_compare_and_exchange_bool_8_rel): Define.
5927         (__arch_compare_and_exchange_bool_16_rel): Define.
5928         (__ARCH_REL_INSTR): Define if not already defined.
5929         (__arch_atomic_exchange_and_add_32): Add "memory" to clobber list.
5930         (__arch_atomic_decrement_if_positive_32):
5931         Add "memory" to clobber list.
5932         (__arch_compare_and_exchange_val_32_acq): Remove release sync.
5933         (__arch_compare_and_exchange_val_32_rel): Define.
5934         (__arch_atomic_exchange_32): Remove.
5935         (__arch_atomic_exchange_32_acq): Define.
5936         (__arch_atomic_exchange_32_rel): Define.
5937         (atomic_compare_and_exchange_val_rel): Define.
5938         (atomic_exchange_acq): Use __arch_atomic_exchange_*_acq forms.
5939         (atomic_exchange_rel): Define.
5940         * sysdeps/powerpc/powerpc32/bits/atomic.h
5941         (__arch_compare_and_exchange_bool_32_acq): Remove release sync.
5942         (__arch_compare_and_exchange_bool_32_rel): Define.
5943         (__arch_compare_and_exchange_bool_64_rel): Define.
5944         (__arch_compare_and_exchange_val_64_rel): Define.
5945         (__arch_atomic_exchange_64): Remove.
5946         (__arch_atomic_exchange_64_acq): Define.
5947         (__arch_atomic_exchange_64_rel): Define.
5948         * sysdeps/powerpc/powerpc64/bits/atomic.h
5949         (__arch_compare_and_exchange_bool_32_rel): Define.
5950         (__arch_compare_and_exchange_bool_64_acq): Remove release sync.
5951         (__arch_compare_and_exchange_bool_64_rel): Define.
5952         (__arch_compare_and_exchange_val_64_acq): Remove release sync.
5953         (__arch_compare_and_exchange_val_64_rel): Define.
5954         (__arch_atomic_exchange_64): Remove.
5955         (__arch_atomic_exchange_64_acq): Define.
5956         (__arch_atomic_exchange_64_rel): Define.
5957         (__arch_atomic_exchange_and_add_64): Add "memory" to clobber list.
5958         (__arch_atomic_decrement_if_positive_64):
5959         Add "memory" to clobber list.
5960         [!UP](__ARCH_REL_INSTR): Define as lwsync.
5962 2003-05-11  Andreas Schwab  <schwab@suse.de>
5964         * io/Makefile ($(objpfx)ftwtest.out): Use absolute file names.
5966 2003-05-11  Ulrich Drepper  <drepper@redhat.com>
5968         * time/tst-strftime.c (do_test): Add tests for - flag.
5970 2003-05-11  Jim Meyering  <jim@meyering.net>
5972         * time/strftime.c (my_strftime): Let the `-' (no-pad) flag affect
5973         the space-padded-by-default conversion specifiers, %e, %k, %l.
5975 2003-05-11  Andreas Schwab  <schwab@suse.de>
5977         * sysdeps/generic/sched_setaffinity.c: Fix parameter name.
5979 2003-05-10  Ulrich Drepper  <drepper@redhat.com>
5981         * sysdeps/generic/bits/sched.h: Define cpu_set_t only if not
5982         already defined and when really needed.
5983         * sysdeps/unix/sysv/linux/bits/sched.h: Likewise.
5985 2003-05-09  Thorsten Kukuk  <kukuk@suse.de>
5987         * sysdeps/unix/sysv/linux/netinet/igmp.h: Don't include kernel
5988         headers, add defines from kernel header, move it from here...
5989         * inet/netinet/igmp.h: ... to here.
5990         * inet/Makefile (headers): Add netinet/igmp.h.
5991         * sysdeps/unix/sysv/linux/Makefile: Remove netinet/igmp.h.
5992         * sysdeps/unix/sysv/linux/Dist: Remove netinet/igmp.h.
5994 2003-05-10  Ulrich Drepper  <drepper@redhat.com>
5996         * sysdeps/pthread/lio_listio64.c (lio_listio64): If SIG == NULL,
5997         use dummy sigevent structure with SIGEV_NONE [PR libc/5015].
5999 2003-05-09  Thorsten Kukuk <kukuk@suse.de>
6001         * libio/bits/stdio.h: Sync prototypes with libio/stdio.h
6002         (remove __THROW from possible cancellation points).
6004 2003-05-10  Ulrich Drepper  <drepper@redhat.com>
6006         * posix/sched.h (CPU_SETSIZE): Define.
6008 2003-05-09  Ulrich Drepper  <drepper@redhat.com>
6010         * Makeconfig (gnulib): Remove -lgcc_eh again.
6012         * posix/sched.h: Change prototypes of sched_getaffinity and
6013         sched_setaffinity.  Define CPU_SET, CPU_CLR, CPU_ISSET, and CPU_ZERO.
6014         * sysdeps/generic/sched_getaffinity.c: Adjust definition.
6015         * sysdeps/generic/sched_setaffinity.c: Likewise.
6016         * sysdeps/generic/bits/sched.h: Define __CPU_SETSIZE, __NCPUBITS,
6017         __CPUELT, __CPUMASK, cpu_set_t, __cpu_mask, __CPU_ZERO, __CPU_SET,
6018         __CPU_CLR, and __CPU_ISSET.
6019         * sysdeps/unix/sysv/linux/bits/sched.h: Likewise.
6020         * sysdeps/unix/sysv/linux/sched_getaffinity.c: New file.
6021         * sysdeps/unix/sysv/linux/sched_setaffinity.c: New file.
6023         * include/atomic.h (atomic_exchange_acq): Renamed from atomic_exchange.
6024         (atomic_exchange_rel): New #define.
6025         * sysdeps/ia64/bits/atomic.h: Likewise.
6026         * sysdeps/i386/i486/bits/atomic.h (atomic_exchange_acq): Renamed from
6027         atomic_exchange.
6028         * sysdeps/m68k/m68020/bits/atomic.h: Likewise.
6029         * sysdeps/powerpc/bits/atomic.h: Likewise.
6030         * sysdeps/sparc/sparc32/sparcv9/bits/atomic.h: Likewise.
6031         * sysdeps/sparc/sparc64/bits/atomic.h: Likewise.
6032         * sysdeps/x86_64/bits/atomic.h: Likewise.
6033         * csu/tst-atomic.c: Use atomic_exchange_acq instead of atomic_exchange.
6035         * sysdeps/unix/sysv/linux/x86_64/get_clockfreq.c: New file.
6037 2003-05-08  Ulrich Drepper  <drepper@redhat.com>
6039         * malloc/thread-m.h: Remove special handling of thread_atfork if
6040         HAVE_register_atfork_malloc is defined.
6042 2003-05-07  Andreas Jaeger  <aj@suse.de>
6044         * sysdeps/unix/sysv/linux/x86_64/syscall.S: Add DWARF2 unwind
6045         information.
6047 2003-05-06  Ulrich Drepper  <drepper@redhat.com>
6049         * libio/oldiofdopen.c (_IO_old_fdopen): Use _IO_old_init not _IO_init.
6050         * libio/oldiofopen.c (_IO_old_fopen): Likewise.
6051         * libio/libioP.h: Declare _IO_old_init.
6052         * libio/genops.c (_IO_no_init): Split in two.  New function
6053         _IO_old_init.
6055 2003-05-05  Ulrich Drepper  <drepper@redhat.com>
6057         * sysdeps/generic/enbl-secure.c (__libc_enable_secure_decided): New
6058         variable.
6059         (__libc_init_secure): Don't do anything if __libc_enable_secure_decided
6060         is nonzero.
6061         * include/unistd.h: Declare __libc_enable_secure_decided.
6062         * elf/dl-support.c (_dl_aux_init): Recognize AT_UID, AT_EUID, AT_GID,
6063         and AT_EGID.  If all found, set __libc_enable_secure and
6064         __libc_enable_secure_decided.
6066         * sysdeps/generic/libc-start.c [!SHARED]: Call
6067         __libc_check_standard_fds after __libc_init_first.
6069 2003-05-05  Roland McGrath  <roland@redhat.com>
6071         * Makerules (common-before-compile): New variable.
6072         ($(common-objpfx)%.make): Depend on that instead of $(before-compile).
6073         ($(common-objpfx)%.h $(common-objpfx)%.h.d): Likewise.  Move this rule
6074         to after all setting of before-compile.
6076 2003-05-05  Jakub Jelinek  <jakub@redhat.com>
6078         * sysdeps/ia64/bits/atomic.h (__arch_compare_and_exchange_val_8_acq,
6079         __arch_compare_and_exchange_val_16_acq): Cast 0 to mem's type.
6080         * sysdeps/powerpc/powerpc32/bits/atomic.h
6081         (__arch_compare_and_exchange_val_64_acq): Likewise.
6082         * sysdeps/sparc/sparc32/sparcv9/bits/atomic.h
6083         (__arch_compare_and_exchange_val_8_acq,
6084         __arch_compare_and_exchange_val_16_acq,
6085         __arch_compare_and_exchange_val_64_acq): Likewise.
6086         * sysdeps/sparc/sparc64/bits/atomic.h
6087         (__arch_compare_and_exchange_val_8_acq,
6088         __arch_compare_and_exchange_val_16_acq): Likewise.
6089         * sysdeps/s390/bits/atomic.h (__arch_compare_and_exchange_val_8_acq,
6090         __arch_compare_and_exchange_val_16_acq,
6091         __arch_compare_and_exchange_val_64_acq): Likewise.
6092         * sysdeps/unix/sysv/linux/sh/bits/atomic.h
6093         (__arch_compare_and_exchange_val_64_acq): Likewise.
6094         * sysdeps/s390/s390-64/backtrace.c (__backtrace): Add cast to shut
6095         up warning.
6096         * sysdeps/s390/fpu/fegetenv.c (fegetenv): Likewise.
6098         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h
6099         (INLINE_SYSCALL, INTERNAL_SYSCALL_DIRECT, INTERNAL_SYSCALL_SVC0):
6100         Return long instead of int.
6101         (INTERNAL_SYSCALL_ERROR_P): Cast val to unsigned long, replace
6102         0xfffff001u with -4095UL.
6104 2003-05-05  Andreas Jaeger  <aj@suse.de>
6106         * sysdeps/x86_64/fpu_control.h: New from i386.
6108         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (__NR_semtimedop):
6109         Define if not defined.
6111         * sunrpc/Makefile (generated-dirs): New variable.
6112         * resolv/Makefile (generated): New variable.
6114 2003-05-04  Roland McGrath  <roland@redhat.com>
6116         * csu/Makefile ($(csu-dummies) target rule): Don't use a temp C file.
6117         Depend on $(before-compile).
6119         * csu/Makefile ($(objpfx)crt%.o): Replace implicit rule with a static
6120         pattern rule.  The implicit rule could be ruled out when $(objpfx)
6121         didn't exist at the time of its consideration (ugh!).
6123         * Makerules (+make-deps): Fix target matching.
6124         Use $(sed-remove-dotdot).
6126 2003-05-03  Ulrich Drepper  <drepper@redhat.com>
6128         * nscd/nscd.c (main): Parse config file right after parsing
6129         parameters.  Then, if get_stats is true, call receive_print_stats.
6130         Drop parameter from nscd_init call.
6131         (get_stats): New variable.
6132         (parse_opt): Set get_stats, don't call receive_print_stats here.
6133         * nscd/nscd.h: Declare dbs, stat_user, and stat_uid.  Adjust nscd_init
6134         prototype.
6135         * nscd/connections.c (stat_user, stat_uid): New variables.
6136         (dbs): Make global.
6137         (nscd_init): Don't read configuration file here.  Drop parameter.
6138         (handle_request): Cleanup handling of non-database lookup requests.
6139         * nscd/nscd_conf.c (nscd_parse_file): Recognize stat-user entry.
6140         Get UID of the specified user.  Use xstrdup instead of strdup.
6141         * nscd/nscd_stat.c (receive_print_stats): Check UID.  If not zero,
6142         check stat_user.
6143         * nscd/Makefile (nscd-modules): Add xstrdup.
6144         * nscd/nscd.conf: Document stat-user entry.
6146 2003-05-03  H.J. Lu  <hongjiu.lu@intel.com>
6148         * sysdeps/unix/sysv/linux/ia64/sysdep.h (__NR_semtimedop): Define
6149         if not defined.
6151 2003-04-22  Roland McGrath  <roland@redhat.com>
6153         * elf/elf.h (AT_SYSINFO_EHDR): New macro, replaces AT_SYSINFO_EH_FRAME.
6154         * sysdeps/generic/ldsodefs.h (struct rtld_global): Remove
6155         dl_sysinfo_eh_frame member, add dl_sysinfo_dso member instead.
6156         * elf/dl-support.c: Update defn.
6157         * sysdeps/generic/libc-start.c: Don't call __register_frame_info_bases.
6158         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start) [NEED_DL_SYSINFO]:
6159         Set GL(dl_sysinfo_dso) from AT_SYSINFO_EHDR.
6160         (_dl_show_auxv): Grok AT_SYSINFO_EHDR, not AT_SYSINFO_EH_FRAME.
6161         * elf/rtld.c (dl_main) [NEED_DL_SYSINFO]: If GL(dl_sysinfo_dso) is
6162         set, set up a link_map for the preloaded, prelinked object.
6164 2003-05-03  Roland McGrath  <roland@redhat.com>
6166         * sysdeps/gnu/Makefile (generated): Append errlist-compat.c here, ...
6167         * stdio-common/Makefile: ... not here.
6169         * csu/Makefile ($(objpfx)initfini.s): Depend on $(before-compile).
6170         * sysdeps/gnu/Makefile ($(objpfx)errlist-compat.c): Likewise.
6172 2003-05-02  Ulrich Drepper  <drepper@redhat.com>
6174         * sysdeps/unix/sysv/linux/s390/semtimedop.c: New file.
6176         * sysdeps/unix/sysv/linux/alpha/ipc_priv.h (IPCOP_semtimedop): Define.
6178         * sysdeps/generic/dl-fptr.c (_dl_make_fptr): Use 0 not NULL for
6179         comparing ftab elements.
6180         (_dl_unmap): Fix typo in test.
6181         (_dl_make_fptr): Fix typos introduced in last change.
6183         * sysdeps/generic/dl-fptr.c: Put back one optimization from the
6184         original patch.  Use non-exported symbols.  Mark translatable
6185         strings.  Pretty printing.
6187 2003-05-02  Roland McGrath  <roland@redhat.com>
6189         * Makerules (do-stamp): Do $(make-target-directory).
6191 2003-04-07  H.J. Lu  <hjl@gnu.org>
6193         * sysdeps/generic/dl-fptr.c: Modify to remove the lock.
6195 2003-04-03  H.J. Lu  <hjl@gnu.org>
6197         * sysdeps/ia64/dl-fptr.c: Moved to ...
6198         * sysdeps/generic/dl-fptr.c: Here.
6200         * sysdeps/generic/dl-fptr.h: New.
6201         * sysdeps/ia64/dl-fptr.h: New.
6203         * sysdeps/ia64/dl-symaddr.c: Moved to ...
6204         * sysdeps/generic/dl-symaddr.c: here.
6206         * sysdeps/ia64/dl-machine.h: Include <dl-fptr.h>.
6207         (IA64_BOOT_FPTR_TABLE_LEN): Removed.
6208         (ia64_fdesc): Likewise.
6209         (ia64_fdesc_table): Likewise.
6210         (__ia64_make_fptr): Likewise.
6211         (__ia64_init_bootstrap_fdesc_table): Replace __ia64_boot_fptr_table
6212         with _dl_boot_fptr_table.
6213         (elf_machine_runtime_setup): Replace `struct ia64_fdesc' with
6214         `struct fdesc'.
6215         (elf_machine_rela): Replace __ia64_make_fptr with _dl_make_fptr.
6217 2003-05-01  Roland McGrath  <roland@redhat.com>
6219         * sysdeps/generic/bp-thunks.h: Protect includes with [!__ASSEMBLER__].
6220         * sysdeps/unix/sysv/linux/i386/bp-thunks.h: Likewise.
6222         * sysdeps/unix/sysv/linux/Makefile ($(objpfx)syscall-%.h):
6223         Use $(make-target-directory).
6224         * sysdeps/unix/Makefile ($(objpfx)stub-syscalls.c): Likewise.
6226         * Makerules (compile-mkdep-flags): New variable, pass -MD -MF $@.d.
6227         (compile-command.S): Don't use ifndef.  Append $(compile-mkdep-flags).
6228         (compile-command.s, compile-command.c): Likewise.
6229         ($(objpfx)%.d): All such pattern rules removed.
6230         ($(+sysdir_pfx)sysd-rules): Don't generate them.
6231         ($(common-objpfx)dummy.d): Target removed.
6232         (make-dummy-dep): Variable removed.
6233         (generate-md5): Likewise.
6234         (%.d: %.dt): New pattern rule.
6235         (+depfiles): Use $(wildcard) function to get just existing *.d files
6236         and .d files for existing *.dt files.
6237         (common-clean): Remove all *.d and *.dt files.
6238         (before-compile): Add $(objpfx). when it doesn't exist,
6239         regardless of $(no_deps).
6240         * elf/rtld-Rules ($(objpfx)rtld-%.d): All such pattern rules removed.
6241         (rtld-depfiles): Use .os.d instead of .d names.
6242         Include existing *.d files and .d files for existing *.dt files.
6244         * Makerules ($(common-objpfx)%.make): Protect with [! subdir].
6245         Use -MD, -MT and -MF flags instead of SUNPRO_DEPENDENCIES variable.
6247         * sysdeps/unix/Makefile ($(common-objpfx)s-%.d): Remove compat.h hack.
6248         Do s-*.d includes only if we have some syscall routines in this subdir.
6250         * include/libc-symbols.h (libc_freeres_ptr): Use %nobits instead of
6251         @nobits.  The former is accepted by gas on any ELF platform.
6253 2003-05-01  Ulrich Drepper  <drepper@redhat.com>
6255         * sysdeps/unix/sysv/linux/semtimedop.c: New file.
6257         * malloc/malloc.c (mSTATs): Call ptmalloc_init if necessary.
6259 2003-04-29  Andreas Schwab  <schwab@suse.de>
6261         * string/test-strcat.c (do_one_test): Fix attribute name.
6263 2003-04-30  Alexandre Oliva  <aoliva@redhat.com>
6265         * sysdeps/unix/sysv/linux/mips/sys/ucontext.h (ucontext): Make
6266         uc_flags long for all ABIs.
6268 2003-04-30  Andreas Jaeger  <aj@suse.de>
6270         * sysdeps/unix/sysv/linux/x86_64/sys/debugreg.h
6271         (DR_CONTROL_RESERVED): Use correct value for 64-bit.
6272         Reported by Andrew Derrick Balsa <andrebalsa@mailingaddress.org>.
6273         Add bi-arch support.
6275 2003-04-30  Ulrich Drepper  <drepper@redhat.com>
6277         * malloc/malloc.c (mEMALIGn): Define alias __memalign_internal.
6278         (__posix_memalign): Use __memalign_internal instead of memalign.
6280 2003-04-29  Roland McGrath  <roland@redhat.com>
6282         * configure.in: Search for AUTOCONF unconditionally.
6283         Just don't complain about missing it under --without-cvs.
6285         * include/libc-symbols.h (__symbol_set_attribute): New macro,
6286         give hidden for [SHARED] and weak for [! SHARED].
6287         (symbol_set_declare): Use that.  Never need weak_extern these days.
6288         * Makerules ($(common-objpfx)shlib.lds): Go back to using PROVIDE.
6289         Depend on $(..)Makerules.
6291 2003-04-29  Ulrich Drepper  <drepper@redhat.com>
6293         * sysdeps/unix/sysv/linux/ifaddrs.c (getifaddrs): Use __ protected
6294         variants of socket, bind, recvmsg, and sendto.
6296         * sysdeps/i386/fpu/ftestexcept.c: Also check SSE status word.
6298         * include/signal.h: Use libc_hidden_proto for sigaddset and sigdelset.
6299         * signal/sigaddset.c: Add libc_hidden_def.
6300         * signal/sigdelset.c: Likewise.
6302 2003-04-29  Jakub Jelinek  <jakub@redhat.com>
6304         * sysdeps/i386/i486/string-inlines.c (__memcpy_g, __strchr_g): Move
6305         to the end of the file.
6307         * configure.in: Change __oline__ to $LINENO.
6308         (HAVE_BUILTIN_REDIRECTION): New check.
6309         * config.h.in (HAVE_BUILTIN_REDIRECTION): Add.
6310         * include/libc-symbols.h (libc_hidden_builtin_proto,
6311         libc_hidden_builtin_def, libc_hidden_builtin_weak,
6312         libc_hidden_builtin_ver): Define.
6313         * include/string.h (memchr, memcpy, memmove, memset, strcat, strchr,
6314         strcmp, strcpy, strcspn, strlen, strncmp, strncpy, strpbrk, strrchr,
6315         strspn, strstr): Add libc_hidden_builtin_proto.
6316         * intl/plural.y: Include string.h.
6317         * sysdeps/alpha/alphaev6/memchr.S (memchr): Add
6318         libc_hidden_builtin_def.
6319         * sysdeps/alpha/alphaev6/memcpy.S (memcpy): Likewise.
6320         * sysdeps/alpha/alphaev6/memset.S (memset): Likewise.
6321         * sysdeps/alpha/alphaev67/strcat.S (strcat): Likewise.
6322         * sysdeps/alpha/alphaev67/strchr.S (strchr): Likewise.
6323         * sysdeps/alpha/alphaev67/strlen.S (strlen): Likewise.
6324         * sysdeps/alpha/alphaev67/strrchr.S (strrchr): Likewise.
6325         * sysdeps/alpha/memchr.S (memchr): Likewise.
6326         * sysdeps/alpha/memset.S (memset): Likewise.
6327         * sysdeps/alpha/strcat.S (strcat): Likewise.
6328         * sysdeps/alpha/strchr.S (strchr): Likewise.
6329         * sysdeps/alpha/strcmp.S (strcmp): Likewise.
6330         * sysdeps/alpha/strcpy.S (strcpy): Likewise.
6331         * sysdeps/alpha/strlen.S (strlen): Likewise.
6332         * sysdeps/alpha/strncmp.S (strncmp): Likewise.
6333         * sysdeps/alpha/strncpy.S (strncpy): Likewise.
6334         * sysdeps/alpha/strrchr.S (strrchr): Likewise.
6335         * sysdeps/arm/memset.S (memset): Likewise.
6336         * sysdeps/arm/strlen.S (strlen): Likewise.
6337         * sysdeps/generic/memchr.c (memchr): Likewise.
6338         * sysdeps/generic/memcpy.c (memcpy): Likewise.
6339         * sysdeps/generic/memmove.c (memmove): Likewise.
6340         * sysdeps/generic/memset.c (memset): Likewise.
6341         * sysdeps/generic/strcat.c (strcat): Likewise.
6342         * sysdeps/generic/strchr.c (strchr): Likewise.
6343         * sysdeps/generic/strcmp.c (strcmp): Likewise.
6344         * sysdeps/generic/strcpy.c (strcpy): Likewise.
6345         * sysdeps/generic/strcspn.c (strcspn): Likewise.
6346         * sysdeps/generic/strlen.c (strlen): Likewise.
6347         * sysdeps/generic/strncmp.c (strncmp): Likewise.
6348         * sysdeps/generic/strncpy.c (strncpy): Likewise.
6349         * sysdeps/generic/strpbrk.c (strpbrk): Likewise.
6350         * sysdeps/generic/strrchr.c (strrchr): Likewise.
6351         * sysdeps/generic/strspn.c (strspn): Likewise.
6352         * sysdeps/generic/strstr.c (strstr): Likewise.
6353         * sysdeps/i386/i486/strcat.S (strcat): Likewise.
6354         * sysdeps/i386/i486/strlen.S (strlen): Likewise.
6355         * sysdeps/i386/i586/memcpy.S (memcpy): Likewise.
6356         * sysdeps/i386/i586/memset.S (memset): Likewise.
6357         * sysdeps/i386/i586/strchr.S (strchr): Likewise.
6358         * sysdeps/i386/i586/strcpy.S (strcpy): Likewise.
6359         * sysdeps/i386/i586/strlen.S (strlen): Likewise.
6360         * sysdeps/i386/i686/memcpy.S (memcpy): Likewise.
6361         * sysdeps/i386/i686/memmove.S (memmove): Likewise.
6362         * sysdeps/i386/i686/memset.S (memset): Likewise.
6363         * sysdeps/i386/i686/strcmp.S (strcmp): Likewise.
6364         * sysdeps/i386/memchr.S (memchr): Likewise.
6365         * sysdeps/i386/memset.c (memset): Likewise.
6366         * sysdeps/i386/strchr.S (strchr): Likewise.
6367         * sysdeps/i386/strcspn.S (strcspn): Likewise.
6368         * sysdeps/i386/strlen.c (strlen): Likewise.
6369         * sysdeps/i386/strpbrk.S (strpbrk): Likewise.
6370         * sysdeps/i386/strrchr.S (strrchr): Likewise.
6371         * sysdeps/i386/strspn.S (strspn): Likewise.
6372         * sysdeps/ia64/memchr.S (memchr): Likewise.
6373         * sysdeps/ia64/memcpy.S (memcpy): Likewise.
6374         * sysdeps/ia64/memmove.S (memmove): Likewise.
6375         * sysdeps/ia64/memset.S (memset): Likewise.
6376         * sysdeps/ia64/strcat.S (strcat): Likewise.
6377         * sysdeps/ia64/strchr.S (strchr): Likewise.
6378         * sysdeps/ia64/strcmp.S (strcmp): Likewise.
6379         * sysdeps/ia64/strcpy.S (strcpy): Likewise.
6380         * sysdeps/ia64/strlen.S (strlen): Likewise.
6381         * sysdeps/ia64/strncmp.S (strncmp): Likewise.
6382         * sysdeps/ia64/strncpy.S (strncpy): Likewise.
6383         * sysdeps/m68k/memchr.S (memchr): Likewise.
6384         * sysdeps/m68k/strchr.S (strchr): Likewise.
6385         * sysdeps/mips/mips64/memcpy.S (memcpy): Likewise.
6386         * sysdeps/mips/mips64/memset.S (memset): Likewise.
6387         * sysdeps/mips/memcpy.S (memcpy): Likewise.
6388         * sysdeps/mips/memset.S (memset): Likewise.
6389         * sysdeps/powerpc/powerpc32/memset.S (memset): Likewise.
6390         * sysdeps/powerpc/powerpc32/strchr.S (strchr): Likewise.
6391         * sysdeps/powerpc/powerpc32/strcmp.S (strcmp): Likewise.
6392         * sysdeps/powerpc/powerpc32/strcpy.S (strcpy): Likewise.
6393         * sysdeps/powerpc/powerpc32/strlen.S (strlen): Likewise.
6394         * sysdeps/powerpc/powerpc64/memcpy.S (memcpy): Likewise.
6395         * sysdeps/powerpc/powerpc64/memset.S (memset): Likewise.
6396         * sysdeps/powerpc/powerpc64/strchr.S (strchr): Likewise.
6397         * sysdeps/powerpc/powerpc64/strcmp.S (strcmp): Likewise.
6398         * sysdeps/powerpc/powerpc64/strcpy.S (strcpy): Likewise.
6399         * sysdeps/powerpc/powerpc64/strlen.S (strlen): Likewise.
6400         * sysdeps/powerpc/strcat.c (strcat): Likewise.
6401         * sysdeps/sparc/sparc32/memchr.S (memchr): Likewise.
6402         * sysdeps/sparc/sparc32/memcpy.S (memcpy): Likewise.
6403         * sysdeps/sparc/sparc32/memset.S (memset): Likewise.
6404         * sysdeps/sparc/sparc32/strcat.S (strcat): Likewise.
6405         * sysdeps/sparc/sparc32/strchr.S (strchr, strrchr): Likewise.
6406         * sysdeps/sparc/sparc32/strcmp.S (strcmp): Likewise.
6407         * sysdeps/sparc/sparc32/strcpy.S (strcpy): Likewise.
6408         * sysdeps/sparc/sparc32/strlen.S (strlen): Likewise.
6409         * sysdeps/sparc/sparc64/sparcv9b/memcpy.S (memcpy, memmove): Likewise.
6410         * sysdeps/sparc/sparc64/memchr.S (memchr): Likewise.
6411         * sysdeps/sparc/sparc64/memcpy.S (memcpy, memmove): Likewise.
6412         * sysdeps/sparc/sparc64/memset.S (memset): Likewise.
6413         * sysdeps/sparc/sparc64/strcat.S (strcat): Likewise.
6414         * sysdeps/sparc/sparc64/strchr.S (strchr, strrchr): Likewise.
6415         * sysdeps/sparc/sparc64/strcmp.S (strcmp): Likewise.
6416         * sysdeps/sparc/sparc64/strcpy.S (strcpy): Likewise.
6417         * sysdeps/sparc/sparc64/strcspn.S (strcspn): Likewise.
6418         * sysdeps/sparc/sparc64/strlen.S (strlen): Likewise.
6419         * sysdeps/sparc/sparc64/strncmp.S (strncmp): Likewise.
6420         * sysdeps/sparc/sparc64/strncpy.S (strncpy): Likewise.
6421         * sysdeps/sparc/sparc64/strpbrk.S (strpbrk): Likewise.
6422         * sysdeps/sparc/sparc64/strspn.S (strspn): Likewise.
6423         * sysdeps/sh/memcpy.S (memcpy): Likewise.
6424         * sysdeps/sh/memset.S (memset): Likewise.
6425         * sysdeps/sh/strlen.S (strlen): Likewise.
6426         * sysdeps/s390/s390-32/memchr.S (memchr): Likewise.
6427         * sysdeps/s390/s390-32/memcpy.S (memcpy): Likewise.
6428         * sysdeps/s390/s390-32/memset.S (memset): Likewise.
6429         * sysdeps/s390/s390-32/strcmp.S (strcmp): Likewise.
6430         * sysdeps/s390/s390-32/strcpy.S (strcpy): Likewise.
6431         * sysdeps/s390/s390-32/strncpy.S (strncpy): Likewise.
6432         * sysdeps/s390/s390-64/memchr.S (memchr): Likewise.
6433         * sysdeps/s390/s390-64/memcpy.S (memcpy): Likewise.
6434         * sysdeps/s390/s390-64/memset.S (memset): Likewise.
6435         * sysdeps/s390/s390-64/strcmp.S (strcmp): Likewise.
6436         * sysdeps/s390/s390-64/strcpy.S (strcpy): Likewise.
6437         * sysdeps/s390/s390-64/strncpy.S (strncpy): Likewise.
6438         * sysdeps/x86_64/memcpy.S (memcpy): Likewise.
6439         * sysdeps/x86_64/memset.S (memset): Likewise.
6440         * sysdeps/x86_64/strcat.S (strcat): Likewise.
6441         * sysdeps/x86_64/strchr.S (strchr): Likewise.
6442         * sysdeps/x86_64/strcmp.S (strcmp): Likewise.
6443         * sysdeps/x86_64/strcpy.S (strcpy): Likewise.
6444         * sysdeps/x86_64/strcspn.S (strcspn): Likewise.
6445         * sysdeps/x86_64/strlen.S (strlen): Likewise.
6446         * sysdeps/x86_64/strspn.S (strspn): Likewise.
6447         * string/string-inlines.c: Move...
6448         * sysdeps/generic/string-inlines.c: ...here.
6449         (__memcpy_g, __strchr_g): Remove.
6450         (__NO_INLINE__): Define before including <string.h>,
6451         undefine after.  Include bits/string.h and bits/string2.h.
6452         * sysdeps/i386/i486/string-inlines.c: New file.
6453         * sysdeps/i386/string-inlines.c: New file.
6454         * sysdeps/i386/i486/Versions: Remove.
6455         All GLIBC_2.1.1 symbols moved...
6456         * sysdeps/i386/Versions (libc): ...here.
6458 2003-04-29  Ulrich Drepper  <drepper@redhat.com>
6460         * sysdeps/i386/fpu/Makefile: New file.
6461         * sysdeps/i386/fpu/fedisblxcpt.c: Also set SSE control word.
6462         * sysdeps/i386/fpu/feenablxcpt.c: Likewise.
6463         * sysdeps/i386/fpu/feholdexcpt.c: Likewise.
6464         * sysdeps/i386/fpu/fesetround.c: Also set SSE rounding mode
6465         [PR libc/4987].
6467 2003-04-28  Ulrich Drepper  <drepper@redhat.com>
6469         * nscd/nscd_getgr_r.c: Compact code a bit.  Add some __builtin_expect.
6470         * nscd/nscd_getpw_r.c: Likewise.
6471         * nscd/nscd_gethst_r.c: Likewise.
6473 2003-04-27  Ulrich Drepper  <drepper@redhat.com>
6475         * nscd/pwdcache.c: Initialize .version element in result.
6476         * nscd/grpcache.c: Likewise.
6477         * nscd/pwdcache.c: Likewise.
6479 2003-04-27  Andreas Schwab  <schwab@suse.de>
6481         * Makeconfig ($(common-objpfx)sysd-sorted): Fix for running in
6482         subdirectory.
6484 2003-04-27  Andreas Schwab  <schwab@suse.de>
6486         * sysdeps/unix/sysv/linux/m68k/semtimedop.S: New file.
6488 2003-04-27  Ulrich Drepper  <drepper@redhat.com>
6490         * nscd/connections.c (client_queued): New variable.
6491         (nscd_run): Revamp the loop.  Don't call poll except for cleanup
6492         threads.  Keep track of the number of delays caused because of busy
6493         worker threads.
6494         * nscd/nscd.h: Declare client_queued.
6495         * nscd/nscd_stat.c: Transmit and print client_queued information.
6497         * locale/programs/locale.c (show_info): Use '\177' instead of CHAR_MAX.
6499         * Makerules ($(common-objpfx)shlib.lds): Don't use PROVIDE to
6500         define __start_libc_freeres_ptrs and __stop___libc_freeres_ptrs.
6502 2003-04-26  Ulrich Drepper  <drepper@redhat.com>
6504         * elf/dl-close.c [USE_TLS && TLS_TCB_AT_TP] (_dl_close): Reimplement
6505         tracking of freed memory in static TLS block.
6506         * elf/Makefile: Add rules to build and run tst-tls13.
6507         * elf/tst-tls13.c: New file.
6508         * elf/tst-tlsmod13.c: New file.
6509         * elf/tst-tlsmod13a.c: New file.
6511         * elf/tst-tls8.c: Adjust types of variables to avoid warnings.
6513         * elf/dl-reloc.c: Pretty printing.
6515 2003-04-26  Roland McGrath  <roland@redhat.com>
6517         * Makerules ($(common-objpfx)shlib.lds): New target.
6518         (common-generated): Add it.
6519         (build-shlib, build-module): Use that instead of generating every time.
6520         ($(common-objpfx)libc.so): Depend on it.
6521         (lib%.so rule): Likewise.
6522         (build-module-helper-objlist): Remove %.lds.
6523         (LDSEDCMD-c.so): Variable removed.
6524         * iconvdata/extra-module.mk ($(objpfx)$(mod).so):
6525         Depend on $(common-objpfx)shlib.lds.
6526         * dlfcn/Makefile ($(test-modules)): Likewise.
6528 2003-04-26  Roland McGrath  <roland@frob.com>
6530         * sysdeps/mach/hurd/tmpfile.c: Remove USE_IN_LIBIO conditionals.
6532 2003-04-26  Andreas Schwab  <schwab@suse.de>
6534         * elf/dl-close.c (remove_slotinfo): Fix missing parens.
6536 2003-04-25  Ulrich Drepper  <drepper@redhat.com>
6538         * nscd/cache.c (cache_search): Keep track of how many chain links
6539         we searched and update table statistics.
6540         (cache_add): Keep track of how many values are in the table.
6541         (prune_cache): Likewise.  Keep track of locking success.
6542         Print messages about removed entries in separate pass.
6543         * nscd/connections.c (handle_request): Don't print debug message here.
6544         The caller will do it.  Keep track of locking success.
6545         (nscd_run): Print debug message.  Also print PID of the client process.
6546         * nscd/nscd.c (start_time): New variable.
6547         (main): Remember start time.
6548         * nscd/nscd.h: Declare start_time.
6549         (struct database): Add more members for new statistics.
6550         * nscd/nscd_stat.c: Add support for sending, receiving, and printing
6551         of new statistics.
6553         * sysdeps/posix/getaddrinfo.c: Include <stdbool.h>.
6555 2003-04-22  Jakub Jelinek  <jakub@redhat.com>
6557         * include/link.h (NO_TLS_OFFSET): Define to 0 if not defined.
6558         * elf/dl-close.c (_dl_close): Use NO_TLS_OFFSET.
6559         * elf/dl-object.c (_dl_new_object): Initialize l_tls_offset to
6560         NO_TLS_OFFSET.
6561         * elf/rtld.c (_dl_start_final, _dl_start): Likewise.
6562         * elf/dl-reloc.c (CHECK_STATIC_TLS): Use NO_TLS_OFFSET.
6563         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Likewise.
6564         * sysdeps/powerpc/dl-tls.h (TLS_TPREL_VALUE): Don't subtract
6565         TLS_TCB_SIZE.
6567 2003-04-24  Ulrich Drepper  <drepper@redhat.com>
6569         * nss/getent.c: Implement alternative host database lookup via
6570         getaddrinfo.
6572         * include/ifaddrs.h: New file.
6573         * include/netdb.h: Move definitions of AI_V4MAPPED, AI_ALL, and
6574         AI_ADDRCONFIG...
6575         * resolv/netdb.h: ...here.
6576         * sysdeps/gnu/ifaddrs.c. Use libc_hidden_def where appropriate.
6577         * sysdeps/unix/sysv/linux/ifaddrs.c: Likewise.
6578         * sysdeps/posix/getaddrinfo.c: Implement AI_V4MAPPED, AI_ALL, and
6579         AI_ADDRCONFIG.
6581 2003-04-24  Roland McGrath  <roland@redhat.com>
6583         * elf/dl-reloc.c (_dl_allocate_static_tls): Add internal_function.
6585 2003-04-24  Jakub Jelinek  <jakub@redhat.com>
6587         * elf/dl-reloc.c (allocate_static_tls): Rename to...
6588         (_dl_allocate_static_tls): ... this function.  No longer static.
6589         (CHECK_STATIC_TLS): Adjust.
6590         * sysdeps/generic/ldsodefs.h (_dl_allocate_static_tls): New prototype.
6591         * sysdeps/powerpc/powerpc32/dl-machine.h (__process_machine_rela):
6592         Add SYM_MAP argument.
6593         (elf_machine_rela): Adjust caller.  Declare SYM_MAP unconditionally.
6594         Check if SYM_MAP != NULL for R_PPC_DTPREL32.  Only handle 32-bit
6595         TLS relocs here.  #ifdef out relocs which never appear in
6596         .gnu.conflict section from dl-conflict.c processing.
6597         * sysdeps/powerpc/powerpc32/dl-machine.c (__process_machine_rela):
6598         Add SYM_MAP argument.  Handle 16-bit TLS relocs here.
6600         * sysdeps/s390/s390-32/dl-machine.h (elf_machine_rela): #ifdef
6601         out relocs which never appear in .gnu.conflict section from
6602         dl-conflict.c processing.
6603         * sysdeps/s390/s390-64/dl-machine.h (elf_machine_rela): Likewise.
6604         * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Likewise.
6605         * sysdeps/i386/dl-machine.h (elf_machine_rela): Likewise.
6606         Use r_type in RESOLVE macro.
6608 2003-04-23  Ulrich Drepper  <drepper@redhat.com>
6610         * nis/ypclnt.c (__yp_bind): Expect YPDB parameter to always be !=
6611         NULL.  Remove code made redundant by this assumption.
6612         (__yp_unbind): Add call to free.  Adjust all callers.
6614         * nis/ypclnt.c (yp_all): Free the dom_binding object after
6615         unbinding it.
6617         * grp/initgroups.c (getgrouplist): Don't copy too much into the
6618         user buffer if more groups are found than fit into it.
6620         * nis/nss_nis/nis-initgroups.c (_nss_nis_initgroups_dyn): Use
6621         extend_alloca.
6623 2003-04-23  Jakub Jelinek  <jakub@redhat.com>
6625         * sysdeps/posix/getaddrinfo.c (gaih_inet): Check for rc == ERANGE,
6626         not rc == errno.  Use extend_alloca.
6628         * elf/tst-tls12.c (main): Fix declaration.
6629         * elf/tst-tls10.c (dummy): Make hidden instead of static.
6630         * elf/tst-tlsmod7.c (dummy): Likewise.
6631         * elf/tst-tlsmod8.c (dummy): Likewise.
6632         * elf/tst-tlsmod9.c (dummy): Likewise.
6634 2003-04-22  Roland McGrath  <roland@redhat.com>
6636         * sysdeps/unix/sysv/linux/not-cancel.h: Put parens around macro args.
6637         (open_not_cancel): Make last argument non-optional.
6638         * sysdeps/generic/check_fds.c (check_one_fd): Update caller.
6639         * sysdeps/unix/sysv/linux/gethostid.c (gethostid): Likewise.
6640         * iconv/gconv_cache.c (__gconv_load_cache): Likewise.
6642         * include/tls.h: Protect against multiple inclusion.
6644 2003-04-22  Ulrich Drepper  <drepper@redhat.com>
6646         * nscd/nscd-client.h: Add declaration for __nscd_open_socket.
6647         * nscd/nscd_gethst_r.c (__nscd_open_socket): Renamed from
6648         open_socket.  Not static anymore.
6649         (nscd_gethst_r): Use __nscd_open_socket.
6650         * nscd/nscd_getgr_r.c (open_socket): Removed.
6651         (nscd_getgr_r): Use __nscd_open_socket.
6652         * nscd/nscd_getpw_r.c (open_socket): Removed.
6653         (nscd_getpw_r): Use __nscd_open_socket.
6655         * nscd/nscd.c (main): Change type of fdn to long int and use strtol.
6656         * nscd/connections.c (handle_request): Add cast to avoid warning.
6658 2003-04-21  Ulrich Drepper  <drepper@redhat.com>
6660         * signal/sigfillset.c: Moved to...
6661         * sysdeps/generic/sigfillset.c: ...here.  If SIGCANCEL is defined
6662         do not set the corresponding bit.
6664         * sysdeps/unix/sysv/linux/sigprocmask.c: Prevent changing mask for
6665         SIGCANCEL.
6666         * sysdeps/unix/sysv/linux/alpha/bits/siginfo.h: Define SI_TKILL.
6667         * sysdeps/unix/sysv/linux/bits/siginfo.h: Define SI_TKILL.
6668         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Define SI_TKILL.
6669         * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Define SI_TKILL.
6670         * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Define SI_TKILL.
6672 2003-04-20  Ulrich Drepper  <drepper@redhat.com>
6674         * sysdeps/unix/sysv/linux/not-cancel.h (open_not_cancel): Cast
6675         first syscall parameter to const char*.
6677 2003-04-19  Ulrich Drepper  <drepper@redhat.com>
6679         * intl/Makefile ($(objpfx)msgs.h): Use C locale for sed run.
6681         * configure.in: Add AC_PROG_CXX.
6682         * config.make.in (CXX): Define.
6684         * sysdeps/i386/i686/hp-timing.h (HP_TIMING_PRINT): Change type of
6685         __len to size_t to avoid warnings.
6687 2003-04-18  Jes Sorensen  <jes@wildopensource.com>
6689         * libc/sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Sync with Linux
6690         2.5.67.
6691         * libc/sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Likewise.
6693 2003-04-19  Ulrich Drepper  <drepper@redhat.com>
6695         * stdlib/cxa_finalize.c (__cxa_finalize): Don't call
6696         UNREGISTER_ATFORK if d == NULL.
6698         * catgets/nl_types.h: Remove __THROW marker from cancellation points.
6699         * dirent/dirent.h: Likewise.
6700         * dlfcn/dlfcn.h: Likewise.
6701         * grp/grp.h: Likewise.
6702         * iconv/iconv.h: Likewise.
6703         * io/fcntl.h: Likewise.
6704         * io/ftw.h: Likewise.
6705         * libio/stdio.h: Likewise.
6706         * misc/sys/mman.h: Likewise.
6707         * misc/sys/select.h: Likewise.
6708         * misc/sys/syslog.h: Likewise.
6709         * misc/sys/uio.h: Likewise.
6710         * posix/spawn.h: Likewise.
6711         * posix/unistd.h: Likewise.
6712         * posix/sys/wait.h: Likewise.
6713         * pwd/pwd.h: Likewise.
6714         * resolv/netdb.h: Likewise.
6715         * rt/aio.h: Likewise.
6716         * shadow/shadow.h: Likewise.
6717         * signal/signal.h: Likewise.
6718         * socket/sys/socket.h: Likewise.
6719         * stdlib/stdlib.h: Likewise.
6720         * streams/stropts.h: Likewise.
6721         * string/string.h: Likewise.
6722         * sysdeps/gnu/utmpx.h: Likewise.
6723         * sysvipc/sys/msg.h: Likewise.
6724         * termios/termios.h: Likewise.
6725         * time/time.h: Likewise.
6726         * wcsmbs/wchar.h: Likewise.
6727         * iconv/gconv_cache.c: Include <not-cancel.h> and use non-cancelable
6728         functions.
6729         * misc/daemon.c: Likewise.
6730         * sysdeps/generic/backtracesymsfd.c: Likewise.
6731         * sysdeps/generic/check_fds.c: Likewise.
6732         * sysdeps/unix/sysv/linux/gethostid.c: Likewise.
6733         * sysdeps/unix/sysv/linux/not-cancel.h: New file.
6734         * sysdeps/generic/not-cancel.h: New file.
6735         * csu/Makefile (distribute): Add not-cancel.h.
6736         * sysdeps/unix/sysv/linux/fatal-prepare.h: New file.
6737         * sysdeps/unix/sysv/linux/Makefile: Define FATAL_PREPARE_INCLUDE
6738         for assert.c and assert-perr.c to include <fatal-prepare.h>.
6739         * sysdeps/unix/sysv/linux/Dist: Add fatal-prepare.h.
6741         * sysdeps/posix/remove.c (remove): Rewrite.  No need to restore
6742         errno and unlink first.
6744         * io/ftw.c (ftw_dir): In all places assume fchdir is available.
6746 2003-04-18  Ulrich Drepper  <drepper@redhat.com>
6748         * sysdeps/unix/sysv/linux/libc_fatal.c (__libc_fatal): Use
6749         INTERNAL_SYSCALL instead of INLINE_SYSCALL.
6751 2003-04-17  Ulrich Drepper  <drepper@redhat.com>
6753         * sysdeps/unix/sysv/linux/Makefile: Remove db2 directory handling.
6755         * malloc/Makefile (CFLAGS-malloc.c): Define DEFAULT_TOP_PAD to 128k.
6756         * sysdeps/unix/sysv/linux/Makefile (CFLAGS-malloc.c): Add to, not
6757         replace.
6759         * signal/Makefile (tests): Add tst-sigsimple.
6760         * signal/tst-sigsimple.c: New file.
6762 2003-04-16  Jakub Jelinek  <jakub@redhat.com>
6764         * elf/Makefile (distribute): Add tst-tlsmod{[7-9],1[0-2]}.c and
6765         tst-tls10.h.
6766         (tests): Add tst-tls1[0-2].
6767         (modules-names): Add tst-tlsmod{[7-8],1[0-2]}.
6768         ($(objpfx)tst-tlsmod8.so): Depend on tst-tlsmod7.so.
6769         ($(objpfx)tst-tlsmod10.so): Depend on tst-tlsmod9.so.
6770         ($(objpfx)tst-tlsmod12.so): Depend on tst-tlsmod11.so.
6771         ($(objpfx)tst-tls10): Depend on tst-tlsmod8.so.
6772         ($(objpfx)tst-tls11): Depend on tst-tlsmod10.so.
6773         ($(objpfx)tst-tls12): Depend on tst-tlsmod12.so.
6774         * elf/tst-tls10.c: New test.
6775         * elf/tst-tls11.c: New test.
6776         * elf/tst-tls12.c: New test.
6777         * elf/tst-tls10.h: New file.
6778         * elf/tst-tlsmod7.c: New file.
6779         * elf/tst-tlsmod8.c: New file.
6780         * elf/tst-tlsmod9.c: New file.
6781         * elf/tst-tlsmod10.c: New file.
6782         * elf/tst-tlsmod11.c: New file.
6783         * elf/tst-tlsmod12.c: New file.
6785 2003-04-15  Steven Munroe  <sjmunroe@us.ibm.com>
6787         * sysdeps/powerpc/bits/atomic.h: Moved ppc32/64 specific code to ...
6788         * sysdeps/powerpc/powerpc32/bits/atomic.h: New file.
6789         * sysdeps/powerpc/powerpc64/bits/atomic.h: New file.
6791 2003-04-17  Ulrich Drepper  <drepper@redhat.com>
6793         * posix/regex.h: Include <sys/types.h>.
6795         * signal/sigrelse.c (sigrelse): Use sigdelset and not __sigdelset.
6796         The signal number must be checked.
6797         * signal/sighold.c (sighold): Use sigaddset and not __sigaddset.
6798         The signal number must be checked [PR libc/5004].
6800         * sysdeps/unix/sysv/linux/system.c: If compiled without threads
6801         don't do anything fancy.
6803         * sysdeps/generic/bits/libc-lock.h: Define
6804         __rtld_lock_define_initialized_recursive.
6806         * nss/getXXbyYY_r.c [USE_NSCD] (REENTRANT_NAME): Only retry
6807         contacting nscd if NOT_USENSCD_NAME > 0.
6808         * nss/nsswitch.c (__nss_disable_nscd): New function.
6809         * nss/nsswitch.h: Declare it.
6810         * nss/Versions [GLIBC_PRIVATE]: Export __nss_disable_nscd.
6811         * nscd/nscd.c (main): Call __nss_disable_nscd.
6813 2003-04-16  Ulrich Drepper  <drepper@redhat.com>
6815         * stdio-common/perror.c (perror): We don't need to set the offset
6816         to _IO_pos_bad, this is how streams are initialized.
6818         * locale/programs/ld-time.c (TESTARR_ELEM): Make i unsigned.
6819         (time_output): If necessary, allocate new buffer for .name string if
6820         padding is required.
6822         * sysdeps/unix/sysv/linux/ifaddrs.c (getifaddrs): Check lengths
6823         before copying.  This might leave holes in the list.  Adjust
6824         pointers if necessary.
6825         (netlink_receive): Allocate only one block.
6826         (free_netlink_handle): Adjust appropriately.
6827         (getifaddrs): Lots of cleanups.
6829         * string/test-strncpy.c (do_one_test): Mark start and stop as
6830         possibly unused.
6831         * string/test-memchr.c: Likewise.
6832         * string/test-memcmp.c: Likewise.
6833         * string/test-memcpy.c: Likewise.
6834         * string/test-memmove.c: Likewise.
6835         * string/test-memset.c: Likewise.
6836         * string/test-strcat.c: Likewise.
6837         * string/test-strchr.c: Likewise.
6838         * string/test-strcmp.c: Likewise.
6839         * string/test-strcpy.c: Likewise.
6840         * string/test-strlen.c: Likewise.
6841         * string/test-strncmp.c: Likewise.
6842         * string/test-strpbrk.c: Likewise.
6843         * string/test-strrchr.c: Likewise.
6844         * string/test-strspn.c: Likewise.
6846 2003-04-15  Roland McGrath  <roland@redhat.com>
6848         * libio/fileops.c (_IO_file_close_it): Macro tweak to avoid warning.
6850         * sysdeps/generic/libc-start.c [NEED_DL_SYSINFO]: Add decl for
6851         INTUSE(__register_frame_info_bases).
6853 2003-04-15  Ulrich Drepper  <drepper@redhat.com>
6855         * elf/elf.h: Define AT_SYSINFO_EH_FRAME.
6856         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Handle
6857         AT_SYSINFO_EH_FRAME.  Adjust string width.
6858         (_dl_show_auxv):Display AT_SYSINFO_EH_FRAME value.
6859         * sysdeps/generic/ldsodefs.h [NEED_DL_SYSINFO] (struct rtld_global):
6860         Add _dl_sysinfo_eh_frame field.
6861         * elf/dl-support.c [NEED_DL_SYSINFO]: Define _dl_sysinfo_eh_frame.
6862         * sysdeps/generic/libc-start.c [NEED_DL_SYSINFO] Define eh_obj
6863         variable.
6864         [NEED_DL_SYSINFO] (LIBC_START_MAIN): Call __register_frame_info_bases
6865         if _dl_sysinfo_eh_frame is non-NULL.
6867         * Makeconfig (gnulib): Add -lgcc_eh.
6869         * config.h.in: Define HAVE_FORCED_UNWIND.
6871 2003-04-15  Steven Munroe  <sjmunroe@us.ibm.com>
6873         * sysdeps/powerpc/powerpc64/strcmp.S: Convert to full 64-bit.
6874         * sysdeps/powerpc/powerpc64/strcpy.S: Likewise.
6876 2003-04-15  Jakub Jelinek  <jakub@redhat.com>
6878         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Avoid
6879         checking R_PPC_RELATIVE, R_PPC_NONE and whether relocation is
6880         against local symbol in conflict processing.
6882 2003-04-15  Steven Munroe  <sjmunroe@us.ibm.com>
6884         * sysdeps/powerpc/bits/atomic.h
6885         [__powerpc64] (__arch_compare_and_exchange_val_64_acq): Define.
6886         [! __powerpc64] (__arch_compare_and_exchange_val_64_acq): Defined
6887         as abort stub.
6888         (__arch_compare_and_exchange_val_32_acq): Define.
6889         (atomic_compare_and_exchange_val_acq): Define.
6891 2003-04-15  Ulrich Drepper  <drepper@redhat.com>
6893         * include/atomic.h: Pretty printing.
6895 2003-04-14  Ulrich Drepper  <drepper@redhat.com>
6897         * stdio-common/vfscanf.c: Add casts to avoid warnings.
6899 2003-04-14  Jakub Jelinek  <jakub@redhat.com>
6901         * sysdeps/i386/i486/bits/atomic.h: Rename LOCK to LOCK_PREFIX.
6902         * sysdeps/x86_64/bits/atomic.h: Likewise.
6904 2003-04-14  Ulrich Drepper  <drepper@redhat.com>
6906         * sysdeps/unix/sysv/linux/i386/sysdep.h: Change PUSHARGS_1 and
6907         POPARGS_1 to emit labels for the mov instructions.
6909 2003-04-14  Jakub Jelinek  <jakub@redhat.com>
6911         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h (ret_NOERRNO): Define.
6913 2003-04-14  Roland McGrath  <roland@redhat.com>
6915         * sysdeps/generic/unwind-dw2.c (_Unwind_GetCFA): Add a cast to silence
6916         compiler warning.
6918         * sysdeps/generic/unwind-pe.h: Fix decl hacks broken in merge.
6920 2003-04-14  Ulrich Drepper  <drepper@redhat.com>
6922         * string/strxfrm.c (STRXFRM): Terminate rulearr at correct
6923         position.  Reported by jreiser@BitWagon.com.
6925 2003-04-13  Ulrich Drepper  <drepper@redhat.com>
6927         * sysdeps/generic/unwind-dw2-fde.c: Update from recent gcc version.
6928         * sysdeps/generic/unwind-dw2-fde.h: Likewise.
6929         * sysdeps/generic/unwind-dw2.c: Likewise.
6930         * sysdeps/generic/unwind-pe.h: Likewise.
6932 2003-04-13  Alexandre Oliva  <aoliva@redhat.com>
6934         * sysdeps/unix/sysv/linux/mips/profil-counter: New.
6935         * sysdeps/unix/sysv/linux/mips/sigcontextinfo.h: Port to n32/n64.
6936         * sysdeps/unix/sysv/linux/mips/bits/sigcontext.h: New.
6937         * sysdeps/unix/sysv/linux/mips/sys/ucontext.h: Port to n32/n64.
6938         (mcontext_t): Make it match the 32-bit mips kernel in o32.
6939         * sysdeps/unix/sysv/linux/mips/sys/user.h: Bring in constants from
6940         the mips and mips64 headers.
6941         (struct user): Port to n32/n64.
6943 2003-04-12  Ulrich Drepper  <drepper@redhat.com>
6945         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Add cast to
6946         avoid warning.
6948         * sysdeps/unix/sysv/linux/i386/sigaction.c (__libc_sigaction): If
6949         __ASSUME_VSYSCALL is defined don't add restorer.
6950         * sysdeps/unix/sysv/linux/kernel-features.h: Define
6951         __ASSUME_VSYSCALL for 2.5.53.
6953 2003-04-11  Ulrich Drepper  <drepper@redhat.com>
6955         * sysdeps/generic/libc-start.c: Cleanup MAIN_AUXVEC_ARG handling.
6956         Remove HAVE_CANCELBUF code.  Replace with code using the new
6957         initializers for unwind-based cleanup handling.
6958         * sysdeps/generic/unwind.h: Update from latest gcc version.
6959         * sysdeps/unix/sysv/linux/i386/sysdep.h: Define labels in a few
6960         places to allow unwind data generation.
6961         * sysdeps/i386/bits/setjmp.h: Allow file to be included multiple times.
6962         * sysdeps/x86_64/bits/setjmp.h: Likewise.
6963         * sysdeps/sh/bits/setjmp.h: Likewise.
6964         * sysdeps/powerpc/bits/setjmp.h: Likewise.
6965         * sysdeps/unix/sysv/linux/ia64/bits/setjmp.h: Likewise.
6966         * sysdeps/alpha/bits/setjmp.h: Likewise.
6968 2003-04-11  Roland McGrath  <roland@redhat.com>
6970         * csu/tst-empty.c: New file.
6971         * csu/Makefile (tests, tests-static): Add it.
6973 2003-04-11  Jakub Jelinek  <jakub@redhat.com>
6975         * string/test-strcmp.c (do_random_tests): Test whether return value
6976         has been promoted to wordsize if the ABI requires caller to do so.
6977         * string/test-strncmp.c (do_random_tests): Likewise.
6978         * string/test-memcmp.c (do_random_tests): Likewise.
6980         * sysdeps/powerpc/powerpc64/strcmp.S (strcmp): Sign extend rRTN
6981         before returning.
6983         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c
6984         (__fe_nomask_env): Try prctl even if __ASSUME_NEW_PRCTL_SYSCALL
6985         is not defined, but the prctl constants are.
6987         * string/tester.c (test_strcmp): Fix a typo.
6989 2003-04-09  Ulrich Drepper  <drepper@redhat.com>
6991         * sysdeps/alpha/fpu/bits/mathdef.h: Remove FLT_EVAL_METHOD definition.
6992         * sysdeps/powerpc/fpu/bits/mathdef.h: Likewise.
6994 2003-04-08  Alexandre Oliva  <aoliva@redhat.com>
6996         * sysdeps/mips/sys/regdef.h (t4,t5,t6,t7): Renamed to t0..t3 on
6997         NewABI.
6998         (ta0, ta1, ta2, ta3): Defined to t4..t7 on o32, and a4..a7 on
6999         NewABI.
7000         * sysdeps/mips/mips64/memcpy.S: Adjust register naming
7001         conventions.
7002         * sysdeps/mips/mips64/memset.S: Likewise.
7003         * sysdeps/unix/mips/sysdep.S (__syscall_error) [_LIBC_REENTRANT]:
7004         Use t0 instead of t4 as temporary.
7006 2003-04-07  Ulrich Drepper  <drepper@redhat.com>
7008         * elf/ldconfig.c (parse_conf): Ignore leading whitespace.  Use
7009         feof_unlocked instead of feof.
7010         (add_dir): Ignore trailing whitespace.
7012 2003-04-07  Jakub Jelinek  <jakub@redhat.com>
7014         * posix/bug-regex4.c (main): Cap RANGE and STOP arguments to
7015         sum of SIZE1 and SIZE2 arguments.
7017 2003-04-06  Ulrich Drepper  <drepper@redhat.com>
7019         * iconv/iconv_prog.c (process_block): Don't print message about
7020         invalid input if the -c option is used.
7021         (main): Correctly append IGNORE string for -c option.
7023 2003-04-06  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
7025         * sysdeps/sh/bits/atomic.h: Moved to ...
7026         * sysdeps/unix/sysv/linux/sh/bits/atomic.h: ... here.  Add comments.
7027         (__arch_compare_and_exchange_val_*_acq): Add parens around macro
7028         arguments.
7029         (atomic_bit_set, atomic_bit_test_set): Likewise.
7030         (atomic_exchange_and_add): Likewise.  Don't evaluate VALUE argument
7031         twice.
7032         (atomic_add, atomic_add_negative, atomic_add_zero): Likewise.
7034 2003-04-06  Roland McGrath  <roland@redhat.com>
7036         * sysdeps/unix/sysv/linux/i386/swapcontext.S: Rewrite register
7037         restoration as done for setcontext yesterday.
7039 2003-04-06  Jakub Jelinek  <jakub@redhat.com>
7041         * elf/rtld.c: Revert 2003-03-14 change.
7042         * elf/dl-conflict.c (_dl_resolve_conflicts): Move
7043         #if ! ELF_MACHINE_NO_RELA conditional into the routine.
7045 2003-04-05  Ulrich Drepper  <drepper@redhat.com>
7047         * sunrpc/xdr.c (xdr_string): Catch nodesize == 0 [PR libc/4999].
7049         * sysdeps/ieee754/ldbl-96/e_gammal_r.c (__ieee754_gammal_r):
7050         Always initialize *signgamp before returning an error.
7052 2003-04-05  Roland McGrath  <roland@redhat.com>
7054         * sysdeps/unix/sysv/linux/i386/setcontext.S: Rewrite to avoid writing
7055         below the stack pointer even if switching to the same context we are
7056         running right now.
7058 2003-04-05  Ulrich Drepper  <drepper@redhat.com>
7060         * catgets/gencat.c (read_input_file): Make sure that \n is not
7061         alone on the line before testing for continuation.
7063         * math/test-tgmath.c (compile_test): Initialize c.
7065 2003-04-05  Alexandre Oliva  <aoliva@redhat.com>
7067         * sysdeps/unix/sysv/linux/mips/mips64/n32/ftruncate64.c: New.
7068         * sysdeps/unix/sysv/linux/mips/mips64/n32/truncate64.c: New.
7069         * sysdeps/unix/sysv/linux/kernel-features.h: fcntl64 is available
7070         on mips n32.
7071         * sysdeps/unix/sysv/linux/mips/kernel_stat.h: Explain why
7072         XSTAT_IS_XSTAT64 must not be used for mips n64.  Use 64-bit data
7073         structure on n32 as well.
7074         * sysdeps/unix/sysv/linux/mips/bits/stat.h: Use POSIX-compliant
7075         data types on n32 and n64.
7077 2003-04-05  Ulrich Drepper  <drepper@redhat.com>
7079         * libio/fileops.c (_IO_new_file_fopen): Don't free step data right
7080         after getting them.
7082         * malloc/thread-m.h [PTHREAD_MUTEX_INITIALIZER]: If
7083         HAVE_register_atfork_malloc is defined use __register_atfork_malloc
7084         instead of __register_atfork.
7086 2003-04-05  Jakub Jelinek  <jakub@redhat.com>
7088         * stdio-common/reg-printf.c (__register_printf_function): Calloc
7089         instead of malloc __printf_arginfo_table and __printf_function_table.
7090         Reported by John Reiser <jreiser@BitWagon.com>.
7092 2003-04-04  Steven Munroe  <sjmunroe@us.ibm.com>
7094         * sysdeps/powerpc/powerpc64/strchr.S: 64-bit optimizations.
7095         * sysdeps/powerpc/powerpc64/strlen.S: 64-bit optimizations.
7097         * sysdeps/powerpc/fpu/bits/mathdef.h (FLT_EVAL_METHOD): Undef before
7098         defining.
7100 2003-04-04  Alexandre Oliva  <aoliva@redhat.com>
7102         * sysdeps/unix/sysv/linux/mips/bits/fcntl.h (struct flock): Adjust
7103         for n64 abi.
7105 2003-04-03  Roland McGrath  <roland@redhat.com>
7107         * configure.in: Fix up use of compilation flags to match the build:
7108         For .s files, $ASFLAGS;
7109         For .S files, $CPPFLAGS $ASFLAGS;
7110         For .c files, $CFLAGS $CPPFLAGS;
7111         when linking, add $LDFLAGS.
7112         * configure: Regenerated.
7114 2003-04-03  Jakub Jelinek  <jakub@redhat.com>
7116         * sysdeps/unix/sysv/linux/getsysstats.c (get_proc_path): Reverse test
7117         for atomic_compare_and_exchange_bool_acq failure.
7119 2003-04-03  Ulrich Drepper  <drepper@redhat.com>
7121         * posix/unistd.h: Define _POSIX_VERSION, _POSIX2_VERSION,
7122         _POSIX2_C_BIND, _POSIX2_C_DEV, _POSIX2_SW_DEV, and
7123         _POSXI2_LOCALEDEF to 200112L.  Remove _POSIX2_C_VERSION.
7124         Remove declaration of pthread_atfork.
7126 2003-04-02  Ulrich Drepper  <drepper@redhat.com>
7128         * locale/iso-639.def: Add many more languages from the current ISO 639.
7130         * sysdeps/unix/sysv/linux/ipc_priv.h: Define IPCOP_semtimedop.
7131         * sysdeps/generic/semtimedop.c: New file.
7132         * sysdeps/unix/sysv/linux/i386/semtimedop.S: New file.
7133         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Add semtimedop.
7134         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
7135         * sysvipc/Makefile (routines): Add semtimedop.
7136         * sysvipc/Versions [GLIBC_2.3.3] (glibc): Add semtimedop.
7137         * sysvipc/sys/sem.h: Declare semtimedop.
7139 2003-04-02  Daniel Jacobowitz  <drow@mvista.com>
7141         * configure.in: Check for __register_frame_info in both
7142         -lgcc and -lgcc_eh.
7143         * configure: Regenerated.
7145 2003-04-01  Roland McGrath  <roland@redhat.com>
7147         * scripts/abilist.awk: Allow dots in soname suffix.
7149         * scripts/abilist.awk (emit): Fix bailout condition.
7151 2003-04-01  Jakub Jelinek  <jakub@redhat.com>
7153         * sysdeps/unix/sysv/linux/sparc/sparc64/sigsuspend.c: Use the
7154         IA-64 version.
7156         * elf/tls-macros.h [__ia64__] (TLS_IE, TLS_LD, TLS_GD): Add gp
7157         register as input to asm.
7159 2003-04-01  Jakub Jelinek  <jakub@redhat.com>
7161         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h (sigevent_t): Fix a typo.
7163 2003-04-01  Andreas Jaeger  <aj@suse.de>
7165         * configure.in: Output as/ld as name if version is too old.
7167 2003-03-31  Daniel Jacobowitz  <drow@mvista.com>
7169         * configure.in: Don't require an installed C library in the test
7170         for ".set" assembler support.
7172 2003-03-31  Roland McGrath  <roland@redhat.com>
7174         * signal/tst-sigset.c: New file.
7175         * signal/Makefile (tests): Add it.
7177 2003-03-31  Ulrich Drepper  <drepper@redhat.com>
7179         * sysdeps/unix/sysv/linux/alpha/bits/signum.h (_NSIG): Define to 65.
7180         * sysdeps/unix/sysv/linux/hppa/bits/signum.h (_NSIG): Likewise.
7181         * sysdeps/unix/sysv/linux/sparc/bits/signum.h (_NSIG): Likewise.
7182         * sysdeps/unix/sysv/linux/bits/signum.h (_NSIG): Likewise.
7183         (__SIGRTMAX): Adjust accordingly.
7184         * sysdeps/gnu/siglist.c: If OLD2_SIGLIST_SIZE is defined define
7185         second compatibility symbol set.
7186         * sysdeps/unix/sysv/linux/siglist.h (OLD2_SIGLIST_SIZE): Define.
7188 2003-03-31  Andreas Schwab  <schwab@suse.de>
7190         * sysdeps/m68k/m68020/bits/atomic.h (atomic_increment_and_test):
7191         Define.
7192         (atomic_decrement_and_test): Fix test.
7194 2003-03-31  Jakub Jelinek  <jakub@redhat.com>
7196         * sysdeps/sparc/sparc32/bits/atomic.h: New file.
7197         * sysdeps/sparc/sparc32/sparcv9/bits/atomic.h: New file.
7198         * sysdeps/sparc/sparc64/bits/atomic.h: New file.
7199         * sysdeps/sparc/sparc32/atomicity.h: Removed.
7200         * sysdeps/sparc/sparc32/sparcv9/atomicity.h: Removed.
7201         * sysdeps/sparc/sparc64/atomicity.h: Removed.
7203 2003-03-30  Roland McGrath  <roland@redhat.com>
7205         * scripts/abilist.awk: Grok .opd foo plus .text .foo as "foo F" alone.
7207         * intl/po2test.sed: Anchor substitution regexps to fix last change.
7209 2003-03-29  Paolo Bonzini  <bonzini@gnu.org>
7211         * intl/po2test.sed: Unify the transformations for msgid and msgstr
7212         and remove a useless s/// command.
7214 2003-03-27  David Mosberger  <davidm@hpl.hp.com>
7216         * sysdeps/ia64/dl-machine.h (RTLD_START): Wrap ".save rp, r0"
7217         directive into empty .prologue region to ensure that call-chain
7218         is terminated even for the first instruction.
7220         * sysdeps/ia64/elf/start.S (_start): Use ".save rp, r0" idiom
7221         to terminate call-chain right from the get-go.
7223         * sysdeps/unix/sysv/linux/ia64/fork.S (fork): Remove unnecessary
7224         stop bit between compare & branch.
7226 2003-03-29  Ulrich Drepper  <drepper@redhat.com>
7228         * stdlib/strtod.c (INTERNAL): Recognize first digit after decimal
7229         point correctly [PR libc/4993].
7231         * sysdeps/unix/sysv/linux/ifaddrs.c (getifaddrs): Avoid
7232         netlink_open calls if netlink is known to not be available.
7234 2003-03-29  Alexandre Oliva  <aoliva@redhat.com>
7236         * configure.in: Add mips64* support.
7237         * sysdeps/mips/bits/endian.h: Make it bi-endian.
7238         * sysdeps/mips/mipsel/bits/endian.h: Removed.
7239         * sysdeps/mips/mips64/n32/el/bits/endian.h: Removed.
7240         * sysdeps/mips/mips64/n64/el/bits/endian.h: Removed.
7241         * sysdeps/mips/mips32/Makefile (CC): Add -mabi=32.
7242         * sysdeps/mips/mips64/n32/Makefile (CC): Add -mabi=n32.
7243         * sysdeps/mips/mips64/n64/Makefile (CC): Add -mabi=64.
7244         * sysdeps/mips/Implies: Moved wordsize-32 to...
7245         * sysdeps/mips/mips32/Implies: New file.
7246         * sysdeps/unix/mips/sysdep.h (PSEUDO_NOERRNO, PSEUDO_END_NOERRNO,
7247         ret_NOERRNO): New.
7248         (ret, PSEUDO_END): Moved past END.
7249         (PSEUDO): Moved to...
7250         * sysdeps/unix/mips/mips32/sysdep.h: New file.
7251         * sysdeps/unix/mips/mips64/n32/sysdep.h: Removed #undef PSEUDO.
7252         * sysdeps/unix/mips/mips64/n64/sysdep.h: Likewise.
7253         * sysdeps/unix/sysv/linux/mips/sysdep.h: Move to...
7254         * sysdeps/unix/sysv/linux/mips/mips32/sysdep.h: New file.
7255         * sysdeps/unix/sysv/linux/mips/mips32/kern64/sysdep.h: New file.
7257         * sysdeps/unix/sysv/linux/mips/clone.S (__thread_start):
7258         Re-introduce ENTRY.
7260 2003-03-28  Thorsten Kukuk  <kukuk@suse.de>
7262         * sysdeps/unix/sysv/linux/ifaddrs.c: New file.
7263         * inet/test-ifaddrs.c: Allow AF_PACKET.
7264         * sysdeps/unix/sysv/linux/kernel-features.h: Add
7265         __ASSUME_NETLINK_SUPPORT.
7267 2003-03-28  Ulrich Drepper  <drepper@redhat.com>
7269         * elf/vismain.c (do_test): Comment out tests which fail in the moment.
7271 2003-03-26  H.J. Lu  <hjl@gnu.org>
7273         * elf/vismod.h (getvarlocal1): Return const char **.
7274         (getvarinmod1): Likewise.
7275         (getvaritcpt1): Likewise.
7276         (getvarlocal2): Likewise.
7277         (getvarinmod2): Likewise.
7278         (getvaritcpt2): Likewise.
7279         (getvaritcpt3): Likewise.
7280         * elf/vismain.c (do_test): Adjusted.
7281         * elf/vismod1.c (getvarlocal1): Return address.
7282         (getvarinmod1): Likewise.
7283         (getvaritcpt1): Likewise.
7284         * elf/vismod2.c (getvarlocal2): Likewise.
7285         (getvarinmod2): Likewise.
7286         (getvaritcpt2): Likewise.
7287         * elf/vismod3.c (getvaritcpt3): Likewise.
7289 2003-03-28  Roland McGrath  <roland@redhat.com>
7291         * elf/vismain.c (do_test): Print both addresses when they don't match.
7293         * scripts/abilist.awk: If given -v filename_regexp and/or -v
7294         libname_regexp when parsing names, then produce output only
7295         for those matching the given regexps.  In combine mode, save all
7296         stanzas for a final sorting by stanza header at the end.
7297         Emit a blank line between stanzas.
7299         * scripts/abilist.awk: When given -v combine=1, do parse_names and
7300         emit a single output stream with lib name in stanza header lines.
7302         * scripts/abilist.awk: Emit A for all *ABS* regardless of type.
7304 2003-03-27  Roland McGrath  <roland@redhat.com>
7306         * sysdeps/powerpc/bits/atomic.h [! __powerpc64__]
7307         (__arch_atomic_decrement_if_positive_64): Fix bogus definition.
7309 2003-03-28  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
7311         * sysdeps/sh/bits/atomic.h (__arch_compare_and_exchange_val_8_acq):
7312         Return old value. Make asm output reg constraint earlyclobber.
7313         Renamed from...
7314         (__arch_compare_and_exchange_8_acq): ... this.
7315         (__arch_compare_and_exchange_val_16_acq):
7316         Return old value. Make asm output reg constraint earlyclobber.
7317         Renamed from...
7318         (__arch_compare_and_exchange_16_acq): ... this.
7319         (__arch_compare_and_exchange_val_32_acq):
7320         Return old value. Make asm output reg constraint earlyclobber.
7321         Renamed from...
7322         (__arch_compare_and_exchange_32_acq): ... this.
7323         (__arch_compare_and_exchange_val_64_acq):
7324         Renamed from...
7325         (__arch_compare_and_exchange_64_acq): ... this.
7326         (atomic_exchange_and_add): Use local variables and
7327         __arch_compare_and_exchange_val_64_acq.
7328         (atomic_add): Likewise.
7329         (atomic_add_negative, atomic_add_zero): Use local variables.
7331 2003-03-28  Alexandre Oliva  <aoliva@redhat.com>
7333         * sysdeps/unix/mips/sysdep.S: Include sys/asm.h.
7335 2003-03-27  Ulrich Drepper  <drepper@redhat.com>
7337         * Makefile: Remove libmd5crypt goal.
7339 2003-03-25  Jakub Jelinek  <jakub@redhat.com>
7341         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Restore
7342         special handling of relocations against local symbols.
7344 2003-03-27  Steven Munroe  <sjmunroe@us.ibm.com>
7346         * sysdeps/powerpc/bits/atomic.h
7347         (__arch_compare_and_exchange_bool_32_acq): Move to [!__powerpc64__].
7348         [__powerpc64__] (__arch_compare_and_exchange_bool_32_acq):
7349         Define PPC64 specific version.
7350         [__powerpc64__] (__arch_compare_and_exchange_bool_64_acq):
7351         Change (mem) constraint to "b".
7352         [__powerpc64__] (__arch_atomic_exchange_and add_64):
7353         Replace addi with add. Change (value) contraint to "r".
7354         Change (mem) constraint to "b".
7355         [__powerpc64__] (__arch_atomic_decrement_if_positive_64): New macro.
7356         (__arch_atomic_exchange_32): Change (mem) constraint to "b".
7357         (__arch_atomic_exchange_and_add_32): Change (mem) constraint to "b".
7358         (__arch_atomic_decrement_if_positive_32): New macro.
7359         (atomic_decrement_if_positive): Use __arch* macros.
7361 2003-03-27  Jakub Jelinek  <jakub@redhat.com>
7363         * sysdeps/ia64/fpu/libm-test-ulps: Update.
7365 2003-03-27  Roland McGrath  <roland@redhat.com>
7367         * scripts/rpm2dynsym.sh: New file.
7368         * Makefile (distribute): Add it.
7370 2003-03-27  David Mosberger  <davidm@hpl.hp.com>
7372         * sysdeps/unix/sysv/linux/ia64/getcontext.S: Restore caller's
7373         ar.unat before returning.  Add missing .mem.offset directives
7374         to ensure file gets assembled without warnings.
7375         * sysdeps/unix/sysv/linux/ia64/setjmp.S: Likewise.
7377 2003-03-27  Jakub Jelinek  <jakub@redhat.com>
7379         * sysdeps/unix/sysv/linux/sysconf.c (__sysconf) <_SC_MONOTONIC_CLOCK>:
7380         Return -1 instead of 0 if clock_getres failed.
7382 2003-03-27  Roland McGrath  <roland@redhat.com>
7384         * scripts/abilist.awk: If variable `parse_names' is set, grok the file
7385         header lines and write out foo.symlist files for each foo.so.NN listed.
7387         * libio/libioP.h (_IO_wfile_jumps): Remove attribute_hidden.
7388         This symbol is exported, and we don't want to hide it.
7389         Add libc_hidden_proto instead.
7390         (_IO_file_jumps): Add libc_hidden_proto.
7391         * libio/wfileops.c (_IO_wfile_jumps): Add libc_hidden_data_def.
7392         Remove INTVARDEF.
7393         * libio/fileops.c (_IO_file_jumps): Likewise.
7394         * libio/stdfiles.c: Don't use INTUSE on them.
7395         * libio/iofdopen.c (_IO_new_fdopen): Likewise.
7396         * libio/iofopen.c (__fopen_internal): Likewise.
7397         * libio/freopen.c (freopen): Likewise.
7398         * libio/freopen64.c (freopen64): Likewise.
7399         * libio/iovdprintf.c (_IO_vdprintf): Likewise.
7401         * Makerules (check-abi) [$(enable-check-abi) = warn]:
7402         Ignore exit status from diff.
7403         * configure.in (enable_check_abi): Document possible value "warn".
7404         Change default to no for now.
7405         * configure: Regenerated.
7407         * sysdeps/unix/Makefile ($(objpfx)stub-syscalls.c): Emit stub_warning
7408         macro calls and a #include <stub-tag.h> at the end.
7409         * Makerules ($(objpfx)stubs): Tweak sed commands.
7411         * sysdeps/unix/sysv/linux/syscalls.list: Use - rather than EXTRA in
7412         caller column for *xattr syscalls, since they are in sysdeps/generic.
7414         * sysdeps/unix/sysv/linux/i386/setfsuid.c: setfsgid -> setfsuid
7415         * sysdeps/unix/sysv/linux/i386/setfsgid.c: setfsuid -> setfsgid
7417 2003-03-26  Roland McGrath  <roland@redhat.com>
7419         * Makerules (check-abi-config): Use /thread instead of /tls when
7420         use-thread and not just use-tls is set.
7422         * Makerules (update-abi): Put quotes around $(update-abi-config).
7424         * elf/Makefile (check-abi): Depend on check-abi-ld.
7425         (update-abi): Depend on update-abi-ld.
7427 2003-03-26  GOTO Masanori  <gotom@debian.or.jp>
7429         * sysdeps/unix/sysv/linux/i386/setfsuid.c: Use INTERNAL_SYSCALL and
7430         do not check for errors (unless testing for 32bit variant).
7431         * sysdeps/unix/sysv/linux/i386/setfsgid.c: Likewise.
7433 2003-03-27  Philip Blundell  <philb@gnu.org>
7435         * sysdeps/unix/sysv/linux/arm/sysdep.h (PSEUDO_RET_NOERRNO): Use
7436         unconditional mov.  Remove nop.
7438         * sysdeps/unix/sysv/linux/kernel-features.h
7439         (__ASSUME_VFORK_SYSCALL): Define for kernel 2.4 on arm.
7440         * sysdeps/unix/sysv/linux/arm/vfork.S: Elide compatibility code
7441         when __ASSUME_VFORK_SYSCALL is defined.
7442         * sysdeps/unix/sysv/linux/arm/mmap64.S: Likewise for
7443         __ASSUME_MMAP2_SYSCALL.
7444         * sysdeps/unix/sysv/linux/arm/sigaction.c: Likewise for
7445         __ASSUME_REALTIME_SIGNALS.
7447 2003-03-26  Ulrich Drepper  <drepper@redhat.com>
7449         * sysdeps/generic/ldsodefs.h (ELF_RTYPE_CLASS_COPY): Define to 2
7450         only if DL_NO_COPY_RELOCS is not defined.
7451         * sysdeps/ia64/dl-lookupcfg.h: Define DL_NO_COPY_RELOCS.
7453 2003-03-26  Roland McGrath  <roland@redhat.com>
7455         * sysdeps/unix/make-syscalls.sh: When an undefined syscall has
7456         SOURCE=-, append its symbol names to make variable unix-stub-syscalls.
7457         * sysdeps/unix/Makefile [$(subdir) = misc] [unix-stub-syscalls]
7458         (sysdep_routines): Add stub-syscalls.
7459         ($(objpfx)stub-syscalls.c): New target.
7460         (generated): Add stub-syscalls.c.
7462         * tls.make.c: Also define use-tls according to USE_TLS macro.
7464 2003-03-26  Ulrich Drepper  <drepper@redhat.com>
7466         * sysdeps/unix/sysv/linux/alpha/bits/siginfo.h (struct siginfo): Avoid
7467         no-op padding element.
7468         * sysdeps/unix/sysv/linux/bits/siginfo.h: Likewise.
7469         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Likewise.
7470         * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Likewise.
7471         * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Likewise.
7473 2003-03-26  GOTO Masanori  <gotom@debian.or.jp>
7475         * sysdeps/unix/sysv/linux/i386/getgroups.c: Fix the error
7476         condition check for the return value of getgroups32.
7478 2003-03-26  Jakub Jelinek  <jakub@redhat.com>
7480         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (PSEUDO_NOERRNO):
7481         Fix a typo.
7482         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h (PSEUDO_NOERRNO,
7483         PSEUDO_END_NOERRNO): Define.
7484         * sysdeps/unix/sysdep.h (PSEUDO_END_NOERRNO): Fix a typo.
7485         Define to PSEUDO_END.
7487 2003-03-26  Ulrich Drepper  <drepper@redhat.com>
7489         * abilist/librt.abilist: Add new timer interfaces for 64-bit archs.
7491 2003-03-25  Jiro SEKIBA  <jir@yamato.ibm.com>
7493         * iconvdata/euc-tw.c (from_euc_tw): Fix return value of TO_LOOP.
7494         * iconvdata/bug-iconv4.c: New file.
7495         * iconvdata/Makefile (tests): Add bug-iconv4.
7497 2003-03-25  H.J. Lu  <hjl@gnu.org>
7499         * elf/dl-lookup.c (_dl_lookup_symbol): Avoid looking up protected
7500         symbols twice.
7501         (_dl_lookup_versioned_symbol): Likewise.
7503 2003-03-26  Jakub Jelinek  <jakub@redhat.com>
7505         * csu/tst-atomic.c (do_test): Add some new
7506         atomic_compare_and_exchange_val_acq, atomic_add_zero,
7507         atomic_compare_and_exchange_bool_acq and atomic_add_negative tests.
7508         * include/atomic.h (atomic_add_negative, atomic_add_zero):
7509         Prefix local variable so that it doesn't clash with the one
7510         in atomic_exchange_and_add.
7511         * sysdeps/ia64/bits/atomic.h (atomic_exchange): Fix for long/void *
7512         pointers.
7513         (atomic_exchange_and_add): Implement using __sync_fetch_and_add_?i.
7514         * sysdeps/powerpc/bits/atomic.h (atomic_exchange_and_add): Force
7515         value into register.
7516         * sysdeps/s390/bits/atomic.h (__arch_compare_and_exchange_val_64_acq):
7517         Cast newval to long.
7518         * sysdeps/x86_64/bits/atomic.h
7519         (__arch_compare_and_exchange_val_64_acq): Cast newval and oldval to
7520         long.
7521         (atomic_exchange): Cast newvalue to long if sizeof == 8.
7522         (atomic_exchange_and_add): Cast value to long if sizeof == 8.
7523         (atomic_add, atomic_add_negative, atomic_add_zero): Likewise.
7524         (atomic_bit_set): Shift 1L up in all cases to shut up warnings.
7526 2003-03-21  Martin Schwidefsky  <schwidefskyde.ibm.com>
7528         * sysdeps/s390/s390-32/backtrace.c (__backtrace): Remove high order
7529         bit from backtrace addresses.
7531 2003-03-21  Andreas Schwab  <schwab@suse.de>
7533         * sysdeps/unix/sysv/linux/i386/chown.c: Don't define any versioned
7534         __chown symbols.
7536 2003-03-25  Roland McGrath  <roland@redhat.com>
7538         * config.make.in (enable-check-abi): New variable from configure.
7539         * configure.in (enable_check_abi): New substituted variable,
7540         controlled by --{enable,disable}-check-abi (default yes).
7541         * configure: Regenerated.
7542         * Makerules [$(enable-check-abi) = yes] (tests): Put this condition
7543         on check-abi dependency.
7545 2003-03-26  Andreas Schwab  <schwab@suse.de>
7547         * sysdeps/m68k/m68020/bits/atomic.h: Fix typos.
7548         * include/atomic.h: Likewise.
7550         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Define ret_NOERRNO.
7552 2003-03-25  Roland McGrath  <roland@redhat.com>
7554         * sysdeps/powerpc/bits/atomic.h (__arch_atomic_exchange_32): New macro.
7555         (__arch_atomic_exchange_64): New macro.
7556         (atomic_exchange): Use them.
7557         (__arch_atomic_exchange_and_add_32): New macro.
7558         (__arch_atomic_exchange_and_add_64): New macro.
7559         (atomic_exchange_and_add): Use them.
7560         Original patch from Steven Munroe <sjmunroe@us.ibm.com>.
7562 2003-03-25  Alexandre Oliva  <aoliva@redhat.com>
7564         * sysdeps/mips/sgidefs.h (_MIPS_ISA_MIPS32, _MIPS_ISA_MIPS64):
7565         Define.
7566         * sysdeps/mips/sys/asm.h: Test _MIPS_ISA against them on all
7567         ISA tests.
7568         (ALSZ, ALMASK, SZREG, REG_S, REG_L): Define based on ABI, not ISA.
7569         (PTR_ADD, etc): Test _MIPS_SZPTR instead of _MIPS_SZLONG.
7570         * sysdeps/unix/sysv/linux/mips/bits/sigaction.h: Use _MIPS_SZPTR
7571         to decide whether to add padding.
7572         * sysdeps/unix/sysv/linux/mips/bits/sigaction.h: Use _MIPS_SZPTR
7573         to decide whether to add padding.
7574         * sysdeps/unix/sysv/linux/mips/kernel_sigaction.h (struct
7575         old_kernel_sigaction): Likewise.
7577 2003-03-25  Ulrich Drepper  <drepper@redhat.com>
7579         * csu/tst-atomic.c: Adjust tests to what atomic_add_negative and
7580         atomic_add_zero were supposed to do.
7581         * include/atomic.h: Adjust atomic_add_negative and atomic_add_zero
7582         to x86 behavior.
7584         * sysdeps/generic/bits/typesizes.h (__TIMER_T_TYPE): Define as void*.
7585         This matches the new timer implementation.
7586         * sysdeps/unix/sysv/linux/sparc/bits/typesizes.h (__TIMER_T_TYPE):
7587         Likewise.
7588         * sysdeps/unix/sysv/linux/alpha/bits/typesizes.h (__TIMER_T_TYPE):
7589         Likewise.
7590         * sysdeps/unix/sysv/linux/bits/siginfo.h (struct siginfo): Adjust
7591         timer info for what the kernel provides these days.
7592         (struct sigevent): Add _tid field.
7593         Define SIGEV_THREAD_ID.
7594         Remove struct __pthread_attr_s forward declaration.
7595         * sysdeps/unix/sysv/linux/alpha/bits/siginfo.h: Likewise.
7596         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Likewise.
7597         * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Likewise.
7598         * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Likewise.
7600         * Versions.def (librt): Add GLIBC_2.3.3.
7602         * abilist/libpthread.abilist: Update for nptl.
7604 2003-03-24  Jon Grimm  <jgrimm@us.ibm.com>
7606         * inet/netinet/in.h: Add IPPROTO_SCTP.
7608 2003-03-24  Ulrich Drepper  <drepper@redhat.com>
7610         * sysdeps/unix/sysv/linux/sys/epoll.h (EPOLLET): Define.
7612 2003-03-24  Philip Blundell  <philb@gnu.org>
7614         * sysdeps/unix/sysv/linux/arm/sysdep.h (INTERNAL_SYSCALL):
7615         Remove a1 from clobber list.
7617 2003-03-24  Ulrich Drepper  <drepper@redhat.com>
7619         * timezone/antarctica: Update from tzdata2003a.
7620         * timezone/asia: Likewise.
7621         * timezone/australasia: Likewise.
7622         * timezone/europe: Likewise.
7623         * timezone/iso3166.tab: Likewise.
7624         * timezone/northamerica: Likewise.
7625         * timezone/southamerica: Likewise.
7626         * timezone/zone.tab: Likewise.
7628 2003-03-24  Steven Munroe  <sjmunroe@us.ibm.com>
7630         * sysdeps/powerpc/powerpc64/sysdep.h (PSEUDO_END_NOERRNO): Fix typo.
7632 2003-03-23  Ulrich Drepper  <drepper@redhat.com>
7634         * sysdeps/unix/sysv/linux/ia64/sysdep.h (ret_NOERRNO): Avoid
7635         unwanted expansion by definining to ret.  Patch by Ian Wienand.
7637         * sysdeps/unix/make-syscalls.sh: Recognize 'E' in first position of
7638         the parameter description to denote no error checking.  Generate
7639         appropriate pseudo asm code.
7640         * sysdeps/unix/syscalls.list: Mark getgid, getpid, getuid with 'E'.
7641         * sysdeps/unix/sysv/linux/syscalls.list: Mark getegid, geteuid,
7642         getpgrp, and getppid with 'E'.
7643         * sysdeps/powerpc/powerpc32/sysdep.h: Define PSEUDO_NOERRNO,
7644         PSEUDO_END_NOERRNO, and ret_NOERRNO.
7645         * sysdeps/powerpc/powerpc64/sysdep.h: Likewise.
7646         * sysdeps/unix/sysdep.h: Likewise.
7647         * sysdeps/unix/alpha/sysdep.h: Likewise.
7648         * sysdeps/unix/sparc/sysdep.h: Likewise.
7649         * sysdeps/unix/sysv/linux/arm/sysdep.h: Likewise.
7650         * sysdeps/unix/sysv/linux/cris/sysdep.h: Likewise.
7651         * sysdeps/unix/sysv/linux/hppa/sysdep.h: Likewise.
7652         * sysdeps/unix/sysv/linux/i386/sysdep.h: Likewise.
7653         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Likewise.
7654         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Likewise.
7655         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Likewise.
7656         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise.
7657         * sysdeps/unix/sysv/linux/sh/sysdep.h: Likewise.
7658         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Likewise.
7659         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
7661 2003-03-23  Roland McGrath  <roland@redhat.com>
7663         * Makeconfig (+includes): Don't use $(last-includes).
7665 2003-03-22  Alexandre Oliva  <aoliva@redhat.com>
7667         * sysdeps/unix/sysv/linux/configure.in: Update mips64 patterns.
7668         * sysdeps/unix/sysv/linux/configure: Rebuilt.
7670 2003-03-23  Jakub Jelinek  <jakub@redhat.com>
7672         * sysdeps/alpha/fpu/libm-test-ulps: Update.
7673         * sysdeps/arm/libm-test-ulps: Update.
7674         * sysdeps/hppa/fpu/libm-test-ulps: Update.
7675         * sysdeps/ia64/fpu/libm-test-ulps: Update.
7676         * sysdeps/mips/fpu/libm-test-ulps: Update.
7677         * sysdeps/powerpc/nofpu/libm-test-ulps: Update.
7678         * sysdeps/powerpc/fpu/libm-test-ulps: Update.
7679         * sysdeps/sparc/sparc32/fpu/libm-test-ulps: Update.
7680         * sysdeps/sparc/sparc64/fpu/libm-test-ulps: Update.
7681         * sysdeps/sh/sh4/fpu/libm-test-ulps: Update.
7682         * sysdeps/s390/fpu/libm-test-ulps: Update.
7683         * sysdeps/x86_64/fpu/libm-test-ulps: Update.
7685 2003-03-22  Roland McGrath  <roland@redhat.com>
7687         * include/atomic.h: Put parens around all macro arguments.
7688         (__atomic_val_bysize, __atomic_bool_bysize): New macros.
7689         (atomic_compare_and_exchange_val_acq): Use it.
7690         (atomic_compare_and_exchange_bool_acq): Likewise.
7691         (atomic_increment_and_test): Invert sense of test.
7692         (atomic_decrement_and_test): Likewise.
7693         * csu/tst-atomic.c: Update those tests to match.
7695 2003-03-22  Jakub Jelinek  <jakub@redhat.com>
7697         * include/atomic.h (atomic_compare_and_exchange_val_acq): Add comment.
7698         Don't define if __arch_compare_and_exchange_val_32_acq is not defined.
7699         (atomic_compare_and_exchange_bool_acq): Add comment.  Don't use
7700         __oldval variable in the macro, since it might be macro argument.
7701         (atomic_decrement_if_positive): Initialize __memp, remove setting
7702         of non-existent variable.
7703         (atomic_bit_test_set): Cast 1 to __typeof (*mem) before shifting.
7704         * sysdeps/ia64/bits/atomic.h (atomic_exchange_and_add): Implement
7705         using atomic_compare_and_exchange_val_acq.
7706         (atomic_decrement_if_positive, atomic_bit_test_set): Define.
7707         * sysdeps/s390/bits/atomic.h (__arch_compare_and_exchange_val_8_acq):
7708         Renamed from...
7709         (__arch_compare_and_exchange_bool_8_acq): ... this.
7710         (__arch_compare_and_exchange_val_16_acq): Renamed from...
7711         (__arch_compare_and_exchange_bool_16_acq): ... this.
7712         (__arch_compare_and_exchange_val_32_acq): Return old value.  Renamed
7713         from...
7714         (__arch_compare_and_exchange_bool_32_acq): ... this.
7715         (__arch_compare_and_exchange_val_64_acq): Return old value.  Renamed
7716         from...
7717         (__arch_compare_and_exchange_bool_64_acq): ... this.
7718         (__arch_compare_and_exchange_val_32_acq): Use __typeof for local
7719         variables types instead of assuming int.
7720         Change prefix of local variables to __arch.
7721         * sysdeps/generic/bits/atomic.h (arch_compare_and_exchange_acq):
7722         Remove.
7723         (atomic_compare_and_exchange_val_acq,
7724         atomic_compare_and_exchange_bool_acq): Define.
7726         * csu/tst-atomic.c: New test.
7727         * csu/tst-atomic-long.c: New test.
7728         * csu/Makefile (tests): Add tst-atomic and tst-atomic-long.
7730         * malloc/memusagestat.c (main): Kill warning if uint64_t is ulong.
7732         * sysdeps/s390/Versions: Add trailing newline.
7734         * sysdeps/unix/sysv/linux/sysconf.c (__sysconf): Kill warning
7735         if INTERNAL_SYSCALL_ERROR_P doesn't use its first argument.
7737 2003-03-22  Andreas Schwab  <schwab@suse.de>
7739         * sysdeps/m68k/fpu/libm-test-ulps: Update.
7741         * sysdeps/m68k/m68020/bits/atomic.h: New file.
7742         * sysdeps/m68k/m68020/atomicity.h: Removed.
7744 2003-03-22  Alexandre Oliva  <aoliva@redhat.com>
7746         * sysdeps/mips/elf/ldsodefs.h: Add mips-specific elf64 relocation
7747         data structures and macros.  Protect from multiple inclusion.
7749         * sysdeps/mips/dl-machine.h (ELF_MIPS_GNU_GOT1_MASK): Fix harmless
7750         typo in #if test.
7752 2003-03-21  Andreas Jaeger  <aj@suse.de>
7754         * sysdeps/i386/fpu/libm-test-ulps: Update.
7756         * math/libm-test.inc (tgamma_test): Recompute some constants with
7757         36 digits precision.
7758         (lgamma_test): Likewise.
7759         (ccos_test): Likewise.
7760         (ccosh_test): Likewise.
7761         (clog10_test): Likewise.
7762         (csin_test): Likewise.
7763         (csinh_test): Likewise.
7764         (ctan_test): Likewise.
7765         (ctanh_test): Likewise.
7767 2003-03-19  Jakub Jelinek  <jakub@redhat.com>
7769         * sysdeps/sparc/sparc64/fpu/libm-test-ulps: Regenerated.
7771 2003-03-21  Roland McGrath  <roland@redhat.com>
7773         * sysdeps/i386/i486/bits/atomic.h (atomic_bit_set): Use "ir"
7774         constraint to permit non-constant BIT argument.
7775         (atomic_bit_test_set): Likewise.
7776         * sysdeps/x86_64/bits/atomic.h (atomic_bit_test_set): Likewise.
7777         (atomic_bit_set): Likewise.  Use 1UL in case that BIT might be >= 32.
7778         For quadword case, use "i" constraint if __builtin_constant_p and < 32
7779         or "r" constraint otherwise.
7781         * configure.in: Move AC_PROG_CC and other program-finding before all
7782         the version checks.
7783         * configure: Regenerated.
7785 2003-03-21  Alexandre Oliva  <aoliva@redhat.com>
7787         * sysdeps/mips/mips64/memcpy.S: Fix porting bug that broke
7788         unaligned copying of 8-15 bytes.  From Chris Demetriou
7789         <cgd@broadcom.com>.  Fix label names.
7790         * sysdeps/mips/mips64/memset.S: Fix label names.  Make similar
7791         change as to memcpy.S.
7792         * sysdeps/mips/memcpy.S: Formatting changes.
7793         * sysdeps/mips/memset.S: Likewise.
7795 2003-03-21  Roland McGrath  <roland@redhat.com>
7797         * sysdeps/arm/sysdep.h (CALL_MCOUNT): Add trailing semicolon.
7799 2003-03-21  Alexandre Oliva  <aoliva@redhat.com>
7801         * sysdeps/mips/mips64/memcpy.S, sysdeps/mips/mips64/memset.S: New.
7802         * sysdeps/mips/memcpy.S, sysdeps/mips/memset.S: Update comments.
7804 2003-03-21  Roland McGrath  <roland@redhat.com>
7806         * sysdeps/i386/i486/bits/atomic.h
7807         (__arch_compare_and_exchange_val_64_acq): Rewrite abort-calling
7808         version of the macro to avoid compile-time warnings.
7809         [! __PIC__] (__arch_compare_and_exchange_64_acq): Rename to above.
7810         (atomic_exchange_and_add, atomic_add): Fix name and usage of it.
7811         (atomic_increment, atomic_decrement): Likewise.
7813 2003-03-21  Ulrich Drepper  <drepper@redhat.com>
7815         * sysdeps/x86_64/bits/atomic.h: Don't use matching memory constraints.
7816         * sysdeps/i386/i486/bits/atomic.h: Likewise.
7818 2003-03-21  Roland McGrath  <roland@redhat.com>
7820         * include/atomic.h (atomic_compare_and_exchange_bool_acq): Typo fix.
7822 2003-03-20  Ulrich Drepper  <drepper@redhat.com>
7824         * include/atomic.h: Define atomic_compare_and_exchange_val_acq,
7825         atomic_compare_and_exchange_val_rel,
7826         atomic_compare_and_exchange_bool_acq, and
7827         atomic_compare_and_exchange_bool_rel instead of
7828         atomic_compare_and_exchange_acq and atomic_compare_and_exchange_rel.
7829         * sysdeps/i386/i486/bits/atomic.h: Define
7830         __arch_compare_and_exchange_val_*_acq instead of
7831         __arch_compare_and_exchange_*_acq.
7832         * sysdeps/x86_64/bits/atomic.h: Likewise.
7833         * sysdeps/ia64/bits/atomic.h: Define
7834         __arch_compare_and_exchange_bool_*_acq instead of
7835         __arch_compare_and_exchange_*_acq.
7836         * sysdeps/powerpc/bits/atomic.h: Likewise.
7837         * sysdeps/s390/bits/atomic.h: Likewise.
7838         * gmon/mcount.c: Adjust for new form of compare&exchange macros.
7839         * malloc/set-freeres.c: Likewise.
7840         * nscd/cache.c: Likewise.
7841         * stdlib/cxa_finalize.c: Likewise.
7842         * sysdeps/unix/sysv/linux/getsysstats.c: Likewise.
7844 2003-03-20  Alexandre Oliva  <aoliva@redhat.com>
7846         * sysdeps/mips/bits/setjmp.h: n32 has only 6 call-saved fpregs.
7847         * sysdeps/mips/mips64/setjmp_aux.c (__sigsetjmp_aux): Adjust.
7848         * sysdeps/mips/mips64/__longjmp.c (__longjmp): Likewise.
7850         * sysdeps/unix/sysv/linux/mips/pread.c: Don't break up offset
7851         into high and low halves on n64.
7852         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
7853         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
7854         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
7856 2003-03-20  Ulrich Drepper  <drepper@redhat.com>
7858         * include/atomic.h (atomic_decrement_if_positive): Adjust for the
7859         correct atomic_compare_and_exchange_acq semantics.
7861 2003-03-20  Alexandre Oliva  <aoliva@redhat.com>
7863         * sysdeps/mips/ieee754.h: Remove excess #endif.
7865 2003-03-20  Roland McGrath  <roland@redhat.com>
7867         * sysdeps/powerpc/bits/atomic.h (atomic_exchange): Remove unused
7868         variable.  Remove superfluous memory clobber.
7870         * include/atomic.h: Syntax braino fix.
7872         * posix/tst-nice.c (do_test): Use %m formats instead of printing errno
7873         in decimal.  Don't bail if niced at start.  Just check that nice call
7874         bumps the total at all.
7876 2003-03-20  Alexandre Oliva  <aoliva@redhat.com>
7878         * sysdeps/mips/bits/setjmp.h: Store all N32 and N64 registers,
7879         including pc, gp, sp and fp, as long long.
7880         * sysdeps/mips/mips64/setjmp.S: Pass gp to __sigsetjmp_aux.
7881         * sysdeps/mips/mips64/setjmp_aux.c: Adjust type of arguments.
7882         Add gp argument, and set gp in the jmpbuf to it.
7883         * sysdeps/mips/setjmp_aux.c: Revert to o32-only.
7885 2003-03-20  Ulrich Drepper  <drepper@redhat.com>
7887         * include/atomic.h: Define atomic_exchange and
7888         atomic_decrement_if_positive if not already defined.  Add some
7889         __builtin_expect.
7890         * sysdeps/i386/i486/bits/atomic.h: Define atomic_exchange.
7891         * sysdeps/x86_64/bits/atomic.h: Likewise.
7892         * sysdeps/ia64/bits/atomic.h: Pretty printing.  Define atomic_exchange.
7893         * sysdeps/powerpc/bits/atomic.h: Pretty printing.  Define
7894         atomic_exchange, atomic_exchange_and_add, and
7895         atomic_decrement_if_positive
7897 2003-03-20  Alexandre Oliva  <aoliva@redhat.com>
7899         * sysdeps/unix/sysv/linux/mips/mips64/n64/ioctl.S: Sign-extend
7900         with a single instruction.
7902         * sysdeps/mips/dl-machine.h (ELF_MIPS_GNU_GOT1_MASK): Define
7903         properly for n64.
7904         (elf_machine_runtime_setup): Cast link_map pointer to Elf Addr
7905         type.
7906         (elf_machine_rel, elf_machine_rel_relative): Cast symidx to Elf
7907         Word before comparing with gotsym.  Take reloc_addr argument as
7908         void*.  Remove the code added for the compiler to drop any
7909         alignment assumptions.
7911 2003-03-19  Ulrich Drepper  <drepper@redhat.com>
7913         * Makefile (distribute): Add include/atomic.h and bits/atomic.h.
7914         * include/atomic.h: New file.
7915         * sysdeps/i386/i486/bits/atomic.h: New file.
7916         * sysdeps/x86_64/bits/atomic.h: New file.
7917         * sysdeps/s390/bits/atomic.h: New file.
7918         * sysdeps/sh/bits/atomic.h: New file.
7919         * sysdeps/ia64/bits/atomic.h: New file.
7920         * sysdeps/powerpc/bits/atomic.h: New file.
7921         * sysdeps/generic/bits/atomic.h: New file.
7922         * sysdeps/i386/i486/atomicity.h: Removed.
7923         * sysdeps/x86_64/atomicity.h: Removed.
7924         * sysdeps/s390/s390-32/atomicity.h: Removed.
7925         * sysdeps/s390/s390-64/atomicity.h: Removed.
7926         * sysdeps/ia64/atomicity.h: Removed.
7927         * sysdeps/powerpc/powerpc32/atomicity.h: Removed.
7928         * sysdeps/powerpc/powerpc64/atomicity.h: Removed.
7929         * elf/dl-profile.c: Use atomic.h instead of atomicity.h.  Adjust
7930         use of macros from atomicity.h to new names and semantics.
7931         * gmon_mcount.c: Likewise.
7932         * malloc/set-freeres.c: Likewise.
7933         * nscd/cache.c: Likewise.
7934         * stdlib/cxa_finalize.c: Likewise.
7935         * sysdeps/unix/sysv/linux/getsysstats.c: Likewise.
7937 2003-03-19  Alexandre Oliva  <aoliva@redhat.com>
7939         * sysdeps/mips/ieee754.h: New file, suitable to replace both
7940         ../ieee754/ieee754.h and ../ieee754/ldbl-128/ieee754.h, kept
7941         mips-specific for now.
7943 2003-03-19  Ulrich Drepper  <drepper@redhat.com>
7945         * stdlib/strtod.c (INTERNAL): While eating trailing zeros handle
7946         hexdigits correctly.  Reported by Fred Tydeman <tydeman@tybor.com>.
7947         * stdlib/tst-strtod.c: Add test for the bug.
7949         * posix/tst-nice.c (do_test): Remove invalid of return value.
7950         Don't run test if initial level != 0.
7952 2003-03-19  Amos Waterland  <apw@us.ibm.com>
7954         * posix/tst-nice.c: New file.
7955         * posix/Makefile (tests): Add tst-nice.
7957 2003-03-18  Roland McGrath  <roland@redhat.com>
7959         * abilist: New directory of libfoo.abilist files maintained using
7960         scripts/merge-abilist.awk and "make update-abi" rules.
7961         * Makefile (distribute): Add abilist/*.abilist.
7962         * Makerules [$(build-shared) = yes] [$(subdir)] (tests):
7963         Depend on check-abi.
7965         * configure.in: Move $critic_missing check after all AC_CHECK_PROG_VER.
7966         * configure: Regenerated.
7968         * sysdeps/unix/sysv/linux/syscalls.list (posix_fadvise64): Fix name.
7970 2003-03-18  Ulrich Drepper  <drepper@redhat.com>
7972         * sysdeps/posix/sysconf.c (__sysconf): Handle _SC_MONOTONIC_CLOCK
7973         correctly.
7975 2003-03-18  Steven Munroe  <sjmunroe@us.ibm.com>
7977         * sysdeps/powerpc/powerpc64/memcpy.S: New file.
7979 2003-03-18  Ulrich Drepper  <drepper@redhat.com>
7981         * Versions.def: Add GLIBC_2.3.3 for libpthread.
7983 2003-03-17  Ulrich Drepper  <drepper@redhat.com>
7985         * sysdeps/generic/libc-start.c [!SHARED &&
7986         !LIBC_START_MAIN_AUXVEC_ARG]: Compute beginning of auxvec correctly.
7988 2003-03-17  Roland McGrath  <roland@redhat.com>
7990         * include/ctype.h: Revert last change.
7992 2003-03-17  Ulrich Drepper  <drepper@redhat.com>
7994         * argp/tst-argp1.c: Use test-skeleton.c.
7995         * locale/tst-C-locale.c: Likewise.
7997 2003-03-17  Alexandre Oliva  <aoliva@redhat.com>
7999         * sysdeps/mips/mips64/Implies: Move wordsize-64 to...
8000         * sysdeps/mips/mips64/n64/Implies: New file.
8001         * sysdeps/mips/mips64/n64/Makefile: New file.
8002         * sysdeps/mips/mips64/n64/el/bits/endian.h: New file.
8003         * sysdeps/mips/mips64/n32/Implies: New file.
8004         * sysdeps/mips/mips64/n32/Makefile: New file.
8005         * sysdeps/mips/mips64/n32/el/bits/endian.h: New file.
8006         * sysdeps/unix/mips/mips64/n32/sysdep.h: New file.
8007         * sysdeps/unix/mips/mips64/n64/sysdep.h: New file.
8008         * sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h: New file.
8009         * sysdeps/unix/sysv/linux/mips/mips64/n64/glob64.c: New file.
8010         * sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h: New file.
8011         * sysdeps/unix/sysv/linux/mips/mips64/ldconfig.h: New file.
8012         * sysdeps/unix/sysv/linux/mips/mips64/llseek.c: New file.
8013         * sysdeps/unix/sysv/linux/mips/mips64/recv.c: New file.
8014         * sysdeps/unix/sysv/linux/mips/mips64/send.c: New file.
8015         * sysdeps/unix/sysv/linux/mips/mips64/syscall.S: New file.
8016         * sysdeps/unix/sysv/linux/mips/mips64/syscalls.list: New file.
8017         * sysdeps/unix/sysv/linux/mips/mips64/umount.c: New file.
8018         * sysdeps/unix/sysv/linux/mips/mips64/n64/ioctl.S: New file.
8020         * sysdeps/unix/sysv/linux/configure.in (libc_cv_slibdir): Use
8021         lib64 for mips64/n64 and lib32 for mips64/n32.
8022         (ldd_rewrite_script): Needed for all mips64 configurations.
8023         * sysdeps/unix/sysv/linux/configure: Rebuilt.
8024         * sysdeps/unix/sysv/linux/mips/mips64/ldd-rewrite.sed: New file.
8025         * sysdeps/unix/sysv/linux/mips/mips64/Dist: New file.
8027         * sysdeps/mips/machine-gmon.h (MCOUNT): Define for N32 and N64 as
8028         well.
8030         * sysdeps/unix/sysv/linux/mips/configure.in: New.  Pre-process
8031         asm/unistd.h into asm-unistd.h.
8032         * sysdeps/unix/sysv/linux/mips/configure: Generated.
8033         * sysdeps/unix/sysv/linux/mips/Makefile: Do custom processing
8034         of syscall list.
8035         * sysdeps/unix/sysv/linux/mips/sys/syscall.h: New file.
8036         * sysdeps/unix/sysv/linux/mips/clone.S: Don't include
8037         asm/unistd.h.
8039         * sysdeps/unix/sysv/linux/mips/sys/ptrace.h: New file.
8040         * sysdeps/unix/sysv/linux/mips/ptrace.c: New file.  Use long
8041         long type for registers on n32.
8043         * sysdeps/mips/bits/wordsize.h: New file, appropriate for all
8044         3 ABIs.
8045         * sysdeps/mips/mips64/gmp-mparam.h: New file.  Define
8046         BITS_PER_LONGINT to __WORDSIZE, to match all 3 ABIs.
8047         * sysdeps/mips/setjmp_aux.c (STRINGXP, REGS, PTRS): New macros.
8048         (__sigsetjmp_aux): Use them.  Adjust for all 3 ABIs.
8049         * sysdeps/mips/elf/start.S: Adjust for all 3 ABIs.
8050         * sysdeps/unix/mips/brk.S: Likewise.
8051         * sysdeps/unix/mips/sysdep.S: Likewise.
8052         * sysdeps/unix/sysv/linux/mips/clone.S: Likewise.
8053         * sysdeps/mips/bits/setjmp.h (__jmp_buf): Likewise.
8054         * sysdeps/mips/sys/ucontext.h: Likewise.
8055         * sysdeps/unix/sysv/linux/mips/sys/profcs.h: Likewise.
8056         * sysdeps/unix/sysv/linux/mips/sys/ucontext.h: Likewise.
8057         * sysdeps/unix/sysv/linux/mips/kernel_stat.h: Likewise.
8058         * sysdeps/mips/mips64/bsd-_setjmp.S: Likewise.
8059         * sysdeps/mips/mips64/bsd-setjmp.S: Likewise.
8060         * sysdeps/mips/mips64/setjmp.S: Likewise.
8061         * sysdeps/mips/mips64/bits/setjmp.h: Deleted, obsolete.
8062         * sysdeps/mips/mips64/soft-fp/sfp-machine.h: Use long long for
8063         64-bit types.
8065 2003-03-16  Ulrich Drepper  <drepper@redhat.com>
8067         * sysdeps/unix/clock_settime.c (HANDLE_REALTIME): Define tv here,
8068         not at function level.
8069         * sysdeps/unix/clock_gettime.c (HANDLE_REALTIME): Likewise.
8071 2003-03-15  Roland McGrath  <roland@redhat.com>
8073         * nis/nss_nis/nis-hosts.c (internal_gethostbyname2_r): int -> size_t
8074         * nis/nss_nis/nis-network.c (_nss_nis_getnetbyname_r): Likewise.
8075         * nis/nss_nis/nis-alias.c (_nss_nis_getaliasbyname_r): Likewise.
8076         * nis/nis_table.c (__create_ib_request): Likewise.
8078         * posix/fnmatch_loop.c: Add casts for signedness.
8079         * nss/nss_files/files-hosts.c: Likewise.
8080         * nscd/nscd_getpw_r.c (nscd_getpw_r): Likewise.
8081         * gmon/gmon.c (write_call_graph): Use u_long for FROM_LEN.
8082         * nscd/nscd_getgr_r.c (nscd_getgr_r): Use nscd_ssize_t for CNT.
8084         * configure.in (libc_cv_visibility_attribute): Use AC_TRY_COMMAND,
8085         get errors into the log file.
8086         (libc_cv_broken_visibility_attribute): Likewise.
8087         (libc_cv_broken_alias_attribute): Likewise.
8088         (libc_cv_asm_weak_directive): Likewise.
8089         (libc_cv_need_minus_P): Likewise.
8090         (libc_cv_dot_text): Likewise.
8091         (libc_cv_asm_global_directive): Likewise.
8092         (libc_cv_asm_type_prefix): Likewise.
8093         * configure: Regenerated.
8095         * nscd/cache.c (cache_search): Give first arg type `request_type'.
8096         * nscd/nscd.h: Update decl.
8098         * nscd/nscd_getpw_r.c (nscd_getpw_r): Add casts for signedness.
8099         * nscd/nscd_getgr_r.c (nscd_getgr_r): Likewise.
8100         * elf/dl-close.c (_dl_close): Likewise.
8101         * sysdeps/unix/sysv/linux/powerpc/chown.c (__chown): int -> size_t
8102         * io/fts.c (fts_build): Likewise.
8103         * elf/cache.c (add_to_cache): Likewise.
8104         * locale/programs/locarchive.c (show_archive_content): Likewise.
8106         * posix/fnmatch.c (fnmatch): Tweak __builtin_expect use.
8108         * include/ctype.h (__ctype_b_loc): Tweak type punning to make gcc 3.3
8109         happy.
8110         (__ctype_toupper_loc, __ctype_tolower_loc): Likewise.
8112 2003-03-15  Ulrich Drepper  <drepper@redhat.com>
8114         * sysdeps/unix/sysv/linux/ia64/system.c: Use the generic Linux
8115         code for most parts.
8117 2003-03-15  Roland McGrath  <roland@redhat.com>
8119         * sysdeps/unix/sysv/linux/i386/system.c: Moved to ...
8120         * sysdeps/unix/sysv/linux/system.c: ... here.
8121         (FORK): Don't #define if already #define'd.
8122         * sysdeps/unix/sysv/linux/s390/system.c: File removed.
8123         * sysdeps/unix/sysv/linux/kernel-features.h [__powerpc__]:
8124         (__ASSUME_CLONE_THREAD_FLAGS): Define for kernel >= 2.5.64.
8126         * dlfcn/tst-dlinfo.c: New file.
8127         * dlfcn/Makefile (tests): Add tst-dlinfo.
8128         ($(objpfx)tst-dlinfo): New target.
8130         * dlfcn/dlinfo.c: New file.
8131         * dlfcn/Makefile (libdl-routines): Add it.
8132         * dlfcn/Versions (libdl: GLIBC_2.3.3): Add dlinfo.
8133         * dlfcn/dlfcn.h [__USE_GNU]: Declare dlinfo.
8134         [__USE_GNU] (RTLD_DI_*): New enum constants.
8135         [__USE_GNU] (Dl_serpath, Dl_serinfo): New types.
8136         * elf/dl-load.c (cache_rpath): New inline function.
8137         (_dl_map_object): Use it.
8138         (_dl_rtld_di_serinfo): New function.
8139         * sysdeps/generic/ldsodefs.h: Declare it.
8140         * elf/Versions (ld: GLIBC_PRIVATE): Add it.
8142         * sysdeps/powerpc/elf/libc-start.c (AUX_VECTOR_INIT): Define it.
8143         (LIBC_START_MAIN, LIBC_START_MAIN_AUXVEC_ARG, MAIN_AUXVEC_ARG)
8144         (INIT_MAIN_ARGS): Define, and #include <sysdeps/generic/libc-start.c>.
8145         (__libc_start_main): Just call the generic one for most of the work.
8147         * sysdeps/generic/libc-start.c [LIBC_START_MAIN]: If defined, define a
8148         static function by that name instead of BP_SYM (__libc_start_main).
8149         [LIBC_START_MAIN_AUXVEC_ARG]: Take AUXVEC as argument.
8150         [MAIN_AUXVEC_ARG]: Pass 4th argument to MAIN.
8151         [INIT_MAIN_ARGS]: Give INIT the same args as MAIN.
8153         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start) [DL_PLATFORM_AUXV]:
8154         Use this macro for extra AT_* cases.
8155         * sysdeps/unix/sysv/linux/powerpc/dl-sysdep.c (DL_PLATFORM_AUXV):
8156         New macro, guts from ...
8157         (__aux_init_cache): ... here, function removed.
8158         (DL_PLATFORM_INIT): Don't define this.
8160         * sysdeps/powerpc/powerpc32/memset.S: Put __cache_line_size in bss.
8161         * sysdeps/powerpc/powerpc64/memset.S: Likewise.
8163         * Versions.def (libthread_db): Add GLIBC_2.3.3 set.
8165 2003-03-14  Roland McGrath  <roland@redhat.com>
8167         * dlfcn/dlerror.c (dlerror): If objname is "", don't put ": " after it.
8169 2003-03-14  Jakub Jelinek  <jakub@redhat.com>
8171         * sysdeps/unix/sysv/linux/Makefile (syscall-%.h): Fix a typo.
8173         * sysdeps/unix/sysv/linux/sparc/sparc64/pause.c: Include
8174         sysdeps/posix/pause.c instead of sysdeps/unix/common/pause.c.
8176 2003-03-14  Alexandre Oliva  <aoliva@redhat.com>
8178         * sysdeps/mips/fpu/bits/mathdef.h: New.
8179         (__NO_LONG_DOUBLE_MATH): Define for o32.
8181         * sysdeps/mips/sys/asm.h: Formatting changes.
8182         (PTR, PTRSIZE, PTRLOG): Adjust for all 3 ABIs.
8183         (CPADD): Define for all of them.
8184         (SETUP_GP, SETUP_GPX, SETUP_GPX_L, SAVE_GP, SETUP_GP64,
8185         SETUP_GPX64, SETUP_GPX64_L, RESTORE_GP64, USE_ALT_CP,
8186         NARGSAVE): Define per ABI spec.
8187         (END): Don't redefine.
8188         (LONG_SLL, LONG_SLLV, LONG_SRL, LONG_SRLV, LONG_SRA,
8189         LONG_SRAV): Remove duplicate definitions.
8190         (PTR_ADD, PTR_ADDI, PTR_ADDU, PTR_ADDIU, PTR_SUB, PTR_SUBI,
8191         PTR_SUBU, PTR_SUBIU, PTR_L, PTR_S, PTR_SLL, PTR_SLLV, PTR_SRL,
8192         PTR_SRLV, PTR_SRA, PTR_SRAV, PTR_SCALESHIFT): Define for n32.
8193         (PTR_LA): Define for all 3 ABIs.
8195         * sysdeps/mips/dl-machine.h: Include sys/asm.h.
8196         (elf_machine_matches_host): Prevent linking of o32 and n32
8197         together.
8198         (elf_machine_dynamic): Document assumption on $gp.
8199         (STRINGXP, STRINGXV, STRINGV_): New macros.
8200         (elf_machine_load_address): Use them to stringize PTR_LA and
8201         PTR_SUBU.
8202         (ELF_DL_FRAME_SIZE, ELF_DL_SAVE_ARG_REGS,
8203         ELF_DL_RESTORE_ARG_REGS, IFABIO32): New macros used in...
8204         (_dl_runtime_resolve): Adjust it for all 3 ABIs.
8205         (__dl_runtime_resolve): Cast the symtab initializer to the
8206         right type.
8207         (RTLD_START): Use it.  Adjust it for all 3 ABIs.
8208         (elf_machine_rel): Mark as always_inline in RTLD_BOOTSTRAP.
8209         Handle 64-bit R_MIPS_REL composite relocation and accept
8210         R_MIPS_64 relocations to shift addend size to 64 bits.
8211         Document assumption regarding local GOT entries.  Document
8212         backward-compatibility departing from the ABI behavior in
8213         applying relocations that reference section symbols, no longer
8214         used.  Support relocations to mis-aligned offsets.
8215         * sysdeps/mips/mips64/dl-machine.h: Deleted, obsolete.
8217         * sysdeps/unix/sysv/linux/mips/readelflib.c: New file.
8219         * sysdeps/unix/sysv/linux/mips/kernel_sigaction.h
8220         (_KERNEL_NSIG_BPW): Define in terms of _MIPS_SZLONG.
8221         * sysdeps/unix/sysv/linux/mips/sigaction.c: Define restore and
8222         restore_rt functions.  Use them.
8224         * sysdeps/unix/sysv/linux/mips/sys/tas.h (_test_and_set): Don't
8225         .set mips2 on new abis.
8227 2003-03-13  Ulrich Drepper  <drepper@redhat.com>
8229         * posix/getconf.c: Recognize POSIX2_SYMLINKS.
8230         * sysdeps/generic/bits/confname.h: Define _PC_2_SYMLINKS.
8231         * sysdeps/posix/fpathconf.c: Handle _PC_2_SYMLINKS.
8232         * sysdeps/posix/pathconf.c: Likewise.
8233         * sysdeps/unix/sysv/linux/fpathconf.c: Likewise.
8234         * sysdeps/unix/sysv/linux/pathconf.c: Likewise.
8235         * sysdeps/unix/sysv/linux/pathconf.h: Define statfs_symlinks.
8237         * sysdeps/unix/sysv/linux/linux_fsinfo.h: Define some more magic
8238         words.
8240 2003-03-14  Alexandre Oliva  <aoliva@redhat.com>
8242         * include/gmp.h: Include/gmp-mparam.h.
8243         * stdlib/strtod.c: Include gmp-mparam.h before gmp.h and
8244         gmp-impl.h.
8246         * elf/dl-conflict.c: Don't compile _dl_resolve_conflicts if
8247         ELF_MACHINE_NO_RELA is set.
8248         * elf/rtld.c (dl_main): No prelink support for REL-only.
8250         * sysdeps/generic/ldconfig.h (FLAG_MIPS64_LIBN32,
8251         FLAG_MIPS64_LIBN64): Define.
8252         * elf/cache.c (print_entry): Handle mips64 n32 and n64.
8254         * sysdeps/mips/memcpy.S: Map t0-3 to a4-7 on new abis.
8255         * sysdeps/mips/memset.S: Likewise.
8256         * sysdeps/mips/sys/regdef.h: Alias a4-7 or t0-3 to $8-11
8257         depending on the ABI.
8259         * sysdeps/mips/atomicity.h (exchange_and_add, atomic_add):
8260         Don't .set mips2 on new abi.
8261         (compare_and_swap): Likewise.  Support 64-bit longs on n64.
8263         * stdlib/fpioconst.h: Include gmp.h with angle brackets.
8265 2003-03-13  Roland McGrath  <roland@redhat.com>
8267         * elf/dl-load.c (_dl_map_object_from_fd): Bail if no PT_LOAD phdrs
8268         found.  Reported by Alexandre Oliva <aoliva@redhat.com>.
8270 2003-03-13  Alexandre Oliva  <aoliva@redhat.com>
8272         * stdio-common/_itoa.c (_itoa_base_table): Make 64-bit
8273         literals long long.
8274         * stdlib/fpioconst.c: Likewise.
8275         * stdlib/strtod.c: Likewise.
8277         * sysdeps/mips/add_n.S: Use L macro for local labels.
8278         * sysdeps/mips/addmul_1.S: Likewise.
8279         * sysdeps/mips/lshift.S: Likewise.
8280         * sysdeps/mips/memcpy.S: Likewise.
8281         * sysdeps/mips/memset.S: Likewise.
8282         * sysdeps/mips/mul_1.S: Likewise.
8283         * sysdeps/mips/rshift.S: Likewise.
8284         * sysdeps/mips/sub_n.S: Likewise.
8285         * sysdeps/mips/submul_1.S: Likewise.
8286         * sysdeps/mips/mips64/add_n.S: Likewise.
8287         * sysdeps/mips/mips64/addmul_1.S: Likewise.
8288         * sysdeps/mips/mips64/lshift.S: Likewise.
8289         * sysdeps/mips/mips64/mul_1.S: Likewise.
8290         * sysdeps/mips/mips64/rshift.S: Likewise.
8291         * sysdeps/mips/mips64/sub_n.S: Likewise.
8292         * sysdeps/mips/mips64/submul_1.S: Likewise.
8293         * sysdeps/unix/mips/sysdep.h: Define L() according to ABI
8294         conventions.  Define END as in sys/asm.h.
8295         * sysdeps/unix/mips/sysdep.S: Likewise.
8296         * sysdeps/unix/mips/wait.S: Likewise.
8297         * sysdeps/unix/sysv/linux/mips/clone.S: Likewise.
8299         * sysdeps/ieee754/dbl-64/dbl2mpn.c (__mpn_extract_double):
8300         Cast shifted values that may be too narrow to mp_limb_t.
8301         * sysdeps/ieee754/dbl-64/mpn2dbl.c (__mpn_construct_double):
8302         Likewise.
8303         * sysdeps/ieee754/flt-32/mpn2flt.c (__mpn_construct_float):
8304         Likewise.
8305         * sysdeps/ieee754/ldbl-128/ldbl2mpn.c
8306         (__mpn_extract_long_double): Likewise.
8307         * sysdeps/ieee754/ldbl-128/mpn2ldbl.c
8308         (__mpn_construct_long_double): Likewise.
8309         * sysdeps/ieee754/ldbl-96/ldbl2mpn.c
8310         (__mpn_extract_long_double): Likewise.
8311         * sysdeps/ieee754/ldbl-96/mpn2ldbl.c
8312         (__mpn_construct_long_double): Likewise.
8314 2003-03-13  Roland McGrath  <roland@redhat.com>
8316         * elf/Makefile ($(objpfx)librtld.mk): Tweak regexp so that one-line
8317         entries in the map file match too.
8319 2003-03-13  Guido Guenther  <agx@sigxcpu.org>
8321         * sysdeps/unix/sysv/linux/mips/clone.S: introduce and use local
8322         label .Lthread_start since current binutils don't allow branches
8323         to globally visible symbols.
8325 2003-03-13  Jakub Jelinek  <jakub@redhat.com>
8327         * sysdeps/unix/sysv/linux/ia64/sysdep.h (BREAK_INSN_1, BREAK_INSN,
8328         ASM_OUTARGS_0, ASM_OUTARGS_1, ASM_OUTARGS_2, ASM_OUTARGS_3,
8329         ASM_OUTARGS_4, ASM_OUTARGS_5, ASM_OUTARGS_6): Define.
8330         (INTERNAL_SYSCALL, INLINE_SYSCALL): Use it.  Make syscall arguments
8331         clobbered by the syscall.
8332         (ASM_ARGS_1, ASM_ARGS_2, ASM_ARGS_3, ASM_ARGS_4, ASM_ARGS_5,
8333         ASM_ARGS_6): Change constraints from r to index of corresponding
8334         output register.
8335         * sysdeps/unix/sysv/linux/ia64/clone2.S (__clone2): Swap
8336         ptid and ctid to match kernel.
8337         * sysdeps/unix/sysv/linux/ia64/system.c (FORK): Likewise.
8339 2003-03-12  Steven Munroe  <sjmunroe@us.ibm.com>
8341         * sysdeps/powerpc/powerpc64/elf/configure.in: Remove
8342         AC_DEFINE(PI_STATIC_AND_HIDDEN).  Not supported for PowerPC64.
8343         * sysdeps/powerpc/powerpc64/elf/configure: Regenerated.
8345 2003-03-11  Roland McGrath  <roland@redhat.com>
8347         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela):
8348         Check SYM_MAP rather than SYM as definedness check.
8349         Handle R_PPC64_ADDR32, R_PPC64_ADDR30, and R_PPC64_REL64 relocs.
8350         Don't handle R_PPC64_REL24 reloc.
8351         Mostly from Steven Munroe <sjmunroe@us.ibm.com>.
8353         * sysdeps/powerpc/powerpc64/dl-machine.h
8354         [USE_TLS] (elf_machine_type_class): Match all the TLS relocs in a
8355         block, so we cover all the TPREL16* flavors without 6 ||s.
8356         [USE_TLS] (elf_machine_tprel): New function.
8357         (elf_machine_rela) [USE_TLS]: Use elf_machine_tprel for TPREL64 reloc,
8358         and handle TPREL16 relocs too.  Return rather than break for DTPREL64.
8359         Mostly from Steven Munroe <sjmunroe@us.ibm.com>.
8361 2003-03-11  Ralf Baechle  <ralf@linux-mips.org>
8363         * sysdeps/unix/sysv/linux/mips/clone.S (__thread_start): Use jal
8364         instead of jalr to invoke subroutine so restoring the $gp register
8365         will work properly.
8367 2003-03-11  Martin Schwidefsky  <schwidefsky@de.ibm.com>
8369         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (__NR_pread64): Define
8370         to __NR_pread if not defined.
8371         (__NR_pwrite64): Define to __NR_pwrite if not defined.
8373 2003-03-11  Jakub Jelinek  <jakub@redhat.com>
8375         * sysdeps/unix/sysv/linux/ia64/system.c: New file.
8376         * sysdeps/unix/sysv/linux/kernel-features.h
8377         (__ASSUME_CLONE_THREAD_FLAGS): Define for IA-64 and s390* with
8378         kernel >= 2.5.64.
8380 2003-03-11  Jakub Jelinek  <jakub@redhat.com>
8382         * sysdeps/generic/dl-sysdep.c (_dl_important_hwcaps): If CNT == 1,
8383         allocate space even for the trailing '/'.
8384         Reported by John Reiser <jreiser@BitWagon.com>.
8386         * sysdeps/unix/sysv/linux/ia64/sysdep.h (LOAD_ARGS_6, ASM_ARGS_6,
8387         ASM_CLOBBERS_6): Define.
8388         (ASM_CLOBBERS_5): Use ASM_CLOBBERS_6.
8389         * sysdeps/unix/sysv/linux/ia64/clone2.S (__clone2): Reorder arguments
8390         to match IA-32 order.
8391         * sysdeps/unix/sysv/linux/i386/clone.S: Fix comment.
8393 2003-03-10  Steven Munroe  <sjmunroe@us.ibm.com>
8395         * sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S: Don't clobber R7.
8396         Copy extra params for NPTL to registers used in clone syscall.
8398 2003-03-10  Martin Schwidefsky  <schwidefsky@de.ibm.com>
8400         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Correct system
8401         call names for pread and pwrite.
8403 2003-03-10  Roland McGrath  <roland@redhat.com>
8405         * dlfcn/Makefile (libdl-routines): Add dladdr1.
8406         * dlfcn/dladdr1.c: New file.
8407         * dlfcn/dlfcn.h [__USE_GNU]: Declare dladdr1.
8408         [__USE_GNU] (RTLD_DL_SYMENT, RTLD_DL_LINKMAP): New enum constants.
8409         * elf/dl-addr.c (_dl_addr): Take new args, a struct link_map ** and
8410         a const ElfNN_Sym ** to fill in.
8411         * include/dlfcn.h: Update decl.  Include <link.h>.
8412         * dlfcn/dladdr.c (dladdr): Update caller.
8413         * malloc/mtrace.c (tr_where): Likewise.
8414         * sysdeps/generic/elf/backtracesyms.c: Likewise.
8415         * sysdeps/generic/elf/backtracesymsfd.c: Likewise.
8416         * dlfcn/Versions (libdl: GLIBC_2.3.3): New set, add dladdr1.
8417         * Versions.def (libdl): Define GLIBC_2.3.3 set.
8419         * sysdeps/unix/make-syscalls.sh: Generate $(compile-syscall) for
8420         assembler command.
8421         * sysdeps/unix/Makefile (compile-syscall): New variable.
8422         Pass -g0 to compiler for assembling syscall stubs from stdin.
8424         * sysdeps/i386/sysdep.h [HAVE_CPP_ASM_DEBUGINFO]
8425         (STABS_CURRENT_FILE, STABS_CURRENT_FILE1, STABS_FUN, STABS_FUN_END):
8426         Define these to do nothing.
8428         * configure.in: New check for -g on .S files.
8429         * configure: Regenerated.
8430         * config.make.in (have-cpp-asm-debuginfo): New variable.
8431         * config.h.in (HAVE_CPP_ASM_DEBUGINFO): New #undef.
8432         * Makeconfig (ASFLAGS): New variable, if undefined and
8433         $(have-cpp-asm-debuginfo), take options matching -g% from $(CFLAGS).
8434         * Makerules (compile.S, COMPILE.S): Use $(ASFLAGS).
8436 2003-03-09  Roland McGrath  <roland@redhat.com>
8438         * sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S: Take 3 new args
8439         used by NPTL on new kernels.  From Paul Mackerras <paulus@samba.org>.
8441 2003-03-09  Ulrich Drepper  <drepper@redhat.com>
8443         * po/fi.po: Update from translation team.
8444         * po/ca.po: Likewise.
8445         * po/da.po: Likewise.
8447 2003-03-08  Ulrich Drepper  <drepper@redhat.com>
8449         * rt/tst-aio7.c (do_test): Change BYTES into a #define.
8451 2003-03-07  Ulrich Drepper  <drepper@redhat.com>
8453         * rt/tst-aio7.c (do_test): Give BUFF permanent extent, too.
8455         * sysdeps/powerpc/fpu/w_sqrt.c: Fix comment.
8457 2003-03-07  Roland McGrath  <roland@redhat.com>
8459         * sysdeps/s390/s390-32/sysdep.h (L): Use .Lfoo instead of foo.
8460         * sysdeps/s390/s390-64/sysdep.h (L): Likewise.
8462 2003-03-04  Guido Guenther  <agx@sigxcpu.org>
8464         * sysdeps/unix/sysv/linux/mips/syscalls.list: Remove unneeded
8465         stubs, we have INLINE_SYSCALL.
8466         * sysdeps/unix/sysv/linux/mips/bits/mman.h: Define MAP_POPULATE,
8467         MAP_NONBLOCK.
8469 2003-03-06  Roland McGrath  <roland@redhat.com>
8471         * rt/tst-aio7.c (do_test): Revert last change.  Instead, give CB1
8472         permanent extent and add a comment about testing its implicit teardown.
8474 2003-03-06  Martin Schwidefsky  <schwidefsky@de.ibm.com>
8476         * rt/tst-aio7.c (do_test): Cancel i/o on CB1 before it's out of scope.
8478 2003-03-05  Ulrich Drepper  <drepper@redhat.com>
8480         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage): Fix
8481         reversed __builtin_expect expectation.
8483 2003-03-05  Roland McGrath  <roland@redhat.com>
8485         * stdio-common/sscanf.c: Use prototype defn with ... syntax.
8486         * libio/swscanf.c: Likewise.
8487         * libio/swprintf.c: Likewise.
8489 2003-03-04  Roland McGrath  <roland@redhat.com>
8491         * sysdeps/powerpc/powerpc64/dl-machine.h: Include <dl-tls.h>.
8492         (elf_machine_rela): Always use RESOLVE_MAP, needed for
8493         R_PPC64_JMP_SLOT as well as TLS cases.
8494         (BIT_INSERT): Move parenthesis where it ought to have been.
8495         Reported by Steven Munroe <sjmunroe@us.ibm.com>.
8497         * posix/confstr.c (confstr): Correct STRING_LEN values for
8498         _CS_GNU_LIBC_VERSION and _CS_GNU_LIBPTHREAD_VERSION, add missing
8499         break.  Reported by Alexandre Julliard <julliard@winehq.com>.
8501 2003-03-04  Jakub Jelinek  <jakub@redhat.com>
8503         * sysdeps/ia64/fpu/libm-test-ulps: Regenerated.
8505 2003-03-04  Ulrich Drepper  <drepper@redhat.com>
8507         * sysdeps/unix/sysv/linux/x86_64/clone.S: Add support for the new
8508         clone parameters.
8510         * po/sv.po: Update from translation team.
8512 2003-03-04  Andreas Jaeger  <aj@suse.de>
8513             Ulrich Drepper  <drepper@redhat.com>
8515         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Fix comments.
8517 2003-03-03  Ulrich Drepper  <drepper@redhat.com>
8519         * sysdeps/generic/dl-sysdep.h: Add double include protection.
8521         * po/tr.po: Update from translation team.
8523         * elf/dl-load.c (_dl_map_object_from_fd): Determine whether there
8524         are holes between the segments.  Only call mprotect to set
8525         proection to PROT_NONE if there are some.
8527         * elf/dl-load.c (struct filebuf): Actually use FILEBUF_SIZE.
8528         Update comment.
8530         * include/sched.h (__clone2): Use ... instead of adding all the
8531         new parameters.
8533 2003-03-03  Roland McGrath  <roland@redhat.com>
8535         * elf/dl-load.c (struct filebuf): Fix typo in last change.
8537         * sysdeps/powerpc/powerpc32/elf/configure.in: Don't define
8538         PI_STATIC_AND_HIDDEN.
8540 2003-03-03  Ian Wienand  <ianw@gelato.unsw.edu.au>
8542         * sysdeps/unix/sysv/linux/ia64/clone2.S: Update to take extra clone
8543         flags.
8544         * include/sched.h: Update clone2 prototype.
8546 2003-03-03  Andreas Jaeger  <aj@suse.de>
8548         * math/tgmath.h (__TGMATH_UNARY_REAL_RET_ONLY): New definition.
8549         (llrint): Use it to correct return type.
8550         (lrint): Likewise.
8551         (lround): Likewise.
8552         (llround): Likewise.
8554 2003-03-03  Ulrich Drepper  <drepper@redhat.com>
8556         * elf/dl-load.c (struct filebuf): For 64-bit platforms use 640
8557         byte filebuf size.
8559         * libio/fileops.c (_IO_new_file_fopen): Close stillborn descriptor
8560         if ccs parameter isn't valid.  Reported by Andreas Schwab.
8562 2003-03-03  Martin Schwidefsky  <schwidefsky@de.ibm.com>
8564         * sysdeps/unix/sysv/linux/s390/s390-32/syscall.S (syscall): Add support
8565         for system call numbers > 255.
8566         * sysdeps/unix/sysv/linux/s390/s390-32/syscall.h (DO_CALL,
8567         INLINE_SYSCALL, INTERNAL_SYSCALL_DIRECT, INTERNAL_SYSCALL_SVC0,
8568         INTERNAL_SYSCALL): Likewise.
8569         * sysdeps/unix/sysv/linux/s390/s390-64/syscall.S (syscall): Likewise.
8570         * sysdeps/unix/sysv/linux/s390/s390-64/syscall.h (DO_CALL,
8571         INLINE_SYSCALL, INTERNAL_SYSCALL_DIRECT, INTERNAL_SYSCALL_SVC0,
8572         INTERNAL_SYSCALL): Likewise.
8574 2003-03-03  Martin Schwidefsky  <schwidefsky@de.ibm.com>
8576         * sysdeps/generic/dl-tls.c (_dl_deallocate_tls): Don't free the dtv
8577         array if it is the initial dtv.
8579 2003-03-03  Ulrich Drepper  <drepper@redhat.com>
8581         * po/es.po: Update from translation team.
8582         * po/fr.po: Likewise.
8583         * po/gl.po: Likewise.
8584         * po/sk.po: Likewise.
8585         * po/sv.po: Likewise.
8587         * sysdeps/unix/sysv/linux/syscalls.list: Add remap_file_pages entry.
8588         * misc/sys/mman.h: Add prototype for remap_file_pages.
8589         * sysdeps/generic/remap_file_pages.c: New file.
8590         * misc/Makefile (routines): Add remap_file_pages.
8591         * misc/Versions [libc:GLIBC_2.3.3]: Add remap_file_pages.
8593         * sysdeps/unix/sysv/linux/x86_64/bits/mman.h: Define MAP_POPULATE
8594         and MAP_NONBLOCK.
8595         * sysdeps/unix/sysv/linux/s390/bits/mman.h: Likewise.
8596         * sysdeps/unix/sysv/linux/powerpc/bits/mman.h: Likewise
8597         * sysdeps/unix/sysv/linux/m68k/bits/mman.h: Likewise.
8598         * sysdeps/unix/sysv/linux/arm/bits/mman.h: Likewise.
8599         * sysdeps/unix/sysv/linux/ia64/bits/mman.h: Likewise.
8600         * sysdeps/unix/sysv/linux/hppa/bits/mman.h: Likewise.
8601         * sysdeps/unix/sysv/linux/alpha/bits/mman.h: Likewise.
8602         * sysdeps/unix/sysv/linux/i386/bits/mman.h: Likewise.
8604 2003-03-03  Roland McGrath  <roland@redhat.com>
8606         * sysdeps/ia64/dl-fptr.c (__ia64_make_fptr): Revert last change.
8607         * sysdeps/ia64/dl-machine.h: Likewise.
8608         * sysdeps/ia64/dl-symaddr.c (_dl_symbol_address): Remove const from
8609         argument type.
8610         * sysdeps/ia64/dl-lookupcfg.h: Update decl.
8612         * sysdeps/wordsize-64/strtol_l.c (strtoll_l): Define as weak alias.
8613         * sysdeps/wordsize-64/strtoul_l.c (strtoull_l): Define as weak alias.
8614         * locale/Versions (libc: GLIBC_2.3): Move those to ...
8615         * sysdeps/wordsize-32/Versions (libc: GLIBC_2.3): ... here, new file.
8616         * sysdeps/wordsize-64/Versions (libc: GLIBC_2.3.3) Likewise.
8617         * Versions.def (libc): Add GLIBC_2.3.3 set.
8619         * sysdeps/ia64/dl-fptr.c (__ia64_make_fptr): Add const to MAP arg.
8620         * sysdeps/ia64/dl-machine.h: Update decl.
8622 2003-03-03  Andreas Jaeger  <aj@suse.de>
8624         * sysdeps/unix/clock_settime.c (HANDLE_REALTIME): Add missing brace.
8626 2003-03-02  Roland McGrath  <roland@redhat.com>
8628         * scripts/abilist.awk: Reject data items with apparent 0 size.
8630         * scripts/merge-abilist.awk: Restore hack to elide pattern foo.*/bar
8631         after foo.* as if it were a duplicate.
8633         * sysdeps/unix/sysv/linux/ia64/brk.S: Add .type and .size for __curbrk.
8635 2003-03-02  Ulrich Drepper  <drepper@redhat.com>
8637         * elf/dl-load.c (struct filebuf): Reduce buf array to 512 bytes.
8639         * sysdeps/generic/bits/time.h: Define CLOCK_MONOTONIC.
8640         * sysdeps/posix/clock_getres.c: Define code for CLOCK_REALTIME only
8641         if not already defined.  Use SYSDEP_GETRES to allow other files to
8642         provide alternative implementations.
8643         * sysdeps/unix/sysv/linux/clock_getres.c: New file
8644         * sysdeps/unix/clock_gettime.c: Define code for CLOCK_REALTIME only
8645         if not already defined.  Use SYSDEP_GETTIME to allow other files to
8646         provide alternative implementations.
8647         * sysdeps/unix/sysv/linux/clock_gettime.c: New file.
8648         * sysdeps/unix/clock_settime.c: Define code for CLOCK_REALTIME only
8649         if not already defined.  Use SYSDEP_GETTIME to allow other files to
8650         provide alternative implementations.
8651         * sysdeps/unix/sysv/linux/clock_settime.c: New file.
8652         * sysdeps/unix/clock_nanosleep.c: Use SYSDEP_NANOSLEEP to allow
8653         other files to provide alternative implementations.  Rearrange
8654         tests for invalid parameters.
8655         * sysdeps/unix/sysv/linux/clock_nanosleep.c: New file.
8656         * sysdeps/unix/sysv/linux/sysconf.c: New file.
8657         * sysdeps/unix/sysv/linux/kernel-features.h: Define
8658         __ASSUME_POSIX_TIMERS for Linux 2.5.63 and up.
8659         * sysdeps/unix/sysv/linux/bits/posix_opt.h: Define
8660         _POSIX_MONOTONIC_CLOCK.
8662 2003-03-02  Roland McGrath  <roland@redhat.com>
8664         * scripts/merge-abilist.awk: More checks for bogus input.
8665         Uniquify duplicate config names.
8667         * scripts/abilist.awk: Don't distinguish weak symbols in normal output.
8669         * sysdeps/powerpc/powerpc32/dl-machine.c (_dl_reloc_overflow): Renamed
8670         from dl_reloc_overflow, make global.
8671         (__process_machine_rela): Update callers.
8672         * sysdeps/powerpc/powerpc32/dl-machine.h: Declare _dl_reloc_overflow.
8673         Add attribute_hidden to __process_machine_rela decl.
8674         (elf_machine_type_class, elf_machine_rela): Handle 16-bit TLS relocs.
8676         * sysdeps/generic/libc-start.c (__libc_start_main): Don't assign const
8677         variable.
8679         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_fixup_plt):
8680         Don't use weak_extern for dl_rtld_map.  Instead check only if [SHARED].
8681         (elf_machine_rela): Clean up.
8683         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Clean up.
8685         PowerPC TLS support contributed by Paul Mackerras <paulus@samba.org>.
8686         * sysdeps/powerpc/powerpc32/elf/configure.in: New file.
8687         * sysdeps/powerpc/powerpc32/elf/configure: New generated file.
8688         * elf/tls-macros.h [__powerpc__ && !__powerpc64__]
8689         (TLS_LE, TLS_IE, TLS_LD, TLS_GD): Define them.
8690         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Support
8691         new relocs for TLS.
8693         * sysdeps/powerpc/dl-tls.h (TLS_TP_OFFSET, TLS_DTV_OFFSET): Move these
8694         macros out of [SHARED].
8695         (TLS_TPREL_VALUE, TLS_DTPREL_VALUE): New macros.
8697         * elf/elf.h: Define R_PPC_* relocs for TLS support.
8698         Clean up R_PPC64_* macro definition comments.
8700         * configure.in: In "running configure fragment for" message,
8701         omit $srcdir from the name if we prepended it.
8702         * configure: Regenerated.
8704         * elf/dl-reloc.c (allocate_static_tls): Fix calculations.
8705         From Jakub Jelinek <jakub@redhat.com>.
8707         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Revert last change,
8708         which duplicated the O_DIRECT defn.
8710 2003-03-01  GOTO Masanori  <gotom@debian.or.jp>
8712         * stdlib/stdlib.h: Add missing __USE_BSD enclosure for BSD derived
8713         random functions.
8715 2003-03-01  Andreas Schwab  <schwab@suse.de>
8717         * resolv/Makefile (tests): Don't depend on
8718         $(objpfx)mtrace-tst-leaks when cross compiling.
8720         * sysdeps/m68k/dl-machine.h (_dl_start_user): Access
8721         __libc_stack_end through GOT since it is a global symbol.
8723 2003-03-01  GOTO Masanori  <gotom@debian.or.jp>
8725         * argp/argp.h: Fix a typo.
8726         Reported by H.S.Teoh <hsteoh@quickfur.ath.cx>.
8728         * manual/terminal.texi: Fix cfmakeraw() definition from int to void.
8730 2003-02-27  Pat Rankin  <rankin@pactechdata.com>
8732         * posix/regexec.c (proceed_next_node): Cast re_string_get_buffer to
8733         char *.
8734         (get_subexp): Likewise.
8736 2003-03-01  GOTO Masanori  <gotom@debian.or.jp>
8738         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (O_DIRECT): Define.
8740 2003-02-26  Steven Munroe  <sjmunroe@us.ibm.com>
8742         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h (O_DIRECT): Define.
8744 2003-02-27  Roland McGrath  <roland@redhat.com>
8746         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela): Remove
8747         special case for dl_rtld_map in R_PPC64_RELATIVE; it's harmless to
8748         repeat it and avoids the test for the common case.
8749         Clean up and fix calculations for TLS relocs.
8751         * sysdeps/powerpc/powerpc64/dl-tls.h: Moved to ...
8752         * sysdeps/powerpc/dl-tls.h: ... here.
8753         (TLS_TP_OFFSET): New macro.
8755         * sunrpc/svc_udp.c (svcudp_recv): Add a cast to last change.
8757 2003-02-27  Ulrich Drepper  <drepper@redhat.com>
8759         * sysdeps/i386/fpu/libm-test-ulps: Increase ULPs for yn due to
8760         code generation changes in recent gcc.
8762 2003-02-26  Steven Munroe  <sjmunroe@us.ibm.com>
8764         * sysdeps/powerpc/fpu/fpu_control.h (_FPU_GETCW, _FPU_SETCW):
8765         Rename argument to avoid symbol conflict.
8767         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h
8768         [__USE_GNU] (O_DIRECT): New macro.
8770 2003-02-24  David Mosberger  <davidm@hpl.hp.com>
8772         * sysdeps/unix/sysv/linux/ia64/sysdep.S (__syscall_error): Fix
8773         unwind info.
8775 2003-02-27  Ulrich Drepper  <drepper@redhat.com>
8777         * resolv/res_libc.c [USE___THREAD] (_res): Don't need the
8778         initializer anymore now that res_thread_freeres is more careful.
8780         * sunrpc/svc_udp.c (svcudp_recv): Remove all control messages
8781         except the PKTINFO.  Reset interface in PKTINFO.
8782         Patch by Neil Brown <neilb@cse.unsw.edu.au> [PR libc/4973].
8784 2003-02-25  Steven Munroe  <sjmunroe@us.ibm.com>
8786         * elf/elf.h: Add new R_PPC64_* relocs for TLS.
8787         * elf/tls-macros.h [__powerpc64__] (TLS_LE, TLS_IE, TLS_LD, TLS_GD):
8788         Define.
8789         * sysdeps/powerpc/powerpc64/elf/configure.in: New file.
8790         * sysdeps/powerpc/powerpc64/elf/configure: New file (generated).
8791         * sysdeps/powerpc/powerpc64/dl-machine.h: Support new TLS relocs.
8792         * sysdeps/powerpc/powerpc64/dl-tls.h: New file.
8794         * sysdeps/powerpc/elf/libc-start.c (__libc_start_main):
8795         Do DL_SYSDEP_OSCHECK here, matching 2002-12-01 change to generic file.
8797 2003-02-25  Andreas Jaeger  <aj@suse.de>
8799         * manual/memory.texi (Malloc Tunable Parameters): Clarify
8800         behaviour of M_MMAP_THRESHOLD.
8802 2003-02-25  Roland McGrath  <roland@redhat.com>
8804         * resolv/res_init.c (res_thread_freeres): Bail out if _res.nscount is
8805         zero, inidicating _res was not initialized yet.
8807 2003-02-24  Ulrich Drepper  <drepper@redhat.com>
8809         * sysdeps/unix/sysv/linux/ttyname_r.c (__ttyname_r): Remove EACCES
8810         test.
8812 2003-02-24  Roland McGrath  <roland@redhat.com>
8814         * sysdeps/posix/pause.c: Add LIBC_CANCEL_HANDLED.
8816 2003-02-23  Roland McGrath  <roland@redhat.com>
8818         * sysdeps/posix/pause.c: New file.
8819         * sysdeps/unix/common/pause.c: File removed.
8821 2003-02-23  Ulrich Drepper  <drepper@redhat.com>
8823         * sysdeps/generic/bits/confname.h: Remove #ifs.
8825         * posix/Makefile (CFLAGS-regex.c): Remove RE_ENABLE_I18N definition.
8826         * posix/regex_internal.h (RE_ENABLE_I18N): Pretty printing.
8828         * resolv/res_libc.c [USE___THREAD] (_res): Initialize _vcsock
8829         element to -1.
8831 2003-02-22  Ulrich Drepper  <drepper@redhat.com>
8833         * sysdeps/generic/dl-sysdep.c: Avoid warning.
8835 2003-02-22  Roland McGrath  <roland@redhat.com>
8837         * resolv/tst-leaks.c: New file by Daniel Jacobowitz <drow@mvista.com>.
8838         * resolv/Makefile (tests): Add tst-leaks.
8839         ($(objpfx)tst-leaks): Depend on $(objpfx)libresolv.so.
8840         (tst-leaks-ENV): New variable.
8841         ($(objpfx)mtrace-tst-leaks): New target.
8842         (tests): Depend on it.
8844         * include/libc-internal.h: Declare __libc_thread_freeres.
8846         * Makerules: Fix last change to use $($(subdir)-version) when set.
8848         * Makerules (install-lib-nosubdir): Depend on installed
8849         libfoo-X.Y.Z.so and libfoo.so.NN files so they are installed
8850         regardless of the libfoo.so target's dependencies.
8852         * MakeTAGS (sub-make-vars): New variable, includes generating=t.
8853         Use that in $(MAKE) calls.
8855 2003-02-22  Ulrich Drepper  <drepper@redhat.com>
8857         * catgets/gencat.c (read_input_file): Collision between
8858         auto-assigned numbers and user-defined nubmers is not fatal.
8859         Handle it.
8860         Patch by Michael M. Lampkin <michael.lampkin@ieee.org>.
8861         * catgets/Makefile: Add rules to run test2.msg test.
8862         * catgets/test2.msg: New file.
8864         * catgets/gencat.c (main): Return 1 if messages have been printed.
8866         * iconv/iconv_prog.c (main): Unify messages.
8868         * stdlib/strtod.c (INTERNAL): Remove bogus clearing of second word
8869         when shifting retval.
8870         * stdlib/tst-strtod.c (main): Add strtold test case.
8871         Reported by Fred J. Tydeman <tydeman@tybor.com>.
8873 2003-02-21  Roland McGrath  <roland@redhat.com>
8875         * malloc/thread-freeres.c: Conditionalize on _LIBC_REENTRANT.
8876         * sunrpc/rpc_thread.c: Likewise for text_set_element use.
8877         (__rpc_thread_destroy): Add it to __libc_subfreeres too.
8879         * include/resolv.h: Add libc_hidden_proto for __res_nclose.
8880         * resolv/res_init.c (__res_nclose): Add libc_hidden_def.
8881         (res_thread_freeres): New function, on __libc_thread_subfreeres and
8882         __libc_subfreeres.
8884         * malloc/Versions (libc: GLIBC_PRIVATE): Add __libc_thread_freeres.
8885         * malloc/thread-freeres.c: New file.
8886         * malloc/Makefile (aux): Add it.
8887         * sunrpc/Versions (libc: GLIBC_PRIVATE): Removed.
8888         * sunrpc/rpc_thread.c (__rpc_thread_destroy): Put in special section
8889         "__libc_thread_freeres_fn" and add to __libc_thread_subfreeres set.
8891         * sysdeps/unix/sysv/linux/i386/geteuid.c (__geteuid): Typo fix.
8892         * sysdeps/unix/sysv/linux/i386/getgid.c (__getgid): Typo fix.
8894 2003-02-21  Roland McGrath  <roland@frob.com>
8896         * sysdeps/mach/hurd/opendir.c (__opendir): Use O_NONBLOCK in open.
8898         * iconvdata/Makefile (tests): Add bug-iconv3 only if
8899         [$(have-thread-library) = yes].
8901 2003-02-21  Ulrich Drepper  <drepper@redhat.com>
8903         * sysdeps/unix/sysv/linux/bits/signum.h (__SIGRTMAX): Define as _NSIG.
8905         * sysdeps/unix/sysv/linux/i386/getuid.c: Use INTERNAL_SYSCALL and do
8906         not chechk for errors (unless testing for 32bit variant).
8907         * sysdeps/unix/sysv/linux/i386/getgid.c: Likewise.
8908         * sysdeps/unix/sysv/linux/i386/geteuid.c: Likewise.
8909         * sysdeps/unix/sysv/linux/i386/getegid.c: Likewise.
8911 2003-02-21  Jakub Jelinek  <jakub@redhat.com>
8913         * sysdeps/x86_64/dl-machine.h (elf_machine_rela) <R_X86_64_PC32>:
8914         Check for signed overflow, not unsigned.
8916         * sysdeps/sparc/sparc64/elf/configure.in: New file.
8917         * sysdeps/unix/sysv/linux/sparc/sparc64/Makefile (sysdep-CFLAGS):
8918         Use -fcall-used-g6, not -fcall-used-g7.
8920 2003-02-21  Andreas Jaeger  <aj@suse.de>
8922         * sysdeps/x86_64/fpu/fesetenv.c (fesetenv): Fix setting of default
8923         mode.
8925         * sysdeps/x86_64/fpu/fsetexcptflg.c (fesetexceptflag): Do not
8926         clear whole mxcsr but only exceptions.
8928 2003-02-21  Roland McGrath  <roland@redhat.com>
8930         * Makerules: Filter $(install-lib-ldscripts) out of list of targets
8931         for libfoo.so that need $(make-link) rules.
8933 2003-02-21  Roland McGrath  <roland@frob.com>
8935         * sysdeps/mach/hurd/bits/typesizes.h (__DEV_T_TYPE): Use __U32_TYPE
8936         to match existing struct stat layout in mig protocols.
8938 2003-02-20  Ulrich Drepper  <drepper@redhat.com>
8940         * version.h (VERSION): Bump to 2.3.2.
8942         * elf/Makefile (distribute): Add reldep9.c, tst-array1.exp,
8943         tst-array2.exp, tst-array4.exp, tst-array2dep.c, check-textrel.c,
8944         and dl-sysdep.h.
8945         * sysdeps/generic/Dist: Add sysdep-cancel.h.
8946         * sysdeps/powerpc/nofpu/Dist: Add soft-supp.h.
8947         * sysdeps/unix/Dist: Add s-proto-bp.S and s-proto-cancel.S.
8948         * sysdeps/unix/sysv/linux/Dist: Add pathconf.h.
8949         * sysdeps/unix/sysv/linux/i386/Dist: Add bp-thunk.h.
8950         * sysdeps/unix/sysv/linux/powerpc/powerpc64/Dist: Add fe_nomask.c and
8951         ucontext_i.h.
8952         * Makefile (distribute): Add include/stubs-prologue.h,
8953         include/gnu/stubs.h, scripts/merge-abilist.awk, and
8954         scripts/extract-abilist.awk.
8956 2003-02-20  Roland McGrath  <roland@redhat.com>
8958         * math/Makefile (distribute): Don't add generated files.
8960 2003-02-20  Ulrich Drepper  <drepper@redhat.com>
8962         * math/Makefile: Rearrange variable definitions slightly to get
8963         definition in the right order.
8965 2003-02-20  Roland McGrath  <roland@redhat.com>
8967         * Makerules: Clean up conditional around include of tls.make.
8968         * Make-dist: Export generating=t to prevent using that.
8969         (+distinfo): Likewise for $(shell $(MAKE) ...) runs.
8971 2003-02-20  Ulrich Drepper  <drepper@redhat.com>
8973         * inet/rcmd.c (rresvport_af): Avoid using invliad values.  Wrap
8974         around in search if port IPPORT_RESERVED/2 has been test.
8976 2003-02-20  Paolo Bonzini  <bonzini@gnu.org>
8978         * posix/regcomp.c: Remove inclusions.
8979         * posix/regexec.c: Likewise.
8980         * posix/regex_internal.c: Likewise.
8981         * posix/regex_internal.h: Add inclusions here.
8982         * posix/regex.c: Only include sys/types.h before regex.h.  Include
8983         regex_internal.h here.  Include regex_internal.c before regcomp.c
8984         and regexec.c (might expose more opportunities to the C compiler).
8986         * posix/regcomp.c (parse_expression): Fix construct rejected by SGI CC.
8988         * posix/regex_internal.h [!_LIBC] (__mempcpy): Fix typo.
8989         [!_LIBC] (__wcrtomb): New definition.
8990         [!_LIBC]: Conditionalize enabling of I18N on HAVE_WCSCOLL and
8991         HAVE_LOCALE_H as well.
8993 2003-02-20  Ulrich Drepper  <drepper@redhat.com>
8995         * sysdeps/unix/sysv/linux/tcsetattr.c (tcsetattr): Remove obsolete
8996         patch to check for system call errors.
8998 2002-07-24  Philip Blundell  <philb@gnu.org>
9000         * sysdeps/unix/sysv/linux/arm/ioperm.c (init_iosys): Yield ENODEV
9001         on unknown systems.
9003 2003-02-20  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
9005         * sysdeps/powerpc/powerpc32/atomicity.h: Remove compiler workaround.
9006         * sysdeps/unix/sysv/linux/kernel-features.h
9007         (__ASSUME_NEW_PRCTL_SYSCALL): Defined for ppc32 too.
9008         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fe_nomask.c: Use prctl
9009         if possible.
9010         * sysdeps/unix/sysv/linux/powerpc/powerpc32/vfork.S: Avoid short
9011         interprocedure branches.
9012         * sysdeps/powerpc/soft-fp/Dist (sim-full.c, fenv_const.c): Move to...
9013         * sysdeps/powerpc/nofpu/Dist: ...here.
9014         * sysdeps/unix/sysv/linux/powerpc/Dist (fe_nomask.c): Move to...
9015         * sysdeps/unix/sysv/linux/powerpc/powerpc32/Dist: ...here.
9016         * sysdeps/unix/sysv/linux/s390/s390-64/Dist (kernel_stat.h): Delete.
9017         * sysdeps/unix/sysv/linux/sparc/Dist (bits/utmpx.h): Delete.
9018         * sysdeps/unix/sysv/linux/x86_64/Dist (bits/utmpx.h): Delete.
9020 2003-02-18  Alan Modra  <amodra@bigpond.net.au>
9022         * sysdeps/powerpc/powerpc32/sysdep.h (HIDDEN_JUMPTARGET): Redefine.
9024 2003-02-20  Philip Blundell  <philb@gnu.org>
9026         * sysdeps/unix/sysv/linux/arm/sysdep.h (INLINE_SYSCALL): Add
9027         missing arguments to INTERNAL_SYSCALL_ERROR_P and
9028         INTERNAL_SYSCALL_ERRNO.
9030 2003-02-20  Martin Schwidefsky  <schwidefsky@de.ibm.com>
9032         * sysdeps/unix/sysv/linux/s390/s390-32/chown.c (__real_chown): Test
9033         for __ASSUME_32BITUIDS.
9035 2003-02-20  Andreas Schwab  <schwab@suse.de>
9037         * sysdeps/unix/sysv/linux/m68k/bits/mman.h: Add MADV_* and
9038         POSIX_MADV_* constants.
9040 2003-02-20  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
9042         * sysdeps/unix/sysv/linux/sh/pread.c: New file.
9043         * sysdeps/unix/sysv/linux/sh/pread64.c: New file.
9044         * sysdeps/unix/sysv/linux/sh/pwrite.c: New file.
9045         * sysdeps/unix/sysv/linux/sh/pwrite64.c: New file.
9047 2003-02-19  Jiro Sekiba  <jir@yamato.ibm.com>
9049         * iconvdata/utf-16.c (gconv_end): Fix range of low surrogate.
9051 2003-02-16  Roland McGrath  <roland@redhat.com>
9053         * signal/signal.h: Include <sys/ucontext.h>, not <ucontext.h>.
9055 2003-02-19  Ulrich Drepper  <drepper@redhat.com>
9057         * stdlib/strtod.c (INTERNAL): Up the safety margin for cutting off
9058         decimal input digits.
9059         * stdlib/tst-strtod.c (main): Add test for strtof bug.
9061 2003-02-18  Ulrich Drepper  <drepper@redhat.com>
9063         * sysdeps/unix/sysv/linux/ttyname_r.c (__ttyname_r): Recognize
9064         invalid file descriptors and missing access permissions.
9066 2003-02-17  Ulrich Drepper  <drepper@redhat.com>
9068         * nss/getXXbyYY_r.c (REENTRANT_NAME): Return 0 if no entry has
9069         been found.
9071         * sysdeps/posix/sysconf.c (__sysconf): Test for LOGIN_NAME_MAX and
9072         TTY_NAME_MAX and not the _POSIX_* minimal value macros.
9073         * sysdeps/unix/sysv/linux/bits/local_lim.h: Define TTY_NAME_MAX
9074         and LOGIN_NAME_MAX.
9076 2003-02-17  Kevin B. Hendricks  <kevin.hendricks@sympatico.ca>
9077             Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
9079         * sysdeps/powerpc/elf/libc-start.c: Handle NONTLS_INIT_TP.
9080         * sysdeps/powerpc/powerpc32/__longjmp.S: Remove R2 handling.
9081         * sysdeps/powerpc/powerpc32/setjmp.S: Likewise.
9082         * sysdeps/powerpc/powerpc32/fpu/__longjmp.S: Likewise.
9083         * sysdeps/powerpc/powerpc32/fpu/setjmp.S: Likewise.
9085 2003-02-17  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
9087         * sysdeps/unix/sysv/linux/powerpc/ftruncate64.c: Delete.
9088         * sysdeps/unix/sysv/linux/powerpc/truncate64.c: Delete.
9089         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Delete.
9090         * sysdeps/unix/sysv/linux/powerpc/pread.c: Delete.
9091         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Delete.
9092         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Delete.
9094         * sysdeps/unix/sysv/linux/powerpc/fe_nomask.c: Move file...
9095         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fe_nomask.c: ...here.
9096         * sysdeps/unix/sysv/linux/powerpc/glob64.c: Move file...
9097         * sysdeps/unix/sysv/linux/powerpc/powerpc32/glob64.c: ...here.
9099         * sysdeps/unix/sysv/linux/tcgetattr.c: Use INLINE_SYSCALL.
9100         * sysdeps/unix/sysv/linux/tcsetattr.c: Likewise.
9101         * sysdeps/unix/sysv/linux/powerpc/tcgetattr.c: Delete.
9102         * sysdeps/unix/sysv/linux/powerpc/tcsetattr.c: Delete.
9104 2003-02-14  Thorsten Kukuk  <kukuk@suse.de>
9106         * nss/getent.c (print_hosts): Print all IP addresses of one host.
9108 2003-02-15  Roland McGrath  <roland@frob.com>
9110         * sysdeps/mach/hurd/tls.h: New file.
9111         * sysdeps/mach/hurd/i386/tls.h: New file.
9113         * mach/errsystems.awk: Include <errno.h> in generated output.
9115         * sysdeps/mach/Makefile (mach-before-compile rule): Pass generating=t,
9116         use target mach-before-compile instead of generated.
9117         (mach-before-compile): New target.
9118         * Makerules: Disable use of tls.make if $(generating) is set.
9119         * mach/Makefile: Include mach-syscalls.mk even if no_deps=t.
9120         * sysdeps/mach/hurd/Makefile: Make generated hurd headers depend on
9121         mach-shortcuts.h so mach/ generation happens before hurd/.
9123 2003-02-14  Ulrich Drepper  <drepper@redhat.com>
9125         * sysdeps/i386/fpu/s_nextafterl.c: Decrement high word of mantissa
9126         of demorm correctly if low word is zero.
9127         Reported by Fred J. Tydeman <tydeman@tybor.com>.
9128         * math/libm-test.inc (nextafter_test): New test, but disabled due
9129         to gcc bug.
9131         * sysdeps/generic/libc-start.c [HAVE_PTR_NTHREADS]: Decrement thread
9132         counter and only call __exit_thread if this is not the last thread.
9134 2003-02-13  Jakub Jelinek  <jakub@redhat.com>
9136         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Add instead of
9137         subtracting map->l_tls_offset.
9139 2003-02-12  Ulrich Drepper  <drepper@redhat.com>
9141         * sysdeps/generic/bits/confname.h: Define _CS_GNU_LIBC_VERSION and
9142         _CS_GNU_LIBPTHREAD_VERSION.
9143         * posix/conststr.c: Handle these new values.
9144         * posix/getconf.c: Likewise.
9146         * sysdeps/mips/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE): Fix
9147         masking of version index.
9148         Patch by Lance Larsh <Lance.Larsh@oracle.com>.
9150 2003-02-11  Ulrich Drepper  <drepper@redhat.com>
9152         * nss/nss_files/files-hosts.c (HOST_DB_LOOKUP): Compute alignment
9153         correctly.  Reported by Thorsten Kukuk.
9155 2003-02-10  Ulrich Drepper  <drepper@redhat.com>
9157         * elf/Makefile (check-textrel-CFLAGS): Pass _XOPEN_SOURCE and
9158         _BSD_SOURCE to compiler.
9159         * elf/check-textrel.c (SWAP): Add parenthesis to avoid warnings.
9160         Patches by Alan Modra.
9162 2003-02-08  Ulrich Drepper  <drepper@redhat.com>
9164         * io/ftwtest.c: Get current working directory before and after the
9165         nftw call and make sure they match.
9167 2003-02-08  Jim Meyering  <jim@meyering.net>
9169         * io/ftw.c (ftw_startup): When using FTW_CHDIR, always remember
9170         the current directory, not just when DIR contains a slash.
9171         Reported by Manoj Srivastava.
9173 2003-02-07  Jim Meyering  <jim@meyering.net>
9175         * io/ftw.c: Add autoconf-recommended block of alloca-related code.
9176         Include autoconf-recommended block of dirent/NAMELEN-related
9177         definitions and includes.  Use NAMELEN throughout, rather than
9178         _D_EXACT_NAMLEN.
9179         [_LIBC]: Define NAMELEN to _D_EXACT_NAMLEN.
9180         [!_LIBC] (__getcwd): Define to xgetcwd and declare xgetcwd.
9181         (stpcpy): Declare, if necessary.
9182         (mempcpy): Define, if necessary.
9183         [!_LIBC] (__stpcpy, __mempcpy): Define.
9184         [!_LIBC] (LXSTAT, XSTAT): Define.
9185         (lstat) [!LIBC && !LSTAT_FOLLOWS_SLASHED_SYMLINK]: Define to rpl_lstat.
9186         (find_object): Don't use c99-style struct initializer.
9187         Tweak wording in a couple comments.
9189 2003-02-07  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
9191         * elf/tls-macros.h: Add non-PIC TLS macros and fix clobber list
9192         for SH.
9193         * sysdeps/unix/sysv/linux/sh/brk.c: Add SYSCALL_INST_PAD
9194         after the trapa instruction.
9195         * sysdeps/unix/sysv/linux/sh/clone.S (__clone): Add additional
9196         parameters.
9197         * sysdeps/unix/sysv/linux/sh/sh4/sysdep.h: New file.
9198         (NEED_SYSCALL_INST_PAD): Define.
9199         * sysdeps/unix/sysv/linux/sh/sys/user.h (start_thread): Undef to
9200         avoid to use definition for the kernel.
9201         * sysdeps/unix/sysv/linux/sh/sysdep.h (SYSCALL_ERROR_HANDLER):
9202         Save and restore the frame pointer.
9203         (SYSCALL_INST_PAD): Define.
9204         (INLINE_SYSCALL): Make use of INTERNAL_SYSCALL.
9205         (INTERNAL_SYSCALL): Make use of ERR parameter. Add SYSCALL_INST_PAD
9206         after trapa instruction.
9207         (INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
9208         INTERNAL_SYSCALL_ERROR_P): Adjust accordingly.
9210 2003-02-07  Jakub Jelinek  <jakub@redhat.com>
9212         * resolv/res_libc.c (_res): Ensure _res is not common symbol,
9213         so that it can have aliases.
9214         * inet/herrno.c (h_errno): Put it into .bss not .data section.
9216 2003-02-07  Ulrich Drepper  <drepper@redhat.com>
9218         * elf/dl-runtime.c (fixup): Correct typo in version index computation.
9219         (profile_fixup): Likewise.
9220         Patch by Lance Larsh <Lance.Larsh@oracle.com>.
9222 2002-11-24  Robert Love  <rml@tech9.net>
9224         * posix/sched.h: Second parameter of sched_setaffinity and
9225         sched_getaffinity is `unsigned int', not `unsigned long'.
9226         * sysdeps/generic/sched_setaffinity.c: Likewise.
9227         * sysdeps/generic/sched_getaffinity.c: Likewise.
9229 2003-02-05  Ulrich Drepper  <drepper@redhat.com>
9231         * debug/catchsegv.sh: Fix typo in error messsage.
9232         Reported by John Levon <levon@movementarian.org>.
9234         * sysdeps/unix/sysv/linux/posix_fadvise.c: New file.
9235         * sysdeps/unix/sysv/linux/syscalls.list: Add posix_fadvise64 syscall.
9236         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Likewise.
9237         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
9238         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Likewise.
9239         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
9240         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
9242         * libio/putwc_u.c: Use _IO_putwc_unlocked, not _IO_putc_unlocked.
9243         Patch by Moritz Schulte <moritz@duesseldorf.ccc.de>.
9245 2003-02-05  Jim Meyering  <jim@meyering.net>
9247         Fix a heap-corrupting bug.
9248         * io/ftw.c: Include <limits.h>.
9249         (PATH_MAX) [!defined PATH_MAX]: Define to 1024.
9250         (process_entry): Allocate enough space to hold the resulting
9251         file name.  Don't presume that 2*dirbufsize is enough.
9252         (ftw_startup): Always use PATH_MAX to compute buffer size, now that
9253         it is guaranteed to be defined.
9255 2003-02-04  Ulrich Drepper  <drepper@redhat.com>
9257         * iconvdata/Makefile: Add rules to build and run bug-iconv3.
9258         * iconvdata/bug-iconv3.c: New file.
9260 2003-02-04  Martin Schwidefsky  <schwidefsky@de.ibm.com>
9262         * sysdeps/unix/sysv/linux/s390/system.c: New file.
9264 2003-02-03  Jakub Jelinek  <jakub@redhat.com>
9266         * sysdeps/sparc/sparc32/elf/configure.in (BROKEN_SPARC_WDISP22): New
9267         check.
9268         * config.h.in (BROKEN_SPARC_WDISP22): Add.
9270 2003-02-03  Ulrich Drepper  <drepper@redhat.com>
9272         * sysdeps/i386/i686/memmove.S: New file.
9274 2003-01-31  Steven Munroe  <sjmunroe@us.ibm.com>
9276         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c:
9277         Include kernel-features.h
9278         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: Likewise.
9279         * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S: Likewise.
9280         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: Likewise.
9281         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Likewise.
9283 2003-02-02  Jakub Jelinek  <jakub@redhat.com>
9285         * elf/tls-macros.h [sparc] (TLS_LD, TLS_GD): Add "cc" clobbers.
9287 2003-01-25  Jim Meyering  <jim@meyering.net>
9289         * io/ftw.c (object_compare): Compare inode numbers before device
9290         numbers, since the former are much more likely to differ.
9292 2003-02-01  Ulrich Drepper  <drepper@redhat.com>
9294         * time/tzfile.c (__tzfile_compute): Change return value type to
9295         void.  Adjust return statements.
9296         * include/time.h (__tzfile_compute): Adjust prototype.
9298 2003-02-01  Jim Meyering  <jim@meyering.net>
9300         * time/tzset.c (__tz_convert): Remove dead code; __tzfile_compute
9301         always returns 1.
9303 2003-01-31  Steven Munroe  <sjmunroe@us.ibm.com>
9305         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c
9306         [!__ASSUME_NEW_PRCTL_SYSCALL]: Noop prctl syscall and set ENOSYS.
9308 2003-01-31  Steven Munroe  <sjmunroe@us.ibm.com>
9310         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S
9311         [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Generate ENOSYS stub.
9312         * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S
9313         [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Likewise.
9314         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S
9315         [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Likewise.
9316         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S
9317         [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Likewise.
9319 2003-01-31  Steven Munroe  <sjmunroe@us.ibm.com>
9321         * sysdeps/unix/sysv/linux/configure.in: Change arch_minimum_kernel
9322         back to 2.4.19 for powerpc64.
9323         * sysdeps/unix/sysv/linux/kernel-features.h
9324         (__ASSUME_NEW_PRCTL_SYSCALL): Define for powerpc64.
9325         (__ASSUME_NEW_RT_SIGRETURN_SYSCALL): Define for powerpc64.
9327 2003-02-01  Ulrich Drepper  <drepper@redhat.com>
9329         * wcsmbs/wcscpy.c (wcscpy): Add alternative implementation for
9330         platforms with strange alignment requirements on wchar_t.
9332 2003-01-31  Andreas Schwab  <schwab@suse.de>
9334         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Remove __GI_*
9335         aliases, already added by make-syscalls.sh.
9336         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
9337         * sysdeps/unix/sysv/linux/hppa/syscalls.list: Likewise.
9338         * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise.
9339         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
9340         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
9341         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
9342         * sysdeps/unix/sysv/linux/syscalls.list: Likewise.
9343         * sysdeps/unix/inet/syscalls.list: Likewise.
9344         * sysdeps/unix/syscalls.list: Likewise.
9346 2003-01-31  Andreas Schwab  <schwab@suse.de>
9348         * sysdeps/m68k/Makefile (sysdep-CFLAGS): Don't define, not needed
9349         any more.
9351 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
9353         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S (__clone): Use lg,
9354         not l to load tls from stack.
9356 2003-01-30  Roland McGrath  <roland@redhat.com>
9358         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Move check for
9359         null argument before all else.
9360         Reported by Martin Schwidefsky <schwidefsky@de.ibm.com>.
9362 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
9364         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_lazy_rel):
9365         Move to RESOLVE protected part of the header.
9366         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_lazy_rel):
9367         Likewise.
9369 2003-01-30  Ulrich Drepper  <drepper@redhat.com>
9371         * stdio-common/Makefile (tests): Add bug15.
9372         (bug15-ENV): Define.
9373         * stdio-common/bug15.c: New file.
9375 2002-10-07  Wolfram Gloger  <wg@malloc.de>
9377         * malloc/malloc.c (sYSMALLOc): Only check for breakage due
9378         to foreign sbrk()'s if arena is contiguous.  Bug report from
9379         Bruno Haible <bruno@clisp.org>.
9381 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
9383         * sysdeps/s390/libc-tls.c: Include stdlib.h.
9385 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
9387         * stdio-common/vfprintf.c (vfprintf): Only subtract lowest 3 bits of
9388         ps.__count.
9390 2003-01-30  Ulrich Drepper  <drepper@redhat.com>
9392         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S: Fix storing and
9393         restoring of %r6.
9394         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S: Likewise.  Use
9395         64-bit load.
9396         Patch by Martin Schwidefsky  <schwidefsky@de.ibm.com>.
9398 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
9400         * elf/dl-reloc.c (CHECK_STATIC_TLS): Move _dl_signal_error...
9401         (allocate_static_tls): ...here.  Add __attribute_noinline__.
9402         Don't return on failure.
9403         (_dl_reloc_bad_type): Add __attribute_noinline__.
9404         * elf/do-rel.h (elf_dynamic_do_rel): Add
9405         __attribute__((always_inline)).
9406         * elf/dynamic-link.h (elf_machine_rel, elf_machine_rela,
9407         elf_machine_rel_relative, elf_machine_rela_relative,
9408         elf_machine_lazy_rel): Add prototypes with
9409         __attribute__((always_inline)).
9411 2003-01-29  David Mosberger  <davidm@hpl.hp.com>
9413         * elf/dl-support.c (_dl_aux_init): Handle AT_SYSINFO.
9415 2003-01-29  Roland McGrath  <roland@redhat.com>
9417         * configure.in: Barf if configured in $srcdir.
9419 2003-01-28  Steven Munroe  <sjmunroe@us.ibm.com>
9421         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c
9422         (__fe_nomask_env): Change __prctl call to INTERNAL_SYSCALL.
9424 2003-01-28  Martin Schwidefsky  <schwidefsky@de.ibm.com>
9426         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S: Reorder additional
9427         clone parameters to match the order used on ia32.
9428         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S: Likewise.
9430 2003-01-27  Martin Schwidefsky  <schwidefsky@de.ibm.com>
9432         * elf/elf.h: Add new s390 relocs.
9433         * elf/tls-macros.h: Add s390 versions.
9434         * sysdeps/s390/Versions [GLIBC_2.3] (ld): Export __tls_get_offset.
9435         * sysdeps/s390/dl-tls.h: New file.
9436         * sysdeps/s390/libc-tls.c: New file.
9437         * sysdeps/s390/s390-32/dl-machine.h (elf_machine_type_class): Add TLS
9438         relocs for class PLT.
9439         (elf_machine_rela): Handle TLS relocs.
9440         * sysdeps/s390/s390-64/dl-machine.h: Likewise.
9441         * sysdeps/s390/s390-32/elf/configure.in: Add TLS check.
9442         * sysdeps/s390/s390-64/elf/configure.in: Likewise.
9443         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S: Add support for
9444         CLONE_CHILD_*TID flags.
9445         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S: Likewise.
9446         * sysdeps/unix/sysv/linux/s390/s390-64/mmap.S: Use branch with 32
9447         bit offset.
9448         * sysdeps/unix/sysv/linux/s390/s390-64/socket.S: Likewise.
9449         * sysdeps/unix/sysv/linux/s390/s390-64/syscall.S: Likewise.
9450         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S (__syscall_error):
9451         Support USE___THREAD. Define RTLD_PRIVATE_ERRNO variant.
9452         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S (__syscall_error):
9453         Likewise.
9454         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h:
9455         (SYSCALL_ERROR_LABEL): Move define next to SYSCALL_ERROR_HANDLER.
9456         (SYSCALL_ERROR_HANDLER): Add USE___THREAD and RTLD_PRIVATE_ERRNO
9457         variants.
9458         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h:
9459         (SYSCALL_ERROR_LABEL): Move define next to SYSCALL_ERROR_HANDLER. Use
9460         direct branch to syscall_error for !PIC and PIC && !_LIBC_REENTRANT.
9461         (SYSCALL_ERROR_HANDLER): Add USE___THREAD and RTLD_PRIVATE_ERRNO
9462         variants.
9464 2003-01-28  Ulrich Drepper  <drepper@redhat.com>
9466         * sysdeps/unix/common/pause.c (do_pause): New function.  Split
9467         from __libc_pause.  Implement using sigsuspend.
9468         (__libc_pause): Call do_pause to do the real work.
9470         * sysdeps/posix/sigpause.c (do_sigpause): Check range of
9471         sig_or_mask parameter is is_sig != 0.
9473 2003-01-21  Philip Blundell  <philb@gnu.org>
9475         * sysdeps/unix/sysv/linux/bits/ioctls.h (SIOCSIFNAME): Define.
9477 2003-01-27  Steven Munroe  <sjmunroe@us.ibm.com>
9479         * stdio-common/Makefile: Add bug14-ENV to set LOCPATH for make check.
9481 2003-01-27  Ulrich Drepper  <drepper@redhat.com>
9483         * stdio-common/bug14.c: Use official name for the locale.
9485         * stdio-common/vfprintf.c [USE_IN_LIBIO]: Use _IO_cleanup_region_start
9486         instead of __libc_cleanup_region_start and _IO_cleanup_region_end
9487         instead of __libc_cleanup_region_end.
9489         * sysdeps/unix/sysv/linux/i386/system.c (CLEANUP_HANDLER): Pass 1
9490         as first parameter to __libc_cleanup_region_start.
9492         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c
9493         (__fe_nomask_env): Use __prctl not prctl.
9494         * sysdeps/unix/sysv/linux/syscalls.list: Add __prctl alias for
9495         prctl syscall.
9497         * elf/dl-reloc.c (CHECK_STATIC_TLS): Improve error message.
9499         * elf/dl-open.c (_dl_tls_static_size): Bump to 2048.
9501         * elf/dl-reloc.c (allocate_static_tls): Avoid arithmetic
9502         wrap-around in test.
9504 2003-01-26  Andreas Schwab  <schwab@suse.de>
9506         * sysdeps/wordsize-32/divdi3.c: Export the functions only as
9507         compatibility symbols.  Remove INTDEF for __divdi3.
9508         * sysdeps/wordsize-32/lldiv.c: Don't use __divdi3_internal.
9509         * sysdeps/powerpc/powerpc32/divdi3.c: Remove.
9510         * sysdeps/powerpc/powerpc32/Makefile (CPPFLAGS-divdi3.c): Don't
9511         define.
9512         * sysdeps/powerpc/powerpc32/Dist: Remove divdi3.c.
9514 2003-01-24  Jakub Jelinek  <jakub@redhat.com>
9516         * elf/tls-macros.h: Add SPARC 32-bit definitions.
9517         * sysdeps/sparc/sparc32/elf/configure.in: Add TLS check.
9518         * sysdeps/sparc/sparc32/dl-machine.h: Add dl_machine_h guards
9519         for the first half of the header.  Include tls.h.
9520         (elf_machine_type_class): Return ELF_RTYPE_CLASS_PLT for TLS
9521         relocs too.
9522         (elf_machine_rela): Handle TLS relocs.
9523         * sysdeps/sparc/dl-tls.h: New file.
9525         * sysdeps/unix/sysv/linux/sparc/sparc32/socket.S: Add cancellation
9526         support.
9528         * sysdeps/sparc/sparc32/sparcv9/hp-timing.h: Use %g6 instead of %g7.
9529         * sysdeps/sparc/sparc32/memchr.S: Likewise.
9530         * sysdeps/sparc/sparc32/memcpy.S: Likewise.
9531         * sysdeps/sparc/sparc32/strcat.S: Likewise.
9532         * sysdeps/sparc/sparc32/strchr.S: Likewise.
9533         * sysdeps/sparc/sparc32/strcmp.S: Likewise.
9534         * sysdeps/sparc/sparc32/strcpy.S: Likewise.
9535         * sysdeps/sparc/sparc64/sparcv9b/memcpy.S: Likewise.
9536         * sysdeps/sparc/sparc64/hp-timing.h: Likewise.
9537         * sysdeps/sparc/sparc64/memcpy.S: Likewise.
9538         * sysdeps/sparc/sparc64/stpcpy.S: Likewise.
9539         * sysdeps/sparc/sparc64/stpncpy.S: Likewise.
9540         * sysdeps/sparc/sparc64/strcat.S: Likewise.
9541         * sysdeps/sparc/sparc64/strchr.S: Likewise.
9542         * sysdeps/sparc/sparc64/strcmp.S: Likewise.
9543         * sysdeps/sparc/sparc64/strcpy.S: Likewise.
9544         * sysdeps/sparc/sparc64/strncmp.S: Likewise.
9545         * sysdeps/sparc/sparc64/strncpy.S: Likewise.
9546         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Likewise.
9547         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h: Likewise.
9549 2003-01-24  Andreas Schwab  <schwab@suse.de>
9551         * elf/dl-close.c (_dl_close): Don't relocate DT_FINI_ARRAY
9552         elements, and process them backwards.
9553         * elf/Makefile ($(objpfx)tst-array4): New target.
9554         ($(objpfx)tst-array4.out): Likewise.
9555         (tests) [$(have-initfini-array) = yes]: Add tst-array4.
9556         * elf/tst-array4.c: New file.
9557         * elf/tst-array4.exp: Likewise.
9559 2003-01-24  Steven Munroe  <sjmunroe@us.ibm.com>
9561         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c: New file.
9563 2003-01-27  Guido Guenther  <agx@sigxcpu.org>
9565         * sysdeps/unix/sysv/linux/mips/sysdep.h (SYSCALL_ERROR_LABEL): Define.
9566         * sysdeps/unix/sysv/linux/mips/pread.c: Add support for
9567         cancellation handling and handle both __NR_pread64 and __NR_pread.
9568         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
9569         * sysdeps/unix/sysv/linux/mips/pwrite.c: Add support for
9570         cancellation handling and handle both __NR_pwrite64 and __NR_pwrite.
9571         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
9572         * sysdeps/unix/mips/sysdep.S: Don't set errno in the _LIBC_REENTRANT
9573         case, use register names consistently.
9575 2003-01-27  Wolfram Gloger  <wg@malloc.de>
9577         * malloc/hooks.c (mem2chunk_check): Check alignment of mem
9578         pointer, not of the computed chunk.  Bug report from Carlos
9579         O'Donell <carlos@baldric.uwo.ca>.
9581 2003-01-25  Andreas Schwab  <schwab@suse.de>
9583         * sysdeps/m68k/dl-machine.h (_dl_start_user): Use pc-relative
9584         addressing to save GOT entries.
9586 2003-01-21  Jakub Jelinek  <jakub@redhat.com>
9588         * sysdeps/unix/alpha/sysdep.h (inline_syscall0,
9589         inline_syscall1, inline_syscall2, inline_syscall3,
9590         inline_syscall4, inline_syscall5, inline_syscall6): Add __volatile__.
9591         * sysdeps/unix/sysv/linux/alpha/sysdep.h (INTERNAL_SYSCALL): Add
9592         __attribute__((unused)) to ChEcK.
9594 2003-01-20  Martin Schwidefsky  <schwidefsky@de.ibm.com>
9596         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (INTERNAL_SYSCALL):
9597         Fix inline assembler constraints.
9598         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (INTERNAL_SYSCALL):
9599         Likewise.
9601         * sysdeps/s390/s390-64/Makefile (pic-ccflag): Use -fpic instead of
9602         -fPIC.
9604 2003-01-20  Segher Boessenkool  <segher@koffie.nl>
9606         * sysdeps/ieee754/dbl-64/sincos32.c (__mpcos): Really
9607         compute the cosine, not the sine, even if x > 0.8.
9609 2003-01-19  Ulrich Drepper  <drepper@redhat.com>
9611         * nis/nss_nis/nis-spwd.c: Make _nss_nis_endspent an alias of
9612         _nss_nis_setspent.  Work around the different prototypes.
9613         * nis/nss_nis/nis-rpc.c (internal_nis_setrpcent): Use
9614         internal_nis_endrpcent.
9615         (internal_nis_endrpcent): Change return type to void.  Change callers.
9616         * nis/nss_nis/nis-pwd.c: Make _nss_nis_endpwent an alias of
9617         _nss_nis_setpwent.  Work around the different prototypes.
9618         * nis/nss_nis/nis-proto.c (_nss_nis_endprotoent): Split out body
9619         of the function to...
9620         (internal_nis_endprotoent): ... here.  New function.
9621         (internal_nis_setprotoent): Use internal_nis_endprotoent.
9622         * nis/nss_nis/nis-network.c: Make _nss_nis_endnetent an alias of
9623         _nss_nis_setnetent.  Work around the different prototypes.
9624         * nis/nss_nis/nis-netgrp.c (_nss_nis_endnetgrent): Split out body
9625         of the function to...
9626         (internal_nis_endnetgrent): ... here.  New function.
9627         (_nss_nis_setnetgrent): Use internal_nis_endnetgrent.
9629 2003-01-19  Jim Meyering  <jim@meyering.net>
9631         * time/strftime.c: (widen): Merge nearly-identical definitions.
9632         (nl_get_alt_digit) [! defined my_strftime]: Define.
9633         (my_strftime) [_NL_CURRENT]: Merge nearly-identical uses of
9634         _nl_get_alt_digit and _nl_get_walt_digit.
9636 2003-01-19  Ulrich Drepper  <drepper@redhat.com>
9638         * time/strftime.c (my_strftime): Handle very large width
9639         specifications for numeric values correctly.  Improve checks for
9640         overflow.
9641         * time/Makefile (tests): Add tst-strftime.
9642         * time/tst-strftime.c: New file.
9644 2003-01-18  Ulrich Drepper  <drepper@redhat.com>
9646         * nis/nss_nis/nis-hosts.c: Make _nss_nis_endhostent an alias of
9647         _nss_nis_sethostent.  Work around the different prototypes.
9648         * nis/nss_nis/nis-grp.c: Make _nss_nis_endgrent an alias of
9649         _nss_nis_setgrent.  Work around the different prototypes.
9650         * nis/nss_nis/nis-ethers.c (internal_nis_endetherent): New
9651         function.  Split out from _nss_nis_endetherent.
9652         (internal_nis_setetherent): Use internal_nis_endetherent instead of
9653         duplicating the code.
9654         * nis/nss_nis/nis-alias.c: Make _nss_nss_nis_endaliasent an alias
9655         of _nss_nis_setaliasent.
9656         * nis/nss_nis/nis-service.c (internal_nis_setservent): Reuse
9657         internal_nis_endservent code, don't duplicate it.
9659         * inet/rexec.c (rexec_af): Protect socket operations with
9660         TEMP_FAILURE_RETRY.  Use writev instead of multiple write.
9661         * inet/rcmd.c (rcmd_af): Likewise.
9663 2003-01-17  Roland McGrath  <roland@redhat.com>
9665         * math/libm-test.inc (sin_test, cos_test, sincos_test) [TEST_DOUBLE]:
9666         Add test of value 0.80190127184058835.
9668         * elf/dl-open.c: Fix typo ifdef -> ifndef on _dl_tls_static_size defn.
9670 2003-01-17  Richard Henderson  <rth@redhat.com>
9672         * sysdeps/alpha/dl-machine.h (elf_machine_type_class): Add TLS
9673         relocs for class PLT.
9674         * sysdeps/alpha/libc-tls.c: New file.
9675         * sysdeps/unix/alpha/sysdep.S (EPILOGUE, GPSAVEREG): New.
9676         (LOADGP) [!PIC]: Rewrite to preserve caller's gp.
9678 2003-01-17  Jakub Jelinek  <jakub@redhat.com>
9680         * sysdeps/unix/sysv/linux/ia64/dl-static.c (_dl_static_init): Use
9681         __libc_lock_{,un}lock_recursive instead of __libc_lock_{,un}lock
9682         on _dl_static_lock.
9684 2003-01-17  Andreas Jaeger  <aj@suse.de>
9686         * stdio-common/bug14.c: Include stdlib.h for exit prototype.
9688 2003-01-16  Steven Munroe  <sjmunroe@us.ibm.com>
9690         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: New file.
9691         * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S: New file.
9692         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: New file.
9693         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: New file.
9694         * sysdeps/unix/sysv/linux/powerpc/powerpc64/ucontext_i.h: New file.
9695         * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: New file.
9696         * sysdeps/unix/sysv/linux/configure.in: Minimum kernel for PPC64
9697         is 2.4.21.
9699 2003-01-16  Ulrich Drepper  <drepper@redhat.com>
9701         * sysdeps/generic/glob.c (glob): Assume sysconf() always returns
9702         values != -1 for _LIBC.  Use extend_alloca to reallocate alloca'ed
9703         buffers.
9705         * sysdeps/generic/sysconf.c: Unconditionally implement
9706         _SC_GETPW_R_SIZE_MAX and _SC_GETGR_R_SIZE_MAX.
9707         * sysdeps/posix/sysconf.c: Likewise.
9709 2003-01-16  Jakub Jelinek  <jakub@redhat.com>
9711         * posix/regcomp.c (parse_bracket_exp): If build_charclass fails,
9712         set *err to the returned error, not to REG_ESPACE unconditionally.
9713         (build_word_op): Likewise.
9714         * posix/Makefile (tests): Add bug-regex16.
9715         * posix/bug-regex16.c: New test.
9717 2003-01-16  Jakub Jelinek  <jakub@redhat.com>
9719         * elf/dl-load.c (_dl_map_object_from_fd): Use
9720         GL(dl_tls_dtv_slotinfo_list) != NULL to check whether TLS has
9721         been already initialized.
9723 2003-01-15  Dmitry V. Levin  <ldv@altlinux.org>
9725         * sysdeps/unix/sysv/linux/ptsname.c: Fix typo in comment.
9727 2003-01-16  Jakub Jelinek  <jakub@redhat.com>
9729         * posix/regcomp.c (re_compile_internal): If clearing buffer, clear
9730         allocated too.  Reported by Al Viro <aviro@redhat.com>.
9732 2003-01-16  Roland McGrath  <roland@redhat.com>
9734         Tweak merged .abilist file format to merge duplicate symbols in
9735         different sets into multi-version stanzas with new "| SET regexp..."
9736         header continuation lines.
9737         * scripts/merge-abilist.awk: Rewritten for new format.
9738         * scripts/extract-abilist.awk: Likewise.
9740 2003-01-15  Ulrich Drepper  <drepper@redhat.com>
9742         * nscd/connections.c (nscd_run): Remove bogus return which isn't
9743         necessary with gcc 3.2+.
9744         (nscd_init): Don't use error() to print message, use dbg_log.
9746         * iconv/gconv_simple.c (STORE_REST): Explicitly store the total
9747         expected size into state.
9748         (UNPACK_BYTES): Do the reverse.
9749         * iconv/loop.c: Use CLEAR_STATE if defined to clear __state element.
9750         * wcsmbs/tst-mbrtowc.c (utf8_test_1): Add test for the bug.
9751         Reported by Al Viro <aviro@redhat.com>.
9753         * stdio-common/Makefile (tests): Add bug14.
9754         * stdio-common/bug14.c: New file.
9756         * stdio-common/vfscanf.c: When recognizing multibyte characters in
9757         string reset the byte counter after mbrtowc reported it is not a
9758         partial character.  Reported by Al Viro <aviro@redhat.com>.
9760 2003-01-15  Steven Munroe  <sjmunroe@us.ibm.com>
9762         * sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S: Include
9763         sysdep-cancel.h, not sysdep.h.
9765 2003-01-15  Ulrich Drepper  <drepper@redhat.com>
9767         * nscd/connections.c (nscd_run): Protect accept call with
9768         TEMP_FAILURE_RETRY.
9770 2003-01-15  Andreas Schwab  <schwab@suse.de>
9772         * sysdeps/unix/Makefile: Include $(common-objpfx)s-proto-bp.d.
9773         (common-generated): Add s-proto-bp.d.
9774         * sysdeps/unix/make-syscalls.sh: Use s-proto-bp.d for dependencies
9775         of bp thunks.
9776         * sysdeps/unix/s-proto-bp.S: New file.
9777         * sysdeps/generic/bp-thunks.h: Don't include <sys/vm86.h> here.
9778         Use <io/sys/sendfile.h> instead of <sys/sendfile.h>.
9779         * sysdeps/unix/sysv/linux/i386/bp-thunks.h: New file.
9781 2003-01-15  Roland McGrath  <roland@redhat.com>
9783         * Makerules: Use -include for tls.make, suppresses warning.
9784         Move gen-as-const-headers rules up so before-compile is set in time.
9785         (sed-remove-dotdot): Fix to work right for subdirs or top dir.
9787 2003-01-15  Ulrich Drepper  <drepper@redhat.com>
9789         * nscd/nscd.c (main): Make code to close all file descriptors
9790         faster and more robust.
9792         * nscd/nscd_getpw_r.c (nscd_getpw_r): Consolidate writing of the
9793         request with one writev call.  Protect all read calls with
9794         TEMP_FAILURE_RETRY.
9795         * nscd/nscd_getgr_r.c (nscd_getgr_r): Likewise.
9796         * nscd/nscd_gethst_r.c (nscd_gethst_r): Likewise.
9798         * nscd/hstcache.c: Use extend_alloca to reallocate alloca'd buffer.
9799         Protect writev calls with TEMP_FAILURE_RETRY.
9800         * nscd/grpcache.c: Likewise.
9801         * nscd/pwdcache.c: Likewise.
9803         * nscd/hstcache.c (addhstbynamev6): Don't interpret hostname as
9804         IPv6 address in debug output.
9806 2003-01-14  Roland McGrath  <roland@redhat.com>
9808         * Makerules (check-abi-%): Use two rules for $(common-objpfx) and
9809         $(objpfx) directories, and get rid of vpath directives.  The previous
9810         arrangement resulted in files being written to the source directories
9811         when run in a clean build.  Find all .abilist files in $(..)abilist/.
9812         (update-abi-%): Likewise.
9813         (generated): Don't add .symlist files, they'll be intermediates.
9815         * sysdeps/generic/init-first.c: Add a comment.
9817         * elf/Makefile ($(objpfx)ld.so): Pass -z defs in link.
9819         * scripts/gen-as-const.awk: Grok lone "--" as a separator between
9820         #includes and expressions.
9822         * scripts/merge-abilist.awk: Omit cpu-.*-os.*/modifier from merged
9823         config list when it already contains cpu-.*-os.* without / part.
9825         * Makerules (sed-remove-dotdot): New variable.
9826         ($(common-objpfx)%.make): Use it.  Depend on $(before-compile).
9827         ($(common-objpfx)%.h $(common-objpfx)%.h.d): Likewise.
9828         (check-abi-config): New variable, append /tls or /notls to the tuple.
9829         (check-abi-%): Use that for -v config value.
9830         Find .abilist files in abilist/libfoo.abilist, not in subdir.
9831         * Rules: Move bits/stdio_lim.h generation rules to Makerules.
9833 2003-01-14  Ulrich Drepper  <drepper@redhat.com>
9835         * manual/install.texi: Correct description of header preparation for
9836         Linux build.  Patch by mhwood@Ameritech.Net [PR libc/4941].
9838 2003-01-14  Guido Guenther  <agx@sigxcpu.org>
9840         * sysdeps/unix/sysv/linux/mips/sysdep.h (INTERNAL_SYSCALL,
9841         INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
9842         INTERNAL_SYSCALL_ERROR_P, INLINE_SYSCALL): Define.
9844 2003-01-14  Steven Munroe  <sjmunroe@us.ibm.com>
9846         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h
9847         (INTERNAL_SYSCALL): Make use of ERR parameter.
9848         (INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
9849         INTERNAL_SYSCALL_ERROR_P): Adjust accordingly.
9850         (INLINE_SYSCALL): Make use of INTERNAL_SYSCALL.
9851         * sysdeps/unix/sysv/linux/powerpc/powerpc64/vfork.S: New file.
9853 2003-01-14  Ulrich Drepper  <drepper@redhat.com>
9855         * sunrpc/pm_getport.c (pmap_getport): Open TCP socket if protocol
9856         == IPPROTO_TCP.
9857         Patch by James Strandboge <jamie@tpptraining.com> [PR libc/4943].
9859         * sysdeps/unix/sysv/linux/i386/dl-procinfo.c (_dl_x86_cap_flags):
9860         Fix entry for bit 31.
9862         * iconvdata/Makefile: Add rules to build IBM866NAV.
9863         * iconvdata/ibm866nav.c: New file.
9864         * iconvdata/tst-tables.sh: Add IBM866NAV.
9865         * iconvdata/gconv-modules: Add entries for IBM866NAV.
9867 2003-01-13  Ulrich Drepper  <drepper@redhat.com>
9869         * string/tester.c (test_strcpy): Use the previously #if 0'ed code
9870         to test void* parameters.
9872         * sysdeps/i386/i486/bits/string.h (__STRING_SMALLL_GET16): Cast
9873         source pointer before dereferencing.
9874         (__STRING_SMALLL_GET32): Likewise.
9875         (__memset_gc): Add missing parenthesis around macro arguments.
9876         Patch by Denis Zaitsev <zzz@cd-club.ru>.
9878         * sysdeps/i386/i486/bits/string.h (__strspn_cg): Tell the compiler
9879         that %eax is modified.  Reported by Denis Zaitsev <zzz@cd-club.ru>.
9881 2003-01-14  Jakub Jelinek  <jakub@redhat.com>
9883         * sysdeps/unix/alpha/sysdep.h (INLINE_SYSCALL): Undefined before
9884         defining.
9886 2003-01-13  Martin Schwidefsky  <schwidefsky@de.ibm.com>
9888         * sysdeps/s390/s390-64/initfini.c: Avoid unterminated string literals.
9889         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (L): Don't define it
9890         here.
9891         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (L): Likewise.
9893 2003-01-13  Martin Schwidefsky  <schwidefsky@de.ibm.com>
9895         * sysdeps/s390/s390-32/sysdep.h (JUMPTARGET): Move branch instructions
9896         from here...
9897         (PSEUDO): ... to here.
9898         * sysdeps/s390/s390-64/sysdep.h (JUMPTARGET): Move branch instruction
9899         from here...
9900         (PSEUDO): ... to here.
9902 2003-01-13  Ulrich Drepper  <drepper@redhat.com>
9904         * locale/programs/charmap-dir.c (charmap_readdir): Use struct
9905         dirent64 instead of struct dirent for dirent.  Call readdir64
9906         instead of readdir.
9908         * locale/programs/locfile.c (siblings_uncached): Use struct
9909         dirent64 instead of struct dirent for other_dentry.  Call
9910         readdir64 instead of readdir.
9912         * elf/ldconfig.c (direntry): Change type to struct dirent64.
9913         (search_dir): Use readdir64 instead of readdir.
9914         Patch by Zhangfan Xing <xing@pacific.jpl.nasa.gov>.
9916 2003-01-12  Roland McGrath  <roland@redhat.com>
9918         * hurd/lookup-retry.c (__hurd_file_name_lookup_retry): Use strtoul,
9919         not strtol.  The former is usable in ld.so, the latter not.
9921         * include/fcntl.h: Declare __libc_creat.
9923         * sysdeps/mach/hurd/Makefile (libmachuser-link.so-no-z-defs,
9924         libhurduser-link.so-no-z-defs): New variables.
9926         * malloc/malloc.c: Revert last change.
9927         * malloc/malloc.h (_int_*): Move these decls to ...
9928         * include/malloc.h: ... here.  Add attribute_hidden.
9929         (_int_valloc): Declare it too.
9931 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
9933         * elf/dl-close.c (_dl_close): Fix typo, must be == not = in
9934         search for removed searchlist.  Reported by Roland McGrath.
9936         * io/ftwtest-sh: Add test for case of symlink to nonexisting file
9937         given as start file.
9939         * io/ftw.c (ftw_startup): Use correct name in check for symlink
9940         without existing target.  Patch by Jim Meyering.
9942         * Makerules (build-shlib-helper): Don't use -z defs linker option
9943         if no-z-defs is defined either.
9945 2003-01-10  Martin Schwidefsky  <schwidefsky@de.ibm.com>
9947         * sysdeps/unix/sysv/linux/s390/s390-64/kernel_stat.h: Remove unused
9948         file.
9950 2003-01-10  Martin Schwidefsky  <schwidefsky@de.ibm.com>
9952         * sysdeps/unix/sysv/linux/s390/s390-32/syscalls.list: Add vfork.
9953         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
9955 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
9957         * io/ftwtest-sh: Add test case for relative path with /. at the end.
9959 2003-01-12  Jim Meyering  <jim@meyering.net>
9961         * io/ftw.c (ftw_startup): When trying to stat the starting directory,
9962         use the basename if we've already chdir'd into its parent directory.
9964 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
9966         * io/ftw.c (process_entry): Use relative path when using chdir()
9967         to change directory after call to ftw_dir.
9968         * io/ftwtest-sh: Add test for relative path argument to nftw()
9969         with FTW_CHDIR option.
9971 2003-01-12  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
9973         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_VFORK_SYSCALL):
9974         Define for powerpc.
9975         * sysdeps/unix/sysv/linux/powerpc/syscall.S: Take register alignment
9976         into account.
9977         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h
9978         (INTERNAL_SYSCALL): Make use of ERR parameter.
9979         (INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
9980         INTERNAL_SYSCALL_ERROR_P): Adjust accordingly.
9981         (INLINE_SYSCALL): Make use of INTERNAL_SYSCALL.
9982         * sysdeps/unix/sysv/linux/powerpc/powerpc32/vfork.S: New file.
9984 2003-01-09  Richard Henderson  <rth@redhat.com>
9986         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Compute
9987         DTPREL64 and TPREL64 without loadbase applied.
9989 2003-01-09  Richard Henderson  <rth@redhat.com>
9991         * sysdeps/unix/alpha/sysdep.S: Use correct definition of errno
9992         for NOT_IN_libc.
9994         * sysdeps/unix/sysv/linux/alpha/sysdep.h: Move inline syscall bits...
9995         * sysdeps/unix/alpha/sysdep.h: ... here.
9996         (PSEUDO_LOADGP): Remove.
9997         (PSEUDO_PROLOGUE): Load GP in non-pic case.
9998         (SYSCALL_ERROR_LABEL): New.
9999         (PSEUDO): Use it in error branch.
10000         (PSEUDO_END): Add $syscall_error label.
10002 2003-01-12  Andreas Jaeger  <aj@suse.de>
10004         * math/bits/mathcalls.h: Round is a const function.
10006 2003-01-11  Jim Meyering  <jim@meyering.net>
10008         * io/ftw.c [HAVE_CONFIG_H]: Include <config.h>.
10009         [HAVE_SYS_PARAM_H || _LIBC]: Guard inclusion of <sys/param.h>.
10010         Include <sys/stat.h>, not <include/sys/stat.h>, if !_LIBC.
10011         [!_LIBC] (__chdir, __closedir, __fchdir, __getcwd, __opendir): Define.
10012         [!_LIBC] (__readdir64, __tdestroy, __tfind, __tsearch): Define.
10013         [!_LIBC] (internal_function, dirent64, MAX): Define.
10014         (__set_errno): Define if not already defined.
10015         (open_dir_stream): When FTW_CHDIR is enabled, invoke opendir on
10016         the basename, not the entire file name.
10017         (process_entry): When FTW_CHDIR is enabled, invoke XSTAT or LXSTAT on
10018         the basename, not the entire file name.
10020 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
10022         * string/tester.c (test_strcpy): Disable last added strcpy until
10023         it is fixed.
10025 2003-01-11  Philip Blundell  <philb@gnu.org>
10027         * sysdeps/unix/sysv/linux/arm/socket.S: Add cancellation support.
10029 2003-01-11  Andreas Schwab  <schwab@suse.de>
10031         * Makerules: Add vpath for %.dynsym and %.so so that the
10032         implicit rule chaining for check-abi works.
10034 2003-01-11  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
10036         * sysdeps/unix/sysv/linux/sh/sysdep.h (SYSCALL_ERROR_HANDLER):
10037         Add non-PIC case.
10039 2003-01-11  Jakub Jelinek  <jakub@redhat.com>
10041         * elf/tls-macros.h [__ia64__] (__TLS_CALL_CLOBBERS): Define.
10042         [__ia64__] (TLS_LE, TLS_IE): Fix typos.  Add ;; at start of asm if
10043         gp is used early.
10044         [__ia64__] (TLS_LD, TLS_GD): Likewise.  Use __TLS_CALL_CLOBBERS.
10045         * elf/Makefile ($(objpfx)tst-tlsmod5.so, $(objpfx)tst-tlsmod6.so):
10046         Ensure libc.so in DT_NEEDED.
10047         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Move
10048         CHECK_STATIC_TLS before l_tls_offset use.
10049         * sysdeps/i386/dl-machine.h (elf_machine_rel, elf_machine_rela):
10050         Likewise.
10051         * sysdeps/sh/dl-machine.h (elf_machine_rela): Likewise.
10052         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage) [TLS_DTV_AT_TP]:
10053         Allocate TLS_PRE_TCB_SIZE bytes below result.
10054         (_dl_deallocate_tls) [TLS_DTV_AT_TP]: Adjust before freeing.
10055         * sysdeps/generic/libc-tls.c (__libc_setup_tls): If
10056         TLS_INIT_TP_EXPENSIVE is not defined, allocate even if no PT_TLS
10057         segment has been found.  If TLS_DTV_AT_TP, allocate TLS_PRE_TCB_SIZE
10058         bytes below result and add tcb_offset to memsz.
10059         * sysdeps/ia64/dl-tls.h (__tls_get_addr): New prototype.
10060         * sysdeps/ia64/dl-machine.h: Include tls.h.
10061         (elf_machine_type_class): Return ELF_RTYPE_CLASS_PLT for TLS relocs
10062         too.
10063         (elf_machine_rela): Assume if sym_map != NULL sym is non-NULL too.
10064         Handle R_IA64_DTPMOD*, R_IA64_DTPREL* and R_IA64_TPREL* relocations.
10065         * sysdeps/ia64/libc-tls.c: New file.
10067 2003-01-10  Steven Munroe  <sjmunroe@us.ibm.com>
10069         * sysdeps/powerpc/powerpc64/sysdep.h (PSEUDO_RET): Add branch hit.
10070         * sysdeps/unix/sysv/linux/powerpc/bits/stat.h (STAT_VER_LINUX):
10071         Fix type.  Move definition out of #if.
10072         * sysdeps/unix/sysv/linux/powerpc/powerpc64/ftruncate64.c: New file.
10073         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pread.c: New file.
10074         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pread64.c: New file.
10075         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pwrite.c: New file.
10076         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pwrite64.c: New file.
10077         * sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S: Add cancellation
10078         support.
10079         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Remove
10080         ftruncate64, pread64, pwrite64, truncate64 entries.
10081         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h
10082         (INLINE_SYSCALL): New version that supports function call like
10083         syscalls.  Add __builtin_expect.
10084         (LOADARGS_n): Add argument size safety checks.
10085         (INTERNAL_SYSCALL): New Macro.
10086         * sysdeps/unix/sysv/linux/powerpc/powerpc64/truncate64.c: New file.
10087         * sysdeps/unix/sysv/linux/powerpc/sys/procfs.h [__PPC_ELF_H]: Avoid
10088         redefinition of elf_fpreg_t and elf_fpregset_t.
10090 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
10092         * elf/dl-close.c (_dl_close): Add several asserts.  Correct and
10093         simplify test for unloading.  If loader of a DSO is unloaded do not
10094         use its scope anymore.  Fall back to own scope and adjust opencounts.
10095         Fix several comments.
10096         * elf/dl-deps.c (_dl_map_object_deps): Always allocate memory for
10097         the l_searchlist, not only for l_initfini.
10099         * elf/dl-lookup.c (add_dependencies): Avoid creating relocation
10100         dependencies if objects cannot be removed.  Remove object with the
10101         definition as not unloadable if necessary.
10103         * elf/reldep6.c: Create relocation dependency before closing the first
10104         module.
10106 2003-01-10  Guido Günther  <agx@sigxcpu.org>
10108         * sysdeps/unix/mips/fork.S: Add PSEUDO_END.
10109         * sysdeps/unix/mips/brk.S: Likewise.
10110         * sysdeps/unix/mips/pipe.S: Likewise.
10112 2003-01-10  Andreas Schwab  <schwab@suse.de>
10114         * sysdeps/unix/sysv/linux/m68k/getsysstats.c: New file.
10116         * sysdeps/unix/sysv/linux/m68k/vfork.S: Optimize for kernels which
10117         are known to have the vfork syscall.
10119         * sysdeps/m68k/sysdep.h (JUMPTARGET): Undefine before defining it.
10121         * sysdeps/unix/sysv/linux/kernel-features.h
10122         (__ASSUME_MMAP2_SYSCALL, __ASSUME_TRUNCATE64_SYSCALL)
10123         (__ASSUME_STAT64_SYSCALL, __ASSUME_FCNTL64)
10124         (__ASSUME_VFORK_SYSCALL): Define for m68k kernels >= 2.4.12.
10126 2003-01-09  Jakub Jelinek  <jakub@redhat.com>
10128         * elf/Makefile: Add rules to build and run reldep9 test.
10129         * elf/reldep9.c: New file.
10130         * elf/reldep9mod1.c: New file.
10131         * elf/reldep9mod2.c: New file.
10132         * elf/reldep9mod3.c: New file.
10134 2003-01-09  Jakub Jelinek  <jakub@redhat.com>
10136         * elf/Makefile: Add rules to build and run nodelete2 test.
10137         * elf/nodelete2.c: New file.
10138         * elf/nodel2mod1.c: New file.
10139         * elf/nodel2mod2.c: New file.
10140         * elf/nodel2mod3.c: New file.
10142 2003-01-09  Jakub Jelinek  <jakub@redhat.com>
10144         * posix/test-vfork.c (noop): Add __attribute_noinline__.
10145         * sysdeps/generic/sysdep.h (JUMPTARGET): Define if not defined.
10146         * sysdeps/i386/sysdep.h (JUMPTARGET): Undefine JUMPTARGET before
10147         defining it.
10148         * sysdeps/powerpc/powerpc32/sysdep.h (JUMPTARGET): Likewise.
10149         * sysdeps/powerpc/powerpc64/sysdep.h (JUMPTARGET): Likewise.
10150         * sysdeps/s390/s390-32/sysdep.h (JUMPTARGET): Likewise.
10151         * sysdeps/s390/s390-64/sysdep.h (JUMPTARGET): Likewise.
10152         * sysdeps/x86_64/sysdep.h (JUMPTARGET): Likewise.
10154 2003-01-09  Andreas Schwab  <schwab@suse.de>
10156         * sysdeps/m68k/fpu/libm-test-ulps: Regenerated.
10158 2003-01-08  Ulrich Drepper  <drepper@redhat.com>
10160         * sysdeps/unix/sysv/linux/arm/sysdep.h (INTERNAL_SYSCALL,
10161         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Add err
10162         argument.
10163         (INTERNAL_SYSCALL_DECL): Define.
10165 2003-01-06  Jakub Jelinek  <jakub@redhat.com>
10167         * sysdeps/unix/sysv/linux/ia64/sysdep.h (INTERNAL_SYSCALL,
10168         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Add err
10169         argument.
10170         (INTERNAL_SYSCALL_DECL): Define.
10171         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h: Likewise.
10172         * sysdeps/unix/sysv/linux/sparc/sysdep.h: Likewise.
10173         * sysdeps/unix/sysv/linux/i386/sysdep.h: Likewise.
10174         (INLINE_SYSCALL): Adjust.
10175         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Likewise.
10176         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise.
10177         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Likewise.
10178         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
10179         * elf/dl-misc.c (_dl_debug_vdprintf): Add INTERNAL_SYSCALL_DECL,
10180         add err argument to INTERNAL_SYSCALL* macros.
10181         * sysdeps/unix/sysv/linux/i386/brk.c (__brk): Likewise.
10182         * sysdeps/unix/sysv/linux/i386/system.c (cancel_handler): Likewise.
10183         * sysdeps/unix/sysv/linux/m68k/brk.c (__brk): Likewise.
10184         * sysdeps/unix/sysv/linux/m68k/getpagesize.c  (__getpagesize):
10185         Likewise.
10186         * sysdeps/unix/sysv/linux/sigwait.c (do_sigwait): Likewise.
10187         * sysdeps/unix/sysv/linux/i386/sigaction.c (__libc_sigaction): Use
10188         INLINE_SYSCALL instead of INTERNAL_SYSCALL and setting errno.
10190 2003-01-07  Ulrich Drepper  <drepper@redhat.com>
10192         Unify symbols in user namespace exported by libc.so and libc.a.
10193         * argp/argp-fmtstream.c: Don't define argp_make_fmtstream,
10194         argp_fmtstream_free, and argp_fmtstream_printf.
10195         * argp/argp-fs-xinl.c: Don't define argp_fmtstream_putc,
10196         argp_fmtstream_puts, argp_fmtstream_write, argp_fmtstream_set_lmargin,
10197         argp_fmtstream_set_rmargin, argp_fmtstream_set_wmargin, and
10198         argp_fmtstream_point.
10199         * gmon/gmon.c: Don't define write_profiling.
10200         * libio/genops.c: Don't define _cleanup.
10202         * intl/explodename.c (_nl_find_language.c): Mark as static.
10203         * intl/loadinfo.h: Remove _nl_find_language prototype.
10205         * libio/fileops.c (_IO_file_seekoff_maybe_mmap): Mark as static.
10206         * libio/libioP.h: Remove declaration.
10208         * libio/iopopen.c (_IO_proc_jumps): Mark as static.
10209         * libio/libioP.h: Remove declaration.
10211         * sysdeps/generic/unwind-dw2.c: Mark __frame_state_for with STATIC.
10212         * sysdeps/generic/framestate.c: Define STATIC before including
10213         unwind-dw2.c.
10215         * time/Versions [GLIBC_2.3.2] (libc): Export strptime_l.
10217 2003-01-06  Philip Blundell  <philb@gnu.org>
10219         * sysdeps/unix/arm/sysdep.S (syscall_error): Optimise a little.
10220         [__LIBC_REENTRANT]: Unify PIC and non-PIC cases.
10222         * sysdeps/unix/sysv/linux/arm/sysdep.h (PSEUDO): Remove .type
10223         directive.
10224         (PSEUDO_RET): Use SYSCALL_ERROR in place of __syscall_error.
10225         (SYSCALL_ERROR): New.
10226         (SYSCALL_ERROR_HANDLER) [NOT_IN_libc]: Provide local copy of error
10227         handling code.
10228         (INTERNAL_SYSCALL): Define.
10229         (INLINE_SYSCALL): Use it.
10230         (INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Define.
10231         * sysdeps/unix/sysv/linux/arm/socket.S (__socket): Use
10232         SYSCALL_ERROR in place of __syscall_error.
10234 2003-01-07  Jakub Jelinek  <jakub@redhat.com>
10236         * sysdeps/ia64/bits/byteswap.h [__GNUC__ >= 2] (__bswap_16,
10237         __bswap_32, __bswap_64): Put x into temporary variable
10238         to avoid warnings.
10239         [!__GNUC__] (__bswap_16, __bswap_32, __bswap_64): Change into static
10240         (inline) functions.
10241         * sysdeps/s390/bits/byteswap.h [__GNUC__ >= 2] (__bswap_16,
10242         __bswap_32, __bswap_64): Put x into temporary variable
10243         to avoid warnings.
10244         [!__GNUC__] (__bswap_16, __bswap_32, __bswap_64): Change into static
10245         (inline) functions.
10246         * sysdeps/i386/bits/byteswap.h [!__GNUC__] (__bswap_16, __bswap_32):
10247         Likewise.
10249 2003-01-07  Jakub Jelinek  <jakub@redhat.com>
10251         * sysdeps/unix/sysv/linux/alpha/adjtime.c (ntp_adjtime): New weak
10252         alias.
10254 2003-01-07  Jakub Jelinek  <jakub@redhat.com>
10256         * elf/rtld.c (_rtld_global): Remove _dl_dynamic_weak initializer.
10257         * elf/dl-support.c (_dl_dynamic_weak): Initialize to 0.
10259 2003-01-07  Ulrich Drepper  <drepper@redhat.com>
10261         * math/libm-test.inc (significand_test): New function.
10262         (main): Call it.
10264 2003-01-06  Roland McGrath  <roland@redhat.com>
10266         * sysdeps/i386/i486/bits/string.h (memset): Add parens around macro
10267         arguments.
10268         (memcpy, memrchr, strcpy, __stpcpy, strncpy, strcat): Likewise.
10269         (strcmp, strncat, strncmp, strchr, __strchrnul, strchrnul): Likewise.
10270         (index, strrchr, rindex, strcspn, strspn, strpbrk, strstr): Likewise.
10272         * string/tester.c (test_strcpy): Add test with `void *' arguments.
10274 2003-01-06  Ulrich Drepper  <drepper@redhat.com>
10276         * sysdeps/i386/fpu/s_significandl.c (__significandl): Really
10277         return significand and not the exponent.
10278         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
10280         * elf/dl-misc.c (_dl_debug_vdprintf): Help PPC port by explicitly
10281         taking address of iov in INTERNAL_SYSCALL call.  Patch by Franz Sirl.
10283         * malloc/malloc.c: Mark all _int_* functions as static.
10285 2003-01-06  Jakub Jelinek  <jakub@redhat.com>
10287         * sysdeps/unix/alpha/sysdep.h (PSEUDO): Use PSEUDO_PREPARE_ARGS.
10288         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S: Add cancellation
10289         handling.
10290         * sysdeps/unix/sysv/linux/alpha/select.S: Likewise.
10292 2003-01-06  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
10294         * sysdeps/powerpc/powerpc32/sysdep.h (PSEUDO_RET): Add branch hint.
10295         * sysdeps/unix/sysv/linux/powerpc/powerpc32/socket.S: Add cancellation
10296         support.
10297         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Remove
10298         ftruncate64, truncate64, pread64 and pwrite64 entries.
10299         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h
10300         (INLINE_SYSCALL): Add __builtin_expect.
10301         (LOADARGS_n): Add argument size safety checks.
10302         * sysdeps/unix/sysv/linux/powerpc/powerpc32/ftruncate64.c: New file.
10303         * sysdeps/unix/sysv/linux/powerpc/powerpc32/truncate64.c: New file.
10304         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pread.c: New file.
10305         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pread64.c: New file.
10306         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pwrite.c: New file.
10307         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pwrite64.c: New file.
10309 2003-01-06  Jakub Jelinek  <jakub@redhat.com>
10311         * sysdeps/generic/sysdep-cancel.h (LIBC_CANCEL_HANDLED): Define.
10312         * sysdeps/generic/creat.c: Include sysdep-cancel.h.
10313         (LIBC_CANCEL_HANDLED): Add.
10315         * sysdeps/unix/sysv/linux/alpha/sysdep.h
10316         (inline_syscall_r0_constraint): Rename to...
10317         (inline_syscall_r0_out_constraint): ... this.  Add =.
10318         (inline_syscall[0-6]): Use inline_syscall_r0_out_constraint.
10320 2003-01-06  Andreas Schwab  <schwab@suse.de>
10322         * sysdeps/m68k/dl-machine.h (elf_machine_runtime_setup): Make
10323         sure this is always inlined.
10324         (elf_machine_rela): Likewise.
10326         * sysdeps/m68k/Makefile (sysdep-CFLAGS): Increase inline limit.
10328 2003-01-04  Roland McGrath  <roland@redhat.com>
10330         * Makeconfig (+mkdep): Add -MP flag.
10331         Suggested by Art Haas <ahaas@airmail.net>.
10333 2003-01-05  Andreas Schwab  <schwab@suse.de>
10335         * sysdeps/m68k/Makefile (CFLAGS-.oS): Append -fPIC.
10337 2003-01-05  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
10339         * sysdeps/unix/sysv/linux/sh/clone.S (__clone): Use
10340         SYSCALL_ERROR_HANDLER.
10341         * sysdeps/unix/sysv/linux/sh/pipe.S (__libc_pipe): Likewise.
10342         * sysdeps/unix/sysv/linux/sh/socket.S (__socket): Likewise.
10343         Add support for cancellation handling.
10344         * sysdeps/unix/sysv/linux/sh/syscall.S (__syscall): Use
10345         SYSCALL_ERROR_HANDLER.
10346         * sysdeps/unix/sysv/linux/sh/vfork.S (__vfork): Likewise.
10347         * sysdeps/unix/sysv/linux/sh/sysdep.h (PSEUDO): Likewise.
10348         Add support for cancellation handling.
10349         (SYSCALL_ERROR_HANDLER): Define PIC variants.
10351 2003-01-04  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
10353         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Mark
10354         __syscall_pread64 and __syscall_pwrite64 cancelable.
10355         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h
10356         (INTERNAL_SYSCALL): New macro.
10357         (LOADARGS_0, LOADARGS_1): Fix.
10359 2003-01-05  Ulrich Drepper  <drepper@redhat.com>
10361         * Makerules (build-shlip-helper): Unless told otherwise, add
10362         -Wl,-z,defs to linker command line.
10363         * rt/Makefile (librt.so): Link with ld.so.
10364         * dlfcn/Makefile (libdl.so): Likewise.
10366 2003-01-05  Jakub Jelinek  <jakub@redhat.com>
10368         * sysdeps/unix/sysv/linux/s390/s390-32/socket.S: Add support for
10369         cancellation handling.
10370         * sysdeps/unix/sysv/linux/s390/s390-64/socket.S: Likewise.
10371         * sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c: Likewise.
10373 2003-01-04  Ulrich Drepper  <drepper@redhat.com>
10375         * sysdeps/unix/sysv/linux/i386/system.c (cancel_handler): Correct
10376         order of parameters passed to kill.
10378 2003-01-04  Andreas Schwab  <schwab@suse.de>
10380         * sysdeps/unix/sysv/linux/m68k/bits/stat.h: Add nanosecond fields.
10382 2003-01-03  Paul Eggert  <eggert@twinsun.com>
10384         * malloc/obstack.h (__INT_TO_PTR) [__STDC__]: Cast result to
10385         (void *) to avoid diagnostic with native c89 on SGI IRIX 6.5
10386         when compiling Bison 1.875's `bitset bset = obstack_alloc
10387         (bobstack, bytes);'.  Problem reported by Nelson H. F. Beebe.
10389 2003-01-04  Ulrich Drepper  <drepper@redhat.com>
10391         * sysdeps/posix/system.c (do_system): Minor optimizations.  Remove
10392         unnecessary code.
10393         Correct reference counter in case SIGQUIT handler installation failed.
10395 2003-01-03  Ulrich Drepper  <drepper@redhat.com>
10397         * include/libc-symbols.h [HAVE_WEAK_SYMBOLS] (_weak_extern):
10398         Define using _Pragma(weak ...).
10400 2003-01-03  Andreas Jaeger  <aj@suse.de>, Jakub Jelinek <jakub@redhat.com>
10402         * resolv/res_libc.c: Provide declaration for __res_init_weak and
10403         reorder declarations.
10405 2003-01-03  Art Haas  <ahaas@airmail.net>
10407         * localedata/tests-mbwc/dat_iswalnum.c: Convert GCC extension
10408         initializer syntax to C99.
10409         * localedata/tests-mbwc/dat_iswalpha.c: Likewise.
10410         * localedata/tests-mbwc/dat_iswcntrl.c: Likewise.
10411         * localedata/tests-mbwc/dat_iswctype.c: Likewise.
10412         * localedata/tests-mbwc/dat_iswdigit.c: Likewise.
10413         * localedata/tests-mbwc/dat_iswgraph.c: Likewise.
10414         * localedata/tests-mbwc/dat_iswlower.c: Likewise.
10415         * localedata/tests-mbwc/dat_iswprint.c: Likewise.
10416         * localedata/tests-mbwc/dat_iswpunct.c: Likewise.
10417         * localedata/tests-mbwc/dat_iswspace.c: Likewise.
10418         * localedata/tests-mbwc/dat_iswupper.c: Likewise.
10419         * localedata/tests-mbwc/dat_iswxdigit.c: Likewise.
10420         * localedata/tests-mbwc/dat_mblen.c: Likewise.
10421         * localedata/tests-mbwc/dat_mbrlen.c: Likewise.
10422         * localedata/tests-mbwc/dat_mbrtowc.c: Likewise.
10423         * localedata/tests-mbwc/dat_mbsrtowcs.c: Likewise.
10424         * localedata/tests-mbwc/dat_mbstowcs.c: Likewise.
10425         * localedata/tests-mbwc/dat_mbtowc.c: Likewise.
10426         * localedata/tests-mbwc/dat_strcoll.c: Likewise.
10427         * localedata/tests-mbwc/dat_strfmon.c: Likewise.
10428         * localedata/tests-mbwc/dat_strxfrm.c: Likewise.
10429         * localedata/tests-mbwc/dat_swscanf.c: Likewise.
10430         * localedata/tests-mbwc/dat_towctrans.c: Likewise.
10431         * localedata/tests-mbwc/dat_towlower.c: Likewise.
10432         * localedata/tests-mbwc/dat_towupper.c: Likewise.
10433         * localedata/tests-mbwc/dat_wcrtomb.c: Likewise.
10434         * localedata/tests-mbwc/dat_wcscat.c: Likewise.
10435         * localedata/tests-mbwc/dat_wcschr.c: Likewise.
10436         * localedata/tests-mbwc/dat_wcscmp.c: Likewise.
10437         * localedata/tests-mbwc/dat_wcscoll.c: Likewise.
10438         * localedata/tests-mbwc/dat_wcscpy.c: Likewise.
10439         * localedata/tests-mbwc/dat_wcscspn.c: Likewise.
10440         * localedata/tests-mbwc/dat_wcslen.c: Likewise.
10441         * localedata/tests-mbwc/dat_wcsncat.c: Likewise.
10442         * localedata/tests-mbwc/dat_wcsncmp.c: Likewise.
10443         * localedata/tests-mbwc/dat_wcsncpy.c: Likewise.
10444         * localedata/tests-mbwc/dat_wcspbrk.c: Likewise.
10445         * localedata/tests-mbwc/dat_wcsrtombs.c: Likewise.
10446         * localedata/tests-mbwc/dat_wcsspn.c: Likewise.
10447         * localedata/tests-mbwc/dat_wcsstr.c: Likewise.
10448         * localedata/tests-mbwc/dat_wcstod.c: Likewise.
10449         * localedata/tests-mbwc/dat_wcstok.c: Likewise.
10450         * localedata/tests-mbwc/dat_wcstombs.c: Likewise.
10451         * localedata/tests-mbwc/dat_wcswidth.c: Likewise.
10452         * localedata/tests-mbwc/dat_wcsxfrm.c: Likewise.
10453         * localedata/tests-mbwc/dat_wctob.c: Likewise.
10454         * localedata/tests-mbwc/dat_wctomb.c: Likewise.
10455         * localedata/tests-mbwc/dat_wctrans.c: Likewise.
10456         * localedata/tests-mbwc/dat_wctype.c: Likewise.
10457         * localedata/tests-mbwc/dat_wcwidth.c: Likewise.
10459 2003-01-03  Richard Henderson  <rth@redhat.com>
10461         * sysdeps/unix/sysv/linux/alpha/sysdep.h (inline_syscall_r0_asm): New.
10462         (inline_syscall_r0_constraint): New.
10463         (inline_syscall[0-6]): Use them.
10465 2003-01-03  Jakub Jelinek  <jakub@redhat.com>
10467         * sysdeps/generic/ldsodefs.h (_dl_allocate_tls, _dl_deallocate_tls):
10468         Add rtld_hidden_proto.
10469         * sysdeps/generic/dl-tls.c (_dl_deallocate_tls): Add rtld_hidden_def.
10470         (_dl_allocate_tls): Likewise.  Remove INTDEF.
10472 2002-07-05  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
10474         * sysdeps/sh/memcpy.S: Optimize.  Based on a patch by Toshiyasu
10475         Morita <toshiyasu.morita@hsa.hitachi.com>.
10476         * sysdeps/sh/memcpy.S: Likewise.
10478 2003-01-02  Ulrich Drepper  <drepper@redhat.com>
10480         * sysdeps/pthread/aio_suspend.c (aio_suspend): Don't quite remove
10481         any, but unify the test.
10483 2003-01-02  Jakub Jelinek  <jakub@redhat.com>
10485         * sysdeps/unix/sysv/linux/arm/sigaction.c (__sigaction,
10486         sigaction): Protect weak_alias and libc_hidden_weak with
10487         #ifndef LIBC_SIGACTION.
10488         * sysdeps/unix/sysv/linux/ia64/sigaction.c (__sigaction,
10489         sigaction): Likewise.
10490         * sysdeps/unix/sysv/linux/mips/sigaction.c (__sigaction,
10491         sigaction): Likewise.
10492         * sysdeps/unix/sysv/linux/s390/s390-64/sigaction.c (__sigaction,
10493         sigaction): Likewise.
10494         * sysdeps/unix/sysv/linux/sparc/sparc32/sigaction.c (__sigaction,
10495         sigaction): Likewise.
10496         * sysdeps/unix/sysv/linux/sparc/sparc64/sigaction.c (__sigaction,
10497         sigaction): Likewise.
10498         * sysdeps/unix/sysv/linux/x86_64/sigaction.c (__sigaction,
10499         sigaction): Likewise.
10500         * sysdeps/unix/sysv/linux/i386/sigaction.c (__sigaction,
10501         sigaction): Likewise.  Remove SIGCANCEL handling here.
10502         * sysdeps/unix/sysv/linux/sigaction.c (__sigaction, sigaction):
10503         Likewise.
10505 2003-01-02  Art Haas  <ahaas@airmail.net>
10507         * login/tst-utmp.c: Convert GCC extension initializer syntax to C99.
10509 2003-01-02  Ulrich Drepper  <drepper@redhat.com>
10511         * posix/getconf.c: Update copyright year.
10512         * nss/getent.c: Likewise.
10513         * nscd/nscd_nischeck.c: Likewise.
10514         * iconv/iconvconfig.c: Likewise.
10515         * iconv/iconv_prog.c: Likewise.
10516         * elf/ldconfig.c: Likewise.
10517         * catgets/gencat.c: Likewise.
10518         * csu/version.c: Likewise.
10519         * elf/ldd.bash.in: Likewise.
10520         * elf/sprof.c (print_version): Likewise.
10521         * locale/programs/locale.c: Likewise.
10522         * locale/programs/localedef.c: Likewise.
10523         * nscd/nscd.c (print_version): Likewise.
10524         * debug/xtrace.sh: Likewise.
10525         * malloc/memusage.sh: Likewise.
10526         * malloc/mtrace.pl: Likewise.
10528 2003-01-01  Jakub Jelinek  <jakub@redhat.com>
10530         * io/sys/stat.h: Include time.h with __need_timespec even if
10531         __USE_MISC is defined but __USE_XOPEN is not.
10533 2003-01-01  Andreas Jaeger  <aj@suse.de>
10535         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Use union
10536         type to avoid strict aliasing problem.
10537         (_nss_dns_gethostbyname2_r): Likewise.
10538         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyaddr_r): Likewise.
10539         (_nss_dns_getnetbyname_r): Likewise.
10540         * resolv/gethnamaddr.c (_gethtent): Likewise.
10541         (gethostbyname2): Likewise.
10543 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
10545         * string/string-inlines.c: Define __memcpy_g and __strchr_g macros
10546         to avoid using the exported symbols.  Define aliases with the
10547         original names separately.
10549         * include/time.h: Add libc_hidden_proto for __strftime_l.
10550         * include/wchar.h: Add libc_hidden_proto for __wcsftime_l.
10551         * time/strftime.c: Always use libc_hidden_def if _LIBC.
10553         * libio/libioP.h: Add libc_hidden_proto for _IO_file_open.
10554         * libio/fileops.c: Add libc_hidden_def for _IO_file_open.
10556         * malloc/mtrace.c: Add libc_hidden_proto and libc_hidden_def for
10557         tr_break.
10559         * csu/Makefile (routines): Add dso_handle.
10560         * csu/dso_handle.c: New file.
10562 2002-12-31  Roland McGrath  <roland@redhat.com>
10564         * Makerules (compile.S, COMPILE.S): Remove -DASSEMBLER here.
10565         Use $(S-CPPFLAGS) in place of $(asm-CPPFLAGS).
10566         (S-CPPFLAGS): Add -DASSEMBLER here instead.
10567         (generate-md5, +make-deps): Fix magic to get $(S-CPPFLAGS).
10569 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
10571         * malloc/thread-m.h [SHARED] (thread_atfork): Assume __dso_handle
10572         is available.
10574 2002-12-31  Andreas Jaeger  <aj@suse.de>
10576         * sysdeps/unix/sysv/linux/powerpc/powerpc32/kernel_stat.h: Sync
10577         with Linux kernel.
10578         * sysdeps/unix/sysv/linux/sparc/sparc32/kernel_stat.h: Likewise.
10579         * sysdeps/unix/sysv/linux/s390/s390-64/kernel_stat.h: Likewise.
10580         * sysdeps/unix/sysv/linux/hppa/kernel_stat.h: Likewise.
10582         * sysdeps/unix/sysv/linux/kernel_stat.h
10583         (_HAVE_STAT_NSEC,_HAVE_STAT_NSEC64): New.
10585         * sysdeps/unix/sysv/linux/xstatconv.c (xstat_conv): Re-add
10586         __unused[1-3] since they're needed by some platforms.  Handle
10587         _HAVE_STAT_NSEC and _HAVE_STAT_NSEC64.
10589         * sysdeps/unix/sysv/linux/x86_64/bits/stat.h: Add nsec resolution
10590         for structs stat and stat64.
10591         * sysdeps/unix/sysv/linux/ia64/bits/stat.h: Likewise.
10592         * sysdeps/unix/sysv/linux/powerpc/bits/stat.h: Likewise.
10593         * sysdeps/unix/sysv/linux/sparc/bits/stat.h: Likewise.
10594         * sysdeps/unix/sysv/linux/s390/bits/stat.h: Likewise.
10596         * io/sys/stat.h [__USE_MISC]: Define __need_timespec for struct stat.
10598         * sysdeps/unix/sysv/linux/xstatconv.c (xstat_conv): Adjust for
10599         nsec resolution changes.
10600         (xstat64_conv): Likewise.
10601         (xstat32_conv): Likewise.
10603         * sysdeps/unix/sysv/linux/kernel_stat.h: Add nsec resolution for
10604         struct kernel_stat.
10606         * sysdeps/unix/sysv/linux/bits/stat.h: Add nsec resolution for
10607         structs stat and stat64.
10609         * time/time.h (__timespec_defined): Define for __USE_MISC.
10611 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
10613         * include/signal.h: Add libc_hidden_proto for __libc_current_sigrtmin
10614         and __libc_current_sigrtmax.
10616 2002-12-31  Jakub Jelinek  <jakub@redhat.com>
10618         * include/errno.h (__errno_location): Add prototype.
10619         Use libc_hidden_proto unconditionally.
10620         * include/netdb.h (__h_errno_location): Use libc_hidden_proto
10621         unconditionally.
10622         * include/resolv.h (__res_state): Likewise.
10624         * hurd/errno-loc.c (__errno_location): Add libc_hidden_def.
10625         * include/sys/socket.h (accept): Add libc_hidden_proto.
10626         * include/errno.h (__errno_location): Likewise.
10627         * include/netdb.h (__h_errno_location): Likewise.
10628         * include/resolv.h (__res_state): Likewise.
10629         * include/unistd.h (__lseek): Likewise.
10630         * sysdeps/generic/errno-loc.c (__errno_location): Add libc_hidden_def.
10631         * sysdeps/generic/herrno-loc.c (__h_errno_location): Likewise.
10632         * sysdeps/generic/res-state.c (__res_state): Likewise.
10633         * sysdeps/generic/accept.c (accept): Likewise.
10634         * sysdeps/generic/lseek.c (__lseek): Likewise.
10635         * sysdeps/generic/allocrtsig.c (__libc_current_sigrtmin,
10636         __libc_current_sigrtmax): Likewise.
10637         * sysdeps/mach/hurd/accept.c (accept): Likewise.
10638         * sysdeps/mach/hurd/lseek.c (__lseek): Likewise.
10639         * sysdeps/unix/sysv/aix/accept.c (accept): Likewise.
10640         * sysdeps/unix/sysv/aix/lseek.c (__lseek): Likewise.
10641         * sysdeps/unix/sysv/linux/accept.S (accept): Likewise.
10642         * sysdeps/unix/inet/syscalls.list (__GI_accept): New alias to accept.
10643         * sysdeps/unix/sysv/linux/alpha/syscalls.list (__GI_accept): Likewise.
10644         * sysdeps/unix/sysv/linux/hppa/syscalls.list (__GI_accept): Likewise.
10645         * sysdeps/unix/sysv/linux/ia64/syscalls.list (__GI___lseek): New
10646         alias to llseek.
10647         (__GI_accept): New alias to accept.
10648         * sysdeps/unix/sysv/linux/mips/syscalls.list (__GI_accept): Likewise.
10649         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (__GI___lseek):
10650         New alias to llseek.
10651         (__GI_accept): New alias to accept.
10652         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list (__GI_accept):
10653         Likewise.
10654         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (__GI_accept):
10655         Likewise.
10656         * sysdeps/unix/syscalls.list (__GI___lseek): New alias to lseek.
10658         * sysdeps/alpha/setjmp.S : Use libc_hidden_def(name) instead of
10659         strong_alias (name, __GI_name).
10660         * sysdeps/arm/bsd-_setjmp.S : Likewise.
10661         * sysdeps/hppa/bsd-_setjmp.S : Likewise.
10662         * sysdeps/i386/bsd-_setjmp.S : Likewise.
10663         * sysdeps/mips/mips64/bsd-_setjmp.S : Likewise.
10664         * sysdeps/mips/bsd-_setjmp.S : Likewise.
10665         * sysdeps/powerpc/powerpc32/bsd-_setjmp.S : Likewise.
10666         * sysdeps/powerpc/powerpc64/setjmp.S : Likewise.
10667         * sysdeps/s390/s390-32/elf/setjmp.S : Likewise.
10668         * sysdeps/s390/s390-32/bsd-_setjmp.S : Likewise.
10669         * sysdeps/s390/s390-64/elf/setjmp.S : Likewise.
10670         * sysdeps/s390/s390-64/bsd-_setjmp.S : Likewise.
10671         * sysdeps/sh/bsd-_setjmp.S : Likewise.
10672         * sysdeps/sparc/sparc32/setjmp.S : Likewise.
10673         * sysdeps/unix/arm/fork.S : Likewise.
10674         * sysdeps/unix/bsd/hp/m68k/vfork.S : Likewise.
10675         * sysdeps/unix/bsd/i386/vfork.S : Likewise.
10676         * sysdeps/unix/bsd/osf/alpha/fork.S : Likewise.
10677         * sysdeps/unix/bsd/sun/m68k/vfork.S : Likewise.
10678         * sysdeps/unix/bsd/ultrix4/mips/vfork.S : Likewise.
10679         * sysdeps/unix/bsd/vax/vfork.S : Likewise.
10680         * sysdeps/unix/i386/fork.S : Likewise.
10681         * sysdeps/unix/mips/fork.S : Likewise.
10682         * sysdeps/unix/sparc/fork.S : Likewise.
10683         * sysdeps/unix/sparc/vfork.S : Likewise.
10684         * sysdeps/unix/sysv/linux/arm/vfork.S : Likewise.
10685         * sysdeps/unix/sysv/linux/cris/vfork.S : Likewise.
10686         * sysdeps/unix/sysv/linux/i386/vfork.S : Likewise.
10687         * sysdeps/unix/sysv/linux/ia64/fork.S : Likewise.
10688         * sysdeps/unix/sysv/linux/ia64/setjmp.S : Likewise.
10689         * sysdeps/unix/sysv/linux/ia64/vfork.S : Likewise.
10690         * sysdeps/unix/sysv/linux/m68k/vfork.S : Likewise.
10691         * sysdeps/unix/sysv/linux/sh/vfork.S : Likewise.
10692         * sysdeps/unix/sysv/linux/sparc/sparc64/longjmp.S : Likewise.
10693         * sysdeps/unix/sysv/linux/sparc/sparc64/setjmp.S : Likewise.
10694         * sysdeps/unix/sysv/linux/sparc/fork.S : Likewise.
10695         * sysdeps/unix/sysv/linux/sparc/vfork.S : Likewise.
10696         * sysdeps/unix/sysv/linux/x86_64/vfork.S : Likewise.
10697         * sysdeps/unix/fork.S : Likewise.
10698         * sysdeps/vax/bsd-_setjmp.S : Likewise.
10699         * sysdeps/x86_64/bsd-_setjmp.S : Likewise.
10701         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Guard against multiple
10702         inclusion.
10704 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
10706         * include/unistd.h: Add libc_hidden_proto for __fork and __vfork.
10707         * sysdeps/generic/fork.c: Add libc_hidden_def for __fork.
10708         * sysdeps/mach/hurd/fork.c: Likewise.
10709         * sysdeps/unix/sysv/aix/fork.c: Likewise.
10710         * sysdeps/unix/fork.S: Add __GI___fork alias.
10711         * sysdeps/unix/arm/fork.S: Likewise.
10712         * sysdeps/unix/bsd/osf/alpha/fork.S: Likewise.
10713         * sysdeps/unix/i386/fork.S: Likewise.
10714         * sysdeps/unix/mips/fork.S: Likewise.
10715         * sysdeps/unix/sparc/fork.S: Likewise.
10716         * sysdeps/unix/sysv/linux/ia64/fork.S: Likewise.
10717         * sysdeps/unix/sysv/linux/sparc/fork.S: Likewise.
10718         * sysdeps/unix/sysv/linux/syscalls.list: Likewise.
10719         * sysdeps/generic/vfork.c: Add libc_hidden_def for __vfork.
10720         * sysdeps/unix/bsd/hp/m68k/vfork.S: Add __GI___vfork alias.
10721         * sysdeps/unix/bsd/i386/vfork.S: Likewise.
10722         * sysdeps/unix/bsd/sun/m68k/vfork.S: Likewise.
10723         * sysdeps/unix/bsd/ultrix4/mips/vfork.S: Likewise.
10724         * sysdeps/unix/bsd/vax/vfork.S: Likewise.
10725         * sysdeps/unix/sparc/vfork.S: Likewise.
10726         * sysdeps/unix/sysv/linux/arm/vfork.S: Likewise.
10727         * sysdeps/unix/sysv/linux/cris/vfork.S: Likewise.
10728         * sysdeps/unix/sysv/linux/i386/vfork.S: Likewise.
10729         * sysdeps/unix/sysv/linux/ia64/vfork.S: Likewise.
10730         * sysdeps/unix/sysv/linux/m68k/vfork.S: Likewise.
10731         * sysdeps/unix/sysv/linux/sh/vfork.S: Likewise.
10732         * sysdeps/unix/sysv/linux/sparc/vfork.S: Likewise.
10733         * sysdeps/unix/sysv/linux/x86_64/vfork.S: Likewise.
10735         * include/time.h: Add libc_hidden_proto for __nanosleep.
10736         * sysdeps/generic/nanosleep.c: Add libc_hidden_def for __nanosleep.
10737         * sysdeps/mach/nanosleep.c: Likewise.
10738         * sysdeps/unix/sysv/aix/nanosleep.c: Likewise.
10739         * sysdeps/unix/sysv/linux/syscalls.list: Add __GI___nanosleep alias.
10741         * libio/libioP.h: Add libc_hidden_proto for _IO_list_lock,
10742         _IO_list_unlock, and _IO_list_resetlock.
10743         * libio/genops.c: Add libc_hidden_def for _IO_list_lock,
10744         _IO_list_unlock, and _IO_list_resetlock.
10746         * libio/libioP.h: Add libc_hidden_proto for _IO_iter_begin,
10747         _IO_iter_end, _IO_iter_next, and _IO_iter_file.
10748         * libio/genops.c: Add libc_hidden_def for _IO_iter_begin,
10749         _IO_iter_end, _IO_iter_next, and _IO_iter_file.
10751         * include/setjmp.h: Add libc_hidden_proto for __libc_longjmp.
10752         * sysdeps/generic/longjmp.c: Add libc_hidden_def for __longjmp.
10753         * sysdeps/unix/sysv/linux/sparc/sparc64/longjmp.S: Add
10754         __GI___longjmp alias.
10756         * include/setjmp.h: Add libc_hidden_proto for _setjmp.
10757         * sysdeps/alpha/setjmp.S: Add __GI__setjmp alias.
10758         * sysdeps/arm/bsd-_setjmp.S: Likewise.
10759         * sysdeps/generic/bsd-_setjmp.c: Likewise.
10760         * sysdeps/hppa/bsd-_setjmp.S: Likewise.
10761         * sysdeps/i386/bsd-_setjmp.S: Likewise.
10762         * sysdeps/m68k/bsd-_setjmp.c: Likewise.
10763         * sysdeps/mips/bsd-_setjmp.S: Likewise.
10764         * sysdeps/mips/mips64/bsd-_setjmp.S: Likewise.
10765         * sysdeps/powerpc/powerpc32/bsd-_setjmp.S: Likewise.
10766         * sysdeps/powerpc/powerpc64/setjmp.S: Likewise.
10767         * sysdeps/s390/s390-32/bsd-_setjmp.S: Likewise.
10768         * sysdeps/s390/s390-32/elf/setjmp.S: Likewise.
10769         * sysdeps/s390/s390-64/bsd-_setjmp.S: Likewise.
10770         * sysdeps/s390/s390-64/elf/setjmp.S: Likewise.
10771         * sysdeps/sh/bsd-_setjmp.S: Likewise.
10772         * sysdeps/sparc/sparc32/setjmp.S: Likewise.
10773         * sysdeps/unix/sysv/linux/ia64/setjmp.S: Likewise.
10774         * sysdeps/unix/sysv/linux/sparc/sparc64/setjmp.S: Likewise.
10775         * sysdeps/vax/bsd-_setjmp.S: Likewise.
10776         * sysdeps/x86_64/bsd-_setjmp.S: Likewise.
10778 2002-12-30  Ulrich Drepper  <drepper@redhat.com>
10780         * malloc/thread-m.h (thread_atfork): Define using __register_atfork.
10782 2002-12-30  Roland McGrath  <roland@redhat.com>
10784         * Rules (generated): Target removed.
10785         * mach/Makefile (generated): Define it here instead.
10787         * math/Makefile (generated): Add m_*l and m_*f variants too.
10789 2002-12-30  Ulrich Drepper  <drepper@redhat.com>
10791         * elf/dl-close.c (_dl_close): Handle relocation dependencies among
10792         the to-be-deleted objects right away instead of later separately.
10793         The latter fails because the scope data structures of the DSO
10794         might already be gone.
10796         * elf/Makefile: Add rules to build and run reldep8 test.
10797         * elf/reldep8.c: New file.
10798         * elf/reldep8mod1.c: New file.
10799         * elf/reldep8mod2.c: New file.
10800         * elf/reldep8mod3.c: New file.
10801         Contributed by Jakub Jelinek.
10803 2002-12-24  GOTO Masanori  <gotom@debian.or.jp>
10805         * sysdeps/unix/sysv/linux/getdents.c (__GETDENTS): Fix condition
10806         checking of return value ENOSYS from getdents64.
10808 2002-12-28  Andreas Schwab  <schwab@suse.de>
10810         * sysdeps/unix/Makefile: Include $(common-objpfx)s-proto-cancel.d.
10811         ($(common-objpfx)s-%.d): Generalized from
10812         $(common-objpfx)s-proto.d rule.
10813         (common-generated): Add s-proto-cancel.d.
10814         * sysdeps/unix/make-syscalls.sh: Use s-proto-cancel.d for
10815         cancellable syscalls.
10816         * sysdeps/unix/s-proto-cancel.S: New file.
10818 2002-12-29  Roland McGrath  <roland@redhat.com>
10820         * resolv/res_libc.c: Move _res defn magic after res_init defn
10821         so _res macro is in effect for that code.
10823         * Makerules ($(common-objpfx)%.h $(common-objpfx)%.h.d): Fix sed
10824         pattern for prepending $(..) so it doesn't affect $(foo).
10826         * math/Makefile (generated): Add $(addsuffix .c .S,$(calls:s_%=m_%)).
10828 2002-12-29  Jakub Jelinek  <jakub@redhat.com>
10830         * elf/cache.c (add_to_cache): Don't loop forever with 1ULL << 63 set
10831         in hwcap.
10833 2002-12-28  Ulrich Drepper  <drepper@redhat.com>
10835         * misc/sys/cdefs.h (__attribute_deprecated__): New #define.
10837 2002-12-28  Andreas Jaeger  <aj@suse.de>
10839         * sysdeps/generic/readelflib.c (process_elf_file): Cast value to
10840         avoid warning.
10841         * sysdeps/generic/dl-cache.c (_dl_load_cache_lookup): Likewise.
10843 2002-12-27  Jakub Jelinek  <jakub@redhat.com>
10845         * inet/herrno.c (__h_errno_location): Remove.
10846         * inet/Makefile (routines): Add herrno-loc.
10847         * resolv/res_libc.c (__res_state): Remove.
10848         * resolv/Makefile (routines): Add res-state.
10849         * sysdeps/generic/herrno-loc.c: New file.
10850         * sysdeps/generic/res-state.c: New file.
10852 2002-12-27  Jakub Jelinek  <jakub@redhat.com>
10854         * sysdeps/unix/sysv/linux/i386/sysdep.h (I386_USE_SYSENTER):
10855         Only define if USE_DL_SYSINFO is defined.
10857 2002-12-22  Jakub Jelinek  <jakub@redhat.com>
10859         * sysdeps/unix/sysv/linux/ia64/sysdep.h (INLINE_SYSCALL,
10860         INTERNAL_SYSCALL, INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERROR):
10861         Define. Patch by Richard Henderson and Jes Sorensen.
10862         (PSEUDO): Remove unnecessary ;;.
10863         * elf/rtld.c (dl_main): Initialize TLS even if no PT_TLS segments
10864         are found unless TLS_INIT_TP_EXPENSIVE.  Use NONTLS_INIT_TP.
10865         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Use NONTLS_INIT_TP
10866         if not initializing thread pointer.
10867         [!USE_TLS && NONTLS_INIT_TP] (__pthread_initialize_minimal): New.
10868         * sysdeps/generic/libc-start.c (__pthread_initialize_minimal): Don't
10869         make it weak also if NONTLS_INIT_TP.
10870         * sysdeps/unix/common/pause.c: Handle cancellation.
10871         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h [DONT_LOAD_G1]
10872         (LOADSYSCALL): Remove.
10873         (SYSCALL_ERROR_HANDLER_ENTRY): Define.
10874         (SYSCALL_ERROR_HANDLER): Use it.
10875         (PSEUDO): Don't jump around error handler.
10876         * sysdeps/unix/sysv/linux/sparc/sparc32/pipe.S (__libc_pipe): Don't
10877         jump around error handler.
10878         * sysdeps/unix/sysv/linux/sparc/sparc32/syscall.S (syscall): Likewise.
10879         * sysdeps/unix/sysv/linux/sparc/sparc32/socket.S (__socket): Branch
10880         to __syscall_error_handler on failure.
10881         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h [DONT_LOAD_G1]
10882         (LOADSYSCALL): Remove.
10883         (SYSCALL_ERROR_HANDLER_ENTRY): Define.
10884         (SYSCALL_ERROR_HANDLER): Use it.
10885         (PSEUDO): Don't jump around error handler.
10886         * sysdeps/unix/sysv/linux/sparc/sparc64/pipe.S (__libc_pipe): Don't
10887         jump around error handler.
10888         * sysdeps/unix/sysv/linux/sparc/sparc64/syscall.S (syscall): Likewise.
10889         * sysdeps/unix/sysv/linux/sparc/sparc64/socket.S (__socket): Branch
10890         to __syscall_error_handler on failure.
10892 2002-12-27  Roland McGrath  <roland@redhat.com>
10894         * scripts/gen-as-const.awk: New file.
10895         * Makefile (distribute): Add it.
10896         * Makerules ($(common-objpfx)%.h %.h.d: %.sym): New pattern rule.
10897         (before-compile): Add $(gen-as-const-headers:%.sym=$(common-objpfx)%.h)
10898         to the list.
10899         (+depfiles): Add $(addprefix $(common-objpfx),$(gen-as-const-headers)).
10901 2002-12-27  Andreas Schwab  <schwab@suse.de>
10903         * sysdeps/unix/sysv/linux/m68k/socket.S: Add cancellation support.
10905 2002-12-27  Jakub Jelinek  <jakub@redhat.com>
10907         * malloc/arena.c (ptmalloc_init): Don't call next_env_entry if
10908         _environ is NULL.
10910 2002-12-27  Andreas Schwab  <schwab@suse.de>
10912         * Makerules ($(common-objpfx)%.make): Filter through
10913         $(sed-remove-objpfx).
10915 2002-12-23  Roland McGrath  <roland@redhat.com>
10917         * scripts/abilist.awk: Produce a more compact format, divided into
10918         stanzas for each version set, the set name listed only once.
10919         * scripts/extract-abilist.awk: New file.
10920         * scripts/merge-abilist.awk: New file.
10921         * Makerules (check-abi-%, update-abi-%): New pattern rules.
10922         (update-abi, check-abi): New targets.
10923         * Makefile (+subdir_targets): Add subdir_{check,update}-abi.
10925 2002-12-19  Roland McGrath  <roland@redhat.com>
10927         * Makerules (%.symlist): Use LC_ALL=C when running awk script.
10929         * sysdeps/unix/sysv/linux/i386/brk.c (__brk): Cast result of
10930         INTERNAL_SYSCALL.
10932 2002-12-21  Andreas Schwab  <schwab@suse.de>
10934         * elf/check-textrel.c (handle_file): Swap p_type.
10936 2002-12-21  Andreas Schwab  <schwab@suse.de>
10938         * sysdeps/unix/sysv/linux/m68k/sysdep.h (INTERNAL_SYSCALL): Define.
10939         (INLINE_SYSCALL): Use it.
10940         (INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Define.
10941         (SYSCALL_ERROR_HANDLER): Define RTLD_PRIVATE_ERRNO variant.
10943         * sysdeps/unix/sysv/linux/m68k/getpagesize.c: Use INTERNAL_SYSCALL.
10944         * sysdeps/unix/sysv/linux/m68k/brk.c: Likewise.
10946 2002-12-20  Art Haas  <ahaas@airmail.net>
10948         * sysdeps/gnu/siglist.c: Convert GCC extension initializer
10949         syntax to C99.
10951 2002-12-21  Philip Blundell  <philb@gnu.org>
10953         * sysdeps/arm/elf/start.S (_start): Optimise a little.  Push stack
10954         top as seventh arg to __libc_start_main.
10955         Reported by paulnash@wildseed.com.
10957         * sysdeps/unix/sysv/linux/arm/clone.S: Small optimisation.
10959         * sysdeps/unix/sysv/linux/arm/sigcontextinfo.h: Elide
10960         compatibility cruft when new enough kernel is assumed.
10962 2002-12-20  Jakub Jelinek  <jakub@redhat.com>
10964         * sysdeps/unix/sysv/linux/i386/brk.c (__brk): Use INTERNAL_SYSCALL
10965         instead of INLINE_SYSCALL.
10967 2002-12-20  Ulrich Drepper  <drepper@redhat.com>
10969         * sysdeps/unix/sysv/linux/i386/sigaction.c (__libc_sigaction): Fix
10970         typo.
10972         * sysdeps/unix/sysv/linux/alpha/bits/shm.h: Define SHM_HUGETLB.
10973         * sysdeps/unix/sysv/linux/bits/shm.h: Likewise.
10974         * sysdeps/unix/sysv/linux/hppa/bits/shm.h: Likewise.
10975         * sysdeps/unix/sysv/linux/ia64/bits/shm.h: Likewise.
10976         * sysdeps/unix/sysv/linux/mips/bits/shm.h: Likewise.
10977         * sysdeps/unix/sysv/linux/powerpc/bits/shm.h: Likewise.
10978         * sysdeps/unix/sysv/linux/s390/bits/shm.h: Likewise.
10979         * sysdeps/unix/sysv/linux/sparc/bits/shm.h: Likewise.
10980         * sysdeps/unix/sysv/linux/x86_64/bits/shm.h: Likewise.
10981         Patch by William Lee Irwin <wli@holomorphy.com>.
10983 2002-12-20  Andreas Schwab  <schwab@suse.de>
10985         * locale/programs/ld-measurement.c (measurement_output): Fix
10986         index calculation.
10988 2002-12-20  Ulrich Drepper  <drepper@redhat.com>
10990         * include/libio.h [_IO_MTSAFE_IO && _IO_lock_inexpensive]:
10991         Redefine _IO_flockifle and _IO_funlockfile as inlines.
10993         * sysdeps/generic/dl-sysdep.c (_dl_important_hwcaps): For TLS
10994         builds add "tls" in the search path.
10995         * elf/ldconfig.c (is_hwcap_platform): Also recognize "tls".
10996         (path_hwcap): Recognize "tls".
10998 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
11000         * sysdeps/unix/sysv/linux/i386/system.c (cancel_handler): Use
11001         __waitpid instead of waitpid.
11003         * sysdeps/unix/sysv/linux/i386/_exit.S: Use ENTER_KERNEL instead of
11004         int $0x80.
11005         * sysdeps/unix/sysv/linux/i386/getcontext.S: Likewise.
11006         * sysdeps/unix/sysv/linux/i386/setcontext.S: Likewise.
11007         * sysdeps/unix/sysv/linux/i386/swapcontext.S: Likewise.
11009         * sysdeps/unix/sysv/linux/i386/sysdep.h: Add support to use AT_SYSINFO
11010         information for system calls.
11012         * sysdeps/generic/dl-sysdep.h: Define RTLD_PRIVATE_ERRNO to 1 only
11013         for ld.so.
11015         * elf/rtld.c (_dl_start) [USE___THREAD]: Define initdtv.
11017 2002-12-19  Roland McGrath  <roland@redhat.com>
11019         * iconvdata/ibm856.h: Convert GCC extension initializer syntax to C99.
11020         * iconvdata/ibm922.h: Likewise.
11021         * iconvdata/ibm930.h: Likewise.
11022         * iconvdata/ibm932.h: Likewise.
11023         * iconvdata/ibm933.h: Likewise.
11024         * iconvdata/ibm935.h: Likewise.
11025         * iconvdata/ibm937.h: Likewise.
11026         * iconvdata/ibm939.h: Likewise.
11027         * iconvdata/ibm943.h: Likewise.
11028         * iconvdata/isiri-3342.h: Likewise.
11030 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
11032         * test-skeleton.c (main): Make sure correct value is seen as
11033         argv[0] after adjustment of argv, and argc.
11035         * elf/rtld.c: Don't initialize _dl_dynamic_weak to 1 if
11036         RTLD_CORRECT_DYNAMIC_WEAK is defined.
11038 2002-12-19  Jakub Jelinek  <jakub@redhat.com>
11040         * nscd/connections.c (nscd_run): Shut up warning.
11041         * tst-ungetc.c (assert): Undefined before redefining.
11043 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
11045         * posix/regex.c: Use __builtin_expect even outside glibc if gcc 3
11046         is used.
11048 2002-12-17  Art Haas  <ahaas@airmail.net>
11050         * iconvdata/cp737.h: Convert GCC extension initializer syntax to C99.
11051         * iconvdata/cp775.h: Likewise.
11052         * iconvdata/ibm1046.h: Likewise.
11053         * iconvdata/ibm1124.h: Likewise.
11054         * iconvdata/ibm1129.h: Likewise.
11055         * iconvdata/ibm1132.h: Likewise.
11056         * iconvdata/ibm1133.h: Likewise.
11057         * iconvdata/ibm1160.h: Likewise.
11058         * iconvdata/ibm1161.h: Likewise.
11059         * iconvdata/ibm1162.h: Likewise.
11060         * iconvdata/ibm1163.h: Likewise.
11061         * iconvdata/ibm1164.h: Likewise.
11063 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
11065         * sysdeps/unix/sysv/linux/i386/system.c: Define FORK only if
11066         __ASSUME_CLONE_THREAD_FLAGS is defined.
11067         * sysdeps/unix/sysv/linux/kernel-features.h
11068         (__ASSUME_CLONE_THREAD_FLAGS): Define for x86 and kernel >= 2.5.50.
11070 2002-12-18  Ulrich Drepper  <drepper@redhat.com>
11072         * sysdeps/unix/sysv/linux/i386/brk.c: Use INTERNAL_SYSCALL instead
11073         of asm.
11074         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
11076         * elf/dl-support.c [NEED_DL_SYSINFO]: Define and initialize
11077         _dl_sysinfo.
11078         [DL_SYSINFO_IMPLEMENTATION]: If defined use it to generate the needed
11079         code.
11080         * elf/rtld.c [DL_NEED_SYSINFO]: Initialize _dl_sysinfo element of
11081         _rtld_global.
11082         [DL_SYSINFO_IMPLEMENTATION]: If defined use it to generate the needed
11083         code.
11084         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start) [NEED_DL_SYSINFO]:
11085         Check for AT_SYSINFO and set _dl_sysinfo appropriately.
11086         * sysdeps/generic/ldsodefs.h (struct rtld_global) [NEED_DL_SYSINFO]:
11087         Add _dl_sysinfo.
11089 2002-12-18  Jakub Jelinek  <jakub@redhat.com>
11091         * misc/Versions [libc: GLIBC_2.3.1]: Move __libc_readv and
11092         __libc_writev to...
11093         [libc: GLIBC_PRIVATE]: ...here.
11094         * sysvipc/Versions [libc: GLIBC_2.3.1]: Move __libc_msgrcv and
11095         __libc_msgsnd to...
11096         [libc: GLIBC_PRIVATE]: ...here.
11098 2002-12-18  Ulrich Drepper  <drepper@redhat.com>
11100         * sysdeps/unix/sysv/linux/i386/sysdep.h: Define ENTER_KERNEL macro.
11101         Use it instead of directly int $0x80.
11102         * sysdeps/unix/sysv/linux/i386/brk.c: Use ENTER_KERNEL.
11103         * sysdeps/unix/sysv/linux/i386/mmap64.S: Likewise.
11104         * sysdeps/unix/sysv/linux/i386/mmap.S: Likewise.
11105         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
11106         * sysdeps/unix/sysv/linux/i386/socket.S: Likewise.
11107         * sysdeps/unix/sysv/linux/i386/syscall.S: Likewise.
11109 2002-12-17  Ulrich Drepper  <drepper@redhat.com>
11111         * malloc/malloc.c (mALLOPt): Make sure malloc is initialized.
11113         * elf/elf.h (AT_SYSINFO): New define.
11114         * sysdeps/generic/dl-sysdep.c (_dl_show_auxv): Add support for
11115         AT_SYSINFO.
11117 2002-12-17  Jakub Jelinek  <jakub@redhat.com>
11119         * sysdeps/unix/sysv/linux/alpha/syscalls.list (msgrcv, msgsnd):
11120         Make cancelable.
11121         * sysdeps/unix/sysv/linux/hppa/syscalls.list (msgrcv, msgsnd):
11122         Likewise.
11123         * sysdeps/unix/sysv/linux/ia64/syscalls.list (msgrcv, msgsnd):
11124         Likewise.
11125         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (msgrcv, msgsnd):
11126         Likewise.
11127         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (msgrcv, msgsnd):
11128         Likewise.
11129         * sysdeps/unix/sysv/linux/ia64/sigsuspend.c (__sigsuspend): Likewise.
11131         * malloc/thread-m.h (mutex_init, mutex_lock, mutex_trylock,
11132         mutex_unlock): If not building NPTL, use __libc_maybe_call2 if
11133         available, otherwise __libc_maybe_call.
11134         * sysdeps/unix/sysv/linux/x86_64/recv.c: Add support for
11135         cancellation handling.
11136         * sysdeps/unix/sysv/linux/x86_64/send.c: Likewise.
11138 2002-12-17  Isamu Hasegawa  <isamu@yamato.ibm.com>
11140         * posix/regcomp.c (free_workarea_compile): Free the new member
11141         ORG_INDICES.
11142         (analyze): Initialize ORG_INDICES.
11143         (duplicate_node_closure): Search for a existing node, which is
11144         duplicated from the node ORG_DEST and satisfies the constraint
11145         CONSTRAINT.  And use it to avoid inifimite loop.
11146         (search_duplicated_node): New function.
11147         (duplicate_node): Store the index of the original node.
11148         * posix/regex_internal.c (re_dfa_add_node): Realloc ORG_INDICES
11149         if needed.
11150         * posix/regex_internal.h (re_dfa_t): Add new members.
11152 2002-12-17  Ulrich Drepper  <drepper@redhat.com>
11154         * stdio-common/tst-fdopen.c: Undefine assert before redefining it.
11156 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
11158         * sysdeps/posix/system.c (do_system): Add support for installation
11159         of cancellation handlers.
11160         * sysdeps/unix/sysv/linux/i386/system.c: New file.
11162         * stdlib/Makefile (tests): Add tst-system.
11163         * stdlib/tst-system.c: New file.
11165         * sysdeps/unix/sysv/linux/i386/socket.S [NEED_CANCELLATION &&
11166         CENABLE]: Don't lose content of %ebx.
11168 2002-12-17  Jakub Jelinek  <jakub@redhat.com>
11170         * sysdeps/unix/sysv/linux/i386/socket.S: Use SINGLE_THREAD_P
11171         macro instead of comparing %gs:MULTIPLE_THREADS_OFFSET directly.
11173 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
11175         * sysdeps/posix/getaddrinfo.c (gaih_inet): If __nss_lookup_function
11176         fails to return a function pointer don't use it.
11178 2002-12-16  Art Haas  <ahaas@airmail.net>
11180         * io/ftw.c: Convert GCC extension initializer syntax to C99.
11181         * iconvdata/iso-ir-165.c: Likewise.
11182         * iconvdata/jis0208.c: Likewise.
11183         * iconvdata/jis0212.c: Likewise.
11185 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
11187         * sysdeps/unix/sysv/linux/syscalls.list: Add epoll_create,
11188         epoll_ctl, and epoll_wait.
11189         * sysdeps/unix/sysv/linux/Versions [libc: GLIBC_2.3.2]: Add
11190         epoll_create, epoll_ctl, and epoll_wait.
11191         * sysdeps/unix/sysv/linux/sys/epoll.h: New file.  Written by
11192         Davide Libenzi <davidel@xmailserver.org>.
11193         * sysdeps/unix/sysv/linux/Dist: Add sys/epoll.h.
11194         * sysdeps/unix/sysv/linux/Makefile [subdir=misc] (sysdep_headers):
11195         Add sys/epoll.h.
11197 2002-12-16  Art Haas  <ahaas@airmail.net>
11199         * sysdeps/generic/bp-semctl.h: Convert GCC extension initializer
11200         syntax to C99
11201         * sysdeps/unix/sysv/aix/settimer.c: Likewise.
11202         * sysdeps/unix/sysv/aix/sleep.c: Likewise.
11203         * sysdeps/unix/sysv/aix/usleep.c: Likewise.
11205 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
11207         * stdio-common/Makefile (routines): Remove lockfile.  Add
11208         flockfile, ftrylockfile, and funlockfile.
11209         * sysdeps/generic/lockfile.c: Removed.  Each function has its own file.
11210         * sysdeps/generic/flockfile.c: New file.
11211         * sysdeps/generic/ftrylockfile.c: New file.
11212         * sysdeps/generic/funlockfile.c: New file.
11214 2002-12-16  Jakub Jelinek  <jakub@redhat.com>
11216         * sysdeps/unix/sysv/linux/i386/socket.S: Use CENABLE and CDISABLE
11217         macros instead of doing the calls directly.
11218         * sysdeps/unix/make-syscalls.sh: Add ptw-*.$o target name to rules.
11219         * Makerules ($(+sysdir_pfx)sysd-rules): Emit rules for ptw-%
11220         targets.
11222 2002-12-16  Jakub Jelinek  <jakub@redhat.com>
11224         * sysdeps/i386/fpu/bits/mathinline.h: Backout last change.
11225         * sysdeps/ieee754/bits/nan.h: Likewise.
11227         * sysdeps/unix/sysv/linux/ia64/syscalls.list (__syscall_open,
11228         __syscall_wait4, __syscall_ioctl, __syscall_write): Add.
11230 2002-12-16  Roland McGrath  <roland@redhat.com>
11232         * sunrpc/xdr_mem.c (xdrmem_inline): Fix argument type.
11233         * sunrpc/xdr_rec.c (xdrrec_inline): Likewise.
11234         * sunrpc/xdr_stdio.c (xdrstdio_inline): Likewise.
11236         * sysdeps/unix/sysv/linux/syscalls.list: Add getpmsg, putpmsg.
11237         * sysdeps/unix/sysv/linux/mips/syscalls.list: Remove s_getpmsg,
11238         s_putpmsg.
11239         * sysdeps/unix/sysv/linux/i386/getpmsg.c: File removed.
11240         * sysdeps/unix/sysv/linux/i386/putpmsg.c: File removed.
11241         * sysdeps/unix/sysv/linux/m68k/getpmsg.c: File removed.
11242         * sysdeps/unix/sysv/linux/m68k/putpmsg.c: File removed.
11243         * sysdeps/unix/sysv/linux/mips/getpmsg.c: File removed.
11244         * sysdeps/unix/sysv/linux/mips/putpmsg.c: File removed.
11245         * sysdeps/unix/sysv/linux/powerpc/getpmsg.c: File removed.
11246         * sysdeps/unix/sysv/linux/powerpc/putpmsg.c: File removed.
11248 2002-12-13  Paul Eggert  <eggert@twinsun.com>
11250         * sunrpc/rpc/xdr.h (struct XDR.xdr_ops.x_inline): 2nd arg
11251         is now u_int, not int.
11252         (struct XDR.x_handy): Now u_int, not int.
11253         * sunrpc/xdr_mem.c: Include <limits.h>.
11254         (xdrmem_getlong, xdrmem_putlong, xdrmem_getbytes, xdrmem_putbytes,
11255         xdrmem_inline, xdrmem_getint32, xdrmem_putint32):
11256         x_handy is now unsigned, not signed.
11257         Do not decrement x_handy if no change is made.
11258         (xdrmem_setpos): Check for int overflow.
11259         * sunrpc/xdr_sizeof.c (x_inline): 2nd arg is now unsigned.
11260         (xdr_sizeof): Remove cast that is now unnecessary, now that
11261         x_handy is unsigned.
11263 2002-12-15  Art Haas  <ahaas@airmail.net>
11265         * iconv/gconv_conf.c: Convert GCC extension initializer syntax to C99.
11266         * iconvdata/gap.awk: Likewise.
11267         * iconvdata/gen-8bit-gap-1.sh: Likewise.
11268         * iconvdata/gen-8bit-gap.sh: Likewise.
11269         * locale/C-address.c: Likewise.
11270         * locale/C-collate.c: Likewise.
11271         * locale/C-ctype.c: Likewise.
11272         * locale/C-identification.c: Likewise.
11273         * locale/C-measurement.c: Likewise.
11274         * locale/C-messages.c: Likewise.
11275         * locale/C-monetary.c: Likewise.
11276         * locale/C-name.c: Likewise.
11277         * locale/C-numeric.c: Likewise.
11278         * locale/C-paper.c: Likewise.
11279         * locale/C-telephone.c: Likewise.
11280         * locale/C-time.c: Likewise.
11281         * nscd/connections.c: Likewise.
11282         * nscd/grpcache.c: Likewise.
11283         * nscd/hstcache.c: Likewise.
11284         * nscd/pwdcache.c: Likewise.
11285         * stdio-common/vfprintf.c: Likewise.
11286         * stdlib/random.c: Likewise.
11287         * sysdeps/generic/siglist.c: Likewise.
11288         * sysdeps/i386/fpu/bits/mathinline.h: Likewise.
11289         * sysdeps/ieee754/bits/nan.h: Likewise.
11290         * sysdeps/posix/sprofil.c: Likewise.
11291         * sysdeps/unix/sysv/linux/sleep.c: Likewise.
11292         * sysdeps/unix/sysv/linux/sysctl.c: Likewise.
11293         * sysdeps/unix/sysv/linux/usleep.c: Likewise.
11295 2002-12-15  Roland McGrath  <roland@redhat.com>
11297         * sysdeps/unix/sysv/linux/readv.c (do_readv): Use prototype defn.
11299         * sysdeps/unix/sysv/linux/wait.c: Don't include <nptl/pthreadP.h> or
11300         <tls.h> here, no need for it.
11301         * sysdeps/unix/sysv/linux/waitpid.c: Likewise.
11303         * sysdeps/unix/sysv/linux/i386/fcntl.c (do_fcntl): Take ARG as void *
11304         parameter, not varargs parameter.
11306         * sysdeps/generic/sysdep-cancel.h (LIBC_CANCEL_RESET): Evaluate the
11307         argument so it's not an unused variable.
11309         * resolv/resolv.h (__p_key_syms, __p_cert_syms, __p_class_syms,
11310         __p_type_syms, __p_rcode_syms): Remove decls, never really intended
11311         for users.
11313         * resolv/Versions (libresolv: GLIBC_2.3.2): New set, add __p_rcode.
11315 2002-12-15  Ulrich Drepper  <drepper@redhat.com>
11317         * sysdeps/unix/sysv/linux/i386/fcntl.c (do_fcntl): This is the
11318         original __libc_fcntl code.  Just renamed.
11320 2002-12-15  Andreas Schwab  <schwab@suse.de>
11322         * sysdeps/unix/sysv/linux/m68k/clone.S: Make inline syscall to _exit.
11324 2002-12-14  Olaf Hering  <olh@suse.de>
11326         * sysdeps/powerpc/bits/setjmp.h: Include <bits/wordsize.h>.
11327         * sysdeps/powerpc/powerpc64/setjmp.S: Fix typo in r18 load.
11329 2002-12-15  Ulrich Drepper  <drepper@redhat.com>
11331         * sysdeps/unix/sysv/linux/libc_fatal.c: New file.
11333         * sysdeps/generic/sysdep-cancel.h: Add dummy definitions for
11334         SINGLE_THREAD_P, LIBC_CANCEL_ASYNC, and LIBC_CANCEL_RESET.
11336         * sysdeps/unix/sysv/linux/open64.c: New file.
11338         * sysdeps/generic/pselect.c: Add support for cancellation handling.
11339         * sysdeps/posix/open64.c: Likewise.
11340         * sysdeps/posix/sigpause.c: Likewise.
11341         * sysdeps/posix/sigwait.c: Likewise.
11342         * sysdeps/posix/system.c: Likewise.
11343         * sysdeps/posix/waitid.c: Likewise.
11344         * sysdeps/unix/sysv/linux/accept.S: Likewise.
11345         * sysdeps/unix/sysv/linux/connect.S: Likewise.
11346         * sysdeps/unix/sysv/linux/llseek.c: Likewise.
11347         * sysdeps/unix/sysv/linux/msgrcv.c: Likewise.
11348         * sysdeps/unix/sysv/linux/msgsnd.c: Likewise.
11349         * sysdeps/unix/sysv/linux/poll.c: Likewise.
11350         * sysdeps/unix/sysv/linux/pread.c: Likewise.
11351         * sysdeps/unix/sysv/linux/pread64.c: Likewise.
11352         * sysdeps/unix/sysv/linux/pwrite.c: Likewise.
11353         * sysdeps/unix/sysv/linux/pwrite64.c: Likewise.
11354         * sysdeps/unix/sysv/linux/readv.c: Likewise.
11355         * sysdeps/unix/sysv/linux/recv.S: Likewise.
11356         * sysdeps/unix/sysv/linux/recvfrom.S: Likewise.
11357         * sysdeps/unix/sysv/linux/recvmsg.S: Likewise.
11358         * sysdeps/unix/sysv/linux/send.S: Likewise.
11359         * sysdeps/unix/sysv/linux/sendmsg.S: Likewise.
11360         * sysdeps/unix/sysv/linux/sendto.S: Likewise.
11361         * sysdeps/unix/sysv/linux/sigsuspend.c: Likewise.
11362         * sysdeps/unix/sysv/linux/sigtimedwait.c: Likewise.
11363         * sysdeps/unix/sysv/linux/sigwait.c: Likewise.
11364         * sysdeps/unix/sysv/linux/sigwaitinfo.c: Likewise.
11365         * sysdeps/unix/sysv/linux/tcdrain.c: Likewise.
11366         * sysdeps/unix/sysv/linux/wait.c: Likewise.
11367         * sysdeps/unix/sysv/linux/waitpid.c: Likewise.
11368         * sysdeps/unix/sysv/linux/writev.c: Likewise.
11369         * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.
11370         * sysdeps/unix/sysv/linux/i386/socket.S: Likewise.
11372 2002-12-14  Jakub Jelinek  <jakub@redhat.com>
11374         * sysdeps/generic/sysdep-cancel.h: New file.
11375         * sysdeps/unix/make-syscalls.sh: Handle C at start of args as
11376         cancelable syscall.
11377         * sysdeps/unix/inet/syscalls.list (accept, connect, recv, recvfrom,
11378         recvmsg, send, sendmsg, sendto): Make cancelable.
11379         * sysdeps/unix/mman/syscalls.list (msync): Likewise.
11380         * sysdeps/unix/sysv/linux/alpha/syscalls.list (llseek, pread,
11381         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
11382         sendto, osf_select): Likewise.
11383         * sysdeps/unix/sysv/linux/hppa/syscalls.list (accept, connect, recv,
11384         recvfrom, recvmsg, send, sendmsg, sendto): Likewise.
11385         * sysdeps/unix/sysv/linux/ia64/syscalls.list (llseek, pread,
11386         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
11387         sendto): Likewise.
11388         * sysdeps/unix/sysv/linux/mips/syscalls.list (accept, connect, recv,
11389         recvfrom, recvmsg, send, sendmsg, sendto): Likewise.
11390         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (llseek, pread,
11391         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
11392         sendto): Likewise.
11393         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list (llseek, pread,
11394         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
11395         sendto, select): Likewise.
11396         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (llseek, pread,
11397         pwrite, accept, connect, recvfrom, recvmsg, sendmsg, sendto):
11398         Likewise.
11399         * sysdeps/unix/sysv/linux/syscalls.list (creat, nanosleep, pause,
11400         select, fcntl): Likewise.
11401         * sysdeps/unix/sysv/syscalls.list (pause, poll): Likewise.
11402         * sysdeps/unix/syscalls.list (close, fcntl, fsync, lseek, open,
11403         read, readv, select, sigsuspend, write, writev): Likewise.
11405 2002-12-14  Jakub Jelinek  <jakub@redhat.com>
11407         * dirent/bug-readdir1.c: Include unistd.h.
11409 2002-12-13  Jakub Jelinek  <jakub@redhat.com>
11411         * locale/programs/locale.c: Include locarchive.h.
11412         (ARCHIVE_NAME): Define.
11413         (write_archive_locales): New function.
11414         (write_locales): Use it.  Ensure the same locale is not printed
11415         multiple times in verbose mode.
11416         Mode LC_IDENTIFICATION and LC_CTYPE printing into...
11417         (print_LC_IDENTIFICATION, print_LC_CTYPE): ... these helper
11418         functions.
11419         (struct nameent): New type.
11420         (nameentcmp): New function.
11422 2002-12-14  Jakub Jelinek  <jakub@redhat.com>
11424         * posix/regex_internal.c (re_string_context_at): Guard wide char
11425         code with #ifdef RE_ENABLE_I18N.
11427 2002-11-22  Paolo Bonzini  <bonzini@gnu.org>
11429         * posix/regcomp.c (regcomp): __re_compile_fastmap -> re_compile_fastmap
11431 2002-12-13  Roland McGrath  <roland@redhat.com>
11433         * posix/bug-regex15.c: New file.
11434         * posix/Makefile (tests): Add it.
11436         * test-skeleton.c (TEST_DATA_LIMIT): New macro, default to 64MB.
11437         (main): Set RLIMIT_DATA limit to TEST_DATA_LIMIT (or lower if need be).
11439 2002-12-13  Ulrich Drepper  <drepper@redhat.com>
11441         * elf/dl-misc.c (_dl_debug_vdprintf): Don't depend on 5-digit PIDs.
11443         * misc/syslog.c (log_cleanup): Don't use parameter in
11444         __libc_lock_unlock call, use syslog_lock directly.  Adjust callers to
11445         pass NULL instead of a pointer to syslog_lock.
11447 2002-12-12  Ulrich Drepper  <drepper@redhat.com>
11449         * iconvdata/Makefile: iconv-rules: Add definition to use gconv.map
11450         linker map for all iconv modules.
11451         (distribute): Add gconv.map.
11452         * iconvdata/gconv.map: New file.
11454         * elf/Makefile: Also check all iconv modules for text relocations.
11456         * stdlib/Makefile: Remove code to automatically import GMP.
11458         * elf/Makefile (tests): Add rules to build and run check-textrel.
11459         * elf/check-textrel.c: New file.
11461         * sysdeps/unix/sysv/linux/i386/sysdep.h (SETUP_PIC_REG): Add .size
11462         directive.
11464 2002-12-11  Jakub Jelinek  <jakub@redhat.com>
11466         * io/test-utime (main): If stnow.st[am]time is wrong, print it and
11467         not st.st[am]time.
11469 2002-04-30  Bruno Haible  <bruno@clisp.org>
11471         * intl/loadmsgcat.c (_nl_init_domain_conv): Don't append //TRANSLIT to
11472         the encoding if it already has slashes.
11473         Reported by Perry Rapp <prapp@erols.com>.
11475 2002-12-11  Roland McGrath  <roland@redhat.com>
11477         * csu/Makefile ($(objpfx)elf-init.oS): Remove target, braino.
11478         (CPPFLAGS-elf-init.oS, CFLAGS-elf-init.oS): New variables.
11479         Turn off PIC for compiling this file.
11481 2002-12-11  Ulrich Drepper  <drepper@redhat.com>
11483         * malloc/thread-m.h: Remove thread_id type and MUTEX_INITIALIZER
11484         definitions.  Not needed.
11485         [_LIBC]: Use definitions from libc-lock.h instead of referencing
11486         pthread routines directly.
11487         * malloc/arena.c (ptmalloc_unlock_all2): Don't add (void) to
11488         mutex_init calls.
11489         (arena_get2): Don't look at return value of mutex_lock.
11491 2002-12-11  Roland McGrath  <roland@redhat.com>
11493         * csu/Makefile ($(objpfx)elf-init.oS): New target, just clone
11494         elf-init.o instead of compiling a PIC version.
11496 2002-12-11  Bruno Haible  <bruno@clisp.org>
11498         * intl/gettext.h: Renamed to ...
11499         * intl/gmo.h: ... here.
11500         * intl/Makefile (distribute): Add gmo.h, remove gettext.h.
11501         * intl/gettextP.h: Update.
11502         * intl/loadmsgcat.c: Update.
11504         * intl/gettextP.h (PARAMS): Make more portable.
11505         (attribute_hidden): Define as empty macro if not already defined.
11506         * intl/hash-string.h (PARAMS): Make more portable.
11507         * intl/loadinfo.h (PARAMS): Likewise.
11508         * intl/plural-exp.h (PARAMS): Likewise.
11509         (attribute_hidden): Move definition near the definition of
11510         internal_function.
11512         * intl/gettextP.h (_nl_locale_name) [!_LIBC]: New declaration.
11513         * intl/plural-exp.h (plural_eval) [!_LIBC]: New declaration.
11515 2002-07-13  Bruno Haible  <bruno@clisp.org>
11517         * intl/dcigettext.c (freea): New macro.
11518         (FREE_BLOCKS): Free also the registered blocks.
11519         (DCIGETTEXT): Free the 'search' variable.
11520         Reported by Andreas Fischer <a.fischer@asentics.de>.
11522 2002-04-27  Bruno Haible  <bruno@clisp.org>
11524         * intl/gettextP.h [! _LIBC]: Use prefix libintl_ instead of suffix __.
11525         * intl/dcigettext.c: Likewise.
11526         * intl/dcgettext.c: Likewise.
11527         * intl/dgettext.c: Likewise.
11528         * intl/gettext.c: Likewise.
11529         * intl/dcngettext.c: Likewise.
11530         * intl/dngettext.c: Likewise.
11531         * intl/ngettext.c: Likewise.
11532         * intl/textdomain.c: Likewise.
11533         * intl/bindtextdom.c: Likewise.
11534         * intl/plural-exp.h: Likewise.
11536 2002-01-02  Bruno Haible  <bruno@clisp.org>
11538         * intl/loadmsgcat.c (_nl_init_domain_conv): Use PARAMS in extern decl.
11540 2001-04-30  Bruno Haible  <bruno@clisp.org>
11542         * intl/dcigettext.c (getuid, getgid, geteuid, getegid): Provide
11543         default macro definitions.  Needed for mingw32.
11545 2002-12-10  Ulrich Drepper  <drepper@redhat.com>
11547         * sysdeps/i386/bits/byteswap.h (__bswap_64): Apply
11548         __builtin_constant_p to macro parameter.
11550         * sysdeps/generic/sigpause.c: Define all functions as weak.
11551         * sysdeps/posix/sigpause.c: Likewise.
11553         * elf/tst-tls7.c (do_test): Adjustments for l_tls_modid being of
11554         type size_t.
11556 2002-12-10  Jakub Jelinek  <jakub@redhat.com>
11558         * elf/tst-array1.c (preinit_array, init_array, fini_array):
11559         Explicitly align the array to sizeof (void *).
11560         * elf/tst-array2dep.c (init_array, fini_array): Likewise.
11562         * include/libc-symbols.h: Fix a comment typo.
11564         * sysdeps/unix/sysv/linux/alpha/select.S (__libc_select): New alias.
11565         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S (__libc_sigsuspend):
11566         Likewise.
11567         * sysdeps/unix/sysv/linux/ia64/sigsuspend.c (__libc_sigsuspend):
11568         Likewise.
11569         * sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c
11570         (__libc_sigsuspend): Likewise.
11571         * sysdeps/unix/sysv/linux/sparc/sparc64/sigsuspend.c
11572         (__libc_sigsuspend): Likewise.
11573         * sysdeps/generic/creat.c (__libc_creat): Renamed from creat.
11574         (creat): New weak alias.
11576 2002-12-10  Roland McGrath  <roland@redhat.com>
11578         * manual/libc-texinfo.sh: Emit @set ADD-ON for each ADD-ON that
11579         contributes a manual chapter.
11580         * manual/signal.texi (Process Signal Mask): Use @ifset linuxthreads
11581         around xref to it.
11583         * sysdeps/unix/sysv/linux/dl-librecon.h (EXTRA_LD_ENVVARS): Refer to
11584         and move contents to ...
11585         (EXTRA_LD_ENVVARS_LINUX): ... this new macro.  Add break for nonmatch.
11586         * sysdeps/unix/sysv/linux/i386/dl-librecon.h (EXTRA_LD_ENVVARS): Use
11587         it instead of duplicating its contents.
11588         (EXTRA_LD_ENVVARS): Likewise.  Add break for nonmatch.
11590 2002-12-09  Jakub Jelinek  <jakub@redhat.com>
11592         * elf/dl-support.c (_dl_non_dynamic_init): Add DL_OSVERSION_INIT if
11593         defined.
11594         * sysdeps/unix/sysv/linux/dl-librecon.h (_dl_osversion_init): New
11595         function.
11596         (EXTRA_LD_ENVVARS): Use it.
11597         (DL_OSVERSION_INIT): Define.
11598         * sysdeps/unix/sysv/linux/i386/dl-librecon.h: Include linux
11599         dl-librecon.h.
11600         (EXTRA_LD_ENVVARS): Undef before defining.  Use _dl_osversion_init.
11602 2002-12-10  Ulrich Drepper  <drepper@redhat.com>
11604         * Versions.def: No new symbols in 2.3.1, but some new ones in 2.3.2.
11606         * sysdeps/unix/closedir.c (__closedir): Remove __libc_lock_lock
11607         call.  It is not allowed to destroy pthread mutexes which are
11608         still in use even though it is safe for our implementations.  If
11609         somebody still uses the descriptor it is a bug.
11611 2002-12-09  Richard Henderson  <rth@redhat.com>
11613         * csu/abi-note.S: Use .p2align, not .align.
11615 2002-12-09  Ulrich Drepper  <drepper@redhat.com>
11617         * sysdeps/unix/sysv/linux/syscalls.list: Add __libc_creat and
11618         __libc_select aliases.
11620         * sysdeps/unix/sysv/linux/sigwaitinfo.c: Define __libc_sigwaitinfo
11621         alias.
11623         * sysdeps/unix/sysv/linux/sigwait.c: Define __libc_sigwait alias.
11625         * sysdeps/unix/sysv/linux/sigsuspend.c: Define __libc_sigsuspend alias.
11627         * sysdeps/unix/sysv/linux/poll.c: Define __libc_poll alias.
11629         * sysdeps/unix/syscalls.list: Define __libc_select alias.
11631         * sysdeps/posix/waitid.c: Define __libc_waitid alias.
11633         * sysdeps/posix/sigpause.c: Define __libc_sigpause and
11634         __libc___xpg_sigpause aliases.
11636         * sysdeps/generic/pselect.c: Define __libc_pselect alias.
11638         * misc/error.c: Remove use of USE_IN_LIBIO.
11640 2002-12-08  Roland McGrath  <roland@redhat.com>
11642         * elf/Makefile (tests): Uncomment tst-array[123].
11643         * Makeconfig (CPPFLAGS-.oS): Add -DLIBC_NONSHARED=1.
11644         * csu/elf-init.c: New file.
11645         * csu/Makefile (routines, static-only-routines): Add elf-init.
11646         * sysdeps/alpha/elf/start.S: Use __libc_csu_init in place of _init
11647         and __libc_csu_fini in place of _fini.
11648         * sysdeps/arm/elf/start.S: Likewise.
11649         * sysdeps/cris/elf/start.S: Likewise.
11650         * sysdeps/hppa/elf/start.S: Likewise.
11651         * sysdeps/i386/elf/start.S: Likewise.
11652         * sysdeps/ia64/elf/start.S: Likewise.
11653         * sysdeps/m68k/elf/start.S: Likewise.
11654         * sysdeps/mach/hurd/powerpc/static-start.S: Likewise.
11655         * sysdeps/mips/elf/start.S: Likewise.
11656         * sysdeps/powerpc/powerpc32/elf/start.S: Likewise.
11657         * sysdeps/powerpc/powerpc64/elf/start.S: Likewise.
11658         * sysdeps/s390/s390-32/elf/start.S: Likewise.
11659         * sysdeps/s390/s390-64/elf/start.S: Likewise.
11660         * sysdeps/sh/elf/start.S: Likewise.
11661         * sysdeps/sparc/sparc32/elf/start.S: Likewise.
11662         * sysdeps/sparc/sparc64/elf/start.S: Likewise.
11663         * sysdeps/x86_64/elf/start.S: Likewise.
11665         * sysdeps/pthread/aio_notify.c (notify_func_wrapper): Take a malloc'd
11666         struct containing function ptr and value, free it.
11667         (__aio_notify_only): Allocate that and copy values from SIGEV into it.
11668         It's not safe to let the new thread use the SIGEV pointer.
11670 2001-10-20  Paul Eggert  <eggert@twinsun.com>
11672         * misc/error.c (strerror_r): Do not declare unless [!_LIBC].
11673         Do not check for HAVE_DECL_STRERROR_R missing unless STRERROR_R_CHAR_P.
11674         Use strerror_r that is only a macro, even if it is not a function.
11675         (strerror): Check for HAVE_DECL_STRERROR before declaring.
11676         (private_strerror): Use prototypes, not old-style function definition.
11677         (print_errno_message): New function.
11678         Support the POSIX 'int'-flavored strerror_r, as well as the traditional
11679         char*-flavored one.
11680         (error_tail, error, error_at_line): Use it.
11682 2002-12-07  Carlos O'Donell  <carlos@baldric.uwo.ca>
11684         * sysdeps/unix/sysv/linux/hppa/bits/shm.h: Added SHMLBA #define.
11686 2002-12-08  Ulrich Drepper  <drepper@redhat.com>
11688         * scripts/output-format.sed: Fix bug in one of the s expressions
11689         which used / for one too many things.
11691         * include/unistd.h: Declare __libc_close.
11693 2002-12-07  Ulrich Drepper  <drepper@redhat.com>
11695         * sysdeps/generic/bits/stdio-lock.h (_IO_lock_trylock): New define.
11697 2002-12-07  Roland McGrath  <roland@redhat.com>
11699         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Reintroduce changes
11700         from 2002-12-06, but remove unnecessary memset call without removing
11701         necessary copy of initialization image.
11703         * Makerules ($(common-objpfx)format.lds): New target.
11704         (common-generated): Add it.
11705         ($(inst_libdir)/libc.so): Depend on that, and cat it into the result.
11706         * scripts/output-format.sed: New file.
11707         * Makefile (distribute): Add it.
11709 2002-12-07  Ulrich Drepper  <drepper@redhat.com>
11711         * sysdeps/generic/libc-tls.c: Include <sys/param.h>.
11712         Reported by Art Haas <ahaas@airmail.net>.
11714 2002-12-07  Kenneth W. Chen  <kenneth.w.chen@intel.com>
11716         * sysdeps/ia64/strncpy.S (strncpy): Clear ar.ec.  Fix .recovery4.
11718 2002-12-07  Jakub Jelinek  <jakub@redhat.com>
11720         * string/test-strncpy.c (do_random_tests): Improve test coverage.
11722 2002-12-06  Ulrich Drepper  <drepper@redhat.com>
11724         * test-skeleton.c (timeout_handler): Allow expected signal to be
11725         SIGALRM.
11727         * wctype/wcfuncs.c: Add libc_hidden_def for iswalnum.
11729         * sysdeps/posix/raise.c: Add libc_hidden_def for raise.
11731 2002-12-07  Jakub Jelinek  <jakub@redhat.com>
11733         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h [RTLD_PRIVATE_ERRNO]
11734         (SYSCALL_ERROR_HANDLER): Fix a pasto.
11735         Reported by Jeff Bailey <jbailey@nisa.net>.
11737 2002-12-06  Ulrich Drepper  <drepper@redhat.com>
11739         * sysdeps/generic/libc-tls.c: Undo last patch.
11741         * include/wctype.h: Define iswalnum with libc_hidden_proto.
11743         * include/signal.h: Define raise with libc_hidden_proto.
11745         * sysdeps/unix/sysv/linux/fexecve.c (fexecve): Use __snprintf and
11746         __execve instead of snprintf and execve.
11748         * sysdeps/x86_64/fpu/libm-test-ulps: Relax errors for float and double
11749         again a bit.
11751 2002-12-06  Jakub Jelinek  <jakub@redhat.com>
11753         * posix/Makefile (annexc.out): Add -I../dir for all sorted-dirs.
11754         * posix/annexc.c (fmt, testfmt): Remove -D_LIBC.
11756 2002-12-06  Ulrich Drepper  <drepper@redhat.com>
11758         * misc/syslog.c (log_cleanup): New function.
11759         (openlog): Use log_cleanup instead of __libc_mutex_unlock.
11760         (closelog): Likewise.
11762         * elf/dl-close.c: Use __rtld_lock_* macros instead of __libc_lock_*.
11763         * elf/dl-iteratephdr.c: Likewise.
11764         * elf/dl-lookup.c: Likewise.
11765         * elf/dl-misc.c: Likewise.
11766         * elf/dl-open.c: Likewise.
11767         * elf/dl-support.c: Likewise.
11768         * elf/rtld.c: Likewise.
11769         * sysdeps/generic/ldsodefs.h: Likewise.
11770         * sysdeps/generic/bits/libc-lock.h: Define __rtld_lock_* macros.
11771         * sysdeps/mach/bits/libc-lock.h: Likewise.
11772         * sysdeps/mach/hurd/bits/libc-lock.h: Likewise.
11774 2002-12-06  Roland McGrath  <roland@redhat.com>
11776         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Cope with zero ALIGN.
11778         * malloc/hooks.c [_LIBC && (USE___THREAD || (USE_TLS && !SHARED))]
11779         (malloc_starter, memalign_starter, free_starter): Don't define these.
11780         * malloc/malloc.c [_LIBC && (USE___THREAD || (USE_TLS && !SHARED))]:
11781         Don't declare them either.
11782         * malloc/arena.c (ptmalloc_init) [_LIBC && USE_TLS]: Don't call
11783         __pthread_initialize, so no need to set hooks to *_starter.
11784         (ptmalloc_init_minimal): New function, broken out of ptmalloc_init.
11785         [_LIBC && SHARED && USE_TLS && !USE___THREAD]
11786         (__libc_malloc_pthread_startup): New function.
11787         * malloc/Versions (libc: GLIBC_PRIVATE): New set, add that function.
11789         * malloc/hooks.c (memalign_starter): New function.
11790         * malloc/malloc.c: Declare it.
11791         * malloc/arena.c (save_memalign_hook): New variable.
11792         (ptmalloc_init): Set __memalign_hook to memalign_starter.
11794         * elf/dl-minimal.c (free): Clear the memory.
11795         (calloc): Just call malloc, knowing all memory it returns is cleared.
11797         * sysdeps/generic/dl-tls.c (allocate_dtv): Use calloc instead of
11798         malloc and memset; calloc can avoid the zeroing when redundant.
11799         (_dl_tls_setup): Likewise.
11800         * elf/dl-load.c (decompose_rpath): Likewise.
11801         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Comment out memset
11802         call, since memory from sbrk at startup is already zero.
11804         * elf/rtld.c (_dl_start, dl_main): TLS_INIT_TP macro now returns an
11805         error string for failure, null for success.  Update callers.
11806         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Likewise.
11807         * elf/dl-load.c (_dl_map_object_from_fd): Likewise.
11809 2002-12-05  Jakub Jelinek  <jakub@redhat.com>
11811         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (sendfile): Change
11812         args to i:iipi.
11813         (readahead): Change args to i:iii.
11814         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list (readahead):
11815         Change args to i:iii.
11816         * sysdeps/unix/sysv/linux/mips/syscalls.list (readahead): Change
11817         args to i:iiii.
11819 2002-12-05  Roland McGrath  <roland@redhat.com>
11821         * stdlib/cxa_finalize.c (__cxa_finalize): When given a null argument,
11822         call all functions rather than none.
11823         Reported by Mark P. Mitchell <mark@codesourcery.com>.
11825 2002-12-04  Roland McGrath  <roland@redhat.com>
11827         * locale/localeinfo.h [NL_CURRENT_INDIRECT]: Use attribute_tls_model_ie
11828         on _nl_current_LC_* variables.
11830 2002-12-05  Ulrich Drepper  <drepper@redhat.com>
11832         * dirent/bug-readdir1.c (main): Don't call closedir, just close
11833         the file descriptor.  This is testing what the bug report was about.
11835 2002-12-04  Ulrich Drepper  <drepper@redhat.com>
11837         * po/be.po: New file.
11839         * argp/Makefile (tests): Add tst-argp1.
11841         * sysdeps/unix/sysv/linux/alpha/bits/siginfo.h: (struct sigevent):
11842         Change type of _attribute to void*.
11843         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Likewise.
11844         * sysdeps/unix/sysv/linux/bits/siginfo.h: Likewise.
11845         * sysdeps/unix/sysv/linux/mips/bits/siginfo.h: Likewise.
11846         * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Likewise.
11847         * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Likewise.
11849 2002-12-04  Roland McGrath  <roland@redhat.com>
11851         * sysdeps/generic/ldsodefs.h (struct rtld_global): Move all [USE_TLS]
11852         members to the end, so a libpthread compiled with !USE_TLS will still
11853         find other members properly.
11855         * sysdeps/i386/i486/bits/string.h (__strcpy_g): Add dummy output
11856         operand for DEST memory.  Fix dummy input operand to use SRC.
11857         Reported by Davin McCall <davmac@ozonline.com.au>.
11859         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Account for TCB
11860         alignment when initializing the DTV entry.
11862         * elf/dl-load.c (_dl_map_object_from_fd): If we hit a TLS segment
11863         when TLS has not been set up, try to set it up if we can.
11864         * elf/tst-tls4.c: Revert last change.
11865         * elf/tst-tls5.c: Likewise.
11866         * elf/tst-tls6.c: Likewise.
11867         * elf/tst-tls7.c: Likewise.
11868         * elf/tst-tls8.c: Likewise.
11869         * elf/tst-tls9.c: Likewise.
11871         * sysdeps/generic/dl-tls.c [SHARED] (_dl_tls_setup): New function.
11872         * sysdeps/generic/ldsodefs.h: Declare it.
11873         * elf/Versions (ld: GLIBC_PRIVATE): Add it.
11874         * sysdeps/generic/libc-tls.c (init_slotinfo): New static inline
11875         function, broken out of __libc_setup_tls.
11876         (init_static_tls): Likewise.
11877         (__libc_setup_tls): Call them.
11878         (_dl_tls_setup): New function, uses new subroutines.
11880         * elf/dl-close.c (free_slotinfo): Make argument pointer to pointer.
11881         Clear the pointer when returning true.
11882         (libc_freeres_fn) [SHARED]: If GL(dl_initial_dtv) is null, free the
11883         first element of the slotinfo list too.
11885         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Define only if
11886         [SHARED].
11888         * sysdeps/generic/ldsodefs.h (_dl_next_tls_modid): Declare as hidden.
11889         (_dl_determine_tlsoffset): Likewise.
11891         * elf/rtld.c (_dl_initial_error_catch_tsd): Renamed from
11892         startup_error_tsd, made global.
11893         (dl_main): Update initialization.
11894         * elf/dl-tsd.c: Likewise.
11895         * sysdeps/generic/ldsodefs.h: Declare it.
11897 2002-12-03  Ulrich Drepper  <drepper@redhat.com>
11899         * manual/texinfo.tex: Update from latest upstream version.
11901 2002-12-03  Roland McGrath  <roland@redhat.com>
11903         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Include static TLS
11904         area surplus in calculation for sbrk call.
11906         * iconvdata/cp1125.c: New file.
11907         * iconvdata/Makefile (distribute): Add it.
11908         (modules): Add CP1125.
11909         (gen-8bit-gap-modules): Add cp1125.
11910         * iconvdata/gconv-modules: Add CP1125, alias RUSCII.
11911         * iconvdata/tst-tables.sh: Add CP1125 to the list to test.
11913 2002-12-03  Andreas Jaeger  <aj@suse.de>
11915         * sysdeps/x86_64/fpu/libm-test-ulps: Regenerated.
11917 2002-12-03  Ulrich Drepper  <drepper@redhat.com>
11919         * sysdeps/posix/system.c (do_system): Make signal handler
11920         installation thread safe.
11922 2002-12-02  Roland McGrath  <roland@redhat.com>
11924         * sysdeps/unix/sysv/linux/alpha/syscalls.list (readahead): Change
11925         caller from EXTRA to -.
11926         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
11927         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
11928         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
11930 2002-12-02  Carlos O'Donell  <carlos@baldric.uwo.ca>
11932         * sysdeps/hppa/fpu/fesetround.c (fesetround): Use ~FE_DOWNWARD so both
11933         bits of RM are cleared.
11935 2002-12-02  Roland McGrath  <roland@redhat.com>
11937         * elf/tst-tls4.c: Define an unused TLS variable here, so that no lazy
11938         TLS setup is required.
11939         * elf/tst-tls5.c: Likewise.
11940         * elf/tst-tls6.c: Likewise.
11941         * elf/tst-tls7.c: Likewise.
11942         * elf/tst-tls8.c: Likewise.
11943         * elf/tst-tls9.c: Likewise.
11945         * elf/rtld.c (dl_main): Remove [! SHARED] conditional from
11946         `if (GL(dl_tls_max_dtv_idx) > 0)' tests for doing TLS setup.
11947         * elf/dl-close.c (libc_freeres_fn): Check GL(dl_tls_dtv_slotinfo_list)
11948         for being null before calling free_slotinfo.
11949         * elf/dl-load.c (_dl_map_object_from_fd) [SHARED]: For PT_TLS in
11950         dynamic loading, bail with error if GL(dl_tls_max_dtv_idx) is zero.
11952 2002-11-30  Bruno Haible  <bruno@clisp.org>
11954         * iconv/gconv.h (__gconv_btowc_fct): New typedef.
11955         (struct __gconv_step): New field __btowc_fct.
11956         * wcsmbs/btowc.c (__btowc): Use the __btowc_fct shortcut if possible.
11957         * iconv/gconv_int.h (__BUILTIN_TRANSFORM): Renamed from
11958         __BUILTIN_TRANS.
11959         (__gconv_btwoc_ascii): New declaration.
11960         * iconv/gconv_simple.c (BUILTIN_TRANSFORMATION): Add BtowcFct argument.
11961         (__gconv_btwoc_ascii): New function.
11962         * iconv/gconv_builtin.h: Add BtowcFct argument to all
11963         BUILTIN_TRANSFORMATION invocations.
11964         * iconv/gconv_conf.c (BUILTIN_TRANSFORMATION): Add BtowcFct argument.
11965         * iconv/iconvconfig.c (BUILTIN_TRANSFORMATION): Likewise.
11966         * iconv/gconv_builtin.c (map): New field btowc_fct.
11967         (BUILTIN_TRANSFORMATION): Add BtowcFct argument. Use it to initialize
11968         btowc_fct field.
11969         (__gconv_get_builtin_trans): Initialize __btowc_fct field.
11970         * iconv/gconv_cache.c (find_module): Initialize __btowc_fct field.
11971         * iconv/gconv_db.c (gen_steps, increment_counter): Likewise.
11972         * wcsmbs/wcsmbsload.c (to_wc, to_mb): Likewise.
11973         * iconv/skeleton.c: Document STORE_REST and FROM_ONEBYTE.
11974         (gconv_init): Initialize __btowc_fct field.
11975         Undefine EXTRA_LOOP_ARGS and FROM_ONEBYTE at the end.
11976         * iconv/loop.c: Document ONEBYTE_BODY.
11977         (gconv_btowc, FROM_ONEBYTE): Define if ONEBYTE_BODY is defined.
11978         Undefine ONEBYTE_BODY at the end.
11979         * iconvdata/8bit-generic.c (ONEBYTE_BODY): New macro.
11980         * iconvdata/8bit-gap.c (NONNUL): New macro.
11981         (BODY for FROM_LOOP): Use it.
11982         (ONEBYTE_BODY): New macro.
11983         * iconvdata/isiri-3342.c (HAS_HOLES): Set to 1.
11984         (NONNUL): New macro.
11985         * iconvdata/ansi_x3.110.c (ONEBYTE_BODY): New macro.
11986         * iconvdata/armscii-8.c (ONEBYTE_BODY): New macro.
11987         * iconvdata/cp1255.c (ONEBYTE_BODY): New macro.
11988         * iconvdata/cp1258.c (ONEBYTE_BODY): New macro.
11989         * iconvdata/tcvn5712-1.c (ONEBYTE_BODY): New macro.
11990         * iconvdata/big5.c (ONEBYTE_BODY): New macro.
11991         * iconvdata/big5hkscs.c (ONEBYTE_BODY): New macro.
11992         * iconvdata/euc-cn.c (ONEBYTE_BODY): New macro.
11993         * iconvdata/euc-jp.c (ONEBYTE_BODY): New macro.
11994         * iconvdata/euc-jisx0213.c (ONEBYTE_BODY): New macro.
11995         * iconvdata/euc-kr.c (ONEBYTE_BODY): New macro.
11996         * iconvdata/euc-tw.c (ONEBYTE_BODY): New macro.
11997         * iconvdata/gbk.c (ONEBYTE_BODY): New macro.
11998         * iconvdata/gb18030.c (ONEBYTE_BODY): New macro.
11999         * iconvdata/ibm932.c: Include <stdbool.h>.
12000         (TRUE, FALSE): Remove macros.
12001         (BODY for FROM_LOOP): Remove unused variable rp1.
12002         (ONEBYTE_BODY): New macro.
12003         (BODY for TO_LOOP): Use bool.
12004         * iconvdata/ibm932.h (__ibm932sb_to_ucs4_idx): Remove array.
12005         * iconvdata/ibm943.c: Include <stdbool.h>.
12006         (TRUE, FALSE): Remove macros.
12007         (BODY for FROM_LOOP): Remove unused variable rp1.
12008         (ONEBYTE_BODY): New macro.
12009         (BODY for TO_LOOP): Use bool.
12010         * iconvdata/ibm943.h (__ibm943sb_to_ucs4_idx): Remove array.
12011         * iconvdata/iso8859-1.c (ONEBYTE_BODY): New macro.
12012         * iconvdata/iso_6937-2.c (ONEBYTE_BODY): New macro.
12013         * iconvdata/iso_6937.c (ONEBYTE_BODY): New macro.
12014         * iconvdata/johab.c (ONEBYTE_BODY): New macro.
12015         * iconvdata/sjis.c (ONEBYTE_BODY): New macro.
12016         * iconvdata/shift_jisx0213.c (ONEBYTE_BODY): New macro.
12017         * iconvdata/t.61.c (ONEBYTE_BODY): New macro.
12018         * iconvdata/uhc.c (ONEBYTE_BODY): New macro.
12019         * iconvdata/gbbig5.c: Tweak comment.
12021 2002-12-02  Ulrich Drepper  <drepper@redhat.com>
12023         * po/fi.po: Update from translation team.
12025 2002-12-01  Roland McGrath  <roland@redhat.com>
12027         * sysdeps/unix/sysv/linux/getdents.c (__GETDENTS): Fix condition
12028         testing getdents64 return value.
12030         * scripts/versions.awk: Don't pass -n flag to sort command.
12032         * posix/bug-regex13.c: Include <string.h>.
12034         * sysdeps/generic/libc-start.c (__libc_start_main): Do
12035         DL_SYSDEP_OSCHECK here.
12036         * sysdeps/unix/sysv/linux/init-first.c (init): Not here.
12037         * sysdeps/unix/sysv/linux/dl-osinfo.h: Include <fcntl.h>.
12039         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Bail if
12040         argument TCBSIZE <= TLS_INIT_TCB_SIZE, not just if it's zero.
12042         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Check l_tls_offset
12043         instead of l_type to decide whether to use TLS_DTV_UNALLOCATED.
12045         * include/link.h: Comment typo fix.
12047 2002-12-01  Roland McGrath  <roland@frob.com>
12049         * sysdeps/mach/hurd/bits/posix_opt.h (_POSIX_FSYNC): Set to 200112L.
12050         (_POSIX_SPAWN, _POSIX_MAPPED_FILES, _POSIX_MEMLOCK_RANGE,
12051         _POSIX_MEMORY_PROTECTION): Likewise.
12052         (_POSIX_POLL, _POSIX_SELECT): Removed.
12054 2002-11-28  Ulrich Drepper  <drepper@redhat.com>
12056         * sysdeps/unix/sysv/linux/bits/posix_opt.h: Define macros which
12057         require it to 200112L.  Remove _POSIX_POLL and _POSIX_SELECT.
12059 2002-11-28  Jakub Jelinek  <jakub@redhat.com>
12061         * sysdeps/unix/alpha/sysdep.S: Change defined(USE___THREAD) to
12062         USE___THREAD.
12063         * sysdeps/unix/sysv/linux/alpha/sysdep.h (inline_syscall*): Avoid
12064         "=v" constraints.
12066 2002-11-28  Ulrich Drepper  <drepper@redhat.com>
12068         * sysdeps/unix/sysv/linux/x86_64/vfork.S: Don't trash the CPU's
12069         branch prediction buffers by using unpaired call/ret.
12071 2002-11-27  Ulrich Drepper  <drepper@redhat.com>
12073         * sysdeps/unix/sysv/linux/i386/sysdep.h (ASMFMT_2): Fix typo in
12074         first parameters constraint string.
12075         (ASMFMT_3): Likewise.  Patch by stefan.lauterbach@mincom.de.
12077 2002-11-27  Isamu Hasegawa  <isamu@yamato.ibm.com>
12079         * posix/regcomp.c (parse_expression): Set the bit since the back
12080         reference is used in the regular expression.
12081         * posix/regex_internal.c (re_node_set_init_1): Make it clean in case
12082         of malloc failure.
12083         (re_node_set_init_copy): Likewise.
12084         * posix/regex_internal.h (state_array_t): New structure.
12085         (re_sub_match_last_t): Likewise.
12086         (re_sub_match_top_t): Likewise.
12087         (re_match_context_t): Add new members.
12088         (re_dfa_t): Likewise.
12089         * posix/regexec.c (re_search_internal): Invoke prune_impossible_nodes
12090         to check the matching is really correct, and retry if failed.
12091         Move the routin pruning the impossible nodes from here, ...
12092         (prune_impossible_nodes): To this function.
12093         (check_matching): Invoke check_subexp_matching_top, and replace
12094         redundant checking with transit_state_bkref invocation.
12095         (proceed_next_node): Replace strncmp with memcmp.  Reported by
12096         Paolo Bonzini  <bonzini@gnu.org>.
12097         (update_cur_sifted_state): Remove search_subexp invocation.
12098         (search_subexp): Remove this function.
12099         (check_dst_limits_calc_pos): Use search_cur_bkref_entry for
12100         optimization.
12101         (sift_states_bkref): Use search_cur_bkref_entry for optimization.
12102         Remove unused invocation of match_ctx_add_entry.
12103         (transit_state): Invoke check_subexp_matching_top.
12104         (check_subexp_matching_top): New function.
12105         (transit_state_bkref): Remove unused array.
12106         Merge transit_state_bkref_loop.
12107         (transit_state_bkref_loop): Use get_subexp instead of
12108         sift_states_backward.  Use search_cur_bkref_entry for optimization.
12109         Merge this function to transit_state_bkref.
12110         (get_subexp): New function.
12111         (get_subexp_sub): Likewise.
12112         (find_subexp_node): Likewise.
12113         (check_arrival): Likewise.
12114         (check_arrival_expand_ecl): Likewise.
12115         (check_arrival_expand_ecl_sub): Likewise.
12116         (expand_bkref_cache): Likewise.
12117         (match_ctx_init): Initialize new members.
12118         (match_ctx_clean): New function.
12119         (match_ctx_free): Release new members.
12120         (match_ctx_free_subtops): New function.
12121         (match_ctx_add_entry): Fix indent.
12122         (search_cur_bkref_entry): New function.
12123         (match_ctx_add_subtop): Likewise.
12124         (match_ctx_add_sublast): Likewise.
12126 2002-11-25  Ulrich Drepper  <drepper@redhat.com>
12128         * iconv/Makefile (tests): Remove tst-iconv4.c
12129         * iconv/tst-iconv4.c: Moved to...
12130         * iconvdata/tst-iconv4.c: ...here.  New file.
12131         * iconvdata/Makefile (tests): Add tst-iconv4.  Add dependencies.
12133 2002-11-25  Roland McGrath  <roland@redhat.com>
12135         * inet/test-ifaddrs.c (main: addr_string): Handle null SA.
12136         Grok AF_LINK if defined.
12137         From Momchil Velikov <velco@fadata.bg>.
12139         * sysdeps/gnu/ifaddrs.c (getifaddrs): If ioctl fails for netmask,
12140         brdaddr, or dstaddr, just set those pointers to null and don't fail.
12141         Reported by Momchil Velikov <velco@fadata.bg>.
12143         * sysdeps/generic/ifreq.h (__if_nextreq) [_HAVE_SA_LEN]: If sa_len
12144         is > sizeof IFR->ifa_addr, advance past the whole longer length.
12145         (__ifreq): Count up NIFS that way too.
12146         Reported by Momchil Velikov <velco@fadata.bg>.
12148         * sysdeps/mach/hurd/lchmod.c: Include <fcntl.h>.
12150         * sysdeps/mach/hurd/i386/init-first.c: Include <ldsodefs.h>
12151         and <fpu_control.h>.
12153 2002-11-24  Ulrich Drepper  <drepper@redhat.com>
12155         * elf/elf.h (EM_ST19): Fix typo.
12157 2002-11-25  Jakub Jelinek  <jakub@redhat.com>
12159         * include/errno.h (__set_errno): Define as errno = val
12160         unconditionally.
12162 2002-11-24  Roland McGrath  <roland@redhat.com>
12164         * sysdeps/posix/readv.c: Include <errno.h>, use __set_errno macro.
12165         * sysdeps/posix/writev.c: Likewise.
12166         From Momchil Velikov <velco@fadata.bg>.
12168         * elf/dl-error.c [! _LIBC_REENTRANT]: Use a static variable instead of
12169         calling *GL(dl_error_catch_tsd) for a thread-local location.
12170         * elf/rtld.c (startup_error_tsd): Conditionalize on [_LIBC_REENTRANT].
12171         (dl_main): Same for GL(dl_error_catch_tsd) initialization.
12172         * elf/dl-tsd.c: Conditionalize contents on [_LIBC_REENTRANT].
12174         * libio/iofflush.c: Add libc_hidden_def.
12175         * libio/iofwrite.c: Likewise.
12176         * sysdeps/generic/sigtimedwait.c: Likewise.
12177         * sysdeps/generic/sigwaitinfo.c: Likewise.
12178         * sysdeps/posix/sigwait.c: Likewise.
12179         Reported by Momchil Velikov <velco@fadata.bg>.
12181         * inet/inet_lnaof.c (inet_lnaof): Change return type to in_addr_t
12182         to match <arpa/inet.h> declaration.
12183         * inet/inet_netof.c (inet_netof): Likewise.
12184         * inet/inet_mkadr.c (inet_makeaddr): Likewise for argument types.
12185         Reported by Momchil Velikov <velco@fadata.bg>.
12187         * configure.in: Skip AUTOCONF check under --without-cvs.
12188         * configure: Regenerated.
12190         * posix/Makefile (headers): Add bits/pthreadtypes.h.
12191         * sysdeps/unix/sysv/linux/Makefile (sysdep_heaers): Don't add it here.
12192         * sysdeps/unix/sysv/linux/Dist: Remove it from the list.
12194 2002-11-24  Andreas Schwab  <schwab@suse.de>
12196         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Support inline syscall
12197         with six arguments.
12199 2002-11-19  Jim Meyering  <jim@meyering.net>
12201         * time/mktime.c (__mon_yday, __mktime_internal) [!_LIBC]: Declare
12202         as `static'.
12203         * time/strptime.c (__mon_yday) [!_LIBC]: Declare as `static'.
12205 2002-11-23  Roland McGrath  <roland@redhat.com>
12207         * scripts/abilist.awk: Avoid strtonum function, not there in mawk.
12208         Just produce hex output for datum sizes.
12210         * elf/Makefile ($(objpfx)librtld.mk): Tighten up regexp.
12211         Reported by Luca Barbieri <ldb@ldb.ods.org>.
12213 2002-11-20  Steven Munroe  <sjmunroe@us.ibm.com>
12215         * sysdeps/unix/sysv/linux/powerpc/bits/msq.h (msqid_ds)
12216         [__WORDSIZE == 32]: Only PPC32 requires __unused1, __unused2,
12217         and __unused3 fields.
12218         * sysdeps/unix/sysv/linux/powerpc/bits/sem.h (semid_ds)
12219         [__WORDSIZE == 32]: Only PPC32 requires __unused1
12220         and __unused2 fields.
12221         * sysdeps/unix/sysv/linux/powerpc/bits/shm.h (shmid_ds)
12222         [__WORDSIZE == 32]: Only PPC32 requires __unused1, __unused2,
12223         __unused3, and __unused4 fields.
12225         * csu/gmon-start.c (__gmon_start__): Always use TEXT_START macro to
12226         obtain lowest address for profiling in __monstartup call.
12228 2002-11-21  Roland McGrath  <roland@redhat.com>
12230         * sysdeps/ia64/fpu/Makefile (libm-sysdep_routines): Remove redunant
12231         $(calls) $(calls:=f) $(long-c-$(long-double-fcts)).
12233         * locale/localeinfo.h (struct locale_data): Revert last change.
12235         * sysdeps/unix/sysv/linux/ia64/syscalls.list (s_exit_group): Add it.
12236         From Ian Wienand <ianw@gelato.unsw.edu.au>.
12238         * sysdeps/unix/sysv/linux/ia64/sysdep.h (__NR_pread): Define to
12239         __NR_pread64 if not defined.
12240         (__NR_pwrite): Define to __NR_pwrite64 if not defined.
12241         From Ian Wienand <ianw@gelato.unsw.edu.au>.
12243 2002-11-21  Roland McGrath  <roland@frob.com>
12245         * sysdeps/mach/hurd/i386/init-first.c (posixland_init): Set
12246         __libc_multiple_libcs here.  Call __setfpucw.
12248 2002-11-21  Ulrich Drepper  <drepper@redhat.com>
12250         * elf/Makefile (tests): Don't run test-arrayX tests for now.
12252         * sysdeps/unix/sysv/linux/bits/sched.h: Add new CLONE_* flags.
12253         * sysdeps/unix/sysv/linux/i386/clone.S: Add support for
12254         CLONE_CHILD_*TID flags.
12256 2002-11-20  Andreas Jaeger  <aj@suse.de>
12258         * sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h (SIGCONTEXT):
12259         We pass struct ucontext on x86-64.
12260         (GET_PC): Adjust.
12261         (GET_FRAME): Adjust.
12262         (GET_STACK): Adjust.
12264 2002-11-20  Roland McGrath  <roland@redhat.com>
12266         * sysdeps/powerpc/powerpc32/dl-machine.c [! SHARED]: Further
12267         conditionalize [! DO_VERSIONING] #error.
12269         * scripts/abilist.awk: Grok function descriptor symbols.
12271         * intl/tst-gettext.c (main): Check return values from setlocale.
12272         Add necessary unsetenv's to make LANG=existing-locale check work.
12274         * intl/tst-gettext.sh: Use mkdir -p.  Copy test files unconditionally,
12275         so aborted prior runs don't confuse things.
12277         * locale/localeinfo.h (struct locale_data: union locale_data_value):
12278         Use uintptr_t instead of unsigned int for `word' member.
12279         (_NL_CURRENT_WORD): Cast to uint32_t.
12281         * posix/bug-regex5.c (main): Use union to extract _NL_COLLATE_NRULES
12282         value.
12284 2002-11-20  Ulrich Drepper  <drepper@redhat.com>
12286         * elf/tls-macros.h: Add IA-64 definitions.
12287         Patch by Ian Wienand <ianw@gelato.unsw.edu.au>.
12289         * iconv/Makefile (tests): Add tst-iconv4.
12290         * iconv/tst-iconv4.c: New file.
12292         * iconv/gconv_simple.c (internal_ucs4le_loop_unaligned): Return
12293         __GCONV_EMPTY_INPUT only if input is really empty.  Otherwise
12294         __GCONV_INCOMPLETE_INPUT.
12295         (ucs4le_internal_loop): Likewise.
12296         (ucs4le_internal_loop_unaligned): Likewise.
12297         * iconvdata/unicode.c (PREPARE_LOOP): Likewise.
12298         * iconvdata/utf-16.c (PREPARE_LOOP): Likewise.
12299         * iconvdata/utf-32.c (PREPARE_LOOP): Likewise.
12301         * iconv/loop.c (LOOPFCT): First test for empty input then for full
12302         output buffer.
12304         * inet/getnameinfo.c: Use extend_alloca where appropriate.
12305         * sysdeps/posix/getaddrinfo.c: Likewise.
12307         * include/alloca.h (extend_alloca): New define.  Based on stack
12308         direction it'll try to append to the previouls allocated buffer.
12310 2002-11-07  Thorsten Kukuk  <kukuk@suse.de>
12312         * sysdeps/posix/getaddrinfo.c (gaih_inet): If AF_UNSPEC is set,
12313         use the same service for AF_INET and AF_INET6.
12315 2002-11-19  Ulrich Drepper  <drepper@redhat.com>
12317         * intl/localealias.c (read_alias_file): Use only about 400 bytes
12318         of stack space instead of 16k.
12320 2002-11-18  Wolfram Gloger  <wg@malloc.de>
12322         * malloc/arena.c
12323         (ptmalloc_lock_all, ptmalloc_unlock_all, ptmalloc_unlock_all2): Do
12324         nothing if not initialized.  Bug report from Marcus Brinkmann
12325         <Marcus.Brinkmann@ruhr-uni-bochum.de>.
12327 2002-11-19  Roland McGrath  <roland@redhat.com>
12329         * posix/Versions (libc: GLIBC_2.3.2): Add sched_getaffinity and
12330         sched_setaffinity.
12332         * configure.in (libc_cv_gcc_dwarf2_unwind_info check): Use libraries
12333         `-lgcc -lgcc_eh -lgcc', not just `-lgcc -lgcc_eh' in link commands for
12334         test leading to libc_cv_gcc_dwarf2_unwind_info=no_registry_needed.
12335         * configure: Regenerated.
12337 2002-11-19  Ulrich Drepper  <drepper@redhat.com>
12339         * include/dlfcn.h: __libc_dlopen is now a macro calling
12340         __libc_dlopen_mode with the extra parameter RTLD_LAZY.
12341         (__libc_dlopen_mode): New prototype.
12342         * elf/dl-libc.c (__libc_dlopen_mode): Renamed from __libc_dlopen.  Add
12343         new parameter.  Store new parameter in mode field of structure passed
12344         to do_dlopen.
12345         (struct do_dlopen_args): Add new field mode.
12346         (do_dlopen): Pass mode from parameter structure to _dl_open.
12348 2002-11-11  Randolf Chung  <tausq@debian.org>
12350         * sysdeps/unix/sysv/linux/hppa/bits/fcntl.h [__USE_FILE_OFFSET64]
12351         (F_GETLK, F_SETLK, F_SETLKW): Define to F_*64 versions.
12352         * sysdeps/unix/sysv/linux/hppa/fcntl.c: New file.
12354         * sysdeps/hppa/fpu/libm-test-ulps: New file (generated).
12356         * sysdeps/hppa/Makefile (CFLAGS-rtld.c): New variable.
12357         Set -mdisable-fpregs for this file.
12359 2002-11-11  Carlos O'Donell  <carlos@baldric.uwo.ca>
12361         * sysdeps/unix/sysv/linux/configure.in:
12362         Make 2.4.19 minimum linux kernel for hppa, and add unwind symbols
12363         from gcc-3.0 era for backwards compatibility.
12364         * sysdeps/unix/sysv/linux/configure: Regenerate.
12366         * sysdeps/unix/sysv/linux/hppa/sys/ucontext.h:
12367         Define mcontext_t as a sigcontext.
12369 2002-11-18  Roland McGrath  <roland@redhat.com>
12371         * dlfcn/dlerror.c (fini): New function, __attribute__ ((destructor)).
12372         Free memory in `last_result' if it was used.
12374         * resolv/nss_dns/dns-network.c (getanswer_r): In BYNAME case, search
12375         all aliases for one that matches the "<dotted-quad>.IN-ADDR.ARPA" form.
12376         Do the parsing inline instead of copying strings and calling
12377         inet_network, and properly skip all alias names not matching the form.
12379         * manual/pattern.texi (Variable Substitution): Fix # and ## examples.
12381 2002-11-17  Ulrich Drepper  <drepper@redhat.com>
12383         * manual/pattern.texi (Wordexp Example): Fix sample code.
12385         * sysdeps/unix/sysv/linux/i386/clone.S: Initialize word in the
12386         childs stack which will be loaded into the %esi register.
12388 2002-11-14  Paul Eggert  <eggert@twinsun.com>
12390         * resolv/nss_dns/dns-network.c (getanswer_r): Check for buffer
12391         overflow when skipping the question part and when unpacking aliases.
12393 2002-11-15  Roland McGrath  <roland@redhat.com>
12395         * math/Makefile (libm-calls): Remove s_copysign, s_isinf, s_isnan,
12396         s_finite, s_modf, s_scalbn, s_frexp, m_ldexp, s_signbit.
12397         Instead add $(calls:s_%=m_%) to get m_* versions of them all.
12399 2002-11-15  Jakub Jelinek  <jakub@redhat.com>
12401         * sysdeps/i386/dl-machine.h (elf_machine_rela): Handle R_386_COPY.
12402         * sysdeps/arm/dl-machine.h (elf_machine_rela): Handle R_ARM_COPY.
12404 2002-11-15  Roland McGrath  <roland@redhat.com>
12406         * math/Makefile (libm-calls): Change s_ldexp to m_ldexp.
12407         * Makerules ($(+sysdir_pfx)sysd-rules): Emit pattern rules for m_%.[Sc]
12408         from sysdeps/.../s_%.[Sc] with commands $(+make-include-of-dep).
12409         (+make-include-of-dep): New canned sequence.
12411         * stdlib/canonicalize.c (__realpath): Check for malloc failure.
12412         From Dmitry V. Levin <ldv@altlinux.org>.
12414 2002-11-14  Roland McGrath  <roland@redhat.com>
12416         * sysdeps/generic/errno.c (__libc_errno): Remove alias.
12417         * inet/herrno.c (__libc_h_errno): Likewise.
12418         * resolv/res_libc.c (__libc_res): Likewise.
12419         [USE___THREAD]: Use this in place of [USE_TLS && HAVE___THREAD].
12420         (__res_state) [! USE___THREAD]: Don't define as weak.
12421         * csu/Versions: Revert last change.
12422         * resolv/Versions: Revert last change.
12424         * Makerules ($(common-objpfx)%.make): New pattern rule.
12425         * tls.make.c: New file.
12426         * Makefile (distribute): Add it.
12428         * sysdeps/generic/errno.c [! USE___THREAD]
12429         [HAVE_ELF && SHARED && DO_VERSIONING] (errno, _errno): Declare these
12430         with compat_symbol so they are not link-time visible.
12431         [! USE___THREAD] (__libc_errno): New alias for errno.
12432         * csu/Versions [!(USE_TLS && HAVE___THREAD)] (libc: GLIBC_PRIVATE):
12433         Add __libc_errno here.
12434         * inet/herrno.c [USE___THREAD]: Use this conditional
12435         in place of [USE_TLS && HAVE___THREAD].
12436         [! USE___THREAD] [HAVE_ELF && SHARED && DO_VERSIONING]
12437         (h_errno, _h_errno): Declare these with compat_symbol so they are not
12438         link-time visible.
12439         [! USE___THREAD] (__libc_h_errno): New alias for h_errno.
12440         * resolv/res_libc.c [! USE___THREAD]
12441         [HAVE_ELF && SHARED && DO_VERSIONING] (_res): Likewise.
12442         (_res): Use __attribute__ ((section (".bss"))) so we can have an alias.
12443         (__libc_res): Define as alias for _res.
12444         * resolv/Versions [!(USE_TLS && HAVE___THREAD)] (libc: GLIBC_PRIVATE):
12445         Add __libc_h_errno and __libc_res here.
12447 2002-11-14  Jakub Jelinek  <jakub@redhat.com>
12449         * csu/Versions (errno): Move STT_TLS symbol to GLIBC_PRIVATE for now.
12450         * resolv/Versions (h_errno, _res): Likewise.
12452 2002-11-14  Roland McGrath  <roland@redhat.com>
12454         * Makerules (%.dynsym): Remove $(objpfx) from target and dep.
12455         (%.symlist): Likewise.
12457 2002-11-13  Roland McGrath  <roland@redhat.com>
12459         * scripts/abilist.awk: New file.
12460         * Makefile (distribute): Add it.
12461         * Makerules ($(objpfx)%.dynsym, $(objpfx)%.symlist): New rules.
12462         (tests): Depend on .symlist file for each $(install-lib.so-versioned).
12463         [$(subdir) = elf] (tests): Depend on libc.symlist.
12464         (generated, common-generated): Add those files.
12466         * aclocal.m4 (LIBC_PROG_BINUTILS): Check for objdump, set OBJDUMP.
12467         * configure: Regenerated.
12468         * config.make.in (OBJDUMP): New variable, substituted by configure.
12470         * malloc/mcheck.c (struct hdr): New members `block' and `magic2'.
12471         (mallochook, reallochook): Set them up.
12472         (checkhdr): Check HDR->magic2 value.
12473         (freehook): Reset HDR->magic2.
12474         (memalignhook): New static function.
12475         (old_memalign_hook): New static variable.
12476         (mcheck, reallochook): Set __memalign_hook to memalignhook.
12478         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage): Zero the space
12479         for the new TCB.
12481 2002-11-13  Andreas Jaeger  <aj@suse.de>
12483         * sysdeps/unix/sysv/linux/x86_64/sigaction.c: Check for visibility
12484         attribute.
12485         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
12487 2002-11-11  Paul Eggert  <eggert@twinsun.com>
12489         * manual/crypt.texi (Cryptographic Functions): Mention that
12490         the MD5 one-way algorithm is compatible with BSD's.
12492 2002-11-11  Isamu Hasegawa  <isamu@yamato.ibm.com>
12494         * posix/regex_internal.c (re_string_skip_chars): Also return the last
12495         wide character.
12496         (re_string_reconstruct): Calculate the context by itself when the
12497         offset points out of the valid range.
12498         (re_string_context_at): Use wide character when MB_CUR_MAX > 1.
12499         * posix/regex_internal.h (WIDE_NEWLINE_CHAR): New macro.
12500         (IS_WIDE_WORD_CHAR): New macro.
12501         (IS_WIDE_NEWLINE): New macro.
12503 2002-11-12  Andreas Jaeger  <aj@suse.de>
12505         * sysdeps/x86_64/strchr.S: Don't use one register for two
12506         purposes, this fixes a bug noticed by test-strchr.c.
12508         * sysdeps/x86_64/strcat.S: Fix algorithm to align source pointer
12509         correctly.
12511 2002-11-12  Roland McGrath  <roland@redhat.com>
12513         * libio/libioP.h [_LIBC && !SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_1)]
12514         (_G_IO_NO_BACKWARD_COMPAT): Define it.
12516         * sysdeps/ia64/dl-fptr.c [_LIBC_REENTRANT]: Include <ia64intrin.h>
12517         instead of <pt-machine.h>.
12518         [_LIBC_REENTRANT] (lock, unlock): Use __sync_lock_* macros instead of
12519         testandset.
12520         From Ian Wienand <ianw@gelato.unsw.edu.au>.
12522 2002-11-10  Roland McGrath  <roland@redhat.com>
12524         * libio/bug-wfflush.c (do_test): Call rewind instead of fsetpos.
12525         Call fputs instead of fwprintf (simpler to follow in debugger).
12527         * crypt/md5-crypt.c: Doc fix.
12529         * sysdeps/unix/make-syscalls.sh: Insert $(make-target-directory) at
12530         the beginning of generated target commands.
12532         * csu/Makefile ($(objpfx)crti.o, $(objpfx)crtn.o): Add explicit
12533         dependencies for these in case implicit rule search skipped the
12534         nonexistent source directory.
12535         * sysdeps/gnu/Makefile ($(objpfx)errlist.d): Give this rule all the
12536         files with $(object-suffixes) as targets too.
12537         * Makerules [no_deps && objpfx] (before-compile): Add $(objpfx).
12538         and a target for it using $(make-target-directory).
12540         * Rules (before-compile): Add $(common-objpfx)bits/stdio-lim.h.
12542 2002-11-10  Roland McGrath  <roland@frob.com>
12544         * sysdeps/unix/sysv/linux/bits/pthreadtypes.h: Moved to ...
12545         * sysdeps/generic/bits/pthreadtypes.h: ... here.
12547         * sysdeps/mach/hurd/fcntl.c (__libc_fcntl): Treat a struct flock with
12548         l_start == 0 and l_len == 1 as we do l_len == 0.
12550 2002-11-10  Ulrich Drepper  <drepper@redhat.com>
12552         * po/da.po: Update from translation team.
12554 2002-11-10  Roland McGrath  <roland@redhat.com>
12556         * config.make.in (includedir): New variable, substituted by configure.
12557         Reported missing by Jocelyn Fournier <joc@presence-pc.com>.
12558         * Makeconfig (includedir): Use $(prefix), not $(exec_prefix).
12560 2002-11-10  Andreas Jaeger  <aj@suse.de>
12562         * sysdeps/unix/sysv/linux/x86_64/sys/ucontext.h (enum): Add
12563         REG_OLDMASK and REG_CR2 to synch with kernel header.
12564         (NGREG): Increase.
12566         * nss/getXXent.c (GETFUNC_NAME): Use union type to avoid strict
12567         aliasing problem.
12568         * nss/getXXbyYY_r.c (INTERNAL): Likewise.
12569         * nss/getnssent_r.c (__nss_getent_r): Likewise.
12570         (__nss_setent): Likewise.
12571         (__nss_getent_r): Likewise.
12572         * inet/getnetgrent_r.c (innetgr): Likewise.
12573         (__internal_setnetgrent_reuse): Likewise.
12574         (internal_getnetgrent_r): Likewise.
12575         * inet/ether_hton.c (ether_hostton): Likewise.
12576         * inet/ether_ntoh.c (ether_ntohost): Likewise.
12577         * sunrpc/netname.c (netname2user): Likewise.
12578         * sunrpc/publickey.c (getpublickey): Likewise.
12579         (getsecretkey): Likewise.
12581 2002-11-09  Marcus Brinkmann  <marcus@gnu.org>
12583         * sysdeps/mach/hurd/i386/ioperm.c (ioperm): Correct off by one
12584         error in range calculation.
12586 2002-10-09  Jakub Jelinek  <jakub@redhat.com>
12588         * string/test-strspn.c (do_test): Ensure zero termination.
12589         * string/test-strpbrk.c (do_test): Likewise.
12590         * string/test-strncmp.c (stupid_strncmp): Use strnlen, not strlen.
12591         * string/test-strncpy.c (stupid_strncpy): Likewise.
12592         * string/test-stpncpy.c (stupid_stpncpy): Likewise.
12594 2002-10-08  Roland McGrath  <roland@redhat.com>
12596         * string/test-string.h (test_init): Fill BUF1 and BUF2 with
12597         nonzero characters.
12599 2002-09-22  H.J. Lu  <hjl@gnu.org>
12601         * sysdeps/unix/sysv/linux/mmap64.c (MMAP2_PAGE_SHIFT): Renamed
12602         from PAGE_SHIFT.  Define if not defined.  Check MMAP2_PAGE_SHIFT
12603         only if __NR_mmap2 is defined.
12605         * sysdeps/unix/sysv/linux/powerpc/mmap64.c: Moved to ...
12606         * sysdeps/unix/sysv/linux/mmap64.c: ... here.
12607         * sysdeps/unix/sysv/linux/hppa/mmap64.c: File removed.
12608         * sysdeps/unix/sysv/linux/sparc/sparc32/mmap64.c: FIle removed,
12610 2002-11-08  Jakub Jelinek  <jakub@redhat.com>
12612         * posix/bug-regex13.c (tests): Add new test.
12614         * string/test-strchr.c (stupid_strchr): New function.
12615         (do_random_tests): Make sure the string is zero terminated.
12616         * string/test-strpbrk.c (stupid_strpbrk): New function.
12617         (do_random_tests): Make sure the string is zero terminated.
12618         * string/test-strcmp.c (stupid_strcmp): New function.
12619         (do_random_tests): Make sure the strings are zero terminated.
12620         * string/test-strspn.c (stupid_strspn): New function.
12621         (simple_strspn): Rename rej argument to acc.
12622         (do_random_tests): Make sure the string is zero terminated.
12623         * string/test-strcspn.c (stupid_strcspn): New function.
12624         * string/test-strncpy.c (stupid_strncpy): New function.
12625         * string/test-stpncpy.c (stupid_stpncpy): New function.
12626         * string/test-strncmp.c (stupid_strncmp): New function.
12627         (do_random_tests): Make sure the strings are zero terminated.
12628         * string/test-string.h (impl_t): Change test into long.
12629         (IMPL): Add __attribute__((aligned (sizeof (void *)))).
12631 2002-11-08  Roland McGrath  <roland@redhat.com>
12633         * sysdeps/ia64/elf/configure.in: Add TLS check.
12634         From Ian Wienand <ianw@cse.unsw.edu.au>.
12635         * sysdeps/ia64/elf/configure: Regenerated.
12637 2002-11-07  Roland McGrath  <roland@redhat.com>
12639         * libio/fileops.c (_IO_new_file_overflow): Use INTUSE(_IO_do_write) in
12640         place of _IO_new_do_write.
12641         [_LIBC] (_IO_do_write): Define as macro for _IO_new_do_write and
12642         #undef before versioned_symbol use.
12644 2002-11-07  Richard Henderson  <rth@redhat.com>
12646         * configure.in (ASM_ALPHA_NG_SYMBOL_PREFIX): Remove test.
12647         * configure: Regenerated.
12648         * config.h.in (ASM_ALPHA_NG_SYMBOL_PREFIX): Remove #undef.
12649         * sysdeps/alpha/dl-machine.h (TRAMPOLINE_TEMPLATE): Use !samegp.
12650         (RTLD_START): Likewise.  Access _dl_skip_args, _rtld_local, and
12651         _dl_fini via gp-relative relocations.
12652         * sysdeps/alpha/fpu/e_sqrt.c: Use !samegp.
12654         * elf/tls-macros.h: Add alpha versions.
12655         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Handle TLS relocs.
12656         * sysdeps/unix/alpha/sysdep.S: Support USE___THREAD.
12657         * sysdeps/unix/alpha/sysdep.h: Likewise.  Add SYSCALL_ERROR_HANDLER.
12658         * sysdeps/unix/sysv/linux/alpha/brk.S: Use it.
12659         * sysdeps/unix/sysv/linux/alpha/clone.S: Likewise.
12660         * sysdeps/unix/sysv/linux/alpha/getitimer.S: Likewise.
12661         * sysdeps/unix/sysv/linux/alpha/getrusage.S: Likewise.
12662         * sysdeps/unix/sysv/linux/alpha/gettimeofday.S: Likewise.
12663         * sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S: Likewise.
12664         * sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S: Likewise.
12665         * sysdeps/unix/sysv/linux/alpha/rt_sigaction.S: Likewise.
12666         * sysdeps/unix/sysv/linux/alpha/select.S: Likewise.
12667         * sysdeps/unix/sysv/linux/alpha/setitimer.S: Likewise.
12668         * sysdeps/unix/sysv/linux/alpha/settimeofday.S: Likewise.
12669         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S: Likewise.
12670         * sysdeps/unix/sysv/linux/alpha/syscall.S: Likewise.
12671         * sysdeps/unix/sysv/linux/alpha/utimes.S: Likewise.
12672         * sysdeps/unix/sysv/linux/alpha/wait4.S: Likewise.
12674         * sysdeps/unix/sysv/linux/alpha/sysdep.h: Re-include protect.
12675         Kill argument registers across the inline syscall.
12677         * sysdeps/unix/sysv/linux/alpha/clone.S: Add user_tid and tls args.
12679         * linuxthreads/sysdeps/alpha/tls.h: New file.
12680         * sysdeps/alpha/dl-tls.h: New file.
12682 2002-10-29  David Mosberger  <davidm@hpl.hp.com>
12684         * sysdeps/ia64/elf/initfini.c [HAVE_INITFINI_ARRAY]
12685         (gmon_initializer): New function.
12686         (.init prologue): If HAVE_INITFINI_ARRAY is true, don't call
12687         __gmon_start__ here.  Call it from gmon_initializer() instead.
12689 2002-03-12  H.J. Lu  <hjl@gnu.org>
12691         * elf/Makefile [$(have-initfini-array) = yes] (tests): Add tst-array1,
12692         tst-array2, and tst-array3.
12693         [$(have-initfini-array) = yes] (tests-static): Add tst-array3.
12694         [$(have-initfini-array) = yes] (modules-names): Add tst-array2dep.
12695         ($(objpfx)tst-array1.out): New target.
12696         ($(objpfx)tst-array2): Likewise.
12697         ($(objpfx)tst-array2.out): Likewise.
12698         ($(objpfx)tst-array3.out): Likewise.
12699         * elf/tst-array1.c: New file.
12700         * elf/tst-array1.exp: Likewise.
12701         * elf/tst-array2.c: Likewise.
12702         * elf/tst-array2dep.c: Likewise.
12703         * elf/tst-array2.exp: Likewise.
12704         * elf/tst-array3.c: Likewise.
12706 2002-10-28  David Mosberger  <davidm@hpl.hp.com>
12708         * elf/dl-fini.c (_dl_fini): Invoke fini_array in _reverse_ order.
12709         Don't add L->l_addr to array entry values.
12711 2002-11-07  Jakub Jelinek  <jakub@redhat.com>
12713         * string/test-string.h: New file.
12714         * string/test-strlen.c: New file.
12715         * string/test-string.h: New file.
12716         * string/test-strcmp.c: New file.
12717         * string/test-strchr.c: New file.
12718         * string/test-strrchr.c: New file.
12719         * string/test-strcpy.c: New file.
12720         * string/test-stpcpy.c: New file.
12721         * string/test-strncpy.c: New file.
12722         * string/test-stpncpy.c: New file.
12723         * string/test-strpbrk.c: New file.
12724         * string/test-strcspn.c: New file.
12725         * string/test-strspn.c: New file.
12726         * string/test-strcat.c: New file.
12727         * string/test-strncmp.c: New file.
12728         * string/test-memchr.c: New file.
12729         * string/test-memcmp.c: New file.
12730         * string/test-memset.c: New file.
12731         * string/test-memcpy.c: New file.
12732         * string/test-mempcpy.c: New file.
12733         * string/test-memmove.c: New file.
12734         * string/Makefile (strop-tests): New variable.
12735         (tests): Add strop-tests.
12736         (distribute): Add test-string.h.
12738 2002-11-06  Ulrich Drepper  <drepper@redhat.com>
12740         * posix/regcomp.c: Use tabs instead of spaces.
12741         * posix/regexec.c: Likewise.
12742         * posix/regex_internal.h: Likewise.
12744         * posix/regcomp.c (re_compile_fastmap_iter): Use __wcrtomb not wctomb.
12746 2002-11-06  Jakub Jelinek  <jakub@redhat.com>
12748         * posix/regcomp.c (re_compile_pattern): Don't set regs_allocated
12749         here.
12750         (regcomp): Don't set can_be_null here.
12751         (re_comp): Clear whole re_comp_buf with the exception of fastmap.
12752         (re_compile_internal): Clear can_be_null, set regs_allocated.
12754         * posix/regcomp.c (re_set_fastmap): New function.
12755         (re_compile_fastmap_iter): Use it.  Remove redundant type ==
12756         COMPLEX_BRACKET check.
12757         * posix/regexec.c (re_search_internal): Optimize searching with
12758         fastmap.  Call re_string_reconstruct even if match_first is
12759         smaller than raw_mbs_idx.
12761 2002-11-06  Isamu Hasegawa  <isamu@yamato.ibm.com>
12763         * posix/regcomp (free_dfa_content): Use free_state.
12764         * posix/regex_internal.c (re_string_realloc_buffers): Don't edit
12765         pointers in case that realloc failed.
12766         (re_node_set_merge): Likewise.
12767         (register_state): Likewise.
12768         (create_newstate_common): Invoke memory release functions in case of
12769         error conditions.
12770         (create_ci_newstate): Likewise.
12771         (create_cd_newstate): Likewise.
12772         (free_state): New function.
12773         * posix/regexec.c (re_search_internal): Invoke memory release
12774         functions in case of error conditions.
12775         (sift_states_backward): Likewise.
12776         (merge_state_array): Likewise.
12777         (add_epsilon_src_nodes): Likewise.
12778         (sub_epsilon_src_nodes): Likewise.
12779         (search_subexp): Likewise.
12780         (sift_states_bkref): Likewise.
12781         (transit_state_sb): Likewise.
12782         (transit_state_mb): Likewise.
12783         (transit_state_bkref_loop): Likewise.
12784         (group_nodes_into_DFAstates): Likewise.
12785         (push_fail_stack): Don't edit pointers in case that realloc failed.
12786         (extend_buffers): Likewise.
12787         (match_ctx_add_entry): Likewise.
12789 2002-11-06  Roland McGrath  <roland@redhat.com>
12791         * sysdeps/unix/sysv/linux/mips/configure.in: File removed.
12792         * sysdeps/unix/sysv/linux/mips/configure: Likewise.
12794         * configure.in: Add checks on as and ld for binutils 2.13 or later.
12795         * configure: Regenerated.
12797 2002-11-06  Ulrich Drepper  <drepper@redhat.com>
12799         * posix/regcomp.c (regcomp): __re_compile_fastmap can never fail.
12800         If re_compile_internal failed free fastmap buffer.
12801         (free_dfa_content): Broken out of regfree function.  Frees all dfa
12802         related data.
12803         (regfree): Add free_dfa_content.
12804         (re_compile_internal): If any of the called functions fails free
12805         all dfa related memory.
12807 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
12809         * sysdeps/unix/sysv/linux/sys/sysctl.h: Add ugly hacks to prevent
12810         warnings from the kernel headers.
12812 2002-11-05  Roland McGrath  <roland@redhat.com>
12814         * sysdeps/unix/mips/sysdep.h [! __PIC__] (PSEUDO): Add nop after jump.
12815         From Johannes Stezenbach <js@convergence.de>.
12817         * sysdeps/unix/sysv/linux/mips/Versions (libc: GLIBC_2.0): Change
12818         #errlist-compat magic comment to give 123 as size.
12819         (libc: GLIBC_2.1): Remove this set, moving #errlist-compat magic to ...
12820         (libc: GLIBC_2.2): ... here.
12821         (libc: GLIBC_2.3): Likewise.
12823 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
12825         * elf/dl-fini.c (_dl_fini): Correct the increment of l_opencount
12826         which happens at the beginning so that we can unload modules in
12827         __libc_freeres.
12829 2002-11-06  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
12831         * sysdeps/sh/bits/setjmp.h (JB_SIZE): Define only
12832         under [__USE_MISC || _ASM].
12834         * elf/elf.h: Remove the obsolete SH TLS relocations.
12836 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
12838         * posix/regcomp.c (regcomp): Initialize preg->can_be_null to zero.
12840 2002-11-05  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
12842         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h: Handle
12843         __NR_pread64 and __NR_pwrite64.
12844         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h: Likewise.
12845         * sysdeps/unix/sysv/linux/powerpc/pread.c: Remove __NR_pread64
12846         and __NR_pwrite64.
12847         Revert change to use INLINE_SYSCALL.
12848         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Likewise.
12849         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Likewise.
12850         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Likewise.
12851         * sysdeps/unix/sysv/linux/powerpc/ftruncate64.c: Revert change to use
12852         INLINE_SYSCALL.
12853         * sysdeps/unix/sysv/linux/powerpc/truncate64.c: Likewise.
12855         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (INLINE_SYSCALL):
12856         Update clobber list and add a comment about the syscall ABI.
12858         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list (s_pread64,
12859         s_pwrite64, s_ftruncate, s_truncate): Re-add.
12861 2002-11-05  Jakub Jelinek  <jakub@redhat.com>
12863         * iconv/gconv_dl.c (free_mem): Clear loaded.
12864         * locale/loadarchive.c (_nl_archive_subfreeres): Call locale_data's
12865         cleanup if any.
12867 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
12869         * sysdeps/unix/sysv/linux/fexecve.c: Include <stdio.h>.
12871         * libio/ioseekoff.c: Remove INTDEF.  Define _IO_seekoff_unlocked.  Same
12872         as old code without locking.  _IO_seekoff calls this function after
12873         locking the stream.
12874         * libio/ioseekpos.c: Likewise for _IO_seekpos.
12875         * libio/libioP.h: Replace _IO_seekoff_internal and _IO_seekpos_internal
12876         prototypes with _IO_seekoff_unlocked and _IO_seekpos_unlocked
12877         prototypes.
12878         * libio/iolibio.h (_IO_fseek): Call _IO_seekoff_unlocked instead
12879         of _IO_seekoff_internal.
12880         (_IO_rewind): Likewise.
12881         * libio/ioftell.c: Likewise.
12882         * libio/ftello.c: Likewise.
12883         * libio/ftello64.c: Likewise.
12884         * libio/iofgetpos.c: Likewise.
12885         * libio/iofgetpos64.c: Likewise.
12886         * libio/oldiofgetpos.c: Likewise.
12887         * libio/oldiofgetpos64.c: Likewise.
12888         * libio/iofsetpos.c: Call _IO_seekpos_unlocked instead of
12889         _IO_seekpos_internal.
12890         * libio/iofsetpos64.c: Likewise.
12891         * libio/oldiofsetpos.c: Likewise.
12892         * libio/oldiofsetpos64.c: Likewise.
12894 2002-11-04  Roland McGrath  <roland@redhat.com>
12896         * sysdeps/unix/sysv/linux/powerpc/chown.c: Use INLINE_SYSCALL macro.
12897         * sysdeps/unix/sysv/linux/powerpc/ftruncate64.c: Likewise.
12898         * sysdeps/unix/sysv/linux/powerpc/ioctl.c: Likewise.
12899         * sysdeps/unix/sysv/linux/powerpc/pread.c: Likewise.
12900         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Likewise.
12901         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Likewise.
12902         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Likewise.
12903         * sysdeps/unix/sysv/linux/powerpc/tcgetattr.c: Likewise.
12904         * sysdeps/unix/sysv/linux/powerpc/tcsetattr.c: Likewise.
12905         * sysdeps/unix/sysv/linux/powerpc/truncate64.c: Likewise.
12906         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list (s_ioctl,
12907         s_chown, s_ftruncate64, s_mmap2, s_pread64, s_pwrite64, s_truncate64,
12908         sys_fstat, sys_lstat, sys_mknod, sys_readv, sys_stat, sys_writev):
12909         Remove these, no longer used.
12911 2002-11-04  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
12913         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list (s_ipc,
12914         s_llseek, s_readahead, s_execve, s_fcntl, s_fcntl64, s_fstat64,
12915         s_getcwd, s_getdents, s_getdents64, s_getpmsg, s_getpriority,
12916         s_getrlimit, s_lstat64, s_poll, s_ptrace, s_putpmsg, s_reboot,
12917         s_setrlimit, s_sigaction, s_sigpending, s_sigprocmask, s_sigsuspend,
12918         s_stat64, s_sysctl, s_ugetrlimit, s_ustat, s_vfork): Remove now unused
12919         syscall stubs.
12921         * sysdeps/unix/sysv/linux/pwrite.c: Fix typo.
12922         * sysdeps/unix/sysv/linux/pwrite64.c: Likewise.
12923         * sysdeps/unix/sysv/linux/powerpc/pread.c: Handle both __NR_pread64
12924         and __NR_pread.
12925         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Likewise.
12926         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Handle both __NR_pwrite64
12927         and __NR_pwrite.
12928         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Likewise.
12930 2002-11-03  Roland McGrath  <roland@redhat.com>
12932         * sysdeps/generic/ldsodefs.h (struct rtld_global): New member
12933         `_dl_tls_static_used'.
12934         * sysdeps/generic/libc-tls.c (_dl_tls_static_used): New variable.
12935         (__libc_setup_tls): Initialize it.  Let the initial value of
12936         _dl_tls_static_size indicate some surplus space in the computed value.
12937         * elf/dl-open.c (_dl_tls_static_size): New variable.
12938         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Initialize
12939         _dl_tls_static_used.  Add some surplus space into _dl_tls_static_size.
12940         * elf/dl-reloc.c [USE_TLS] (allocate_static_tls): New function.
12941         (CHECK_STATIC_TLS): Use it.
12942         * elf/dl-close.c (_dl_close): Adjust _dl_tls_static_used when the
12943         closed objects occupied a trailing contiguous chunk of static TLS area.
12945 2002-10-18  Bruno Haible  <bruno@clisp.org>
12947         * charmaps/ISO_5428: Use Greek characters introduced in Unicode 3.0.
12949 2002-11-04  Ulrich Drepper  <drepper@redhat.com>
12951         * libio/wfileops.c (_IO_wfile_seekoff): Don't modify _offset and
12952         _wide_data->_IO_read_end if adjustment can be made in the current
12953         buffer.
12955         * sysdeps/unix/sysv/linux/fexecve.c: New file.
12957         * libio/bug-wfflush.c (do_test): Using fseek is not allowed when
12958         wide oriented streams are used.
12960         * nss/getXXent_r.c (ENDFUNC_NAME): Don't do anything if the
12961         service hasn't been used [PR libc/4744].
12963         * include/features.h: Use __STDC_VERSION__ not __STDC_VERSION.
12964         Reported by Miloslav Trmac <mitr@volny.cz> [PR libc/4766].
12966         * manual/examples/dir.c: Don't include <stddef.h>.
12967         * manual/examples/select.c: Include <errno.h> for TEMP_FAILURE_RETRY.
12968         Reported by Frédéric Delanoy <delanoy_f@yahoo.com>.
12970 2002-11-02  H.J. Lu  <hjl@gnu.org>
12972         * stdio-common/reg-printf.c: Include <stddef.h>.
12974 2002-11-03  Ulrich Drepper  <drepper@redhat.com>
12976         * sysdeps/generic/libc-tls.c: Define _dl_tls_static_used.
12978         * po/ca.po: Update from translation team.
12979         * po/es.po: Likewise.
12981         * sysdeps/generic/segfault.c (catch_segfault): If HAVE_PROC_SELF
12982         is defined write out memory map.
12983         * sysdeps/unix/sysv/linux/segfault.c: New file.
12985 2002-11-02  Roland McGrath  <roland@redhat.com>
12987         * sysdeps/unix/sysv/linux/getdents.c (__GETDENTS): Use union type for
12988         pointers that can alias.
12989         Reported by Daniel Jacobowitz <drow@mvista.com>.
12991         * sysdeps/unix/bsd/bsd4.4/freebsd/bits/typesizes.h: New file.
12993 2002-11-02  Roland McGrath  <roland@redhat.com>
12995         * manual/filesys.texi (Reading/Closing Directory): Rewrite readdir_r
12996         description to be clearer and to say that *RESULT is set to ENTRY.
12998 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
13000         * posix/regexec.c (build_trtable): Alloca or malloc dests_node and
13001         dests_ch arrays together.  Alloca or malloc dest_states,
13002         dest_states_word and dest_states_nl arrays together.  Free memory on
13003         error exit.
13005 2002-10-29  Daniel Jacobowitz  <drow@mvista.com>
13007         * crypt/crypt_util.c (__init_des_r): Initialize current_salt
13008         and current_saltbits.
13010 2002-11-02  Roland McGrath  <roland@redhat.com>
13012         * stdio-common/reg-printf.c: Include <stdlib.h>.
13014 2002-11-02  H.J. Lu  <hjl@gnu.org>
13016         * sysdeps/unix/sysv/linux/mips/syscalls.list (s_execve): Set
13017         caller to EXTRA instead of execve.
13019 2002-11-01  Roland McGrath  <roland@redhat.com>
13021         * sysdeps/generic/errno-loc.c [! USE___THREAD]: Use this conditional
13022         in place of [!(USE_TLS && HAVE___THREAD)].
13023         (__errno_location) [! USE___THREAD]: Define as strong, not weak.
13025 2002-10-31  Roger Sayle  <roger@eyesopen.com>
13027         * sysdeps/i386/soft-fp/sfp-machine.h (_FP_NANFRAC_Q, _FP_NANSIGN_Q):
13028         New macros.
13029         * sysdeps/x86_64/soft-fp/sfp-machine.h: Likewise.
13031         * soft-fp/soft-fp.h: Allow sfp-machine.h to define FP_RND_NEAREST
13032         without defining FP_ROUNDMODE.
13034 2002-10-29  Jakub Jelinek  <jakub@redhat.com>
13036         * sysdeps/gnu/siglist.c (PTR_SIZE_STR): Remove.
13037         (__old_sys_siglist, __old_sys_sigabbrev): Use strong_alias and
13038         declare_symbol.
13039         * sysdeps/mach/hurd/siglist.h (OLD_SIGLIST_SIZE_STR): Remove.
13040         (OLD_SIGLIST_SIZE): Define.
13041         * sysdeps/unix/sysv/linux/siglist.h (OLD_SIGLIST_SIZE_STR): Remove.
13042         (OLD_SIGLIST_SIZE): Define.
13043         * sysdeps/unix/sysv/linux/arm/siglist.c: Remove.
13045 2002-11-01  Jakub Jelinek  <jakub@redhat.com>
13047         * sysdeps/ia64/strncpy.S: Fix recovery code.
13049 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
13051         * include/libc-symbols.h (__libc_freeres_fn_section, libc_freeres_fn):
13052         New macros.
13053         * elf/dl-close.c (free_mem): Use libc_freeres_fn macro, remove
13054         text_set_element.
13055         * elf/dl-libc.c (free_mem): Likewise.
13056         * iconv/gconv_conf.c (free_mem): Likewise.
13057         * iconv/gconv_db.c (free_mem): Likewise.
13058         * iconv/gconv_dl.c (free_mem): Likewise.
13059         * iconv/gconv_cache.c (free_mem): Likewise.
13060         * intl/finddomain.c (free_mem): Likewise.
13061         * intl/dcigettext.c (free_mem): Likewise.
13062         * locale/setlocale.c (free_mem): Likewise.
13063         * misc/fstab.c (fstab_free): Likewise.
13064         * nss/nsswitch.c (free_mem): Likewise.
13065         * posix/regcomp.c (free_mem): Likewise.
13066         * resolv/gai_misc.c (free_res): Likewise.
13067         * stdlib/fmtmsg.c (free_mem): Likewise.
13068         * sunrpc/clnt_perr.c (free_mem): Likewise.
13069         * sysdeps/generic/setenv.c (free_mem): Likewise.
13070         * sysdeps/unix/sysv/linux/shm_open.c (freeit): Likewise.
13071         * sysdeps/pthread/aio_misc.c (free_res): Likewise.
13072         * time/tzset.c (free_mem): Likewise.
13073         * malloc/mtrace.c (release_libc_mem): Add __libc_freeres_fn_section.
13074         * locale/loadarchive.c (_nl_archive_subfreeres): Likewise.
13075         * malloc/set-freeres.c (__libc_freeres): Likewise.
13077         * login/getutent.c: Include stdlib.h instead of stddef.h.
13078         (buffer): Change into pointer to utmp, add libc_freeres_ptr.
13079         (__getutent): Allocate buffer the first time it is run.
13080         * login/getutid.c: Include stdlib.h instead of stddef.h.
13081         (buffer): Change into pointer to utmp, add libc_freeres_ptr.
13082         (__getutid): Allocate buffer the first time it is run.
13083         * login/getutline.c: Include stdlib.h instead of stddef.h.
13084         (buffer): Change into pointer to utmp, add libc_freeres_ptr.
13085         (__getutline): Allocate buffer the first time it is run.
13086         * malloc/mtrace.c (malloc_trace_buffer): Change into char *.
13087         (mtrace): Allocate malloc_trace_buffer.
13088         * resolv/nsap_addr.c (inet_nsap_ntoa): Decrease size of tmpbuf.
13089         * resolv/ns_print.c (ns_sprintrrf): Decrease size of t.
13090         * string/strerror.c: Include libintl.h and errno.h.
13091         (buf): New variable.
13092         (strerror): Only allocate buffer if actually needed (unknown error).
13093         * time/tzfile.c (transitions): Add libc_freeres_ptr.
13094         (freeres): Remove.
13096 2002-10-25  Jakub Jelinek  <jakub@redhat.com>
13098         * include/libc-symbols.h (libc_freeres_ptr): New macro.
13099         * malloc/set-freeres.c (__libc_freeres_ptrs): Define using
13100         symbol_set_define.
13101         (__libc_freeres): Free all pointers in that section.
13102         * Makerules (build-shlib): Add $(LDSEDCMD-$(@F:lib%.so=%).so) to sed
13103         commands when creating .lds script.
13104         (LDSEDCMD-c.so): New variable.
13105         * inet/rcmd.c (ahostbuf): Change into char *.  Add libc_freeres_ptr.
13106         (rcmd_af): Use strdup to allocate ahostbuf.
13107         * inet/rexec.c (ahostbuf): Change into char *.  Add libc_freeres_ptr.
13108         (rexec_af): Use strdup to allocate ahostbuf.
13109         * stdio-common/reg-printf.c (printf_funcs): Remove.
13110         (__printf_arginfo_table): Change into printf_arginfo_function **.
13111         Add libc_freeres_ptr.
13112         (__register_printf_function): Allocate __printf_arginfo_table
13113         and __printf_function_table the first time it is called.
13114         * stdio-common/printf-parse.h (__printf_arginfo_table): Change into
13115         printf_arginfo_function **.
13116         (parse_one_spec): Add __builtin_expect.
13117         * grp/fgetgrent.c (buffer): Add libc_freeres_ptr.
13118         (free_mem): Remove.
13119         * inet/getnetgrent.c (buffer): Add libc_freeres_ptr.
13120         (free_mem): Remove.
13121         * intl/localealias.c (libc_freeres_ptr): Define if !_LIBC.
13122         (string_space, map): Add libc_freeres_ptr.
13123         (free_mem): Remove.
13124         * misc/efgcvt.c (FCVT_BUFPTR): Add libc_freeres_ptr.
13125         (free_mem): Remove.
13126         * misc/mntent.c (getmntent_buffer): Add libc_freeres_ptr.
13127         (free_mem): Remove.
13128         * crypt/md5-crypt.c (libc_freeres_ptr): Define if !_LIBC.
13129         (buffer): Add libc_freeres_ptr.
13130         (free_mem): Remove for _LIBC.
13131         * nss/getXXbyYY.c (buffer): Add libc_freeres_ptr.
13132         (free_mem): Remove.
13133         * nss/getXXent.c (buffer): Add libc_freeres_ptr.
13134         (free_mem): Remove.
13135         * pwd/fgetpwent.c (buffer): Add libc_freeres_ptr.
13136         (free_mem): Remove.
13137         * resolv/res_hconf.c (ifaddrs): Add libc_freeres_ptr.
13138         (free_mem): Remove.
13139         * shadow/fgetspent.c (buffer): Add libc_freeres_ptr.
13140         (free_mem): Remove.
13141         * sysdeps/posix/ttyname.c (getttyname_name): Add libc_freeres_ptr.
13142         (free_mem): Remove.
13143         * sysdeps/unix/sysv/linux/getsysstats.c (mount_proc): Add
13144         libc_freeres_ptr.
13145         (free_mem): Remove.
13146         * sysdeps/unix/sysv/linux/ttyname.c (getttyname_name, ttyname_buf): Add
13147         libc_freeres_ptr.
13148         (free_mem): Remove.
13150 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
13152         * malloc/obstack.c [_LIBC] (obstack_free): Change into strong_alias
13153         instead of duplicating the whole function in libc.
13155 2002-10-31  Roland McGrath  <roland@redhat.com>
13157         * sysdeps/i386/bits/byteswap.h [__GNUC__ < 2] (__bswap_32):
13158         Renamed from __bswap_16 (typo fix).  Reported by <dens@stl.sarov.ru>.
13160 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
13162         * sysdeps/unix/sysv/linux/Makefile (syscall-%.h): Add -D for each
13163         32bit-predefine when creating .new32 list and -U for each
13164         32bit-predefine when creating .new64 list.
13165         * sysdeps/unix/sysv/linux/x86_64/Makefile (32bit-predefine): New.
13167 2002-10-29  Andreas Schwab  <schwab@suse.de>
13169         * sysdeps/generic/allocrtsig.c: Include <testrtsig.h>, not
13170         "testrtsig.h".  Reported by Daniel Jacobowitz <dan@debian.org>.
13172 2002-10-25  Roland McGrath  <roland@redhat.com>
13174         * sysdeps/unix/sysv/linux/configure.in: Fix typo in last change.
13175         * sysdeps/unix/sysv/linux/configure: Regenerated.
13177         * sysdeps/generic/ldsodefs.h: Remove [! SHARED] conditional from
13178         _dl_starting_up decl.
13180 2002-10-20  H.J. Lu  <hjl@gnu.org>
13182         * sysdeps/unix/sysv/linux/configure.in: Don't check
13183         /lib/modules/`uname -r`/build/include for kernel headers if
13184         cross compiling.
13185         * sysdeps/unix/sysv/linux/configure: Regenerated.
13187 2002-10-25  Roland McGrath  <roland@redhat.com>
13189         * math/math.h (M_LOG2El): Correct the value.
13190         From Stephen L Moshier <steve@moshier.net>.
13192         * sysdeps/unix/sysv/linux/init-first.c (init): Remove [! SHARED]
13193         conditional from __libc_multiple_libcs access.  Remove kludge for weak
13194         symbol access with old compilers we no longer support.
13195         * sysdeps/unix/sysv/aix/init-first.c (init): Likewise.
13196         * sysdeps/generic/libc-start.c (__libc_start_main): Likewise.
13198 2002-10-25  Roland McGrath  <roland@redhat.com>
13200         * sysdeps/posix/sigvec.c [SA_RESETHAND]: Disable wrapper hacks and
13201         implement SV_RESETHAND by translating it to SA_RESETHAND.
13203 2002-10-23  Alexandre Oliva  <aoliva@redhat.com>
13205         * elf/dl-reloc.c (_dl_reloc_bad_use): Print the full 32-bit relocation
13206         type on ELF64 platforms.
13208 2002-10-24  Ulrich Drepper  <drepper@redhat.com>
13210         * elf/elf.h (R_X86_64_GOTTPOFF): Renamed from r_x86_64_GOTTPOFF.
13212         * elf/elf.h: Define ELF_NOTE_OS_FREEBSD and NT_TASKSTRUCT.
13214 2002-10-24  Jakub Jelinek  <jakub@redhat.com>
13216         * elf/dl-misc.c: Include <sysdep.h>.
13217         (_dl_debug_vdprintf): Only take dl_load_lock if not _dl_starting_up.
13219         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (INTERNAL_SYSCALL,
13220         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
13221         (INLINE_SYSCALL): Use that.
13222         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (INTERNAL_SYSCALL,
13223         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
13224         (INLINE_SYSCALL): Use that.
13225         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (INTERNAL_SYSCALL,
13226         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
13227         (INLINE_SYSCALL): Use that.
13228         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Include
13229         dl-sysdep.h.
13230         (SYSCALL_ERROR_HANDLER): Define RTLD_PRIVATE_ERRNO variant.
13231         (__INTERNAL_SYSCALL_STRING): Define.
13232         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h: Include
13233         dl-sysdep.h.
13234         (SYSCALL_ERROR_HANDLER): Define RTLD_PRIVATE_ERRNO variant.
13235         (__INTERNAL_SYSCALL_STRING): Define.
13236         * sysdeps/unix/sysv/linux/sparc/sysdep.h (INLINE_SYSCALL): Pass
13237         __SYSCALL_STRING to inline_syscall*.
13238         (INTERNAL_SYSCALL, INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO):
13239         New macros.
13240         (inline_syscall0, inline_syscall1, inline_syscall2, inline_syscall3,
13241         inline_syscall4, inline_syscall5, inline_syscall6): Add string
13242         argument.
13244 2002-10-24  Roland McGrath  <roland@redhat.com>
13246         * sysdeps/generic/ldsodefs.h (_dl_starting_up): Declare it here.
13247         * sysdeps/unix/sysv/linux/init-first.c: Not here.
13248         * sysdeps/powerpc/elf/libc-start.c: Or here.
13249         * sysdeps/unix/sysv/aix/libc-start.c: Or here.
13250         * sysdeps/unix/sysv/aix/start-libc.c: Or here.
13251         * sysdeps/unix/sysv/aix/init-first.c: Or here.
13252         * sysdeps/generic/libc-start.c: Or here.
13253         * sysdeps/unix/sysv/linux/init-first.c (init): Protect _dl_starting_up
13254         access with [! SHARED].
13255         * sysdeps/unix/sysv/aix/init-first.c (init): Likewise.
13257         * libio/bug-wfflush.c: New file.
13258         * libio/Makefile (tests): Add bug-wfflush.
13260 2002-10-23  Roland McGrath  <roland@redhat.com>
13262         * stdio-common/tst-fphex.c: New file.
13263         * stdio-common/Makefile (tests): Add tst-fphex.
13264         * sysdeps/generic/printf_fphex.c (__printf_fphex): Fix initialization
13265         of WNUMEND.  Fix counting of decimal point in WIDTH.  Print '0' pad
13266         chars always before the value digits.
13267         Reported by James Antill <james.antill@redhat.com>.
13269 2002-10-24  Jakub Jelinek  <jakub@redhat.com>
13271         * posix/regcomp.c (re_comp): Call __regfree on re_comp_buf.
13272         (free_mem): New function.
13273         * posix/Makefile (tests): Add bug-regex14.  Add bug-regex14-mem
13274         if not cross compiling.
13275         (generated): Add bug-regex14-mem and bug-regex14.mtrace.
13276         (bug-regex14-ENV): Set.
13277         (bug-regex14-mem): New target.
13278         * posix/bug-regex14.c: New file.
13280 2002-10-23  Roland McGrath  <roland@redhat.com>
13282         * elf/Makefile ($(objpfx)librtld.map): Use temporary file for output
13283         target, so we don't touch it when the link fails.
13285         * libio/ftello.c (ftello): Use _IO_off64_t for type of POS.
13286         Check for the result overflowing off_t and fail with EOVERFLOW.
13287         * libio/ioftell.c (_IO_ftell): Likewise.
13288         * libio/iofgetpos.c (_IO_new_fgetpos): Likewise.
13290         * login/logwtmp.c (logwtmp): If sizeof ut_tv != sizeof struct timeval,
13291         use a temporary timeval on the stack for gettimeofday and copy it.
13292         * login/logout.c (logout): Likewise.
13293         Reported by Steven Munroe <sjmunroe@us.ibm.com>.
13295         * sysdeps/unix/sysv/linux/bits/statfs.h (struct statfs):
13296         Use __SWORD_TYPE instead of int for member types.
13297         (struct statfs64): Likewise.
13298         * sysdeps/unix/sysv/linux/alpha/bits/statfs.h: New file.
13299         * sysdeps/unix/sysv/linux/s390/bits/statfs.h: New file.
13300         * sysdeps/unix/sysv/linux/ia64/bits/statfs.h: File removed.
13301         * sysdeps/unix/sysv/linux/sparc/bits/statfs.h: File removed.
13302         * sysdeps/unix/sysv/linux/x86_64/bits/statfs.h: File removed.
13304         * sysdeps/unix/sysv/linux/sparc/bits/statvfs.h: Moved to ...
13305         * sysdeps/unix/sysv/linux/bits/statvfs.h: ... here.
13306         (ST_NODIRATIME): Restore fixed value of 2048.
13307         * sysdeps/unix/sysv/linux/alpha/bits/statvfs.h: File removed.
13308         * sysdeps/unix/sysv/linux/ia64/bits/statvfs.h: File removed.
13310         Rearranged <bits/types.h> definitions to reduce duplication.
13311         * sysdeps/generic/bits/types.h: Rewritten, using macros from
13312         <bits/wordsize.h> and new header <bits/typesizes.h>.
13313         * posix/Makefile (headers): Add bits/typesizes.h here.
13314         * sysdeps/generic/bits/typesizes.h: New file.
13315         * sysdeps/unix/sysv/linux/alpha/bits/typesizes.h: New file.
13316         * sysdeps/unix/sysv/linux/sparc/bits/typesizes.h: New file.
13317         * sysdeps/mach/hurd/bits/typesizes.h: New file.
13318         * sysdeps/unix/sysv/linux/alpha/bits/types.h: File removed.
13319         * sysdeps/unix/sysv/linux/bits/types.h: File removed.
13320         * sysdeps/unix/sysv/linux/ia64/bits/types.h: File removed.
13321         * sysdeps/unix/sysv/linux/mips/bits/types.h: File removed.
13322         * sysdeps/unix/sysv/linux/s390/bits/types.h: File removed.
13323         * sysdeps/unix/sysv/linux/sparc/bits/types.h: File removed.
13324         * sysdeps/unix/sysv/linux/x86_64/bits/types.h: File removed.
13325         * posix/sys/types.h [__USE_POSIX199506 || __USE_UNIX98]: Include
13326         <bits/pthreadtypes.h> here, not in <bits/types.h>.
13327         * signal/signal.h: Likewise.
13329         * streams/stropts.h: Include <bits/xtitypes.h>.
13330         * streams/Makefile (headers): Add bits/xtitypes.h here.
13331         * sysdeps/generic/bits/xtitypes.h: New file.
13332         * sysdeps/s390/bits/xtitypes.h: New file.
13333         * sysdeps/ia64/bits/xtitypes.h: New file.
13334         * sysdeps/x86_64/bits/xtitypes.h: New file.
13336         * sysvipc/Makefile (headers): Add bits/ipctypes.h here.
13337         * sysdeps/generic/bits/ipctypes.h: New file.
13338         * sysdeps/mips/bits/ipctypes.h: New file.
13339         * sysdeps/gnu/bits/shm.h: Include <bits/ipctypes.h>.
13340         * sysdeps/gnu/bits/msq.h: Likewise.
13341         * sysvipc/sys/ipc.h: Likewise.
13343 2002-10-22  Ulrich Drepper  <drepper@redhat.com>
13345         * elf/dl-load.c (struct filebuf): For buf element to have the
13346         alignment of ElfXX_Ehdr since this is what will be stored in it.
13348 2002-10-22  Jakub Jelinek  <jakub@redhat.com>
13350         * locale/programs/locarchive.c (add_alias): Change locrec_offset arg
13351         into pointer to locrec_offset.
13352         (add_locale_to_archive): Adjust callers.  Free normalized_name right
13353         before returning, not immediately after add_locale, pass it to
13354         add_alias if not NULL instead of name.  Rename second normalized_name
13355         occurence to nnormalized_codeset_name.
13357         * locale/programs/locarchive.c (enlarge_archive): Make sure
13358         string_size is always a multiple of 4.
13359         Reported by Andreas Schwab <schwab@suse.de>.
13361 2002-10-21  Andreas Schwab  <schwab@suse.de>
13363         * sysdeps/unix/sysv/linux/ia64/syscalls.list (s_execve): Set
13364         caller to EXTRA instead of execve, since the latter has a
13365         higher-priority implementation in linuxthreads.
13367 2002-10-21  Roland McGrath  <roland@redhat.com>
13369         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Initialize the static
13370         slotinfo list's len member to the proper size, not just 1.
13371         Initialize static_map.l_tls_initimage.
13373         * elf/dl-open.c (dl_open_worker): Fix loop searching for
13374         dtv_slotinfo_list element containing new modules' l_tls_modid.
13376         * elf/tst-tls9.c, elf/tst-tls9-static.c: New files.
13377         * elf/tst-tlsmod5.c, elf/tst-tlsmod6.c: New files.
13378         * elf/Makefile (tests): Add tst-tls9.
13379         (tests-static): Add tst-tls9-static.
13380         (tst-tls9-static-ENV): New variable.
13381         ($(objpfx)tst-tls9-static, $(objpfx)tst-tls9-static.out): New targets.
13383         * elf/dl-close.c (remove_slotinfo): Remove an assert; the number of
13384         modids used by partially loaded modules being closed can't be known.
13386 2002-10-21  Isamu Hasegawa  <isamu@yamato.ibm.com>
13388         * posix/Makefile: Add a test case for the bug reported by Aharon
13389         Robbins <arnold@skeeve.com>.
13390         * posix/bug-regex13.c: New file.
13391         * posix/regcomp.c (peek_token_bracket): Skip the byte already read.
13393 2002-10-21  Ulrich Drepper  <drepper@redhat.com>
13395         * csu/gmon-start.c: Pretty printing.
13397 2002-10-19  Art Haas  <ahaas@neosoft.com>
13399         * configure.in: Replace AC_CONFIG_HEADER with AC_CONFIG_HEADERS,
13400         add AC_HELP_STRING to all AC_ARG_WITH and AC_ARG_ENABLE macros,
13401         add autoconf quotes to the AC_CONFIG_AUX_DIR macro.
13402         * configure: Regenerated.
13404 2002-10-19  Roland McGrath  <roland@redhat.com>
13406         * configure.in: Call AC_CONFIG_SUBDIRS with empty argument
13407         and then set $subdirs directly, because the new Autoconf breaks
13408         compatibility in every way imaginable and insists on whining
13409         about usage that worked since the dawn of time.
13410         * configure: Regenerated.
13412         * configure: Regenerated (using Autoconf 2.54).
13413         * sysdeps/alpha/elf/configure: Likewise.
13414         * sysdeps/generic/configure: Likewise.
13415         * sysdeps/i386/elf/configure: Likewise.
13416         * sysdeps/ia64/elf/configure: Likewise.
13417         * sysdeps/mach/hurd/configure: Likewise.
13418         * sysdeps/mach/configure: Likewise.
13419         * sysdeps/unix/configure: Likewise.
13420         * sysdeps/unix/common/configure: Likewise.
13421         * sysdeps/unix/sysv/aix/configure: Likewise.
13422         * sysdeps/unix/sysv/linux/configure: Likewise.
13423         * sysdeps/unix/sysv/linux/mips/configure: Likewise.
13424         * sysdeps/x86_64/elf/configure: Likewise.
13426         * config.make.in: Nix completely-soft nonsense.
13427         * configure.in: Likewise.  Under --without-fp, use nofpu subdirectory
13428         of machine directories instead of fpu subdirectory.
13429         * sysdeps/powerpc/soft-fp/Makefile: Remove cruft added in last change.
13430         * sysdeps/powerpc/nofpu/Makefile: Put it in this new file instead.
13431         * sysdeps/powerpc/soft-fp/sim-full.c: Moved to ...
13432         * sysdeps/powerpc/nofpu/sim-full.c: ... here.
13433         * sysdeps/powerpc/soft-fp/fraiseexcpt.c: Moved to ...
13434         * sysdeps/powerpc/nofpu/fraiseexcpt.c: ... here.
13435         * sysdeps/powerpc/soft-fp/fegetexcept.c: Moved to ...
13436         * sysdeps/powerpc/nofpu/fegetexcept.c: ... here.
13437         * sysdeps/powerpc/soft-fp/fclrexcpt.c: Moved to ...
13438         * sysdeps/powerpc/nofpu/fclrexcpt.c: ... here.
13439         * sysdeps/powerpc/soft-fp/ftestexcept.c: Moved to ...
13440         * sysdeps/powerpc/nofpu/ftestexcept.c: ... here.
13441         * sysdeps/powerpc/soft-fp/fgetexcptflg.c: Moved to ...
13442         * sysdeps/powerpc/nofpu/fgetexcptflg.c: ... here.
13443         * sysdeps/powerpc/soft-fp/fsetexcptflg.c: Moved to ...
13444         * sysdeps/powerpc/nofpu/fsetexcptflg.c: ... here.
13445         * sysdeps/powerpc/soft-fp/fedisblxcpt.c: Moved to ...
13446         * sysdeps/powerpc/nofpu/fedisblxcpt.c: ... here.
13447         * sysdeps/powerpc/soft-fp/feenablxcpt.c: Moved to ...
13448         * sysdeps/powerpc/nofpu/feenablxcpt.c: ... here.
13449         * sysdeps/powerpc/soft-fp/fegetenv.c: Moved to ...
13450         * sysdeps/powerpc/nofpu/fegetenv.c: ... here.
13451         * sysdeps/powerpc/soft-fp/fesetenv.c: Moved to ...
13452         * sysdeps/powerpc/nofpu/fesetenv.c: ... here.
13453         * sysdeps/powerpc/soft-fp/fegetround.c: Moved to ...
13454         * sysdeps/powerpc/nofpu/fegetround.c: ... here.
13455         * sysdeps/powerpc/soft-fp/fesetround.c: Moved to ...
13456         * sysdeps/powerpc/nofpu/fesetround.c: ... here.
13457         * sysdeps/powerpc/soft-fp/feupdateenv.c: Moved to ...
13458         * sysdeps/powerpc/nofpu/feupdateenv.c: ... here.
13459         * sysdeps/powerpc/soft-fp/feholdexcpt.c: Moved to ...
13460         * sysdeps/powerpc/nofpu/feholdexcpt.c: ... here.
13461         * sysdeps/powerpc/soft-fp/fenv_const.c: Moved to ...
13462         * sysdeps/powerpc/nofpu/fenv_const.c: ... here.
13463         * sysdeps/powerpc/soft-fp/libm-test-ulps: Moved to ...
13464         * sysdeps/powerpc/nofpu/libm-test-ulps: ... here.
13465         * sysdeps/powerpc/soft-fp/soft-supp.h: Moved to ...
13466         * sysdeps/powerpc/nofpu/soft-supp.h: ... here.
13467         * sysdeps/powerpc/soft-fp/Versions (libc: GLIBC_2.3.2): Moved to ...
13468         * sysdeps/powerpc/nofpu/Versions: ... here, new file.
13470 2002-10-19  Bruno Haible  <bruno@clisp.org>
13472         * sysdeps/unix/bsd/bsd4.4/freebsd/sys/sysmacros.h: New file.
13474 2002-10-18  Roland McGrath  <roland@redhat.com>
13476         * io/Makefile (routines): Add lchmod.
13477         * io/sys/stat.h [__USE_BSD] (lchmod): Declare it.
13478         * sysdeps/generic/lchmod.c: New file.
13479         * sysdeps/mach/hurd/lchmod.c: New file.
13480         * io/Versions (libc: GLIBC_2.3.2): New set, add lchmod.
13482 2002-10-18  Art Haas  <ahaas@neosoft.com>
13484         * configure.in: Remove remaining AC_FD_CC macros, and replace
13485         AC_FD_MSG with AS_MESSAGE_FD.
13487 2002-10-18  Roland McGrath  <roland@redhat.com>
13489         * sysdeps/powerpc/powerpc32/dl-machine.c (__process_machine_rela): Fix
13490         typos: VALUE -> FINALADDR.
13492         * sysdeps/unix/alpha/sysdep.h (INLINE_SYSCALL, INLINE_SYSCALL1)
13493         (inline_syscall_clobbers, inline_syscall0, inline_syscall1)
13494         (inline_syscall2, inline_syscall3, inline_syscall4, inline_syscall5)
13495         (inline_syscall6): Move these macros ...
13496         * sysdeps/unix/sysv/linux/alpha/sysdep.h: ... to here.
13498         * configure.in (libc_link_dests, libc_link_sources): Remove these
13499         variables and the AC_LINK_FILES call.
13501         * sysdeps/powerpc/soft-fp/Versions (libc: GLIBC_2.3.2): Fix last
13502         change to put new symbols here instead of in GLIBC_2.2.
13503         * sysdeps/powerpc/Subdirs: Move this file ...
13504         * sysdeps/powerpc/soft-fp/Subdirs: ... here.
13506 2002-10-07  Roland McGrath  <roland@redhat.com>
13508         * sysdeps/generic/bits/time.h: Replaced with contents of the
13509         sysdeps/unix/sysv/linux/i386/bits/time.h file.  All the following
13510         files were identical except for the absence of CLOCK_THREAD_CPUTIME_ID
13511         and CLOCK_PROCESS_CPUTIME_ID in .../linux/bits/time.h; adding these
13512         macros is ok even for architectures that don't now implement them.
13513         * sysdeps/mach/hurd/bits/time.h: File removed.
13514         * sysdeps/unix/sysv/linux/bits/time.h: File removed.
13515         * sysdeps/unix/sysv/linux/i386/bits/time.h: File removed.
13516         * sysdeps/unix/sysv/linux/ia64/bits/time.h: File removed.
13517         * sysdeps/unix/sysv/linux/sparc/bits/time.h: File removed.
13518         * sysdeps/unix/sysv/linux/x86_64/bits/time.h: File removed.
13520 2002-10-18  Jeff Bailey  <jbailey@gnu.org>
13522         * configure.in: Replace obsolete AC_OUTPUT syntax with
13523         AC_CONFIG_FILES, AC_CONFIG_COMMANDS, and new-type AC_OUTPUT trio.
13525         * aclocal.m4 (GLIBC_PROVIDES): Add AC_PROVIDEs for
13526         _AS_PATH_SEPARATOR_PREPARE and _AS_TEST_PREPARE.
13528         * configure.in: Replace AC_FD_CC with AS_MESSAGE_LOG_FD.
13529         * sysdeps/alpha/elf/configure.in: Likewise.
13530         * sysdeps/i386/elf/configure.in: Likewise.
13531         * sysdeps/mach/hurd/configure.in: Likewise.
13532         * sysdeps/x86_64/elf/configure.in: Likewise.
13534         * configure.in: Use AC_CONFIG_SRCDIR and new AC_INIT syntax.
13536         * sysdeps/alpha/elf/configure.in: Remove unneeded sinclude statement.
13537         * sysdeps/generic/configure.in: Likewise.
13538         * sysdeps/i386/elf/configure.in: Likewise.
13539         * sysdeps/ia64/elf/configure.in: Likewise.
13540         * sysdeps/mach/configure.in: Likewise.
13541         * sysdeps/mach/hurd/configure.in: Likewise.
13542         * sysdeps/unix/configure.in: Likewise.
13543         * sysdeps/unix/common/configure.in: Likewise.
13544         * sysdeps/unix/sysv/aix/configure.in: Likewise.
13545         * sysdeps/unix/sysv/linux/configure.in: Likewise.
13546         * sysdeps/unix/sysv/linux/mips/configure.in: Likewise.
13547         * sysdeps/x86_64/elf/configure.in: Likewise.
13549         * aclocal.m4: Use just the bits from AS_INIT that are needed for the
13550         GLIBC_PROVIDES.  Use plain comment instead of HEADER-COMMENT so
13551         that it's obvious when extra autoconf machinery is being dragged in.
13553 2002-10-18  Roland McGrath  <roland@redhat.com>
13555         * configure.in: Remove bogus echo included in
13556         2002-10-08  Aldy Hernandez  <aldyh@redhat.com> change.
13557         * configure: Regenerated.
13559 2002-10-18  Jakub Jelinek  <jakub@redhat.com>
13561         * sysdeps/unix/sysv/linux/pathconf.h (statfs_link_max): Add inline.
13562         (statfs_filesize_max): New function.
13563         * sysdeps/unix/sysv/linux/linux_fsinfo.h (JFFS_SUPER_MAGIC,
13564         JFFS2_SUPER_MAGIC, JFS_SUPER_MAGIC, NTFS_SUPER_MAGIC,
13565         ROMFS_SUPER_MAGIC, UDF_SUPER_MAGIC): Define.
13566         * sysdeps/unix/sysv/linux/fpathconf.c (__fpathconf): Use
13567         statfs_filesize_max.
13568         * sysdeps/unix/sysv/linux/pathconf.c (__pathconf): Likewise.
13569         * sysdeps/unix/sysv/linux/alpha/fpathconf.c: Removed.
13570         * sysdeps/unix/sysv/linux/alpha/pathconf.c: Removed.
13572 2002-10-17  Roland McGrath  <roland@redhat.com>
13574         * configure.in (MIG): Just AC_SUBST it here.
13575         * configure: Regenerated.
13576         * sysdeps/mach/configure.in (MIG): Do the AC_CHECK_TOOL here.
13577         Adding final - argument to all AC_CHECK_HEADER uses for .defs files.
13578         * sysdeps/mach/configure: Regenerated.
13580         * aclocal.m4 (GLIBC_PROVIDES): Add AC_PROVIDE([_AS_TR_SH_PREPARE])
13581         and AC_PROVIDE([_AS_CR_PREPARE]).
13583         * aclocal.m4 (GLIBC_PROVIDES): Add AC_PROVIDE([_AS_ECHO_N_PREPARE]).
13584         Remove AC_LANG(C) call, instead just define([_AC_LANG], [C]).
13586         * elf/dl-support.c: Move _dl_tls_* variables to ...
13587         * sysdeps/generic/libc-tls.c: ... here.
13589         * elf/dl-close.c (remove_slotinfo): Take new argument.  If false,
13590         allow IDX to be one past the current last slotinfo entry.
13591         (_dl_close): Pass IMAP->l_init_called for that parameter.
13593 2002-10-07  Andreas Schwab  <schwab@suse.de>
13595         * aclocal.m4: Fix for autoconf 2.53.
13596         * configure.in: Likewise.  Require autoconf 2.53.
13598 2002-10-08  Richard Henderson  <rth@redhat.com>
13600         * soft-fp/op-4.h: Handle carry correctly in
13601         __FP_FRAC_ADD_3, __FP_FRAC_ADD_4, __FP_FRAC_SUB_3,
13602         __FP_FRAC_SUB_4, __FP_FRAC_DEC_3, __FP_FRAC_DEC_4.
13603         * soft-fp/op-common.h: New macros _FP_DIV_MEAT_N_loop.
13605 2002-10-08  Aldy Hernandez  <aldyh@redhat.com>
13607         * configure.in: Compute completely-soft.
13608         * config.make.in: Make completely-soft available to sub-makes.
13609         * sysdeps/powerpc/soft-fp/Makefile: Add gcc-single-routines and
13610         gcc-double-routines.  Add sim-full.c.  Add fenv_const and
13611         fe_nomask to libm-support.
13612         * sysdeps/powerpc/soft-fp/sim-full.c: New file.
13613         * sysdeps/powerpc/soft-fp/fraiseexcpt.c: New file.
13614         * sysdeps/powerpc/soft-fp/fegetexcept.c: New file.
13615         * sysdeps/powerpc/soft-fp/fclrexcpt.c: New file.
13616         * sysdeps/powerpc/soft-fp/ftestexcept.c: New file.
13617         * sysdeps/powerpc/soft-fp/fgetexcptflg.c: New file.
13618         * sysdeps/powerpc/soft-fp/fsetexcptflg.c: New file.
13619         * sysdeps/powerpc/soft-fp/fedisblxcpt.c: New file.
13620         * sysdeps/powerpc/soft-fp/feenablxcpt.c: New file.
13621         * sysdeps/powerpc/soft-fp/fegetenv.c: New file.
13622         * sysdeps/powerpc/soft-fp/fesetenv.c: New file.
13623         * sysdeps/powerpc/soft-fp/fegetround.c: New file.
13624         * sysdeps/powerpc/soft-fp/fesetround.c: New file.
13625         * sysdeps/powerpc/soft-fp/feupdateenv.c: New file.
13626         * sysdeps/powerpc/soft-fp/feholdexcpt.c: New file.
13627         * sysdeps/powerpc/soft-fp/fenv_const.c: New file.
13628         * sysdeps/powerpc/soft-fp/libm-test-ulps: New file.
13629         * sysdeps/powerpc/soft-fp/soft-supp.h: New file.
13630         * sysdeps/powerpc/soft-fp/Versions: Add libgcc soft-float
13631         symbols.  Add __sim_disabled_exceptions, __sim_exceptions,
13632         __sim_round_mode.
13633         * sysdeps/powerpc/soft-float/Dist: Add sim-full.c, fenv_const.c.
13634         * sysdeps/powerpc/soft-float/sfp-machine.h: Define
13635         FP_HANDLE_EXCEPTIONS.
13636         Define FP_ROUNDMODE.
13637         Redefine FP_* macros to correspond to the FE_* bit positions.
13638         Define FP_DIV_MEAT_S to _FP_DIV_MEAT_1_loop.
13639         Define externs for __sim_exceptions, __sim_disabled_exceptions,
13640         __sim_round_mode, __simulate_exceptions.
13641         * sysdeps/powerpc/fpu/bits/fenv.h: Move file from here...
13642         * sysdeps/powerpc/bits/fenv.h: ...to here.
13644 2002-10-06  Jakub Jelinek  <jakub@redhat.com>
13646         * sysdeps/powerpc/powerpc32/dl-machine.c (__process_machine_rela):
13647         Store R_PPC_UADDR32 and R_PPC_UADDR16 one byte at a time.
13648         Use __builtin_expect for R_PPC_ADDR24 overflow check.  Fix
13649         R_PPC_ADDR16, R_PPC_UADDR16 and R_PPC_ADDR14* overflow check, use
13650         __builtin_expect.
13652 2002-10-15  Jakub Jelinek  <jakub@redhat.com>
13654         * include/resolv.h (__libc_res_nquery, __libc_res_nsearch,
13655         __libc_res_nsend): New prototypes.
13656         * resolv/res_query.c (QUERYSIZE): Define.
13657         (__libc_res_nquery): Renamed from res_nquery.  Added answerp
13658         argument.  Allocate only QUERYSIZE bytes first, if res_nmkquery
13659         fails use MAXPACKET buffer.  Call __libc_res_nsend instead of
13660         res_nsend, pass answerp.
13661         (res_nquery): Changed into wrapper around __libc_res_nquery.
13662         (__libc_res_nsearch): Renamed from res_nsearch.  Added answerp
13663         argument.  Call __libc_res_nquerydomain and __libc_res_nquery
13664         instead of the non-__libc_ variants, pass them answerp.
13665         (res_nsearch): Changed into wrapper around __libc_res_nsearch.
13666         (__libc_res_nquerydomain): Renamed from res_nquerydomain.
13667         Added answerp argument.  Call __libc_res_nquery instead of
13668         res_nquery, pass answerp.
13669         (res_nquerydomain): Changed into wrapper around
13670         __libc_res_nquerydomain.
13671         * resolv/res_send.c: Include sys/ioctl.h.
13672         (MAXPACKET): Define.
13673         (send_vc): Change arguments.  Reallocate answer buffer if it is
13674         too small.
13675         (send_dg): Likewise.
13676         (__libc_res_nsend): Renamed from res_nsend.  Added ansp argument.
13677         Reallocate answer buffer if it is too small and hooks are in use.
13678         Adjust calls to send_vc and send_dg.
13679         (res_nsend): Changed into wrapper around __libc_res_nsend.
13680         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyname2_r): Allocate
13681         just 1K answer buffer on the stack, use __libc_res_nsearch instead
13682         of res_nsearch.
13683         (_nss_dns_gethostbyaddr_r): Similarly with __libc_res_nquery.
13684         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyaddr_r): Likewise.
13685         (_nss_dns_getnetbyname_r): Similarly with __libc_res_nsearch.
13686         * resolv/gethnamaddr.c (gethostbyname2): Likewise.
13687         (gethostbyaddr): Similarly with __libc_res_nquery.
13688         * resolv/Versions (libresolv): Export __libc_res_nquery and
13689         __libc_res_nsearch at GLIBC_PRIVATE.
13691 2002-10-17  Roland McGrath  <roland@redhat.com>
13693         * configure.in: Grok --without-__thread and disable HAVE___THREAD.
13694         * configure: Regenerated.
13696         * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Do CHECK_STATIC_TLS
13697         before performing the reloc, not after.
13698         * sysdeps/i386/dl-machine.h (elf_machine_rel): Likewise.
13700 2002-10-17  Ulrich Drepper  <drepper@redhat.com>
13702         * locale/programs/locale.c (write_locales): Use 'm' flag in fopen call.
13703         * locale/programs/linereader.c (lr_open): Likewise.
13704         * locale/programs/charmap-dir.c (charmap_open): Likewise.
13705         * locale/programs/locarchive.c (add_locale_to_archive): Likewise.
13707 2002-10-17  Isamu Hasegawa  <isamu@yamato.ibm.com>
13709         * posix/bug-regex11.c: Add a test case for the bug reported by
13710         Paolo Bonzini <bonzini@gnu.org>.
13711         * posix/regexec.c (sift_states_bkref): Use correct destination of
13712         the back reference.
13714 2002-10-17  Roland McGrath  <roland@redhat.com>
13716         * elf/dl-load.c (_dl_map_object_from_fd): Don't check DF_STATIC_TLS.
13717         * elf/dl-reloc.c (_dl_relocate_object: CHECK_STATIC_TLS): New macro
13718         to signal error if an IE-model TLS reloc resolved to a dlopen'd module.
13719         * sysdeps/i386/dl-machine.h (elf_machine_rel, elf_machine_rela):
13720         Call it after performing TPOFF relocs.
13721         * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Likewise.
13722         * sysdeps/sh/dl-machine.h (elf_machine_rela): Likewise.
13723         * elf/dl-conflict.c (CHECK_STATIC_TLS): New macro (no-op).
13725         * elf/dl-close.c (remove_slotinfo): Change asserts so as not to crash
13726         when closing a partially-initialized object.
13728         * elf/dl-load.c (_dl_map_object_from_fd) [! USE_TLS]: Call lose
13729         instead of _dl_fatal_printf when we see PT_TLS.
13731         * Makeconfig (CPPFLAGS): Fix last change to use $(libof-$(<F))
13732         instead of $(libof-$<).
13734 2002-10-16  Roland McGrath  <roland@redhat.com>
13736         * cppflags-iterator.mk (CPPFLAGS-$(cpp-src)): Variable removed.
13737         instead of += to append, to be sure $(lib) gets expanded at defn time.
13738         (libof-$(cpp-src)): New variable, define this instead.
13739         * extra-lib.mk (cpp-srcs-left): Reduce duplication in include setup.
13740         (lib): Don't use override.
13741         (CPPFLAGS-$(lib)): New variable, put -D's here.
13742         * Makeconfig (CPPFLAGS): Use basename fn for CPPFLAGS-basename.
13743         Also add $(CPPFLAGS-LIB) before the file-specific flags, for each
13744         LIB found by $(libof-*) for basename, target, or source.
13745         * Makerules (CPPFLAGS-nonlib): New variable.
13746         * nscd/Makefile (lib): Set to nonlib when using cppflags-iterator.mk.
13747         * locale/Makefile (lib): Likewise.
13748         * sunrpc/Makefile (lib): Likewise.
13750         * sysdeps/unix/sysv/linux/fpathconf.c (LINUX_LINK_MAX): Move macro ...
13751         * sysdeps/unix/sysv/linux/linux_fsinfo.h (LINUX_LINK_MAX): ... here.
13752         * sysdeps/unix/sysv/linux/pathconf.h: New file.
13753         (statfs_link_max): New function, guts from fpathconf.c.
13754         * sysdeps/unix/sysv/linux/fpathconf.c: Rewritten using that.
13755         * sysdeps/unix/sysv/linux/pathconf.c (__pathconf): Likewise.
13756         * sysdeps/unix/sysv/linux/alpha/pathconf.c (__pathconf): Rewritten
13757         to use the linux/pathconf.c code by #include rather than duplication.
13758         * sysdeps/unix/sysv/linux/alpha/fpathconf.c (__pathconf): Likewise.
13760 2002-10-16  Jakub Jelinek  <jakub@redhat.com>
13762         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
13763         Use __libc_errno only for libc itself.
13765 2002-10-16  Andreas Jaeger  <aj@suse.de>
13767         * sysdeps/x86_64/_mcount.S: Fix off-by-1 error in argument access.
13769 2002-10-16  Ulrich Drepper  <drepper@redhat.com>
13771         * sysdeps/unix/sysv/linux/i386/sysdep.h (SYSCALL_ERROR_HANDLER):
13772         Use __libc_errno only for libc itself.
13774 2002-10-15  Roland McGrath  <roland@redhat.com>
13775             Jakub Jelinek  <jakub@redhat.com>
13777         * sysdeps/unix/sysv/linux/Makefile
13778         ($(objpfx)syscall-%.h $(objpfx)syscall-%.d): Take code from
13779         sparc/Makefile to produce a bi-arch file as needed.
13780         That's now parameterized by the variable $(64bit-predefine).
13781         Use LC_ALL=C for `comm' commands in that rule.
13782         No longer conditional on [$(no_syscall_list_h)].
13783         * sysdeps/unix/sysv/linux/sparc/Makefile: Remove replacement rules.
13784         (64bit-predefine): New variable.
13785         * sysdeps/unix/sysv/linux/x86_64/Makefile: Likewise.
13786         * sysdeps/unix/sysv/linux/s390/Makefile: New file.
13787         * sysdeps/unix/sysv/linux/powerpc/Makefile
13788         (64bit-predefine): New variable.
13790 2002-10-15  Roland McGrath  <roland@redhat.com>
13792         * sysdeps/unix/sysv/linux/Makefile
13793         ($(objpfx)syscall-%.h $(objpfx)syscall-%.d)
13795         * login/utmp-private.h: Declare __libc_utmp_lock.
13796         * sysdeps/unix/getlogin_r.c (getlogin_r): Take __libc_utmp_lock once
13797         and call __libc_utmp_jump_table functions directly, instead of using
13798         __setutent et al.
13800         * sysdeps/unix/sysv/linux/configure.in: Use case instead of if.
13801         * sysdeps/unix/sysv/linux/configure: Regenerated.
13803         * sysdeps/gnu/bits/utmp.h: Include <bits/wordsize.h>.
13804         (struct lastlog) [__WORDSIZE == 64 && __WORDSIZE_COMPAT32]:
13805         Use int32_t for ll_time.
13806         (struct utmp) [__WORDSIZE == 64 && __WORDSIZE_COMPAT32]:
13807         Use int32_t instead of long int for ut_session.
13808         Use an anonymous struct with 32-bit fields for ut_tv.
13809         * sysdeps/gnu/bits/utmpx.h: Include <bits/wordsize.h>.
13810         (struct utmpx) [__WORDSIZE == 64 && __WORDSIZE_COMPAT32]: Do the same
13811         here as in utmp.h for `struct utmp'.
13812         * sysdeps/unix/sysv/linux/powerpc/bits/utmp.h: File removed.
13813         * sysdeps/unix/sysv/linux/powerpc/bits/utmpx.h: File removed.
13814         * sysdeps/unix/sysv/linux/sparc/bits/utmp.h: File removed.
13815         * sysdeps/unix/sysv/linux/sparc/bits/utmpx.h: File removed.
13816         * sysdeps/unix/sysv/linux/x86_64/bits/utmp.h: File removed.
13817         * sysdeps/unix/sysv/linux/x86_64/bits/utmpx.h: File removed.
13819         * sysdeps/unix/sysv/linux/bits/resource.h: Replaced with the contents
13820         of the sysdeps/unix/sysv/linux/i386/bits/resource.h file.
13821         All the following files were identical or equivalent to it.
13822         * sysdeps/unix/sysv/linux/i386/bits/resource.h: File removed.
13823         * sysdeps/unix/sysv/linux/arm/bits/resource.h: File removed.
13824         * sysdeps/unix/sysv/linux/cris/bits/resource.h: File removed.
13825         * sysdeps/unix/sysv/linux/hppa/bits/resource.h: File removed.
13826         * sysdeps/unix/sysv/linux/ia64/bits/resource.h: File removed.
13827         * sysdeps/unix/sysv/linux/m68k/bits/resource.h: File removed.
13828         * sysdeps/unix/sysv/linux/powerpc/bits/resource.h: File removed.
13829         * sysdeps/unix/sysv/linux/s390/bits/resource.h: File removed.
13830         * sysdeps/unix/sysv/linux/sh/bits/resource.h: File removed.
13831         * sysdeps/unix/sysv/linux/x86_64/bits/resource.h: File removed.
13833         * sysdeps/unix/sysv/linux/bits/socket.h (struct msghdr): Use size_t
13834         instead of int for msg_iovlen, instead of socklen_t for msg_controllen.
13835         Other than the previously incorrect sign of msg_iovlen, this is a
13836         no-op on 32-bit platforms.  On 64-bit platforms it makes this header
13837         match their layouts as well, so the following are now identical to it.
13838         * sysdeps/unix/sysv/linux/s390/bits/socket.h: File removed.
13839         * sysdeps/unix/sysv/linux/sparc/bits/socket.h: File removed.
13840         * sysdeps/unix/sysv/linux/x86_64/bits/socket.h: File removed.
13841         * sysdeps/unix/sysv/linux/ia64/bits/socket.h: File removed.
13842         * sysdeps/unix/sysv/linux/alpha/bits/socket.h: File removed.
13844 2002-10-15  Ulrich Drepper  <drepper@redhat.com>
13846         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_VFORK_SYSCALL):
13847         Define for 2.4+ kernels.
13849         * sysdeps/unix/sysv/linux/i386/vfork.S: Optimize for kernels which
13850         are known to have the vfork syscall.  Don't confuse the CPUs
13851         branch prediction unit by jumping to the return address.
13853         * sysdeps/unix/sysv/linux/alpha/fpathconf.c (__fpathconf): Add
13854         support for reiserfs and xfs.
13856         * sysdeps/unix/sysv/linux/fpathconf.c (__fpathconf): Add case for
13857         XFS link count.
13858         * sysdeps/unix/sysv/linux/linux_fsinfo.h: Define XFS_SUPER_MAGIC
13859         and XFS_LINK_MAX.
13860         Patch by Eric Sandeen <sandeen@sgi.com> [PR libc/4706].
13862 2002-10-16  Jakub Jelinek  <jakub@redhat.com>
13864         * include/libc-symbols.h (attribute_tls_model_ie): Define.
13865         * include/errno.h (errno): Define to __libc_errno in libc.so.
13866         Add attribute_tls_model_ie.
13867         * include/netdb.h (h_errno): Define to __libc_h_errno in libc.so.
13868         Add attribute_tls_model_ie.
13869         * include/resolv.h (_res): Define to __libc_res in libc.so.  Add
13870         attribute_tls_model_ie.
13871         * inet/herrno.c (__libc_h_errno): Add hidden alias to h_errno.
13872         (h_errno): Define.
13873         * resolv/res_libc.c (__libc_res): Add hidden alias to _res.
13874         (_res): Define.
13875         * sysdeps/generic/bits/libc-tsd.h (__libc_tsd_define): Add
13876         attribute_tls_model_ie.
13877         * sysdeps/generic/errno-loc.c (errno): Only undefine if not using
13878         __thread.
13879         * sysdeps/generic/errno.c (__libc_errno): Add hidden alias to errno.
13880         * sysdeps/unix/sysv/linux/i386/sysdep.h (SYSCALL_ERROR_HANDLER): Use
13881         __libc_errno in USE___THREAD case.
13882         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
13883         Likewise.
13884         * configure.in (HAVE_TLS_MODEL_ATTRIBUTE): Check for
13885         __attribute__((tls_model (""))).
13886         * configure: Rebuilt.
13887         * config.h.in (HAVE_TLS_MODEL_ATTRIBUTE): Add.
13889 2002-10-15  Ulrich Drepper  <drepper@redhat.com>
13891         * timezone/asia: Update from tzdata2002d.
13892         * timezone/australasia: Likewise.
13893         * timezone/iso3166.tab: Likewise.
13894         * timezone/southamerica: Likewise.
13895         * timezone/zone-tab: Likewise.
13897 2002-10-15  Roland McGrath  <roland@redhat.com>
13899         * sysdeps/generic/dl-tls.c (_dl_deallocate_tls) [TLS_TCB_AT_TP]:
13900         Adjust TCB pointer before calling free, so we get the whole block.
13902 2002-10-14  Roland McGrath  <roland@redhat.com>
13904         * sysdeps/unix/sysv/linux/x86_64/sigaction.c
13905         [HAVE_HIDDEN && !HAVE_BROKEN_VISIBILITY_ATTRIBUTE]: Declare restore_rt
13906         extern using attribute_hidden instead of static, avoids warning.
13908 2002-10-09  Jakub Jelinek  <jakub@redhat.com>
13910         * sysdeps/unix/sysv/linux/configure.in: Use */lib64 for s390x too.
13911         * sysdeps/unix/sysv/linux/configure: Rebuilt.
13913 2002-10-14  Ulrich Drepper  <drepper@redhat.com>
13915         * po/sv.po: Update from translation team.
13917 2002-10-12  H.J. Lu  <hjl@gnu.org>
13919         * sunrpc/thrsvc.c (PROCQUIT): New.
13920         (struct rpc_arg): New.
13921         (dispatch): Call exit (0) if request->rq_proc == PROCQUIT.
13922         (test_one_call): Take struct rpc_arg * instead of CLIENT *c.
13923         (thread_wrapper): Modified for struct rpc_arg * and call PROCQUIT.
13924         (main): Modified for struct rpc_arg *.
13926 2002-10-14  Ulrich Drepper  <drepper@redhat.com>
13928         * dirent/scandir.c: Rearrange code a bit to reduce binary size.
13930 2002-10-14  Jakub Jelinek  <jakub@redhat.com>
13932         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Include tls.h.
13933         (SYSCALL_ERROR_HANDLER): Use RTLD_PRIVATE_ERRNO sequence
13934         in ld.so even if __thread is supported.
13936 2002-10-13  Jakub Jelinek  <jakub@redhat.com>
13938         * sysdeps/unix/sysv/linux/arm/profil-counter.h (profil_counter):
13939         Add hack to prevent the compiler from clobbering the signal context.
13940         * sysdeps/unix/sysv/linux/sh/profil-counter.h (profil_counter):
13941         Likewise.
13942         * sysdeps/unix/sysv/linux/x86_64/profil-counter.h (profil_counter):
13943         Likewise.
13945 2002-10-14  Andreas Jaeger  <aj@suse.de>
13947         * sysdeps/mips/fpu/libm-test-ulps: Regenerated by
13948         Guido Guenther <agx@sigxcpu.org>.
13950 2002-10-14  Ulrich Drepper  <drepper@redhat.com>
13952         * po/sk.po: Update from translation team.
13954 2002-09-26  Roland McGrath  <roland@redhat.com>
13956         * elf/dl-load.c (_dl_dst_count, _dl_dst_substitute): Handle $LIB
13957         dynamic string tag.
13958         * elf/Makefile ($(objpfx)trusted-dirs.st): Make the output define
13959         DL_DST_LIB based on $(slibdir).
13961 2002-10-13  Roland McGrath  <roland@frob.com>
13963         * elf/rtld-Rules ($(objpfx)rtld-libc.a): Use $(verbose) in ar command.
13965         * sysdeps/mach/hurd/getresuid.c: New file.
13966         * sysdeps/mach/hurd/getresgid.c: New file.
13967         * sysdeps/mach/hurd/setresuid.c: New file.
13968         * sysdeps/mach/hurd/setresgid.c: New file.
13970         * posix/unistd.h [__USE_GNU] (getresuid, getresgid, setresuid,
13971         setresgid): Declare them.
13972         * NEWS: Mention it.
13973         * include/unistd.h
13974         (__getresuid, __getresgid, __setresuid, __setresgid): Declare them,
13975         add libc_hidden_proto.
13976         * posix/Versions (libc: GLIBC_2.3.2): New set.  Add
13977         getresuid, getresgid, setresuid, setresgid here.
13978         * Versions.def (libc): Define GLIBC_2.3.2 set.
13979         * sysdeps/generic/getresuid.c (__getresuid): Fix argument types.
13980         Add libc_hidden_def.
13981         * sysdeps/generic/getresgid.c (__getresgid): Likewise.
13982         * sysdeps/generic/setresgid.c: New file.
13983         * sysdeps/generic/setresuid.c: New file.
13984         * sysdeps/unix/sysv/linux/Makefile [$(subdir) = misc]
13985         (sysdep_routines): Don't add getresuid and getresgid here.
13986         * sysdeps/unix/sysv/linux/arm/Makefile [$(subdir) = misc]
13987         (sysdep_routines): Don't add setresuid and setresgid here.
13988         * sysdeps/unix/sysv/linux/cris/Makefile: Likewise.
13989         * sysdeps/unix/sysv/linux/sh/Makefile: Likewise.
13990         * sysdeps/unix/sysv/linux/s390/s390-32/Makefile: Likewise.
13991         * sysdeps/unix/sysv/linux/s390/s390-64/Makefile: Likewise.
13992         * sysdeps/unix/sysv/linux/i386/Makefile: Likewise.
13993         * sysdeps/unix/sysv/linux/m68k/Makefile: Likewise.
13994         * posix/Makefile (routines): Add them all here instead.
13995         * sysdeps/unix/sysv/linux/i386/getresuid.c (getresuid): Renamed to
13996         __getresuid.  Add libc_hidden_def for that, and weak alias to old name.
13997         * sysdeps/unix/sysv/linux/i386/getresgid.c (getresgid): Renamed to
13998         __getresgid.  Add libc_hidden_def for that, and weak alias to old name.
13999         * sysdeps/unix/sysv/linux/i386/setresuid.c: Add libc_hidden_def.
14000         [! __NR_setresuid]: Include generic file.
14001         * sysdeps/unix/sysv/linux/i386/setresgid.c (setresgid): Renamed to
14002         __setresgid.  Add libc_hidden_def for that, and weak alias to old name.
14003         [! __NR_setresuid]: Include generic file.
14004         * sysdeps/unix/sysv/linux/syscalls.list (setresuid, setresgid):
14005         Caller is - now, not EXTRA.
14006         * sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list
14007         (setresuid, setresgid, getresuid, getresgid): Likewise.
14008         * sysdeps/unix/sysv/linux/syscalls.list (getresuid, getresgid):
14009         Add these calls here.
14010         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Remove them here.
14011         * sysdeps/unix/sysv/linux/hppa/syscalls.list: Likewise.
14012         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
14013         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
14014         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
14015         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Likewise.
14016         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Likewise.
14017         * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise.
14018         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
14020         * sysdeps/unix/sysv/linux/Makefile [$(subdir) = misc]
14021         (sysdep_routines): Add setfsuid and setfsgid here.
14022         * sysdeps/unix/sysv/linux/arm/Makefile: Not here.
14023         * sysdeps/unix/sysv/linux/sparc/sparc32/Makefile: Likewise.
14024         * sysdeps/unix/sysv/linux/cris/Makefile: Likewise.
14025         * sysdeps/unix/sysv/linux/sh/Makefile: Likewise.
14026         * sysdeps/unix/sysv/linux/s390/s390-32/Makefile: Likewise.
14027         * sysdeps/unix/sysv/linux/s390/s390-64/Makefile: Likewise.
14028         * sysdeps/unix/sysv/linux/i386/Makefile: Likewise.
14029         * sysdeps/unix/sysv/linux/m68k/Makefile: Likewise.
14031         * hurd/errno.c: Renamed to ...
14032         * hurd/errno-loc.c: ... this.
14033         * hurd/Makefile (routines): errno -> errno-loc
14035 2002-10-13  Ulrich Drepper  <drepper@redhat.com>
14037         * po/de.po: Update from translation team.
14039         * MakeTAGS: Add -E flag to xgettext runs.
14041 2002-10-12  Ulrich Drepper  <drepper@redhat.com>
14043         * po/fr.po: Update from translation team.
14045         * sysdeps/posix/system.c: Remove support for old and buggy SCO systems.
14046         Optimize a bit for use in glibc.
14048 2002-10-12  Roland McGrath  <roland@redhat.com>
14050         * stdio-common/tst-rndseek.c (TIMEOUT): Increase to 10 seconds.
14051         Some machines are slow.  Guido Guenther <agx@sigxcpu.org> has one.
14053 2002-10-12  Ulrich Drepper  <drepper@redhat.com>
14055         * po/sv.po: Update from translation team.
14057 2002-10-11  Isamu Hasegawa  <isamu@yamato.ibm.com>
14059         * posix/regcomp.c (re_compile_fastmap_iter): Remove the handling
14060         OP_CONTEXT_NODE.
14061         (regfree): Likewise.
14062         (create_initial_state): Likewise.
14063         (analyze): Remove the substitutions which became useless.
14064         (calc_first): Likewise.
14065         (calc_epsdest): Use edests of OP_BACK_REF in case that it has
14066         epsilon destination.
14067         (duplicate_node_closure): New function.
14068         (duplicate_node): Remove the handling OP_CONTEXT_NODE.
14069         (calc_inveclosure): Likewise.
14070         (calc_eclosure): Likewise.
14071         (calc_eclosure_iter): Invoke duplicate_node_closure instead of
14072         direct invocation of duplicate_node.
14073         (parse): Don't use comma operator in the return to avoid compiler
14074         warning.
14075         (parse_reg_exp): Likewise.
14076         (parse_branch): Likewise.
14077         (parse_expression): Likewise.
14078         (parse_sub_exp): Likewise.
14079         (parse_dup_op): Likewise.
14080         * posix/regex_internal.c (re_dfa_add_node): Remove the substitutions
14081         which became useless.
14082         (create_ci_newstate): Remove the handling OP_CONTEXT_NODE.
14083         (create_cd_newstate): Likewise.
14084         * posix/regex_internal.h (re_token_type_t): Remove the obsolete type.
14085         (re_token_t): Likewise.
14086         (re_dfa_t): Likewise.
14087         (re_node_set_remove): New macro.
14088         * posix/regexec.c (check_matching): Remove the handling
14089         OP_CONTEXT_NODE.
14090         (check_halt_node_context): Likewise.
14091         (proceed_next_node): Likewise.
14092         (pop_fail_stack): Fix the memory leak.
14093         (set_regs): Likewise.
14094         (free_fail_stack_return): New function.
14095         (sift_states_backward): Fix the memory leak.  Remove the handling
14096         OP_CONTEXT_NODE.
14097         (update_cur_sifted_state): Append some if clause to avoid redundant
14098         call.
14099         (sub_epsilon_src_nodes): Use IS_EPSILON_NODE since it might be a
14100         back reference.
14101         (check_dst_limits): Remove the handling OP_CONTEXT_NODE.
14102         (check_subexp_limits): Likewise.
14103         (search_subexp): Likewise.
14104         (sift_states_bkref): Likewise.
14105         (transit_state_mb): Likewise.
14106         (transit_state_bkref_loop): Likewise.
14107         (transit_state_bkref_loop): Likewise.
14108         (group_nodes_into_DFAstates): Likewise.
14109         (check_node_accept): Likewise.
14110         (sift_ctx_init): Add initializing.
14112 2002-10-12  Ulrich Drepper  <drepper@redhat.com>
14114         * sysdeps/unix/sysv/linux/i386/sysdep.h (INLINE_SYSCALL): Use
14115         __builtin_expect.
14117 2002-10-11  Ulrich Drepper  <drepper@redhat.com>
14119         * elf/dl-load.c (_dl_map_object_from_fd): Remove unnecessarily
14120         duplicated variable c.
14122         * sysdeps/unix/sysv/linux/sigwait.c (__sigwait): Use INTERNAL_SYSCALL
14123         if possible.
14125         * sysdeps/unix/sysv/linux/i386/sysdep.h
14126         (INTERNAL_SYSCALL_ERROR_P): New define.
14127         (INTERNAL_SYSCALL_ERRNO): Likewise.
14129         * sysdeps/unix/sysv/linux/i386/profil-counter.h (profil_counter):
14130         Add hack to prevent the compiler from clobbering the signal context.
14132 2002-10-11  Roland McGrath  <roland@redhat.com>
14134         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
14135         Fix typos.
14137         * sysdeps/generic/dl-lookupcfg.h: Include <tls.h>.
14138         * sysdeps/sh/dl-lookupcfg.h: File removed.
14139         * sysdeps/i386/dl-lookupcfg.h: File removed.
14141         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER): Add
14142         missing labels and ; from last change.
14144         * stdio-common/tst-sscanf.c (val_double): Append .0 to large whole
14145         number literals, so they are doubles instead of ints.
14147 2002-10-09  Roland McGrath  <roland@redhat.com>
14149         * sysdeps/generic/bits/libc-tsd.h [USE___THREAD]: Conditional
14150         changed from [USE_TLS && HAVE___THREAD].
14152         * sysdeps/i386/dl-machine.h (elf_machine_type_class, elf_machine_rel):
14153         Disable TLS relocs if [RTLD_BOOTSTRAP && !USE___THREAD].
14154         * sysdeps/x86_64/dl-machine.h
14155         (elf_machine_type_class, elf_machine_rela): Likewise.
14156         * sysdeps/sh/dl-machine.h (elf_machine_type_class, elf_machine_rela):
14157         Likewise.
14159         * include/link.h (struct link_map): Remove member l_tls_tp_initialized.
14160         * elf/rtld.c (_dl_start_final, dl_main): Don't use it.
14161         (_dl_start): Conditionalize PT_TLS check on [USE___THREAD].
14163         * sysdeps/i386/dl-tls.h (__TLS_GET_ADDR): Use ___tls_get_addr_internal
14164         instead of ___tls_get_addr.
14165         (___tls_get_addr_internal): Add attribute_hidden to decl.
14167         * sysdeps/generic/ldsodefs.h (struct rtld_global): New variable
14168         _dl_error_catch_tsd.
14169         * elf/rtld.c (startup_error_tsd): New function.
14170         (dl_main): Point _dl_error_catch_tsd at that.
14171         * elf/dl-error.c: Don't use libc-tsd.h for DL_ERROR,
14172         use new function pointer instead.
14173         * elf/dl-tsd.c: New file.
14174         * elf/Makefile (routines): Add it.
14176 2002-10-07  Roland McGrath  <roland@redhat.com>
14178         * elf/dl-misc.c (_dl_debug_vdprintf): Use INTERNAL_SYSCALL macro for
14179         writev if it's available.  Otherwise if [RTLD_PRIVATE_ERRNO] then
14180         take _dl_load_lock around calling __writev.
14182         * sysdeps/unix/sysv/linux/i386/sysdep.h (INTERNAL_SYSCALL): New macro.
14183         (INLINE_SYSCALL): Use that.
14185         * sysdeps/generic/dl-sysdep.h: New file.
14186         * sysdeps/mach/hurd/dl-sysdep.h: New file.
14187         * sysdeps/generic/ldsodefs.h: Include <dl-sysdep.h>.
14188         * include/errno.h [IS_IN_rtld]: Include <dl-sysdep.h> to define ...
14189         [RTLD_PRIVATE_ERRNO]: Use a hidden global variable for errno and
14190         access it directly.
14191         * elf/dl-minimal.c (__errno_location): Removed.
14192         * sysdeps/unix/i386/sysdep.S (__syscall_errno) [RTLD_PRIVATE_ERRNO]:
14193         Use GOTOFF access for errno.
14194         * sysdeps/unix/sysv/linux/i386/sysdep.h
14195         [RTLD_PRIVATE_ERRNO] (SYSCALL_ERROR_HANDLER): Likewise.
14197         * sysdeps/unix/x86_64/sysdep.S (__syscall_errno) [RTLD_PRIVATE_ERRNO]:
14198         Use PC-relative access for errno.
14199         * sysdeps/unix/sysv/linux/x86_64/sysdep.h
14200         [RTLD_PRIVATE_ERRNO] (SYSCALL_ERROR_HANDLER): Likewise.
14202         * include/tls.h: New file.
14203         (USE___THREAD): New macro.
14204         Define to 1 under [USE_TLS && HAVE___THREAD] and only when compiling
14205         libc or libpthread.
14206         * sysdeps/unix/sysv/linux/i386/sysdep.h [USE___THREAD]: Conditional
14207         changed from [USE_TLS && HAVE___THREAD].
14208         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
14209         * sysdeps/unix/i386/sysdep.S: Likewise.
14210         * sysdeps/unix/x86_64/sysdep.S: Likewise.
14211         * include/errno.h: Likewise.
14212         * include/netdb.h: Likewise.
14213         * include/resolv.h: Likewise.
14215         * sysdeps/generic/errno.c: New file.
14216         * csu/Makefile (aux): New variable, list errno.
14217         * sysdeps/unix/sysv/linux/i386/sysdep.S (errno, _errno): Remove defns.
14218         * sysdeps/unix/sysv/linux/m68k/sysdep.S: Likewise.
14219         * sysdeps/unix/sysv/linux/x86_64/sysdep.S: Likewise.
14220         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S: Likewise.
14221         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S: Likewise.
14222         * sysdeps/unix/sysv/linux/arm/sysdep.S: Likewise.
14223         * sysdeps/unix/sysv/linux/cris/sysdep.S: Likewise.
14224         * sysdeps/unix/sysv/linux/hppa/sysdep.c: Likewise.
14225         * sysdeps/unix/sysv/linux/ia64/sysdep.S: Likewise.
14226         * sysdeps/unix/sysv/linux/powerpc/sysdep.c: Likewise.
14227         * sysdeps/unix/sysv/linux/sparc/sysdep.S: Likewise.
14228         * sysdeps/unix/sysv/linux/sh/sysdep.S: Likewise.
14229         * sysdeps/unix/alpha/sysdep.S: Likewise.
14230         * sysdeps/generic/start.c: Likewise.
14231         * sysdeps/unix/start.c: Likewise.
14232         * sysdeps/unix/arm/start.c: Likewise.
14233         * sysdeps/unix/bsd/ultrix4/mips/start.S: Likewise.
14234         * sysdeps/unix/sparc/start.c: Likewise.
14235         * sysdeps/unix/sysv/irix4/start.c: Likewise.
14236         * sysdeps/unix/sysv/linux/mips/sysdep.S: File removed.
14238         * manual/search.texi (Tree Search Function, Hash Search Function):
14239         Mention search.h clearly.
14241 2002-10-05  Roland McGrath  <roland@redhat.com>
14243         * elf/dl-fxstat64.c: File removed.
14244         * elf/dl-xstat64.c: File removed.
14245         * elf/Makefile (rtld-routines): Remove them.
14246         * sysdeps/unix/sysv/linux/xstat64.c: Remove RTLD_STAT64 conditionals.
14247         Instead, use strong_alias instead of versioned_symbol in the
14248         !SHLIB_COMPAT case.
14249         * sysdeps/unix/sysv/linux/fxstat64.c: Likewise.
14250         * sysdeps/unix/sysv/linux/lxstat64.c: Likewise.
14252         * include/shlib-compat.h
14253         (SHLIB_COMPAT): Require that IS_IN_##lib be defined nonzero.
14254         [! NOT_IN_libc] (IS_IN_libc): Define it.
14255         * cppflags-iterator.mk (CPPFLAGS-$(cpp-src)): Use -Dx=1 not just -Dx.
14256         * elf/Makefile (CPPFLAGS-.os): Likewise.
14258         * sunrpc/rpc_main.c (main): Don't declare with noreturn attribute.
14259         Return the status instead of calling exit.
14261         * Makeconfig (CFLAGS): Prepend -std=gnu99.
14262         * Makerules (+make-deps): Use $(CFLAGS) only for .c sources.
14263         Remove superfluous rm command, whose @ plus make bugs hid
14264         all these commands from the make output.
14266         * include/stubs-prologue.h: New file.  Give #error under #ifdef _LIBC.
14267         * Makefile ($(inst_includedir)/gnu/stubs.h): Depend on it.
14268         Use that file's contents instead of literal echo's for the prologue.
14269         * include/features.h: Include <gnu/stubs.h> unconditionally.
14270         * include/gnu/stubs.h: New file.
14272 2002-09-30  Roland McGrath  <roland@redhat.com>
14274         * elf/rtld-Rules: New file.
14275         * elf/Makefile ($(objpfx)librtld.map, $(objpfx)librtld.mk,
14276         $(objpfx)rtld-libc.a): New targets.
14277         (generated): Add them.
14278         (reloc-link): Remove -o $@ from the variable.
14279         ($(objpfx)dl-allobjs.os): Add -o $@ after $(reloc-link).
14280         (distribute): Add rtld-Rules.
14281         (CPPFLAGS-.os): Define this instead of CFLAGS-.os.
14282         * Makerules ($(+sysdir_pfx)sysd-rules): Emit rules for rtld-% targets.
14283         (common-mostlyclean, common-clean): Clean up rtld-* files.
14284         * sysdeps/unix/make-syscalls.sh: Add rtld-*.os target name to rules.
14286 2003-05-20  Jakub Jelinek  <jakub@redhat.com>
14288         * elf/dynamic-link.h (elf_get_dynamic_info): Add temp argument.
14289         If temp != NULL, copy dynamic entries which need relocation to temp
14290         array before relocating.
14291         (DL_RO_DYN_TEMP_CNT): Define.
14292         * elf/dl-load.c (_dl_map_object_from_fd): Adjust caller.
14293         * elf/rtld.c (_dl_start): Likewise.
14294         (dl_main): Likewise.  Add dyn_temp static variable.
14296 2002-10-11  Roland McGrath  <roland@redhat.com>
14298         * sysdeps/generic/dl-tls.c (__tls_get_addr): After freeing block in
14299         now-unused dtv slot, reset the slot to TLS_DTV_UNALLOCATED.
14301         * elf/tls-macros.h [__x86_64__] (TLS_GD): Fix the sequence with the
14302         proper set of no-op insn prefixes.
14304         * elf/tst-tls8.c (do_test): Use %zd format for l_tls_modid members.
14306 2002-10-11  Ulrich Drepper  <drepper@redhat.com>
14308         * sysdeps/unix/sysv/linux/execve.c: Don't try calling
14309         __pthread_kill_other_threads_np.
14311         * sysdeps/generic/pselect.c: Avoid unnecessary sigprocmask calls.
14313 2002-10-08  Roland McGrath  <roland@redhat.com>
14315         * locale/newlocale.c (__newlocale): If setting all categories to "C",
14316         just return &_nl_C_locobj instead of copying it.
14317         * locale/freelocale.c (__freelocale): Check for &_nl_C_locobj.
14318         * locale/duplocale.c (__duplocale): Likewise.
14320 2002-10-07  Roland McGrath  <roland@frob.com>
14322         * config.h.in (HAVE_I386_SET_GDT): New #undef.
14323         * sysdeps/mach/configure.in: Define it with new check for i386_set_gdt.
14324         * sysdeps/mach/configure: Regenerated.
14326 2002-10-06  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
14328         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (INLINE_SYSCALL):
14329         Add all necessary register outputs for syscall-clobbered registers.
14331 2002-10-02  David Mosberger  <davidm@hpl.hp.com>
14333         * sysdeps/ia64/bzero.S: Rewritten by Sverre Jarp to tune for
14334         Itanium 2 (and Itanium).
14335         Fix unwind directives and make it fit in 80 columns.
14336         * sysdeps/ia64/memset.S: Likewise.
14337         * sysdeps/ia64/memcpy.S: Likewise.
14338         Move jump table to .rodata section.
14340 2002-10-03  Roland McGrath  <roland@frob.com>
14342         * sysdeps/mach/hurd/i386/init-first.c (_hurd_stack_setup): Add
14343         clobbers to asm.
14345 2002-10-10  Andreas Jaeger  <aj@suse.de>
14347         * sysdeps/x86_64/_mcount.S: Restore correct registers.
14349 2002-10-10  Ulrich Drepper  <drepper@redhat.com>
14351         * posix/Versions (libc) [GLIBC_PRIVATE]: Add __pselect.
14353 2002-10-09  Ulrich Drepper  <drepper@redhat.com>
14355         * sysdeps/generic/ldsodefs.h: Remove attribute_hidden from
14356         _dl_allocate_tls_init.  Add rtld_hidden_proto.
14357         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Add
14358         rtld_hidden_def.
14359         * elf/Versions (ld) [GLIBC_PRIVATE]: Add _dl_allocate_tls_init.
14361         * version.h (VERSION): Bump to 2.3.1.
14363         * Make-dist: Add back one of the tar invocations removed before.
14365         * stdlib/Makefile (distribute): Add allocalim.h.
14367         * sysdeps/generic/bits/libc-tsd.h [!(USE_TLS && HAVE___THREAD)]
14368         (__libc_tsd_address): Use correct variable name.
14369         Patch by Stefan Jones <stefan.jones@multigig.com>.
14371         * sysdeps/unix/sysv/linux/ia64/getcontext.S: Add missing ;;.
14372         Reported by edwardsg@sgi.com [PR libc/4678].
14374         * Versions.def (libc): Add GLIBC_2.3.1.
14375         (libpthread): Add GLIBC_2.3.1.
14377         * include/signal.h: Add libc_hidden_proto for __sigwait, __sigwaitinfo,
14378         and __sigtimedwait.
14379         * signal/Versions: Add __sigtimedwait, __sigwait, and __sigwaitinfo.
14380         * sysdeps/unix/sysv/linux/sigtimedwait.c (__sigtimedwait): Add
14381         libc_hidden_def.
14382         * sysdeps/unix/sysv/linux/sigwait.c (__sigwait): Likewise.
14383         * sysdeps/unix/sysv/linux/sigwaitinfo.c (__sigwaitinfo): Likewise.
14385         * include/sys/msg.h: Declare __libc_msgrcv and __libc_msgsnd.
14386         * sysdeps/unix/sysv/linux/msgrcv.c (__msgrcv): Rename to __libc_msgrcv
14387         and make old name an alias.
14388         * sysdeps/unix/sysv/linux/msgsnd.c (__msgsnd): Rename to __libc_msgsnd
14389         and make old name an alias.
14390         * sysvipc/Versions (libc) [GLIBC_PRIVATE]: Add __libc_msgrcv and
14391         __libc_msgsnd.
14393         * include/sys/uio.h: Declare __libc_readv and __libc_writev.
14394         * misc/Versions (libc) [GLIBC_PRIVATE]: Add __libc_readv and
14395         __libc_writev.
14396         * sysdeps/generic/readv.c (__readv): Rename to __libc_readv and make
14397         old name an alias.
14398         * sysdeps/posix/readv.c: Likewise
14399         * sysdeps/unix/sysv/aix/readv.c: Likewise.
14400         * sysdeps/unix/sysv/linux/readv.c: Likewise.
14401         * sysdeps/generic/writev.c (__writev): Rename to __libc_writev and make
14402         old name an alias.
14403         * sysdeps/posix/writev.c: Likewise
14404         * sysdeps/unix/sysv/aix/writev.c: Likewise.
14405         * sysdeps/unix/sysv/linux/writev.c: Likewise.
14407         * include/sys/wait.h: Declare __waitid.
14408         * posix/Versions (libc) [GLIBC_PRIVATE]: Add __waitid.
14409         * sysdeps/generic/waitid.c (waitid): Rename to __waitid and make old
14410         name an alias.
14411         * sysdeps/posix/waitid.c: Likewise.
14412         * sysdeps/unix/sysv/aix/waitid.c: Likewise.
14414         * sysdeps/unix/sysv/linux/syscalls.list: Add creat syscall.
14416 2002-10-07  Jakub Jelinek  <jakub@redhat.com>
14418         * include/alloca.h (__libc_use_alloca, __libc_alloca_cutoff): New
14419         prototypes.
14420         (__MAX_ALLOCA_CUTOFF): Define.
14421         Include allocalim.h.
14422         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyname2_r,
14423         _nss_dns_gethostbyaddr_r): Use alloca or malloc to allocate
14424         host_buffer depending on __libc_use_alloca.
14425         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyname_r,
14426         _nss_dns_getnetbyaddr_r): Use alloca or malloc to allocate
14427         net_buffer depending on __libc_use_alloca.
14428         * resolv/res_query.c (res_nquery): Use alloca or malloc to allocate
14429         buf depending on __libc_use_alloca.
14430         * resolv/gethnamaddr.c (gethostbyname2, gethostbyaddr): Likewise.
14431         * stdio-common/vfprintf.c (vfprintf): Use __libc_use_alloca
14432         instead of hardcoded constants.
14433         Pass proper size argument to alloca and compute end for wide char
14434         version.
14435         * stdio-common/printf_fp.c (__printf_fp): Use __libc_use_alloca
14436         instead of hardcoded constants.
14437         * string/strcoll.c (strcoll): Likewise.
14438         * string/strxfrm.c (strxfrm): Likewise.
14439         * sysdeps/posix/readv.c (__readv): Likewise.
14440         * sysdeps/posix/writev.c (__writev): Likewise.
14441         * sysdeps/generic/allocalim.h: New file.
14443 2002-10-08  Roland McGrath  <roland@redhat.com>
14445         * configure.in (aux_missing warning): Change "too old" to
14446         "incompatible versions", since for autoconf it's "too new" right now.
14447         * configure: Regenerated.
14449         * configure.in (AUTOCONF): New check to set it.  Set to "no" if the
14450         one found doesn't work on our configure.in.
14451         * configure: Regenerated.
14452         * config.make.in (AUTOCONF): New substituted variable.
14453         * Makefile (autoconf-it-cvs): New canned sequence, broken out of ...
14454         (autoconf-it): ... here, use that instead of defining conditionally.
14455         Use $(AUTOCONF) instead of literal autoconf.
14456         [$(AUTOCONF) != no] (configure, %/configure): Protect these rules
14457         with this condition.
14458         * Make-dist (autoconf-it, configure, %/configure): Copy those changes.
14460 2002-10-08  Ulrich Drepper  <drepper@redhat.com>
14462         * Make-dist (dist): Cleanup a bit.  We are not interested in the
14463         14 char filename limit anymore.  Remove intermediate files and
14464         symlinks.
14466 2002-10-05  Ulrich Drepper  <drepper@redhat.com>
14468         * po/sk.po: Update from translation team.
14469         * po/tr.po: Likewise.
14470         * po/gl.po: Likewise.
14472 2002-10-05  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
14474         * elf/tls-macros.h: Fix SH version of macros so as to match ABI syntax.
14476 2002-10-03  Ulrich Drepper  <drepper@redhat.com>
14478         * version.h (RELEASE): Change to stable.
14480 2002-10-03  Jakub Jelinek  <jakub@redhat.com>
14482         * sysdeps/unix/sysv/linux/_exit.c (__syscall_exit,
14483         __syscall_exit_group): New prototypes.
14485 2002-10-03  Ulrich Drepper  <drepper@redhat.com>
14487         * glibc 2.3 released.
14490 See ChangeLog.13 for earlier changes.